--- /srv/rebuilderd/tmp/rebuilderdPRh3Hs/inputs/ssg-nondebian_0.1.80-1_all.deb +++ /srv/rebuilderd/tmp/rebuilderdPRh3Hs/out/ssg-nondebian_0.1.80-1_all.deb ├── file list │ @@ -1,3 +1,3 @@ │ -rw-r--r-- 0 0 0 4 2026-03-14 07:18:55.000000 debian-binary │ --rw-r--r-- 0 0 0 19156 2026-03-14 07:18:55.000000 control.tar.xz │ --rw-r--r-- 0 0 0 43277916 2026-03-14 07:18:55.000000 data.tar.xz │ +-rw-r--r-- 0 0 0 19140 2026-03-14 07:18:55.000000 control.tar.xz │ +-rw-r--r-- 0 0 0 43270368 2026-03-14 07:18:55.000000 data.tar.xz ├── control.tar.xz │ ├── control.tar │ │ ├── ./md5sums │ │ │ ├── ./md5sums │ │ │ │┄ Files differ ├── data.tar.xz │ ├── data.tar │ │ ├── ./usr/share/doc/ssg-nondebian/ssg-al2023-guide-cis.html │ │ │ @@ -15101,212 +15101,212 @@ │ │ │ 0003afc0: 6c6c 6170 7365 2220 6461 7461 2d74 6172 llapse" data-tar │ │ │ 0003afd0: 6765 743d 2223 6964 3422 2074 6162 696e get="#id4" tabin │ │ │ 0003afe0: 6465 783d 2230 2220 726f 6c65 3d22 6275 dex="0" role="bu │ │ │ 0003aff0: 7474 6f6e 2220 6172 6961 2d65 7870 616e tton" aria-expan │ │ │ 0003b000: 6465 643d 2266 616c 7365 2220 7469 746c ded="false" titl │ │ │ 0003b010: 653d 2241 6374 6976 6174 6520 746f 2072 e="Activate to r │ │ │ 0003b020: 6576 6561 6c22 2068 7265 663d 2223 2122 eveal" href="#!" │ │ │ -0003b030: 3e52 656d 6564 6961 7469 6f6e 204f 5342 >Remediation OSB │ │ │ -0003b040: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ -0003b050: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
│ │ │ -0003b090: 3c70 7265 3e3c 636f 6465 3e0a 5b5b 7061
.[[pa
│ │ │ -0003b0a0: 636b 6167 6573 5d5d 0a6e 616d 6520 3d20  ckages]].name = 
│ │ │ -0003b0b0: 2261 6964 6522 0a76 6572 7369 6f6e 203d  "aide".version =
│ │ │ -0003b0c0: 2022 2a22 0a3c 2f63 6f64 653e 3c2f 7072   "*".
Remediation A │ │ │ -0003b180: 6e61 636f 6e64 6120 736e 6970 7065 7420 naconda snippet │ │ │ -0003b190: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
< │ │ │ -0003b210: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -0003b230: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -0003b280: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
.package --add=
│ │ │ -0003b2d0: 6169 6465 0a3c 2f63 6f64 653e 3c2f 7072  aide.Remediation P
│ │ │ -0003b390: 7570 7065 7420 736e 6970 7065 7420 e287  uppet snippet ..
│ │ │ -0003b3a0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
low
Disr │ │ │ -0003b240: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -0003b250: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -0003b290: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ -0003b2a0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ -0003b470: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0003b480: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
i
│ │ │ -0003b4d0: 6e63 6c75 6465 2069 6e73 7461 6c6c 5f61  nclude install_a
│ │ │ -0003b4e0: 6964 650a 0a63 6c61 7373 2069 6e73 7461  ide..class insta
│ │ │ -0003b4f0: 6c6c 5f61 6964 6520 7b0a 2020 7061 636b  ll_aide {.  pack
│ │ │ -0003b500: 6167 6520 7b20 2761 6964 6527 3a0a 2020  age { 'aide':.  
│ │ │ -0003b510: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ -0003b520: 696e 7374 616c 6c65 6427 2c0a 2020 7d0a  installed',.  }.
│ │ │ -0003b530: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -0003b540: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div> │ │ │ -0003b5e0: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -0003b5f0: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -0003b600: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
Complexity:low
Disrup │ │ │ -0003b450: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0003b460: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0003b4a0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -0003b4b0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ -0003b690: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0003b6a0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -0003b6f0: 3c74 723e 3c74 683e 5374 7261 7465 6779
- n
│ │ │ -0003b730: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ -0003b740: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ -0003b750: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -0003b760: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ -0003b770: 0a20 2074 6167 733a 0a20 202d 2043 4a49  .  tags:.  - CJI
│ │ │ -0003b780: 532d 352e 3130 2e31 2e33 0a20 202d 204e  S-5.10.1.3.  - N
│ │ │ -0003b790: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -0003b7a0: 6129 0a20 202d 2050 4349 2d44 5353 2d52  a).  - PCI-DSS-R
│ │ │ -0003b7b0: 6571 2d31 312e 350a 2020 2d20 5043 492d  eq-11.5.  - PCI-
│ │ │ -0003b7c0: 4453 5376 342d 3131 2e35 2e32 0a20 202d  DSSv4-11.5.2.  -
│ │ │ -0003b7d0: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ -0003b7e0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -0003b7f0: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ -0003b800: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ -0003b810: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ -0003b820: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -0003b830: 2020 2d20 7061 636b 6167 655f 6169 6465    - package_aide
│ │ │ -0003b840: 5f69 6e73 7461 6c6c 6564 0a0a 2d20 6e61  _installed..- na
│ │ │ -0003b850: 6d65 3a20 456e 7375 7265 2061 6964 6520  me: Ensure aide 
│ │ │ -0003b860: 6973 2069 6e73 7461 6c6c 6564 0a20 2061  is installed.  a
│ │ │ -0003b870: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ -0003b880: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ -0003b890: 3a20 6169 6465 0a20 2020 2073 7461 7465  : aide.    state
│ │ │ -0003b8a0: 3a20 7072 6573 656e 740a 2020 7768 656e  : present.  when
│ │ │ -0003b8b0: 3a20 2722 6b65 726e 656c 2220 696e 2061  : '"kernel" in a
│ │ │ -0003b8c0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -0003b8d0: 6b61 6765 7327 0a20 2074 6167 733a 0a20  kages'.  tags:. 
│ │ │ -0003b8e0: 202d 2043 4a49 532d 352e 3130 2e31 2e33   - CJIS-5.10.1.3
│ │ │ -0003b8f0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -0003b900: 2d43 4d2d 3628 6129 0a20 202d 2050 4349  -CM-6(a).  - PCI
│ │ │ -0003b910: 2d44 5353 2d52 6571 2d31 312e 350a 2020  -DSS-Req-11.5.  
│ │ │ -0003b920: 2d20 5043 492d 4453 5376 342d 3131 2e35  - PCI-DSSv4-11.5
│ │ │ -0003b930: 2e32 0a20 202d 2065 6e61 626c 655f 7374  .2.  - enable_st
│ │ │ -0003b940: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ -0003b950: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -0003b960: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -0003b970: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -0003b980: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -0003b990: 6565 6465 640a 2020 2d20 7061 636b 6167  eeded.  - packag
│ │ │ -0003b9a0: 655f 6169 6465 5f69 6e73 7461 6c6c 6564  e_aide_installed
│ │ │ -0003b9b0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
R │ │ │ -0003ba60: 656d 6564 6961 7469 6f6e 2053 6865 6c6c emediation Shell │ │ │ -0003ba70: 2073 6372 6970 7420 e287 b23c 2f61 3e3c script ...< │ │ │ -0003ba80: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
C │ │ │ -0003b680: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -0003b6b0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -0003b6c0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -0003b700: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -0003b710: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ -0003bb20: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -0003bb40: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -0003bb70: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -0003bb00: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -0003bb10: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -0003bb30: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -0003bb50: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -0003bb60: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

# Remed │ │ │ -0003bbb0: 6961 7469 6f6e 2069 7320 6170 706c 6963 iation is applic │ │ │ -0003bbc0: 6162 6c65 206f 6e6c 7920 696e 2063 6572 able only in cer │ │ │ -0003bbd0: 7461 696e 2070 6c61 7466 6f72 6d73 0a69 tain platforms.i │ │ │ -0003bbe0: 6620 7270 6d20 2d2d 7175 6965 7420 2d71 f rpm --quiet -q │ │ │ -0003bbf0: 206b 6572 6e65 6c3b 2074 6865 6e0a 0a69 kernel; then..i │ │ │ -0003bc00: 6620 2120 7270 6d20 2d71 202d 2d71 7569 f ! rpm -q --qui │ │ │ -0003bc10: 6574 2022 6169 6465 2220 3b20 7468 656e et "aide" ; then │ │ │ -0003bc20: 0a20 2020 2064 6e66 2069 6e73 7461 6c6c . dnf install │ │ │ -0003bc30: 202d 7920 2261 6964 6522 0a66 690a 0a65 -y "aide".fi..e │ │ │ -0003bc40: 6c73 650a 2020 2020 2667 743b 2661 6d70 lse. >& │ │ │ -0003bc50: 3b32 2065 6368 6f20 2752 656d 6564 6961 ;2 echo 'Remedia │ │ │ -0003bc60: 7469 6f6e 2069 7320 6e6f 7420 6170 706c tion is not appl │ │ │ -0003bc70: 6963 6162 6c65 2c20 6e6f 7468 696e 6720 icable, nothing │ │ │ -0003bc80: 7761 7320 646f 6e65 270a 6669 0a3c 2f63 was done'.fi.Remediation Ans │ │ │ +0003b040: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ +0003b050: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61

│ │ │ +0003b0e0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
- 
│ │ │ +0003b180: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ +0003b190: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ +0003b1a0: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ +0003b1b0: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ +0003b1c0: 6f0a 2020 7461 6773 3a0a 2020 2d20 434a  o.  tags:.  - CJ
│ │ │ +0003b1d0: 4953 2d35 2e31 302e 312e 330a 2020 2d20  IS-5.10.1.3.  - 
│ │ │ +0003b1e0: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +0003b1f0: 2861 290a 2020 2d20 5043 492d 4453 532d  (a).  - PCI-DSS-
│ │ │ +0003b200: 5265 712d 3131 2e35 0a20 202d 2050 4349  Req-11.5.  - PCI
│ │ │ +0003b210: 2d44 5353 7634 2d31 312e 352e 320a 2020  -DSSv4-11.5.2.  
│ │ │ +0003b220: 2d20 656e 6162 6c65 5f73 7472 6174 6567  - enable_strateg
│ │ │ +0003b230: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ +0003b240: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ +0003b250: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ +0003b260: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +0003b270: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +0003b280: 0a20 202d 2070 6163 6b61 6765 5f61 6964  .  - package_aid
│ │ │ +0003b290: 655f 696e 7374 616c 6c65 640a 0a2d 206e  e_installed..- n
│ │ │ +0003b2a0: 616d 653a 2045 6e73 7572 6520 6169 6465  ame: Ensure aide
│ │ │ +0003b2b0: 2069 7320 696e 7374 616c 6c65 640a 2020   is installed.  
│ │ │ +0003b2c0: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +0003b2d0: 7061 636b 6167 653a 0a20 2020 206e 616d  package:.    nam
│ │ │ +0003b2e0: 653a 2061 6964 650a 2020 2020 7374 6174  e: aide.    stat
│ │ │ +0003b2f0: 653a 2070 7265 7365 6e74 0a20 2077 6865  e: present.  whe
│ │ │ +0003b300: 6e3a 2027 226b 6572 6e65 6c22 2069 6e20  n: '"kernel" in 
│ │ │ +0003b310: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +0003b320: 636b 6167 6573 270a 2020 7461 6773 3a0a  ckages'.  tags:.
│ │ │ +0003b330: 2020 2d20 434a 4953 2d35 2e31 302e 312e    - CJIS-5.10.1.
│ │ │ +0003b340: 330a 2020 2d20 4e49 5354 2d38 3030 2d35  3.  - NIST-800-5
│ │ │ +0003b350: 332d 434d 2d36 2861 290a 2020 2d20 5043  3-CM-6(a).  - PC
│ │ │ +0003b360: 492d 4453 532d 5265 712d 3131 2e35 0a20  I-DSS-Req-11.5. 
│ │ │ +0003b370: 202d 2050 4349 2d44 5353 7634 2d31 312e   - PCI-DSSv4-11.
│ │ │ +0003b380: 352e 320a 2020 2d20 656e 6162 6c65 5f73  5.2.  - enable_s
│ │ │ +0003b390: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ +0003b3a0: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +0003b3b0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +0003b3c0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +0003b3d0: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +0003b3e0: 6e65 6564 6564 0a20 202d 2070 6163 6b61  needed.  - packa
│ │ │ +0003b3f0: 6765 5f61 6964 655f 696e 7374 616c 6c65  ge_aide_installe
│ │ │ +0003b400: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ +0003b410: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div> │ │ │ +0003b4b0: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +0003b4c0: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
│ │ │ +0003b0d0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +0003b100: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +0003b110: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +0003b150: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ +0003b160: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
low< │ │ │ +0003b570: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0003b5c0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +0003b550: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0003b580: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0003b5a0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0003b5b0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0003b5d0: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +0003b5e0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
incl
│ │ │ +0003b600: 7564 6520 696e 7374 616c 6c5f 6169 6465  ude install_aide
│ │ │ +0003b610: 0a0a 636c 6173 7320 696e 7374 616c 6c5f  ..class install_
│ │ │ +0003b620: 6169 6465 207b 0a20 2070 6163 6b61 6765  aide {.  package
│ │ │ +0003b630: 207b 2027 6169 6465 273a 0a20 2020 2065   { 'aide':.    e
│ │ │ +0003b640: 6e73 7572 6520 3d26 6774 3b20 2769 6e73  nsure => 'ins
│ │ │ +0003b650: 7461 6c6c 6564 272c 0a20 207d 0a7d 0a3c  talled',.  }.}.<
│ │ │ +0003b660: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Rem │ │ │ +0003b710: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ +0003b720: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ +0003b730: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
.[[packag
│ │ │ +0003b780: 6573 5d5d 0a6e 616d 6520 3d20 2261 6964  es]].name = "aid
│ │ │ +0003b790: 6522 0a76 6572 7369 6f6e 203d 2022 2a22  e".version = "*"
│ │ │ +0003b7a0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
R │ │ │ +0003b850: 656d 6564 6961 7469 6f6e 2053 6865 6c6c emediation Shell │ │ │ +0003b860: 2073 6372 6970 7420 e287 b23c 2f61 3e3c script ...< │ │ │ +0003b870: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
│ │ │ +0003b910: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +0003b930: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +0003b960: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +0003b8f0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +0003b900: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +0003b920: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +0003b940: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +0003b950: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

# Remed │ │ │ +0003b9a0: 6961 7469 6f6e 2069 7320 6170 706c 6963 iation is applic │ │ │ +0003b9b0: 6162 6c65 206f 6e6c 7920 696e 2063 6572 able only in cer │ │ │ +0003b9c0: 7461 696e 2070 6c61 7466 6f72 6d73 0a69 tain platforms.i │ │ │ +0003b9d0: 6620 7270 6d20 2d2d 7175 6965 7420 2d71 f rpm --quiet -q │ │ │ +0003b9e0: 206b 6572 6e65 6c3b 2074 6865 6e0a 0a69 kernel; then..i │ │ │ +0003b9f0: 6620 2120 7270 6d20 2d71 202d 2d71 7569 f ! rpm -q --qui │ │ │ +0003ba00: 6574 2022 6169 6465 2220 3b20 7468 656e et "aide" ; then │ │ │ +0003ba10: 0a20 2020 2064 6e66 2069 6e73 7461 6c6c . dnf install │ │ │ +0003ba20: 202d 7920 2261 6964 6522 0a66 690a 0a65 -y "aide".fi..e │ │ │ +0003ba30: 6c73 650a 2020 2020 2667 743b 2661 6d70 lse. >& │ │ │ +0003ba40: 3b32 2065 6368 6f20 2752 656d 6564 6961 ;2 echo 'Remedia │ │ │ +0003ba50: 7469 6f6e 2069 7320 6e6f 7420 6170 706c tion is not appl │ │ │ +0003ba60: 6963 6162 6c65 2c20 6e6f 7468 696e 6720 icable, nothing │ │ │ +0003ba70: 7761 7320 646f 6e65 270a 6669 0a3c 2f63 was done'.fi.

│ │ │ +0003ba90: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Remed │ │ │ +0003bb30: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ +0003bb40: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +0003bb50: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
│ │ │ +0003bbf0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +0003bc10: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +0003bc40: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +0003bbd0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +0003bbe0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +0003bc00: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +0003bc20: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +0003bc30: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

.packag │ │ │ +0003bc80: 6520 2d2d 6164 643d 6169 6465 0a3c 2f63 e --add=aide.

│ │ │ 0003bca0: 3c2f 6469 763e 3c2f 7464 3e3c 2f74 723e
│ │ │ 0003bcb0: 3c2f 7462 6f64 793e 3c2f 7461 626c 653e │ │ │ 0003bcc0: 3c2f 7464 3e3c 2f74 723e 3c74 7220 6461 Remedi │ │ │ -0004e400: 6174 696f 6e20 4f53 4275 696c 6420 426c ation OSBuild Bl │ │ │ -0004e410: 7565 7072 696e 7420 736e 6970 7065 7420 ueprint snippet │ │ │ -0004e420: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
<
│ │ │ -0004e460: 636f 6465 3e0a 5b5b 7061 636b 6167 6573  code>.[[packages
│ │ │ -0004e470: 5d5d 0a6e 616d 6520 3d20 2273 7564 6f22  ]].name = "sudo"
│ │ │ -0004e480: 0a76 6572 7369 6f6e 203d 2022 2a22 0a3c  .version = "*".<
│ │ │ -0004e490: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Re │ │ │ -0004e540: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ -0004e550: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
< │ │ │ -0004e5f0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0004e600: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -0004e650: 3c74 723e 3c74 683e 5374 7261 7465 6779
.pa
│ │ │ -0004e690: 636b 6167 6520 2d2d 6164 643d 7375 646f  ckage --add=sudo
│ │ │ -0004e6a0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
│ │ │ -0004e750: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ -0004e760: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
C │ │ │ -0004e5e0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -0004e610: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -0004e620: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -0004e660: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -0004e670: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ -0004e800: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0004e810: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -0004e860: 3c74 723e 3c74 683e 5374 7261 7465 6779
inc
│ │ │ -0004e8a0: 6c75 6465 2069 6e73 7461 6c6c 5f73 7564  lude install_sud
│ │ │ -0004e8b0: 6f0a 0a63 6c61 7373 2069 6e73 7461 6c6c  o..class install
│ │ │ -0004e8c0: 5f73 7564 6f20 7b0a 2020 7061 636b 6167  _sudo {.  packag
│ │ │ -0004e8d0: 6520 7b20 2773 7564 6f27 3a0a 2020 2020  e { 'sudo':.    
│ │ │ -0004e8e0: 656e 7375 7265 203d 2667 743b 2027 696e  ensure => 'in
│ │ │ -0004e8f0: 7374 616c 6c65 6427 2c0a 2020 7d0a 7d0a  stalled',.  }.}.
│ │ │ -0004e900: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
R │ │ │ -0004e9b0: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -0004e9c0: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
C │ │ │ -0004e7f0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -0004e820: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -0004e830: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -0004e870: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -0004e880: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ -0004ea60: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0004ea70: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -0004eac0: 3c74 723e 3c74 683e 5374 7261 7465 6779
- n
│ │ │ -0004eb00: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ -0004eb10: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ -0004eb20: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -0004eb30: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ -0004eb40: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -0004eb50: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -0004eb60: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ -0004eb70: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ -0004eb80: 2d32 2e32 2e36 0a20 202d 2065 6e61 626c  -2.2.6.  - enabl
│ │ │ -0004eb90: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ -0004eba0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -0004ebb0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -0004ebc0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -0004ebd0: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -0004ebe0: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ -0004ebf0: 636b 6167 655f 7375 646f 5f69 6e73 7461  ckage_sudo_insta
│ │ │ -0004ec00: 6c6c 6564 0a0a 2d20 6e61 6d65 3a20 456e  lled..- name: En
│ │ │ -0004ec10: 7375 7265 2073 7564 6f20 6973 2069 6e73  sure sudo is ins
│ │ │ -0004ec20: 7461 6c6c 6564 0a20 2061 6e73 6962 6c65  talled.  ansible
│ │ │ -0004ec30: 2e62 7569 6c74 696e 2e70 6163 6b61 6765  .builtin.package
│ │ │ -0004ec40: 3a0a 2020 2020 6e61 6d65 3a20 7375 646f  :.    name: sudo
│ │ │ -0004ec50: 0a20 2020 2073 7461 7465 3a20 7072 6573  .    state: pres
│ │ │ -0004ec60: 656e 740a 2020 7768 656e 3a20 2722 6b65  ent.  when: '"ke
│ │ │ -0004ec70: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -0004ec80: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ -0004ec90: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -0004eca0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -0004ecb0: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ -0004ecc0: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ -0004ecd0: 2d32 2e32 2e36 0a20 202d 2065 6e61 626c  -2.2.6.  - enabl
│ │ │ -0004ece0: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ -0004ecf0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -0004ed00: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -0004ed10: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -0004ed20: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -0004ed30: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ -0004ed40: 636b 6167 655f 7375 646f 5f69 6e73 7461  ckage_sudo_insta
│ │ │ -0004ed50: 6c6c 6564 0a3c 2f63 6f64 653e 3c2f 7072  lled.Remediation 
│ │ │ -0004ee10: 5368 656c 6c20 7363 7269 7074 20e2 87b2  Shell script ...
│ │ │ -0004ee20: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
C │ │ │ -0004ea50: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -0004ea80: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -0004ea90: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -0004ead0: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -0004eae0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ -0004eef0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0004ef00: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
#
│ │ │ -0004ef50: 2052 656d 6564 6961 7469 6f6e 2069 7320   Remediation is 
│ │ │ -0004ef60: 6170 706c 6963 6162 6c65 206f 6e6c 7920  applicable only 
│ │ │ -0004ef70: 696e 2063 6572 7461 696e 2070 6c61 7466  in certain platf
│ │ │ -0004ef80: 6f72 6d73 0a69 6620 7270 6d20 2d2d 7175  orms.if rpm --qu
│ │ │ -0004ef90: 6965 7420 2d71 206b 6572 6e65 6c3b 2074  iet -q kernel; t
│ │ │ -0004efa0: 6865 6e0a 0a69 6620 2120 7270 6d20 2d71  hen..if ! rpm -q
│ │ │ -0004efb0: 202d 2d71 7569 6574 2022 7375 646f 2220   --quiet "sudo" 
│ │ │ -0004efc0: 3b20 7468 656e 0a20 2020 2064 6e66 2069  ; then.    dnf i
│ │ │ -0004efd0: 6e73 7461 6c6c 202d 7920 2273 7564 6f22  nstall -y "sudo"
│ │ │ -0004efe0: 0a66 690a 0a65 6c73 650a 2020 2020 2667  .fi..else.    &g
│ │ │ -0004eff0: 743b 2661 6d70 3b32 2065 6368 6f20 2752  t;&2 echo 'R
│ │ │ -0004f000: 656d 6564 6961 7469 6f6e 2069 7320 6e6f  emediation is no
│ │ │ -0004f010: 7420 6170 706c 6963 6162 6c65 2c20 6e6f  t applicable, no
│ │ │ -0004f020: 7468 696e 6720 7761 7320 646f 6e65 270a  thing was done'.
│ │ │ -0004f030: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e  fi.
│ │ │ +0004e400: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ +0004e410: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ +0004e450: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Complexity:low
Disrup │ │ │ -0004eed0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0004eee0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0004ef20: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -0004ef30: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ +0004e4c0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +0004e4e0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +0004e510: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ +0004e530: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ +0004e4a0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +0004e4b0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +0004e4f0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +0004e500: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
- name: │ │ │ +0004e550: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ +0004e560: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ +0004e570: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ +0004e580: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ +0004e590: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ +0004e5a0: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ +0004e5b0: 5043 492d 4453 5376 342d 322e 320a 2020 PCI-DSSv4-2.2. │ │ │ +0004e5c0: 2d20 5043 492d 4453 5376 342d 322e 322e - PCI-DSSv4-2.2. │ │ │ +0004e5d0: 360a 2020 2d20 656e 6162 6c65 5f73 7472 6. - enable_str │ │ │ +0004e5e0: 6174 6567 790a 2020 2d20 6c6f 775f 636f ategy. - low_co │ │ │ +0004e5f0: 6d70 6c65 7869 7479 0a20 202d 206c 6f77 mplexity. - low │ │ │ +0004e600: 5f64 6973 7275 7074 696f 6e0a 2020 2d20 _disruption. - │ │ │ +0004e610: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ +0004e620: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ +0004e630: 6564 6564 0a20 202d 2070 6163 6b61 6765 eded. - package │ │ │ +0004e640: 5f73 7564 6f5f 696e 7374 616c 6c65 640a _sudo_installed. │ │ │ +0004e650: 0a2d 206e 616d 653a 2045 6e73 7572 6520 .- name: Ensure │ │ │ +0004e660: 7375 646f 2069 7320 696e 7374 616c 6c65 sudo is installe │ │ │ +0004e670: 640a 2020 616e 7369 626c 652e 6275 696c d. ansible.buil │ │ │ +0004e680: 7469 6e2e 7061 636b 6167 653a 0a20 2020 tin.package:. │ │ │ +0004e690: 206e 616d 653a 2073 7564 6f0a 2020 2020 name: sudo. │ │ │ +0004e6a0: 7374 6174 653a 2070 7265 7365 6e74 0a20 state: present. │ │ │ +0004e6b0: 2077 6865 6e3a 2027 226b 6572 6e65 6c22 when: '"kernel" │ │ │ +0004e6c0: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +0004e6d0: 732e 7061 636b 6167 6573 270a 2020 7461 s.packages'. ta │ │ │ +0004e6e0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ +0004e6f0: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ +0004e700: 5043 492d 4453 5376 342d 322e 320a 2020 PCI-DSSv4-2.2. │ │ │ +0004e710: 2d20 5043 492d 4453 5376 342d 322e 322e - PCI-DSSv4-2.2. │ │ │ +0004e720: 360a 2020 2d20 656e 6162 6c65 5f73 7472 6. - enable_str │ │ │ +0004e730: 6174 6567 790a 2020 2d20 6c6f 775f 636f ategy. - low_co │ │ │ +0004e740: 6d70 6c65 7869 7479 0a20 202d 206c 6f77 mplexity. - low │ │ │ +0004e750: 5f64 6973 7275 7074 696f 6e0a 2020 2d20 _disruption. - │ │ │ +0004e760: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ +0004e770: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ +0004e780: 6564 6564 0a20 202d 2070 6163 6b61 6765 eded. - package │ │ │ +0004e790: 5f73 7564 6f5f 696e 7374 616c 6c65 640a _sudo_installed. │ │ │ +0004e7a0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64 R │ │ │ +0004e850: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ +0004e860: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
low< │ │ │ +0004e910: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0004e960: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +0004e8f0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0004e920: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0004e940: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0004e950: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0004e970: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +0004e980: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
incl
│ │ │ +0004e9a0: 7564 6520 696e 7374 616c 6c5f 7375 646f  ude install_sudo
│ │ │ +0004e9b0: 0a0a 636c 6173 7320 696e 7374 616c 6c5f  ..class install_
│ │ │ +0004e9c0: 7375 646f 207b 0a20 2070 6163 6b61 6765  sudo {.  package
│ │ │ +0004e9d0: 207b 2027 7375 646f 273a 0a20 2020 2065   { 'sudo':.    e
│ │ │ +0004e9e0: 6e73 7572 6520 3d26 6774 3b20 2769 6e73  nsure => 'ins
│ │ │ +0004e9f0: 7461 6c6c 6564 272c 0a20 207d 0a7d 0a3c  talled',.  }.}.<
│ │ │ +0004ea00: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Re │ │ │ +0004eab0: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ +0004eac0: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ +0004ead0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +0004eae0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +0004eaf0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +0004eb00: 7365 2220 6964 3d22 6964 3430 223e 3c70 se" id="id40">

.[[pack │ │ │ +0004eb20: 6167 6573 5d5d 0a6e 616d 6520 3d20 2273 ages]].name = "s │ │ │ +0004eb30: 7564 6f22 0a76 6572 7369 6f6e 203d 2022 udo".version = " │ │ │ +0004eb40: 2a22 0a3c 2f63 6f64 653e 3c2f 7072 653e *". │ │ │ +0004eb50: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22

Remediation Sh │ │ │ +0004ec00: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
< │ │ │ +0004eca0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0004ecb0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +0004ed00: 3c74 723e 3c74 683e 5374 7261 7465 6779
# R
│ │ │ +0004ed40: 656d 6564 6961 7469 6f6e 2069 7320 6170  emediation is ap
│ │ │ +0004ed50: 706c 6963 6162 6c65 206f 6e6c 7920 696e  plicable only in
│ │ │ +0004ed60: 2063 6572 7461 696e 2070 6c61 7466 6f72   certain platfor
│ │ │ +0004ed70: 6d73 0a69 6620 7270 6d20 2d2d 7175 6965  ms.if rpm --quie
│ │ │ +0004ed80: 7420 2d71 206b 6572 6e65 6c3b 2074 6865  t -q kernel; the
│ │ │ +0004ed90: 6e0a 0a69 6620 2120 7270 6d20 2d71 202d  n..if ! rpm -q -
│ │ │ +0004eda0: 2d71 7569 6574 2022 7375 646f 2220 3b20  -quiet "sudo" ; 
│ │ │ +0004edb0: 7468 656e 0a20 2020 2064 6e66 2069 6e73  then.    dnf ins
│ │ │ +0004edc0: 7461 6c6c 202d 7920 2273 7564 6f22 0a66  tall -y "sudo".f
│ │ │ +0004edd0: 690a 0a65 6c73 650a 2020 2020 2667 743b  i..else.    >
│ │ │ +0004ede0: 2661 6d70 3b32 2065 6368 6f20 2752 656d  &2 echo 'Rem
│ │ │ +0004edf0: 6564 6961 7469 6f6e 2069 7320 6e6f 7420  ediation is not 
│ │ │ +0004ee00: 6170 706c 6963 6162 6c65 2c20 6e6f 7468  applicable, noth
│ │ │ +0004ee10: 696e 6720 7761 7320 646f 6e65 270a 6669  ing was done'.fi
│ │ │ +0004ee20: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
│ │ │ +0004eed0: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ +0004eee0: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ +0004eef0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
C │ │ │ +0004ec90: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +0004ecc0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +0004ecd0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +0004ed10: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +0004ed20: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ +0004efc0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +0004efd0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
.
│ │ │ +0004f020: 7061 636b 6167 6520 2d2d 6164 643d 7375  package --add=su
│ │ │ +0004f030: 646f 0a3c 2f63 6f64 653e 3c2f 7072 653e  do.
│ │ │ 0004f040: 3c2f 6469 763e 3c2f 6469 763e 3c2f 7464 │ │ │ 0004f070: 3c74 7220 6461 7461 2d74 742d 6964 3d22 R │ │ │ -00106680: 656d 6564 6961 7469 6f6e 204f 5342 7569 emediation OSBui │ │ │ -00106690: 6c64 2042 6c75 6570 7269 6e74 2073 6e69 ld Blueprint sni │ │ │ -001066a0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -001066b0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -001066e0: 3c70 7265 3e3c 636f 6465 3e0a 5b63 7573
.[cus
│ │ │ -001066f0: 746f 6d69 7a61 7469 6f6e 732e 7365 7276  tomizations.serv
│ │ │ -00106700: 6963 6573 5d0a 656e 6162 6c65 6420 3d20  ices].enabled = 
│ │ │ -00106710: 5b22 7379 7374 656d 642d 6a6f 7572 6e61  ["systemd-journa
│ │ │ -00106720: 6c64 225d 0a3c 2f63 6f64 653e 3c2f 7072  ld"].
Remediation │ │ │ -001067e0: 2050 7570 7065 7420 736e 6970 7065 7420 Puppet snippet │ │ │ -001067f0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
low< │ │ │ -001068c0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ -00106910: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:low
Disrup │ │ │ +0004efa0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +0004efb0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +0004eff0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +0004f000: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity: │ │ │ -00106880: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ -001068a0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:false
St │ │ │ -001068f0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -00106900: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable
include enabl
│ │ │ -00106930: 655f 7379 7374 656d 642d 6a6f 7572 6e61  e_systemd-journa
│ │ │ -00106940: 6c64 0a0a 636c 6173 7320 656e 6162 6c65  ld..class enable
│ │ │ -00106950: 5f73 7973 7465 6d64 2d6a 6f75 726e 616c  _systemd-journal
│ │ │ -00106960: 6420 7b0a 2020 7365 7276 6963 6520 7b27  d {.  service {'
│ │ │ -00106970: 7379 7374 656d 642d 6a6f 7572 6e61 6c64  systemd-journald
│ │ │ -00106980: 273a 0a20 2020 2065 6e61 626c 6520 3d26  ':.    enable =&
│ │ │ -00106990: 6774 3b20 7472 7565 2c0a 2020 2020 656e  gt; true,.    en
│ │ │ -001069a0: 7375 7265 203d 2667 743b 2027 7275 6e6e  sure => 'runn
│ │ │ -001069b0: 696e 6727 2c0a 2020 7d0a 7d0a 3c2f 636f  ing',.  }.}.
< │ │ │ -001069d0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -001069e0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -001069f0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -00106a00: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -00106a10: 6432 3434 2220 7461 6269 6e64 6578 3d22 d244" tabindex=" │ │ │ -00106a20: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -00106a30: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -00106a40: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -00106a50: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -00106a60: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -00106a70: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ -00106a80: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -00106a90: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -00106b10: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -00106b40: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -00106b60: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -00106b70: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -00106b90: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -00106bb0: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ -00106bc0: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ -00106bd0: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ -00106be0: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ -00106bf0: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ -00106c00: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -00106c10: 3830 302d 3533 2d53 432d 3234 0a20 202d  800-53-SC-24.  -
│ │ │ -00106c20: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ -00106c30: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -00106c40: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ -00106c50: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ -00106c60: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ -00106c70: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -00106c80: 2020 2d20 7365 7276 6963 655f 7379 7374    - service_syst
│ │ │ -00106c90: 656d 642d 6a6f 7572 6e61 6c64 5f65 6e61  emd-journald_ena
│ │ │ -00106ca0: 626c 6564 0a0a 2d20 6e61 6d65 3a20 456e  bled..- name: En
│ │ │ -00106cb0: 6162 6c65 2073 7973 7465 6d64 2d6a 6f75  able systemd-jou
│ │ │ -00106cc0: 726e 616c 6420 5365 7276 6963 6520 2d20  rnald Service - 
│ │ │ -00106cd0: 456e 6162 6c65 2073 6572 7669 6365 2073  Enable service s
│ │ │ -00106ce0: 7973 7465 6d64 2d6a 6f75 726e 616c 640a  ystemd-journald.
│ │ │ -00106cf0: 2020 626c 6f63 6b3a 0a0a 2020 2d20 6e61    block:..  - na
│ │ │ -00106d00: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ -00106d10: 6163 6b61 6765 2066 6163 7473 0a20 2020  ackage facts.   
│ │ │ -00106d20: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -00106d30: 2e70 6163 6b61 6765 5f66 6163 7473 3a0a  .package_facts:.
│ │ │ -00106d40: 2020 2020 2020 6d61 6e61 6765 723a 2061        manager: a
│ │ │ -00106d50: 7574 6f0a 0a20 202d 206e 616d 653a 2045  uto..  - name: E
│ │ │ -00106d60: 6e61 626c 6520 7379 7374 656d 642d 6a6f  nable systemd-jo
│ │ │ -00106d70: 7572 6e61 6c64 2053 6572 7669 6365 202d  urnald Service -
│ │ │ -00106d80: 2045 6e61 626c 6520 5365 7276 6963 6520   Enable Service 
│ │ │ -00106d90: 7379 7374 656d 642d 6a6f 7572 6e61 6c64  systemd-journald
│ │ │ -00106da0: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ -00106db0: 6c74 696e 2e73 7973 7465 6d64 3a0a 2020  ltin.systemd:.  
│ │ │ -00106dc0: 2020 2020 6e61 6d65 3a20 7379 7374 656d      name: system
│ │ │ -00106dd0: 642d 6a6f 7572 6e61 6c64 0a20 2020 2020  d-journald.     
│ │ │ -00106de0: 2065 6e61 626c 6564 3a20 7472 7565 0a20   enabled: true. 
│ │ │ -00106df0: 2020 2020 2073 7461 7465 3a20 7374 6172       state: star
│ │ │ -00106e00: 7465 640a 2020 2020 2020 6d61 736b 6564  ted.      masked
│ │ │ -00106e10: 3a20 6661 6c73 650a 2020 2020 7768 656e  : false.    when
│ │ │ -00106e20: 3a0a 2020 2020 2d20 2722 7379 7374 656d  :.    - '"system
│ │ │ -00106e30: 6422 2069 6e20 616e 7369 626c 655f 6661  d" in ansible_fa
│ │ │ -00106e40: 6374 732e 7061 636b 6167 6573 270a 2020  cts.packages'.  
│ │ │ -00106e50: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ -00106e60: 3030 2d35 332d 5343 2d32 340a 2020 2d20  00-53-SC-24.  - 
│ │ │ -00106e70: 656e 6162 6c65 5f73 7472 6174 6567 790a  enable_strategy.
│ │ │ -00106e80: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -00106e90: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ -00106ea0: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ -00106eb0: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ -00106ec0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ -00106ed0: 202d 2073 6572 7669 6365 5f73 7973 7465   - service_syste
│ │ │ -00106ee0: 6d64 2d6a 6f75 726e 616c 645f 656e 6162  md-journald_enab
│ │ │ -00106ef0: 6c65 640a 2020 2d20 7370 6563 6961 6c5f  led.  - special_
│ │ │ -00106f00: 7365 7276 6963 655f 626c 6f63 6b0a 2020  service_block.  
│ │ │ -00106f10: 7768 656e 3a20 2722 6b65 726e 656c 2220  when: '"kernel" 
│ │ │ -00106f20: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -00106f30: 2e70 6163 6b61 6765 7327 0a3c 2f63 6f64  .packages'.
│ │ │ +00106730: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
- 
│ │ │ +001067d0: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ +001067e0: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ +001067f0: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ +00106800: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ +00106810: 6f0a 2020 7461 6773 3a0a 2020 2d20 4e49  o.  tags:.  - NI
│ │ │ +00106820: 5354 2d38 3030 2d35 332d 5343 2d32 340a  ST-800-53-SC-24.
│ │ │ +00106830: 2020 2d20 656e 6162 6c65 5f73 7472 6174    - enable_strat
│ │ │ +00106840: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +00106850: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +00106860: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +00106870: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +00106880: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +00106890: 6564 0a20 202d 2073 6572 7669 6365 5f73  ed.  - service_s
│ │ │ +001068a0: 7973 7465 6d64 2d6a 6f75 726e 616c 645f  ystemd-journald_
│ │ │ +001068b0: 656e 6162 6c65 640a 0a2d 206e 616d 653a  enabled..- name:
│ │ │ +001068c0: 2045 6e61 626c 6520 7379 7374 656d 642d   Enable systemd-
│ │ │ +001068d0: 6a6f 7572 6e61 6c64 2053 6572 7669 6365  journald Service
│ │ │ +001068e0: 202d 2045 6e61 626c 6520 7365 7276 6963   - Enable servic
│ │ │ +001068f0: 6520 7379 7374 656d 642d 6a6f 7572 6e61  e systemd-journa
│ │ │ +00106900: 6c64 0a20 2062 6c6f 636b 3a0a 0a20 202d  ld.  block:..  -
│ │ │ +00106910: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +00106920: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +00106930: 2020 2020 616e 7369 626c 652e 6275 696c      ansible.buil
│ │ │ +00106940: 7469 6e2e 7061 636b 6167 655f 6661 6374  tin.package_fact
│ │ │ +00106950: 733a 0a20 2020 2020 206d 616e 6167 6572  s:.      manager
│ │ │ +00106960: 3a20 6175 746f 0a0a 2020 2d20 6e61 6d65  : auto..  - name
│ │ │ +00106970: 3a20 456e 6162 6c65 2073 7973 7465 6d64  : Enable systemd
│ │ │ +00106980: 2d6a 6f75 726e 616c 6420 5365 7276 6963  -journald Servic
│ │ │ +00106990: 6520 2d20 456e 6162 6c65 2053 6572 7669  e - Enable Servi
│ │ │ +001069a0: 6365 2073 7973 7465 6d64 2d6a 6f75 726e  ce systemd-journ
│ │ │ +001069b0: 616c 640a 2020 2020 616e 7369 626c 652e  ald.    ansible.
│ │ │ +001069c0: 6275 696c 7469 6e2e 7379 7374 656d 643a  builtin.systemd:
│ │ │ +001069d0: 0a20 2020 2020 206e 616d 653a 2073 7973  .      name: sys
│ │ │ +001069e0: 7465 6d64 2d6a 6f75 726e 616c 640a 2020  temd-journald.  
│ │ │ +001069f0: 2020 2020 656e 6162 6c65 643a 2074 7275      enabled: tru
│ │ │ +00106a00: 650a 2020 2020 2020 7374 6174 653a 2073  e.      state: s
│ │ │ +00106a10: 7461 7274 6564 0a20 2020 2020 206d 6173  tarted.      mas
│ │ │ +00106a20: 6b65 643a 2066 616c 7365 0a20 2020 2077  ked: false.    w
│ │ │ +00106a30: 6865 6e3a 0a20 2020 202d 2027 2273 7973  hen:.    - '"sys
│ │ │ +00106a40: 7465 6d64 2220 696e 2061 6e73 6962 6c65  temd" in ansible
│ │ │ +00106a50: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ +00106a60: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +00106a70: 542d 3830 302d 3533 2d53 432d 3234 0a20  T-800-53-SC-24. 
│ │ │ +00106a80: 202d 2065 6e61 626c 655f 7374 7261 7465   - enable_strate
│ │ │ +00106a90: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ +00106aa0: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ +00106ab0: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ +00106ac0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +00106ad0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +00106ae0: 640a 2020 2d20 7365 7276 6963 655f 7379  d.  - service_sy
│ │ │ +00106af0: 7374 656d 642d 6a6f 7572 6e61 6c64 5f65  stemd-journald_e
│ │ │ +00106b00: 6e61 626c 6564 0a20 202d 2073 7065 6369  nabled.  - speci
│ │ │ +00106b10: 616c 5f73 6572 7669 6365 5f62 6c6f 636b  al_service_block
│ │ │ +00106b20: 0a20 2077 6865 6e3a 2027 226b 6572 6e65  .  when: '"kerne
│ │ │ +00106b30: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +00106b40: 6374 732e 7061 636b 6167 6573 270a 3c2f  cts.packages'.
Re │ │ │ +00106c00: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ +00106c10: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +00106c20: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
│ │ │ +00106720: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00106750: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00106760: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +001067a0: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ +001067b0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
low< │ │ │ +00106cc0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +00106d10: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +00106ca0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +00106cd0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +00106cf0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +00106d00: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +00106d20: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +00106d30: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
incl
│ │ │ +00106d50: 7564 6520 656e 6162 6c65 5f73 7973 7465  ude enable_syste
│ │ │ +00106d60: 6d64 2d6a 6f75 726e 616c 640a 0a63 6c61  md-journald..cla
│ │ │ +00106d70: 7373 2065 6e61 626c 655f 7379 7374 656d  ss enable_system
│ │ │ +00106d80: 642d 6a6f 7572 6e61 6c64 207b 0a20 2073  d-journald {.  s
│ │ │ +00106d90: 6572 7669 6365 207b 2773 7973 7465 6d64  ervice {'systemd
│ │ │ +00106da0: 2d6a 6f75 726e 616c 6427 3a0a 2020 2020  -journald':.    
│ │ │ +00106db0: 656e 6162 6c65 203d 2667 743b 2074 7275  enable => tru
│ │ │ +00106dc0: 652c 0a20 2020 2065 6e73 7572 6520 3d26  e,.    ensure =&
│ │ │ +00106dd0: 6774 3b20 2772 756e 6e69 6e67 272c 0a20  gt; 'running',. 
│ │ │ +00106de0: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.
Remediation │ │ │ +00106ea0: 204f 5342 7569 6c64 2042 6c75 6570 7269 OSBuild Bluepri │ │ │ +00106eb0: 6e74 2073 6e69 7070 6574 20e2 87b2 3c2f nt snippet ...
.[customization
│ │ │ +00106f10: 732e 7365 7276 6963 6573 5d0a 656e 6162  s.services].enab
│ │ │ +00106f20: 6c65 6420 3d20 5b22 7379 7374 656d 642d  led = ["systemd-
│ │ │ +00106f30: 6a6f 7572 6e61 6c64 225d 0a3c 2f63 6f64  journald"].
Reme │ │ │ -00113c70: 6469 6174 696f 6e20 4f53 4275 696c 6420 diation OSBuild │ │ │ -00113c80: 426c 7565 7072 696e 7420 736e 6970 7065 Blueprint snippe │ │ │ -00113c90: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
.[[packa │ │ │ -00113ce0: 6765 735d 5d0a 6e61 6d65 203d 2022 7273 ges]].name = "rs │ │ │ -00113cf0: 7973 6c6f 6722 0a76 6572 7369 6f6e 203d yslog".version = │ │ │ -00113d00: 2022 2a22 0a3c 2f63 6f64 653e 3c2f 7072 "*".
Remediation │ │ │ -00113dc0: 2041 6e61 636f 6e64 6120 736e 6970 7065 Anaconda snippe │ │ │ -00113dd0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -00113e50: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -00113e60: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -00113e80: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -00113e90: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -00113eb0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -00113ed0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ -00113f00: 636f 6465 3e0a 7061 636b 6167 6520 2d2d  code>.package --
│ │ │ -00113f10: 6164 643d 7273 7973 6c6f 670a 3c2f 636f  add=rsyslog.
< │ │ │ -00113f30: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -00113f40: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -00113f50: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -00113f60: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -00113f70: 6432 3637 2220 7461 6269 6e64 6578 3d22 d267" tabindex=" │ │ │ -00113f80: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -00113f90: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -00113fa0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -00113fb0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -00113fc0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -00113fd0: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ -00113fe0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -00114070: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -00114080: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -001140a0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -001140c0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -001140d0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -00114110: 7072 653e 3c63 6f64 653e 696e 636c 7564 pre>includ │ │ │ -00114120: 6520 696e 7374 616c 6c5f 7273 7973 6c6f e install_rsyslo │ │ │ -00114130: 670a 0a63 6c61 7373 2069 6e73 7461 6c6c g..class install │ │ │ -00114140: 5f72 7379 736c 6f67 207b 0a20 2070 6163 _rsyslog {. pac │ │ │ -00114150: 6b61 6765 207b 2027 7273 7973 6c6f 6727 kage { 'rsyslog' │ │ │ -00114160: 3a0a 2020 2020 656e 7375 7265 203d 2667 :. ensure =&g │ │ │ -00114170: 743b 2027 696e 7374 616c 6c65 6427 2c0a t; 'installed',. │ │ │ -00114180: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 }.}.

Remediatio │ │ │ -00114240: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ -00114250: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -001142d0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -001142e0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -00114300: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -00114310: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -00114330: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -00114350: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ -00114380: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ -00114390: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ -001143a0: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ -001143b0: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ -001143c0: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ -001143d0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001143e0: 2d43 4d2d 3628 6129 0a20 202d 2065 6e61  -CM-6(a).  - ena
│ │ │ -001143f0: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ -00114400: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -00114410: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -00114420: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ -00114430: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ -00114440: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ -00114450: 7061 636b 6167 655f 7273 7973 6c6f 675f  package_rsyslog_
│ │ │ -00114460: 696e 7374 616c 6c65 640a 0a2d 206e 616d  installed..- nam
│ │ │ -00114470: 653a 2045 6e73 7572 6520 7273 7973 6c6f  e: Ensure rsyslo
│ │ │ -00114480: 6720 6973 2069 6e73 7461 6c6c 6564 0a20  g is installed. 
│ │ │ -00114490: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -001144a0: 2e70 6163 6b61 6765 3a0a 2020 2020 6e61  .package:.    na
│ │ │ -001144b0: 6d65 3a20 7273 7973 6c6f 670a 2020 2020  me: rsyslog.    
│ │ │ -001144c0: 7374 6174 653a 2070 7265 7365 6e74 0a20  state: present. 
│ │ │ -001144d0: 2077 6865 6e3a 2027 226b 6572 6e65 6c22   when: '"kernel"
│ │ │ -001144e0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001144f0: 732e 7061 636b 6167 6573 270a 2020 7461  s.packages'.  ta
│ │ │ -00114500: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -00114510: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -00114520: 656e 6162 6c65 5f73 7472 6174 6567 790a  enable_strategy.
│ │ │ -00114530: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -00114540: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ -00114550: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ -00114560: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ -00114570: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ -00114580: 202d 2070 6163 6b61 6765 5f72 7379 736c   - package_rsysl
│ │ │ -00114590: 6f67 5f69 6e73 7461 6c6c 6564 0a3c 2f63  og_installed.
│ │ │ -001145b0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -00114650: 6564 6961 7469 6f6e 2053 6865 6c6c 2073 ediation Shell s │ │ │ -00114660: 6372 6970 7420 e287 b23c 2f61 3e3c 6272 cript ...
│ │ │ -00114710: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -00114730: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -00114760: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -001146f0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -00114700: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00114720: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -00114740: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -00114750: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

# Remed │ │ │ -001147a0: 6961 7469 6f6e 2069 7320 6170 706c 6963 iation is applic │ │ │ -001147b0: 6162 6c65 206f 6e6c 7920 696e 2063 6572 able only in cer │ │ │ -001147c0: 7461 696e 2070 6c61 7466 6f72 6d73 0a69 tain platforms.i │ │ │ -001147d0: 6620 7270 6d20 2d2d 7175 6965 7420 2d71 f rpm --quiet -q │ │ │ -001147e0: 206b 6572 6e65 6c3b 2074 6865 6e0a 0a69 kernel; then..i │ │ │ -001147f0: 6620 2120 7270 6d20 2d71 202d 2d71 7569 f ! rpm -q --qui │ │ │ -00114800: 6574 2022 7273 7973 6c6f 6722 203b 2074 et "rsyslog" ; t │ │ │ -00114810: 6865 6e0a 2020 2020 646e 6620 696e 7374 hen. dnf inst │ │ │ -00114820: 616c 6c20 2d79 2022 7273 7973 6c6f 6722 all -y "rsyslog" │ │ │ -00114830: 0a66 690a 0a65 6c73 650a 2020 2020 2667 .fi..else. &g │ │ │ -00114840: 743b 2661 6d70 3b32 2065 6368 6f20 2752 t;&2 echo 'R │ │ │ -00114850: 656d 6564 6961 7469 6f6e 2069 7320 6e6f emediation is no │ │ │ -00114860: 7420 6170 706c 6963 6162 6c65 2c20 6e6f t applicable, no │ │ │ -00114870: 7468 696e 6720 7761 7320 646f 6e65 270a thing was done'. │ │ │ -00114880: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e fi. │ │ │ +00113c70: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ +00113c80: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +00113c90: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>

Com │ │ │ +00113d10: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +00113d40: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +00113d60: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +00113d70: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +00113d90: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ +00113db0: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ +00113dc0: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ +00113dd0: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ +00113de0: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ +00113df0: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ +00113e00: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +00113e10: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +00113e20: 202d 2065 6e61 626c 655f 7374 7261 7465   - enable_strate
│ │ │ +00113e30: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ +00113e40: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ +00113e50: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ +00113e60: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +00113e70: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +00113e80: 640a 2020 2d20 7061 636b 6167 655f 7273  d.  - package_rs
│ │ │ +00113e90: 7973 6c6f 675f 696e 7374 616c 6c65 640a  yslog_installed.
│ │ │ +00113ea0: 0a2d 206e 616d 653a 2045 6e73 7572 6520  .- name: Ensure 
│ │ │ +00113eb0: 7273 7973 6c6f 6720 6973 2069 6e73 7461  rsyslog is insta
│ │ │ +00113ec0: 6c6c 6564 0a20 2061 6e73 6962 6c65 2e62  lled.  ansible.b
│ │ │ +00113ed0: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a  uiltin.package:.
│ │ │ +00113ee0: 2020 2020 6e61 6d65 3a20 7273 7973 6c6f      name: rsyslo
│ │ │ +00113ef0: 670a 2020 2020 7374 6174 653a 2070 7265  g.    state: pre
│ │ │ +00113f00: 7365 6e74 0a20 2077 6865 6e3a 2027 226b  sent.  when: '"k
│ │ │ +00113f10: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +00113f20: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +00113f30: 270a 2020 7461 6773 3a0a 2020 2d20 4e49  '.  tags:.  - NI
│ │ │ +00113f40: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +00113f50: 290a 2020 2d20 656e 6162 6c65 5f73 7472  ).  - enable_str
│ │ │ +00113f60: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ +00113f70: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ +00113f80: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +00113f90: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +00113fa0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +00113fb0: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ +00113fc0: 5f72 7379 736c 6f67 5f69 6e73 7461 6c6c  _rsyslog_install
│ │ │ +00113fd0: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e  ed.
│ │ │ +00113fe0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation P │ │ │ +00114090: 7570 7065 7420 736e 6970 7065 7420 e287 uppet snippet .. │ │ │ +001140a0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ +00114120: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +00114140: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +00114190: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
include install
│ │ │ +001141e0: 5f72 7379 736c 6f67 0a0a 636c 6173 7320  _rsyslog..class 
│ │ │ +001141f0: 696e 7374 616c 6c5f 7273 7973 6c6f 6720  install_rsyslog 
│ │ │ +00114200: 7b0a 2020 7061 636b 6167 6520 7b20 2772  {.  package { 'r
│ │ │ +00114210: 7379 736c 6f67 273a 0a20 2020 2065 6e73  syslog':.    ens
│ │ │ +00114220: 7572 6520 3d26 6774 3b20 2769 6e73 7461  ure => 'insta
│ │ │ +00114230: 6c6c 6564 272c 0a20 207d 0a7d 0a3c 2f63  lled',.  }.}.
│ │ │ +00114250: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +001142f0: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ +00114300: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ +00114310: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...

.[[pack │ │ │ +00114360: 6167 6573 5d5d 0a6e 616d 6520 3d20 2272 ages]].name = "r │ │ │ +00114370: 7379 736c 6f67 220a 7665 7273 696f 6e20 syslog".version │ │ │ +00114380: 3d20 222a 220a 3c2f 636f 6465 3e3c 2f70 = "*".

Remediatio │ │ │ +00114440: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ +00114450: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
low
Disr │ │ │ +00114150: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +00114160: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +001141a0: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +001141b0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ +001144d0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +001144f0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +00114540: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ +00114570: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
# Remediation 
│ │ │ +00114590: 6973 2061 7070 6c69 6361 626c 6520 6f6e  is applicable on
│ │ │ +001145a0: 6c79 2069 6e20 6365 7274 6169 6e20 706c  ly in certain pl
│ │ │ +001145b0: 6174 666f 726d 730a 6966 2072 706d 202d  atforms.if rpm -
│ │ │ +001145c0: 2d71 7569 6574 202d 7120 6b65 726e 656c  -quiet -q kernel
│ │ │ +001145d0: 3b20 7468 656e 0a0a 6966 2021 2072 706d  ; then..if ! rpm
│ │ │ +001145e0: 202d 7120 2d2d 7175 6965 7420 2272 7379   -q --quiet "rsy
│ │ │ +001145f0: 736c 6f67 2220 3b20 7468 656e 0a20 2020  slog" ; then.   
│ │ │ +00114600: 2064 6e66 2069 6e73 7461 6c6c 202d 7920   dnf install -y 
│ │ │ +00114610: 2272 7379 736c 6f67 220a 6669 0a0a 656c  "rsyslog".fi..el
│ │ │ +00114620: 7365 0a20 2020 2026 6774 3b26 616d 703b  se.    >&
│ │ │ +00114630: 3220 6563 686f 2027 5265 6d65 6469 6174  2 echo 'Remediat
│ │ │ +00114640: 696f 6e20 6973 206e 6f74 2061 7070 6c69  ion is not appli
│ │ │ +00114650: 6361 626c 652c 206e 6f74 6869 6e67 2077  cable, nothing w
│ │ │ +00114660: 6173 2064 6f6e 6527 0a66 690a 3c2f 636f  as done'.fi.
< │ │ │ +00114680: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +00114690: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +001146a0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +001146b0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +001146c0: 6432 3639 2220 7461 6269 6e64 6578 3d22 d269" tabindex=" │ │ │ +001146d0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +001146e0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +001146f0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +00114700: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +00114710: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +00114720: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ +00114730: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +00114740: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
Complexity:< │ │ │ +001144e0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00114500: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +00114550: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ +00114560: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
low< │ │ │ +001147e0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +00114830: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +001147c0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +001147f0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +00114810: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +00114820: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +00114840: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +00114850: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.pac
│ │ │ +00114870: 6b61 6765 202d 2d61 6464 3d72 7379 736c  kage --add=rsysl
│ │ │ +00114880: 6f67 0a3c 2f63 6f64 653e 3c2f 7072 653e  og.
│ │ │ 00114890: 3c2f 6469 763e 3c2f 6469 763e 3c2f 7464
│ │ │ 001148c0: 3c74 7220 6461 7461 2d74 742d 6964 3d22 Remediation OSB │ │ │ -001191e0: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ -001191f0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
.[[
│ │ │ -00119240: 7061 636b 6167 6573 5d5d 0a6e 616d 6520  packages]].name 
│ │ │ -00119250: 3d20 2266 6972 6577 616c 6c64 220a 7665  = "firewalld".ve
│ │ │ -00119260: 7273 696f 6e20 3d20 222a 220a 3c2f 636f  rsion = "*".
< │ │ │ -00119280: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -00119290: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -001192a0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -001192b0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -001192c0: 6432 3735 2220 7461 6269 6e64 6578 3d22 d275" tabindex=" │ │ │ -001192d0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -001192e0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -001192f0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -00119300: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -00119310: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -00119320: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ -00119330: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -00119340: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -001193e0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -00119430: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ -001193c0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -001193f0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -00119410: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -00119420: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -00119440: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -00119450: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.pac
│ │ │ -00119470: 6b61 6765 202d 2d61 6464 3d66 6972 6577  kage --add=firew
│ │ │ -00119480: 616c 6c64 0a3c 2f63 6f64 653e 3c2f 7072  alld.
Remediation │ │ │ -00119540: 2050 7570 7065 7420 736e 6970 7065 7420 Puppet snippet │ │ │ -00119550: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -001195e0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -00119600: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -00119620: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -00119650: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -00119660: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ -00119670: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
include insta
│ │ │ -00119690: 6c6c 5f66 6972 6577 616c 6c64 0a0a 636c  ll_firewalld..cl
│ │ │ -001196a0: 6173 7320 696e 7374 616c 6c5f 6669 7265  ass install_fire
│ │ │ -001196b0: 7761 6c6c 6420 7b0a 2020 7061 636b 6167  walld {.  packag
│ │ │ -001196c0: 6520 7b20 2766 6972 6577 616c 6c64 273a  e { 'firewalld':
│ │ │ -001196d0: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ -001196e0: 3b20 2769 6e73 7461 6c6c 6564 272c 0a20  ; 'installed',. 
│ │ │ -001196f0: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.
Remediation │ │ │ -001197b0: 2041 6e73 6962 6c65 2073 6e69 7070 6574 Ansible snippet │ │ │ -001197c0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -00119850: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -00119870: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -00119880: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00119890: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -001198a0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -001198c0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
- name: Gath
│ │ │ -00119900: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ -00119910: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ -00119920: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ -00119930: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ -00119940: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -00119950: 434d 2d36 2861 290a 2020 2d20 5043 492d  CM-6(a).  - PCI-
│ │ │ -00119960: 4453 5376 342d 312e 320a 2020 2d20 5043  DSSv4-1.2.  - PC
│ │ │ -00119970: 492d 4453 5376 342d 312e 322e 310a 2020  I-DSSv4-1.2.1.  
│ │ │ -00119980: 2d20 656e 6162 6c65 5f73 7472 6174 6567  - enable_strateg
│ │ │ -00119990: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -001199a0: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -001199b0: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ -001199c0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001199d0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001199e0: 0a20 202d 2070 6163 6b61 6765 5f66 6972  .  - package_fir
│ │ │ -001199f0: 6577 616c 6c64 5f69 6e73 7461 6c6c 6564  ewalld_installed
│ │ │ -00119a00: 0a0a 2d20 6e61 6d65 3a20 456e 7375 7265  ..- name: Ensure
│ │ │ -00119a10: 2066 6972 6577 616c 6c64 2069 7320 696e   firewalld is in
│ │ │ -00119a20: 7374 616c 6c65 640a 2020 616e 7369 626c  stalled.  ansibl
│ │ │ -00119a30: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ -00119a40: 653a 0a20 2020 206e 616d 653a 2066 6972  e:.    name: fir
│ │ │ -00119a50: 6577 616c 6c64 0a20 2020 2073 7461 7465  ewalld.    state
│ │ │ -00119a60: 3a20 7072 6573 656e 740a 2020 7768 656e  : present.  when
│ │ │ -00119a70: 3a20 2722 6b65 726e 656c 2220 696e 2061  : '"kernel" in a
│ │ │ -00119a80: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -00119a90: 6b61 6765 7327 0a20 2074 6167 733a 0a20  kages'.  tags:. 
│ │ │ -00119aa0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -00119ab0: 4d2d 3628 6129 0a20 202d 2050 4349 2d44  M-6(a).  - PCI-D
│ │ │ -00119ac0: 5353 7634 2d31 2e32 0a20 202d 2050 4349  SSv4-1.2.  - PCI
│ │ │ -00119ad0: 2d44 5353 7634 2d31 2e32 2e31 0a20 202d  -DSSv4-1.2.1.  -
│ │ │ -00119ae0: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ -00119af0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -00119b00: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ -00119b10: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ -00119b20: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ -00119b30: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -00119b40: 2020 2d20 7061 636b 6167 655f 6669 7265    - package_fire
│ │ │ -00119b50: 7761 6c6c 645f 696e 7374 616c 6c65 640a  walld_installed.
│ │ │ -00119b60: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -00119c10: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ -00119c20: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ -00119c30: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -00119cd0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -00119d20: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ -00119cb0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -00119ce0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -00119d00: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -00119d10: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -00119d30: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -00119d40: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
# Re
│ │ │ -00119d60: 6d65 6469 6174 696f 6e20 6973 2061 7070  mediation is app
│ │ │ -00119d70: 6c69 6361 626c 6520 6f6e 6c79 2069 6e20  licable only in 
│ │ │ -00119d80: 6365 7274 6169 6e20 706c 6174 666f 726d  certain platform
│ │ │ -00119d90: 730a 6966 2072 706d 202d 2d71 7569 6574  s.if rpm --quiet
│ │ │ -00119da0: 202d 7120 6b65 726e 656c 3b20 7468 656e   -q kernel; then
│ │ │ -00119db0: 0a0a 6966 2021 2072 706d 202d 7120 2d2d  ..if ! rpm -q --
│ │ │ -00119dc0: 7175 6965 7420 2266 6972 6577 616c 6c64  quiet "firewalld
│ │ │ -00119dd0: 2220 3b20 7468 656e 0a20 2020 2064 6e66  " ; then.    dnf
│ │ │ -00119de0: 2069 6e73 7461 6c6c 202d 7920 2266 6972   install -y "fir
│ │ │ -00119df0: 6577 616c 6c64 220a 6669 0a0a 656c 7365  ewalld".fi..else
│ │ │ -00119e00: 0a20 2020 2026 6774 3b26 616d 703b 3220  .    >&2 
│ │ │ -00119e10: 6563 686f 2027 5265 6d65 6469 6174 696f  echo 'Remediatio
│ │ │ -00119e20: 6e20 6973 206e 6f74 2061 7070 6c69 6361  n is not applica
│ │ │ -00119e30: 626c 652c 206e 6f74 6869 6e67 2077 6173  ble, nothing was
│ │ │ -00119e40: 2064 6f6e 6527 0a66 690a 3c2f 636f 6465   done'.fi.Remediation Ans
│ │ │ +001191e0: 6962 6c65 2073 6e69 7070 6574 20e2 87b2  ible snippet ...
│ │ │ +001191f0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
Complexity: │ │ │ +001192c0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +001192d0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +00119320: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ +00119330: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ +00119340: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ +00119350: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ +00119360: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ +00119370: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +00119380: 2861 290a 2020 2d20 5043 492d 4453 5376  (a).  - PCI-DSSv
│ │ │ +00119390: 342d 312e 320a 2020 2d20 5043 492d 4453  4-1.2.  - PCI-DS
│ │ │ +001193a0: 5376 342d 312e 322e 310a 2020 2d20 656e  Sv4-1.2.1.  - en
│ │ │ +001193b0: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ +001193c0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +001193d0: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +001193e0: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ +001193f0: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ +00119400: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ +00119410: 2070 6163 6b61 6765 5f66 6972 6577 616c   package_firewal
│ │ │ +00119420: 6c64 5f69 6e73 7461 6c6c 6564 0a0a 2d20  ld_installed..- 
│ │ │ +00119430: 6e61 6d65 3a20 456e 7375 7265 2066 6972  name: Ensure fir
│ │ │ +00119440: 6577 616c 6c64 2069 7320 696e 7374 616c  ewalld is instal
│ │ │ +00119450: 6c65 640a 2020 616e 7369 626c 652e 6275  led.  ansible.bu
│ │ │ +00119460: 696c 7469 6e2e 7061 636b 6167 653a 0a20  iltin.package:. 
│ │ │ +00119470: 2020 206e 616d 653a 2066 6972 6577 616c     name: firewal
│ │ │ +00119480: 6c64 0a20 2020 2073 7461 7465 3a20 7072  ld.    state: pr
│ │ │ +00119490: 6573 656e 740a 2020 7768 656e 3a20 2722  esent.  when: '"
│ │ │ +001194a0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001194b0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001194c0: 7327 0a20 2074 6167 733a 0a20 202d 204e  s'.  tags:.  - N
│ │ │ +001194d0: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +001194e0: 6129 0a20 202d 2050 4349 2d44 5353 7634  a).  - PCI-DSSv4
│ │ │ +001194f0: 2d31 2e32 0a20 202d 2050 4349 2d44 5353  -1.2.  - PCI-DSS
│ │ │ +00119500: 7634 2d31 2e32 2e31 0a20 202d 2065 6e61  v4-1.2.1.  - ena
│ │ │ +00119510: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ +00119520: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +00119530: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +00119540: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ +00119550: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ +00119560: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ +00119570: 7061 636b 6167 655f 6669 7265 7761 6c6c  package_firewall
│ │ │ +00119580: 645f 696e 7374 616c 6c65 640a 3c2f 636f  d_installed.
< │ │ │ +001195a0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +001195b0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +001195c0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +001195d0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +001195e0: 6432 3735 2220 7461 6269 6e64 6578 3d22 d275" tabindex=" │ │ │ +001195f0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +00119600: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +00119610: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +00119620: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +00119630: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +00119640: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ +00119650: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
low
Disru │ │ │ +001192a0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +001192b0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +001192f0: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +00119300: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Comp │ │ │ +001196e0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +001196f0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +00119710: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +00119730: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +00119740: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ +00119780: 7072 653e 3c63 6f64 653e 696e 636c 7564 pre>includ │ │ │ +00119790: 6520 696e 7374 616c 6c5f 6669 7265 7761 e install_firewa │ │ │ +001197a0: 6c6c 640a 0a63 6c61 7373 2069 6e73 7461 lld..class insta │ │ │ +001197b0: 6c6c 5f66 6972 6577 616c 6c64 207b 0a20 ll_firewalld {. │ │ │ +001197c0: 2070 6163 6b61 6765 207b 2027 6669 7265 package { 'fire │ │ │ +001197d0: 7761 6c6c 6427 3a0a 2020 2020 656e 7375 walld':. ensu │ │ │ +001197e0: 7265 203d 2667 743b 2027 696e 7374 616c re => 'instal │ │ │ +001197f0: 6c65 6427 2c0a 2020 7d0a 7d0a 3c2f 636f led',. }.}.
< │ │ │ +00119810: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +00119820: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +00119830: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +00119840: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +00119850: 6432 3736 2220 7461 6269 6e64 6578 3d22 d276" tabindex=" │ │ │ +00119860: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +00119870: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +00119880: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +00119890: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +001198a0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +001198b0: 6469 6174 696f 6e20 4f53 4275 696c 6420 diation OSBuild │ │ │ +001198c0: 426c 7565 7072 696e 7420 736e 6970 7065 Blueprint snippe │ │ │ +001198d0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
.[[packa │ │ │ +00119920: 6765 735d 5d0a 6e61 6d65 203d 2022 6669 ges]].name = "fi │ │ │ +00119930: 7265 7761 6c6c 6422 0a76 6572 7369 6f6e rewalld".version │ │ │ +00119940: 203d 2022 2a22 0a3c 2f63 6f64 653e 3c2f = "*".
Remediati │ │ │ +00119a00: 6f6e 2053 6865 6c6c 2073 6372 6970 7420 on Shell script │ │ │ +00119a10: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ +00119aa0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +00119ac0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +00119ae0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +00119b10: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +00119b20: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ +00119b30: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
# Remediation
│ │ │ +00119b50: 2069 7320 6170 706c 6963 6162 6c65 206f   is applicable o
│ │ │ +00119b60: 6e6c 7920 696e 2063 6572 7461 696e 2070  nly in certain p
│ │ │ +00119b70: 6c61 7466 6f72 6d73 0a69 6620 7270 6d20  latforms.if rpm 
│ │ │ +00119b80: 2d2d 7175 6965 7420 2d71 206b 6572 6e65  --quiet -q kerne
│ │ │ +00119b90: 6c3b 2074 6865 6e0a 0a69 6620 2120 7270  l; then..if ! rp
│ │ │ +00119ba0: 6d20 2d71 202d 2d71 7569 6574 2022 6669  m -q --quiet "fi
│ │ │ +00119bb0: 7265 7761 6c6c 6422 203b 2074 6865 6e0a  rewalld" ; then.
│ │ │ +00119bc0: 2020 2020 646e 6620 696e 7374 616c 6c20      dnf install 
│ │ │ +00119bd0: 2d79 2022 6669 7265 7761 6c6c 6422 0a66  -y "firewalld".f
│ │ │ +00119be0: 690a 0a65 6c73 650a 2020 2020 2667 743b  i..else.    >
│ │ │ +00119bf0: 2661 6d70 3b32 2065 6368 6f20 2752 656d  &2 echo 'Rem
│ │ │ +00119c00: 6564 6961 7469 6f6e 2069 7320 6e6f 7420  ediation is not 
│ │ │ +00119c10: 6170 706c 6963 6162 6c65 2c20 6e6f 7468  applicable, noth
│ │ │ +00119c20: 696e 6720 7761 7320 646f 6e65 270a 6669  ing was done'.fi
│ │ │ +00119c30: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Ana │ │ │ +00119cf0: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ +00119d00: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ +00119d80: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +00119da0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +00119df0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
.package --add=
│ │ │ +00119e40: 6669 7265 7761 6c6c 640a 3c2f 636f 6465  firewalld.
low
Disr │ │ │ +00119db0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +00119dc0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +00119e00: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +00119e10: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Remediation │ │ │ -0011ae90: 4f53 4275 696c 6420 426c 7565 7072 696e OSBuild Blueprin │ │ │ -0011aea0: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...

│ │ │ -0011aef0: 0a5b 6375 7374 6f6d 697a 6174 696f 6e73  .[customizations
│ │ │ -0011af00: 2e73 6572 7669 6365 735d 0a65 6e61 626c  .services].enabl
│ │ │ -0011af10: 6564 203d 205b 2266 6972 6577 616c 6c64  ed = ["firewalld
│ │ │ -0011af20: 225d 0a3c 2f63 6f64 653e 3c2f 7072 653e  "].
│ │ │ -0011af30: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation P │ │ │ -0011afe0: 7570 7065 7420 736e 6970 7065 7420 e287 uppet snippet .. │ │ │ -0011aff0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -0011b070: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -0011b090: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -0011b0e0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
include enable_
│ │ │ -0011b130: 6669 7265 7761 6c6c 640a 0a63 6c61 7373  firewalld..class
│ │ │ -0011b140: 2065 6e61 626c 655f 6669 7265 7761 6c6c   enable_firewall
│ │ │ -0011b150: 6420 7b0a 2020 7365 7276 6963 6520 7b27  d {.  service {'
│ │ │ -0011b160: 6669 7265 7761 6c6c 6427 3a0a 2020 2020  firewalld':.    
│ │ │ -0011b170: 656e 6162 6c65 203d 2667 743b 2074 7275  enable => tru
│ │ │ -0011b180: 652c 0a20 2020 2065 6e73 7572 6520 3d26  e,.    ensure =&
│ │ │ -0011b190: 6774 3b20 2772 756e 6e69 6e67 272c 0a20  gt; 'running',. 
│ │ │ -0011b1a0: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.Remediation
│ │ │ -0011b260: 2041 6e73 6962 6c65 2073 6e69 7070 6574   Ansible snippet
│ │ │ -0011b270: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
< │ │ │ -0011b330: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0011b340: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
low
Disr │ │ │ -0011b0a0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -0011b0b0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -0011b0f0: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ -0011b100: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexity │ │ │ -0011b300: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ -0011b320: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ -0011b350: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ -0011b370: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
- name: Gath
│ │ │ -0011b3b0: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ -0011b3c0: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ -0011b3d0: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ -0011b3e0: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ -0011b3f0: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ -0011b400: 2d33 2e31 2e33 0a20 202d 204e 4953 542d  -3.1.3.  - NIST-
│ │ │ -0011b410: 3830 302d 3137 312d 332e 342e 370a 2020  800-171-3.4.7.  
│ │ │ -0011b420: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -0011b430: 2d34 0a20 202d 204e 4953 542d 3830 302d  -4.  - NIST-800-
│ │ │ -0011b440: 3533 2d43 412d 3328 3529 0a20 202d 204e  53-CA-3(5).  - N
│ │ │ -0011b450: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -0011b460: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -0011b470: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ -0011b480: 4953 542d 3830 302d 3533 2d53 432d 3728  IST-800-53-SC-7(
│ │ │ -0011b490: 3231 290a 2020 2d20 5043 492d 4453 5376  21).  - PCI-DSSv
│ │ │ -0011b4a0: 342d 312e 320a 2020 2d20 5043 492d 4453  4-1.2.  - PCI-DS
│ │ │ -0011b4b0: 5376 342d 312e 322e 310a 2020 2d20 656e  Sv4-1.2.1.  - en
│ │ │ -0011b4c0: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ -0011b4d0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -0011b4e0: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -0011b4f0: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ -0011b500: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ -0011b510: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ -0011b520: 2073 6572 7669 6365 5f66 6972 6577 616c   service_firewal
│ │ │ -0011b530: 6c64 5f65 6e61 626c 6564 0a0a 2d20 6e61  ld_enabled..- na
│ │ │ -0011b540: 6d65 3a20 5665 7269 6679 2066 6972 6577  me: Verify firew
│ │ │ -0011b550: 616c 6c64 2045 6e61 626c 6564 202d 2045  alld Enabled - E
│ │ │ -0011b560: 6e61 626c 6520 7365 7276 6963 6520 6669  nable service fi
│ │ │ -0011b570: 7265 7761 6c6c 640a 2020 626c 6f63 6b3a  rewalld.  block:
│ │ │ -0011b580: 0a0a 2020 2d20 6e61 6d65 3a20 4761 7468  ..  - name: Gath
│ │ │ -0011b590: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ -0011b5a0: 6163 7473 0a20 2020 2061 6e73 6962 6c65  acts.    ansible
│ │ │ -0011b5b0: 2e62 7569 6c74 696e 2e70 6163 6b61 6765  .builtin.package
│ │ │ -0011b5c0: 5f66 6163 7473 3a0a 2020 2020 2020 6d61  _facts:.      ma
│ │ │ -0011b5d0: 6e61 6765 723a 2061 7574 6f0a 0a20 202d  nager: auto..  -
│ │ │ -0011b5e0: 206e 616d 653a 2056 6572 6966 7920 6669   name: Verify fi
│ │ │ -0011b5f0: 7265 7761 6c6c 6420 456e 6162 6c65 6420  rewalld Enabled 
│ │ │ -0011b600: 2d20 456e 6162 6c65 2053 6572 7669 6365  - Enable Service
│ │ │ -0011b610: 2066 6972 6577 616c 6c64 0a20 2020 2061   firewalld.    a
│ │ │ -0011b620: 6e73 6962 6c65 2e62 7569 6c74 696e 2e73  nsible.builtin.s
│ │ │ -0011b630: 7973 7465 6d64 3a0a 2020 2020 2020 6e61  ystemd:.      na
│ │ │ -0011b640: 6d65 3a20 6669 7265 7761 6c6c 640a 2020  me: firewalld.  
│ │ │ -0011b650: 2020 2020 656e 6162 6c65 643a 2074 7275      enabled: tru
│ │ │ -0011b660: 650a 2020 2020 2020 7374 6174 653a 2073  e.      state: s
│ │ │ -0011b670: 7461 7274 6564 0a20 2020 2020 206d 6173  tarted.      mas
│ │ │ -0011b680: 6b65 643a 2066 616c 7365 0a20 2020 2077  ked: false.    w
│ │ │ -0011b690: 6865 6e3a 0a20 2020 202d 2027 2266 6972  hen:.    - '"fir
│ │ │ -0011b6a0: 6577 616c 6c64 2220 696e 2061 6e73 6962  ewalld" in ansib
│ │ │ -0011b6b0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -0011b6c0: 7327 0a20 2074 6167 733a 0a20 202d 204e  s'.  tags:.  - N
│ │ │ -0011b6d0: 4953 542d 3830 302d 3137 312d 332e 312e  IST-800-171-3.1.
│ │ │ -0011b6e0: 330a 2020 2d20 4e49 5354 2d38 3030 2d31  3.  - NIST-800-1
│ │ │ -0011b6f0: 3731 2d33 2e34 2e37 0a20 202d 204e 4953  71-3.4.7.  - NIS
│ │ │ -0011b700: 542d 3830 302d 3533 2d41 432d 340a 2020  T-800-53-AC-4.  
│ │ │ -0011b710: 2d20 4e49 5354 2d38 3030 2d35 332d 4341  - NIST-800-53-CA
│ │ │ -0011b720: 2d33 2835 290a 2020 2d20 4e49 5354 2d38  -3(5).  - NIST-8
│ │ │ -0011b730: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ -0011b740: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -0011b750: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ -0011b760: 3030 2d35 332d 5343 2d37 2832 3129 0a20  00-53-SC-7(21). 
│ │ │ -0011b770: 202d 2050 4349 2d44 5353 7634 2d31 2e32   - PCI-DSSv4-1.2
│ │ │ -0011b780: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ -0011b790: 2e32 2e31 0a20 202d 2065 6e61 626c 655f  .2.1.  - enable_
│ │ │ -0011b7a0: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ -0011b7b0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -0011b7c0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -0011b7d0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -0011b7e0: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ -0011b7f0: 5f6e 6565 6465 640a 2020 2d20 7365 7276  _needed.  - serv
│ │ │ -0011b800: 6963 655f 6669 7265 7761 6c6c 645f 656e  ice_firewalld_en
│ │ │ -0011b810: 6162 6c65 640a 2020 2d20 7370 6563 6961  abled.  - specia
│ │ │ -0011b820: 6c5f 7365 7276 6963 655f 626c 6f63 6b0a  l_service_block.
│ │ │ -0011b830: 2020 7768 656e 3a0a 2020 2d20 2722 6b65    when:.  - '"ke
│ │ │ -0011b840: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -0011b850: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ -0011b860: 0a20 202d 2027 2266 6972 6577 616c 6c64  .  - '"firewalld
│ │ │ -0011b870: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -0011b880: 7473 2e70 6163 6b61 6765 7327 0a3c 2f63  ts.packages'.
Complexity: │ │ │ +0011af30: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +0011af50: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +0011af70: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +0011afa0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +0011afb0: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ +0011afc0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
- name: Gathe
│ │ │ +0011afe0: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ +0011aff0: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ +0011b000: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ +0011b010: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ +0011b020: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ +0011b030: 332e 312e 330a 2020 2d20 4e49 5354 2d38  3.1.3.  - NIST-8
│ │ │ +0011b040: 3030 2d31 3731 2d33 2e34 2e37 0a20 202d  00-171-3.4.7.  -
│ │ │ +0011b050: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +0011b060: 340a 2020 2d20 4e49 5354 2d38 3030 2d35  4.  - NIST-800-5
│ │ │ +0011b070: 332d 4341 2d33 2835 290a 2020 2d20 4e49  3-CA-3(5).  - NI
│ │ │ +0011b080: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +0011b090: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +0011b0a0: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ +0011b0b0: 5354 2d38 3030 2d35 332d 5343 2d37 2832  ST-800-53-SC-7(2
│ │ │ +0011b0c0: 3129 0a20 202d 2050 4349 2d44 5353 7634  1).  - PCI-DSSv4
│ │ │ +0011b0d0: 2d31 2e32 0a20 202d 2050 4349 2d44 5353  -1.2.  - PCI-DSS
│ │ │ +0011b0e0: 7634 2d31 2e32 2e31 0a20 202d 2065 6e61  v4-1.2.1.  - ena
│ │ │ +0011b0f0: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ +0011b100: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +0011b110: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +0011b120: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ +0011b130: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ +0011b140: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ +0011b150: 7365 7276 6963 655f 6669 7265 7761 6c6c  service_firewall
│ │ │ +0011b160: 645f 656e 6162 6c65 640a 0a2d 206e 616d  d_enabled..- nam
│ │ │ +0011b170: 653a 2056 6572 6966 7920 6669 7265 7761  e: Verify firewa
│ │ │ +0011b180: 6c6c 6420 456e 6162 6c65 6420 2d20 456e  lld Enabled - En
│ │ │ +0011b190: 6162 6c65 2073 6572 7669 6365 2066 6972  able service fir
│ │ │ +0011b1a0: 6577 616c 6c64 0a20 2062 6c6f 636b 3a0a  ewalld.  block:.
│ │ │ +0011b1b0: 0a20 202d 206e 616d 653a 2047 6174 6865  .  - name: Gathe
│ │ │ +0011b1c0: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ +0011b1d0: 6374 730a 2020 2020 616e 7369 626c 652e  cts.    ansible.
│ │ │ +0011b1e0: 6275 696c 7469 6e2e 7061 636b 6167 655f  builtin.package_
│ │ │ +0011b1f0: 6661 6374 733a 0a20 2020 2020 206d 616e  facts:.      man
│ │ │ +0011b200: 6167 6572 3a20 6175 746f 0a0a 2020 2d20  ager: auto..  - 
│ │ │ +0011b210: 6e61 6d65 3a20 5665 7269 6679 2066 6972  name: Verify fir
│ │ │ +0011b220: 6577 616c 6c64 2045 6e61 626c 6564 202d  ewalld Enabled -
│ │ │ +0011b230: 2045 6e61 626c 6520 5365 7276 6963 6520   Enable Service 
│ │ │ +0011b240: 6669 7265 7761 6c6c 640a 2020 2020 616e  firewalld.    an
│ │ │ +0011b250: 7369 626c 652e 6275 696c 7469 6e2e 7379  sible.builtin.sy
│ │ │ +0011b260: 7374 656d 643a 0a20 2020 2020 206e 616d  stemd:.      nam
│ │ │ +0011b270: 653a 2066 6972 6577 616c 6c64 0a20 2020  e: firewalld.   
│ │ │ +0011b280: 2020 2065 6e61 626c 6564 3a20 7472 7565     enabled: true
│ │ │ +0011b290: 0a20 2020 2020 2073 7461 7465 3a20 7374  .      state: st
│ │ │ +0011b2a0: 6172 7465 640a 2020 2020 2020 6d61 736b  arted.      mask
│ │ │ +0011b2b0: 6564 3a20 6661 6c73 650a 2020 2020 7768  ed: false.    wh
│ │ │ +0011b2c0: 656e 3a0a 2020 2020 2d20 2722 6669 7265  en:.    - '"fire
│ │ │ +0011b2d0: 7761 6c6c 6422 2069 6e20 616e 7369 626c  walld" in ansibl
│ │ │ +0011b2e0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +0011b2f0: 270a 2020 7461 6773 3a0a 2020 2d20 4e49  '.  tags:.  - NI
│ │ │ +0011b300: 5354 2d38 3030 2d31 3731 2d33 2e31 2e33  ST-800-171-3.1.3
│ │ │ +0011b310: 0a20 202d 204e 4953 542d 3830 302d 3137  .  - NIST-800-17
│ │ │ +0011b320: 312d 332e 342e 370a 2020 2d20 4e49 5354  1-3.4.7.  - NIST
│ │ │ +0011b330: 2d38 3030 2d35 332d 4143 2d34 0a20 202d  -800-53-AC-4.  -
│ │ │ +0011b340: 204e 4953 542d 3830 302d 3533 2d43 412d   NIST-800-53-CA-
│ │ │ +0011b350: 3328 3529 0a20 202d 204e 4953 542d 3830  3(5).  - NIST-80
│ │ │ +0011b360: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +0011b370: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +0011b380: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ +0011b390: 302d 3533 2d53 432d 3728 3231 290a 2020  0-53-SC-7(21).  
│ │ │ +0011b3a0: 2d20 5043 492d 4453 5376 342d 312e 320a  - PCI-DSSv4-1.2.
│ │ │ +0011b3b0: 2020 2d20 5043 492d 4453 5376 342d 312e    - PCI-DSSv4-1.
│ │ │ +0011b3c0: 322e 310a 2020 2d20 656e 6162 6c65 5f73  2.1.  - enable_s
│ │ │ +0011b3d0: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ +0011b3e0: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +0011b3f0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +0011b400: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +0011b410: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +0011b420: 6e65 6564 6564 0a20 202d 2073 6572 7669  needed.  - servi
│ │ │ +0011b430: 6365 5f66 6972 6577 616c 6c64 5f65 6e61  ce_firewalld_ena
│ │ │ +0011b440: 626c 6564 0a20 202d 2073 7065 6369 616c  bled.  - special
│ │ │ +0011b450: 5f73 6572 7669 6365 5f62 6c6f 636b 0a20  _service_block. 
│ │ │ +0011b460: 2077 6865 6e3a 0a20 202d 2027 226b 6572   when:.  - '"ker
│ │ │ +0011b470: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +0011b480: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ +0011b490: 2020 2d20 2722 6669 7265 7761 6c6c 6422    - '"firewalld"
│ │ │ +0011b4a0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +0011b4b0: 732e 7061 636b 6167 6573 270a 3c2f 636f  s.packages'.
< │ │ │ +0011b4d0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +0011b4e0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +0011b4f0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +0011b500: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +0011b510: 6432 3831 2220 7461 6269 6e64 6578 3d22 d281" tabindex=" │ │ │ +0011b520: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +0011b530: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +0011b540: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +0011b550: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +0011b560: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +0011b570: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ +0011b580: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +0011b610: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +0011b620: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +0011b640: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +0011b660: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +0011b670: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ +0011b6b0: 7072 653e 3c63 6f64 653e 696e 636c 7564 pre>includ │ │ │ +0011b6c0: 6520 656e 6162 6c65 5f66 6972 6577 616c e enable_firewal │ │ │ +0011b6d0: 6c64 0a0a 636c 6173 7320 656e 6162 6c65 ld..class enable │ │ │ +0011b6e0: 5f66 6972 6577 616c 6c64 207b 0a20 2073 _firewalld {. s │ │ │ +0011b6f0: 6572 7669 6365 207b 2766 6972 6577 616c ervice {'firewal │ │ │ +0011b700: 6c64 273a 0a20 2020 2065 6e61 626c 6520 ld':. enable │ │ │ +0011b710: 3d26 6774 3b20 7472 7565 2c0a 2020 2020 => true,. │ │ │ +0011b720: 656e 7375 7265 203d 2667 743b 2027 7275 ensure => 'ru │ │ │ +0011b730: 6e6e 696e 6727 2c0a 2020 7d0a 7d0a 3c2f nning',. }.}.
Re │ │ │ +0011b7f0: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ +0011b800: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ +0011b810: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +0011b820: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +0011b830: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +0011b840: 7365 2220 6964 3d22 6964 3238 3222 3e3c se" id="id282">< │ │ │ +0011b850: 7072 653e 3c63 6f64 653e 0a5b 6375 7374 pre>.[cust │ │ │ +0011b860: 6f6d 697a 6174 696f 6e73 2e73 6572 7669 omizations.servi │ │ │ +0011b870: 6365 735d 0a65 6e61 626c 6564 203d 205b ces].enabled = [ │ │ │ +0011b880: 2266 6972 6577 616c 6c64 225d 0a3c 2f63 "firewalld"].
│ │ │ 0011b8a0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Remedi │ │ │ -0016cc60: 6174 696f 6e20 4f53 4275 696c 6420 426c ation OSBuild Bl │ │ │ -0016cc70: 7565 7072 696e 7420 736e 6970 7065 7420 ueprint snippet │ │ │ -0016cc80: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
│ │ │ -0016ccc0: 3c63 6f64 653e 0a5b 5b70 6163 6b61 6765  .[[package
│ │ │ -0016ccd0: 735d 5d0a 6e61 6d65 203d 2022 6e66 7461  s]].name = "nfta
│ │ │ -0016cce0: 626c 6573 220a 7665 7273 696f 6e20 3d20  bles".version = 
│ │ │ -0016ccf0: 222a 220a 3c2f 636f 6465 3e3c 2f70 7265  "*".
Remediation │ │ │ -0016cdb0: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ -0016cdc0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -0016ce50: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -0016ce70: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -0016ce80: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0016ce90: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -0016cea0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -0016cec0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
.package --a
│ │ │ -0016cf00: 6464 3d6e 6674 6162 6c65 730a 3c2f 636f  dd=nftables.
< │ │ │ -0016cf20: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -0016cf30: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -0016cf40: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -0016cf50: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -0016cf60: 6433 3633 2220 7461 6269 6e64 6578 3d22 d363" tabindex=" │ │ │ -0016cf70: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -0016cf80: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -0016cf90: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -0016cfa0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -0016cfb0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -0016cfc0: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ -0016cfd0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -0016d060: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -0016d070: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -0016d090: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -0016d0b0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -0016d0c0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -0016d100: 7072 653e 3c63 6f64 653e 696e 636c 7564 pre>includ │ │ │ -0016d110: 6520 696e 7374 616c 6c5f 6e66 7461 626c e install_nftabl │ │ │ -0016d120: 6573 0a0a 636c 6173 7320 696e 7374 616c es..class instal │ │ │ -0016d130: 6c5f 6e66 7461 626c 6573 207b 0a20 2070 l_nftables {. p │ │ │ -0016d140: 6163 6b61 6765 207b 2027 6e66 7461 626c ackage { 'nftabl │ │ │ -0016d150: 6573 273a 0a20 2020 2065 6e73 7572 6520 es':. ensure │ │ │ -0016d160: 3d26 6774 3b20 2769 6e73 7461 6c6c 6564 => 'installed │ │ │ -0016d170: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e ',. }.}. │ │ │ -0016d180: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063
Remedia │ │ │ -0016d230: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -0016d240: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -0016d250: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -0016d280: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -0016d2f0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -0016d310: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -0016d340: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ -0016d360: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ -0016d2d0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -0016d2e0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -0016d320: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -0016d330: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
- name: │ │ │ -0016d380: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ -0016d390: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ -0016d3a0: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ -0016d3b0: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ -0016d3c0: 6773 3a0a 2020 2d20 5043 492d 4453 5376 gs:. - PCI-DSSv │ │ │ -0016d3d0: 342d 312e 320a 2020 2d20 5043 492d 4453 4-1.2. - PCI-DS │ │ │ -0016d3e0: 5376 342d 312e 322e 310a 2020 2d20 656e Sv4-1.2.1. - en │ │ │ -0016d3f0: 6162 6c65 5f73 7472 6174 6567 790a 2020 able_strategy. │ │ │ -0016d400: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479 - low_complexity │ │ │ -0016d410: 0a20 202d 206c 6f77 5f64 6973 7275 7074 . - low_disrupt │ │ │ -0016d420: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73 ion. - medium_s │ │ │ -0016d430: 6576 6572 6974 790a 2020 2d20 6e6f 5f72 everity. - no_r │ │ │ -0016d440: 6562 6f6f 745f 6e65 6564 6564 0a20 202d eboot_needed. - │ │ │ -0016d450: 2070 6163 6b61 6765 5f6e 6674 6162 6c65 package_nftable │ │ │ -0016d460: 735f 696e 7374 616c 6c65 640a 0a2d 206e s_installed..- n │ │ │ -0016d470: 616d 653a 2045 6e73 7572 6520 6e66 7461 ame: Ensure nfta │ │ │ -0016d480: 626c 6573 2069 7320 696e 7374 616c 6c65 bles is installe │ │ │ -0016d490: 640a 2020 616e 7369 626c 652e 6275 696c d. ansible.buil │ │ │ -0016d4a0: 7469 6e2e 7061 636b 6167 653a 0a20 2020 tin.package:. │ │ │ -0016d4b0: 206e 616d 653a 206e 6674 6162 6c65 730a name: nftables. │ │ │ -0016d4c0: 2020 2020 7374 6174 653a 2070 7265 7365 state: prese │ │ │ -0016d4d0: 6e74 0a20 2077 6865 6e3a 2028 2022 6b65 nt. when: ( "ke │ │ │ -0016d4e0: 726e 656c 2220 696e 2061 6e73 6962 6c65 rnel" in ansible │ │ │ -0016d4f0: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ -0016d500: 290a 2020 7461 6773 3a0a 2020 2d20 5043 ). tags:. - PC │ │ │ -0016d510: 492d 4453 5376 342d 312e 320a 2020 2d20 I-DSSv4-1.2. - │ │ │ -0016d520: 5043 492d 4453 5376 342d 312e 322e 310a PCI-DSSv4-1.2.1. │ │ │ -0016d530: 2020 2d20 656e 6162 6c65 5f73 7472 6174 - enable_strat │ │ │ -0016d540: 6567 790a 2020 2d20 6c6f 775f 636f 6d70 egy. - low_comp │ │ │ -0016d550: 6c65 7869 7479 0a20 202d 206c 6f77 5f64 lexity. - low_d │ │ │ -0016d560: 6973 7275 7074 696f 6e0a 2020 2d20 6d65 isruption. - me │ │ │ -0016d570: 6469 756d 5f73 6576 6572 6974 790a 2020 dium_severity. │ │ │ -0016d580: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ -0016d590: 6564 0a20 202d 2070 6163 6b61 6765 5f6e ed. - package_n │ │ │ -0016d5a0: 6674 6162 6c65 735f 696e 7374 616c 6c65 ftables_installe │ │ │ -0016d5b0: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c d.< │ │ │ -0016d5c0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Sh │ │ │ -0016d670: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
│ │ │ -0016d710: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
# 
│ │ │ -0016d7b0: 5265 6d65 6469 6174 696f 6e20 6973 2061  Remediation is a
│ │ │ -0016d7c0: 7070 6c69 6361 626c 6520 6f6e 6c79 2069  pplicable only i
│ │ │ -0016d7d0: 6e20 6365 7274 6169 6e20 706c 6174 666f  n certain platfo
│ │ │ -0016d7e0: 726d 730a 6966 2028 2028 2021 2028 7379  rms.if ( ( ! (sy
│ │ │ -0016d7f0: 7374 656d 6374 6c20 6973 2d61 6374 6976  stemctl is-activ
│ │ │ -0016d800: 6520 6970 7461 626c 6573 2026 616d 703b  e iptables &
│ │ │ -0016d810: 2667 743b 2f64 6576 2f6e 756c 6c29 2026  >/dev/null) &
│ │ │ -0016d820: 616d 703b 2661 6d70 3b20 2120 2873 7973  amp;& ! (sys
│ │ │ -0016d830: 7465 6d63 746c 2069 732d 6163 7469 7665  temctl is-active
│ │ │ -0016d840: 2075 6677 2026 616d 703b 2667 743b 2f64   ufw &>/d
│ │ │ -0016d850: 6576 2f6e 756c 6c29 2026 616d 703b 2661  ev/null) &&a
│ │ │ -0016d860: 6d70 3b20 7270 6d20 2d2d 7175 6965 7420  mp; rpm --quiet 
│ │ │ -0016d870: 2d71 206b 6572 6e65 6c20 2920 293b 2074  -q kernel ) ); t
│ │ │ -0016d880: 6865 6e0a 0a69 6620 2120 7270 6d20 2d71  hen..if ! rpm -q
│ │ │ -0016d890: 202d 2d71 7569 6574 2022 6e66 7461 626c   --quiet "nftabl
│ │ │ -0016d8a0: 6573 2220 3b20 7468 656e 0a20 2020 2064  es" ; then.    d
│ │ │ -0016d8b0: 6e66 2069 6e73 7461 6c6c 202d 7920 226e  nf install -y "n
│ │ │ -0016d8c0: 6674 6162 6c65 7322 0a66 690a 0a65 6c73  ftables".fi..els
│ │ │ -0016d8d0: 650a 2020 2020 2667 743b 2661 6d70 3b32  e.    >&2
│ │ │ -0016d8e0: 2065 6368 6f20 2752 656d 6564 6961 7469   echo 'Remediati
│ │ │ -0016d8f0: 6f6e 2069 7320 6e6f 7420 6170 706c 6963  on is not applic
│ │ │ -0016d900: 6162 6c65 2c20 6e6f 7468 696e 6720 7761  able, nothing wa
│ │ │ -0016d910: 7320 646f 6e65 270a 6669 0a3c 2f63 6f64  s done'.fi.
│ │ │ -0016d700: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -0016d730: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -0016d740: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -0016d780: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -0016d790: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ +0016cd20: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +0016cd40: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +0016cd70: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +0016cd00: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +0016cd10: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +0016cd30: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +0016cd50: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +0016cd60: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

- name: │ │ │ +0016cdb0: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ +0016cdc0: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ +0016cdd0: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ +0016cde0: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ +0016cdf0: 6167 733a 0a20 202d 2050 4349 2d44 5353 ags:. - PCI-DSS │ │ │ +0016ce00: 7634 2d31 2e32 0a20 202d 2050 4349 2d44 v4-1.2. - PCI-D │ │ │ +0016ce10: 5353 7634 2d31 2e32 2e31 0a20 202d 2065 SSv4-1.2.1. - e │ │ │ +0016ce20: 6e61 626c 655f 7374 7261 7465 6779 0a20 nable_strategy. │ │ │ +0016ce30: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ +0016ce40: 790a 2020 2d20 6c6f 775f 6469 7372 7570 y. - low_disrup │ │ │ +0016ce50: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f tion. - medium_ │ │ │ +0016ce60: 7365 7665 7269 7479 0a20 202d 206e 6f5f severity. - no_ │ │ │ +0016ce70: 7265 626f 6f74 5f6e 6565 6465 640a 2020 reboot_needed. │ │ │ +0016ce80: 2d20 7061 636b 6167 655f 6e66 7461 626c - package_nftabl │ │ │ +0016ce90: 6573 5f69 6e73 7461 6c6c 6564 0a0a 2d20 es_installed..- │ │ │ +0016cea0: 6e61 6d65 3a20 456e 7375 7265 206e 6674 name: Ensure nft │ │ │ +0016ceb0: 6162 6c65 7320 6973 2069 6e73 7461 6c6c ables is install │ │ │ +0016cec0: 6564 0a20 2061 6e73 6962 6c65 2e62 7569 ed. ansible.bui │ │ │ +0016ced0: 6c74 696e 2e70 6163 6b61 6765 3a0a 2020 ltin.package:. │ │ │ +0016cee0: 2020 6e61 6d65 3a20 6e66 7461 626c 6573 name: nftables │ │ │ +0016cef0: 0a20 2020 2073 7461 7465 3a20 7072 6573 . state: pres │ │ │ +0016cf00: 656e 740a 2020 7768 656e 3a20 2820 226b ent. when: ( "k │ │ │ +0016cf10: 6572 6e65 6c22 2069 6e20 616e 7369 626c ernel" in ansibl │ │ │ +0016cf20: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ +0016cf30: 2029 0a20 2074 6167 733a 0a20 202d 2050 ). tags:. - P │ │ │ +0016cf40: 4349 2d44 5353 7634 2d31 2e32 0a20 202d CI-DSSv4-1.2. - │ │ │ +0016cf50: 2050 4349 2d44 5353 7634 2d31 2e32 2e31 PCI-DSSv4-1.2.1 │ │ │ +0016cf60: 0a20 202d 2065 6e61 626c 655f 7374 7261 . - enable_stra │ │ │ +0016cf70: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d tegy. - low_com │ │ │ +0016cf80: 706c 6578 6974 790a 2020 2d20 6c6f 775f plexity. - low_ │ │ │ +0016cf90: 6469 7372 7570 7469 6f6e 0a20 202d 206d disruption. - m │ │ │ +0016cfa0: 6564 6975 6d5f 7365 7665 7269 7479 0a20 edium_severity. │ │ │ +0016cfb0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ +0016cfc0: 6465 640a 2020 2d20 7061 636b 6167 655f ded. - package_ │ │ │ +0016cfd0: 6e66 7461 626c 6573 5f69 6e73 7461 6c6c nftables_install │ │ │ +0016cfe0: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e ed. │ │ │ +0016cff0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22

Remediation P │ │ │ +0016d0a0: 7570 7065 7420 736e 6970 7065 7420 e287 uppet snippet .. │ │ │ +0016d0b0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ +0016d130: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +0016d150: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +0016d1a0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
include install
│ │ │ +0016d1f0: 5f6e 6674 6162 6c65 730a 0a63 6c61 7373  _nftables..class
│ │ │ +0016d200: 2069 6e73 7461 6c6c 5f6e 6674 6162 6c65   install_nftable
│ │ │ +0016d210: 7320 7b0a 2020 7061 636b 6167 6520 7b20  s {.  package { 
│ │ │ +0016d220: 276e 6674 6162 6c65 7327 3a0a 2020 2020  'nftables':.    
│ │ │ +0016d230: 656e 7375 7265 203d 2667 743b 2027 696e  ensure => 'in
│ │ │ +0016d240: 7374 616c 6c65 6427 2c0a 2020 7d0a 7d0a  stalled',.  }.}.
│ │ │ +0016d250: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +0016d300: 5265 6d65 6469 6174 696f 6e20 4f53 4275 Remediation OSBu │ │ │ +0016d310: 696c 6420 426c 7565 7072 696e 7420 736e ild Blueprint sn │ │ │ +0016d320: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
.[[p
│ │ │ +0016d370: 6163 6b61 6765 735d 5d0a 6e61 6d65 203d  ackages]].name =
│ │ │ +0016d380: 2022 6e66 7461 626c 6573 220a 7665 7273   "nftables".vers
│ │ │ +0016d390: 696f 6e20 3d20 222a 220a 3c2f 636f 6465  ion = "*".
Remedi │ │ │ +0016d450: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ +0016d460: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
│ │ │ +0016d4e0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 < │ │ │ +0016d570: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
low
Disr │ │ │ +0016d160: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +0016d170: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +0016d1b0: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +0016d1c0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexi │ │ │ +0016d4f0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +0016d500: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +0016d540: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +0016d550: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
│ │ │ +0016d590: 3c63 6f64 653e 2320 5265 6d65 6469 6174  # Remediat
│ │ │ +0016d5a0: 696f 6e20 6973 2061 7070 6c69 6361 626c  ion is applicabl
│ │ │ +0016d5b0: 6520 6f6e 6c79 2069 6e20 6365 7274 6169  e only in certai
│ │ │ +0016d5c0: 6e20 706c 6174 666f 726d 730a 6966 2028  n platforms.if (
│ │ │ +0016d5d0: 2028 2021 2028 7379 7374 656d 6374 6c20   ( ! (systemctl 
│ │ │ +0016d5e0: 6973 2d61 6374 6976 6520 6970 7461 626c  is-active iptabl
│ │ │ +0016d5f0: 6573 2026 616d 703b 2667 743b 2f64 6576  es &>/dev
│ │ │ +0016d600: 2f6e 756c 6c29 2026 616d 703b 2661 6d70  /null) &&
│ │ │ +0016d610: 3b20 2120 2873 7973 7465 6d63 746c 2069  ; ! (systemctl i
│ │ │ +0016d620: 732d 6163 7469 7665 2075 6677 2026 616d  s-active ufw &am
│ │ │ +0016d630: 703b 2667 743b 2f64 6576 2f6e 756c 6c29  p;>/dev/null)
│ │ │ +0016d640: 2026 616d 703b 2661 6d70 3b20 7270 6d20   && rpm 
│ │ │ +0016d650: 2d2d 7175 6965 7420 2d71 206b 6572 6e65  --quiet -q kerne
│ │ │ +0016d660: 6c20 2920 293b 2074 6865 6e0a 0a69 6620  l ) ); then..if 
│ │ │ +0016d670: 2120 7270 6d20 2d71 202d 2d71 7569 6574  ! rpm -q --quiet
│ │ │ +0016d680: 2022 6e66 7461 626c 6573 2220 3b20 7468   "nftables" ; th
│ │ │ +0016d690: 656e 0a20 2020 2064 6e66 2069 6e73 7461  en.    dnf insta
│ │ │ +0016d6a0: 6c6c 202d 7920 226e 6674 6162 6c65 7322  ll -y "nftables"
│ │ │ +0016d6b0: 0a66 690a 0a65 6c73 650a 2020 2020 2667  .fi..else.    &g
│ │ │ +0016d6c0: 743b 2661 6d70 3b32 2065 6368 6f20 2752  t;&2 echo 'R
│ │ │ +0016d6d0: 656d 6564 6961 7469 6f6e 2069 7320 6e6f  emediation is no
│ │ │ +0016d6e0: 7420 6170 706c 6963 6162 6c65 2c20 6e6f  t applicable, no
│ │ │ +0016d6f0: 7468 696e 6720 7761 7320 646f 6e65 270a  thing was done'.
│ │ │ +0016d700: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e  fi.
│ │ │ +0016d710: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation A │ │ │ +0016d7c0: 6e61 636f 6e64 6120 736e 6970 7065 7420 naconda snippet │ │ │ +0016d7d0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ +0016d860: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +0016d880: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +0016d8a0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +0016d8d0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +0016d8e0: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ +0016d8f0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
.package --ad
│ │ │ +0016d910: 643d 6e66 7461 626c 6573 0a3c 2f63 6f64  d=nftables.
Remediati │ │ │ -0016e280: 6f6e 204f 5342 7569 6c64 2042 6c75 6570 on OSBuild Bluep │ │ │ -0016e290: 7269 6e74 2073 6e69 7070 6574 20e2 87b2 rint snippet ... │ │ │ -0016e2a0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
.[customizati
│ │ │ -0016e2f0: 6f6e 732e 7365 7276 6963 6573 5d0a 6d61  ons.services].ma
│ │ │ -0016e300: 736b 6564 203d 205b 226e 6674 6162 6c65  sked = ["nftable
│ │ │ -0016e310: 7322 5d0a 3c2f 636f 6465 3e3c 2f70 7265  s"].
Remediation │ │ │ -0016e3d0: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ -0016e3e0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -0016e460: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -0016e480: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -0016e4d0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ -0016e500: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
include disabl
│ │ │ -0016e520: 655f 6e66 7461 626c 6573 0a0a 636c 6173  e_nftables..clas
│ │ │ -0016e530: 7320 6469 7361 626c 655f 6e66 7461 626c  s disable_nftabl
│ │ │ -0016e540: 6573 207b 0a20 2073 6572 7669 6365 207b  es {.  service {
│ │ │ -0016e550: 276e 6674 6162 6c65 7327 3a0a 2020 2020  'nftables':.    
│ │ │ -0016e560: 656e 6162 6c65 203d 2667 743b 2066 616c  enable => fal
│ │ │ -0016e570: 7365 2c0a 2020 2020 656e 7375 7265 203d  se,.    ensure =
│ │ │ -0016e580: 2667 743b 2027 7374 6f70 7065 6427 2c0a  > 'stopped',.
│ │ │ -0016e590: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediatio │ │ │ -0016e650: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ -0016e660: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -0016e6e0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ -0016e720: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 disable
Complexity:< │ │ │ -0016e470: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -0016e490: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -0016e4e0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ -0016e4f0: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
Complexit │ │ │ -0016e6f0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ -0016e710: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ -0016e740: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ -0016e760: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
│ │ │ -0016e790: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -0016e7a0: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -0016e7b0: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -0016e7c0: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -0016e7d0: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -0016e7e0: 3a0a 2020 2d20 5043 492d 4453 5376 342d  :.  - PCI-DSSv4-
│ │ │ -0016e7f0: 312e 320a 2020 2d20 5043 492d 4453 5376  1.2.  - PCI-DSSv
│ │ │ -0016e800: 342d 312e 322e 310a 2020 2d20 6469 7361  4-1.2.1.  - disa
│ │ │ -0016e810: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ -0016e820: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -0016e830: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -0016e840: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ -0016e850: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ -0016e860: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ -0016e870: 7365 7276 6963 655f 6e66 7461 626c 6573  service_nftables
│ │ │ -0016e880: 5f64 6973 6162 6c65 640a 0a2d 206e 616d  _disabled..- nam
│ │ │ -0016e890: 653a 2056 6572 6966 7920 6e66 7461 626c  e: Verify nftabl
│ │ │ -0016e8a0: 6573 2053 6572 7669 6365 2069 7320 4469  es Service is Di
│ │ │ -0016e8b0: 7361 626c 6564 202d 2044 6973 6162 6c65  sabled - Disable
│ │ │ -0016e8c0: 2073 6572 7669 6365 206e 6674 6162 6c65   service nftable
│ │ │ -0016e8d0: 730a 2020 626c 6f63 6b3a 0a0a 2020 2d20  s.  block:..  - 
│ │ │ -0016e8e0: 6e61 6d65 3a20 5665 7269 6679 206e 6674  name: Verify nft
│ │ │ -0016e8f0: 6162 6c65 7320 5365 7276 6963 6520 6973  ables Service is
│ │ │ -0016e900: 2044 6973 6162 6c65 6420 2d20 436f 6c6c   Disabled - Coll
│ │ │ -0016e910: 6563 7420 7379 7374 656d 6420 5365 7276  ect systemd Serv
│ │ │ -0016e920: 6963 6573 2050 7265 7365 6e74 2069 6e0a  ices Present in.
│ │ │ -0016e930: 2020 2020 2020 7468 6520 5379 7374 656d        the System
│ │ │ -0016e940: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ -0016e950: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 7379  ltin.command: sy
│ │ │ -0016e960: 7374 656d 6374 6c20 2d71 206c 6973 742d  stemctl -q list-
│ │ │ -0016e970: 756e 6974 2d66 696c 6573 202d 2d74 7970  unit-files --typ
│ │ │ -0016e980: 6520 7365 7276 6963 650a 2020 2020 7265  e service.    re
│ │ │ -0016e990: 6769 7374 6572 3a20 7365 7276 6963 655f  gister: service_
│ │ │ -0016e9a0: 6578 6973 7473 0a20 2020 2063 6861 6e67  exists.    chang
│ │ │ -0016e9b0: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ -0016e9c0: 2020 2066 6169 6c65 645f 7768 656e 3a20     failed_when: 
│ │ │ -0016e9d0: 7365 7276 6963 655f 6578 6973 7473 2e72  service_exists.r
│ │ │ -0016e9e0: 6320 6e6f 7420 696e 205b 302c 2031 5d0a  c not in [0, 1].
│ │ │ -0016e9f0: 2020 2020 6368 6563 6b5f 6d6f 6465 3a20      check_mode: 
│ │ │ -0016ea00: 6661 6c73 650a 0a20 202d 206e 616d 653a  false..  - name:
│ │ │ -0016ea10: 2056 6572 6966 7920 6e66 7461 626c 6573   Verify nftables
│ │ │ -0016ea20: 2053 6572 7669 6365 2069 7320 4469 7361   Service is Disa
│ │ │ -0016ea30: 626c 6564 202d 2045 6e73 7572 6520 6e66  bled - Ensure nf
│ │ │ -0016ea40: 7461 626c 6573 2e73 6572 7669 6365 2069  tables.service i
│ │ │ -0016ea50: 7320 4d61 736b 6564 0a20 2020 2061 6e73  s Masked.    ans
│ │ │ -0016ea60: 6962 6c65 2e62 7569 6c74 696e 2e73 7973  ible.builtin.sys
│ │ │ -0016ea70: 7465 6d64 3a0a 2020 2020 2020 6e61 6d65  temd:.      name
│ │ │ -0016ea80: 3a20 6e66 7461 626c 6573 2e73 6572 7669  : nftables.servi
│ │ │ -0016ea90: 6365 0a20 2020 2020 2073 7461 7465 3a20  ce.      state: 
│ │ │ -0016eaa0: 7374 6f70 7065 640a 2020 2020 2020 656e  stopped.      en
│ │ │ -0016eab0: 6162 6c65 643a 2066 616c 7365 0a20 2020  abled: false.   
│ │ │ -0016eac0: 2020 206d 6173 6b65 643a 2074 7275 650a     masked: true.
│ │ │ -0016ead0: 2020 2020 7768 656e 3a20 7365 7276 6963      when: servic
│ │ │ -0016eae0: 655f 6578 6973 7473 2e73 7464 6f75 745f  e_exists.stdout_
│ │ │ -0016eaf0: 6c69 6e65 7320 6973 2073 6561 7263 6828  lines is search(
│ │ │ -0016eb00: 226e 6674 6162 6c65 732e 7365 7276 6963  "nftables.servic
│ │ │ -0016eb10: 6522 2c20 6d75 6c74 696c 696e 653d 5472  e", multiline=Tr
│ │ │ -0016eb20: 7565 290a 0a20 202d 206e 616d 653a 2055  ue)..  - name: U
│ │ │ -0016eb30: 6e69 7420 536f 636b 6574 2045 7869 7374  nit Socket Exist
│ │ │ -0016eb40: 7320 2d20 6e66 7461 626c 6573 2e73 6f63  s - nftables.soc
│ │ │ -0016eb50: 6b65 740a 2020 2020 616e 7369 626c 652e  ket.    ansible.
│ │ │ -0016eb60: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ -0016eb70: 2073 7973 7465 6d63 746c 202d 7120 6c69   systemctl -q li
│ │ │ -0016eb80: 7374 2d75 6e69 742d 6669 6c65 7320 6e66  st-unit-files nf
│ │ │ -0016eb90: 7461 626c 6573 2e73 6f63 6b65 740a 2020  tables.socket.  
│ │ │ -0016eba0: 2020 7265 6769 7374 6572 3a20 736f 636b    register: sock
│ │ │ -0016ebb0: 6574 5f66 696c 655f 6578 6973 7473 0a20  et_file_exists. 
│ │ │ -0016ebc0: 2020 2063 6861 6e67 6564 5f77 6865 6e3a     changed_when:
│ │ │ -0016ebd0: 2066 616c 7365 0a20 2020 2066 6169 6c65   false.    faile
│ │ │ -0016ebe0: 645f 7768 656e 3a20 736f 636b 6574 5f66  d_when: socket_f
│ │ │ -0016ebf0: 696c 655f 6578 6973 7473 2e72 6320 6e6f  ile_exists.rc no
│ │ │ -0016ec00: 7420 696e 205b 302c 2031 5d0a 2020 2020  t in [0, 1].    
│ │ │ -0016ec10: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73  check_mode: fals
│ │ │ -0016ec20: 650a 0a20 202d 206e 616d 653a 2056 6572  e..  - name: Ver
│ │ │ -0016ec30: 6966 7920 6e66 7461 626c 6573 2053 6572  ify nftables Ser
│ │ │ -0016ec40: 7669 6365 2069 7320 4469 7361 626c 6564  vice is Disabled
│ │ │ -0016ec50: 202d 2044 6973 6162 6c65 2053 6f63 6b65   - Disable Socke
│ │ │ -0016ec60: 7420 6e66 7461 626c 6573 0a20 2020 2061  t nftables.    a
│ │ │ -0016ec70: 6e73 6962 6c65 2e62 7569 6c74 696e 2e73  nsible.builtin.s
│ │ │ -0016ec80: 7973 7465 6d64 3a0a 2020 2020 2020 6e61  ystemd:.      na
│ │ │ -0016ec90: 6d65 3a20 6e66 7461 626c 6573 2e73 6f63  me: nftables.soc
│ │ │ -0016eca0: 6b65 740a 2020 2020 2020 656e 6162 6c65  ket.      enable
│ │ │ -0016ecb0: 643a 2066 616c 7365 0a20 2020 2020 2073  d: false.      s
│ │ │ -0016ecc0: 7461 7465 3a20 7374 6f70 7065 640a 2020  tate: stopped.  
│ │ │ -0016ecd0: 2020 2020 6d61 736b 6564 3a20 7472 7565      masked: true
│ │ │ -0016ece0: 0a20 2020 2077 6865 6e3a 2073 6f63 6b65  .    when: socke
│ │ │ -0016ecf0: 745f 6669 6c65 5f65 7869 7374 732e 7374  t_file_exists.st
│ │ │ -0016ed00: 646f 7574 5f6c 696e 6573 2069 7320 7365  dout_lines is se
│ │ │ -0016ed10: 6172 6368 2822 6e66 7461 626c 6573 2e73  arch("nftables.s
│ │ │ -0016ed20: 6f63 6b65 7422 2c20 6d75 6c74 696c 696e  ocket", multilin
│ │ │ -0016ed30: 653d 5472 7565 290a 2020 7461 6773 3a0a  e=True).  tags:.
│ │ │ -0016ed40: 2020 2d20 5043 492d 4453 5376 342d 312e    - PCI-DSSv4-1.
│ │ │ -0016ed50: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ -0016ed60: 312e 322e 310a 2020 2d20 6469 7361 626c  1.2.1.  - disabl
│ │ │ -0016ed70: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ -0016ed80: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -0016ed90: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -0016eda0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -0016edb0: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -0016edc0: 6f74 5f6e 6565 6465 640a 2020 2d20 7365  ot_needed.  - se
│ │ │ -0016edd0: 7276 6963 655f 6e66 7461 626c 6573 5f64  rvice_nftables_d
│ │ │ -0016ede0: 6973 6162 6c65 640a 2020 2d20 7370 6563  isabled.  - spec
│ │ │ -0016edf0: 6961 6c5f 7365 7276 6963 655f 626c 6f63  ial_service_bloc
│ │ │ -0016ee00: 6b0a 2020 7768 656e 3a20 2820 2266 6972  k.  when: ( "fir
│ │ │ -0016ee10: 6577 616c 6c64 2220 696e 2061 6e73 6962  ewalld" in ansib
│ │ │ -0016ee20: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -0016ee30: 7320 616e 6420 226e 6674 6162 6c65 7322  s and "nftables"
│ │ │ -0016ee40: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -0016ee50: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -0016ee60: 6e64 2022 6b65 726e 656c 2220 696e 2061  nd "kernel" in a
│ │ │ -0016ee70: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -0016ee80: 6b61 6765 7320 290a 3c2f 636f 6465 3e3c  kages ).<
│ │ │ +0016e280: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070  on Ansible snipp
│ │ │ +0016e290: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...
│ │ │ +0016e310: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +0016e320: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +0016e330: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +0016e370: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +0016e380: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +0016e3a0: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +0016e3b0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
- name: G
│ │ │ +0016e3d0: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ +0016e3e0: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ +0016e3f0: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ +0016e400: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ +0016e410: 733a 0a20 202d 2050 4349 2d44 5353 7634  s:.  - PCI-DSSv4
│ │ │ +0016e420: 2d31 2e32 0a20 202d 2050 4349 2d44 5353  -1.2.  - PCI-DSS
│ │ │ +0016e430: 7634 2d31 2e32 2e31 0a20 202d 2064 6973  v4-1.2.1.  - dis
│ │ │ +0016e440: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ +0016e450: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +0016e460: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +0016e470: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ +0016e480: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ +0016e490: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ +0016e4a0: 2073 6572 7669 6365 5f6e 6674 6162 6c65   service_nftable
│ │ │ +0016e4b0: 735f 6469 7361 626c 6564 0a0a 2d20 6e61  s_disabled..- na
│ │ │ +0016e4c0: 6d65 3a20 5665 7269 6679 206e 6674 6162  me: Verify nftab
│ │ │ +0016e4d0: 6c65 7320 5365 7276 6963 6520 6973 2044  les Service is D
│ │ │ +0016e4e0: 6973 6162 6c65 6420 2d20 4469 7361 626c  isabled - Disabl
│ │ │ +0016e4f0: 6520 7365 7276 6963 6520 6e66 7461 626c  e service nftabl
│ │ │ +0016e500: 6573 0a20 2062 6c6f 636b 3a0a 0a20 202d  es.  block:..  -
│ │ │ +0016e510: 206e 616d 653a 2056 6572 6966 7920 6e66   name: Verify nf
│ │ │ +0016e520: 7461 626c 6573 2053 6572 7669 6365 2069  tables Service i
│ │ │ +0016e530: 7320 4469 7361 626c 6564 202d 2043 6f6c  s Disabled - Col
│ │ │ +0016e540: 6c65 6374 2073 7973 7465 6d64 2053 6572  lect systemd Ser
│ │ │ +0016e550: 7669 6365 7320 5072 6573 656e 7420 696e  vices Present in
│ │ │ +0016e560: 0a20 2020 2020 2074 6865 2053 7973 7465  .      the Syste
│ │ │ +0016e570: 6d0a 2020 2020 616e 7369 626c 652e 6275  m.    ansible.bu
│ │ │ +0016e580: 696c 7469 6e2e 636f 6d6d 616e 643a 2073  iltin.command: s
│ │ │ +0016e590: 7973 7465 6d63 746c 202d 7120 6c69 7374  ystemctl -q list
│ │ │ +0016e5a0: 2d75 6e69 742d 6669 6c65 7320 2d2d 7479  -unit-files --ty
│ │ │ +0016e5b0: 7065 2073 6572 7669 6365 0a20 2020 2072  pe service.    r
│ │ │ +0016e5c0: 6567 6973 7465 723a 2073 6572 7669 6365  egister: service
│ │ │ +0016e5d0: 5f65 7869 7374 730a 2020 2020 6368 616e  _exists.    chan
│ │ │ +0016e5e0: 6765 645f 7768 656e 3a20 6661 6c73 650a  ged_when: false.
│ │ │ +0016e5f0: 2020 2020 6661 696c 6564 5f77 6865 6e3a      failed_when:
│ │ │ +0016e600: 2073 6572 7669 6365 5f65 7869 7374 732e   service_exists.
│ │ │ +0016e610: 7263 206e 6f74 2069 6e20 5b30 2c20 315d  rc not in [0, 1]
│ │ │ +0016e620: 0a20 2020 2063 6865 636b 5f6d 6f64 653a  .    check_mode:
│ │ │ +0016e630: 2066 616c 7365 0a0a 2020 2d20 6e61 6d65   false..  - name
│ │ │ +0016e640: 3a20 5665 7269 6679 206e 6674 6162 6c65  : Verify nftable
│ │ │ +0016e650: 7320 5365 7276 6963 6520 6973 2044 6973  s Service is Dis
│ │ │ +0016e660: 6162 6c65 6420 2d20 456e 7375 7265 206e  abled - Ensure n
│ │ │ +0016e670: 6674 6162 6c65 732e 7365 7276 6963 6520  ftables.service 
│ │ │ +0016e680: 6973 204d 6173 6b65 640a 2020 2020 616e  is Masked.    an
│ │ │ +0016e690: 7369 626c 652e 6275 696c 7469 6e2e 7379  sible.builtin.sy
│ │ │ +0016e6a0: 7374 656d 643a 0a20 2020 2020 206e 616d  stemd:.      nam
│ │ │ +0016e6b0: 653a 206e 6674 6162 6c65 732e 7365 7276  e: nftables.serv
│ │ │ +0016e6c0: 6963 650a 2020 2020 2020 7374 6174 653a  ice.      state:
│ │ │ +0016e6d0: 2073 746f 7070 6564 0a20 2020 2020 2065   stopped.      e
│ │ │ +0016e6e0: 6e61 626c 6564 3a20 6661 6c73 650a 2020  nabled: false.  
│ │ │ +0016e6f0: 2020 2020 6d61 736b 6564 3a20 7472 7565      masked: true
│ │ │ +0016e700: 0a20 2020 2077 6865 6e3a 2073 6572 7669  .    when: servi
│ │ │ +0016e710: 6365 5f65 7869 7374 732e 7374 646f 7574  ce_exists.stdout
│ │ │ +0016e720: 5f6c 696e 6573 2069 7320 7365 6172 6368  _lines is search
│ │ │ +0016e730: 2822 6e66 7461 626c 6573 2e73 6572 7669  ("nftables.servi
│ │ │ +0016e740: 6365 222c 206d 756c 7469 6c69 6e65 3d54  ce", multiline=T
│ │ │ +0016e750: 7275 6529 0a0a 2020 2d20 6e61 6d65 3a20  rue)..  - name: 
│ │ │ +0016e760: 556e 6974 2053 6f63 6b65 7420 4578 6973  Unit Socket Exis
│ │ │ +0016e770: 7473 202d 206e 6674 6162 6c65 732e 736f  ts - nftables.so
│ │ │ +0016e780: 636b 6574 0a20 2020 2061 6e73 6962 6c65  cket.    ansible
│ │ │ +0016e790: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ +0016e7a0: 3a20 7379 7374 656d 6374 6c20 2d71 206c  : systemctl -q l
│ │ │ +0016e7b0: 6973 742d 756e 6974 2d66 696c 6573 206e  ist-unit-files n
│ │ │ +0016e7c0: 6674 6162 6c65 732e 736f 636b 6574 0a20  ftables.socket. 
│ │ │ +0016e7d0: 2020 2072 6567 6973 7465 723a 2073 6f63     register: soc
│ │ │ +0016e7e0: 6b65 745f 6669 6c65 5f65 7869 7374 730a  ket_file_exists.
│ │ │ +0016e7f0: 2020 2020 6368 616e 6765 645f 7768 656e      changed_when
│ │ │ +0016e800: 3a20 6661 6c73 650a 2020 2020 6661 696c  : false.    fail
│ │ │ +0016e810: 6564 5f77 6865 6e3a 2073 6f63 6b65 745f  ed_when: socket_
│ │ │ +0016e820: 6669 6c65 5f65 7869 7374 732e 7263 206e  file_exists.rc n
│ │ │ +0016e830: 6f74 2069 6e20 5b30 2c20 315d 0a20 2020  ot in [0, 1].   
│ │ │ +0016e840: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ +0016e850: 7365 0a0a 2020 2d20 6e61 6d65 3a20 5665  se..  - name: Ve
│ │ │ +0016e860: 7269 6679 206e 6674 6162 6c65 7320 5365  rify nftables Se
│ │ │ +0016e870: 7276 6963 6520 6973 2044 6973 6162 6c65  rvice is Disable
│ │ │ +0016e880: 6420 2d20 4469 7361 626c 6520 536f 636b  d - Disable Sock
│ │ │ +0016e890: 6574 206e 6674 6162 6c65 730a 2020 2020  et nftables.    
│ │ │ +0016e8a0: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +0016e8b0: 7379 7374 656d 643a 0a20 2020 2020 206e  systemd:.      n
│ │ │ +0016e8c0: 616d 653a 206e 6674 6162 6c65 732e 736f  ame: nftables.so
│ │ │ +0016e8d0: 636b 6574 0a20 2020 2020 2065 6e61 626c  cket.      enabl
│ │ │ +0016e8e0: 6564 3a20 6661 6c73 650a 2020 2020 2020  ed: false.      
│ │ │ +0016e8f0: 7374 6174 653a 2073 746f 7070 6564 0a20  state: stopped. 
│ │ │ +0016e900: 2020 2020 206d 6173 6b65 643a 2074 7275       masked: tru
│ │ │ +0016e910: 650a 2020 2020 7768 656e 3a20 736f 636b  e.    when: sock
│ │ │ +0016e920: 6574 5f66 696c 655f 6578 6973 7473 2e73  et_file_exists.s
│ │ │ +0016e930: 7464 6f75 745f 6c69 6e65 7320 6973 2073  tdout_lines is s
│ │ │ +0016e940: 6561 7263 6828 226e 6674 6162 6c65 732e  earch("nftables.
│ │ │ +0016e950: 736f 636b 6574 222c 206d 756c 7469 6c69  socket", multili
│ │ │ +0016e960: 6e65 3d54 7275 6529 0a20 2074 6167 733a  ne=True).  tags:
│ │ │ +0016e970: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ +0016e980: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ +0016e990: 2d31 2e32 2e31 0a20 202d 2064 6973 6162  -1.2.1.  - disab
│ │ │ +0016e9a0: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ +0016e9b0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +0016e9c0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +0016e9d0: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ +0016e9e0: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ +0016e9f0: 6f6f 745f 6e65 6564 6564 0a20 202d 2073  oot_needed.  - s
│ │ │ +0016ea00: 6572 7669 6365 5f6e 6674 6162 6c65 735f  ervice_nftables_
│ │ │ +0016ea10: 6469 7361 626c 6564 0a20 202d 2073 7065  disabled.  - spe
│ │ │ +0016ea20: 6369 616c 5f73 6572 7669 6365 5f62 6c6f  cial_service_blo
│ │ │ +0016ea30: 636b 0a20 2077 6865 6e3a 2028 2022 6669  ck.  when: ( "fi
│ │ │ +0016ea40: 7265 7761 6c6c 6422 2069 6e20 616e 7369  rewalld" in ansi
│ │ │ +0016ea50: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +0016ea60: 6573 2061 6e64 2022 6e66 7461 626c 6573  es and "nftables
│ │ │ +0016ea70: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +0016ea80: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +0016ea90: 616e 6420 226b 6572 6e65 6c22 2069 6e20  and "kernel" in 
│ │ │ +0016eaa0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +0016eab0: 636b 6167 6573 2029 0a3c 2f63 6f64 653e  ckages ).
│ │ │ +0016eac0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +0016eb70: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ +0016eb80: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +0016eb90: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +0016eba0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +0016ebb0: 7365 2220 6964 3d22 6964 3336 3822 3e3c se" id="id368">< │ │ │ +0016ebc0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +0016ebd0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +0016ebe0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +0016ebf0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +0016ec00: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +0016ec10: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +0016ec20: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ +0016ec60: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +0016ec70: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ +0016ec90: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ +0016eca0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
include d
│ │ │ +0016ecc0: 6973 6162 6c65 5f6e 6674 6162 6c65 730a  isable_nftables.
│ │ │ +0016ecd0: 0a63 6c61 7373 2064 6973 6162 6c65 5f6e  .class disable_n
│ │ │ +0016ece0: 6674 6162 6c65 7320 7b0a 2020 7365 7276  ftables {.  serv
│ │ │ +0016ecf0: 6963 6520 7b27 6e66 7461 626c 6573 273a  ice {'nftables':
│ │ │ +0016ed00: 0a20 2020 2065 6e61 626c 6520 3d26 6774  .    enable =>
│ │ │ +0016ed10: 3b20 6661 6c73 652c 0a20 2020 2065 6e73  ; false,.    ens
│ │ │ +0016ed20: 7572 6520 3d26 6774 3b20 2773 746f 7070  ure => 'stopp
│ │ │ +0016ed30: 6564 272c 0a20 207d 0a7d 0a3c 2f63 6f64  ed',.  }.}.
Remed │ │ │ +0016edf0: 6961 7469 6f6e 204f 5342 7569 6c64 2042 iation OSBuild B │ │ │ +0016ee00: 6c75 6570 7269 6e74 2073 6e69 7070 6574 lueprint snippet │ │ │ +0016ee10: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
.[customi
│ │ │ +0016ee60: 7a61 7469 6f6e 732e 7365 7276 6963 6573  zations.services
│ │ │ +0016ee70: 5d0a 6d61 736b 6564 203d 205b 226e 6674  ].masked = ["nft
│ │ │ +0016ee80: 6162 6c65 7322 5d0a 3c2f 636f 6465 3e3c  ables"].<
│ │ │  0016ee90: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediation │ │ │ -001b7620: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ -001b7630: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -001b76c0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -001b76e0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -001b76f0: 7464 3e68 6967 683c 2f74 643e 3c2f 7472 td>highReboot: │ │ │ -001b7710: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -001b7730: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ -001b7760: 636f 6465 3e0a 7061 7274 202f 686f 6d65  code>.part /home
│ │ │ -001b7770: 202d 2d6d 6f75 6e74 6f70 7469 6f6e 733d   --mountoptions=
│ │ │ -001b7780: 226e 6f64 6576 220a 3c2f 636f 6465 3e3c  "nodev".<
│ │ │ -001b7790: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ -001b7840: 696f 6e20 416e 7369 626c 6520 736e 6970 ion Ansible snip │ │ │ -001b7850: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -001b7860: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -001b7870: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -001b7880: 7365 2220 6964 3d22 6964 3530 3022 3e3c se" id="id500">< │ │ │ -001b7890: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -001b78a0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -001b78b0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -001b78c0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -001b78d0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -001b78e0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -001b78f0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:high< │ │ │ -001b7920: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>Rebo │ │ │ -001b7930: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -001b7940: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e< │ │ │ -001b7950: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:configure │ │ │ -001b7980: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ -001b7990: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ -001b79a0: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ -001b79b0: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ -001b79c0: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ -001b79d0: 2074 6167 733a 0a20 202d 2063 6f6e 6669   tags:.  - confi
│ │ │ -001b79e0: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ -001b79f0: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ -001b7a00: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ -001b7a10: 7869 7479 0a20 202d 206d 6f75 6e74 5f6f  xity.  - mount_o
│ │ │ -001b7a20: 7074 696f 6e5f 686f 6d65 5f6e 6f64 6576  ption_home_nodev
│ │ │ -001b7a30: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -001b7a40: 6565 6465 640a 2020 2d20 756e 6b6e 6f77  eeded.  - unknow
│ │ │ -001b7a50: 6e5f 7365 7665 7269 7479 0a0a 2d20 6e61  n_severity..- na
│ │ │ -001b7a60: 6d65 3a20 2741 6464 206e 6f64 6576 204f  me: 'Add nodev O
│ │ │ -001b7a70: 7074 696f 6e20 746f 202f 686f 6d65 3a20  ption to /home: 
│ │ │ -001b7a80: 4368 6563 6b20 696e 666f 726d 6174 696f  Check informatio
│ │ │ -001b7a90: 6e20 6173 736f 6369 6174 6564 2074 6f20  n associated to 
│ │ │ -001b7aa0: 6d6f 756e 7470 6f69 6e74 270a 2020 616e  mountpoint'.  an
│ │ │ -001b7ab0: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ -001b7ac0: 6d6d 616e 643a 2066 696e 646d 6e74 202d  mmand: findmnt -
│ │ │ -001b7ad0: 2d66 7374 6162 2027 2f68 6f6d 6527 0a20  -fstab '/home'. 
│ │ │ -001b7ae0: 2072 6567 6973 7465 723a 2064 6576 6963   register: devic
│ │ │ -001b7af0: 655f 6e61 6d65 0a20 2066 6169 6c65 645f  e_name.  failed_
│ │ │ -001b7b00: 7768 656e 3a20 6465 7669 6365 5f6e 616d  when: device_nam
│ │ │ -001b7b10: 652e 7263 2026 6774 3b20 310a 2020 6368  e.rc > 1.  ch
│ │ │ -001b7b20: 616e 6765 645f 7768 656e 3a20 6661 6c73  anged_when: fals
│ │ │ -001b7b30: 650a 2020 6368 6563 6b5f 6d6f 6465 3a20  e.  check_mode: 
│ │ │ -001b7b40: 6661 6c73 650a 2020 7768 656e 3a0a 2020  false.  when:.  
│ │ │ -001b7b50: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ -001b7b60: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -001b7b70: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001b7b80: 2022 7270 6d2d 6f73 7472 6565 2220 696e   "rpm-ostree" in
│ │ │ -001b7b90: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001b7ba0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001b7bb0: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ -001b7bc0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001b7bd0: 7320 616e 6420 6e6f 7420 226f 7065 6e73  s and not "opens
│ │ │ -001b7be0: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ -001b7bf0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001b7c00: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001b7c10: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ -001b7c20: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ -001b7c30: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ -001b7c40: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ -001b7c50: 696f 6e5f 7479 7065 2069 6e0a 2020 2020  ion_type in.    
│ │ │ -001b7c60: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ -001b7c70: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ -001b7c80: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572  man", "container
│ │ │ -001b7c90: 225d 2029 2029 0a20 202d 2027 222f 686f  "] ) ).  - '"/ho
│ │ │ -001b7ca0: 6d65 2220 696e 2061 6e73 6962 6c65 5f6d  me" in ansible_m
│ │ │ -001b7cb0: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ -001b7cc0: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ -001b7cd0: 206c 6973 7427 0a20 2074 6167 733a 0a20   list'.  tags:. 
│ │ │ -001b7ce0: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -001b7cf0: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -001b7d00: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -001b7d10: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -001b7d20: 206d 6f75 6e74 5f6f 7074 696f 6e5f 686f   mount_option_ho
│ │ │ -001b7d30: 6d65 5f6e 6f64 6576 0a20 202d 206e 6f5f  me_nodev.  - no_
│ │ │ -001b7d40: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ -001b7d50: 2d20 756e 6b6e 6f77 6e5f 7365 7665 7269  - unknown_severi
│ │ │ -001b7d60: 7479 0a0a 2d20 6e61 6d65 3a20 2741 6464  ty..- name: 'Add
│ │ │ -001b7d70: 206e 6f64 6576 204f 7074 696f 6e20 746f   nodev Option to
│ │ │ -001b7d80: 202f 686f 6d65 3a20 4372 6561 7465 206d   /home: Create m
│ │ │ -001b7d90: 6f75 6e74 5f69 6e66 6f20 6469 6374 696f  ount_info dictio
│ │ │ -001b7da0: 6e61 7279 2076 6172 6961 626c 6527 0a20  nary variable'. 
│ │ │ -001b7db0: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ -001b7dc0: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ -001b7dd0: 6f75 6e74 5f69 6e66 6f7c 6465 6661 756c  ount_info|defaul
│ │ │ -001b7de0: 7428 7b7d 297c 636f 6d62 696e 6528 7b69  t({})|combine({i
│ │ │ -001b7df0: 7465 6d2e 303a 2069 7465 6d2e 317d 2920  tem.0: item.1}) 
│ │ │ -001b7e00: 7d7d 270a 2020 7769 7468 5f74 6f67 6574  }}'.  with_toget
│ │ │ -001b7e10: 6865 723a 0a20 202d 2027 7b7b 2064 6576  her:.  - '{{ dev
│ │ │ -001b7e20: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ -001b7e30: 6c69 6e65 735b 305d 2e73 706c 6974 2829  lines[0].split()
│ │ │ -001b7e40: 207c 206d 6170 2827 276c 6f77 6572 2727   | map(''lower''
│ │ │ -001b7e50: 2920 7c20 6c69 7374 207d 7d27 0a20 202d  ) | list }}'.  -
│ │ │ -001b7e60: 2027 7b7b 2064 6576 6963 655f 6e61 6d65   '{{ device_name
│ │ │ -001b7e70: 2e73 7464 6f75 745f 6c69 6e65 735b 315d  .stdout_lines[1]
│ │ │ -001b7e80: 2e73 706c 6974 2829 207c 206c 6973 7420  .split() | list 
│ │ │ -001b7e90: 7d7d 270a 2020 7768 656e 3a0a 2020 2d20  }}'.  when:.  - 
│ │ │ -001b7ea0: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -001b7eb0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001b7ec0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001b7ed0: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ -001b7ee0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001b7ef0: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ -001b7f00: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -001b7f10: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001b7f20: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001b7f30: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001b7f40: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001b7f50: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ -001b7f60: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001b7f70: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ -001b7f80: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001b7f90: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001b7fa0: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ -001b7fb0: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -001b7fc0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -001b7fd0: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ -001b7fe0: 2029 2029 0a20 202d 2027 222f 686f 6d65   ) ).  - '"/home
│ │ │ -001b7ff0: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ -001b8000: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ -001b8010: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ -001b8020: 6973 7427 0a20 202d 2064 6576 6963 655f  ist'.  - device_
│ │ │ -001b8030: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ -001b8040: 6566 696e 6564 2061 6e64 2064 6576 6963  efined and devic
│ │ │ -001b8050: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ -001b8060: 6e65 7320 6973 2064 6566 696e 6564 0a20  nes is defined. 
│ │ │ -001b8070: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ -001b8080: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ -001b8090: 2667 743b 2030 290a 2020 7461 6773 3a0a  > 0).  tags:.
│ │ │ -001b80a0: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ -001b80b0: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ -001b80c0: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -001b80d0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -001b80e0: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f68  - mount_option_h
│ │ │ -001b80f0: 6f6d 655f 6e6f 6465 760a 2020 2d20 6e6f  ome_nodev.  - no
│ │ │ -001b8100: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ -001b8110: 202d 2075 6e6b 6e6f 776e 5f73 6576 6572   - unknown_sever
│ │ │ -001b8120: 6974 790a 0a2d 206e 616d 653a 2027 4164  ity..- name: 'Ad
│ │ │ -001b8130: 6420 6e6f 6465 7620 4f70 7469 6f6e 2074  d nodev Option t
│ │ │ -001b8140: 6f20 2f68 6f6d 653a 2049 6620 2f68 6f6d  o /home: If /hom
│ │ │ -001b8150: 6520 6e6f 7420 6d6f 756e 7465 642c 2063  e not mounted, c
│ │ │ -001b8160: 7261 6674 206d 6f75 6e74 5f69 6e66 6f20  raft mount_info 
│ │ │ -001b8170: 6d61 6e75 616c 6c79 270a 2020 7365 745f  manually'.  set_
│ │ │ -001b8180: 6661 6374 3a0a 2020 2020 6d6f 756e 745f  fact:.    mount_
│ │ │ -001b8190: 696e 666f 3a20 277b 7b20 6d6f 756e 745f  info: '{{ mount_
│ │ │ -001b81a0: 696e 666f 7c64 6566 6175 6c74 287b 7d29  info|default({})
│ │ │ -001b81b0: 7c63 6f6d 6269 6e65 287b 6974 656d 2e30  |combine({item.0
│ │ │ -001b81c0: 3a20 6974 656d 2e31 7d29 207d 7d27 0a20  : item.1}) }}'. 
│ │ │ -001b81d0: 2077 6974 685f 746f 6765 7468 6572 3a0a   with_together:.
│ │ │ -001b81e0: 2020 2d20 2d20 7461 7267 6574 0a20 2020    - - target.   
│ │ │ -001b81f0: 202d 2073 6f75 7263 650a 2020 2020 2d20   - source.    - 
│ │ │ -001b8200: 6673 7479 7065 0a20 2020 202d 206f 7074  fstype.    - opt
│ │ │ -001b8210: 696f 6e73 0a20 202d 202d 202f 686f 6d65  ions.  - - /home
│ │ │ -001b8220: 0a20 2020 202d 2027 270a 2020 2020 2d20  .    - ''.    - 
│ │ │ -001b8230: 2727 0a20 2020 202d 2064 6566 6175 6c74  ''.    - default
│ │ │ -001b8240: 730a 2020 7768 656e 3a0a 2020 2d20 2820  s.  when:.  - ( 
│ │ │ -001b8250: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ -001b8260: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001b8270: 7061 636b 6167 6573 2061 6e64 2022 7270  packages and "rp
│ │ │ -001b8280: 6d2d 6f73 7472 6565 2220 696e 2061 6e73  m-ostree" in ans
│ │ │ -001b8290: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001b82a0: 6765 730a 2020 2020 616e 6420 2262 6f6f  ges.    and "boo
│ │ │ -001b82b0: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ -001b82c0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001b82d0: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ -001b82e0: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ -001b82f0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001b8300: 6765 730a 2020 2020 616e 6420 226f 7374  ges.    and "ost
│ │ │ -001b8310: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -001b8320: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061  proc_cmdline ) a
│ │ │ -001b8330: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ -001b8340: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ -001b8350: 7479 7065 2069 6e0a 2020 2020 5b22 646f  type in.    ["do
│ │ │ -001b8360: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ -001b8370: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ -001b8380: 2c20 2263 6f6e 7461 696e 6572 225d 2029  , "container"] )
│ │ │ -001b8390: 2029 0a20 202d 2027 222f 686f 6d65 2220   ).  - '"/home" 
│ │ │ -001b83a0: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ -001b83b0: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ -001b83c0: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ -001b83d0: 7427 0a20 202d 2028 222d 2d66 7374 6162  t'.  - ("--fstab
│ │ │ -001b83e0: 2220 7c20 6c65 6e67 7468 203d 3d20 3029  " | length == 0)
│ │ │ -001b83f0: 0a20 202d 2064 6576 6963 655f 6e61 6d65  .  - device_name
│ │ │ -001b8400: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ -001b8410: 6564 2061 6e64 2064 6576 6963 655f 6e61  ed and device_na
│ │ │ -001b8420: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320  me.stdout_lines 
│ │ │ -001b8430: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ -001b8440: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001b8450: 7574 207c 206c 656e 6774 6820 3d3d 2030  ut | length == 0
│ │ │ -001b8460: 290a 2020 7461 6773 3a0a 2020 2d20 636f  ).  tags:.  - co
│ │ │ -001b8470: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -001b8480: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -001b8490: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -001b84a0: 706c 6578 6974 790a 2020 2d20 6d6f 756e  plexity.  - moun
│ │ │ -001b84b0: 745f 6f70 7469 6f6e 5f68 6f6d 655f 6e6f  t_option_home_no
│ │ │ -001b84c0: 6465 760a 2020 2d20 6e6f 5f72 6562 6f6f  dev.  - no_reboo
│ │ │ -001b84d0: 745f 6e65 6564 6564 0a20 202d 2075 6e6b  t_needed.  - unk
│ │ │ -001b84e0: 6e6f 776e 5f73 6576 6572 6974 790a 0a2d  nown_severity..-
│ │ │ -001b84f0: 206e 616d 653a 2027 4164 6420 6e6f 6465   name: 'Add node
│ │ │ -001b8500: 7620 4f70 7469 6f6e 2074 6f20 2f68 6f6d  v Option to /hom
│ │ │ -001b8510: 653a 204d 616b 6520 7375 7265 206e 6f64  e: Make sure nod
│ │ │ -001b8520: 6576 206f 7074 696f 6e20 6973 2070 6172  ev option is par
│ │ │ -001b8530: 7420 6f66 2074 6865 2074 6f20 2f68 6f6d  t of the to /hom
│ │ │ -001b8540: 650a 2020 2020 6f70 7469 6f6e 7327 0a20  e.    options'. 
│ │ │ -001b8550: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ -001b8560: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ -001b8570: 6f75 6e74 5f69 6e66 6f20 7c20 636f 6d62  ount_info | comb
│ │ │ -001b8580: 696e 6528 207b 2727 6f70 7469 6f6e 7327  ine( {''options'
│ │ │ -001b8590: 273a 2727 2727 7e28 6d6f 756e 745f 696e  ':''''~(mount_in
│ │ │ -001b85a0: 666f 2e6f 7074 696f 6e73 207c 0a20 2020  fo.options |.   
│ │ │ -001b85b0: 2020 2064 6566 6175 6c74 2827 2727 2729     default('''')
│ │ │ -001b85c0: 297e 2827 272c 2727 2069 6620 286d 6f75  )~('','' if (mou
│ │ │ -001b85d0: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ -001b85e0: 7c20 6465 6661 756c 7428 2727 2727 2929  | default(''''))
│ │ │ -001b85f0: 2065 6c73 6520 2727 2727 297e 2727 6e6f   else '''')~''no
│ │ │ -001b8600: 6465 7627 270a 2020 2020 2020 7d29 207d  dev''.      }) }
│ │ │ -001b8610: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028  }'.  when:.  - (
│ │ │ -001b8620: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -001b8630: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001b8640: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ -001b8650: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ -001b8660: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001b8670: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ -001b8680: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ -001b8690: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001b86a0: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -001b86b0: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -001b86c0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001b86d0: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ -001b86e0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001b86f0: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ -001b8700: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -001b8710: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -001b8720: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ -001b8730: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ -001b8740: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ -001b8750: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ -001b8760: 2920 290a 2020 2d20 2722 2f68 6f6d 6522  ) ).  - '"/home"
│ │ │ -001b8770: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ -001b8780: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ -001b8790: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ -001b87a0: 7374 270a 2020 2d20 6d6f 756e 745f 696e  st'.  - mount_in
│ │ │ -001b87b0: 666f 2069 7320 6465 6669 6e65 6420 616e  fo is defined an
│ │ │ -001b87c0: 6420 226e 6f64 6576 2220 6e6f 7420 696e  d "nodev" not in
│ │ │ -001b87d0: 2028 6d6f 756e 745f 696e 666f 2e6f 7074   (mount_info.opt
│ │ │ -001b87e0: 696f 6e73 207c 2064 6566 6175 6c74 2827  ions | default('
│ │ │ -001b87f0: 2729 290a 2020 7461 6773 3a0a 2020 2d20  ')).  tags:.  - 
│ │ │ -001b8800: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ -001b8810: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ -001b8820: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ -001b8830: 6f6d 706c 6578 6974 790a 2020 2d20 6d6f  omplexity.  - mo
│ │ │ -001b8840: 756e 745f 6f70 7469 6f6e 5f68 6f6d 655f  unt_option_home_
│ │ │ -001b8850: 6e6f 6465 760a 2020 2d20 6e6f 5f72 6562  nodev.  - no_reb
│ │ │ -001b8860: 6f6f 745f 6e65 6564 6564 0a20 202d 2075  oot_needed.  - u
│ │ │ -001b8870: 6e6b 6e6f 776e 5f73 6576 6572 6974 790a  nknown_severity.
│ │ │ -001b8880: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ -001b8890: 6465 7620 4f70 7469 6f6e 2074 6f20 2f68  dev Option to /h
│ │ │ -001b88a0: 6f6d 653a 2045 6e73 7572 6520 2f68 6f6d  ome: Ensure /hom
│ │ │ -001b88b0: 6520 6973 206d 6f75 6e74 6564 2077 6974  e is mounted wit
│ │ │ -001b88c0: 6820 6e6f 6465 7620 6f70 7469 6f6e 270a  h nodev option'.
│ │ │ -001b88d0: 2020 616e 7369 626c 652e 706f 7369 782e    ansible.posix.
│ │ │ -001b88e0: 6d6f 756e 743a 0a20 2020 2070 6174 683a  mount:.    path:
│ │ │ -001b88f0: 202f 686f 6d65 0a20 2020 2073 7263 3a20   /home.    src: 
│ │ │ -001b8900: 277b 7b20 6d6f 756e 745f 696e 666f 2e73  '{{ mount_info.s
│ │ │ -001b8910: 6f75 7263 6520 7c20 6465 6661 756c 7428  ource | default(
│ │ │ -001b8920: 2727 2727 2920 7d7d 270a 2020 2020 6f70  '''') }}'.    op
│ │ │ -001b8930: 7473 3a20 277b 7b20 6d6f 756e 745f 696e  ts: '{{ mount_in
│ │ │ -001b8940: 666f 2e6f 7074 696f 6e73 207c 2064 6566  fo.options | def
│ │ │ -001b8950: 6175 6c74 2827 2727 2729 207d 7d27 0a20  ault('''') }}'. 
│ │ │ -001b8960: 2020 2073 7461 7465 3a20 6d6f 756e 7465     state: mounte
│ │ │ -001b8970: 640a 2020 2020 6673 7479 7065 3a20 277b  d.    fstype: '{
│ │ │ -001b8980: 7b20 6d6f 756e 745f 696e 666f 2e66 7374  { mount_info.fst
│ │ │ -001b8990: 7970 6520 7c20 6465 6661 756c 7428 2727  ype | default(''
│ │ │ -001b89a0: 2727 2920 7d7d 270a 2020 7265 6769 7374  '') }}'.  regist
│ │ │ -001b89b0: 6572 3a20 6d6f 756e 745f 7265 7375 6c74  er: mount_result
│ │ │ -001b89c0: 0a20 2066 6169 6c65 645f 7768 656e 3a0a  .  failed_when:.
│ │ │ -001b89d0: 2020 2d20 6d6f 756e 745f 7265 7375 6c74    - mount_result
│ │ │ -001b89e0: 2069 7320 6661 696c 6564 0a20 202d 2027   is failed.  - '
│ │ │ -001b89f0: 2727 7461 7267 6574 2069 7320 6275 7379  ''target is busy
│ │ │ -001b8a00: 2727 206e 6f74 2069 6e20 286d 6f75 6e74  '' not in (mount
│ │ │ -001b8a10: 5f72 6573 756c 742e 6d73 6720 7c20 6465  _result.msg | de
│ │ │ -001b8a20: 6661 756c 7428 2727 2727 2929 270a 2020  fault(''''))'.  
│ │ │ -001b8a30: 2d20 2727 2761 6c72 6561 6479 206d 6f75  - '''already mou
│ │ │ -001b8a40: 6e74 6564 2727 206e 6f74 2069 6e20 286d  nted'' not in (m
│ │ │ -001b8a50: 6f75 6e74 5f72 6573 756c 742e 6d73 6720  ount_result.msg 
│ │ │ -001b8a60: 7c20 6465 6661 756c 7428 2727 2727 2929  | default(''''))
│ │ │ -001b8a70: 270a 2020 7768 656e 3a0a 2020 2d20 2820  '.  when:.  - ( 
│ │ │ -001b8a80: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ -001b8a90: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001b8aa0: 7061 636b 6167 6573 2061 6e64 2022 7270  packages and "rp
│ │ │ -001b8ab0: 6d2d 6f73 7472 6565 2220 696e 2061 6e73  m-ostree" in ans
│ │ │ -001b8ac0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001b8ad0: 6765 730a 2020 2020 616e 6420 2262 6f6f  ges.    and "boo
│ │ │ -001b8ae0: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ -001b8af0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001b8b00: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ -001b8b10: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ -001b8b20: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001b8b30: 6765 730a 2020 2020 616e 6420 226f 7374  ges.    and "ost
│ │ │ -001b8b40: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -001b8b50: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061  proc_cmdline ) a
│ │ │ -001b8b60: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ -001b8b70: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ -001b8b80: 7479 7065 2069 6e0a 2020 2020 5b22 646f  type in.    ["do
│ │ │ -001b8b90: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ -001b8ba0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ -001b8bb0: 2c20 2263 6f6e 7461 696e 6572 225d 2029  , "container"] )
│ │ │ -001b8bc0: 2029 0a20 202d 2027 222f 686f 6d65 2220   ).  - '"/home" 
│ │ │ -001b8bd0: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ -001b8be0: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ -001b8bf0: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ -001b8c00: 7427 0a20 202d 206d 6f75 6e74 5f69 6e66  t'.  - mount_inf
│ │ │ -001b8c10: 6f20 6973 2064 6566 696e 6564 0a20 202d  o is defined.  -
│ │ │ -001b8c20: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ -001b8c30: 646f 7574 2069 7320 6465 6669 6e65 6420  dout is defined 
│ │ │ -001b8c40: 616e 6420 2864 6576 6963 655f 6e61 6d65  and (device_name
│ │ │ -001b8c50: 2e73 7464 6f75 7420 7c20 6c65 6e67 7468  .stdout | length
│ │ │ -001b8c60: 2026 6774 3b20 3029 2920 6f72 2028 222d   > 0)) or ("-
│ │ │ -001b8c70: 2d66 7374 6162 220a 2020 2020 7c20 6c65  -fstab".    | le
│ │ │ -001b8c80: 6e67 7468 203d 3d20 3029 0a20 2074 6167  ngth == 0).  tag
│ │ │ -001b8c90: 733a 0a20 202d 2063 6f6e 6669 6775 7265  s:.  - configure
│ │ │ -001b8ca0: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ -001b8cb0: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ -001b8cc0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001b8cd0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ -001b8ce0: 6e5f 686f 6d65 5f6e 6f64 6576 0a20 202d  n_home_nodev.  -
│ │ │ -001b8cf0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -001b8d00: 640a 2020 2d20 756e 6b6e 6f77 6e5f 7365  d.  - unknown_se
│ │ │ -001b8d10: 7665 7269 7479 0a3c 2f63 6f64 653e 3c2f  verity.
Remediati │ │ │ -001b8dd0: 6f6e 2053 6865 6c6c 2073 6372 6970 7420 on Shell script │ │ │ -001b8de0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Reboot:false< │ │ │ -001b8e80: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
# Remedia
│ │ │ -001b8ea0: 7469 6f6e 2069 7320 6170 706c 6963 6162  tion is applicab
│ │ │ -001b8eb0: 6c65 206f 6e6c 7920 696e 2063 6572 7461  le only in certa
│ │ │ -001b8ec0: 696e 2070 6c61 7466 6f72 6d73 0a69 6620  in platforms.if 
│ │ │ -001b8ed0: 2820 2120 2820 7b20 7270 6d20 2d2d 7175  ( ! ( { rpm --qu
│ │ │ -001b8ee0: 6965 7420 2d71 206b 6572 6e65 6c20 3b7d  iet -q kernel ;}
│ │ │ -001b8ef0: 2026 616d 703b 2661 6d70 3b20 7b20 7270   && { rp
│ │ │ -001b8f00: 6d20 2d2d 7175 6965 7420 2d71 2072 706d  m --quiet -q rpm
│ │ │ -001b8f10: 2d6f 7374 7265 6520 3b7d 2026 616d 703b  -ostree ;} &
│ │ │ -001b8f20: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ -001b8f30: 6965 7420 2d71 2062 6f6f 7463 203b 7d20  iet -q bootc ;} 
│ │ │ -001b8f40: 2661 6d70 3b26 616d 703b 207b 2021 2072  && { ! r
│ │ │ -001b8f50: 706d 202d 2d71 7569 6574 202d 7120 6f70  pm --quiet -q op
│ │ │ -001b8f60: 656e 7368 6966 742d 6b75 6265 6c65 7420  enshift-kubelet 
│ │ │ -001b8f70: 3b7d 2026 616d 703b 2661 6d70 3b20 285b  ;} && ([
│ │ │ -001b8f80: 202d 6620 2f72 756e 2f6f 7374 7265 652d   -f /run/ostree-
│ │ │ -001b8f90: 626f 6f74 6564 205d 207c 7c20 5b20 2d4c  booted ] || [ -L
│ │ │ -001b8fa0: 202f 6f73 7472 6565 205d 2920 2920 2661   /ostree ]) ) &a
│ │ │ -001b8fb0: 6d70 3b26 616d 703b 2021 2028 205b 202d  mp;& ! ( [ -
│ │ │ -001b8fc0: 6620 2f2e 646f 636b 6572 656e 7620 5d20  f /.dockerenv ] 
│ │ │ -001b8fd0: 7c7c 205b 202d 6620 2f72 756e 2f2e 636f  || [ -f /run/.co
│ │ │ -001b8fe0: 6e74 6169 6e65 7265 6e76 205d 2029 2029  ntainerenv ] ) )
│ │ │ -001b8ff0: 2026 616d 703b 2661 6d70 3b20 7b20 2820   && { ( 
│ │ │ -001b9000: 6669 6e64 6d6e 7420 2d2d 6b65 726e 656c  findmnt --kernel
│ │ │ -001b9010: 2022 2f68 6f6d 6522 2026 6774 3b20 2f64   "/home" > /d
│ │ │ -001b9020: 6576 2f6e 756c 6c20 7c7c 2066 696e 646d  ev/null || findm
│ │ │ -001b9030: 6e74 202d 2d66 7374 6162 2022 2f68 6f6d  nt --fstab "/hom
│ │ │ -001b9040: 6522 2026 6774 3b20 2f64 6576 2f6e 756c  e" > /dev/nul
│ │ │ -001b9050: 6c20 293b 207d 3b20 7468 656e 0a0a 6675  l ); }; then..fu
│ │ │ -001b9060: 6e63 7469 6f6e 2070 6572 666f 726d 5f72  nction perform_r
│ │ │ -001b9070: 656d 6564 6961 7469 6f6e 207b 0a0a 2020  emediation {..  
│ │ │ -001b9080: 2020 0a20 2020 2020 2020 2023 2074 6865    .        # the
│ │ │ -001b9090: 206d 6f75 6e74 2070 6f69 6e74 202f 686f   mount point /ho
│ │ │ -001b90a0: 6d65 2068 6173 2074 6f20 6265 2064 6566  me has to be def
│ │ │ -001b90b0: 696e 6564 2069 6e20 2f65 7463 2f66 7374  ined in /etc/fst
│ │ │ -001b90c0: 6162 0a20 2020 2020 2020 2023 2062 6566  ab.        # bef
│ │ │ -001b90d0: 6f72 6520 7468 6973 2072 656d 6564 6961  ore this remedia
│ │ │ -001b90e0: 7469 6f6e 2063 616e 2062 6520 6578 6563  tion can be exec
│ │ │ -001b90f0: 7574 6564 2e20 496e 2063 6173 6520 6974  uted. In case it
│ │ │ -001b9100: 2069 7320 6e6f 7420 6465 6669 6e65 642c   is not defined,
│ │ │ -001b9110: 2074 6865 0a20 2020 2020 2020 2023 2072   the.        # r
│ │ │ -001b9120: 656d 6564 6961 7469 6f6e 2061 626f 7274  emediation abort
│ │ │ -001b9130: 7320 616e 6420 6e6f 2063 6861 6e67 6573  s and no changes
│ │ │ -001b9140: 2072 6567 6172 6469 6e67 2074 6865 206d   regarding the m
│ │ │ -001b9150: 6f75 6e74 2070 6f69 6e74 2061 7265 2064  ount point are d
│ │ │ -001b9160: 6f6e 652e 0a20 2020 2020 2020 206d 6f75  one..        mou
│ │ │ -001b9170: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001b9180: 6567 6578 703d 2224 2870 7269 6e74 6620  egexp="$(printf 
│ │ │ -001b9190: 225e 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e  "^[[:space:]]*[^
│ │ │ -001b91a0: 235d 2e2a 5b5b 3a73 7061 6365 3a5d 5d25  #].*[[:space:]]%
│ │ │ -001b91b0: 735b 5b3a 7370 6163 653a 5d5d 2220 222f  s[[:space:]]" "/
│ │ │ -001b91c0: 686f 6d65 2229 220a 0a20 2020 2067 7265  home")"..    gre
│ │ │ -001b91d0: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001b91e0: 6d61 7463 685f 7265 6765 7870 2220 2d71  match_regexp" -q
│ │ │ -001b91f0: 202f 6574 632f 6673 7461 6220 5c0a 2020   /etc/fstab \.  
│ │ │ -001b9200: 2020 2020 2020 7c7c 207b 2065 6368 6f20        || { echo 
│ │ │ -001b9210: 2254 6865 206d 6f75 6e74 2070 6f69 6e74  "The mount point
│ │ │ -001b9220: 2027 2f68 6f6d 6527 2069 7320 6e6f 7420   '/home' is not 
│ │ │ -001b9230: 6576 656e 2069 6e20 2f65 7463 2f66 7374  even in /etc/fst
│ │ │ -001b9240: 6162 2c20 736f 2077 6520 6361 6e27 7420  ab, so we can't 
│ │ │ -001b9250: 7365 7420 7570 206d 6f75 6e74 206f 7074  set up mount opt
│ │ │ -001b9260: 696f 6e73 2220 2667 743b 2661 6d70 3b32  ions" >&2
│ │ │ -001b9270: 3b0a 2020 2020 2020 2020 2020 2020 2020  ;.              
│ │ │ -001b9280: 2020 6563 686f 2022 4e6f 7420 7265 6d65    echo "Not reme
│ │ │ -001b9290: 6469 6174 696e 672c 2062 6563 6175 7365  diating, because
│ │ │ -001b92a0: 2074 6865 7265 2069 7320 6e6f 2072 6563   there is no rec
│ │ │ -001b92b0: 6f72 6420 6f66 202f 686f 6d65 2069 6e20  ord of /home in 
│ │ │ -001b92c0: 2f65 7463 2f66 7374 6162 2220 2667 743b  /etc/fstab" >
│ │ │ -001b92d0: 2661 6d70 3b32 3b20 7265 7475 726e 2031  &2; return 1
│ │ │ -001b92e0: 3b20 7d0a 2020 2020 0a0a 0a20 2020 206d  ; }.    ...    m
│ │ │ -001b92f0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001b9300: 5f72 6567 6578 703d 2224 2870 7269 6e74  _regexp="$(print
│ │ │ -001b9310: 6620 225e 5b5b 3a73 7061 6365 3a5d 5d2a  f "^[[:space:]]*
│ │ │ -001b9320: 5b5e 235d 2e2a 5b5b 3a73 7061 6365 3a5d  [^#].*[[:space:]
│ │ │ -001b9330: 5d25 735b 5b3a 7370 6163 653a 5d5d 2220  ]%s[[:space:]]" 
│ │ │ -001b9340: 2f68 6f6d 6529 220a 0a20 2020 2023 2049  /home)"..    # I
│ │ │ -001b9350: 6620 7468 6520 6d6f 756e 7420 706f 696e  f the mount poin
│ │ │ -001b9360: 7420 6973 206e 6f74 2069 6e20 2f65 7463  t is not in /etc
│ │ │ -001b9370: 2f66 7374 6162 2c20 6765 7420 7072 6576  /fstab, get prev
│ │ │ -001b9380: 696f 7573 206d 6f75 6e74 206f 7074 696f  ious mount optio
│ │ │ -001b9390: 6e73 2066 726f 6d20 2f65 7463 2f6d 7461  ns from /etc/mta
│ │ │ -001b93a0: 620a 2020 2020 6966 2021 2067 7265 7020  b.    if ! grep 
│ │ │ -001b93b0: 2d71 2022 246d 6f75 6e74 5f70 6f69 6e74  -q "$mount_point
│ │ │ -001b93c0: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ -001b93d0: 6574 632f 6673 7461 623b 2074 6865 6e0a  etc/fstab; then.
│ │ │ -001b93e0: 2020 2020 2020 2020 2320 7275 6e74 696d          # runtim
│ │ │ -001b93f0: 6520 6f70 7473 2077 6974 686f 7574 2073  e opts without s
│ │ │ -001b9400: 6f6d 6520 6175 746f 6d61 7469 6320 6b65  ome automatic ke
│ │ │ -001b9410: 726e 656c 2f75 7365 7273 7061 6365 2d61  rnel/userspace-a
│ │ │ -001b9420: 6464 6564 2064 6566 6175 6c74 730a 2020  dded defaults.  
│ │ │ -001b9430: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ -001b9440: 6f75 6e74 5f6f 7074 733d 2428 6772 6570  ount_opts=$(grep
│ │ │ -001b9450: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -001b9460: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ -001b9470: 632f 6d74 6162 207c 2068 6561 6420 2d31  c/mtab | head -1
│ │ │ -001b9480: 207c 2020 6177 6b20 277b 7072 696e 7420   |  awk '{print 
│ │ │ -001b9490: 2434 7d27 205c 0a20 2020 2020 2020 2020  $4}' \.         
│ │ │ -001b94a0: 2020 2020 2020 2020 2020 207c 2073 6564             | sed
│ │ │ -001b94b0: 202d 4520 2273 2f28 7277 7c64 6566 6175   -E "s/(rw|defau
│ │ │ -001b94c0: 6c74 737c 7365 636c 6162 656c 7c6e 6f64  lts|seclabel|nod
│ │ │ -001b94d0: 6576 2928 2c7c 2429 2f2f 673b 732f 2c24  ev)(,|$)//g;s/,$
│ │ │ -001b94e0: 2f2f 2229 0a20 2020 2020 2020 205b 2022  //").        [ "
│ │ │ -001b94f0: 2470 7265 7669 6f75 735f 6d6f 756e 745f  $previous_mount_
│ │ │ -001b9500: 6f70 7473 2220 5d20 2661 6d70 3b26 616d  opts" ] &&am
│ │ │ -001b9510: 703b 2070 7265 7669 6f75 735f 6d6f 756e  p; previous_moun
│ │ │ -001b9520: 745f 6f70 7473 2b3d 222c 220a 2020 2020  t_opts+=",".    
│ │ │ -001b9530: 2020 2020 2320 496e 2069 736f 3936 3630      # In iso9660
│ │ │ -001b9540: 2066 696c 6573 7973 7465 6d73 206d 7461   filesystems mta
│ │ │ -001b9550: 6220 636f 756c 6420 6465 7363 7269 6265  b could describe
│ │ │ -001b9560: 2061 2022 626c 6f63 6b73 697a 6522 2076   a "blocksize" v
│ │ │ -001b9570: 616c 7565 2c20 7468 6973 2073 686f 756c  alue, this shoul
│ │ │ -001b9580: 6420 6265 2072 6566 6c65 6374 6564 2069  d be reflected i
│ │ │ -001b9590: 6e0a 2020 2020 2020 2020 2320 6673 7461  n.        # fsta
│ │ │ -001b95a0: 6220 6173 2022 626c 6f63 6b22 2e20 2054  b as "block".  T
│ │ │ -001b95b0: 6865 206e 6578 7420 7661 7269 6162 6c65  he next variable
│ │ │ -001b95c0: 2069 7320 746f 2073 6174 6973 6679 2073   is to satisfy s
│ │ │ -001b95d0: 6865 6c6c 6368 6563 6b20 5343 3230 3530  hellcheck SC2050
│ │ │ -001b95e0: 2e0a 2020 2020 2020 2020 6673 5f74 7970  ..        fs_typ
│ │ │ -001b95f0: 653d 2222 0a20 2020 2020 2020 2069 6620  e="".        if 
│ │ │ -001b9600: 5b20 2022 2466 735f 7479 7065 2220 3d3d  [  "$fs_type" ==
│ │ │ -001b9610: 2022 6973 6f39 3636 3022 205d 203b 2074   "iso9660" ] ; t
│ │ │ -001b9620: 6865 6e0a 2020 2020 2020 2020 2020 2020  hen.            
│ │ │ -001b9630: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001b9640: 7074 733d 2428 7365 6420 2773 2f62 6c6f  pts=$(sed 's/blo
│ │ │ -001b9650: 636b 7369 7a65 3d2f 626c 6f63 6b3d 2f27  cksize=/block=/'
│ │ │ -001b9660: 2026 6c74 3b26 6c74 3b26 6c74 3b20 2224   <<< "$
│ │ │ -001b9670: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001b9680: 7074 7322 290a 2020 2020 2020 2020 6669  pts").        fi
│ │ │ -001b9690: 0a20 2020 2020 2020 2065 6368 6f20 2220  .        echo " 
│ │ │ -001b96a0: 2f68 6f6d 6520 2064 6566 6175 6c74 732c  /home  defaults,
│ │ │ -001b96b0: 247b 7072 6576 696f 7573 5f6d 6f75 6e74  ${previous_mount
│ │ │ -001b96c0: 5f6f 7074 737d 6e6f 6465 7620 3020 3022  _opts}nodev 0 0"
│ │ │ -001b96d0: 2026 6774 3b26 6774 3b20 2f65 7463 2f66   >> /etc/f
│ │ │ -001b96e0: 7374 6162 0a20 2020 2023 2049 6620 7468  stab.    # If th
│ │ │ -001b96f0: 6520 6d6f 756e 745f 6f70 7420 6f70 7469  e mount_opt opti
│ │ │ -001b9700: 6f6e 2069 7320 6e6f 7420 616c 7265 6164  on is not alread
│ │ │ -001b9710: 7920 696e 2074 6865 206d 6f75 6e74 2070  y in the mount p
│ │ │ -001b9720: 6f69 6e74 2773 202f 6574 632f 6673 7461  oint's /etc/fsta
│ │ │ -001b9730: 6220 656e 7472 792c 2061 6464 2069 740a  b entry, add it.
│ │ │ -001b9740: 2020 2020 656c 6966 2021 2067 7265 7020      elif ! grep 
│ │ │ -001b9750: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ -001b9760: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ -001b9770: 2f66 7374 6162 207c 2067 7265 7020 2d71  /fstab | grep -q
│ │ │ -001b9780: 2022 6e6f 6465 7622 3b20 7468 656e 0a20   "nodev"; then. 
│ │ │ -001b9790: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ -001b97a0: 6d6f 756e 745f 6f70 7473 3d24 2867 7265  mount_opts=$(gre
│ │ │ -001b97b0: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001b97c0: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ -001b97d0: 7463 2f66 7374 6162 207c 2061 776b 2027  tc/fstab | awk '
│ │ │ -001b97e0: 7b70 7269 6e74 2024 347d 2729 0a20 2020  {print $4}').   
│ │ │ -001b97f0: 2020 2020 2073 6564 202d 6920 2273 7c5c       sed -i "s|\
│ │ │ -001b9800: 2824 7b6d 6f75 6e74 5f70 6f69 6e74 5f6d  (${mount_point_m
│ │ │ -001b9810: 6174 6368 5f72 6567 6578 707d 2e2a 247b  atch_regexp}.*${
│ │ │ -001b9820: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001b9830: 7074 737d 5c29 7c5c 312c 6e6f 6465 767c  pts}\)|\1,nodev|
│ │ │ -001b9840: 2220 2f65 7463 2f66 7374 6162 0a20 2020  " /etc/fstab.   
│ │ │ -001b9850: 2066 690a 0a0a 2020 2020 6966 206d 6b64   fi...    if mkd
│ │ │ -001b9860: 6972 202d 7020 222f 686f 6d65 223b 2074  ir -p "/home"; t
│ │ │ -001b9870: 6865 6e0a 2020 2020 2020 2020 6966 206d  hen.        if m
│ │ │ -001b9880: 6f75 6e74 706f 696e 7420 2d71 2022 2f68  ountpoint -q "/h
│ │ │ -001b9890: 6f6d 6522 3b20 7468 656e 0a20 2020 2020  ome"; then.     
│ │ │ -001b98a0: 2020 2020 2020 206d 6f75 6e74 202d 6f20         mount -o 
│ │ │ -001b98b0: 7265 6d6f 756e 7420 2d2d 7461 7267 6574  remount --target
│ │ │ -001b98c0: 2022 2f68 6f6d 6522 0a20 2020 2020 2020   "/home".       
│ │ │ -001b98d0: 2066 690a 2020 2020 6669 0a7d 0a0a 7065   fi.    fi.}..pe
│ │ │ -001b98e0: 7266 6f72 6d5f 7265 6d65 6469 6174 696f  rform_remediatio
│ │ │ -001b98f0: 6e0a 0a65 6c73 650a 2020 2020 2667 743b  n..else.    >
│ │ │ -001b9900: 2661 6d70 3b32 2065 6368 6f20 2752 656d  &2 echo 'Rem
│ │ │ -001b9910: 6564 6961 7469 6f6e 2069 7320 6e6f 7420  ediation is not 
│ │ │ -001b9920: 6170 706c 6963 6162 6c65 2c20 6e6f 7468  applicable, noth
│ │ │ -001b9930: 696e 6720 7761 7320 646f 6e65 270a 6669  ing was done'.fi
│ │ │ +001b7620: 416e 7369 626c 6520 736e 6970 7065 7420  Ansible snippet 
│ │ │ +001b7630: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620  ...
Complexity: │ │ │ +001b76c0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +001b76e0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:high │ │ │ +001b7700: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +001b7710: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +001b7730: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:configure< │ │ │ +001b7750: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
- name: G
│ │ │ +001b7770: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ +001b7780: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ +001b7790: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ +001b77a0: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ +001b77b0: 733a 0a20 202d 2063 6f6e 6669 6775 7265  s:.  - configure
│ │ │ +001b77c0: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +001b77d0: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +001b77e0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +001b77f0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ +001b7800: 6e5f 686f 6d65 5f6e 6f64 6576 0a20 202d  n_home_nodev.  -
│ │ │ +001b7810: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +001b7820: 640a 2020 2d20 756e 6b6e 6f77 6e5f 7365  d.  - unknown_se
│ │ │ +001b7830: 7665 7269 7479 0a0a 2d20 6e61 6d65 3a20  verity..- name: 
│ │ │ +001b7840: 2741 6464 206e 6f64 6576 204f 7074 696f  'Add nodev Optio
│ │ │ +001b7850: 6e20 746f 202f 686f 6d65 3a20 4368 6563  n to /home: Chec
│ │ │ +001b7860: 6b20 696e 666f 726d 6174 696f 6e20 6173  k information as
│ │ │ +001b7870: 736f 6369 6174 6564 2074 6f20 6d6f 756e  sociated to moun
│ │ │ +001b7880: 7470 6f69 6e74 270a 2020 616e 7369 626c  tpoint'.  ansibl
│ │ │ +001b7890: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ +001b78a0: 643a 2066 696e 646d 6e74 202d 2d66 7374  d: findmnt --fst
│ │ │ +001b78b0: 6162 2027 2f68 6f6d 6527 0a20 2072 6567  ab '/home'.  reg
│ │ │ +001b78c0: 6973 7465 723a 2064 6576 6963 655f 6e61  ister: device_na
│ │ │ +001b78d0: 6d65 0a20 2066 6169 6c65 645f 7768 656e  me.  failed_when
│ │ │ +001b78e0: 3a20 6465 7669 6365 5f6e 616d 652e 7263  : device_name.rc
│ │ │ +001b78f0: 2026 6774 3b20 310a 2020 6368 616e 6765   > 1.  change
│ │ │ +001b7900: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ +001b7910: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73  check_mode: fals
│ │ │ +001b7920: 650a 2020 7768 656e 3a0a 2020 2d20 2820  e.  when:.  - ( 
│ │ │ +001b7930: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ +001b7940: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001b7950: 7061 636b 6167 6573 2061 6e64 2022 7270  packages and "rp
│ │ │ +001b7960: 6d2d 6f73 7472 6565 2220 696e 2061 6e73  m-ostree" in ans
│ │ │ +001b7970: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001b7980: 6765 730a 2020 2020 616e 6420 2262 6f6f  ges.    and "boo
│ │ │ +001b7990: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ +001b79a0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001b79b0: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ +001b79c0: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ +001b79d0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001b79e0: 6765 730a 2020 2020 616e 6420 226f 7374  ges.    and "ost
│ │ │ +001b79f0: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001b7a00: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061  proc_cmdline ) a
│ │ │ +001b7a10: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ +001b7a20: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ +001b7a30: 7479 7065 2069 6e0a 2020 2020 5b22 646f  type in.    ["do
│ │ │ +001b7a40: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ +001b7a50: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ +001b7a60: 2c20 2263 6f6e 7461 696e 6572 225d 2029  , "container"] )
│ │ │ +001b7a70: 2029 0a20 202d 2027 222f 686f 6d65 2220   ).  - '"/home" 
│ │ │ +001b7a80: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ +001b7a90: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ +001b7aa0: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ +001b7ab0: 7427 0a20 2074 6167 733a 0a20 202d 2063  t'.  tags:.  - c
│ │ │ +001b7ac0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +001b7ad0: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +001b7ae0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +001b7af0: 6d70 6c65 7869 7479 0a20 202d 206d 6f75  mplexity.  - mou
│ │ │ +001b7b00: 6e74 5f6f 7074 696f 6e5f 686f 6d65 5f6e  nt_option_home_n
│ │ │ +001b7b10: 6f64 6576 0a20 202d 206e 6f5f 7265 626f  odev.  - no_rebo
│ │ │ +001b7b20: 6f74 5f6e 6565 6465 640a 2020 2d20 756e  ot_needed.  - un
│ │ │ +001b7b30: 6b6e 6f77 6e5f 7365 7665 7269 7479 0a0a  known_severity..
│ │ │ +001b7b40: 2d20 6e61 6d65 3a20 2741 6464 206e 6f64  - name: 'Add nod
│ │ │ +001b7b50: 6576 204f 7074 696f 6e20 746f 202f 686f  ev Option to /ho
│ │ │ +001b7b60: 6d65 3a20 4372 6561 7465 206d 6f75 6e74  me: Create mount
│ │ │ +001b7b70: 5f69 6e66 6f20 6469 6374 696f 6e61 7279  _info dictionary
│ │ │ +001b7b80: 2076 6172 6961 626c 6527 0a20 2073 6574   variable'.  set
│ │ │ +001b7b90: 5f66 6163 743a 0a20 2020 206d 6f75 6e74  _fact:.    mount
│ │ │ +001b7ba0: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74  _info: '{{ mount
│ │ │ +001b7bb0: 5f69 6e66 6f7c 6465 6661 756c 7428 7b7d  _info|default({}
│ │ │ +001b7bc0: 297c 636f 6d62 696e 6528 7b69 7465 6d2e  )|combine({item.
│ │ │ +001b7bd0: 303a 2069 7465 6d2e 317d 2920 7d7d 270a  0: item.1}) }}'.
│ │ │ +001b7be0: 2020 7769 7468 5f74 6f67 6574 6865 723a    with_together:
│ │ │ +001b7bf0: 0a20 202d 2027 7b7b 2064 6576 6963 655f  .  - '{{ device_
│ │ │ +001b7c00: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ +001b7c10: 735b 305d 2e73 706c 6974 2829 207c 206d  s[0].split() | m
│ │ │ +001b7c20: 6170 2827 276c 6f77 6572 2727 2920 7c20  ap(''lower'') | 
│ │ │ +001b7c30: 6c69 7374 207d 7d27 0a20 202d 2027 7b7b  list }}'.  - '{{
│ │ │ +001b7c40: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +001b7c50: 6f75 745f 6c69 6e65 735b 315d 2e73 706c  out_lines[1].spl
│ │ │ +001b7c60: 6974 2829 207c 206c 6973 7420 7d7d 270a  it() | list }}'.
│ │ │ +001b7c70: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ +001b7c80: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ +001b7c90: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001b7ca0: 636b 6167 6573 2061 6e64 2022 7270 6d2d  ckages and "rpm-
│ │ │ +001b7cb0: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001b7cc0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001b7cd0: 730a 2020 2020 616e 6420 2262 6f6f 7463  s.    and "bootc
│ │ │ +001b7ce0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001b7cf0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001b7d00: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ +001b7d10: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ +001b7d20: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001b7d30: 730a 2020 2020 616e 6420 226f 7374 7265  s.    and "ostre
│ │ │ +001b7d40: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ +001b7d50: 6f63 5f63 6d64 6c69 6e65 2029 2061 6e64  oc_cmdline ) and
│ │ │ +001b7d60: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ +001b7d70: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ +001b7d80: 7065 2069 6e0a 2020 2020 5b22 646f 636b  pe in.    ["dock
│ │ │ +001b7d90: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ +001b7da0: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c20  nvz", "podman", 
│ │ │ +001b7db0: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ +001b7dc0: 0a20 202d 2027 222f 686f 6d65 2220 696e  .  - '"/home" in
│ │ │ +001b7dd0: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ +001b7de0: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ +001b7df0: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ +001b7e00: 0a20 202d 2064 6576 6963 655f 6e61 6d65  .  - device_name
│ │ │ +001b7e10: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ +001b7e20: 6564 2061 6e64 2064 6576 6963 655f 6e61  ed and device_na
│ │ │ +001b7e30: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320  me.stdout_lines 
│ │ │ +001b7e40: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ +001b7e50: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001b7e60: 7574 207c 206c 656e 6774 6820 2667 743b  ut | length >
│ │ │ +001b7e70: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ +001b7e80: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +001b7e90: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +001b7ea0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +001b7eb0: 6f6d 706c 6578 6974 790a 2020 2d20 6d6f  omplexity.  - mo
│ │ │ +001b7ec0: 756e 745f 6f70 7469 6f6e 5f68 6f6d 655f  unt_option_home_
│ │ │ +001b7ed0: 6e6f 6465 760a 2020 2d20 6e6f 5f72 6562  nodev.  - no_reb
│ │ │ +001b7ee0: 6f6f 745f 6e65 6564 6564 0a20 202d 2075  oot_needed.  - u
│ │ │ +001b7ef0: 6e6b 6e6f 776e 5f73 6576 6572 6974 790a  nknown_severity.
│ │ │ +001b7f00: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ +001b7f10: 6465 7620 4f70 7469 6f6e 2074 6f20 2f68  dev Option to /h
│ │ │ +001b7f20: 6f6d 653a 2049 6620 2f68 6f6d 6520 6e6f  ome: If /home no
│ │ │ +001b7f30: 7420 6d6f 756e 7465 642c 2063 7261 6674  t mounted, craft
│ │ │ +001b7f40: 206d 6f75 6e74 5f69 6e66 6f20 6d61 6e75   mount_info manu
│ │ │ +001b7f50: 616c 6c79 270a 2020 7365 745f 6661 6374  ally'.  set_fact
│ │ │ +001b7f60: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ +001b7f70: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001b7f80: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d  |default({})|com
│ │ │ +001b7f90: 6269 6e65 287b 6974 656d 2e30 3a20 6974  bine({item.0: it
│ │ │ +001b7fa0: 656d 2e31 7d29 207d 7d27 0a20 2077 6974  em.1}) }}'.  wit
│ │ │ +001b7fb0: 685f 746f 6765 7468 6572 3a0a 2020 2d20  h_together:.  - 
│ │ │ +001b7fc0: 2d20 7461 7267 6574 0a20 2020 202d 2073  - target.    - s
│ │ │ +001b7fd0: 6f75 7263 650a 2020 2020 2d20 6673 7479  ource.    - fsty
│ │ │ +001b7fe0: 7065 0a20 2020 202d 206f 7074 696f 6e73  pe.    - options
│ │ │ +001b7ff0: 0a20 202d 202d 202f 686f 6d65 0a20 2020  .  - - /home.   
│ │ │ +001b8000: 202d 2027 270a 2020 2020 2d20 2727 0a20   - ''.    - ''. 
│ │ │ +001b8010: 2020 202d 2064 6566 6175 6c74 730a 2020     - defaults.  
│ │ │ +001b8020: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ +001b8030: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ +001b8040: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001b8050: 6167 6573 2061 6e64 2022 7270 6d2d 6f73  ages and "rpm-os
│ │ │ +001b8060: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001b8070: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001b8080: 2020 2020 616e 6420 2262 6f6f 7463 2220      and "bootc" 
│ │ │ +001b8090: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001b80a0: 2e70 6163 6b61 6765 7320 616e 6420 6e6f  .packages and no
│ │ │ +001b80b0: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ +001b80c0: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ +001b80d0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001b80e0: 2020 2020 616e 6420 226f 7374 7265 6522      and "ostree"
│ │ │ +001b80f0: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ +001b8100: 5f63 6d64 6c69 6e65 2029 2061 6e64 206e  _cmdline ) and n
│ │ │ +001b8110: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ +001b8120: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ +001b8130: 2069 6e0a 2020 2020 5b22 646f 636b 6572   in.    ["docker
│ │ │ +001b8140: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ +001b8150: 7a22 2c20 2270 6f64 6d61 6e22 2c20 2263  z", "podman", "c
│ │ │ +001b8160: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ +001b8170: 202d 2027 222f 686f 6d65 2220 696e 2061   - '"/home" in a
│ │ │ +001b8180: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ +001b8190: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ +001b81a0: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ +001b81b0: 202d 2028 222d 2d66 7374 6162 2220 7c20   - ("--fstab" | 
│ │ │ +001b81c0: 6c65 6e67 7468 203d 3d20 3029 0a20 202d  length == 0).  -
│ │ │ +001b81d0: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +001b81e0: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ +001b81f0: 6e64 2064 6576 6963 655f 6e61 6d65 2e73  nd device_name.s
│ │ │ +001b8200: 7464 6f75 745f 6c69 6e65 7320 6973 2064  tdout_lines is d
│ │ │ +001b8210: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ +001b8220: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ +001b8230: 206c 656e 6774 6820 3d3d 2030 290a 2020   length == 0).  
│ │ │ +001b8240: 7461 6773 3a0a 2020 2d20 636f 6e66 6967  tags:.  - config
│ │ │ +001b8250: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +001b8260: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ +001b8270: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001b8280: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ +001b8290: 7469 6f6e 5f68 6f6d 655f 6e6f 6465 760a  tion_home_nodev.
│ │ │ +001b82a0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001b82b0: 6564 6564 0a20 202d 2075 6e6b 6e6f 776e  eded.  - unknown
│ │ │ +001b82c0: 5f73 6576 6572 6974 790a 0a2d 206e 616d  _severity..- nam
│ │ │ +001b82d0: 653a 2027 4164 6420 6e6f 6465 7620 4f70  e: 'Add nodev Op
│ │ │ +001b82e0: 7469 6f6e 2074 6f20 2f68 6f6d 653a 204d  tion to /home: M
│ │ │ +001b82f0: 616b 6520 7375 7265 206e 6f64 6576 206f  ake sure nodev o
│ │ │ +001b8300: 7074 696f 6e20 6973 2070 6172 7420 6f66  ption is part of
│ │ │ +001b8310: 2074 6865 2074 6f20 2f68 6f6d 650a 2020   the to /home.  
│ │ │ +001b8320: 2020 6f70 7469 6f6e 7327 0a20 2073 6574    options'.  set
│ │ │ +001b8330: 5f66 6163 743a 0a20 2020 206d 6f75 6e74  _fact:.    mount
│ │ │ +001b8340: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74  _info: '{{ mount
│ │ │ +001b8350: 5f69 6e66 6f20 7c20 636f 6d62 696e 6528  _info | combine(
│ │ │ +001b8360: 207b 2727 6f70 7469 6f6e 7327 273a 2727   {''options'':''
│ │ │ +001b8370: 2727 7e28 6d6f 756e 745f 696e 666f 2e6f  ''~(mount_info.o
│ │ │ +001b8380: 7074 696f 6e73 207c 0a20 2020 2020 2064  ptions |.      d
│ │ │ +001b8390: 6566 6175 6c74 2827 2727 2729 297e 2827  efault(''''))~('
│ │ │ +001b83a0: 272c 2727 2069 6620 286d 6f75 6e74 5f69  ','' if (mount_i
│ │ │ +001b83b0: 6e66 6f2e 6f70 7469 6f6e 7320 7c20 6465  nfo.options | de
│ │ │ +001b83c0: 6661 756c 7428 2727 2727 2929 2065 6c73  fault('''')) els
│ │ │ +001b83d0: 6520 2727 2727 297e 2727 6e6f 6465 7627  e '''')~''nodev'
│ │ │ +001b83e0: 270a 2020 2020 2020 7d29 207d 7d27 0a20  '.      }) }}'. 
│ │ │ +001b83f0: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ +001b8400: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ +001b8410: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001b8420: 6b61 6765 7320 616e 6420 2272 706d 2d6f  kages and "rpm-o
│ │ │ +001b8430: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001b8440: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001b8450: 0a20 2020 2061 6e64 2022 626f 6f74 6322  .    and "bootc"
│ │ │ +001b8460: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001b8470: 732e 7061 636b 6167 6573 2061 6e64 206e  s.packages and n
│ │ │ +001b8480: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ +001b8490: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ +001b84a0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001b84b0: 0a20 2020 2061 6e64 2022 6f73 7472 6565  .    and "ostree
│ │ │ +001b84c0: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ +001b84d0: 635f 636d 646c 696e 6520 2920 616e 6420  c_cmdline ) and 
│ │ │ +001b84e0: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ +001b84f0: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ +001b8500: 6520 696e 0a20 2020 205b 2264 6f63 6b65  e in.    ["docke
│ │ │ +001b8510: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ +001b8520: 767a 222c 2022 706f 646d 616e 222c 2022  vz", "podman", "
│ │ │ +001b8530: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ +001b8540: 2020 2d20 2722 2f68 6f6d 6522 2069 6e20    - '"/home" in 
│ │ │ +001b8550: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ +001b8560: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ +001b8570: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ +001b8580: 2020 2d20 6d6f 756e 745f 696e 666f 2069    - mount_info i
│ │ │ +001b8590: 7320 6465 6669 6e65 6420 616e 6420 226e  s defined and "n
│ │ │ +001b85a0: 6f64 6576 2220 6e6f 7420 696e 2028 6d6f  odev" not in (mo
│ │ │ +001b85b0: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ +001b85c0: 207c 2064 6566 6175 6c74 2827 2729 290a   | default('')).
│ │ │ +001b85d0: 2020 7461 6773 3a0a 2020 2d20 636f 6e66    tags:.  - conf
│ │ │ +001b85e0: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +001b85f0: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ +001b8600: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ +001b8610: 6578 6974 790a 2020 2d20 6d6f 756e 745f  exity.  - mount_
│ │ │ +001b8620: 6f70 7469 6f6e 5f68 6f6d 655f 6e6f 6465  option_home_node
│ │ │ +001b8630: 760a 2020 2d20 6e6f 5f72 6562 6f6f 745f  v.  - no_reboot_
│ │ │ +001b8640: 6e65 6564 6564 0a20 202d 2075 6e6b 6e6f  needed.  - unkno
│ │ │ +001b8650: 776e 5f73 6576 6572 6974 790a 0a2d 206e  wn_severity..- n
│ │ │ +001b8660: 616d 653a 2027 4164 6420 6e6f 6465 7620  ame: 'Add nodev 
│ │ │ +001b8670: 4f70 7469 6f6e 2074 6f20 2f68 6f6d 653a  Option to /home:
│ │ │ +001b8680: 2045 6e73 7572 6520 2f68 6f6d 6520 6973   Ensure /home is
│ │ │ +001b8690: 206d 6f75 6e74 6564 2077 6974 6820 6e6f   mounted with no
│ │ │ +001b86a0: 6465 7620 6f70 7469 6f6e 270a 2020 616e  dev option'.  an
│ │ │ +001b86b0: 7369 626c 652e 706f 7369 782e 6d6f 756e  sible.posix.moun
│ │ │ +001b86c0: 743a 0a20 2020 2070 6174 683a 202f 686f  t:.    path: /ho
│ │ │ +001b86d0: 6d65 0a20 2020 2073 7263 3a20 277b 7b20  me.    src: '{{ 
│ │ │ +001b86e0: 6d6f 756e 745f 696e 666f 2e73 6f75 7263  mount_info.sourc
│ │ │ +001b86f0: 6520 7c20 6465 6661 756c 7428 2727 2727  e | default(''''
│ │ │ +001b8700: 2920 7d7d 270a 2020 2020 6f70 7473 3a20  ) }}'.    opts: 
│ │ │ +001b8710: 277b 7b20 6d6f 756e 745f 696e 666f 2e6f  '{{ mount_info.o
│ │ │ +001b8720: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ +001b8730: 2827 2727 2729 207d 7d27 0a20 2020 2073  ('''') }}'.    s
│ │ │ +001b8740: 7461 7465 3a20 6d6f 756e 7465 640a 2020  tate: mounted.  
│ │ │ +001b8750: 2020 6673 7479 7065 3a20 277b 7b20 6d6f    fstype: '{{ mo
│ │ │ +001b8760: 756e 745f 696e 666f 2e66 7374 7970 6520  unt_info.fstype 
│ │ │ +001b8770: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ +001b8780: 7d7d 270a 2020 7265 6769 7374 6572 3a20  }}'.  register: 
│ │ │ +001b8790: 6d6f 756e 745f 7265 7375 6c74 0a20 2066  mount_result.  f
│ │ │ +001b87a0: 6169 6c65 645f 7768 656e 3a0a 2020 2d20  ailed_when:.  - 
│ │ │ +001b87b0: 6d6f 756e 745f 7265 7375 6c74 2069 7320  mount_result is 
│ │ │ +001b87c0: 6661 696c 6564 0a20 202d 2027 2727 7461  failed.  - '''ta
│ │ │ +001b87d0: 7267 6574 2069 7320 6275 7379 2727 206e  rget is busy'' n
│ │ │ +001b87e0: 6f74 2069 6e20 286d 6f75 6e74 5f72 6573  ot in (mount_res
│ │ │ +001b87f0: 756c 742e 6d73 6720 7c20 6465 6661 756c  ult.msg | defaul
│ │ │ +001b8800: 7428 2727 2727 2929 270a 2020 2d20 2727  t(''''))'.  - ''
│ │ │ +001b8810: 2761 6c72 6561 6479 206d 6f75 6e74 6564  'already mounted
│ │ │ +001b8820: 2727 206e 6f74 2069 6e20 286d 6f75 6e74  '' not in (mount
│ │ │ +001b8830: 5f72 6573 756c 742e 6d73 6720 7c20 6465  _result.msg | de
│ │ │ +001b8840: 6661 756c 7428 2727 2727 2929 270a 2020  fault(''''))'.  
│ │ │ +001b8850: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ +001b8860: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ +001b8870: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001b8880: 6167 6573 2061 6e64 2022 7270 6d2d 6f73  ages and "rpm-os
│ │ │ +001b8890: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001b88a0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001b88b0: 2020 2020 616e 6420 2262 6f6f 7463 2220      and "bootc" 
│ │ │ +001b88c0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001b88d0: 2e70 6163 6b61 6765 7320 616e 6420 6e6f  .packages and no
│ │ │ +001b88e0: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ +001b88f0: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ +001b8900: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001b8910: 2020 2020 616e 6420 226f 7374 7265 6522      and "ostree"
│ │ │ +001b8920: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ +001b8930: 5f63 6d64 6c69 6e65 2029 2061 6e64 206e  _cmdline ) and n
│ │ │ +001b8940: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ +001b8950: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ +001b8960: 2069 6e0a 2020 2020 5b22 646f 636b 6572   in.    ["docker
│ │ │ +001b8970: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ +001b8980: 7a22 2c20 2270 6f64 6d61 6e22 2c20 2263  z", "podman", "c
│ │ │ +001b8990: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ +001b89a0: 202d 2027 222f 686f 6d65 2220 696e 2061   - '"/home" in a
│ │ │ +001b89b0: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ +001b89c0: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ +001b89d0: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ +001b89e0: 202d 206d 6f75 6e74 5f69 6e66 6f20 6973   - mount_info is
│ │ │ +001b89f0: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ +001b8a00: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001b8a10: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ +001b8a20: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ +001b8a30: 6f75 7420 7c20 6c65 6e67 7468 2026 6774  out | length >
│ │ │ +001b8a40: 3b20 3029 2920 6f72 2028 222d 2d66 7374  ; 0)) or ("--fst
│ │ │ +001b8a50: 6162 220a 2020 2020 7c20 6c65 6e67 7468  ab".    | length
│ │ │ +001b8a60: 203d 3d20 3029 0a20 2074 6167 733a 0a20   == 0).  tags:. 
│ │ │ +001b8a70: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ +001b8a80: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ +001b8a90: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +001b8aa0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +001b8ab0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 686f   mount_option_ho
│ │ │ +001b8ac0: 6d65 5f6e 6f64 6576 0a20 202d 206e 6f5f  me_nodev.  - no_
│ │ │ +001b8ad0: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ +001b8ae0: 2d20 756e 6b6e 6f77 6e5f 7365 7665 7269  - unknown_severi
│ │ │ +001b8af0: 7479 0a3c 2f63 6f64 653e 3c2f 7072 653e  ty.
│ │ │ +001b8b00: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation S │ │ │ +001b8bb0: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ +001b8bc0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ +001b8c60: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Reboot:false
# Remediation
│ │ │ +001b8c80: 2069 7320 6170 706c 6963 6162 6c65 206f   is applicable o
│ │ │ +001b8c90: 6e6c 7920 696e 2063 6572 7461 696e 2070  nly in certain p
│ │ │ +001b8ca0: 6c61 7466 6f72 6d73 0a69 6620 2820 2120  latforms.if ( ! 
│ │ │ +001b8cb0: 2820 7b20 7270 6d20 2d2d 7175 6965 7420  ( { rpm --quiet 
│ │ │ +001b8cc0: 2d71 206b 6572 6e65 6c20 3b7d 2026 616d  -q kernel ;} &am
│ │ │ +001b8cd0: 703b 2661 6d70 3b20 7b20 7270 6d20 2d2d  p;& { rpm --
│ │ │ +001b8ce0: 7175 6965 7420 2d71 2072 706d 2d6f 7374  quiet -q rpm-ost
│ │ │ +001b8cf0: 7265 6520 3b7d 2026 616d 703b 2661 6d70  ree ;} &&
│ │ │ +001b8d00: 3b20 7b20 7270 6d20 2d2d 7175 6965 7420  ; { rpm --quiet 
│ │ │ +001b8d10: 2d71 2062 6f6f 7463 203b 7d20 2661 6d70  -q bootc ;} &
│ │ │ +001b8d20: 3b26 616d 703b 207b 2021 2072 706d 202d  ;& { ! rpm -
│ │ │ +001b8d30: 2d71 7569 6574 202d 7120 6f70 656e 7368  -quiet -q opensh
│ │ │ +001b8d40: 6966 742d 6b75 6265 6c65 7420 3b7d 2026  ift-kubelet ;} &
│ │ │ +001b8d50: 616d 703b 2661 6d70 3b20 285b 202d 6620  amp;& ([ -f 
│ │ │ +001b8d60: 2f72 756e 2f6f 7374 7265 652d 626f 6f74  /run/ostree-boot
│ │ │ +001b8d70: 6564 205d 207c 7c20 5b20 2d4c 202f 6f73  ed ] || [ -L /os
│ │ │ +001b8d80: 7472 6565 205d 2920 2920 2661 6d70 3b26  tree ]) ) &&
│ │ │ +001b8d90: 616d 703b 2021 2028 205b 202d 6620 2f2e  amp; ! ( [ -f /.
│ │ │ +001b8da0: 646f 636b 6572 656e 7620 5d20 7c7c 205b  dockerenv ] || [
│ │ │ +001b8db0: 202d 6620 2f72 756e 2f2e 636f 6e74 6169   -f /run/.contai
│ │ │ +001b8dc0: 6e65 7265 6e76 205d 2029 2029 2026 616d  nerenv ] ) ) &am
│ │ │ +001b8dd0: 703b 2661 6d70 3b20 7b20 2820 6669 6e64  p;& { ( find
│ │ │ +001b8de0: 6d6e 7420 2d2d 6b65 726e 656c 2022 2f68  mnt --kernel "/h
│ │ │ +001b8df0: 6f6d 6522 2026 6774 3b20 2f64 6576 2f6e  ome" > /dev/n
│ │ │ +001b8e00: 756c 6c20 7c7c 2066 696e 646d 6e74 202d  ull || findmnt -
│ │ │ +001b8e10: 2d66 7374 6162 2022 2f68 6f6d 6522 2026  -fstab "/home" &
│ │ │ +001b8e20: 6774 3b20 2f64 6576 2f6e 756c 6c20 293b  gt; /dev/null );
│ │ │ +001b8e30: 207d 3b20 7468 656e 0a0a 6675 6e63 7469   }; then..functi
│ │ │ +001b8e40: 6f6e 2070 6572 666f 726d 5f72 656d 6564  on perform_remed
│ │ │ +001b8e50: 6961 7469 6f6e 207b 0a0a 2020 2020 0a20  iation {..    . 
│ │ │ +001b8e60: 2020 2020 2020 2023 2074 6865 206d 6f75         # the mou
│ │ │ +001b8e70: 6e74 2070 6f69 6e74 202f 686f 6d65 2068  nt point /home h
│ │ │ +001b8e80: 6173 2074 6f20 6265 2064 6566 696e 6564  as to be defined
│ │ │ +001b8e90: 2069 6e20 2f65 7463 2f66 7374 6162 0a20   in /etc/fstab. 
│ │ │ +001b8ea0: 2020 2020 2020 2023 2062 6566 6f72 6520         # before 
│ │ │ +001b8eb0: 7468 6973 2072 656d 6564 6961 7469 6f6e  this remediation
│ │ │ +001b8ec0: 2063 616e 2062 6520 6578 6563 7574 6564   can be executed
│ │ │ +001b8ed0: 2e20 496e 2063 6173 6520 6974 2069 7320  . In case it is 
│ │ │ +001b8ee0: 6e6f 7420 6465 6669 6e65 642c 2074 6865  not defined, the
│ │ │ +001b8ef0: 0a20 2020 2020 2020 2023 2072 656d 6564  .        # remed
│ │ │ +001b8f00: 6961 7469 6f6e 2061 626f 7274 7320 616e  iation aborts an
│ │ │ +001b8f10: 6420 6e6f 2063 6861 6e67 6573 2072 6567  d no changes reg
│ │ │ +001b8f20: 6172 6469 6e67 2074 6865 206d 6f75 6e74  arding the mount
│ │ │ +001b8f30: 2070 6f69 6e74 2061 7265 2064 6f6e 652e   point are done.
│ │ │ +001b8f40: 0a20 2020 2020 2020 206d 6f75 6e74 5f70  .        mount_p
│ │ │ +001b8f50: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001b8f60: 703d 2224 2870 7269 6e74 6620 225e 5b5b  p="$(printf "^[[
│ │ │ +001b8f70: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a  :space:]]*[^#].*
│ │ │ +001b8f80: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a  [[:space:]]%s[[:
│ │ │ +001b8f90: 7370 6163 653a 5d5d 2220 222f 686f 6d65  space:]]" "/home
│ │ │ +001b8fa0: 2229 220a 0a20 2020 2067 7265 7020 2224  ")"..    grep "$
│ │ │ +001b8fb0: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001b8fc0: 685f 7265 6765 7870 2220 2d71 202f 6574  h_regexp" -q /et
│ │ │ +001b8fd0: 632f 6673 7461 6220 5c0a 2020 2020 2020  c/fstab \.      
│ │ │ +001b8fe0: 2020 7c7c 207b 2065 6368 6f20 2254 6865    || { echo "The
│ │ │ +001b8ff0: 206d 6f75 6e74 2070 6f69 6e74 2027 2f68   mount point '/h
│ │ │ +001b9000: 6f6d 6527 2069 7320 6e6f 7420 6576 656e  ome' is not even
│ │ │ +001b9010: 2069 6e20 2f65 7463 2f66 7374 6162 2c20   in /etc/fstab, 
│ │ │ +001b9020: 736f 2077 6520 6361 6e27 7420 7365 7420  so we can't set 
│ │ │ +001b9030: 7570 206d 6f75 6e74 206f 7074 696f 6e73  up mount options
│ │ │ +001b9040: 2220 2667 743b 2661 6d70 3b32 3b0a 2020  " >&2;.  
│ │ │ +001b9050: 2020 2020 2020 2020 2020 2020 2020 6563                ec
│ │ │ +001b9060: 686f 2022 4e6f 7420 7265 6d65 6469 6174  ho "Not remediat
│ │ │ +001b9070: 696e 672c 2062 6563 6175 7365 2074 6865  ing, because the
│ │ │ +001b9080: 7265 2069 7320 6e6f 2072 6563 6f72 6420  re is no record 
│ │ │ +001b9090: 6f66 202f 686f 6d65 2069 6e20 2f65 7463  of /home in /etc
│ │ │ +001b90a0: 2f66 7374 6162 2220 2667 743b 2661 6d70  /fstab" >&
│ │ │ +001b90b0: 3b32 3b20 7265 7475 726e 2031 3b20 7d0a  ;2; return 1; }.
│ │ │ +001b90c0: 2020 2020 0a0a 0a20 2020 206d 6f75 6e74      ...    mount
│ │ │ +001b90d0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001b90e0: 6578 703d 2224 2870 7269 6e74 6620 225e  exp="$(printf "^
│ │ │ +001b90f0: 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e 235d  [[:space:]]*[^#]
│ │ │ +001b9100: 2e2a 5b5b 3a73 7061 6365 3a5d 5d25 735b  .*[[:space:]]%s[
│ │ │ +001b9110: 5b3a 7370 6163 653a 5d5d 2220 2f68 6f6d  [:space:]]" /hom
│ │ │ +001b9120: 6529 220a 0a20 2020 2023 2049 6620 7468  e)"..    # If th
│ │ │ +001b9130: 6520 6d6f 756e 7420 706f 696e 7420 6973  e mount point is
│ │ │ +001b9140: 206e 6f74 2069 6e20 2f65 7463 2f66 7374   not in /etc/fst
│ │ │ +001b9150: 6162 2c20 6765 7420 7072 6576 696f 7573  ab, get previous
│ │ │ +001b9160: 206d 6f75 6e74 206f 7074 696f 6e73 2066   mount options f
│ │ │ +001b9170: 726f 6d20 2f65 7463 2f6d 7461 620a 2020  rom /etc/mtab.  
│ │ │ +001b9180: 2020 6966 2021 2067 7265 7020 2d71 2022    if ! grep -q "
│ │ │ +001b9190: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ +001b91a0: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ +001b91b0: 6673 7461 623b 2074 6865 6e0a 2020 2020  fstab; then.    
│ │ │ +001b91c0: 2020 2020 2320 7275 6e74 696d 6520 6f70      # runtime op
│ │ │ +001b91d0: 7473 2077 6974 686f 7574 2073 6f6d 6520  ts without some 
│ │ │ +001b91e0: 6175 746f 6d61 7469 6320 6b65 726e 656c  automatic kernel
│ │ │ +001b91f0: 2f75 7365 7273 7061 6365 2d61 6464 6564  /userspace-added
│ │ │ +001b9200: 2064 6566 6175 6c74 730a 2020 2020 2020   defaults.      
│ │ │ +001b9210: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ +001b9220: 5f6f 7074 733d 2428 6772 6570 2022 246d  _opts=$(grep "$m
│ │ │ +001b9230: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001b9240: 5f72 6567 6578 7022 202f 6574 632f 6d74  _regexp" /etc/mt
│ │ │ +001b9250: 6162 207c 2068 6561 6420 2d31 207c 2020  ab | head -1 |  
│ │ │ +001b9260: 6177 6b20 277b 7072 696e 7420 2434 7d27  awk '{print $4}'
│ │ │ +001b9270: 205c 0a20 2020 2020 2020 2020 2020 2020   \.             
│ │ │ +001b9280: 2020 2020 2020 207c 2073 6564 202d 4520         | sed -E 
│ │ │ +001b9290: 2273 2f28 7277 7c64 6566 6175 6c74 737c  "s/(rw|defaults|
│ │ │ +001b92a0: 7365 636c 6162 656c 7c6e 6f64 6576 2928  seclabel|nodev)(
│ │ │ +001b92b0: 2c7c 2429 2f2f 673b 732f 2c24 2f2f 2229  ,|$)//g;s/,$//")
│ │ │ +001b92c0: 0a20 2020 2020 2020 205b 2022 2470 7265  .        [ "$pre
│ │ │ +001b92d0: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001b92e0: 2220 5d20 2661 6d70 3b26 616d 703b 2070  " ] && p
│ │ │ +001b92f0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001b9300: 7473 2b3d 222c 220a 2020 2020 2020 2020  ts+=",".        
│ │ │ +001b9310: 2320 496e 2069 736f 3936 3630 2066 696c  # In iso9660 fil
│ │ │ +001b9320: 6573 7973 7465 6d73 206d 7461 6220 636f  esystems mtab co
│ │ │ +001b9330: 756c 6420 6465 7363 7269 6265 2061 2022  uld describe a "
│ │ │ +001b9340: 626c 6f63 6b73 697a 6522 2076 616c 7565  blocksize" value
│ │ │ +001b9350: 2c20 7468 6973 2073 686f 756c 6420 6265  , this should be
│ │ │ +001b9360: 2072 6566 6c65 6374 6564 2069 6e0a 2020   reflected in.  
│ │ │ +001b9370: 2020 2020 2020 2320 6673 7461 6220 6173        # fstab as
│ │ │ +001b9380: 2022 626c 6f63 6b22 2e20 2054 6865 206e   "block".  The n
│ │ │ +001b9390: 6578 7420 7661 7269 6162 6c65 2069 7320  ext variable is 
│ │ │ +001b93a0: 746f 2073 6174 6973 6679 2073 6865 6c6c  to satisfy shell
│ │ │ +001b93b0: 6368 6563 6b20 5343 3230 3530 2e0a 2020  check SC2050..  
│ │ │ +001b93c0: 2020 2020 2020 6673 5f74 7970 653d 2222        fs_type=""
│ │ │ +001b93d0: 0a20 2020 2020 2020 2069 6620 5b20 2022  .        if [  "
│ │ │ +001b93e0: 2466 735f 7479 7065 2220 3d3d 2022 6973  $fs_type" == "is
│ │ │ +001b93f0: 6f39 3636 3022 205d 203b 2074 6865 6e0a  o9660" ] ; then.
│ │ │ +001b9400: 2020 2020 2020 2020 2020 2020 7072 6576              prev
│ │ │ +001b9410: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d  ious_mount_opts=
│ │ │ +001b9420: 2428 7365 6420 2773 2f62 6c6f 636b 7369  $(sed 's/blocksi
│ │ │ +001b9430: 7a65 3d2f 626c 6f63 6b3d 2f27 2026 6c74  ze=/block=/' <
│ │ │ +001b9440: 3b26 6c74 3b26 6c74 3b20 2224 7072 6576  ;<< "$prev
│ │ │ +001b9450: 696f 7573 5f6d 6f75 6e74 5f6f 7074 7322  ious_mount_opts"
│ │ │ +001b9460: 290a 2020 2020 2020 2020 6669 0a20 2020  ).        fi.   
│ │ │ +001b9470: 2020 2020 2065 6368 6f20 2220 2f68 6f6d       echo " /hom
│ │ │ +001b9480: 6520 2064 6566 6175 6c74 732c 247b 7072  e  defaults,${pr
│ │ │ +001b9490: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001b94a0: 737d 6e6f 6465 7620 3020 3022 2026 6774  s}nodev 0 0" >
│ │ │ +001b94b0: 3b26 6774 3b20 2f65 7463 2f66 7374 6162  ;> /etc/fstab
│ │ │ +001b94c0: 0a20 2020 2023 2049 6620 7468 6520 6d6f  .    # If the mo
│ │ │ +001b94d0: 756e 745f 6f70 7420 6f70 7469 6f6e 2069  unt_opt option i
│ │ │ +001b94e0: 7320 6e6f 7420 616c 7265 6164 7920 696e  s not already in
│ │ │ +001b94f0: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ +001b9500: 2773 202f 6574 632f 6673 7461 6220 656e  's /etc/fstab en
│ │ │ +001b9510: 7472 792c 2061 6464 2069 740a 2020 2020  try, add it.    
│ │ │ +001b9520: 656c 6966 2021 2067 7265 7020 2224 6d6f  elif ! grep "$mo
│ │ │ +001b9530: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001b9540: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ +001b9550: 6162 207c 2067 7265 7020 2d71 2022 6e6f  ab | grep -q "no
│ │ │ +001b9560: 6465 7622 3b20 7468 656e 0a20 2020 2020  dev"; then.     
│ │ │ +001b9570: 2020 2070 7265 7669 6f75 735f 6d6f 756e     previous_moun
│ │ │ +001b9580: 745f 6f70 7473 3d24 2867 7265 7020 2224  t_opts=$(grep "$
│ │ │ +001b9590: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001b95a0: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ +001b95b0: 7374 6162 207c 2061 776b 2027 7b70 7269  stab | awk '{pri
│ │ │ +001b95c0: 6e74 2024 347d 2729 0a20 2020 2020 2020  nt $4}').       
│ │ │ +001b95d0: 2073 6564 202d 6920 2273 7c5c 2824 7b6d   sed -i "s|\(${m
│ │ │ +001b95e0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001b95f0: 5f72 6567 6578 707d 2e2a 247b 7072 6576  _regexp}.*${prev
│ │ │ +001b9600: 696f 7573 5f6d 6f75 6e74 5f6f 7074 737d  ious_mount_opts}
│ │ │ +001b9610: 5c29 7c5c 312c 6e6f 6465 767c 2220 2f65  \)|\1,nodev|" /e
│ │ │ +001b9620: 7463 2f66 7374 6162 0a20 2020 2066 690a  tc/fstab.    fi.
│ │ │ +001b9630: 0a0a 2020 2020 6966 206d 6b64 6972 202d  ..    if mkdir -
│ │ │ +001b9640: 7020 222f 686f 6d65 223b 2074 6865 6e0a  p "/home"; then.
│ │ │ +001b9650: 2020 2020 2020 2020 6966 206d 6f75 6e74          if mount
│ │ │ +001b9660: 706f 696e 7420 2d71 2022 2f68 6f6d 6522  point -q "/home"
│ │ │ +001b9670: 3b20 7468 656e 0a20 2020 2020 2020 2020  ; then.         
│ │ │ +001b9680: 2020 206d 6f75 6e74 202d 6f20 7265 6d6f     mount -o remo
│ │ │ +001b9690: 756e 7420 2d2d 7461 7267 6574 2022 2f68  unt --target "/h
│ │ │ +001b96a0: 6f6d 6522 0a20 2020 2020 2020 2066 690a  ome".        fi.
│ │ │ +001b96b0: 2020 2020 6669 0a7d 0a0a 7065 7266 6f72      fi.}..perfor
│ │ │ +001b96c0: 6d5f 7265 6d65 6469 6174 696f 6e0a 0a65  m_remediation..e
│ │ │ +001b96d0: 6c73 650a 2020 2020 2667 743b 2661 6d70  lse.    >&
│ │ │ +001b96e0: 3b32 2065 6368 6f20 2752 656d 6564 6961  ;2 echo 'Remedia
│ │ │ +001b96f0: 7469 6f6e 2069 7320 6e6f 7420 6170 706c  tion is not appl
│ │ │ +001b9700: 6963 6162 6c65 2c20 6e6f 7468 696e 6720  icable, nothing 
│ │ │ +001b9710: 7761 7320 646f 6e65 270a 6669 0a3c 2f63  was done'.fi.
│ │ │ +001b9730: 3c61 2063 6c61 7373 3d22 6274 6e20 6274
Rem │ │ │ +001b97d0: 6564 6961 7469 6f6e 2041 6e61 636f 6e64 ediation Anacond │ │ │ +001b97e0: 6120 736e 6970 7065 7420 e287 b23c 2f61 a snippet ...
< │ │ │ +001b9880: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +001b9890: 3c74 723e 3c74 683e 4469 7372 7570 7469 Reboot:false
.p
│ │ │ +001b9920: 6172 7420 2f68 6f6d 6520 2d2d 6d6f 756e  art /home --moun
│ │ │ +001b9930: 746f 7074 696f 6e73 3d22 6e6f 6465 7622  toptions="nodev"
│ │ │  001b9940: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
< │ │ │ 001b9960: 2f74 723e 3c2f 7462 6f64 793e 3c2f 7461 /tr> │ │ │ -001baa50: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ -001baa60: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ -001baa70: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
C │ │ │ +001b9870: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +001b98a0: 6f6e 3a3c 2f74 683e 3c74 643e 6869 6768 on:high │ │ │ +001b98b0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +001b98f0: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ +001b9900: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexity:< │ │ │ -001bab60: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
.part /home --m
│ │ │ -001babb0: 6f75 6e74 6f70 7469 6f6e 733d 226e 6f73  ountoptions="nos
│ │ │ -001babc0: 7569 6422 0a3c 2f63 6f64 653e 3c2f 7072  uid".Remediation
│ │ │ -001bac80: 2041 6e73 6962 6c65 2073 6e69 7070 6574   Ansible snippet
│ │ │ -001bac90: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
< │ │ │ -001bad50: 7464 3e68 6967 683c 2f74 643e 3c2f 7472 td>highconfigure │ │ │ -001badb0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
low
Disru │ │ │ -001bab20: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e68 ption:h │ │ │ -001bab30: 6967 683c 2f74 643e 3c2f 7472 3e3c 7472 igh
Reboot:false
Stra │ │ │ -001bab70: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ -001bab80: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexity │ │ │ -001bad20: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ -001bad40: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot: │ │ │ -001bad70: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ -001bad90: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
- name: │ │ │ -001badd0: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ -001bade0: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ -001badf0: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ -001bae00: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ -001bae10: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ -001bae20: 2d35 332d 4143 2d36 0a20 202d 204e 4953 -53-AC-6. - NIS │ │ │ -001bae30: 542d 3830 302d 3533 2d41 432d 3628 3129 T-800-53-AC-6(1) │ │ │ -001bae40: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001bae50: 2d43 4d2d 3628 6129 0a20 202d 204e 4953 -CM-6(a). - NIS │ │ │ -001bae60: 542d 3830 302d 3533 2d43 4d2d 3728 6129 T-800-53-CM-7(a) │ │ │ -001bae70: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001bae80: 2d43 4d2d 3728 6229 0a20 202d 204e 4953 -CM-7(b). - NIS │ │ │ -001bae90: 542d 3830 302d 3533 2d4d 502d 370a 2020 T-800-53-MP-7. │ │ │ -001baea0: 2d20 636f 6e66 6967 7572 655f 7374 7261 - configure_stra │ │ │ -001baeb0: 7465 6779 0a20 202d 2068 6967 685f 6469 tegy. - high_di │ │ │ -001baec0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77 sruption. - low │ │ │ -001baed0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ -001baee0: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ -001baef0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e - mount_option │ │ │ -001baf00: 5f68 6f6d 655f 6e6f 7375 6964 0a20 202d _home_nosuid. - │ │ │ -001baf10: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ -001baf20: 640a 0a2d 206e 616d 653a 2027 4164 6420 d..- name: 'Add │ │ │ -001baf30: 6e6f 7375 6964 204f 7074 696f 6e20 746f nosuid Option to │ │ │ -001baf40: 202f 686f 6d65 3a20 4368 6563 6b20 696e /home: Check in │ │ │ -001baf50: 666f 726d 6174 696f 6e20 6173 736f 6369 formation associ │ │ │ -001baf60: 6174 6564 2074 6f20 6d6f 756e 7470 6f69 ated to mountpoi │ │ │ -001baf70: 6e74 270a 2020 616e 7369 626c 652e 6275 nt'. ansible.bu │ │ │ -001baf80: 696c 7469 6e2e 636f 6d6d 616e 643a 2066 iltin.command: f │ │ │ -001baf90: 696e 646d 6e74 202d 2d66 7374 6162 2027 indmnt --fstab ' │ │ │ -001bafa0: 2f68 6f6d 6527 0a20 2072 6567 6973 7465 /home'. registe │ │ │ -001bafb0: 723a 2064 6576 6963 655f 6e61 6d65 0a20 r: device_name. │ │ │ -001bafc0: 2066 6169 6c65 645f 7768 656e 3a20 6465 failed_when: de │ │ │ -001bafd0: 7669 6365 5f6e 616d 652e 7263 2026 6774 vice_name.rc > │ │ │ -001bafe0: 3b20 310a 2020 6368 616e 6765 645f 7768 ; 1. changed_wh │ │ │ -001baff0: 656e 3a20 6661 6c73 650a 2020 6368 6563 en: false. chec │ │ │ -001bb000: 6b5f 6d6f 6465 3a20 6661 6c73 650a 2020 k_mode: false. │ │ │ -001bb010: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420 when:. - ( not │ │ │ -001bb020: 2820 226b 6572 6e65 6c22 2069 6e20 616e ( "kernel" in an │ │ │ -001bb030: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ -001bb040: 6167 6573 2061 6e64 2022 7270 6d2d 6f73 ages and "rpm-os │ │ │ -001bb050: 7472 6565 2220 696e 2061 6e73 6962 6c65 tree" in ansible │ │ │ -001bb060: 5f66 6163 7473 2e70 6163 6b61 6765 730a _facts.packages. │ │ │ -001bb070: 2020 2020 616e 6420 2262 6f6f 7463 2220 and "bootc" │ │ │ -001bb080: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ -001bb090: 2e70 6163 6b61 6765 7320 616e 6420 6e6f .packages and no │ │ │ -001bb0a0: 7420 226f 7065 6e73 6869 6674 2d6b 7562 t "openshift-kub │ │ │ -001bb0b0: 656c 6574 2220 696e 2061 6e73 6962 6c65 elet" in ansible │ │ │ -001bb0c0: 5f66 6163 7473 2e70 6163 6b61 6765 730a _facts.packages. │ │ │ -001bb0d0: 2020 2020 616e 6420 226f 7374 7265 6522 and "ostree" │ │ │ -001bb0e0: 2069 6e20 616e 7369 626c 655f 7072 6f63 in ansible_proc │ │ │ -001bb0f0: 5f63 6d64 6c69 6e65 2029 2061 6e64 206e _cmdline ) and n │ │ │ -001bb100: 6f74 2028 2061 6e73 6962 6c65 5f76 6972 ot ( ansible_vir │ │ │ -001bb110: 7475 616c 697a 6174 696f 6e5f 7479 7065 tualization_type │ │ │ -001bb120: 2069 6e0a 2020 2020 5b22 646f 636b 6572 in. ["docker │ │ │ -001bb130: 222c 2022 6c78 6322 2c20 226f 7065 6e76 ", "lxc", "openv │ │ │ -001bb140: 7a22 2c20 2270 6f64 6d61 6e22 2c20 2263 z", "podman", "c │ │ │ -001bb150: 6f6e 7461 696e 6572 225d 2029 2029 0a20 ontainer"] ) ). │ │ │ -001bb160: 202d 2027 222f 686f 6d65 2220 696e 2061 - '"/home" in a │ │ │ -001bb170: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20 nsible_mounts | │ │ │ -001bb180: 6d61 7028 6174 7472 6962 7574 653d 226d map(attribute="m │ │ │ -001bb190: 6f75 6e74 2229 207c 206c 6973 7427 0a20 ount") | list'. │ │ │ -001bb1a0: 2074 6167 733a 0a20 202d 204e 4953 542d tags:. - NIST- │ │ │ -001bb1b0: 3830 302d 3533 2d41 432d 360a 2020 2d20 800-53-AC-6. - │ │ │ -001bb1c0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36 NIST-800-53-AC-6 │ │ │ -001bb1d0: 2831 290a 2020 2d20 4e49 5354 2d38 3030 (1). - NIST-800 │ │ │ -001bb1e0: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ -001bb1f0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37 NIST-800-53-CM-7 │ │ │ -001bb200: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ -001bb210: 2d35 332d 434d 2d37 2862 290a 2020 2d20 -53-CM-7(b). - │ │ │ -001bb220: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37 NIST-800-53-MP-7 │ │ │ -001bb230: 0a20 202d 2063 6f6e 6669 6775 7265 5f73 . - configure_s │ │ │ -001bb240: 7472 6174 6567 790a 2020 2d20 6869 6768 trategy. - high │ │ │ -001bb250: 5f64 6973 7275 7074 696f 6e0a 2020 2d20 _disruption. - │ │ │ -001bb260: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20 low_complexity. │ │ │ -001bb270: 202d 206d 6564 6975 6d5f 7365 7665 7269 - medium_severi │ │ │ -001bb280: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074 ty. - mount_opt │ │ │ -001bb290: 696f 6e5f 686f 6d65 5f6e 6f73 7569 640a ion_home_nosuid. │ │ │ -001bb2a0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ -001bb2b0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741 eded..- name: 'A │ │ │ -001bb2c0: 6464 206e 6f73 7569 6420 4f70 7469 6f6e dd nosuid Option │ │ │ -001bb2d0: 2074 6f20 2f68 6f6d 653a 2043 7265 6174 to /home: Creat │ │ │ -001bb2e0: 6520 6d6f 756e 745f 696e 666f 2064 6963 e mount_info dic │ │ │ -001bb2f0: 7469 6f6e 6172 7920 7661 7269 6162 6c65 tionary variable │ │ │ -001bb300: 270a 2020 7365 745f 6661 6374 3a0a 2020 '. set_fact:. │ │ │ -001bb310: 2020 6d6f 756e 745f 696e 666f 3a20 277b mount_info: '{ │ │ │ -001bb320: 7b20 6d6f 756e 745f 696e 666f 7c64 6566 { mount_info|def │ │ │ -001bb330: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65 ault({})|combine │ │ │ -001bb340: 287b 6974 656d 2e30 3a20 6974 656d 2e31 ({item.0: item.1 │ │ │ -001bb350: 7d29 207d 7d27 0a20 2077 6974 685f 746f }) }}'. with_to │ │ │ -001bb360: 6765 7468 6572 3a0a 2020 2d20 277b 7b20 gether:. - '{{ │ │ │ -001bb370: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ -001bb380: 7574 5f6c 696e 6573 5b30 5d2e 7370 6c69 ut_lines[0].spli │ │ │ -001bb390: 7428 2920 7c20 6d61 7028 2727 6c6f 7765 t() | map(''lowe │ │ │ -001bb3a0: 7227 2729 207c 206c 6973 7420 7d7d 270a r'') | list }}'. │ │ │ -001bb3b0: 2020 2d20 277b 7b20 6465 7669 6365 5f6e - '{{ device_n │ │ │ -001bb3c0: 616d 652e 7374 646f 7574 5f6c 696e 6573 ame.stdout_lines │ │ │ -001bb3d0: 5b31 5d2e 7370 6c69 7428 2920 7c20 6c69 [1].split() | li │ │ │ -001bb3e0: 7374 207d 7d27 0a20 2077 6865 6e3a 0a20 st }}'. when:. │ │ │ -001bb3f0: 202d 2028 206e 6f74 2028 2022 6b65 726e - ( not ( "kern │ │ │ -001bb400: 656c 2220 696e 2061 6e73 6962 6c65 5f66 el" in ansible_f │ │ │ -001bb410: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ -001bb420: 6420 2272 706d 2d6f 7374 7265 6522 2069 d "rpm-ostree" i │ │ │ -001bb430: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001bb440: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ -001bb450: 2022 626f 6f74 6322 2069 6e20 616e 7369 "bootc" in ansi │ │ │ -001bb460: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -001bb470: 6573 2061 6e64 206e 6f74 2022 6f70 656e es and not "open │ │ │ -001bb480: 7368 6966 742d 6b75 6265 6c65 7422 2069 shift-kubelet" i │ │ │ -001bb490: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001bb4a0: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ -001bb4b0: 2022 6f73 7472 6565 2220 696e 2061 6e73 "ostree" in ans │ │ │ -001bb4c0: 6962 6c65 5f70 726f 635f 636d 646c 696e ible_proc_cmdlin │ │ │ -001bb4d0: 6520 2920 616e 6420 6e6f 7420 2820 616e e ) and not ( an │ │ │ -001bb4e0: 7369 626c 655f 7669 7274 7561 6c69 7a61 sible_virtualiza │ │ │ -001bb4f0: 7469 6f6e 5f74 7970 6520 696e 0a20 2020 tion_type in. │ │ │ -001bb500: 205b 2264 6f63 6b65 7222 2c20 226c 7863 ["docker", "lxc │ │ │ -001bb510: 222c 2022 6f70 656e 767a 222c 2022 706f ", "openvz", "po │ │ │ -001bb520: 646d 616e 222c 2022 636f 6e74 6169 6e65 dman", "containe │ │ │ -001bb530: 7222 5d20 2920 290a 2020 2d20 2722 2f68 r"] ) ). - '"/h │ │ │ -001bb540: 6f6d 6522 2069 6e20 616e 7369 626c 655f ome" in ansible_ │ │ │ -001bb550: 6d6f 756e 7473 207c 206d 6170 2861 7474 mounts | map(att │ │ │ -001bb560: 7269 6275 7465 3d22 6d6f 756e 7422 2920 ribute="mount") │ │ │ -001bb570: 7c20 6c69 7374 270a 2020 2d20 6465 7669 | list'. - devi │ │ │ -001bb580: 6365 5f6e 616d 652e 7374 646f 7574 2069 ce_name.stdout i │ │ │ -001bb590: 7320 6465 6669 6e65 6420 616e 6420 6465 s defined and de │ │ │ -001bb5a0: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ -001bb5b0: 5f6c 696e 6573 2069 7320 6465 6669 6e65 _lines is define │ │ │ -001bb5c0: 640a 2020 2d20 2864 6576 6963 655f 6e61 d. - (device_na │ │ │ -001bb5d0: 6d65 2e73 7464 6f75 7420 7c20 6c65 6e67 me.stdout | leng │ │ │ -001bb5e0: 7468 2026 6774 3b20 3029 0a20 2074 6167 th > 0). tag │ │ │ -001bb5f0: 733a 0a20 202d 204e 4953 542d 3830 302d s:. - NIST-800- │ │ │ -001bb600: 3533 2d41 432d 360a 2020 2d20 4e49 5354 53-AC-6. - NIST │ │ │ -001bb610: 2d38 3030 2d35 332d 4143 2d36 2831 290a -800-53-AC-6(1). │ │ │ -001bb620: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -001bb630: 434d 2d36 2861 290a 2020 2d20 4e49 5354 CM-6(a). - NIST │ │ │ -001bb640: 2d38 3030 2d35 332d 434d 2d37 2861 290a -800-53-CM-7(a). │ │ │ -001bb650: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -001bb660: 434d 2d37 2862 290a 2020 2d20 4e49 5354 CM-7(b). - NIST │ │ │ -001bb670: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d -800-53-MP-7. - │ │ │ -001bb680: 2063 6f6e 6669 6775 7265 5f73 7472 6174 configure_strat │ │ │ -001bb690: 6567 790a 2020 2d20 6869 6768 5f64 6973 egy. - high_dis │ │ │ -001bb6a0: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f ruption. - low_ │ │ │ -001bb6b0: 636f 6d70 6c65 7869 7479 0a20 202d 206d complexity. - m │ │ │ -001bb6c0: 6564 6975 6d5f 7365 7665 7269 7479 0a20 edium_severity. │ │ │ -001bb6d0: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f - mount_option_ │ │ │ -001bb6e0: 686f 6d65 5f6e 6f73 7569 640a 2020 2d20 home_nosuid. - │ │ │ -001bb6f0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564 no_reboot_needed │ │ │ -001bb700: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e ..- name: 'Add n │ │ │ -001bb710: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20 osuid Option to │ │ │ -001bb720: 2f68 6f6d 653a 2049 6620 2f68 6f6d 6520 /home: If /home │ │ │ -001bb730: 6e6f 7420 6d6f 756e 7465 642c 2063 7261 not mounted, cra │ │ │ -001bb740: 6674 206d 6f75 6e74 5f69 6e66 6f20 6d61 ft mount_info ma │ │ │ -001bb750: 6e75 616c 6c79 270a 2020 7365 745f 6661 nually'. set_fa │ │ │ -001bb760: 6374 3a0a 2020 2020 6d6f 756e 745f 696e ct:. mount_in │ │ │ -001bb770: 666f 3a20 277b 7b20 6d6f 756e 745f 696e fo: '{{ mount_in │ │ │ -001bb780: 666f 7c64 6566 6175 6c74 287b 7d29 7c63 fo|default({})|c │ │ │ -001bb790: 6f6d 6269 6e65 287b 6974 656d 2e30 3a20 ombine({item.0: │ │ │ -001bb7a0: 6974 656d 2e31 7d29 207d 7d27 0a20 2077 item.1}) }}'. w │ │ │ -001bb7b0: 6974 685f 746f 6765 7468 6572 3a0a 2020 ith_together:. │ │ │ -001bb7c0: 2d20 2d20 7461 7267 6574 0a20 2020 202d - - target. - │ │ │ -001bb7d0: 2073 6f75 7263 650a 2020 2020 2d20 6673 source. - fs │ │ │ -001bb7e0: 7479 7065 0a20 2020 202d 206f 7074 696f type. - optio │ │ │ -001bb7f0: 6e73 0a20 202d 202d 202f 686f 6d65 0a20 ns. - - /home. │ │ │ -001bb800: 2020 202d 2027 270a 2020 2020 2d20 2727 - ''. - '' │ │ │ -001bb810: 0a20 2020 202d 2064 6566 6175 6c74 730a . - defaults. │ │ │ -001bb820: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f when:. - ( no │ │ │ -001bb830: 7420 2820 226b 6572 6e65 6c22 2069 6e20 t ( "kernel" in │ │ │ -001bb840: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -001bb850: 636b 6167 6573 2061 6e64 2022 7270 6d2d ckages and "rpm- │ │ │ -001bb860: 6f73 7472 6565 2220 696e 2061 6e73 6962 ostree" in ansib │ │ │ -001bb870: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -001bb880: 730a 2020 2020 616e 6420 2262 6f6f 7463 s. and "bootc │ │ │ -001bb890: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -001bb8a0: 7473 2e70 6163 6b61 6765 7320 616e 6420 ts.packages and │ │ │ -001bb8b0: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b not "openshift-k │ │ │ -001bb8c0: 7562 656c 6574 2220 696e 2061 6e73 6962 ubelet" in ansib │ │ │ -001bb8d0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -001bb8e0: 730a 2020 2020 616e 6420 226f 7374 7265 s. and "ostre │ │ │ -001bb8f0: 6522 2069 6e20 616e 7369 626c 655f 7072 e" in ansible_pr │ │ │ -001bb900: 6f63 5f63 6d64 6c69 6e65 2029 2061 6e64 oc_cmdline ) and │ │ │ -001bb910: 206e 6f74 2028 2061 6e73 6962 6c65 5f76 not ( ansible_v │ │ │ -001bb920: 6972 7475 616c 697a 6174 696f 6e5f 7479 irtualization_ty │ │ │ -001bb930: 7065 2069 6e0a 2020 2020 5b22 646f 636b pe in. ["dock │ │ │ -001bb940: 6572 222c 2022 6c78 6322 2c20 226f 7065 er", "lxc", "ope │ │ │ -001bb950: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c20 nvz", "podman", │ │ │ -001bb960: 2263 6f6e 7461 696e 6572 225d 2029 2029 "container"] ) ) │ │ │ -001bb970: 0a20 202d 2027 222f 686f 6d65 2220 696e . - '"/home" in │ │ │ -001bb980: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320 ansible_mounts │ │ │ -001bb990: 7c20 6d61 7028 6174 7472 6962 7574 653d | map(attribute= │ │ │ -001bb9a0: 226d 6f75 6e74 2229 207c 206c 6973 7427 "mount") | list' │ │ │ -001bb9b0: 0a20 202d 2028 222d 2d66 7374 6162 2220 . - ("--fstab" │ │ │ -001bb9c0: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20 | length == 0). │ │ │ -001bb9d0: 202d 2064 6576 6963 655f 6e61 6d65 2e73 - device_name.s │ │ │ -001bb9e0: 7464 6f75 7420 6973 2064 6566 696e 6564 tdout is defined │ │ │ -001bb9f0: 2061 6e64 2064 6576 6963 655f 6e61 6d65 and device_name │ │ │ -001bba00: 2e73 7464 6f75 745f 6c69 6e65 7320 6973 .stdout_lines is │ │ │ -001bba10: 2064 6566 696e 6564 0a20 202d 2028 6465 defined. - (de │ │ │ -001bba20: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ -001bba30: 207c 206c 656e 6774 6820 3d3d 2030 290a | length == 0). │ │ │ -001bba40: 2020 7461 6773 3a0a 2020 2d20 4e49 5354 tags:. - NIST │ │ │ -001bba50: 2d38 3030 2d35 332d 4143 2d36 0a20 202d -800-53-AC-6. - │ │ │ -001bba60: 204e 4953 542d 3830 302d 3533 2d41 432d NIST-800-53-AC- │ │ │ -001bba70: 3628 3129 0a20 202d 204e 4953 542d 3830 6(1). - NIST-80 │ │ │ -001bba80: 302d 3533 2d43 4d2d 3628 6129 0a20 202d 0-53-CM-6(a). - │ │ │ -001bba90: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ -001bbaa0: 3728 6129 0a20 202d 204e 4953 542d 3830 7(a). - NIST-80 │ │ │ -001bbab0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d 0-53-CM-7(b). - │ │ │ -001bbac0: 204e 4953 542d 3830 302d 3533 2d4d 502d NIST-800-53-MP- │ │ │ -001bbad0: 370a 2020 2d20 636f 6e66 6967 7572 655f 7. - configure_ │ │ │ -001bbae0: 7374 7261 7465 6779 0a20 202d 2068 6967 strategy. - hig │ │ │ -001bbaf0: 685f 6469 7372 7570 7469 6f6e 0a20 202d h_disruption. - │ │ │ -001bbb00: 206c 6f77 5f63 6f6d 706c 6578 6974 790a low_complexity. │ │ │ -001bbb10: 2020 2d20 6d65 6469 756d 5f73 6576 6572 - medium_sever │ │ │ -001bbb20: 6974 790a 2020 2d20 6d6f 756e 745f 6f70 ity. - mount_op │ │ │ -001bbb30: 7469 6f6e 5f68 6f6d 655f 6e6f 7375 6964 tion_home_nosuid │ │ │ -001bbb40: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ -001bbb50: 6565 6465 640a 0a2d 206e 616d 653a 2027 eeded..- name: ' │ │ │ -001bbb60: 4164 6420 6e6f 7375 6964 204f 7074 696f Add nosuid Optio │ │ │ -001bbb70: 6e20 746f 202f 686f 6d65 3a20 4d61 6b65 n to /home: Make │ │ │ -001bbb80: 2073 7572 6520 6e6f 7375 6964 206f 7074 sure nosuid opt │ │ │ -001bbb90: 696f 6e20 6973 2070 6172 7420 6f66 2074 ion is part of t │ │ │ -001bbba0: 6865 2074 6f20 2f68 6f6d 650a 2020 2020 he to /home. │ │ │ -001bbbb0: 6f70 7469 6f6e 7327 0a20 2073 6574 5f66 options'. set_f │ │ │ -001bbbc0: 6163 743a 0a20 2020 206d 6f75 6e74 5f69 act:. mount_i │ │ │ -001bbbd0: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69 nfo: '{{ mount_i │ │ │ -001bbbe0: 6e66 6f20 7c20 636f 6d62 696e 6528 207b nfo | combine( { │ │ │ -001bbbf0: 2727 6f70 7469 6f6e 7327 273a 2727 2727 ''options'':'''' │ │ │ -001bbc00: 7e28 6d6f 756e 745f 696e 666f 2e6f 7074 ~(mount_info.opt │ │ │ -001bbc10: 696f 6e73 207c 0a20 2020 2020 2064 6566 ions |. def │ │ │ -001bbc20: 6175 6c74 2827 2727 2729 297e 2827 272c ault(''''))~('', │ │ │ -001bbc30: 2727 2069 6620 286d 6f75 6e74 5f69 6e66 '' if (mount_inf │ │ │ -001bbc40: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661 o.options | defa │ │ │ -001bbc50: 756c 7428 2727 2727 2929 2065 6c73 6520 ult('''')) else │ │ │ -001bbc60: 2727 2727 297e 2727 6e6f 7375 6964 2727 '''')~''nosuid'' │ │ │ -001bbc70: 0a20 2020 2020 207d 2920 7d7d 270a 2020 . }) }}'. │ │ │ -001bbc80: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420 when:. - ( not │ │ │ -001bbc90: 2820 226b 6572 6e65 6c22 2069 6e20 616e ( "kernel" in an │ │ │ -001bbca0: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ -001bbcb0: 6167 6573 2061 6e64 2022 7270 6d2d 6f73 ages and "rpm-os │ │ │ -001bbcc0: 7472 6565 2220 696e 2061 6e73 6962 6c65 tree" in ansible │ │ │ -001bbcd0: 5f66 6163 7473 2e70 6163 6b61 6765 730a _facts.packages. │ │ │ -001bbce0: 2020 2020 616e 6420 2262 6f6f 7463 2220 and "bootc" │ │ │ -001bbcf0: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ -001bbd00: 2e70 6163 6b61 6765 7320 616e 6420 6e6f .packages and no │ │ │ -001bbd10: 7420 226f 7065 6e73 6869 6674 2d6b 7562 t "openshift-kub │ │ │ -001bbd20: 656c 6574 2220 696e 2061 6e73 6962 6c65 elet" in ansible │ │ │ -001bbd30: 5f66 6163 7473 2e70 6163 6b61 6765 730a _facts.packages. │ │ │ -001bbd40: 2020 2020 616e 6420 226f 7374 7265 6522 and "ostree" │ │ │ -001bbd50: 2069 6e20 616e 7369 626c 655f 7072 6f63 in ansible_proc │ │ │ -001bbd60: 5f63 6d64 6c69 6e65 2029 2061 6e64 206e _cmdline ) and n │ │ │ -001bbd70: 6f74 2028 2061 6e73 6962 6c65 5f76 6972 ot ( ansible_vir │ │ │ -001bbd80: 7475 616c 697a 6174 696f 6e5f 7479 7065 tualization_type │ │ │ -001bbd90: 2069 6e0a 2020 2020 5b22 646f 636b 6572 in. ["docker │ │ │ -001bbda0: 222c 2022 6c78 6322 2c20 226f 7065 6e76 ", "lxc", "openv │ │ │ -001bbdb0: 7a22 2c20 2270 6f64 6d61 6e22 2c20 2263 z", "podman", "c │ │ │ -001bbdc0: 6f6e 7461 696e 6572 225d 2029 2029 0a20 ontainer"] ) ). │ │ │ -001bbdd0: 202d 2027 222f 686f 6d65 2220 696e 2061 - '"/home" in a │ │ │ -001bbde0: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20 nsible_mounts | │ │ │ -001bbdf0: 6d61 7028 6174 7472 6962 7574 653d 226d map(attribute="m │ │ │ -001bbe00: 6f75 6e74 2229 207c 206c 6973 7427 0a20 ount") | list'. │ │ │ -001bbe10: 202d 206d 6f75 6e74 5f69 6e66 6f20 6973 - mount_info is │ │ │ -001bbe20: 2064 6566 696e 6564 2061 6e64 2022 6e6f defined and "no │ │ │ -001bbe30: 7375 6964 2220 6e6f 7420 696e 2028 6d6f suid" not in (mo │ │ │ -001bbe40: 756e 745f 696e 666f 2e6f 7074 696f 6e73 unt_info.options │ │ │ -001bbe50: 207c 2064 6566 6175 6c74 2827 2729 290a | default('')). │ │ │ -001bbe60: 2020 7461 6773 3a0a 2020 2d20 4e49 5354 tags:. - NIST │ │ │ -001bbe70: 2d38 3030 2d35 332d 4143 2d36 0a20 202d -800-53-AC-6. - │ │ │ -001bbe80: 204e 4953 542d 3830 302d 3533 2d41 432d NIST-800-53-AC- │ │ │ -001bbe90: 3628 3129 0a20 202d 204e 4953 542d 3830 6(1). - NIST-80 │ │ │ -001bbea0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d 0-53-CM-6(a). - │ │ │ -001bbeb0: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ -001bbec0: 3728 6129 0a20 202d 204e 4953 542d 3830 7(a). - NIST-80 │ │ │ -001bbed0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d 0-53-CM-7(b). - │ │ │ -001bbee0: 204e 4953 542d 3830 302d 3533 2d4d 502d NIST-800-53-MP- │ │ │ -001bbef0: 370a 2020 2d20 636f 6e66 6967 7572 655f 7. - configure_ │ │ │ -001bbf00: 7374 7261 7465 6779 0a20 202d 2068 6967 strategy. - hig │ │ │ -001bbf10: 685f 6469 7372 7570 7469 6f6e 0a20 202d h_disruption. - │ │ │ -001bbf20: 206c 6f77 5f63 6f6d 706c 6578 6974 790a low_complexity. │ │ │ -001bbf30: 2020 2d20 6d65 6469 756d 5f73 6576 6572 - medium_sever │ │ │ -001bbf40: 6974 790a 2020 2d20 6d6f 756e 745f 6f70 ity. - mount_op │ │ │ -001bbf50: 7469 6f6e 5f68 6f6d 655f 6e6f 7375 6964 tion_home_nosuid │ │ │ -001bbf60: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ -001bbf70: 6565 6465 640a 0a2d 206e 616d 653a 2027 eeded..- name: ' │ │ │ -001bbf80: 4164 6420 6e6f 7375 6964 204f 7074 696f Add nosuid Optio │ │ │ -001bbf90: 6e20 746f 202f 686f 6d65 3a20 456e 7375 n to /home: Ensu │ │ │ -001bbfa0: 7265 202f 686f 6d65 2069 7320 6d6f 756e re /home is moun │ │ │ -001bbfb0: 7465 6420 7769 7468 206e 6f73 7569 6420 ted with nosuid │ │ │ -001bbfc0: 6f70 7469 6f6e 270a 2020 616e 7369 626c option'. ansibl │ │ │ -001bbfd0: 652e 706f 7369 782e 6d6f 756e 743a 0a20 e.posix.mount:. │ │ │ -001bbfe0: 2020 2070 6174 683a 202f 686f 6d65 0a20 path: /home. │ │ │ -001bbff0: 2020 2073 7263 3a20 277b 7b20 6d6f 756e src: '{{ moun │ │ │ -001bc000: 745f 696e 666f 2e73 6f75 7263 6520 7c20 t_info.source | │ │ │ -001bc010: 6465 6661 756c 7428 2727 2727 2920 7d7d default('''') }} │ │ │ -001bc020: 270a 2020 2020 6f70 7473 3a20 277b 7b20 '. opts: '{{ │ │ │ -001bc030: 6d6f 756e 745f 696e 666f 2e6f 7074 696f mount_info.optio │ │ │ -001bc040: 6e73 207c 2064 6566 6175 6c74 2827 2727 ns | default(''' │ │ │ -001bc050: 2729 207d 7d27 0a20 2020 2073 7461 7465 ') }}'. state │ │ │ -001bc060: 3a20 6d6f 756e 7465 640a 2020 2020 6673 : mounted. fs │ │ │ -001bc070: 7479 7065 3a20 277b 7b20 6d6f 756e 745f type: '{{ mount_ │ │ │ -001bc080: 696e 666f 2e66 7374 7970 6520 7c20 6465 info.fstype | de │ │ │ -001bc090: 6661 756c 7428 2727 2727 2920 7d7d 270a fault('''') }}'. │ │ │ -001bc0a0: 2020 7265 6769 7374 6572 3a20 6d6f 756e register: moun │ │ │ -001bc0b0: 745f 7265 7375 6c74 0a20 2066 6169 6c65 t_result. faile │ │ │ -001bc0c0: 645f 7768 656e 3a0a 2020 2d20 6d6f 756e d_when:. - moun │ │ │ -001bc0d0: 745f 7265 7375 6c74 2069 7320 6661 696c t_result is fail │ │ │ -001bc0e0: 6564 0a20 202d 2027 2727 7461 7267 6574 ed. - '''target │ │ │ -001bc0f0: 2069 7320 6275 7379 2727 206e 6f74 2069 is busy'' not i │ │ │ -001bc100: 6e20 286d 6f75 6e74 5f72 6573 756c 742e n (mount_result. │ │ │ -001bc110: 6d73 6720 7c20 6465 6661 756c 7428 2727 msg | default('' │ │ │ -001bc120: 2727 2929 270a 2020 2d20 2727 2761 6c72 ''))'. - '''alr │ │ │ -001bc130: 6561 6479 206d 6f75 6e74 6564 2727 206e eady mounted'' n │ │ │ -001bc140: 6f74 2069 6e20 286d 6f75 6e74 5f72 6573 ot in (mount_res │ │ │ -001bc150: 756c 742e 6d73 6720 7c20 6465 6661 756c ult.msg | defaul │ │ │ -001bc160: 7428 2727 2727 2929 270a 2020 7768 656e t(''''))'. when │ │ │ -001bc170: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b :. - ( not ( "k │ │ │ -001bc180: 6572 6e65 6c22 2069 6e20 616e 7369 626c ernel" in ansibl │ │ │ -001bc190: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -001bc1a0: 2061 6e64 2022 7270 6d2d 6f73 7472 6565 and "rpm-ostree │ │ │ -001bc1b0: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -001bc1c0: 7473 2e70 6163 6b61 6765 730a 2020 2020 ts.packages. │ │ │ -001bc1d0: 616e 6420 2262 6f6f 7463 2220 696e 2061 and "bootc" in a │ │ │ -001bc1e0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ -001bc1f0: 6b61 6765 7320 616e 6420 6e6f 7420 226f kages and not "o │ │ │ -001bc200: 7065 6e73 6869 6674 2d6b 7562 656c 6574 penshift-kubelet │ │ │ -001bc210: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -001bc220: 7473 2e70 6163 6b61 6765 730a 2020 2020 ts.packages. │ │ │ -001bc230: 616e 6420 226f 7374 7265 6522 2069 6e20 and "ostree" in │ │ │ -001bc240: 616e 7369 626c 655f 7072 6f63 5f63 6d64 ansible_proc_cmd │ │ │ -001bc250: 6c69 6e65 2029 2061 6e64 206e 6f74 2028 line ) and not ( │ │ │ -001bc260: 2061 6e73 6962 6c65 5f76 6972 7475 616c ansible_virtual │ │ │ -001bc270: 697a 6174 696f 6e5f 7479 7065 2069 6e0a ization_type in. │ │ │ -001bc280: 2020 2020 5b22 646f 636b 6572 222c 2022 ["docker", " │ │ │ -001bc290: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20 lxc", "openvz", │ │ │ -001bc2a0: 2270 6f64 6d61 6e22 2c20 2263 6f6e 7461 "podman", "conta │ │ │ -001bc2b0: 696e 6572 225d 2029 2029 0a20 202d 2027 iner"] ) ). - ' │ │ │ -001bc2c0: 222f 686f 6d65 2220 696e 2061 6e73 6962 "/home" in ansib │ │ │ -001bc2d0: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028 le_mounts | map( │ │ │ -001bc2e0: 6174 7472 6962 7574 653d 226d 6f75 6e74 attribute="mount │ │ │ -001bc2f0: 2229 207c 206c 6973 7427 0a20 202d 206d ") | list'. - m │ │ │ -001bc300: 6f75 6e74 5f69 6e66 6f20 6973 2064 6566 ount_info is def │ │ │ -001bc310: 696e 6564 0a20 202d 2028 6465 7669 6365 ined. - (device │ │ │ -001bc320: 5f6e 616d 652e 7374 646f 7574 2069 7320 _name.stdout is │ │ │ -001bc330: 6465 6669 6e65 6420 616e 6420 2864 6576 defined and (dev │ │ │ -001bc340: 6963 655f 6e61 6d65 2e73 7464 6f75 7420 ice_name.stdout │ │ │ -001bc350: 7c20 6c65 6e67 7468 2026 6774 3b20 3029 | length > 0) │ │ │ -001bc360: 2920 6f72 2028 222d 2d66 7374 6162 220a ) or ("--fstab". │ │ │ -001bc370: 2020 2020 7c20 6c65 6e67 7468 203d 3d20 | length == │ │ │ -001bc380: 3029 0a20 2074 6167 733a 0a20 202d 204e 0). tags:. - N │ │ │ -001bc390: 4953 542d 3830 302d 3533 2d41 432d 360a IST-800-53-AC-6. │ │ │ -001bc3a0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -001bc3b0: 4143 2d36 2831 290a 2020 2d20 4e49 5354 AC-6(1). - NIST │ │ │ -001bc3c0: 2d38 3030 2d35 332d 434d 2d36 2861 290a -800-53-CM-6(a). │ │ │ -001bc3d0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -001bc3e0: 434d 2d37 2861 290a 2020 2d20 4e49 5354 CM-7(a). - NIST │ │ │ -001bc3f0: 2d38 3030 2d35 332d 434d 2d37 2862 290a -800-53-CM-7(b). │ │ │ -001bc400: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -001bc410: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775 MP-7. - configu │ │ │ -001bc420: 7265 5f73 7472 6174 6567 790a 2020 2d20 re_strategy. - │ │ │ -001bc430: 6869 6768 5f64 6973 7275 7074 696f 6e0a high_disruption. │ │ │ -001bc440: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ -001bc450: 7479 0a20 202d 206d 6564 6975 6d5f 7365 ty. - medium_se │ │ │ -001bc460: 7665 7269 7479 0a20 202d 206d 6f75 6e74 verity. - mount │ │ │ -001bc470: 5f6f 7074 696f 6e5f 686f 6d65 5f6e 6f73 _option_home_nos │ │ │ -001bc480: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f uid. - no_reboo │ │ │ -001bc490: 745f 6e65 6564 6564 0a3c 2f63 6f64 653e t_needed. │ │ │ -001bc4a0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063
Remedia │ │ │ -001bc550: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ -001bc560: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -001bc5e0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:false

# Remed │ │ │ -001bc620: 6961 7469 6f6e 2069 7320 6170 706c 6963 iation is applic │ │ │ -001bc630: 6162 6c65 206f 6e6c 7920 696e 2063 6572 able only in cer │ │ │ -001bc640: 7461 696e 2070 6c61 7466 6f72 6d73 0a69 tain platforms.i │ │ │ -001bc650: 6620 2820 2120 2820 7b20 7270 6d20 2d2d f ( ! ( { rpm -- │ │ │ -001bc660: 7175 6965 7420 2d71 206b 6572 6e65 6c20 quiet -q kernel │ │ │ -001bc670: 3b7d 2026 616d 703b 2661 6d70 3b20 7b20 ;} && { │ │ │ -001bc680: 7270 6d20 2d2d 7175 6965 7420 2d71 2072 rpm --quiet -q r │ │ │ -001bc690: 706d 2d6f 7374 7265 6520 3b7d 2026 616d pm-ostree ;} &am │ │ │ -001bc6a0: 703b 2661 6d70 3b20 7b20 7270 6d20 2d2d p;& { rpm -- │ │ │ -001bc6b0: 7175 6965 7420 2d71 2062 6f6f 7463 203b quiet -q bootc ; │ │ │ -001bc6c0: 7d20 2661 6d70 3b26 616d 703b 207b 2021 } && { ! │ │ │ -001bc6d0: 2072 706d 202d 2d71 7569 6574 202d 7120 rpm --quiet -q │ │ │ -001bc6e0: 6f70 656e 7368 6966 742d 6b75 6265 6c65 openshift-kubele │ │ │ -001bc6f0: 7420 3b7d 2026 616d 703b 2661 6d70 3b20 t ;} && │ │ │ -001bc700: 285b 202d 6620 2f72 756e 2f6f 7374 7265 ([ -f /run/ostre │ │ │ -001bc710: 652d 626f 6f74 6564 205d 207c 7c20 5b20 e-booted ] || [ │ │ │ -001bc720: 2d4c 202f 6f73 7472 6565 205d 2920 2920 -L /ostree ]) ) │ │ │ -001bc730: 2661 6d70 3b26 616d 703b 2021 2028 205b && ! ( [ │ │ │ -001bc740: 202d 6620 2f2e 646f 636b 6572 656e 7620 -f /.dockerenv │ │ │ -001bc750: 5d20 7c7c 205b 202d 6620 2f72 756e 2f2e ] || [ -f /run/. │ │ │ -001bc760: 636f 6e74 6169 6e65 7265 6e76 205d 2029 containerenv ] ) │ │ │ -001bc770: 2029 2026 616d 703b 2661 6d70 3b20 7b20 ) && { │ │ │ -001bc780: 2820 6669 6e64 6d6e 7420 2d2d 6b65 726e ( findmnt --kern │ │ │ -001bc790: 656c 2022 2f68 6f6d 6522 2026 6774 3b20 el "/home" > │ │ │ -001bc7a0: 2f64 6576 2f6e 756c 6c20 7c7c 2066 696e /dev/null || fin │ │ │ -001bc7b0: 646d 6e74 202d 2d66 7374 6162 2022 2f68 dmnt --fstab "/h │ │ │ -001bc7c0: 6f6d 6522 2026 6774 3b20 2f64 6576 2f6e ome" > /dev/n │ │ │ -001bc7d0: 756c 6c20 293b 207d 3b20 7468 656e 0a0a ull ); }; then.. │ │ │ -001bc7e0: 6675 6e63 7469 6f6e 2070 6572 666f 726d function perform │ │ │ -001bc7f0: 5f72 656d 6564 6961 7469 6f6e 207b 0a0a _remediation {.. │ │ │ -001bc800: 2020 2020 0a20 2020 2020 2020 2023 2074 . # t │ │ │ -001bc810: 6865 206d 6f75 6e74 2070 6f69 6e74 202f he mount point / │ │ │ -001bc820: 686f 6d65 2068 6173 2074 6f20 6265 2064 home has to be d │ │ │ -001bc830: 6566 696e 6564 2069 6e20 2f65 7463 2f66 efined in /etc/f │ │ │ -001bc840: 7374 6162 0a20 2020 2020 2020 2023 2062 stab. # b │ │ │ -001bc850: 6566 6f72 6520 7468 6973 2072 656d 6564 efore this remed │ │ │ -001bc860: 6961 7469 6f6e 2063 616e 2062 6520 6578 iation can be ex │ │ │ -001bc870: 6563 7574 6564 2e20 496e 2063 6173 6520 ecuted. In case │ │ │ -001bc880: 6974 2069 7320 6e6f 7420 6465 6669 6e65 it is not define │ │ │ -001bc890: 642c 2074 6865 0a20 2020 2020 2020 2023 d, the. # │ │ │ -001bc8a0: 2072 656d 6564 6961 7469 6f6e 2061 626f remediation abo │ │ │ -001bc8b0: 7274 7320 616e 6420 6e6f 2063 6861 6e67 rts and no chang │ │ │ -001bc8c0: 6573 2072 6567 6172 6469 6e67 2074 6865 es regarding the │ │ │ -001bc8d0: 206d 6f75 6e74 2070 6f69 6e74 2061 7265 mount point are │ │ │ -001bc8e0: 2064 6f6e 652e 0a20 2020 2020 2020 206d done.. m │ │ │ -001bc8f0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368 ount_point_match │ │ │ -001bc900: 5f72 6567 6578 703d 2224 2870 7269 6e74 _regexp="$(print │ │ │ -001bc910: 6620 225e 5b5b 3a73 7061 6365 3a5d 5d2a f "^[[:space:]]* │ │ │ -001bc920: 5b5e 235d 2e2a 5b5b 3a73 7061 6365 3a5d [^#].*[[:space:] │ │ │ -001bc930: 5d25 735b 5b3a 7370 6163 653a 5d5d 2220 ]%s[[:space:]]" │ │ │ -001bc940: 222f 686f 6d65 2229 220a 0a20 2020 2067 "/home")".. g │ │ │ -001bc950: 7265 7020 2224 6d6f 756e 745f 706f 696e rep "$mount_poin │ │ │ -001bc960: 745f 6d61 7463 685f 7265 6765 7870 2220 t_match_regexp" │ │ │ -001bc970: 2d71 202f 6574 632f 6673 7461 6220 5c0a -q /etc/fstab \. │ │ │ -001bc980: 2020 2020 2020 2020 7c7c 207b 2065 6368 || { ech │ │ │ -001bc990: 6f20 2254 6865 206d 6f75 6e74 2070 6f69 o "The mount poi │ │ │ -001bc9a0: 6e74 2027 2f68 6f6d 6527 2069 7320 6e6f nt '/home' is no │ │ │ -001bc9b0: 7420 6576 656e 2069 6e20 2f65 7463 2f66 t even in /etc/f │ │ │ -001bc9c0: 7374 6162 2c20 736f 2077 6520 6361 6e27 stab, so we can' │ │ │ -001bc9d0: 7420 7365 7420 7570 206d 6f75 6e74 206f t set up mount o │ │ │ -001bc9e0: 7074 696f 6e73 2220 2667 743b 2661 6d70 ptions" >& │ │ │ -001bc9f0: 3b32 3b0a 2020 2020 2020 2020 2020 2020 ;2;. │ │ │ -001bca00: 2020 2020 6563 686f 2022 4e6f 7420 7265 echo "Not re │ │ │ -001bca10: 6d65 6469 6174 696e 672c 2062 6563 6175 mediating, becau │ │ │ -001bca20: 7365 2074 6865 7265 2069 7320 6e6f 2072 se there is no r │ │ │ -001bca30: 6563 6f72 6420 6f66 202f 686f 6d65 2069 ecord of /home i │ │ │ -001bca40: 6e20 2f65 7463 2f66 7374 6162 2220 2667 n /etc/fstab" &g │ │ │ -001bca50: 743b 2661 6d70 3b32 3b20 7265 7475 726e t;&2; return │ │ │ -001bca60: 2031 3b20 7d0a 2020 2020 0a0a 0a20 2020 1; }. ... │ │ │ -001bca70: 206d 6f75 6e74 5f70 6f69 6e74 5f6d 6174 mount_point_mat │ │ │ -001bca80: 6368 5f72 6567 6578 703d 2224 2870 7269 ch_regexp="$(pri │ │ │ -001bca90: 6e74 6620 225e 5b5b 3a73 7061 6365 3a5d ntf "^[[:space:] │ │ │ -001bcaa0: 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061 6365 ]*[^#].*[[:space │ │ │ -001bcab0: 3a5d 5d25 735b 5b3a 7370 6163 653a 5d5d :]]%s[[:space:]] │ │ │ -001bcac0: 2220 2f68 6f6d 6529 220a 0a20 2020 2023 " /home)".. # │ │ │ -001bcad0: 2049 6620 7468 6520 6d6f 756e 7420 706f If the mount po │ │ │ -001bcae0: 696e 7420 6973 206e 6f74 2069 6e20 2f65 int is not in /e │ │ │ -001bcaf0: 7463 2f66 7374 6162 2c20 6765 7420 7072 tc/fstab, get pr │ │ │ -001bcb00: 6576 696f 7573 206d 6f75 6e74 206f 7074 evious mount opt │ │ │ -001bcb10: 696f 6e73 2066 726f 6d20 2f65 7463 2f6d ions from /etc/m │ │ │ -001bcb20: 7461 620a 2020 2020 6966 2021 2067 7265 tab. if ! gre │ │ │ -001bcb30: 7020 2d71 2022 246d 6f75 6e74 5f70 6f69 p -q "$mount_poi │ │ │ -001bcb40: 6e74 5f6d 6174 6368 5f72 6567 6578 7022 nt_match_regexp" │ │ │ -001bcb50: 202f 6574 632f 6673 7461 623b 2074 6865 /etc/fstab; the │ │ │ -001bcb60: 6e0a 2020 2020 2020 2020 2320 7275 6e74 n. # runt │ │ │ -001bcb70: 696d 6520 6f70 7473 2077 6974 686f 7574 ime opts without │ │ │ -001bcb80: 2073 6f6d 6520 6175 746f 6d61 7469 6320 some automatic │ │ │ -001bcb90: 6b65 726e 656c 2f75 7365 7273 7061 6365 kernel/userspace │ │ │ -001bcba0: 2d61 6464 6564 2064 6566 6175 6c74 730a -added defaults. │ │ │ -001bcbb0: 2020 2020 2020 2020 7072 6576 696f 7573 previous │ │ │ -001bcbc0: 5f6d 6f75 6e74 5f6f 7074 733d 2428 6772 _mount_opts=$(gr │ │ │ -001bcbd0: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74 ep "$mount_point │ │ │ -001bcbe0: 5f6d 6174 6368 5f72 6567 6578 7022 202f _match_regexp" / │ │ │ -001bcbf0: 6574 632f 6d74 6162 207c 2068 6561 6420 etc/mtab | head │ │ │ -001bcc00: 2d31 207c 2020 6177 6b20 277b 7072 696e -1 | awk '{prin │ │ │ -001bcc10: 7420 2434 7d27 205c 0a20 2020 2020 2020 t $4}' \. │ │ │ -001bcc20: 2020 2020 2020 2020 2020 2020 207c 2073 | s │ │ │ -001bcc30: 6564 202d 4520 2273 2f28 7277 7c64 6566 ed -E "s/(rw|def │ │ │ -001bcc40: 6175 6c74 737c 7365 636c 6162 656c 7c6e aults|seclabel|n │ │ │ -001bcc50: 6f73 7569 6429 282c 7c24 292f 2f67 3b73 osuid)(,|$)//g;s │ │ │ -001bcc60: 2f2c 242f 2f22 290a 2020 2020 2020 2020 /,$//"). │ │ │ -001bcc70: 5b20 2224 7072 6576 696f 7573 5f6d 6f75 [ "$previous_mou │ │ │ -001bcc80: 6e74 5f6f 7074 7322 205d 2026 616d 703b nt_opts" ] & │ │ │ -001bcc90: 2661 6d70 3b20 7072 6576 696f 7573 5f6d & previous_m │ │ │ -001bcca0: 6f75 6e74 5f6f 7074 732b 3d22 2c22 0a20 ount_opts+=",". │ │ │ -001bccb0: 2020 2020 2020 2023 2049 6e20 6973 6f39 # In iso9 │ │ │ -001bccc0: 3636 3020 6669 6c65 7379 7374 656d 7320 660 filesystems │ │ │ -001bccd0: 6d74 6162 2063 6f75 6c64 2064 6573 6372 mtab could descr │ │ │ -001bcce0: 6962 6520 6120 2262 6c6f 636b 7369 7a65 ibe a "blocksize │ │ │ -001bccf0: 2220 7661 6c75 652c 2074 6869 7320 7368 " value, this sh │ │ │ -001bcd00: 6f75 6c64 2062 6520 7265 666c 6563 7465 ould be reflecte │ │ │ -001bcd10: 6420 696e 0a20 2020 2020 2020 2023 2066 d in. # f │ │ │ -001bcd20: 7374 6162 2061 7320 2262 6c6f 636b 222e stab as "block". │ │ │ -001bcd30: 2020 5468 6520 6e65 7874 2076 6172 6961 The next varia │ │ │ -001bcd40: 626c 6520 6973 2074 6f20 7361 7469 7366 ble is to satisf │ │ │ -001bcd50: 7920 7368 656c 6c63 6865 636b 2053 4332 y shellcheck SC2 │ │ │ -001bcd60: 3035 302e 0a20 2020 2020 2020 2066 735f 050.. fs_ │ │ │ -001bcd70: 7479 7065 3d22 220a 2020 2020 2020 2020 type="". │ │ │ -001bcd80: 6966 205b 2020 2224 6673 5f74 7970 6522 if [ "$fs_type" │ │ │ -001bcd90: 203d 3d20 2269 736f 3936 3630 2220 5d20 == "iso9660" ] │ │ │ -001bcda0: 3b20 7468 656e 0a20 2020 2020 2020 2020 ; then. │ │ │ -001bcdb0: 2020 2070 7265 7669 6f75 735f 6d6f 756e previous_moun │ │ │ -001bcdc0: 745f 6f70 7473 3d24 2873 6564 2027 732f t_opts=$(sed 's/ │ │ │ -001bcdd0: 626c 6f63 6b73 697a 653d 2f62 6c6f 636b blocksize=/block │ │ │ -001bcde0: 3d2f 2720 266c 743b 266c 743b 266c 743b =/' <<< │ │ │ -001bcdf0: 2022 2470 7265 7669 6f75 735f 6d6f 756e "$previous_moun │ │ │ -001bce00: 745f 6f70 7473 2229 0a20 2020 2020 2020 t_opts"). │ │ │ -001bce10: 2066 690a 2020 2020 2020 2020 6563 686f fi. echo │ │ │ -001bce20: 2022 202f 686f 6d65 2020 6465 6661 756c " /home defaul │ │ │ -001bce30: 7473 2c24 7b70 7265 7669 6f75 735f 6d6f ts,${previous_mo │ │ │ -001bce40: 756e 745f 6f70 7473 7d6e 6f73 7569 6420 unt_opts}nosuid │ │ │ -001bce50: 3020 3022 2026 6774 3b26 6774 3b20 2f65 0 0" >> /e │ │ │ -001bce60: 7463 2f66 7374 6162 0a20 2020 2023 2049 tc/fstab. # I │ │ │ -001bce70: 6620 7468 6520 6d6f 756e 745f 6f70 7420 f the mount_opt │ │ │ -001bce80: 6f70 7469 6f6e 2069 7320 6e6f 7420 616c option is not al │ │ │ -001bce90: 7265 6164 7920 696e 2074 6865 206d 6f75 ready in the mou │ │ │ -001bcea0: 6e74 2070 6f69 6e74 2773 202f 6574 632f nt point's /etc/ │ │ │ -001bceb0: 6673 7461 6220 656e 7472 792c 2061 6464 fstab entry, add │ │ │ -001bcec0: 2069 740a 2020 2020 656c 6966 2021 2067 it. elif ! g │ │ │ -001bced0: 7265 7020 2224 6d6f 756e 745f 706f 696e rep "$mount_poin │ │ │ -001bcee0: 745f 6d61 7463 685f 7265 6765 7870 2220 t_match_regexp" │ │ │ -001bcef0: 2f65 7463 2f66 7374 6162 207c 2067 7265 /etc/fstab | gre │ │ │ -001bcf00: 7020 2d71 2022 6e6f 7375 6964 223b 2074 p -q "nosuid"; t │ │ │ -001bcf10: 6865 6e0a 2020 2020 2020 2020 7072 6576 hen. prev │ │ │ -001bcf20: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d ious_mount_opts= │ │ │ -001bcf30: 2428 6772 6570 2022 246d 6f75 6e74 5f70 $(grep "$mount_p │ │ │ -001bcf40: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578 oint_match_regex │ │ │ -001bcf50: 7022 202f 6574 632f 6673 7461 6220 7c20 p" /etc/fstab | │ │ │ -001bcf60: 6177 6b20 277b 7072 696e 7420 2434 7d27 awk '{print $4}' │ │ │ -001bcf70: 290a 2020 2020 2020 2020 7365 6420 2d69 ). sed -i │ │ │ -001bcf80: 2022 737c 5c28 247b 6d6f 756e 745f 706f "s|\(${mount_po │ │ │ -001bcf90: 696e 745f 6d61 7463 685f 7265 6765 7870 int_match_regexp │ │ │ -001bcfa0: 7d2e 2a24 7b70 7265 7669 6f75 735f 6d6f }.*${previous_mo │ │ │ -001bcfb0: 756e 745f 6f70 7473 7d5c 297c 5c31 2c6e unt_opts}\)|\1,n │ │ │ -001bcfc0: 6f73 7569 647c 2220 2f65 7463 2f66 7374 osuid|" /etc/fst │ │ │ -001bcfd0: 6162 0a20 2020 2066 690a 0a0a 2020 2020 ab. fi... │ │ │ -001bcfe0: 6966 206d 6b64 6972 202d 7020 222f 686f if mkdir -p "/ho │ │ │ -001bcff0: 6d65 223b 2074 6865 6e0a 2020 2020 2020 me"; then. │ │ │ -001bd000: 2020 6966 206d 6f75 6e74 706f 696e 7420 if mountpoint │ │ │ -001bd010: 2d71 2022 2f68 6f6d 6522 3b20 7468 656e -q "/home"; then │ │ │ -001bd020: 0a20 2020 2020 2020 2020 2020 206d 6f75 . mou │ │ │ -001bd030: 6e74 202d 6f20 7265 6d6f 756e 7420 2d2d nt -o remount -- │ │ │ -001bd040: 7461 7267 6574 2022 2f68 6f6d 6522 0a20 target "/home". │ │ │ -001bd050: 2020 2020 2020 2066 690a 2020 2020 6669 fi. fi │ │ │ -001bd060: 0a7d 0a0a 7065 7266 6f72 6d5f 7265 6d65 .}..perform_reme │ │ │ -001bd070: 6469 6174 696f 6e0a 0a65 6c73 650a 2020 diation..else. │ │ │ -001bd080: 2020 2667 743b 2661 6d70 3b32 2065 6368 >&2 ech │ │ │ -001bd090: 6f20 2752 656d 6564 6961 7469 6f6e 2069 o 'Remediation i │ │ │ -001bd0a0: 7320 6e6f 7420 6170 706c 6963 6162 6c65 s not applicable │ │ │ -001bd0b0: 2c20 6e6f 7468 696e 6720 7761 7320 646f , nothing was do │ │ │ -001bd0c0: 6e65 270a 6669 0a3c 2f63 6f64 653e 3c2f ne'.fi.

│ │ │ +001bab40: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +001bab50: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f │ │ │ +001bab90: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:low
Disrup │ │ │ +001bab20: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6869 tion:hi │ │ │ +001bab30: 6768 3c2f 7464 3e3c 2f74 723e 3c74 723e gh
Reboot:false
Strat │ │ │ +001bab70: 6567 793a 3c2f 7468 3e3c 7464 3e63 6f6e egy:con │ │ │ +001bab80: 6669 6775 7265 3c2f 7464 3e3c 2f74 723e figure
- name: Gathe
│ │ │ +001babb0: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ +001babc0: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ +001babd0: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ +001babe0: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ +001babf0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001bac00: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ +001bac10: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ +001bac20: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +001bac30: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001bac40: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ +001bac50: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001bac60: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ +001bac70: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ +001bac80: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +001bac90: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ +001baca0: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ +001bacb0: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ +001bacc0: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ +001bacd0: 6f75 6e74 5f6f 7074 696f 6e5f 686f 6d65  ount_option_home
│ │ │ +001bace0: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ +001bacf0: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +001bad00: 6e61 6d65 3a20 2741 6464 206e 6f73 7569  name: 'Add nosui
│ │ │ +001bad10: 6420 4f70 7469 6f6e 2074 6f20 2f68 6f6d  d Option to /hom
│ │ │ +001bad20: 653a 2043 6865 636b 2069 6e66 6f72 6d61  e: Check informa
│ │ │ +001bad30: 7469 6f6e 2061 7373 6f63 6961 7465 6420  tion associated 
│ │ │ +001bad40: 746f 206d 6f75 6e74 706f 696e 7427 0a20  to mountpoint'. 
│ │ │ +001bad50: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +001bad60: 2e63 6f6d 6d61 6e64 3a20 6669 6e64 6d6e  .command: findmn
│ │ │ +001bad70: 7420 2d2d 6673 7461 6220 272f 686f 6d65  t --fstab '/home
│ │ │ +001bad80: 270a 2020 7265 6769 7374 6572 3a20 6465  '.  register: de
│ │ │ +001bad90: 7669 6365 5f6e 616d 650a 2020 6661 696c  vice_name.  fail
│ │ │ +001bada0: 6564 5f77 6865 6e3a 2064 6576 6963 655f  ed_when: device_
│ │ │ +001badb0: 6e61 6d65 2e72 6320 2667 743b 2031 0a20  name.rc > 1. 
│ │ │ +001badc0: 2063 6861 6e67 6564 5f77 6865 6e3a 2066   changed_when: f
│ │ │ +001badd0: 616c 7365 0a20 2063 6865 636b 5f6d 6f64  alse.  check_mod
│ │ │ +001bade0: 653a 2066 616c 7365 0a20 2077 6865 6e3a  e: false.  when:
│ │ │ +001badf0: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ +001bae00: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +001bae10: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001bae20: 616e 6420 2272 706d 2d6f 7374 7265 6522  and "rpm-ostree"
│ │ │ +001bae30: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001bae40: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001bae50: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ +001bae60: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001bae70: 6167 6573 2061 6e64 206e 6f74 2022 6f70  ages and not "op
│ │ │ +001bae80: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ +001bae90: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001baea0: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001baeb0: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ +001baec0: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ +001baed0: 696e 6520 2920 616e 6420 6e6f 7420 2820  ine ) and not ( 
│ │ │ +001baee0: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ +001baef0: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20  zation_type in. 
│ │ │ +001baf00: 2020 205b 2264 6f63 6b65 7222 2c20 226c     ["docker", "l
│ │ │ +001baf10: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ +001baf20: 706f 646d 616e 222c 2022 636f 6e74 6169  podman", "contai
│ │ │ +001baf30: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ +001baf40: 2f68 6f6d 6522 2069 6e20 616e 7369 626c  /home" in ansibl
│ │ │ +001baf50: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ +001baf60: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ +001baf70: 2920 7c20 6c69 7374 270a 2020 7461 6773  ) | list'.  tags
│ │ │ +001baf80: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +001baf90: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ +001bafa0: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ +001bafb0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001bafc0: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ +001bafd0: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ +001bafe0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001baff0: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ +001bb000: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ +001bb010: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +001bb020: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +001bb030: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +001bb040: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +001bb050: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001bb060: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f68  - mount_option_h
│ │ │ +001bb070: 6f6d 655f 6e6f 7375 6964 0a20 202d 206e  ome_nosuid.  - n
│ │ │ +001bb080: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +001bb090: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ +001bb0a0: 7375 6964 204f 7074 696f 6e20 746f 202f  suid Option to /
│ │ │ +001bb0b0: 686f 6d65 3a20 4372 6561 7465 206d 6f75  home: Create mou
│ │ │ +001bb0c0: 6e74 5f69 6e66 6f20 6469 6374 696f 6e61  nt_info dictiona
│ │ │ +001bb0d0: 7279 2076 6172 6961 626c 6527 0a20 2073  ry variable'.  s
│ │ │ +001bb0e0: 6574 5f66 6163 743a 0a20 2020 206d 6f75  et_fact:.    mou
│ │ │ +001bb0f0: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75  nt_info: '{{ mou
│ │ │ +001bb100: 6e74 5f69 6e66 6f7c 6465 6661 756c 7428  nt_info|default(
│ │ │ +001bb110: 7b7d 297c 636f 6d62 696e 6528 7b69 7465  {})|combine({ite
│ │ │ +001bb120: 6d2e 303a 2069 7465 6d2e 317d 2920 7d7d  m.0: item.1}) }}
│ │ │ +001bb130: 270a 2020 7769 7468 5f74 6f67 6574 6865  '.  with_togethe
│ │ │ +001bb140: 723a 0a20 202d 2027 7b7b 2064 6576 6963  r:.  - '{{ devic
│ │ │ +001bb150: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ +001bb160: 6e65 735b 305d 2e73 706c 6974 2829 207c  nes[0].split() |
│ │ │ +001bb170: 206d 6170 2827 276c 6f77 6572 2727 2920   map(''lower'') 
│ │ │ +001bb180: 7c20 6c69 7374 207d 7d27 0a20 202d 2027  | list }}'.  - '
│ │ │ +001bb190: 7b7b 2064 6576 6963 655f 6e61 6d65 2e73  {{ device_name.s
│ │ │ +001bb1a0: 7464 6f75 745f 6c69 6e65 735b 315d 2e73  tdout_lines[1].s
│ │ │ +001bb1b0: 706c 6974 2829 207c 206c 6973 7420 7d7d  plit() | list }}
│ │ │ +001bb1c0: 270a 2020 7768 656e 3a0a 2020 2d20 2820  '.  when:.  - ( 
│ │ │ +001bb1d0: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ +001bb1e0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001bb1f0: 7061 636b 6167 6573 2061 6e64 2022 7270  packages and "rp
│ │ │ +001bb200: 6d2d 6f73 7472 6565 2220 696e 2061 6e73  m-ostree" in ans
│ │ │ +001bb210: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001bb220: 6765 730a 2020 2020 616e 6420 2262 6f6f  ges.    and "boo
│ │ │ +001bb230: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ +001bb240: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001bb250: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ +001bb260: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ +001bb270: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001bb280: 6765 730a 2020 2020 616e 6420 226f 7374  ges.    and "ost
│ │ │ +001bb290: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001bb2a0: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061  proc_cmdline ) a
│ │ │ +001bb2b0: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ +001bb2c0: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ +001bb2d0: 7479 7065 2069 6e0a 2020 2020 5b22 646f  type in.    ["do
│ │ │ +001bb2e0: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ +001bb2f0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ +001bb300: 2c20 2263 6f6e 7461 696e 6572 225d 2029  , "container"] )
│ │ │ +001bb310: 2029 0a20 202d 2027 222f 686f 6d65 2220   ).  - '"/home" 
│ │ │ +001bb320: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ +001bb330: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ +001bb340: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ +001bb350: 7427 0a20 202d 2064 6576 6963 655f 6e61  t'.  - device_na
│ │ │ +001bb360: 6d65 2e73 7464 6f75 7420 6973 2064 6566  me.stdout is def
│ │ │ +001bb370: 696e 6564 2061 6e64 2064 6576 6963 655f  ined and device_
│ │ │ +001bb380: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ +001bb390: 7320 6973 2064 6566 696e 6564 0a20 202d  s is defined.  -
│ │ │ +001bb3a0: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ +001bb3b0: 646f 7574 207c 206c 656e 6774 6820 2667  dout | length &g
│ │ │ +001bb3c0: 743b 2030 290a 2020 7461 6773 3a0a 2020  t; 0).  tags:.  
│ │ │ +001bb3d0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001bb3e0: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ +001bb3f0: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ +001bb400: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +001bb410: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001bb420: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ +001bb430: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001bb440: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ +001bb450: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ +001bb460: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +001bb470: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ +001bb480: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ +001bb490: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ +001bb4a0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ +001bb4b0: 756e 745f 6f70 7469 6f6e 5f68 6f6d 655f  unt_option_home_
│ │ │ +001bb4c0: 6e6f 7375 6964 0a20 202d 206e 6f5f 7265  nosuid.  - no_re
│ │ │ +001bb4d0: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ +001bb4e0: 616d 653a 2027 4164 6420 6e6f 7375 6964  ame: 'Add nosuid
│ │ │ +001bb4f0: 204f 7074 696f 6e20 746f 202f 686f 6d65   Option to /home
│ │ │ +001bb500: 3a20 4966 202f 686f 6d65 206e 6f74 206d  : If /home not m
│ │ │ +001bb510: 6f75 6e74 6564 2c20 6372 6166 7420 6d6f  ounted, craft mo
│ │ │ +001bb520: 756e 745f 696e 666f 206d 616e 7561 6c6c  unt_info manuall
│ │ │ +001bb530: 7927 0a20 2073 6574 5f66 6163 743a 0a20  y'.  set_fact:. 
│ │ │ +001bb540: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ +001bb550: 7b7b 206d 6f75 6e74 5f69 6e66 6f7c 6465  {{ mount_info|de
│ │ │ +001bb560: 6661 756c 7428 7b7d 297c 636f 6d62 696e  fault({})|combin
│ │ │ +001bb570: 6528 7b69 7465 6d2e 303a 2069 7465 6d2e  e({item.0: item.
│ │ │ +001bb580: 317d 2920 7d7d 270a 2020 7769 7468 5f74  1}) }}'.  with_t
│ │ │ +001bb590: 6f67 6574 6865 723a 0a20 202d 202d 2074  ogether:.  - - t
│ │ │ +001bb5a0: 6172 6765 740a 2020 2020 2d20 736f 7572  arget.    - sour
│ │ │ +001bb5b0: 6365 0a20 2020 202d 2066 7374 7970 650a  ce.    - fstype.
│ │ │ +001bb5c0: 2020 2020 2d20 6f70 7469 6f6e 730a 2020      - options.  
│ │ │ +001bb5d0: 2d20 2d20 2f68 6f6d 650a 2020 2020 2d20  - - /home.    - 
│ │ │ +001bb5e0: 2727 0a20 2020 202d 2027 270a 2020 2020  ''.    - ''.    
│ │ │ +001bb5f0: 2d20 6465 6661 756c 7473 0a20 2077 6865  - defaults.  whe
│ │ │ +001bb600: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +001bb610: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001bb620: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001bb630: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ +001bb640: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ +001bb650: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001bb660: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ +001bb670: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001bb680: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ +001bb690: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +001bb6a0: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ +001bb6b0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001bb6c0: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ +001bb6d0: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ +001bb6e0: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ +001bb6f0: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ +001bb700: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ +001bb710: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ +001bb720: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ +001bb730: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ +001bb740: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ +001bb750: 2722 2f68 6f6d 6522 2069 6e20 616e 7369  '"/home" in ansi
│ │ │ +001bb760: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ +001bb770: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ +001bb780: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ +001bb790: 2822 2d2d 6673 7461 6222 207c 206c 656e  ("--fstab" | len
│ │ │ +001bb7a0: 6774 6820 3d3d 2030 290a 2020 2d20 6465  gth == 0).  - de
│ │ │ +001bb7b0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001bb7c0: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ +001bb7d0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001bb7e0: 7574 5f6c 696e 6573 2069 7320 6465 6669  ut_lines is defi
│ │ │ +001bb7f0: 6e65 640a 2020 2d20 2864 6576 6963 655f  ned.  - (device_
│ │ │ +001bb800: 6e61 6d65 2e73 7464 6f75 7420 7c20 6c65  name.stdout | le
│ │ │ +001bb810: 6e67 7468 203d 3d20 3029 0a20 2074 6167  ngth == 0).  tag
│ │ │ +001bb820: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +001bb830: 3533 2d41 432d 360a 2020 2d20 4e49 5354  53-AC-6.  - NIST
│ │ │ +001bb840: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ +001bb850: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001bb860: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ +001bb870: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ +001bb880: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001bb890: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ +001bb8a0: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d  -800-53-MP-7.  -
│ │ │ +001bb8b0: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ +001bb8c0: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ +001bb8d0: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ +001bb8e0: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +001bb8f0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +001bb900: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ +001bb910: 686f 6d65 5f6e 6f73 7569 640a 2020 2d20  home_nosuid.  - 
│ │ │ +001bb920: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001bb930: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ +001bb940: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20  osuid Option to 
│ │ │ +001bb950: 2f68 6f6d 653a 204d 616b 6520 7375 7265  /home: Make sure
│ │ │ +001bb960: 206e 6f73 7569 6420 6f70 7469 6f6e 2069   nosuid option i
│ │ │ +001bb970: 7320 7061 7274 206f 6620 7468 6520 746f  s part of the to
│ │ │ +001bb980: 202f 686f 6d65 0a20 2020 206f 7074 696f   /home.    optio
│ │ │ +001bb990: 6e73 270a 2020 7365 745f 6661 6374 3a0a  ns'.  set_fact:.
│ │ │ +001bb9a0: 2020 2020 6d6f 756e 745f 696e 666f 3a20      mount_info: 
│ │ │ +001bb9b0: 277b 7b20 6d6f 756e 745f 696e 666f 207c  '{{ mount_info |
│ │ │ +001bb9c0: 2063 6f6d 6269 6e65 2820 7b27 276f 7074   combine( {''opt
│ │ │ +001bb9d0: 696f 6e73 2727 3a27 2727 277e 286d 6f75  ions'':''''~(mou
│ │ │ +001bb9e0: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ +001bb9f0: 7c0a 2020 2020 2020 6465 6661 756c 7428  |.      default(
│ │ │ +001bba00: 2727 2727 2929 7e28 2727 2c27 2720 6966  ''''))~('','' if
│ │ │ +001bba10: 2028 6d6f 756e 745f 696e 666f 2e6f 7074   (mount_info.opt
│ │ │ +001bba20: 696f 6e73 207c 2064 6566 6175 6c74 2827  ions | default('
│ │ │ +001bba30: 2727 2729 2920 656c 7365 2027 2727 2729  ''')) else '''')
│ │ │ +001bba40: 7e27 276e 6f73 7569 6427 270a 2020 2020  ~''nosuid''.    
│ │ │ +001bba50: 2020 7d29 207d 7d27 0a20 2077 6865 6e3a    }) }}'.  when:
│ │ │ +001bba60: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ +001bba70: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +001bba80: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001bba90: 616e 6420 2272 706d 2d6f 7374 7265 6522  and "rpm-ostree"
│ │ │ +001bbaa0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001bbab0: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001bbac0: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ +001bbad0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001bbae0: 6167 6573 2061 6e64 206e 6f74 2022 6f70  ages and not "op
│ │ │ +001bbaf0: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ +001bbb00: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001bbb10: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001bbb20: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ +001bbb30: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ +001bbb40: 696e 6520 2920 616e 6420 6e6f 7420 2820  ine ) and not ( 
│ │ │ +001bbb50: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ +001bbb60: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20  zation_type in. 
│ │ │ +001bbb70: 2020 205b 2264 6f63 6b65 7222 2c20 226c     ["docker", "l
│ │ │ +001bbb80: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ +001bbb90: 706f 646d 616e 222c 2022 636f 6e74 6169  podman", "contai
│ │ │ +001bbba0: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ +001bbbb0: 2f68 6f6d 6522 2069 6e20 616e 7369 626c  /home" in ansibl
│ │ │ +001bbbc0: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ +001bbbd0: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ +001bbbe0: 2920 7c20 6c69 7374 270a 2020 2d20 6d6f  ) | list'.  - mo
│ │ │ +001bbbf0: 756e 745f 696e 666f 2069 7320 6465 6669  unt_info is defi
│ │ │ +001bbc00: 6e65 6420 616e 6420 226e 6f73 7569 6422  ned and "nosuid"
│ │ │ +001bbc10: 206e 6f74 2069 6e20 286d 6f75 6e74 5f69   not in (mount_i
│ │ │ +001bbc20: 6e66 6f2e 6f70 7469 6f6e 7320 7c20 6465  nfo.options | de
│ │ │ +001bbc30: 6661 756c 7428 2727 2929 0a20 2074 6167  fault('')).  tag
│ │ │ +001bbc40: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +001bbc50: 3533 2d41 432d 360a 2020 2d20 4e49 5354  53-AC-6.  - NIST
│ │ │ +001bbc60: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ +001bbc70: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001bbc80: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ +001bbc90: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ +001bbca0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001bbcb0: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ +001bbcc0: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d  -800-53-MP-7.  -
│ │ │ +001bbcd0: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ +001bbce0: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ +001bbcf0: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ +001bbd00: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +001bbd10: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +001bbd20: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ +001bbd30: 686f 6d65 5f6e 6f73 7569 640a 2020 2d20  home_nosuid.  - 
│ │ │ +001bbd40: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001bbd50: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ +001bbd60: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20  osuid Option to 
│ │ │ +001bbd70: 2f68 6f6d 653a 2045 6e73 7572 6520 2f68  /home: Ensure /h
│ │ │ +001bbd80: 6f6d 6520 6973 206d 6f75 6e74 6564 2077  ome is mounted w
│ │ │ +001bbd90: 6974 6820 6e6f 7375 6964 206f 7074 696f  ith nosuid optio
│ │ │ +001bbda0: 6e27 0a20 2061 6e73 6962 6c65 2e70 6f73  n'.  ansible.pos
│ │ │ +001bbdb0: 6978 2e6d 6f75 6e74 3a0a 2020 2020 7061  ix.mount:.    pa
│ │ │ +001bbdc0: 7468 3a20 2f68 6f6d 650a 2020 2020 7372  th: /home.    sr
│ │ │ +001bbdd0: 633a 2027 7b7b 206d 6f75 6e74 5f69 6e66  c: '{{ mount_inf
│ │ │ +001bbde0: 6f2e 736f 7572 6365 207c 2064 6566 6175  o.source | defau
│ │ │ +001bbdf0: 6c74 2827 2727 2729 207d 7d27 0a20 2020  lt('''') }}'.   
│ │ │ +001bbe00: 206f 7074 733a 2027 7b7b 206d 6f75 6e74   opts: '{{ mount
│ │ │ +001bbe10: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ +001bbe20: 6465 6661 756c 7428 2727 2727 2920 7d7d  default('''') }}
│ │ │ +001bbe30: 270a 2020 2020 7374 6174 653a 206d 6f75  '.    state: mou
│ │ │ +001bbe40: 6e74 6564 0a20 2020 2066 7374 7970 653a  nted.    fstype:
│ │ │ +001bbe50: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ +001bbe60: 6673 7479 7065 207c 2064 6566 6175 6c74  fstype | default
│ │ │ +001bbe70: 2827 2727 2729 207d 7d27 0a20 2072 6567  ('''') }}'.  reg
│ │ │ +001bbe80: 6973 7465 723a 206d 6f75 6e74 5f72 6573  ister: mount_res
│ │ │ +001bbe90: 756c 740a 2020 6661 696c 6564 5f77 6865  ult.  failed_whe
│ │ │ +001bbea0: 6e3a 0a20 202d 206d 6f75 6e74 5f72 6573  n:.  - mount_res
│ │ │ +001bbeb0: 756c 7420 6973 2066 6169 6c65 640a 2020  ult is failed.  
│ │ │ +001bbec0: 2d20 2727 2774 6172 6765 7420 6973 2062  - '''target is b
│ │ │ +001bbed0: 7573 7927 2720 6e6f 7420 696e 2028 6d6f  usy'' not in (mo
│ │ │ +001bbee0: 756e 745f 7265 7375 6c74 2e6d 7367 207c  unt_result.msg |
│ │ │ +001bbef0: 2064 6566 6175 6c74 2827 2727 2729 2927   default(''''))'
│ │ │ +001bbf00: 0a20 202d 2027 2727 616c 7265 6164 7920  .  - '''already 
│ │ │ +001bbf10: 6d6f 756e 7465 6427 2720 6e6f 7420 696e  mounted'' not in
│ │ │ +001bbf20: 2028 6d6f 756e 745f 7265 7375 6c74 2e6d   (mount_result.m
│ │ │ +001bbf30: 7367 207c 2064 6566 6175 6c74 2827 2727  sg | default('''
│ │ │ +001bbf40: 2729 2927 0a20 2077 6865 6e3a 0a20 202d  '))'.  when:.  -
│ │ │ +001bbf50: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ +001bbf60: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001bbf70: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001bbf80: 2272 706d 2d6f 7374 7265 6522 2069 6e20  "rpm-ostree" in 
│ │ │ +001bbf90: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001bbfa0: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ +001bbfb0: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ +001bbfc0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001bbfd0: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ +001bbfe0: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ +001bbff0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001bc000: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ +001bc010: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001bc020: 6c65 5f70 726f 635f 636d 646c 696e 6520  le_proc_cmdline 
│ │ │ +001bc030: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ +001bc040: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ +001bc050: 6f6e 5f74 7970 6520 696e 0a20 2020 205b  on_type in.    [
│ │ │ +001bc060: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ +001bc070: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ +001bc080: 616e 222c 2022 636f 6e74 6169 6e65 7222  an", "container"
│ │ │ +001bc090: 5d20 2920 290a 2020 2d20 2722 2f68 6f6d  ] ) ).  - '"/hom
│ │ │ +001bc0a0: 6522 2069 6e20 616e 7369 626c 655f 6d6f  e" in ansible_mo
│ │ │ +001bc0b0: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ +001bc0c0: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ +001bc0d0: 6c69 7374 270a 2020 2d20 6d6f 756e 745f  list'.  - mount_
│ │ │ +001bc0e0: 696e 666f 2069 7320 6465 6669 6e65 640a  info is defined.
│ │ │ +001bc0f0: 2020 2d20 2864 6576 6963 655f 6e61 6d65    - (device_name
│ │ │ +001bc100: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ +001bc110: 6564 2061 6e64 2028 6465 7669 6365 5f6e  ed and (device_n
│ │ │ +001bc120: 616d 652e 7374 646f 7574 207c 206c 656e  ame.stdout | len
│ │ │ +001bc130: 6774 6820 2667 743b 2030 2929 206f 7220  gth > 0)) or 
│ │ │ +001bc140: 2822 2d2d 6673 7461 6222 0a20 2020 207c  ("--fstab".    |
│ │ │ +001bc150: 206c 656e 6774 6820 3d3d 2030 290a 2020   length == 0).  
│ │ │ +001bc160: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +001bc170: 3030 2d35 332d 4143 2d36 0a20 202d 204e  00-53-AC-6.  - N
│ │ │ +001bc180: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ +001bc190: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ +001bc1a0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ +001bc1b0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001bc1c0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001bc1d0: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ +001bc1e0: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ +001bc1f0: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +001bc200: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +001bc210: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +001bc220: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +001bc230: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001bc240: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ +001bc250: 6f6e 5f68 6f6d 655f 6e6f 7375 6964 0a20  on_home_nosuid. 
│ │ │ +001bc260: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +001bc270: 6465 640a 3c2f 636f 6465 3e3c 2f70 7265  ded.
Remediation │ │ │ +001bc330: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ +001bc340: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Reboot:false
# Remediatio
│ │ │ +001bc400: 6e20 6973 2061 7070 6c69 6361 626c 6520  n is applicable 
│ │ │ +001bc410: 6f6e 6c79 2069 6e20 6365 7274 6169 6e20  only in certain 
│ │ │ +001bc420: 706c 6174 666f 726d 730a 6966 2028 2021  platforms.if ( !
│ │ │ +001bc430: 2028 207b 2072 706d 202d 2d71 7569 6574   ( { rpm --quiet
│ │ │ +001bc440: 202d 7120 6b65 726e 656c 203b 7d20 2661   -q kernel ;} &a
│ │ │ +001bc450: 6d70 3b26 616d 703b 207b 2072 706d 202d  mp;& { rpm -
│ │ │ +001bc460: 2d71 7569 6574 202d 7120 7270 6d2d 6f73  -quiet -q rpm-os
│ │ │ +001bc470: 7472 6565 203b 7d20 2661 6d70 3b26 616d  tree ;} &&am
│ │ │ +001bc480: 703b 207b 2072 706d 202d 2d71 7569 6574  p; { rpm --quiet
│ │ │ +001bc490: 202d 7120 626f 6f74 6320 3b7d 2026 616d   -q bootc ;} &am
│ │ │ +001bc4a0: 703b 2661 6d70 3b20 7b20 2120 7270 6d20  p;& { ! rpm 
│ │ │ +001bc4b0: 2d2d 7175 6965 7420 2d71 206f 7065 6e73  --quiet -q opens
│ │ │ +001bc4c0: 6869 6674 2d6b 7562 656c 6574 203b 7d20  hift-kubelet ;} 
│ │ │ +001bc4d0: 2661 6d70 3b26 616d 703b 2028 5b20 2d66  && ([ -f
│ │ │ +001bc4e0: 202f 7275 6e2f 6f73 7472 6565 2d62 6f6f   /run/ostree-boo
│ │ │ +001bc4f0: 7465 6420 5d20 7c7c 205b 202d 4c20 2f6f  ted ] || [ -L /o
│ │ │ +001bc500: 7374 7265 6520 5d29 2029 2026 616d 703b  stree ]) ) &
│ │ │ +001bc510: 2661 6d70 3b20 2120 2820 5b20 2d66 202f  & ! ( [ -f /
│ │ │ +001bc520: 2e64 6f63 6b65 7265 6e76 205d 207c 7c20  .dockerenv ] || 
│ │ │ +001bc530: 5b20 2d66 202f 7275 6e2f 2e63 6f6e 7461  [ -f /run/.conta
│ │ │ +001bc540: 696e 6572 656e 7620 5d20 2920 2920 2661  inerenv ] ) ) &a
│ │ │ +001bc550: 6d70 3b26 616d 703b 207b 2028 2066 696e  mp;& { ( fin
│ │ │ +001bc560: 646d 6e74 202d 2d6b 6572 6e65 6c20 222f  dmnt --kernel "/
│ │ │ +001bc570: 686f 6d65 2220 2667 743b 202f 6465 762f  home" > /dev/
│ │ │ +001bc580: 6e75 6c6c 207c 7c20 6669 6e64 6d6e 7420  null || findmnt 
│ │ │ +001bc590: 2d2d 6673 7461 6220 222f 686f 6d65 2220  --fstab "/home" 
│ │ │ +001bc5a0: 2667 743b 202f 6465 762f 6e75 6c6c 2029  > /dev/null )
│ │ │ +001bc5b0: 3b20 7d3b 2074 6865 6e0a 0a66 756e 6374  ; }; then..funct
│ │ │ +001bc5c0: 696f 6e20 7065 7266 6f72 6d5f 7265 6d65  ion perform_reme
│ │ │ +001bc5d0: 6469 6174 696f 6e20 7b0a 0a20 2020 200a  diation {..    .
│ │ │ +001bc5e0: 2020 2020 2020 2020 2320 7468 6520 6d6f          # the mo
│ │ │ +001bc5f0: 756e 7420 706f 696e 7420 2f68 6f6d 6520  unt point /home 
│ │ │ +001bc600: 6861 7320 746f 2062 6520 6465 6669 6e65  has to be define
│ │ │ +001bc610: 6420 696e 202f 6574 632f 6673 7461 620a  d in /etc/fstab.
│ │ │ +001bc620: 2020 2020 2020 2020 2320 6265 666f 7265          # before
│ │ │ +001bc630: 2074 6869 7320 7265 6d65 6469 6174 696f   this remediatio
│ │ │ +001bc640: 6e20 6361 6e20 6265 2065 7865 6375 7465  n can be execute
│ │ │ +001bc650: 642e 2049 6e20 6361 7365 2069 7420 6973  d. In case it is
│ │ │ +001bc660: 206e 6f74 2064 6566 696e 6564 2c20 7468   not defined, th
│ │ │ +001bc670: 650a 2020 2020 2020 2020 2320 7265 6d65  e.        # reme
│ │ │ +001bc680: 6469 6174 696f 6e20 6162 6f72 7473 2061  diation aborts a
│ │ │ +001bc690: 6e64 206e 6f20 6368 616e 6765 7320 7265  nd no changes re
│ │ │ +001bc6a0: 6761 7264 696e 6720 7468 6520 6d6f 756e  garding the moun
│ │ │ +001bc6b0: 7420 706f 696e 7420 6172 6520 646f 6e65  t point are done
│ │ │ +001bc6c0: 2e0a 2020 2020 2020 2020 6d6f 756e 745f  ..        mount_
│ │ │ +001bc6d0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001bc6e0: 7870 3d22 2428 7072 696e 7466 2022 5e5b  xp="$(printf "^[
│ │ │ +001bc6f0: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e  [:space:]]*[^#].
│ │ │ +001bc700: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b  *[[:space:]]%s[[
│ │ │ +001bc710: 3a73 7061 6365 3a5d 5d22 2022 2f68 6f6d  :space:]]" "/hom
│ │ │ +001bc720: 6522 2922 0a0a 2020 2020 6772 6570 2022  e")"..    grep "
│ │ │ +001bc730: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ +001bc740: 6368 5f72 6567 6578 7022 202d 7120 2f65  ch_regexp" -q /e
│ │ │ +001bc750: 7463 2f66 7374 6162 205c 0a20 2020 2020  tc/fstab \.     
│ │ │ +001bc760: 2020 207c 7c20 7b20 6563 686f 2022 5468     || { echo "Th
│ │ │ +001bc770: 6520 6d6f 756e 7420 706f 696e 7420 272f  e mount point '/
│ │ │ +001bc780: 686f 6d65 2720 6973 206e 6f74 2065 7665  home' is not eve
│ │ │ +001bc790: 6e20 696e 202f 6574 632f 6673 7461 622c  n in /etc/fstab,
│ │ │ +001bc7a0: 2073 6f20 7765 2063 616e 2774 2073 6574   so we can't set
│ │ │ +001bc7b0: 2075 7020 6d6f 756e 7420 6f70 7469 6f6e   up mount option
│ │ │ +001bc7c0: 7322 2026 6774 3b26 616d 703b 323b 0a20  s" >&2;. 
│ │ │ +001bc7d0: 2020 2020 2020 2020 2020 2020 2020 2065                 e
│ │ │ +001bc7e0: 6368 6f20 224e 6f74 2072 656d 6564 6961  cho "Not remedia
│ │ │ +001bc7f0: 7469 6e67 2c20 6265 6361 7573 6520 7468  ting, because th
│ │ │ +001bc800: 6572 6520 6973 206e 6f20 7265 636f 7264  ere is no record
│ │ │ +001bc810: 206f 6620 2f68 6f6d 6520 696e 202f 6574   of /home in /et
│ │ │ +001bc820: 632f 6673 7461 6222 2026 6774 3b26 616d  c/fstab" >&am
│ │ │ +001bc830: 703b 323b 2072 6574 7572 6e20 313b 207d  p;2; return 1; }
│ │ │ +001bc840: 0a20 2020 200a 0a0a 2020 2020 6d6f 756e  .    ...    moun
│ │ │ +001bc850: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001bc860: 6765 7870 3d22 2428 7072 696e 7466 2022  gexp="$(printf "
│ │ │ +001bc870: 5e5b 5b3a 7370 6163 653a 5d5d 2a5b 5e23  ^[[:space:]]*[^#
│ │ │ +001bc880: 5d2e 2a5b 5b3a 7370 6163 653a 5d5d 2573  ].*[[:space:]]%s
│ │ │ +001bc890: 5b5b 3a73 7061 6365 3a5d 5d22 202f 686f  [[:space:]]" /ho
│ │ │ +001bc8a0: 6d65 2922 0a0a 2020 2020 2320 4966 2074  me)"..    # If t
│ │ │ +001bc8b0: 6865 206d 6f75 6e74 2070 6f69 6e74 2069  he mount point i
│ │ │ +001bc8c0: 7320 6e6f 7420 696e 202f 6574 632f 6673  s not in /etc/fs
│ │ │ +001bc8d0: 7461 622c 2067 6574 2070 7265 7669 6f75  tab, get previou
│ │ │ +001bc8e0: 7320 6d6f 756e 7420 6f70 7469 6f6e 7320  s mount options 
│ │ │ +001bc8f0: 6672 6f6d 202f 6574 632f 6d74 6162 0a20  from /etc/mtab. 
│ │ │ +001bc900: 2020 2069 6620 2120 6772 6570 202d 7120     if ! grep -q 
│ │ │ +001bc910: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ +001bc920: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ +001bc930: 2f66 7374 6162 3b20 7468 656e 0a20 2020  /fstab; then.   
│ │ │ +001bc940: 2020 2020 2023 2072 756e 7469 6d65 206f       # runtime o
│ │ │ +001bc950: 7074 7320 7769 7468 6f75 7420 736f 6d65  pts without some
│ │ │ +001bc960: 2061 7574 6f6d 6174 6963 206b 6572 6e65   automatic kerne
│ │ │ +001bc970: 6c2f 7573 6572 7370 6163 652d 6164 6465  l/userspace-adde
│ │ │ +001bc980: 6420 6465 6661 756c 7473 0a20 2020 2020  d defaults.     
│ │ │ +001bc990: 2020 2070 7265 7669 6f75 735f 6d6f 756e     previous_moun
│ │ │ +001bc9a0: 745f 6f70 7473 3d24 2867 7265 7020 2224  t_opts=$(grep "$
│ │ │ +001bc9b0: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001bc9c0: 685f 7265 6765 7870 2220 2f65 7463 2f6d  h_regexp" /etc/m
│ │ │ +001bc9d0: 7461 6220 7c20 6865 6164 202d 3120 7c20  tab | head -1 | 
│ │ │ +001bc9e0: 2061 776b 2027 7b70 7269 6e74 2024 347d   awk '{print $4}
│ │ │ +001bc9f0: 2720 5c0a 2020 2020 2020 2020 2020 2020  ' \.            
│ │ │ +001bca00: 2020 2020 2020 2020 7c20 7365 6420 2d45          | sed -E
│ │ │ +001bca10: 2022 732f 2872 777c 6465 6661 756c 7473   "s/(rw|defaults
│ │ │ +001bca20: 7c73 6563 6c61 6265 6c7c 6e6f 7375 6964  |seclabel|nosuid
│ │ │ +001bca30: 2928 2c7c 2429 2f2f 673b 732f 2c24 2f2f  )(,|$)//g;s/,$//
│ │ │ +001bca40: 2229 0a20 2020 2020 2020 205b 2022 2470  ").        [ "$p
│ │ │ +001bca50: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001bca60: 7473 2220 5d20 2661 6d70 3b26 616d 703b  ts" ] &&
│ │ │ +001bca70: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ +001bca80: 6f70 7473 2b3d 222c 220a 2020 2020 2020  opts+=",".      
│ │ │ +001bca90: 2020 2320 496e 2069 736f 3936 3630 2066    # In iso9660 f
│ │ │ +001bcaa0: 696c 6573 7973 7465 6d73 206d 7461 6220  ilesystems mtab 
│ │ │ +001bcab0: 636f 756c 6420 6465 7363 7269 6265 2061  could describe a
│ │ │ +001bcac0: 2022 626c 6f63 6b73 697a 6522 2076 616c   "blocksize" val
│ │ │ +001bcad0: 7565 2c20 7468 6973 2073 686f 756c 6420  ue, this should 
│ │ │ +001bcae0: 6265 2072 6566 6c65 6374 6564 2069 6e0a  be reflected in.
│ │ │ +001bcaf0: 2020 2020 2020 2020 2320 6673 7461 6220          # fstab 
│ │ │ +001bcb00: 6173 2022 626c 6f63 6b22 2e20 2054 6865  as "block".  The
│ │ │ +001bcb10: 206e 6578 7420 7661 7269 6162 6c65 2069   next variable i
│ │ │ +001bcb20: 7320 746f 2073 6174 6973 6679 2073 6865  s to satisfy she
│ │ │ +001bcb30: 6c6c 6368 6563 6b20 5343 3230 3530 2e0a  llcheck SC2050..
│ │ │ +001bcb40: 2020 2020 2020 2020 6673 5f74 7970 653d          fs_type=
│ │ │ +001bcb50: 2222 0a20 2020 2020 2020 2069 6620 5b20  "".        if [ 
│ │ │ +001bcb60: 2022 2466 735f 7479 7065 2220 3d3d 2022   "$fs_type" == "
│ │ │ +001bcb70: 6973 6f39 3636 3022 205d 203b 2074 6865  iso9660" ] ; the
│ │ │ +001bcb80: 6e0a 2020 2020 2020 2020 2020 2020 7072  n.            pr
│ │ │ +001bcb90: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001bcba0: 733d 2428 7365 6420 2773 2f62 6c6f 636b  s=$(sed 's/block
│ │ │ +001bcbb0: 7369 7a65 3d2f 626c 6f63 6b3d 2f27 2026  size=/block=/' &
│ │ │ +001bcbc0: 6c74 3b26 6c74 3b26 6c74 3b20 2224 7072  lt;<< "$pr
│ │ │ +001bcbd0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001bcbe0: 7322 290a 2020 2020 2020 2020 6669 0a20  s").        fi. 
│ │ │ +001bcbf0: 2020 2020 2020 2065 6368 6f20 2220 2f68         echo " /h
│ │ │ +001bcc00: 6f6d 6520 2064 6566 6175 6c74 732c 247b  ome  defaults,${
│ │ │ +001bcc10: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001bcc20: 7074 737d 6e6f 7375 6964 2030 2030 2220  pts}nosuid 0 0" 
│ │ │ +001bcc30: 2667 743b 2667 743b 202f 6574 632f 6673  >> /etc/fs
│ │ │ +001bcc40: 7461 620a 2020 2020 2320 4966 2074 6865  tab.    # If the
│ │ │ +001bcc50: 206d 6f75 6e74 5f6f 7074 206f 7074 696f   mount_opt optio
│ │ │ +001bcc60: 6e20 6973 206e 6f74 2061 6c72 6561 6479  n is not already
│ │ │ +001bcc70: 2069 6e20 7468 6520 6d6f 756e 7420 706f   in the mount po
│ │ │ +001bcc80: 696e 7427 7320 2f65 7463 2f66 7374 6162  int's /etc/fstab
│ │ │ +001bcc90: 2065 6e74 7279 2c20 6164 6420 6974 0a20   entry, add it. 
│ │ │ +001bcca0: 2020 2065 6c69 6620 2120 6772 6570 2022     elif ! grep "
│ │ │ +001bccb0: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ +001bccc0: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ +001bccd0: 6673 7461 6220 7c20 6772 6570 202d 7120  fstab | grep -q 
│ │ │ +001bcce0: 226e 6f73 7569 6422 3b20 7468 656e 0a20  "nosuid"; then. 
│ │ │ +001bccf0: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ +001bcd00: 6d6f 756e 745f 6f70 7473 3d24 2867 7265  mount_opts=$(gre
│ │ │ +001bcd10: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ +001bcd20: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ +001bcd30: 7463 2f66 7374 6162 207c 2061 776b 2027  tc/fstab | awk '
│ │ │ +001bcd40: 7b70 7269 6e74 2024 347d 2729 0a20 2020  {print $4}').   
│ │ │ +001bcd50: 2020 2020 2073 6564 202d 6920 2273 7c5c       sed -i "s|\
│ │ │ +001bcd60: 2824 7b6d 6f75 6e74 5f70 6f69 6e74 5f6d  (${mount_point_m
│ │ │ +001bcd70: 6174 6368 5f72 6567 6578 707d 2e2a 247b  atch_regexp}.*${
│ │ │ +001bcd80: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001bcd90: 7074 737d 5c29 7c5c 312c 6e6f 7375 6964  pts}\)|\1,nosuid
│ │ │ +001bcda0: 7c22 202f 6574 632f 6673 7461 620a 2020  |" /etc/fstab.  
│ │ │ +001bcdb0: 2020 6669 0a0a 0a20 2020 2069 6620 6d6b    fi...    if mk
│ │ │ +001bcdc0: 6469 7220 2d70 2022 2f68 6f6d 6522 3b20  dir -p "/home"; 
│ │ │ +001bcdd0: 7468 656e 0a20 2020 2020 2020 2069 6620  then.        if 
│ │ │ +001bcde0: 6d6f 756e 7470 6f69 6e74 202d 7120 222f  mountpoint -q "/
│ │ │ +001bcdf0: 686f 6d65 223b 2074 6865 6e0a 2020 2020  home"; then.    
│ │ │ +001bce00: 2020 2020 2020 2020 6d6f 756e 7420 2d6f          mount -o
│ │ │ +001bce10: 2072 656d 6f75 6e74 202d 2d74 6172 6765   remount --targe
│ │ │ +001bce20: 7420 222f 686f 6d65 220a 2020 2020 2020  t "/home".      
│ │ │ +001bce30: 2020 6669 0a20 2020 2066 690a 7d0a 0a70    fi.    fi.}..p
│ │ │ +001bce40: 6572 666f 726d 5f72 656d 6564 6961 7469  erform_remediati
│ │ │ +001bce50: 6f6e 0a0a 656c 7365 0a20 2020 2026 6774  on..else.    >
│ │ │ +001bce60: 3b26 616d 703b 3220 6563 686f 2027 5265  ;&2 echo 'Re
│ │ │ +001bce70: 6d65 6469 6174 696f 6e20 6973 206e 6f74  mediation is not
│ │ │ +001bce80: 2061 7070 6c69 6361 626c 652c 206e 6f74   applicable, not
│ │ │ +001bce90: 6869 6e67 2077 6173 2064 6f6e 6527 0a66  hing was done'.f
│ │ │ +001bcea0: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +001bceb0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ +001bcf60: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ +001bcf70: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +001bcff0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +001bd010: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ +001bd040: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ +001bd090: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +001bd000: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +001bd020: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ +001bd070: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +001bd080: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable
.part /home -
│ │ │ +001bd0b0: 2d6d 6f75 6e74 6f70 7469 6f6e 733d 226e  -mountoptions="n
│ │ │ +001bd0c0: 6f73 7569 6422 0a3c 2f63 6f64 653e 3c2f  osuid".
│ │ │ 001bd0e0: 3c2f 7464 3e3c 2f74 723e 3c2f 7462 6f64 < │ │ │ 001bd100: 2f74 723e 3c74 7220 6461 7461 2d74 742d /tr>Remedi │ │ │ -001be140: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ -001be150: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -001be1e0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -001be1f0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -001be210: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ -001be230: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001be240: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -001be260: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -001be280: 3c70 7265 3e3c 636f 6465 3e0a 7061 7274
.part
│ │ │ -001be290: 202f 746d 7020 2d2d 6d6f 756e 746f 7074   /tmp --mountopt
│ │ │ -001be2a0: 696f 6e73 3d22 6e6f 6465 7622 0a3c 2f63  ions="nodev".
│ │ │ -001be2c0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -001be360: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -001be370: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -001be380: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -001be420: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr> │ │ │ -001be470: 3c74 723e 3c74 683e 5374 7261 7465 6779

│ │ │ -001be4b0: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ -001be4c0: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ -001be4d0: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ -001be4e0: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ -001be4f0: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ -001be500: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001be510: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001be520: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ -001be530: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -001be540: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001be550: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ -001be560: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ -001be570: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001be580: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ -001be590: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001be5a0: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001be5b0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001be5c0: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001be5d0: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001be5e0: 745f 6f70 7469 6f6e 5f74 6d70 5f6e 6f64  t_option_tmp_nod
│ │ │ -001be5f0: 6576 0a20 202d 206e 6f5f 7265 626f 6f74  ev.  - no_reboot
│ │ │ -001be600: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ -001be610: 2027 4164 6420 6e6f 6465 7620 4f70 7469   'Add nodev Opti
│ │ │ -001be620: 6f6e 2074 6f20 2f74 6d70 3a20 4368 6563  on to /tmp: Chec
│ │ │ -001be630: 6b20 696e 666f 726d 6174 696f 6e20 6173  k information as
│ │ │ -001be640: 736f 6369 6174 6564 2074 6f20 6d6f 756e  sociated to moun
│ │ │ -001be650: 7470 6f69 6e74 270a 2020 616e 7369 626c  tpoint'.  ansibl
│ │ │ -001be660: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ -001be670: 643a 2066 696e 646d 6e74 202d 2d66 7374  d: findmnt --fst
│ │ │ -001be680: 6162 2027 2f74 6d70 270a 2020 7265 6769  ab '/tmp'.  regi
│ │ │ -001be690: 7374 6572 3a20 6465 7669 6365 5f6e 616d  ster: device_nam
│ │ │ -001be6a0: 650a 2020 6661 696c 6564 5f77 6865 6e3a  e.  failed_when:
│ │ │ -001be6b0: 2064 6576 6963 655f 6e61 6d65 2e72 6320   device_name.rc 
│ │ │ -001be6c0: 2667 743b 2031 0a20 2063 6861 6e67 6564  > 1.  changed
│ │ │ -001be6d0: 5f77 6865 6e3a 2066 616c 7365 0a20 2063  _when: false.  c
│ │ │ -001be6e0: 6865 636b 5f6d 6f64 653a 2066 616c 7365  heck_mode: false
│ │ │ -001be6f0: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ -001be700: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ -001be710: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001be720: 6163 6b61 6765 7320 616e 6420 2272 706d  ackages and "rpm
│ │ │ -001be730: 2d6f 7374 7265 6522 2069 6e20 616e 7369  -ostree" in ansi
│ │ │ -001be740: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001be750: 6573 0a20 2020 2061 6e64 2022 626f 6f74  es.    and "boot
│ │ │ -001be760: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ -001be770: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001be780: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ -001be790: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ -001be7a0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001be7b0: 6573 0a20 2020 2061 6e64 2022 6f73 7472  es.    and "ostr
│ │ │ -001be7c0: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ -001be7d0: 726f 635f 636d 646c 696e 6520 2920 616e  roc_cmdline ) an
│ │ │ -001be7e0: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ -001be7f0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ -001be800: 7970 6520 696e 0a20 2020 205b 2264 6f63  ype in.    ["doc
│ │ │ -001be810: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ -001be820: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ -001be830: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ -001be840: 290a 2020 2d20 2722 2f74 6d70 2220 696e  ).  - '"/tmp" in
│ │ │ -001be850: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ -001be860: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ -001be870: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ -001be880: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -001be890: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ -001be8a0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001be8b0: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ -001be8c0: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ -001be8d0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001be8e0: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ -001be8f0: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ -001be900: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ -001be910: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ -001be920: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ -001be930: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ -001be940: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001be950: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -001be960: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ -001be970: 7074 696f 6e5f 746d 705f 6e6f 6465 760a  ption_tmp_nodev.
│ │ │ -001be980: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001be990: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ -001be9a0: 6464 206e 6f64 6576 204f 7074 696f 6e20  dd nodev Option 
│ │ │ -001be9b0: 746f 202f 746d 703a 2043 7265 6174 6520  to /tmp: Create 
│ │ │ -001be9c0: 6d6f 756e 745f 696e 666f 2064 6963 7469  mount_info dicti
│ │ │ -001be9d0: 6f6e 6172 7920 7661 7269 6162 6c65 270a  onary variable'.
│ │ │ -001be9e0: 2020 7365 745f 6661 6374 3a0a 2020 2020    set_fact:.    
│ │ │ -001be9f0: 6d6f 756e 745f 696e 666f 3a20 277b 7b20  mount_info: '{{ 
│ │ │ -001bea00: 6d6f 756e 745f 696e 666f 7c64 6566 6175  mount_info|defau
│ │ │ -001bea10: 6c74 287b 7d29 7c63 6f6d 6269 6e65 287b  lt({})|combine({
│ │ │ -001bea20: 6974 656d 2e30 3a20 6974 656d 2e31 7d29  item.0: item.1})
│ │ │ -001bea30: 207d 7d27 0a20 2077 6974 685f 746f 6765   }}'.  with_toge
│ │ │ -001bea40: 7468 6572 3a0a 2020 2d20 277b 7b20 6465  ther:.  - '{{ de
│ │ │ -001bea50: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001bea60: 5f6c 696e 6573 5b30 5d2e 7370 6c69 7428  _lines[0].split(
│ │ │ -001bea70: 2920 7c20 6d61 7028 2727 6c6f 7765 7227  ) | map(''lower'
│ │ │ -001bea80: 2729 207c 206c 6973 7420 7d7d 270a 2020  ') | list }}'.  
│ │ │ -001bea90: 2d20 277b 7b20 6465 7669 6365 5f6e 616d  - '{{ device_nam
│ │ │ -001beaa0: 652e 7374 646f 7574 5f6c 696e 6573 5b31  e.stdout_lines[1
│ │ │ -001beab0: 5d2e 7370 6c69 7428 2920 7c20 6c69 7374  ].split() | list
│ │ │ -001beac0: 207d 7d27 0a20 2077 6865 6e3a 0a20 202d   }}'.  when:.  -
│ │ │ -001bead0: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ -001beae0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001beaf0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001beb00: 2272 706d 2d6f 7374 7265 6522 2069 6e20  "rpm-ostree" in 
│ │ │ -001beb10: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001beb20: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001beb30: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -001beb40: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001beb50: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ -001beb60: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ -001beb70: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001beb80: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001beb90: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001beba0: 6c65 5f70 726f 635f 636d 646c 696e 6520  le_proc_cmdline 
│ │ │ -001bebb0: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ -001bebc0: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ -001bebd0: 6f6e 5f74 7970 6520 696e 0a20 2020 205b  on_type in.    [
│ │ │ -001bebe0: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -001bebf0: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -001bec00: 616e 222c 2022 636f 6e74 6169 6e65 7222  an", "container"
│ │ │ -001bec10: 5d20 2920 290a 2020 2d20 2722 2f74 6d70  ] ) ).  - '"/tmp
│ │ │ -001bec20: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ -001bec30: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ -001bec40: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ -001bec50: 6973 7427 0a20 202d 2064 6576 6963 655f  ist'.  - device_
│ │ │ -001bec60: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ -001bec70: 6566 696e 6564 2061 6e64 2064 6576 6963  efined and devic
│ │ │ -001bec80: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ -001bec90: 6e65 7320 6973 2064 6566 696e 6564 0a20  nes is defined. 
│ │ │ -001beca0: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ -001becb0: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ -001becc0: 2667 743b 2030 290a 2020 7461 6773 3a0a  > 0).  tags:.
│ │ │ -001becd0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001bece0: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ -001becf0: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ -001bed00: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001bed10: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ -001bed20: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ -001bed30: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001bed40: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ -001bed50: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ -001bed60: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -001bed70: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -001bed80: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -001bed90: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -001beda0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001bedb0: 6d6f 756e 745f 6f70 7469 6f6e 5f74 6d70  mount_option_tmp
│ │ │ -001bedc0: 5f6e 6f64 6576 0a20 202d 206e 6f5f 7265  _nodev.  - no_re
│ │ │ -001bedd0: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -001bede0: 616d 653a 2027 4164 6420 6e6f 6465 7620  ame: 'Add nodev 
│ │ │ -001bedf0: 4f70 7469 6f6e 2074 6f20 2f74 6d70 3a20  Option to /tmp: 
│ │ │ -001bee00: 4966 202f 746d 7020 6e6f 7420 6d6f 756e  If /tmp not moun
│ │ │ -001bee10: 7465 642c 2063 7261 6674 206d 6f75 6e74  ted, craft mount
│ │ │ -001bee20: 5f69 6e66 6f20 6d61 6e75 616c 6c79 270a  _info manually'.
│ │ │ -001bee30: 2020 7365 745f 6661 6374 3a0a 2020 2020    set_fact:.    
│ │ │ -001bee40: 6d6f 756e 745f 696e 666f 3a20 277b 7b20  mount_info: '{{ 
│ │ │ -001bee50: 6d6f 756e 745f 696e 666f 7c64 6566 6175  mount_info|defau
│ │ │ -001bee60: 6c74 287b 7d29 7c63 6f6d 6269 6e65 287b  lt({})|combine({
│ │ │ -001bee70: 6974 656d 2e30 3a20 6974 656d 2e31 7d29  item.0: item.1})
│ │ │ -001bee80: 207d 7d27 0a20 2077 6974 685f 746f 6765   }}'.  with_toge
│ │ │ -001bee90: 7468 6572 3a0a 2020 2d20 2d20 7461 7267  ther:.  - - targ
│ │ │ -001beea0: 6574 0a20 2020 202d 2073 6f75 7263 650a  et.    - source.
│ │ │ -001beeb0: 2020 2020 2d20 6673 7479 7065 0a20 2020      - fstype.   
│ │ │ -001beec0: 202d 206f 7074 696f 6e73 0a20 202d 202d   - options.  - -
│ │ │ -001beed0: 202f 746d 700a 2020 2020 2d20 2727 0a20   /tmp.    - ''. 
│ │ │ -001beee0: 2020 202d 2027 270a 2020 2020 2d20 6465     - ''.    - de
│ │ │ -001beef0: 6661 756c 7473 0a20 2077 6865 6e3a 0a20  faults.  when:. 
│ │ │ -001bef00: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ -001bef10: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -001bef20: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001bef30: 6420 2272 706d 2d6f 7374 7265 6522 2069  d "rpm-ostree" i
│ │ │ -001bef40: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001bef50: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001bef60: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ -001bef70: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001bef80: 6573 2061 6e64 206e 6f74 2022 6f70 656e  es and not "open
│ │ │ -001bef90: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ -001befa0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001befb0: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001befc0: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ -001befd0: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ -001befe0: 6520 2920 616e 6420 6e6f 7420 2820 616e  e ) and not ( an
│ │ │ -001beff0: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ -001bf000: 7469 6f6e 5f74 7970 6520 696e 0a20 2020  tion_type in.   
│ │ │ -001bf010: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ -001bf020: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ -001bf030: 646d 616e 222c 2022 636f 6e74 6169 6e65  dman", "containe
│ │ │ -001bf040: 7222 5d20 2920 290a 2020 2d20 2722 2f74  r"] ) ).  - '"/t
│ │ │ -001bf050: 6d70 2220 696e 2061 6e73 6962 6c65 5f6d  mp" in ansible_m
│ │ │ -001bf060: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ -001bf070: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ -001bf080: 206c 6973 7427 0a20 202d 2028 222d 2d66   list'.  - ("--f
│ │ │ -001bf090: 7374 6162 2220 7c20 6c65 6e67 7468 203d  stab" | length =
│ │ │ -001bf0a0: 3d20 3029 0a20 202d 2064 6576 6963 655f  = 0).  - device_
│ │ │ -001bf0b0: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ -001bf0c0: 6566 696e 6564 2061 6e64 2064 6576 6963  efined and devic
│ │ │ -001bf0d0: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ -001bf0e0: 6e65 7320 6973 2064 6566 696e 6564 0a20  nes is defined. 
│ │ │ -001bf0f0: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ -001bf100: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ -001bf110: 3d3d 2030 290a 2020 7461 6773 3a0a 2020  == 0).  tags:.  
│ │ │ -001bf120: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001bf130: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ -001bf140: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ -001bf150: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -001bf160: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -001bf170: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ -001bf180: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -001bf190: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ -001bf1a0: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ -001bf1b0: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -001bf1c0: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -001bf1d0: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -001bf1e0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -001bf1f0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -001bf200: 756e 745f 6f70 7469 6f6e 5f74 6d70 5f6e  unt_option_tmp_n
│ │ │ -001bf210: 6f64 6576 0a20 202d 206e 6f5f 7265 626f  odev.  - no_rebo
│ │ │ -001bf220: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -001bf230: 653a 2027 4164 6420 6e6f 6465 7620 4f70  e: 'Add nodev Op
│ │ │ -001bf240: 7469 6f6e 2074 6f20 2f74 6d70 3a20 4d61  tion to /tmp: Ma
│ │ │ -001bf250: 6b65 2073 7572 6520 6e6f 6465 7620 6f70  ke sure nodev op
│ │ │ -001bf260: 7469 6f6e 2069 7320 7061 7274 206f 6620  tion is part of 
│ │ │ -001bf270: 7468 6520 746f 202f 746d 7020 6f70 7469  the to /tmp opti
│ │ │ -001bf280: 6f6e 7327 0a20 2073 6574 5f66 6163 743a  ons'.  set_fact:
│ │ │ -001bf290: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ -001bf2a0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f20   '{{ mount_info 
│ │ │ -001bf2b0: 7c20 636f 6d62 696e 6528 207b 2727 6f70  | combine( {''op
│ │ │ -001bf2c0: 7469 6f6e 7327 273a 2727 2727 7e28 6d6f  tions'':''''~(mo
│ │ │ -001bf2d0: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ -001bf2e0: 207c 0a20 2020 2020 2064 6566 6175 6c74   |.      default
│ │ │ -001bf2f0: 2827 2727 2729 297e 2827 272c 2727 2069  (''''))~('','' i
│ │ │ -001bf300: 6620 286d 6f75 6e74 5f69 6e66 6f2e 6f70  f (mount_info.op
│ │ │ -001bf310: 7469 6f6e 7320 7c20 6465 6661 756c 7428  tions | default(
│ │ │ -001bf320: 2727 2727 2929 2065 6c73 6520 2727 2727  '''')) else ''''
│ │ │ -001bf330: 297e 2727 6e6f 6465 7627 270a 2020 2020  )~''nodev''.    
│ │ │ -001bf340: 2020 7d29 207d 7d27 0a20 2077 6865 6e3a    }) }}'.  when:
│ │ │ -001bf350: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ -001bf360: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -001bf370: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001bf380: 616e 6420 2272 706d 2d6f 7374 7265 6522  and "rpm-ostree"
│ │ │ -001bf390: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001bf3a0: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001bf3b0: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ -001bf3c0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001bf3d0: 6167 6573 2061 6e64 206e 6f74 2022 6f70  ages and not "op
│ │ │ -001bf3e0: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ -001bf3f0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001bf400: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001bf410: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ -001bf420: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ -001bf430: 696e 6520 2920 616e 6420 6e6f 7420 2820  ine ) and not ( 
│ │ │ -001bf440: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ -001bf450: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20  zation_type in. 
│ │ │ -001bf460: 2020 205b 2264 6f63 6b65 7222 2c20 226c     ["docker", "l
│ │ │ -001bf470: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ -001bf480: 706f 646d 616e 222c 2022 636f 6e74 6169  podman", "contai
│ │ │ -001bf490: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ -001bf4a0: 2f74 6d70 2220 696e 2061 6e73 6962 6c65  /tmp" in ansible
│ │ │ -001bf4b0: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ -001bf4c0: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ -001bf4d0: 207c 206c 6973 7427 0a20 202d 206d 6f75   | list'.  - mou
│ │ │ -001bf4e0: 6e74 5f69 6e66 6f20 6973 2064 6566 696e  nt_info is defin
│ │ │ -001bf4f0: 6564 2061 6e64 2022 6e6f 6465 7622 206e  ed and "nodev" n
│ │ │ -001bf500: 6f74 2069 6e20 286d 6f75 6e74 5f69 6e66  ot in (mount_inf
│ │ │ -001bf510: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ -001bf520: 756c 7428 2727 2929 0a20 2074 6167 733a  ult('')).  tags:
│ │ │ -001bf530: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001bf540: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ -001bf550: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ -001bf560: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001bf570: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -001bf580: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ -001bf590: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001bf5a0: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ -001bf5b0: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ -001bf5c0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001bf5d0: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -001bf5e0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -001bf5f0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001bf600: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001bf610: 206d 6f75 6e74 5f6f 7074 696f 6e5f 746d   mount_option_tm
│ │ │ -001bf620: 705f 6e6f 6465 760a 2020 2d20 6e6f 5f72  p_nodev.  - no_r
│ │ │ -001bf630: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ -001bf640: 6e61 6d65 3a20 2741 6464 206e 6f64 6576  name: 'Add nodev
│ │ │ -001bf650: 204f 7074 696f 6e20 746f 202f 746d 703a   Option to /tmp:
│ │ │ -001bf660: 2045 6e73 7572 6520 2f74 6d70 2069 7320   Ensure /tmp is 
│ │ │ -001bf670: 6d6f 756e 7465 6420 7769 7468 206e 6f64  mounted with nod
│ │ │ -001bf680: 6576 206f 7074 696f 6e27 0a20 2061 6e73  ev option'.  ans
│ │ │ -001bf690: 6962 6c65 2e70 6f73 6978 2e6d 6f75 6e74  ible.posix.mount
│ │ │ -001bf6a0: 3a0a 2020 2020 7061 7468 3a20 2f74 6d70  :.    path: /tmp
│ │ │ -001bf6b0: 0a20 2020 2073 7263 3a20 277b 7b20 6d6f  .    src: '{{ mo
│ │ │ -001bf6c0: 756e 745f 696e 666f 2e73 6f75 7263 6520  unt_info.source 
│ │ │ -001bf6d0: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ -001bf6e0: 7d7d 270a 2020 2020 6f70 7473 3a20 277b  }}'.    opts: '{
│ │ │ -001bf6f0: 7b20 6d6f 756e 745f 696e 666f 2e6f 7074  { mount_info.opt
│ │ │ -001bf700: 696f 6e73 207c 2064 6566 6175 6c74 2827  ions | default('
│ │ │ -001bf710: 2727 2729 207d 7d27 0a20 2020 2073 7461  ''') }}'.    sta
│ │ │ -001bf720: 7465 3a20 6d6f 756e 7465 640a 2020 2020  te: mounted.    
│ │ │ -001bf730: 6673 7479 7065 3a20 277b 7b20 6d6f 756e  fstype: '{{ moun
│ │ │ -001bf740: 745f 696e 666f 2e66 7374 7970 6520 7c20  t_info.fstype | 
│ │ │ -001bf750: 6465 6661 756c 7428 2727 2727 2920 7d7d  default('''') }}
│ │ │ -001bf760: 270a 2020 7265 6769 7374 6572 3a20 6d6f  '.  register: mo
│ │ │ -001bf770: 756e 745f 7265 7375 6c74 0a20 2066 6169  unt_result.  fai
│ │ │ -001bf780: 6c65 645f 7768 656e 3a0a 2020 2d20 6d6f  led_when:.  - mo
│ │ │ -001bf790: 756e 745f 7265 7375 6c74 2069 7320 6661  unt_result is fa
│ │ │ -001bf7a0: 696c 6564 0a20 202d 2027 2727 7461 7267  iled.  - '''targ
│ │ │ -001bf7b0: 6574 2069 7320 6275 7379 2727 206e 6f74  et is busy'' not
│ │ │ -001bf7c0: 2069 6e20 286d 6f75 6e74 5f72 6573 756c   in (mount_resul
│ │ │ -001bf7d0: 742e 6d73 6720 7c20 6465 6661 756c 7428  t.msg | default(
│ │ │ -001bf7e0: 2727 2727 2929 270a 2020 2d20 2727 2761  ''''))'.  - '''a
│ │ │ -001bf7f0: 6c72 6561 6479 206d 6f75 6e74 6564 2727  lready mounted''
│ │ │ -001bf800: 206e 6f74 2069 6e20 286d 6f75 6e74 5f72   not in (mount_r
│ │ │ -001bf810: 6573 756c 742e 6d73 6720 7c20 6465 6661  esult.msg | defa
│ │ │ -001bf820: 756c 7428 2727 2727 2929 270a 2020 7768  ult(''''))'.  wh
│ │ │ -001bf830: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ -001bf840: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -001bf850: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001bf860: 6573 2061 6e64 2022 7270 6d2d 6f73 7472  es and "rpm-ostr
│ │ │ -001bf870: 6565 2220 696e 2061 6e73 6962 6c65 5f66  ee" in ansible_f
│ │ │ -001bf880: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -001bf890: 2020 616e 6420 2262 6f6f 7463 2220 696e    and "bootc" in
│ │ │ -001bf8a0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001bf8b0: 6163 6b61 6765 7320 616e 6420 6e6f 7420  ackages and not 
│ │ │ -001bf8c0: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ -001bf8d0: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ -001bf8e0: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -001bf8f0: 2020 616e 6420 226f 7374 7265 6522 2069    and "ostree" i
│ │ │ -001bf900: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ -001bf910: 6d64 6c69 6e65 2029 2061 6e64 206e 6f74  mdline ) and not
│ │ │ -001bf920: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ -001bf930: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ -001bf940: 6e0a 2020 2020 5b22 646f 636b 6572 222c  n.    ["docker",
│ │ │ -001bf950: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ -001bf960: 2c20 2270 6f64 6d61 6e22 2c20 2263 6f6e  , "podman", "con
│ │ │ -001bf970: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ -001bf980: 2027 222f 746d 7022 2069 6e20 616e 7369   '"/tmp" in ansi
│ │ │ -001bf990: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ -001bf9a0: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ -001bf9b0: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ -001bf9c0: 6d6f 756e 745f 696e 666f 2069 7320 6465  mount_info is de
│ │ │ -001bf9d0: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ -001bf9e0: 655f 6e61 6d65 2e73 7464 6f75 7420 6973  e_name.stdout is
│ │ │ -001bf9f0: 2064 6566 696e 6564 2061 6e64 2028 6465   defined and (de
│ │ │ -001bfa00: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001bfa10: 207c 206c 656e 6774 6820 2667 743b 2030   | length > 0
│ │ │ -001bfa20: 2929 206f 7220 2822 2d2d 6673 7461 6222  )) or ("--fstab"
│ │ │ -001bfa30: 0a20 2020 207c 206c 656e 6774 6820 3d3d  .    | length ==
│ │ │ -001bfa40: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ -001bfa50: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001bfa60: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001bfa70: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ -001bfa80: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -001bfa90: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001bfaa0: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ -001bfab0: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ -001bfac0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001bfad0: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ -001bfae0: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001bfaf0: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001bfb00: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001bfb10: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001bfb20: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001bfb30: 745f 6f70 7469 6f6e 5f74 6d70 5f6e 6f64  t_option_tmp_nod
│ │ │ -001bfb40: 6576 0a20 202d 206e 6f5f 7265 626f 6f74  ev.  - no_reboot
│ │ │ -001bfb50: 5f6e 6565 6465 640a 3c2f 636f 6465 3e3c  _needed.<
│ │ │ -001bfb60: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ -001bfc10: 696f 6e20 5368 656c 6c20 7363 7269 7074  ion Shell script
│ │ │ -001bfc20: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
│ │ │ -001bfcc0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Co │ │ │ -001be400: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -001be430: 6e3a 3c2f 7468 3e3c 7464 3e68 6967 683c n:high< │ │ │ -001be440: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -001be480: 3a3c 2f74 683e 3c74 643e 636f 6e66 6967 :config │ │ │ -001be490: 7572 653c 2f74 643e 3c2f 7472 3e3c 2f74 ure
Reboot:false
# Remedi │ │ │ -001bfce0: 6174 696f 6e20 6973 2061 7070 6c69 6361 ation is applica │ │ │ -001bfcf0: 626c 6520 6f6e 6c79 2069 6e20 6365 7274 ble only in cert │ │ │ -001bfd00: 6169 6e20 706c 6174 666f 726d 730a 6966 ain platforms.if │ │ │ -001bfd10: 2028 2021 2028 207b 2072 706d 202d 2d71 ( ! ( { rpm --q │ │ │ -001bfd20: 7569 6574 202d 7120 6b65 726e 656c 203b uiet -q kernel ; │ │ │ -001bfd30: 7d20 2661 6d70 3b26 616d 703b 207b 2072 } && { r │ │ │ -001bfd40: 706d 202d 2d71 7569 6574 202d 7120 7270 pm --quiet -q rp │ │ │ -001bfd50: 6d2d 6f73 7472 6565 203b 7d20 2661 6d70 m-ostree ;} & │ │ │ -001bfd60: 3b26 616d 703b 207b 2072 706d 202d 2d71 ;& { rpm --q │ │ │ -001bfd70: 7569 6574 202d 7120 626f 6f74 6320 3b7d uiet -q bootc ;} │ │ │ -001bfd80: 2026 616d 703b 2661 6d70 3b20 7b20 2120 && { ! │ │ │ -001bfd90: 7270 6d20 2d2d 7175 6965 7420 2d71 206f rpm --quiet -q o │ │ │ -001bfda0: 7065 6e73 6869 6674 2d6b 7562 656c 6574 penshift-kubelet │ │ │ -001bfdb0: 203b 7d20 2661 6d70 3b26 616d 703b 2028 ;} && ( │ │ │ -001bfdc0: 5b20 2d66 202f 7275 6e2f 6f73 7472 6565 [ -f /run/ostree │ │ │ -001bfdd0: 2d62 6f6f 7465 6420 5d20 7c7c 205b 202d -booted ] || [ - │ │ │ -001bfde0: 4c20 2f6f 7374 7265 6520 5d29 2029 2026 L /ostree ]) ) & │ │ │ -001bfdf0: 616d 703b 2661 6d70 3b20 2120 2820 5b20 amp;& ! ( [ │ │ │ -001bfe00: 2d66 202f 2e64 6f63 6b65 7265 6e76 205d -f /.dockerenv ] │ │ │ -001bfe10: 207c 7c20 5b20 2d66 202f 7275 6e2f 2e63 || [ -f /run/.c │ │ │ -001bfe20: 6f6e 7461 696e 6572 656e 7620 5d20 2920 ontainerenv ] ) │ │ │ -001bfe30: 2920 2661 6d70 3b26 616d 703b 207b 2028 ) && { ( │ │ │ -001bfe40: 2066 696e 646d 6e74 202d 2d6b 6572 6e65 findmnt --kerne │ │ │ -001bfe50: 6c20 222f 746d 7022 2026 6774 3b20 2f64 l "/tmp" > /d │ │ │ -001bfe60: 6576 2f6e 756c 6c20 7c7c 2066 696e 646d ev/null || findm │ │ │ -001bfe70: 6e74 202d 2d66 7374 6162 2022 2f74 6d70 nt --fstab "/tmp │ │ │ -001bfe80: 2220 2667 743b 202f 6465 762f 6e75 6c6c " > /dev/null │ │ │ -001bfe90: 2029 3b20 7d3b 2074 6865 6e0a 0a66 756e ); }; then..fun │ │ │ -001bfea0: 6374 696f 6e20 7065 7266 6f72 6d5f 7265 ction perform_re │ │ │ -001bfeb0: 6d65 6469 6174 696f 6e20 7b0a 0a20 2020 mediation {.. │ │ │ -001bfec0: 200a 2020 2020 2020 2020 2320 7468 6520 . # the │ │ │ -001bfed0: 6d6f 756e 7420 706f 696e 7420 2f74 6d70 mount point /tmp │ │ │ -001bfee0: 2068 6173 2074 6f20 6265 2064 6566 696e has to be defin │ │ │ -001bfef0: 6564 2069 6e20 2f65 7463 2f66 7374 6162 ed in /etc/fstab │ │ │ -001bff00: 0a20 2020 2020 2020 2023 2062 6566 6f72 . # befor │ │ │ -001bff10: 6520 7468 6973 2072 656d 6564 6961 7469 e this remediati │ │ │ -001bff20: 6f6e 2063 616e 2062 6520 6578 6563 7574 on can be execut │ │ │ -001bff30: 6564 2e20 496e 2063 6173 6520 6974 2069 ed. In case it i │ │ │ -001bff40: 7320 6e6f 7420 6465 6669 6e65 642c 2074 s not defined, t │ │ │ -001bff50: 6865 0a20 2020 2020 2020 2023 2072 656d he. # rem │ │ │ -001bff60: 6564 6961 7469 6f6e 2061 626f 7274 7320 ediation aborts │ │ │ -001bff70: 616e 6420 6e6f 2063 6861 6e67 6573 2072 and no changes r │ │ │ -001bff80: 6567 6172 6469 6e67 2074 6865 206d 6f75 egarding the mou │ │ │ -001bff90: 6e74 2070 6f69 6e74 2061 7265 2064 6f6e nt point are don │ │ │ -001bffa0: 652e 0a20 2020 2020 2020 206d 6f75 6e74 e.. mount │ │ │ -001bffb0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567 _point_match_reg │ │ │ -001bffc0: 6578 703d 2224 2870 7269 6e74 6620 225e exp="$(printf "^ │ │ │ -001bffd0: 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e 235d [[:space:]]*[^#] │ │ │ -001bffe0: 2e2a 5b5b 3a73 7061 6365 3a5d 5d25 735b .*[[:space:]]%s[ │ │ │ -001bfff0: 5b3a 7370 6163 653a 5d5d 2220 222f 746d [:space:]]" "/tm │ │ │ -001c0000: 7022 2922 0a0a 2020 2020 6772 6570 2022 p")".. grep " │ │ │ -001c0010: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174 $mount_point_mat │ │ │ -001c0020: 6368 5f72 6567 6578 7022 202d 7120 2f65 ch_regexp" -q /e │ │ │ -001c0030: 7463 2f66 7374 6162 205c 0a20 2020 2020 tc/fstab \. │ │ │ -001c0040: 2020 207c 7c20 7b20 6563 686f 2022 5468 || { echo "Th │ │ │ -001c0050: 6520 6d6f 756e 7420 706f 696e 7420 272f e mount point '/ │ │ │ -001c0060: 746d 7027 2069 7320 6e6f 7420 6576 656e tmp' is not even │ │ │ -001c0070: 2069 6e20 2f65 7463 2f66 7374 6162 2c20 in /etc/fstab, │ │ │ -001c0080: 736f 2077 6520 6361 6e27 7420 7365 7420 so we can't set │ │ │ -001c0090: 7570 206d 6f75 6e74 206f 7074 696f 6e73 up mount options │ │ │ -001c00a0: 2220 2667 743b 2661 6d70 3b32 3b0a 2020 " >&2;. │ │ │ -001c00b0: 2020 2020 2020 2020 2020 2020 2020 6563 ec │ │ │ -001c00c0: 686f 2022 4e6f 7420 7265 6d65 6469 6174 ho "Not remediat │ │ │ -001c00d0: 696e 672c 2062 6563 6175 7365 2074 6865 ing, because the │ │ │ -001c00e0: 7265 2069 7320 6e6f 2072 6563 6f72 6420 re is no record │ │ │ -001c00f0: 6f66 202f 746d 7020 696e 202f 6574 632f of /tmp in /etc/ │ │ │ -001c0100: 6673 7461 6222 2026 6774 3b26 616d 703b fstab" >& │ │ │ -001c0110: 323b 2072 6574 7572 6e20 313b 207d 0a20 2; return 1; }. │ │ │ -001c0120: 2020 200a 0a0a 2020 2020 6d6f 756e 745f ... mount_ │ │ │ -001c0130: 706f 696e 745f 6d61 7463 685f 7265 6765 point_match_rege │ │ │ -001c0140: 7870 3d22 2428 7072 696e 7466 2022 5e5b xp="$(printf "^[ │ │ │ -001c0150: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e [:space:]]*[^#]. │ │ │ -001c0160: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b *[[:space:]]%s[[ │ │ │ -001c0170: 3a73 7061 6365 3a5d 5d22 202f 746d 7029 :space:]]" /tmp) │ │ │ -001c0180: 220a 0a20 2020 2023 2049 6620 7468 6520 ".. # If the │ │ │ -001c0190: 6d6f 756e 7420 706f 696e 7420 6973 206e mount point is n │ │ │ -001c01a0: 6f74 2069 6e20 2f65 7463 2f66 7374 6162 ot in /etc/fstab │ │ │ -001c01b0: 2c20 6765 7420 7072 6576 696f 7573 206d , get previous m │ │ │ -001c01c0: 6f75 6e74 206f 7074 696f 6e73 2066 726f ount options fro │ │ │ -001c01d0: 6d20 2f65 7463 2f6d 7461 620a 2020 2020 m /etc/mtab. │ │ │ -001c01e0: 6966 2021 2067 7265 7020 2d71 2022 246d if ! grep -q "$m │ │ │ -001c01f0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368 ount_point_match │ │ │ -001c0200: 5f72 6567 6578 7022 202f 6574 632f 6673 _regexp" /etc/fs │ │ │ -001c0210: 7461 623b 2074 6865 6e0a 2020 2020 2020 tab; then. │ │ │ -001c0220: 2020 2320 7275 6e74 696d 6520 6f70 7473 # runtime opts │ │ │ -001c0230: 2077 6974 686f 7574 2073 6f6d 6520 6175 without some au │ │ │ -001c0240: 746f 6d61 7469 6320 6b65 726e 656c 2f75 tomatic kernel/u │ │ │ -001c0250: 7365 7273 7061 6365 2d61 6464 6564 2064 serspace-added d │ │ │ -001c0260: 6566 6175 6c74 730a 2020 2020 2020 2020 efaults. │ │ │ -001c0270: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f previous_mount_o │ │ │ -001c0280: 7074 733d 2428 6772 6570 2022 246d 6f75 pts=$(grep "$mou │ │ │ -001c0290: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72 nt_point_match_r │ │ │ -001c02a0: 6567 6578 7022 202f 6574 632f 6d74 6162 egexp" /etc/mtab │ │ │ -001c02b0: 207c 2068 6561 6420 2d31 207c 2020 6177 | head -1 | aw │ │ │ -001c02c0: 6b20 277b 7072 696e 7420 2434 7d27 205c k '{print $4}' \ │ │ │ -001c02d0: 0a20 2020 2020 2020 2020 2020 2020 2020 . │ │ │ -001c02e0: 2020 2020 207c 2073 6564 202d 4520 2273 | sed -E "s │ │ │ -001c02f0: 2f28 7277 7c64 6566 6175 6c74 737c 7365 /(rw|defaults|se │ │ │ -001c0300: 636c 6162 656c 7c6e 6f64 6576 2928 2c7c clabel|nodev)(,| │ │ │ -001c0310: 2429 2f2f 673b 732f 2c24 2f2f 2229 0a20 $)//g;s/,$//"). │ │ │ -001c0320: 2020 2020 2020 205b 2022 2470 7265 7669 [ "$previ │ │ │ -001c0330: 6f75 735f 6d6f 756e 745f 6f70 7473 2220 ous_mount_opts" │ │ │ -001c0340: 5d20 2661 6d70 3b26 616d 703b 2070 7265 ] && pre │ │ │ -001c0350: 7669 6f75 735f 6d6f 756e 745f 6f70 7473 vious_mount_opts │ │ │ -001c0360: 2b3d 222c 220a 2020 2020 2020 2020 2320 +=",". # │ │ │ -001c0370: 496e 2069 736f 3936 3630 2066 696c 6573 In iso9660 files │ │ │ -001c0380: 7973 7465 6d73 206d 7461 6220 636f 756c ystems mtab coul │ │ │ -001c0390: 6420 6465 7363 7269 6265 2061 2022 626c d describe a "bl │ │ │ -001c03a0: 6f63 6b73 697a 6522 2076 616c 7565 2c20 ocksize" value, │ │ │ -001c03b0: 7468 6973 2073 686f 756c 6420 6265 2072 this should be r │ │ │ -001c03c0: 6566 6c65 6374 6564 2069 6e0a 2020 2020 eflected in. │ │ │ -001c03d0: 2020 2020 2320 6673 7461 6220 6173 2022 # fstab as " │ │ │ -001c03e0: 626c 6f63 6b22 2e20 2054 6865 206e 6578 block". The nex │ │ │ -001c03f0: 7420 7661 7269 6162 6c65 2069 7320 746f t variable is to │ │ │ -001c0400: 2073 6174 6973 6679 2073 6865 6c6c 6368 satisfy shellch │ │ │ -001c0410: 6563 6b20 5343 3230 3530 2e0a 2020 2020 eck SC2050.. │ │ │ -001c0420: 2020 2020 6673 5f74 7970 653d 2222 0a20 fs_type="". │ │ │ -001c0430: 2020 2020 2020 2069 6620 5b20 2022 2466 if [ "$f │ │ │ -001c0440: 735f 7479 7065 2220 3d3d 2022 6973 6f39 s_type" == "iso9 │ │ │ -001c0450: 3636 3022 205d 203b 2074 6865 6e0a 2020 660" ] ; then. │ │ │ -001c0460: 2020 2020 2020 2020 2020 7072 6576 696f previo │ │ │ -001c0470: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428 us_mount_opts=$( │ │ │ -001c0480: 7365 6420 2773 2f62 6c6f 636b 7369 7a65 sed 's/blocksize │ │ │ -001c0490: 3d2f 626c 6f63 6b3d 2f27 2026 6c74 3b26 =/block=/' <& │ │ │ -001c04a0: 6c74 3b26 6c74 3b20 2224 7072 6576 696f lt;< "$previo │ │ │ -001c04b0: 7573 5f6d 6f75 6e74 5f6f 7074 7322 290a us_mount_opts"). │ │ │ -001c04c0: 2020 2020 2020 2020 6669 0a20 2020 2020 fi. │ │ │ -001c04d0: 2020 2065 6368 6f20 2220 2f74 6d70 2020 echo " /tmp │ │ │ -001c04e0: 6465 6661 756c 7473 2c24 7b70 7265 7669 defaults,${previ │ │ │ -001c04f0: 6f75 735f 6d6f 756e 745f 6f70 7473 7d6e ous_mount_opts}n │ │ │ -001c0500: 6f64 6576 2030 2030 2220 2667 743b 2667 odev 0 0" >&g │ │ │ -001c0510: 743b 202f 6574 632f 6673 7461 620a 2020 t; /etc/fstab. │ │ │ -001c0520: 2020 2320 4966 2074 6865 206d 6f75 6e74 # If the mount │ │ │ -001c0530: 5f6f 7074 206f 7074 696f 6e20 6973 206e _opt option is n │ │ │ -001c0540: 6f74 2061 6c72 6561 6479 2069 6e20 7468 ot already in th │ │ │ -001c0550: 6520 6d6f 756e 7420 706f 696e 7427 7320 e mount point's │ │ │ -001c0560: 2f65 7463 2f66 7374 6162 2065 6e74 7279 /etc/fstab entry │ │ │ -001c0570: 2c20 6164 6420 6974 0a20 2020 2065 6c69 , add it. eli │ │ │ -001c0580: 6620 2120 6772 6570 2022 246d 6f75 6e74 f ! grep "$mount │ │ │ -001c0590: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567 _point_match_reg │ │ │ -001c05a0: 6578 7022 202f 6574 632f 6673 7461 6220 exp" /etc/fstab │ │ │ -001c05b0: 7c20 6772 6570 202d 7120 226e 6f64 6576 | grep -q "nodev │ │ │ -001c05c0: 223b 2074 6865 6e0a 2020 2020 2020 2020 "; then. │ │ │ -001c05d0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f previous_mount_o │ │ │ -001c05e0: 7074 733d 2428 6772 6570 2022 246d 6f75 pts=$(grep "$mou │ │ │ -001c05f0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72 nt_point_match_r │ │ │ -001c0600: 6567 6578 7022 202f 6574 632f 6673 7461 egexp" /etc/fsta │ │ │ -001c0610: 6220 7c20 6177 6b20 277b 7072 696e 7420 b | awk '{print │ │ │ -001c0620: 2434 7d27 290a 2020 2020 2020 2020 7365 $4}'). se │ │ │ -001c0630: 6420 2d69 2022 737c 5c28 247b 6d6f 756e d -i "s|\(${moun │ │ │ -001c0640: 745f 706f 696e 745f 6d61 7463 685f 7265 t_point_match_re │ │ │ -001c0650: 6765 7870 7d2e 2a24 7b70 7265 7669 6f75 gexp}.*${previou │ │ │ -001c0660: 735f 6d6f 756e 745f 6f70 7473 7d5c 297c s_mount_opts}\)| │ │ │ -001c0670: 5c31 2c6e 6f64 6576 7c22 202f 6574 632f \1,nodev|" /etc/ │ │ │ -001c0680: 6673 7461 620a 2020 2020 6669 0a0a 0a20 fstab. fi... │ │ │ -001c0690: 2020 2069 6620 6d6b 6469 7220 2d70 2022 if mkdir -p " │ │ │ -001c06a0: 2f74 6d70 223b 2074 6865 6e0a 2020 2020 /tmp"; then. │ │ │ -001c06b0: 2020 2020 6966 206d 6f75 6e74 706f 696e if mountpoin │ │ │ -001c06c0: 7420 2d71 2022 2f74 6d70 223b 2074 6865 t -q "/tmp"; the │ │ │ -001c06d0: 6e0a 2020 2020 2020 2020 2020 2020 6d6f n. mo │ │ │ -001c06e0: 756e 7420 2d6f 2072 656d 6f75 6e74 202d unt -o remount - │ │ │ -001c06f0: 2d74 6172 6765 7420 222f 746d 7022 0a20 -target "/tmp". │ │ │ -001c0700: 2020 2020 2020 2066 690a 2020 2020 6669 fi. fi │ │ │ -001c0710: 0a7d 0a0a 7065 7266 6f72 6d5f 7265 6d65 .}..perform_reme │ │ │ -001c0720: 6469 6174 696f 6e0a 0a65 6c73 650a 2020 diation..else. │ │ │ -001c0730: 2020 2667 743b 2661 6d70 3b32 2065 6368 >&2 ech │ │ │ -001c0740: 6f20 2752 656d 6564 6961 7469 6f6e 2069 o 'Remediation i │ │ │ -001c0750: 7320 6e6f 7420 6170 706c 6963 6162 6c65 s not applicable │ │ │ -001c0760: 2c20 6e6f 7468 696e 6720 7761 7320 646f , nothing was do │ │ │ -001c0770: 6e65 270a 6669 0a3c 2f63 6f64 653e 3c2f ne'.fi.
│ │ │ +001be200: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c
- n
│ │ │ +001be290: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ +001be2a0: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ +001be2b0: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ +001be2c0: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ +001be2d0: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +001be2e0: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ +001be2f0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001be300: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ +001be310: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ +001be320: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001be330: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ +001be340: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ +001be350: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ +001be360: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ +001be370: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +001be380: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +001be390: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +001be3a0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +001be3b0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ +001be3c0: 7074 696f 6e5f 746d 705f 6e6f 6465 760a  ption_tmp_nodev.
│ │ │ +001be3d0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001be3e0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001be3f0: 6464 206e 6f64 6576 204f 7074 696f 6e20  dd nodev Option 
│ │ │ +001be400: 746f 202f 746d 703a 2043 6865 636b 2069  to /tmp: Check i
│ │ │ +001be410: 6e66 6f72 6d61 7469 6f6e 2061 7373 6f63  nformation assoc
│ │ │ +001be420: 6961 7465 6420 746f 206d 6f75 6e74 706f  iated to mountpo
│ │ │ +001be430: 696e 7427 0a20 2061 6e73 6962 6c65 2e62  int'.  ansible.b
│ │ │ +001be440: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ +001be450: 6669 6e64 6d6e 7420 2d2d 6673 7461 6220  findmnt --fstab 
│ │ │ +001be460: 272f 746d 7027 0a20 2072 6567 6973 7465  '/tmp'.  registe
│ │ │ +001be470: 723a 2064 6576 6963 655f 6e61 6d65 0a20  r: device_name. 
│ │ │ +001be480: 2066 6169 6c65 645f 7768 656e 3a20 6465   failed_when: de
│ │ │ +001be490: 7669 6365 5f6e 616d 652e 7263 2026 6774  vice_name.rc >
│ │ │ +001be4a0: 3b20 310a 2020 6368 616e 6765 645f 7768  ; 1.  changed_wh
│ │ │ +001be4b0: 656e 3a20 6661 6c73 650a 2020 6368 6563  en: false.  chec
│ │ │ +001be4c0: 6b5f 6d6f 6465 3a20 6661 6c73 650a 2020  k_mode: false.  
│ │ │ +001be4d0: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ +001be4e0: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ +001be4f0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001be500: 6167 6573 2061 6e64 2022 7270 6d2d 6f73  ages and "rpm-os
│ │ │ +001be510: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001be520: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001be530: 2020 2020 616e 6420 2262 6f6f 7463 2220      and "bootc" 
│ │ │ +001be540: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001be550: 2e70 6163 6b61 6765 7320 616e 6420 6e6f  .packages and no
│ │ │ +001be560: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ +001be570: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ +001be580: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001be590: 2020 2020 616e 6420 226f 7374 7265 6522      and "ostree"
│ │ │ +001be5a0: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ +001be5b0: 5f63 6d64 6c69 6e65 2029 2061 6e64 206e  _cmdline ) and n
│ │ │ +001be5c0: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ +001be5d0: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ +001be5e0: 2069 6e0a 2020 2020 5b22 646f 636b 6572   in.    ["docker
│ │ │ +001be5f0: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ +001be600: 7a22 2c20 2270 6f64 6d61 6e22 2c20 2263  z", "podman", "c
│ │ │ +001be610: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ +001be620: 202d 2027 222f 746d 7022 2069 6e20 616e   - '"/tmp" in an
│ │ │ +001be630: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ +001be640: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ +001be650: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ +001be660: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +001be670: 3030 2d35 332d 4143 2d36 0a20 202d 204e  00-53-AC-6.  - N
│ │ │ +001be680: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ +001be690: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ +001be6a0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ +001be6b0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001be6c0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001be6d0: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ +001be6e0: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ +001be6f0: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +001be700: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +001be710: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +001be720: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +001be730: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001be740: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ +001be750: 6f6e 5f74 6d70 5f6e 6f64 6576 0a20 202d  on_tmp_nodev.  -
│ │ │ +001be760: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +001be770: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ +001be780: 6e6f 6465 7620 4f70 7469 6f6e 2074 6f20  nodev Option to 
│ │ │ +001be790: 2f74 6d70 3a20 4372 6561 7465 206d 6f75  /tmp: Create mou
│ │ │ +001be7a0: 6e74 5f69 6e66 6f20 6469 6374 696f 6e61  nt_info dictiona
│ │ │ +001be7b0: 7279 2076 6172 6961 626c 6527 0a20 2073  ry variable'.  s
│ │ │ +001be7c0: 6574 5f66 6163 743a 0a20 2020 206d 6f75  et_fact:.    mou
│ │ │ +001be7d0: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75  nt_info: '{{ mou
│ │ │ +001be7e0: 6e74 5f69 6e66 6f7c 6465 6661 756c 7428  nt_info|default(
│ │ │ +001be7f0: 7b7d 297c 636f 6d62 696e 6528 7b69 7465  {})|combine({ite
│ │ │ +001be800: 6d2e 303a 2069 7465 6d2e 317d 2920 7d7d  m.0: item.1}) }}
│ │ │ +001be810: 270a 2020 7769 7468 5f74 6f67 6574 6865  '.  with_togethe
│ │ │ +001be820: 723a 0a20 202d 2027 7b7b 2064 6576 6963  r:.  - '{{ devic
│ │ │ +001be830: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ +001be840: 6e65 735b 305d 2e73 706c 6974 2829 207c  nes[0].split() |
│ │ │ +001be850: 206d 6170 2827 276c 6f77 6572 2727 2920   map(''lower'') 
│ │ │ +001be860: 7c20 6c69 7374 207d 7d27 0a20 202d 2027  | list }}'.  - '
│ │ │ +001be870: 7b7b 2064 6576 6963 655f 6e61 6d65 2e73  {{ device_name.s
│ │ │ +001be880: 7464 6f75 745f 6c69 6e65 735b 315d 2e73  tdout_lines[1].s
│ │ │ +001be890: 706c 6974 2829 207c 206c 6973 7420 7d7d  plit() | list }}
│ │ │ +001be8a0: 270a 2020 7768 656e 3a0a 2020 2d20 2820  '.  when:.  - ( 
│ │ │ +001be8b0: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ +001be8c0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001be8d0: 7061 636b 6167 6573 2061 6e64 2022 7270  packages and "rp
│ │ │ +001be8e0: 6d2d 6f73 7472 6565 2220 696e 2061 6e73  m-ostree" in ans
│ │ │ +001be8f0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001be900: 6765 730a 2020 2020 616e 6420 2262 6f6f  ges.    and "boo
│ │ │ +001be910: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ +001be920: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001be930: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ +001be940: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ +001be950: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001be960: 6765 730a 2020 2020 616e 6420 226f 7374  ges.    and "ost
│ │ │ +001be970: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001be980: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061  proc_cmdline ) a
│ │ │ +001be990: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ +001be9a0: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ +001be9b0: 7479 7065 2069 6e0a 2020 2020 5b22 646f  type in.    ["do
│ │ │ +001be9c0: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ +001be9d0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ +001be9e0: 2c20 2263 6f6e 7461 696e 6572 225d 2029  , "container"] )
│ │ │ +001be9f0: 2029 0a20 202d 2027 222f 746d 7022 2069   ).  - '"/tmp" i
│ │ │ +001bea00: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ +001bea10: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ +001bea20: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ +001bea30: 270a 2020 2d20 6465 7669 6365 5f6e 616d  '.  - device_nam
│ │ │ +001bea40: 652e 7374 646f 7574 2069 7320 6465 6669  e.stdout is defi
│ │ │ +001bea50: 6e65 6420 616e 6420 6465 7669 6365 5f6e  ned and device_n
│ │ │ +001bea60: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ +001bea70: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ +001bea80: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ +001bea90: 6f75 7420 7c20 6c65 6e67 7468 2026 6774  out | length >
│ │ │ +001beaa0: 3b20 3029 0a20 2074 6167 733a 0a20 202d  ; 0).  tags:.  -
│ │ │ +001beab0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001beac0: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +001bead0: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ +001beae0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +001beaf0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001beb00: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +001beb10: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +001beb20: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001beb30: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ +001beb40: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001beb50: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001beb60: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001beb70: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001beb80: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001beb90: 6e74 5f6f 7074 696f 6e5f 746d 705f 6e6f  nt_option_tmp_no
│ │ │ +001beba0: 6465 760a 2020 2d20 6e6f 5f72 6562 6f6f  dev.  - no_reboo
│ │ │ +001bebb0: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ +001bebc0: 3a20 2741 6464 206e 6f64 6576 204f 7074  : 'Add nodev Opt
│ │ │ +001bebd0: 696f 6e20 746f 202f 746d 703a 2049 6620  ion to /tmp: If 
│ │ │ +001bebe0: 2f74 6d70 206e 6f74 206d 6f75 6e74 6564  /tmp not mounted
│ │ │ +001bebf0: 2c20 6372 6166 7420 6d6f 756e 745f 696e  , craft mount_in
│ │ │ +001bec00: 666f 206d 616e 7561 6c6c 7927 0a20 2073  fo manually'.  s
│ │ │ +001bec10: 6574 5f66 6163 743a 0a20 2020 206d 6f75  et_fact:.    mou
│ │ │ +001bec20: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75  nt_info: '{{ mou
│ │ │ +001bec30: 6e74 5f69 6e66 6f7c 6465 6661 756c 7428  nt_info|default(
│ │ │ +001bec40: 7b7d 297c 636f 6d62 696e 6528 7b69 7465  {})|combine({ite
│ │ │ +001bec50: 6d2e 303a 2069 7465 6d2e 317d 2920 7d7d  m.0: item.1}) }}
│ │ │ +001bec60: 270a 2020 7769 7468 5f74 6f67 6574 6865  '.  with_togethe
│ │ │ +001bec70: 723a 0a20 202d 202d 2074 6172 6765 740a  r:.  - - target.
│ │ │ +001bec80: 2020 2020 2d20 736f 7572 6365 0a20 2020      - source.   
│ │ │ +001bec90: 202d 2066 7374 7970 650a 2020 2020 2d20   - fstype.    - 
│ │ │ +001beca0: 6f70 7469 6f6e 730a 2020 2d20 2d20 2f74  options.  - - /t
│ │ │ +001becb0: 6d70 0a20 2020 202d 2027 270a 2020 2020  mp.    - ''.    
│ │ │ +001becc0: 2d20 2727 0a20 2020 202d 2064 6566 6175  - ''.    - defau
│ │ │ +001becd0: 6c74 730a 2020 7768 656e 3a0a 2020 2d20  lts.  when:.  - 
│ │ │ +001bece0: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ +001becf0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001bed00: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001bed10: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ +001bed20: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001bed30: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ +001bed40: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +001bed50: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001bed60: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ +001bed70: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ +001bed80: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001bed90: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ +001beda0: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001bedb0: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ +001bedc0: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ +001bedd0: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ +001bede0: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ +001bedf0: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +001bee00: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +001bee10: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ +001bee20: 2029 2029 0a20 202d 2027 222f 746d 7022   ) ).  - '"/tmp"
│ │ │ +001bee30: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ +001bee40: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ +001bee50: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ +001bee60: 7374 270a 2020 2d20 2822 2d2d 6673 7461  st'.  - ("--fsta
│ │ │ +001bee70: 6222 207c 206c 656e 6774 6820 3d3d 2030  b" | length == 0
│ │ │ +001bee80: 290a 2020 2d20 6465 7669 6365 5f6e 616d  ).  - device_nam
│ │ │ +001bee90: 652e 7374 646f 7574 2069 7320 6465 6669  e.stdout is defi
│ │ │ +001beea0: 6e65 6420 616e 6420 6465 7669 6365 5f6e  ned and device_n
│ │ │ +001beeb0: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ +001beec0: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ +001beed0: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ +001beee0: 6f75 7420 7c20 6c65 6e67 7468 203d 3d20  out | length == 
│ │ │ +001beef0: 3029 0a20 2074 6167 733a 0a20 202d 204e  0).  tags:.  - N
│ │ │ +001bef00: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ +001bef10: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001bef20: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ +001bef30: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +001bef40: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001bef50: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +001bef60: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +001bef70: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001bef80: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ +001bef90: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +001befa0: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +001befb0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +001befc0: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +001befd0: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +001befe0: 5f6f 7074 696f 6e5f 746d 705f 6e6f 6465  _option_tmp_node
│ │ │ +001beff0: 760a 2020 2d20 6e6f 5f72 6562 6f6f 745f  v.  - no_reboot_
│ │ │ +001bf000: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ +001bf010: 2741 6464 206e 6f64 6576 204f 7074 696f  'Add nodev Optio
│ │ │ +001bf020: 6e20 746f 202f 746d 703a 204d 616b 6520  n to /tmp: Make 
│ │ │ +001bf030: 7375 7265 206e 6f64 6576 206f 7074 696f  sure nodev optio
│ │ │ +001bf040: 6e20 6973 2070 6172 7420 6f66 2074 6865  n is part of the
│ │ │ +001bf050: 2074 6f20 2f74 6d70 206f 7074 696f 6e73   to /tmp options
│ │ │ +001bf060: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ +001bf070: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ +001bf080: 7b20 6d6f 756e 745f 696e 666f 207c 2063  { mount_info | c
│ │ │ +001bf090: 6f6d 6269 6e65 2820 7b27 276f 7074 696f  ombine( {''optio
│ │ │ +001bf0a0: 6e73 2727 3a27 2727 277e 286d 6f75 6e74  ns'':''''~(mount
│ │ │ +001bf0b0: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c0a  _info.options |.
│ │ │ +001bf0c0: 2020 2020 2020 6465 6661 756c 7428 2727        default(''
│ │ │ +001bf0d0: 2727 2929 7e28 2727 2c27 2720 6966 2028  ''))~('','' if (
│ │ │ +001bf0e0: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ +001bf0f0: 6e73 207c 2064 6566 6175 6c74 2827 2727  ns | default('''
│ │ │ +001bf100: 2729 2920 656c 7365 2027 2727 2729 7e27  ')) else '''')~'
│ │ │ +001bf110: 276e 6f64 6576 2727 0a20 2020 2020 207d  'nodev''.      }
│ │ │ +001bf120: 2920 7d7d 270a 2020 7768 656e 3a0a 2020  ) }}'.  when:.  
│ │ │ +001bf130: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ +001bf140: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +001bf150: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001bf160: 2022 7270 6d2d 6f73 7472 6565 2220 696e   "rpm-ostree" in
│ │ │ +001bf170: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001bf180: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001bf190: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ +001bf1a0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001bf1b0: 7320 616e 6420 6e6f 7420 226f 7065 6e73  s and not "opens
│ │ │ +001bf1c0: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ +001bf1d0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001bf1e0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001bf1f0: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ +001bf200: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ +001bf210: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ +001bf220: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ +001bf230: 696f 6e5f 7479 7065 2069 6e0a 2020 2020  ion_type in.    
│ │ │ +001bf240: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ +001bf250: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ +001bf260: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572  man", "container
│ │ │ +001bf270: 225d 2029 2029 0a20 202d 2027 222f 746d  "] ) ).  - '"/tm
│ │ │ +001bf280: 7022 2069 6e20 616e 7369 626c 655f 6d6f  p" in ansible_mo
│ │ │ +001bf290: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ +001bf2a0: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ +001bf2b0: 6c69 7374 270a 2020 2d20 6d6f 756e 745f  list'.  - mount_
│ │ │ +001bf2c0: 696e 666f 2069 7320 6465 6669 6e65 6420  info is defined 
│ │ │ +001bf2d0: 616e 6420 226e 6f64 6576 2220 6e6f 7420  and "nodev" not 
│ │ │ +001bf2e0: 696e 2028 6d6f 756e 745f 696e 666f 2e6f  in (mount_info.o
│ │ │ +001bf2f0: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ +001bf300: 2827 2729 290a 2020 7461 6773 3a0a 2020  ('')).  tags:.  
│ │ │ +001bf310: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001bf320: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ +001bf330: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ +001bf340: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +001bf350: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001bf360: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ +001bf370: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001bf380: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ +001bf390: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ +001bf3a0: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +001bf3b0: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ +001bf3c0: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ +001bf3d0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ +001bf3e0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ +001bf3f0: 756e 745f 6f70 7469 6f6e 5f74 6d70 5f6e  unt_option_tmp_n
│ │ │ +001bf400: 6f64 6576 0a20 202d 206e 6f5f 7265 626f  odev.  - no_rebo
│ │ │ +001bf410: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +001bf420: 653a 2027 4164 6420 6e6f 6465 7620 4f70  e: 'Add nodev Op
│ │ │ +001bf430: 7469 6f6e 2074 6f20 2f74 6d70 3a20 456e  tion to /tmp: En
│ │ │ +001bf440: 7375 7265 202f 746d 7020 6973 206d 6f75  sure /tmp is mou
│ │ │ +001bf450: 6e74 6564 2077 6974 6820 6e6f 6465 7620  nted with nodev 
│ │ │ +001bf460: 6f70 7469 6f6e 270a 2020 616e 7369 626c  option'.  ansibl
│ │ │ +001bf470: 652e 706f 7369 782e 6d6f 756e 743a 0a20  e.posix.mount:. 
│ │ │ +001bf480: 2020 2070 6174 683a 202f 746d 700a 2020     path: /tmp.  
│ │ │ +001bf490: 2020 7372 633a 2027 7b7b 206d 6f75 6e74    src: '{{ mount
│ │ │ +001bf4a0: 5f69 6e66 6f2e 736f 7572 6365 207c 2064  _info.source | d
│ │ │ +001bf4b0: 6566 6175 6c74 2827 2727 2729 207d 7d27  efault('''') }}'
│ │ │ +001bf4c0: 0a20 2020 206f 7074 733a 2027 7b7b 206d  .    opts: '{{ m
│ │ │ +001bf4d0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ +001bf4e0: 7320 7c20 6465 6661 756c 7428 2727 2727  s | default(''''
│ │ │ +001bf4f0: 2920 7d7d 270a 2020 2020 7374 6174 653a  ) }}'.    state:
│ │ │ +001bf500: 206d 6f75 6e74 6564 0a20 2020 2066 7374   mounted.    fst
│ │ │ +001bf510: 7970 653a 2027 7b7b 206d 6f75 6e74 5f69  ype: '{{ mount_i
│ │ │ +001bf520: 6e66 6f2e 6673 7479 7065 207c 2064 6566  nfo.fstype | def
│ │ │ +001bf530: 6175 6c74 2827 2727 2729 207d 7d27 0a20  ault('''') }}'. 
│ │ │ +001bf540: 2072 6567 6973 7465 723a 206d 6f75 6e74   register: mount
│ │ │ +001bf550: 5f72 6573 756c 740a 2020 6661 696c 6564  _result.  failed
│ │ │ +001bf560: 5f77 6865 6e3a 0a20 202d 206d 6f75 6e74  _when:.  - mount
│ │ │ +001bf570: 5f72 6573 756c 7420 6973 2066 6169 6c65  _result is faile
│ │ │ +001bf580: 640a 2020 2d20 2727 2774 6172 6765 7420  d.  - '''target 
│ │ │ +001bf590: 6973 2062 7573 7927 2720 6e6f 7420 696e  is busy'' not in
│ │ │ +001bf5a0: 2028 6d6f 756e 745f 7265 7375 6c74 2e6d   (mount_result.m
│ │ │ +001bf5b0: 7367 207c 2064 6566 6175 6c74 2827 2727  sg | default('''
│ │ │ +001bf5c0: 2729 2927 0a20 202d 2027 2727 616c 7265  '))'.  - '''alre
│ │ │ +001bf5d0: 6164 7920 6d6f 756e 7465 6427 2720 6e6f  ady mounted'' no
│ │ │ +001bf5e0: 7420 696e 2028 6d6f 756e 745f 7265 7375  t in (mount_resu
│ │ │ +001bf5f0: 6c74 2e6d 7367 207c 2064 6566 6175 6c74  lt.msg | default
│ │ │ +001bf600: 2827 2727 2729 2927 0a20 2077 6865 6e3a  (''''))'.  when:
│ │ │ +001bf610: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ +001bf620: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +001bf630: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001bf640: 616e 6420 2272 706d 2d6f 7374 7265 6522  and "rpm-ostree"
│ │ │ +001bf650: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001bf660: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001bf670: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ +001bf680: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001bf690: 6167 6573 2061 6e64 206e 6f74 2022 6f70  ages and not "op
│ │ │ +001bf6a0: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ +001bf6b0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001bf6c0: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001bf6d0: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ +001bf6e0: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ +001bf6f0: 696e 6520 2920 616e 6420 6e6f 7420 2820  ine ) and not ( 
│ │ │ +001bf700: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ +001bf710: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20  zation_type in. 
│ │ │ +001bf720: 2020 205b 2264 6f63 6b65 7222 2c20 226c     ["docker", "l
│ │ │ +001bf730: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ +001bf740: 706f 646d 616e 222c 2022 636f 6e74 6169  podman", "contai
│ │ │ +001bf750: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ +001bf760: 2f74 6d70 2220 696e 2061 6e73 6962 6c65  /tmp" in ansible
│ │ │ +001bf770: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ +001bf780: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ +001bf790: 207c 206c 6973 7427 0a20 202d 206d 6f75   | list'.  - mou
│ │ │ +001bf7a0: 6e74 5f69 6e66 6f20 6973 2064 6566 696e  nt_info is defin
│ │ │ +001bf7b0: 6564 0a20 202d 2028 6465 7669 6365 5f6e  ed.  - (device_n
│ │ │ +001bf7c0: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ +001bf7d0: 6669 6e65 6420 616e 6420 2864 6576 6963  fined and (devic
│ │ │ +001bf7e0: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ +001bf7f0: 6c65 6e67 7468 2026 6774 3b20 3029 2920  length > 0)) 
│ │ │ +001bf800: 6f72 2028 222d 2d66 7374 6162 220a 2020  or ("--fstab".  
│ │ │ +001bf810: 2020 7c20 6c65 6e67 7468 203d 3d20 3029    | length == 0)
│ │ │ +001bf820: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +001bf830: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ +001bf840: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001bf850: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ +001bf860: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ +001bf870: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001bf880: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ +001bf890: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ +001bf8a0: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ +001bf8b0: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ +001bf8c0: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +001bf8d0: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +001bf8e0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +001bf8f0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +001bf900: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ +001bf910: 7074 696f 6e5f 746d 705f 6e6f 6465 760a  ption_tmp_nodev.
│ │ │ +001bf920: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001bf930: 6564 6564 0a3c 2f63 6f64 653e 3c2f 7072  eded.Remediation
│ │ │ +001bf9f0: 2053 6865 6c6c 2073 6372 6970 7420 e287   Shell script ..
│ │ │ +001bfa00: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
Compl │ │ │ +001be1e0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +001be1f0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +001be210: 2f74 683e 3c74 643e 6869 6768 3c2f 7464 /th>high
Re │ │ │ +001be230: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +001be240: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:configure │ │ │ +001be270: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ +001bfa80: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +001bfa90: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
<
│ │ │ +001bfab0: 636f 6465 3e23 2052 656d 6564 6961 7469  code># Remediati
│ │ │ +001bfac0: 6f6e 2069 7320 6170 706c 6963 6162 6c65  on is applicable
│ │ │ +001bfad0: 206f 6e6c 7920 696e 2063 6572 7461 696e   only in certain
│ │ │ +001bfae0: 2070 6c61 7466 6f72 6d73 0a69 6620 2820   platforms.if ( 
│ │ │ +001bfaf0: 2120 2820 7b20 7270 6d20 2d2d 7175 6965  ! ( { rpm --quie
│ │ │ +001bfb00: 7420 2d71 206b 6572 6e65 6c20 3b7d 2026  t -q kernel ;} &
│ │ │ +001bfb10: 616d 703b 2661 6d70 3b20 7b20 7270 6d20  amp;& { rpm 
│ │ │ +001bfb20: 2d2d 7175 6965 7420 2d71 2072 706d 2d6f  --quiet -q rpm-o
│ │ │ +001bfb30: 7374 7265 6520 3b7d 2026 616d 703b 2661  stree ;} &&a
│ │ │ +001bfb40: 6d70 3b20 7b20 7270 6d20 2d2d 7175 6965  mp; { rpm --quie
│ │ │ +001bfb50: 7420 2d71 2062 6f6f 7463 203b 7d20 2661  t -q bootc ;} &a
│ │ │ +001bfb60: 6d70 3b26 616d 703b 207b 2021 2072 706d  mp;& { ! rpm
│ │ │ +001bfb70: 202d 2d71 7569 6574 202d 7120 6f70 656e   --quiet -q open
│ │ │ +001bfb80: 7368 6966 742d 6b75 6265 6c65 7420 3b7d  shift-kubelet ;}
│ │ │ +001bfb90: 2026 616d 703b 2661 6d70 3b20 285b 202d   && ([ -
│ │ │ +001bfba0: 6620 2f72 756e 2f6f 7374 7265 652d 626f  f /run/ostree-bo
│ │ │ +001bfbb0: 6f74 6564 205d 207c 7c20 5b20 2d4c 202f  oted ] || [ -L /
│ │ │ +001bfbc0: 6f73 7472 6565 205d 2920 2920 2661 6d70  ostree ]) ) &
│ │ │ +001bfbd0: 3b26 616d 703b 2021 2028 205b 202d 6620  ;& ! ( [ -f 
│ │ │ +001bfbe0: 2f2e 646f 636b 6572 656e 7620 5d20 7c7c  /.dockerenv ] ||
│ │ │ +001bfbf0: 205b 202d 6620 2f72 756e 2f2e 636f 6e74   [ -f /run/.cont
│ │ │ +001bfc00: 6169 6e65 7265 6e76 205d 2029 2029 2026  ainerenv ] ) ) &
│ │ │ +001bfc10: 616d 703b 2661 6d70 3b20 7b20 2820 6669  amp;& { ( fi
│ │ │ +001bfc20: 6e64 6d6e 7420 2d2d 6b65 726e 656c 2022  ndmnt --kernel "
│ │ │ +001bfc30: 2f74 6d70 2220 2667 743b 202f 6465 762f  /tmp" > /dev/
│ │ │ +001bfc40: 6e75 6c6c 207c 7c20 6669 6e64 6d6e 7420  null || findmnt 
│ │ │ +001bfc50: 2d2d 6673 7461 6220 222f 746d 7022 2026  --fstab "/tmp" &
│ │ │ +001bfc60: 6774 3b20 2f64 6576 2f6e 756c 6c20 293b  gt; /dev/null );
│ │ │ +001bfc70: 207d 3b20 7468 656e 0a0a 6675 6e63 7469   }; then..functi
│ │ │ +001bfc80: 6f6e 2070 6572 666f 726d 5f72 656d 6564  on perform_remed
│ │ │ +001bfc90: 6961 7469 6f6e 207b 0a0a 2020 2020 0a20  iation {..    . 
│ │ │ +001bfca0: 2020 2020 2020 2023 2074 6865 206d 6f75         # the mou
│ │ │ +001bfcb0: 6e74 2070 6f69 6e74 202f 746d 7020 6861  nt point /tmp ha
│ │ │ +001bfcc0: 7320 746f 2062 6520 6465 6669 6e65 6420  s to be defined 
│ │ │ +001bfcd0: 696e 202f 6574 632f 6673 7461 620a 2020  in /etc/fstab.  
│ │ │ +001bfce0: 2020 2020 2020 2320 6265 666f 7265 2074        # before t
│ │ │ +001bfcf0: 6869 7320 7265 6d65 6469 6174 696f 6e20  his remediation 
│ │ │ +001bfd00: 6361 6e20 6265 2065 7865 6375 7465 642e  can be executed.
│ │ │ +001bfd10: 2049 6e20 6361 7365 2069 7420 6973 206e   In case it is n
│ │ │ +001bfd20: 6f74 2064 6566 696e 6564 2c20 7468 650a  ot defined, the.
│ │ │ +001bfd30: 2020 2020 2020 2020 2320 7265 6d65 6469          # remedi
│ │ │ +001bfd40: 6174 696f 6e20 6162 6f72 7473 2061 6e64  ation aborts and
│ │ │ +001bfd50: 206e 6f20 6368 616e 6765 7320 7265 6761   no changes rega
│ │ │ +001bfd60: 7264 696e 6720 7468 6520 6d6f 756e 7420  rding the mount 
│ │ │ +001bfd70: 706f 696e 7420 6172 6520 646f 6e65 2e0a  point are done..
│ │ │ +001bfd80: 2020 2020 2020 2020 6d6f 756e 745f 706f          mount_po
│ │ │ +001bfd90: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001bfda0: 3d22 2428 7072 696e 7466 2022 5e5b 5b3a  ="$(printf "^[[:
│ │ │ +001bfdb0: 7370 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b  space:]]*[^#].*[
│ │ │ +001bfdc0: 5b3a 7370 6163 653a 5d5d 2573 5b5b 3a73  [:space:]]%s[[:s
│ │ │ +001bfdd0: 7061 6365 3a5d 5d22 2022 2f74 6d70 2229  pace:]]" "/tmp")
│ │ │ +001bfde0: 220a 0a20 2020 2067 7265 7020 2224 6d6f  "..    grep "$mo
│ │ │ +001bfdf0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001bfe00: 7265 6765 7870 2220 2d71 202f 6574 632f  regexp" -q /etc/
│ │ │ +001bfe10: 6673 7461 6220 5c0a 2020 2020 2020 2020  fstab \.        
│ │ │ +001bfe20: 7c7c 207b 2065 6368 6f20 2254 6865 206d  || { echo "The m
│ │ │ +001bfe30: 6f75 6e74 2070 6f69 6e74 2027 2f74 6d70  ount point '/tmp
│ │ │ +001bfe40: 2720 6973 206e 6f74 2065 7665 6e20 696e  ' is not even in
│ │ │ +001bfe50: 202f 6574 632f 6673 7461 622c 2073 6f20   /etc/fstab, so 
│ │ │ +001bfe60: 7765 2063 616e 2774 2073 6574 2075 7020  we can't set up 
│ │ │ +001bfe70: 6d6f 756e 7420 6f70 7469 6f6e 7322 2026  mount options" &
│ │ │ +001bfe80: 6774 3b26 616d 703b 323b 0a20 2020 2020  gt;&2;.     
│ │ │ +001bfe90: 2020 2020 2020 2020 2020 2065 6368 6f20             echo 
│ │ │ +001bfea0: 224e 6f74 2072 656d 6564 6961 7469 6e67  "Not remediating
│ │ │ +001bfeb0: 2c20 6265 6361 7573 6520 7468 6572 6520  , because there 
│ │ │ +001bfec0: 6973 206e 6f20 7265 636f 7264 206f 6620  is no record of 
│ │ │ +001bfed0: 2f74 6d70 2069 6e20 2f65 7463 2f66 7374  /tmp in /etc/fst
│ │ │ +001bfee0: 6162 2220 2667 743b 2661 6d70 3b32 3b20  ab" >&2; 
│ │ │ +001bfef0: 7265 7475 726e 2031 3b20 7d0a 2020 2020  return 1; }.    
│ │ │ +001bff00: 0a0a 0a20 2020 206d 6f75 6e74 5f70 6f69  ...    mount_poi
│ │ │ +001bff10: 6e74 5f6d 6174 6368 5f72 6567 6578 703d  nt_match_regexp=
│ │ │ +001bff20: 2224 2870 7269 6e74 6620 225e 5b5b 3a73  "$(printf "^[[:s
│ │ │ +001bff30: 7061 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b  pace:]]*[^#].*[[
│ │ │ +001bff40: 3a73 7061 6365 3a5d 5d25 735b 5b3a 7370  :space:]]%s[[:sp
│ │ │ +001bff50: 6163 653a 5d5d 2220 2f74 6d70 2922 0a0a  ace:]]" /tmp)"..
│ │ │ +001bff60: 2020 2020 2320 4966 2074 6865 206d 6f75      # If the mou
│ │ │ +001bff70: 6e74 2070 6f69 6e74 2069 7320 6e6f 7420  nt point is not 
│ │ │ +001bff80: 696e 202f 6574 632f 6673 7461 622c 2067  in /etc/fstab, g
│ │ │ +001bff90: 6574 2070 7265 7669 6f75 7320 6d6f 756e  et previous moun
│ │ │ +001bffa0: 7420 6f70 7469 6f6e 7320 6672 6f6d 202f  t options from /
│ │ │ +001bffb0: 6574 632f 6d74 6162 0a20 2020 2069 6620  etc/mtab.    if 
│ │ │ +001bffc0: 2120 6772 6570 202d 7120 2224 6d6f 756e  ! grep -q "$moun
│ │ │ +001bffd0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001bffe0: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ +001bfff0: 3b20 7468 656e 0a20 2020 2020 2020 2023  ; then.        #
│ │ │ +001c0000: 2072 756e 7469 6d65 206f 7074 7320 7769   runtime opts wi
│ │ │ +001c0010: 7468 6f75 7420 736f 6d65 2061 7574 6f6d  thout some autom
│ │ │ +001c0020: 6174 6963 206b 6572 6e65 6c2f 7573 6572  atic kernel/user
│ │ │ +001c0030: 7370 6163 652d 6164 6465 6420 6465 6661  space-added defa
│ │ │ +001c0040: 756c 7473 0a20 2020 2020 2020 2070 7265  ults.        pre
│ │ │ +001c0050: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001c0060: 3d24 2867 7265 7020 2224 6d6f 756e 745f  =$(grep "$mount_
│ │ │ +001c0070: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001c0080: 7870 2220 2f65 7463 2f6d 7461 6220 7c20  xp" /etc/mtab | 
│ │ │ +001c0090: 6865 6164 202d 3120 7c20 2061 776b 2027  head -1 |  awk '
│ │ │ +001c00a0: 7b70 7269 6e74 2024 347d 2720 5c0a 2020  {print $4}' \.  
│ │ │ +001c00b0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +001c00c0: 2020 7c20 7365 6420 2d45 2022 732f 2872    | sed -E "s/(r
│ │ │ +001c00d0: 777c 6465 6661 756c 7473 7c73 6563 6c61  w|defaults|secla
│ │ │ +001c00e0: 6265 6c7c 6e6f 6465 7629 282c 7c24 292f  bel|nodev)(,|$)/
│ │ │ +001c00f0: 2f67 3b73 2f2c 242f 2f22 290a 2020 2020  /g;s/,$//").    
│ │ │ +001c0100: 2020 2020 5b20 2224 7072 6576 696f 7573      [ "$previous
│ │ │ +001c0110: 5f6d 6f75 6e74 5f6f 7074 7322 205d 2026  _mount_opts" ] &
│ │ │ +001c0120: 616d 703b 2661 6d70 3b20 7072 6576 696f  amp;& previo
│ │ │ +001c0130: 7573 5f6d 6f75 6e74 5f6f 7074 732b 3d22  us_mount_opts+="
│ │ │ +001c0140: 2c22 0a20 2020 2020 2020 2023 2049 6e20  ,".        # In 
│ │ │ +001c0150: 6973 6f39 3636 3020 6669 6c65 7379 7374  iso9660 filesyst
│ │ │ +001c0160: 656d 7320 6d74 6162 2063 6f75 6c64 2064  ems mtab could d
│ │ │ +001c0170: 6573 6372 6962 6520 6120 2262 6c6f 636b  escribe a "block
│ │ │ +001c0180: 7369 7a65 2220 7661 6c75 652c 2074 6869  size" value, thi
│ │ │ +001c0190: 7320 7368 6f75 6c64 2062 6520 7265 666c  s should be refl
│ │ │ +001c01a0: 6563 7465 6420 696e 0a20 2020 2020 2020  ected in.       
│ │ │ +001c01b0: 2023 2066 7374 6162 2061 7320 2262 6c6f   # fstab as "blo
│ │ │ +001c01c0: 636b 222e 2020 5468 6520 6e65 7874 2076  ck".  The next v
│ │ │ +001c01d0: 6172 6961 626c 6520 6973 2074 6f20 7361  ariable is to sa
│ │ │ +001c01e0: 7469 7366 7920 7368 656c 6c63 6865 636b  tisfy shellcheck
│ │ │ +001c01f0: 2053 4332 3035 302e 0a20 2020 2020 2020   SC2050..       
│ │ │ +001c0200: 2066 735f 7479 7065 3d22 220a 2020 2020   fs_type="".    
│ │ │ +001c0210: 2020 2020 6966 205b 2020 2224 6673 5f74      if [  "$fs_t
│ │ │ +001c0220: 7970 6522 203d 3d20 2269 736f 3936 3630  ype" == "iso9660
│ │ │ +001c0230: 2220 5d20 3b20 7468 656e 0a20 2020 2020  " ] ; then.     
│ │ │ +001c0240: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ +001c0250: 6d6f 756e 745f 6f70 7473 3d24 2873 6564  mount_opts=$(sed
│ │ │ +001c0260: 2027 732f 626c 6f63 6b73 697a 653d 2f62   's/blocksize=/b
│ │ │ +001c0270: 6c6f 636b 3d2f 2720 266c 743b 266c 743b  lock=/' <<
│ │ │ +001c0280: 266c 743b 2022 2470 7265 7669 6f75 735f  < "$previous_
│ │ │ +001c0290: 6d6f 756e 745f 6f70 7473 2229 0a20 2020  mount_opts").   
│ │ │ +001c02a0: 2020 2020 2066 690a 2020 2020 2020 2020       fi.        
│ │ │ +001c02b0: 6563 686f 2022 202f 746d 7020 2064 6566  echo " /tmp  def
│ │ │ +001c02c0: 6175 6c74 732c 247b 7072 6576 696f 7573  aults,${previous
│ │ │ +001c02d0: 5f6d 6f75 6e74 5f6f 7074 737d 6e6f 6465  _mount_opts}node
│ │ │ +001c02e0: 7620 3020 3022 2026 6774 3b26 6774 3b20  v 0 0" >> 
│ │ │ +001c02f0: 2f65 7463 2f66 7374 6162 0a20 2020 2023  /etc/fstab.    #
│ │ │ +001c0300: 2049 6620 7468 6520 6d6f 756e 745f 6f70   If the mount_op
│ │ │ +001c0310: 7420 6f70 7469 6f6e 2069 7320 6e6f 7420  t option is not 
│ │ │ +001c0320: 616c 7265 6164 7920 696e 2074 6865 206d  already in the m
│ │ │ +001c0330: 6f75 6e74 2070 6f69 6e74 2773 202f 6574  ount point's /et
│ │ │ +001c0340: 632f 6673 7461 6220 656e 7472 792c 2061  c/fstab entry, a
│ │ │ +001c0350: 6464 2069 740a 2020 2020 656c 6966 2021  dd it.    elif !
│ │ │ +001c0360: 2067 7265 7020 2224 6d6f 756e 745f 706f   grep "$mount_po
│ │ │ +001c0370: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001c0380: 2220 2f65 7463 2f66 7374 6162 207c 2067  " /etc/fstab | g
│ │ │ +001c0390: 7265 7020 2d71 2022 6e6f 6465 7622 3b20  rep -q "nodev"; 
│ │ │ +001c03a0: 7468 656e 0a20 2020 2020 2020 2070 7265  then.        pre
│ │ │ +001c03b0: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001c03c0: 3d24 2867 7265 7020 2224 6d6f 756e 745f  =$(grep "$mount_
│ │ │ +001c03d0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001c03e0: 7870 2220 2f65 7463 2f66 7374 6162 207c  xp" /etc/fstab |
│ │ │ +001c03f0: 2061 776b 2027 7b70 7269 6e74 2024 347d   awk '{print $4}
│ │ │ +001c0400: 2729 0a20 2020 2020 2020 2073 6564 202d  ').        sed -
│ │ │ +001c0410: 6920 2273 7c5c 2824 7b6d 6f75 6e74 5f70  i "s|\(${mount_p
│ │ │ +001c0420: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001c0430: 707d 2e2a 247b 7072 6576 696f 7573 5f6d  p}.*${previous_m
│ │ │ +001c0440: 6f75 6e74 5f6f 7074 737d 5c29 7c5c 312c  ount_opts}\)|\1,
│ │ │ +001c0450: 6e6f 6465 767c 2220 2f65 7463 2f66 7374  nodev|" /etc/fst
│ │ │ +001c0460: 6162 0a20 2020 2066 690a 0a0a 2020 2020  ab.    fi...    
│ │ │ +001c0470: 6966 206d 6b64 6972 202d 7020 222f 746d  if mkdir -p "/tm
│ │ │ +001c0480: 7022 3b20 7468 656e 0a20 2020 2020 2020  p"; then.       
│ │ │ +001c0490: 2069 6620 6d6f 756e 7470 6f69 6e74 202d   if mountpoint -
│ │ │ +001c04a0: 7120 222f 746d 7022 3b20 7468 656e 0a20  q "/tmp"; then. 
│ │ │ +001c04b0: 2020 2020 2020 2020 2020 206d 6f75 6e74             mount
│ │ │ +001c04c0: 202d 6f20 7265 6d6f 756e 7420 2d2d 7461   -o remount --ta
│ │ │ +001c04d0: 7267 6574 2022 2f74 6d70 220a 2020 2020  rget "/tmp".    
│ │ │ +001c04e0: 2020 2020 6669 0a20 2020 2066 690a 7d0a      fi.    fi.}.
│ │ │ +001c04f0: 0a70 6572 666f 726d 5f72 656d 6564 6961  .perform_remedia
│ │ │ +001c0500: 7469 6f6e 0a0a 656c 7365 0a20 2020 2026  tion..else.    &
│ │ │ +001c0510: 6774 3b26 616d 703b 3220 6563 686f 2027  gt;&2 echo '
│ │ │ +001c0520: 5265 6d65 6469 6174 696f 6e20 6973 206e  Remediation is n
│ │ │ +001c0530: 6f74 2061 7070 6c69 6361 626c 652c 206e  ot applicable, n
│ │ │ +001c0540: 6f74 6869 6e67 2077 6173 2064 6f6e 6527  othing was done'
│ │ │ +001c0550: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.
Remediation │ │ │ +001c0610: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ +001c0620: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ +001c06b0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +001c06d0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +001c06e0: 7464 3e68 6967 683c 2f74 643e 3c2f 7472 td>highReboot: │ │ │ +001c0700: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +001c0720: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ +001c0750: 636f 6465 3e0a 7061 7274 202f 746d 7020  code>.part /tmp 
│ │ │ +001c0760: 2d2d 6d6f 756e 746f 7074 696f 6e73 3d22  --mountoptions="
│ │ │ +001c0770: 6e6f 6465 7622 0a3c 2f63 6f64 653e 3c2f  nodev".
│ │ │ 001c0790: 3c2f 7464 3e3c 2f74 723e 3c2f 7462 6f64 < │ │ │ 001c07b0: 2f74 723e 3c74 7220 6461 7461 2d74 742d /tr>Remedi │ │ │ -001c1830: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ -001c1840: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -001c18d0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -001c18e0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -001c1900: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ -001c1920: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001c1930: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -001c1950: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -001c1970: 3c70 7265 3e3c 636f 6465 3e0a 7061 7274
.part
│ │ │ -001c1980: 202f 746d 7020 2d2d 6d6f 756e 746f 7074   /tmp --mountopt
│ │ │ -001c1990: 696f 6e73 3d22 6e6f 6578 6563 220a 3c2f  ions="noexec".
Re │ │ │ -001c1a50: 6d65 6469 6174 696f 6e20 416e 7369 626c mediation Ansibl │ │ │ -001c1a60: 6520 736e 6970 7065 7420 e287 b23c 2f61 e snippet ...
< │ │ │ -001c1b00: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -001c1b10: 3c74 723e 3c74 683e 4469 7372 7570 7469 Reboot:false
- name: Gather 
│ │ │ -001c1bb0: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -001c1bc0: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -001c1bd0: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -001c1be0: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -001c1bf0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001c1c00: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ -001c1c10: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ -001c1c20: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -001c1c30: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001c1c40: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ -001c1c50: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ -001c1c60: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001c1c70: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ -001c1c80: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ -001c1c90: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ -001c1ca0: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ -001c1cb0: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ -001c1cc0: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ -001c1cd0: 6e74 5f6f 7074 696f 6e5f 746d 705f 6e6f  nt_option_tmp_no
│ │ │ -001c1ce0: 6578 6563 0a20 202d 206e 6f5f 7265 626f  exec.  - no_rebo
│ │ │ -001c1cf0: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -001c1d00: 653a 2027 4164 6420 6e6f 6578 6563 204f  e: 'Add noexec O
│ │ │ -001c1d10: 7074 696f 6e20 746f 202f 746d 703a 2043  ption to /tmp: C
│ │ │ -001c1d20: 6865 636b 2069 6e66 6f72 6d61 7469 6f6e  heck information
│ │ │ -001c1d30: 2061 7373 6f63 6961 7465 6420 746f 206d   associated to m
│ │ │ -001c1d40: 6f75 6e74 706f 696e 7427 0a20 2061 6e73  ountpoint'.  ans
│ │ │ -001c1d50: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d  ible.builtin.com
│ │ │ -001c1d60: 6d61 6e64 3a20 6669 6e64 6d6e 7420 2d2d  mand: findmnt --
│ │ │ -001c1d70: 6673 7461 6220 272f 746d 7027 0a20 2072  fstab '/tmp'.  r
│ │ │ -001c1d80: 6567 6973 7465 723a 2064 6576 6963 655f  egister: device_
│ │ │ -001c1d90: 6e61 6d65 0a20 2066 6169 6c65 645f 7768  name.  failed_wh
│ │ │ -001c1da0: 656e 3a20 6465 7669 6365 5f6e 616d 652e  en: device_name.
│ │ │ -001c1db0: 7263 2026 6774 3b20 310a 2020 6368 616e  rc > 1.  chan
│ │ │ -001c1dc0: 6765 645f 7768 656e 3a20 6661 6c73 650a  ged_when: false.
│ │ │ -001c1dd0: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661    check_mode: fa
│ │ │ -001c1de0: 6c73 650a 2020 7768 656e 3a0a 2020 2d20  lse.  when:.  - 
│ │ │ -001c1df0: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -001c1e00: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001c1e10: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001c1e20: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ -001c1e30: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001c1e40: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ -001c1e50: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -001c1e60: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001c1e70: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001c1e80: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001c1e90: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001c1ea0: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ -001c1eb0: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001c1ec0: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ -001c1ed0: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001c1ee0: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001c1ef0: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ -001c1f00: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -001c1f10: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -001c1f20: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ -001c1f30: 2029 2029 0a20 202d 2027 222f 746d 7022   ) ).  - '"/tmp"
│ │ │ -001c1f40: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ -001c1f50: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ -001c1f60: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ -001c1f70: 7374 270a 2020 7461 6773 3a0a 2020 2d20  st'.  tags:.  - 
│ │ │ -001c1f80: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001c1f90: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001c1fa0: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ -001c1fb0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -001c1fc0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001c1fd0: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ -001c1fe0: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ -001c1ff0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001c2000: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ -001c2010: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001c2020: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001c2030: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001c2040: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001c2050: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001c2060: 745f 6f70 7469 6f6e 5f74 6d70 5f6e 6f65  t_option_tmp_noe
│ │ │ -001c2070: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f  xec.  - no_reboo
│ │ │ -001c2080: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ -001c2090: 3a20 2741 6464 206e 6f65 7865 6320 4f70  : 'Add noexec Op
│ │ │ -001c20a0: 7469 6f6e 2074 6f20 2f74 6d70 3a20 4372  tion to /tmp: Cr
│ │ │ -001c20b0: 6561 7465 206d 6f75 6e74 5f69 6e66 6f20  eate mount_info 
│ │ │ -001c20c0: 6469 6374 696f 6e61 7279 2076 6172 6961  dictionary varia
│ │ │ -001c20d0: 626c 6527 0a20 2073 6574 5f66 6163 743a  ble'.  set_fact:
│ │ │ -001c20e0: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ -001c20f0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c   '{{ mount_info|
│ │ │ -001c2100: 6465 6661 756c 7428 7b7d 297c 636f 6d62  default({})|comb
│ │ │ -001c2110: 696e 6528 7b69 7465 6d2e 303a 2069 7465  ine({item.0: ite
│ │ │ -001c2120: 6d2e 317d 2920 7d7d 270a 2020 7769 7468  m.1}) }}'.  with
│ │ │ -001c2130: 5f74 6f67 6574 6865 723a 0a20 202d 2027  _together:.  - '
│ │ │ -001c2140: 7b7b 2064 6576 6963 655f 6e61 6d65 2e73  {{ device_name.s
│ │ │ -001c2150: 7464 6f75 745f 6c69 6e65 735b 305d 2e73  tdout_lines[0].s
│ │ │ -001c2160: 706c 6974 2829 207c 206d 6170 2827 276c  plit() | map(''l
│ │ │ -001c2170: 6f77 6572 2727 2920 7c20 6c69 7374 207d  ower'') | list }
│ │ │ -001c2180: 7d27 0a20 202d 2027 7b7b 2064 6576 6963  }'.  - '{{ devic
│ │ │ -001c2190: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ -001c21a0: 6e65 735b 315d 2e73 706c 6974 2829 207c  nes[1].split() |
│ │ │ -001c21b0: 206c 6973 7420 7d7d 270a 2020 7768 656e   list }}'.  when
│ │ │ -001c21c0: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ -001c21d0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -001c21e0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001c21f0: 2061 6e64 2022 7270 6d2d 6f73 7472 6565   and "rpm-ostree
│ │ │ -001c2200: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001c2210: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001c2220: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ -001c2230: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001c2240: 6b61 6765 7320 616e 6420 6e6f 7420 226f  kages and not "o
│ │ │ -001c2250: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ -001c2260: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001c2270: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001c2280: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ -001c2290: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ -001c22a0: 6c69 6e65 2029 2061 6e64 206e 6f74 2028  line ) and not (
│ │ │ -001c22b0: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ -001c22c0: 697a 6174 696f 6e5f 7479 7065 2069 6e0a  ization_type in.
│ │ │ -001c22d0: 2020 2020 5b22 646f 636b 6572 222c 2022      ["docker", "
│ │ │ -001c22e0: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ -001c22f0: 2270 6f64 6d61 6e22 2c20 2263 6f6e 7461  "podman", "conta
│ │ │ -001c2300: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ -001c2310: 222f 746d 7022 2069 6e20 616e 7369 626c  "/tmp" in ansibl
│ │ │ -001c2320: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ -001c2330: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ -001c2340: 2920 7c20 6c69 7374 270a 2020 2d20 6465  ) | list'.  - de
│ │ │ -001c2350: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001c2360: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ -001c2370: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001c2380: 7574 5f6c 696e 6573 2069 7320 6465 6669  ut_lines is defi
│ │ │ -001c2390: 6e65 640a 2020 2d20 2864 6576 6963 655f  ned.  - (device_
│ │ │ -001c23a0: 6e61 6d65 2e73 7464 6f75 7420 7c20 6c65  name.stdout | le
│ │ │ -001c23b0: 6e67 7468 2026 6774 3b20 3029 0a20 2074  ngth > 0).  t
│ │ │ -001c23c0: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -001c23d0: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ -001c23e0: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ -001c23f0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001c2400: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ -001c2410: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ -001c2420: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001c2430: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ -001c2440: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ -001c2450: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -001c2460: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -001c2470: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -001c2480: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -001c2490: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -001c24a0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ -001c24b0: 6e5f 746d 705f 6e6f 6578 6563 0a20 202d  n_tmp_noexec.  -
│ │ │ -001c24c0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -001c24d0: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ -001c24e0: 6e6f 6578 6563 204f 7074 696f 6e20 746f  noexec Option to
│ │ │ -001c24f0: 202f 746d 703a 2049 6620 2f74 6d70 206e   /tmp: If /tmp n
│ │ │ -001c2500: 6f74 206d 6f75 6e74 6564 2c20 6372 6166  ot mounted, craf
│ │ │ -001c2510: 7420 6d6f 756e 745f 696e 666f 206d 616e  t mount_info man
│ │ │ -001c2520: 7561 6c6c 7927 0a20 2073 6574 5f66 6163  ually'.  set_fac
│ │ │ -001c2530: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66  t:.    mount_inf
│ │ │ -001c2540: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66  o: '{{ mount_inf
│ │ │ -001c2550: 6f7c 6465 6661 756c 7428 7b7d 297c 636f  o|default({})|co
│ │ │ -001c2560: 6d62 696e 6528 7b69 7465 6d2e 303a 2069  mbine({item.0: i
│ │ │ -001c2570: 7465 6d2e 317d 2920 7d7d 270a 2020 7769  tem.1}) }}'.  wi
│ │ │ -001c2580: 7468 5f74 6f67 6574 6865 723a 0a20 202d  th_together:.  -
│ │ │ -001c2590: 202d 2074 6172 6765 740a 2020 2020 2d20   - target.    - 
│ │ │ -001c25a0: 736f 7572 6365 0a20 2020 202d 2066 7374  source.    - fst
│ │ │ -001c25b0: 7970 650a 2020 2020 2d20 6f70 7469 6f6e  ype.    - option
│ │ │ -001c25c0: 730a 2020 2d20 2d20 2f74 6d70 0a20 2020  s.  - - /tmp.   
│ │ │ -001c25d0: 202d 2027 270a 2020 2020 2d20 2727 0a20   - ''.    - ''. 
│ │ │ -001c25e0: 2020 202d 2064 6566 6175 6c74 730a 2020     - defaults.  
│ │ │ -001c25f0: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ -001c2600: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ -001c2610: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001c2620: 6167 6573 2061 6e64 2022 7270 6d2d 6f73  ages and "rpm-os
│ │ │ -001c2630: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001c2640: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001c2650: 2020 2020 616e 6420 2262 6f6f 7463 2220      and "bootc" 
│ │ │ -001c2660: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001c2670: 2e70 6163 6b61 6765 7320 616e 6420 6e6f  .packages and no
│ │ │ -001c2680: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ -001c2690: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ -001c26a0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001c26b0: 2020 2020 616e 6420 226f 7374 7265 6522      and "ostree"
│ │ │ -001c26c0: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ -001c26d0: 5f63 6d64 6c69 6e65 2029 2061 6e64 206e  _cmdline ) and n
│ │ │ -001c26e0: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ -001c26f0: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ -001c2700: 2069 6e0a 2020 2020 5b22 646f 636b 6572   in.    ["docker
│ │ │ -001c2710: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ -001c2720: 7a22 2c20 2270 6f64 6d61 6e22 2c20 2263  z", "podman", "c
│ │ │ -001c2730: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ -001c2740: 202d 2027 222f 746d 7022 2069 6e20 616e   - '"/tmp" in an
│ │ │ -001c2750: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ -001c2760: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ -001c2770: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ -001c2780: 2d20 2822 2d2d 6673 7461 6222 207c 206c  - ("--fstab" | l
│ │ │ -001c2790: 656e 6774 6820 3d3d 2030 290a 2020 2d20  ength == 0).  - 
│ │ │ -001c27a0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001c27b0: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ -001c27c0: 6420 6465 7669 6365 5f6e 616d 652e 7374  d device_name.st
│ │ │ -001c27d0: 646f 7574 5f6c 696e 6573 2069 7320 6465  dout_lines is de
│ │ │ -001c27e0: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ -001c27f0: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ -001c2800: 6c65 6e67 7468 203d 3d20 3029 0a20 2074  length == 0).  t
│ │ │ -001c2810: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -001c2820: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ -001c2830: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ -001c2840: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001c2850: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ -001c2860: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ -001c2870: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001c2880: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ -001c2890: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ -001c28a0: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -001c28b0: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -001c28c0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -001c28d0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -001c28e0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -001c28f0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ -001c2900: 6e5f 746d 705f 6e6f 6578 6563 0a20 202d  n_tmp_noexec.  -
│ │ │ -001c2910: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -001c2920: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ -001c2930: 6e6f 6578 6563 204f 7074 696f 6e20 746f  noexec Option to
│ │ │ -001c2940: 202f 746d 703a 204d 616b 6520 7375 7265   /tmp: Make sure
│ │ │ -001c2950: 206e 6f65 7865 6320 6f70 7469 6f6e 2069   noexec option i
│ │ │ -001c2960: 7320 7061 7274 206f 6620 7468 6520 746f  s part of the to
│ │ │ -001c2970: 202f 746d 700a 2020 2020 6f70 7469 6f6e   /tmp.    option
│ │ │ -001c2980: 7327 0a20 2073 6574 5f66 6163 743a 0a20  s'.  set_fact:. 
│ │ │ -001c2990: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ -001c29a0: 7b7b 206d 6f75 6e74 5f69 6e66 6f20 7c20  {{ mount_info | 
│ │ │ -001c29b0: 636f 6d62 696e 6528 207b 2727 6f70 7469  combine( {''opti
│ │ │ -001c29c0: 6f6e 7327 273a 2727 2727 7e28 6d6f 756e  ons'':''''~(moun
│ │ │ -001c29d0: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ -001c29e0: 0a20 2020 2020 2064 6566 6175 6c74 2827  .      default('
│ │ │ -001c29f0: 2727 2729 297e 2827 272c 2727 2069 6620  '''))~('','' if 
│ │ │ -001c2a00: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469  (mount_info.opti
│ │ │ -001c2a10: 6f6e 7320 7c20 6465 6661 756c 7428 2727  ons | default(''
│ │ │ -001c2a20: 2727 2929 2065 6c73 6520 2727 2727 297e  '')) else '''')~
│ │ │ -001c2a30: 2727 6e6f 6578 6563 2727 0a20 2020 2020  ''noexec''.     
│ │ │ -001c2a40: 207d 2920 7d7d 270a 2020 7768 656e 3a0a   }) }}'.  when:.
│ │ │ -001c2a50: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ -001c2a60: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -001c2a70: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001c2a80: 6e64 2022 7270 6d2d 6f73 7472 6565 2220  nd "rpm-ostree" 
│ │ │ -001c2a90: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001c2aa0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001c2ab0: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ -001c2ac0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001c2ad0: 6765 7320 616e 6420 6e6f 7420 226f 7065  ges and not "ope
│ │ │ -001c2ae0: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ -001c2af0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001c2b00: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001c2b10: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ -001c2b20: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ -001c2b30: 6e65 2029 2061 6e64 206e 6f74 2028 2061  ne ) and not ( a
│ │ │ -001c2b40: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ -001c2b50: 6174 696f 6e5f 7479 7065 2069 6e0a 2020  ation_type in.  
│ │ │ -001c2b60: 2020 5b22 646f 636b 6572 222c 2022 6c78    ["docker", "lx
│ │ │ -001c2b70: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ -001c2b80: 6f64 6d61 6e22 2c20 2263 6f6e 7461 696e  odman", "contain
│ │ │ -001c2b90: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ -001c2ba0: 746d 7022 2069 6e20 616e 7369 626c 655f  tmp" in ansible_
│ │ │ -001c2bb0: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ -001c2bc0: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ -001c2bd0: 7c20 6c69 7374 270a 2020 2d20 6d6f 756e  | list'.  - moun
│ │ │ -001c2be0: 745f 696e 666f 2069 7320 6465 6669 6e65  t_info is define
│ │ │ -001c2bf0: 6420 616e 6420 226e 6f65 7865 6322 206e  d and "noexec" n
│ │ │ -001c2c00: 6f74 2069 6e20 286d 6f75 6e74 5f69 6e66  ot in (mount_inf
│ │ │ -001c2c10: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ -001c2c20: 756c 7428 2727 2929 0a20 2074 6167 733a  ult('')).  tags:
│ │ │ -001c2c30: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001c2c40: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ -001c2c50: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ -001c2c60: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001c2c70: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -001c2c80: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ -001c2c90: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001c2ca0: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ -001c2cb0: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ -001c2cc0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001c2cd0: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -001c2ce0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -001c2cf0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001c2d00: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001c2d10: 206d 6f75 6e74 5f6f 7074 696f 6e5f 746d   mount_option_tm
│ │ │ -001c2d20: 705f 6e6f 6578 6563 0a20 202d 206e 6f5f  p_noexec.  - no_
│ │ │ -001c2d30: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001c2d40: 206e 616d 653a 2027 4164 6420 6e6f 6578   name: 'Add noex
│ │ │ -001c2d50: 6563 204f 7074 696f 6e20 746f 202f 746d  ec Option to /tm
│ │ │ -001c2d60: 703a 2045 6e73 7572 6520 2f74 6d70 2069  p: Ensure /tmp i
│ │ │ -001c2d70: 7320 6d6f 756e 7465 6420 7769 7468 206e  s mounted with n
│ │ │ -001c2d80: 6f65 7865 6320 6f70 7469 6f6e 270a 2020  oexec option'.  
│ │ │ -001c2d90: 616e 7369 626c 652e 706f 7369 782e 6d6f  ansible.posix.mo
│ │ │ -001c2da0: 756e 743a 0a20 2020 2070 6174 683a 202f  unt:.    path: /
│ │ │ -001c2db0: 746d 700a 2020 2020 7372 633a 2027 7b7b  tmp.    src: '{{
│ │ │ -001c2dc0: 206d 6f75 6e74 5f69 6e66 6f2e 736f 7572   mount_info.sour
│ │ │ -001c2dd0: 6365 207c 2064 6566 6175 6c74 2827 2727  ce | default('''
│ │ │ -001c2de0: 2729 207d 7d27 0a20 2020 206f 7074 733a  ') }}'.    opts:
│ │ │ -001c2df0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ -001c2e00: 6f70 7469 6f6e 7320 7c20 6465 6661 756c  options | defaul
│ │ │ -001c2e10: 7428 2727 2727 2920 7d7d 270a 2020 2020  t('''') }}'.    
│ │ │ -001c2e20: 7374 6174 653a 206d 6f75 6e74 6564 0a20  state: mounted. 
│ │ │ -001c2e30: 2020 2066 7374 7970 653a 2027 7b7b 206d     fstype: '{{ m
│ │ │ -001c2e40: 6f75 6e74 5f69 6e66 6f2e 6673 7479 7065  ount_info.fstype
│ │ │ -001c2e50: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ -001c2e60: 207d 7d27 0a20 2072 6567 6973 7465 723a   }}'.  register:
│ │ │ -001c2e70: 206d 6f75 6e74 5f72 6573 756c 740a 2020   mount_result.  
│ │ │ -001c2e80: 6661 696c 6564 5f77 6865 6e3a 0a20 202d  failed_when:.  -
│ │ │ -001c2e90: 206d 6f75 6e74 5f72 6573 756c 7420 6973   mount_result is
│ │ │ -001c2ea0: 2066 6169 6c65 640a 2020 2d20 2727 2774   failed.  - '''t
│ │ │ -001c2eb0: 6172 6765 7420 6973 2062 7573 7927 2720  arget is busy'' 
│ │ │ -001c2ec0: 6e6f 7420 696e 2028 6d6f 756e 745f 7265  not in (mount_re
│ │ │ -001c2ed0: 7375 6c74 2e6d 7367 207c 2064 6566 6175  sult.msg | defau
│ │ │ -001c2ee0: 6c74 2827 2727 2729 2927 0a20 202d 2027  lt(''''))'.  - '
│ │ │ -001c2ef0: 2727 616c 7265 6164 7920 6d6f 756e 7465  ''already mounte
│ │ │ -001c2f00: 6427 2720 6e6f 7420 696e 2028 6d6f 756e  d'' not in (moun
│ │ │ -001c2f10: 745f 7265 7375 6c74 2e6d 7367 207c 2064  t_result.msg | d
│ │ │ -001c2f20: 6566 6175 6c74 2827 2727 2729 2927 0a20  efault(''''))'. 
│ │ │ -001c2f30: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ -001c2f40: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ -001c2f50: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001c2f60: 6b61 6765 7320 616e 6420 2272 706d 2d6f  kages and "rpm-o
│ │ │ -001c2f70: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001c2f80: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001c2f90: 0a20 2020 2061 6e64 2022 626f 6f74 6322  .    and "bootc"
│ │ │ -001c2fa0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001c2fb0: 732e 7061 636b 6167 6573 2061 6e64 206e  s.packages and n
│ │ │ -001c2fc0: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ -001c2fd0: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ -001c2fe0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001c2ff0: 0a20 2020 2061 6e64 2022 6f73 7472 6565  .    and "ostree
│ │ │ -001c3000: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ -001c3010: 635f 636d 646c 696e 6520 2920 616e 6420  c_cmdline ) and 
│ │ │ -001c3020: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ -001c3030: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ -001c3040: 6520 696e 0a20 2020 205b 2264 6f63 6b65  e in.    ["docke
│ │ │ -001c3050: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ -001c3060: 767a 222c 2022 706f 646d 616e 222c 2022  vz", "podman", "
│ │ │ -001c3070: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ -001c3080: 2020 2d20 2722 2f74 6d70 2220 696e 2061    - '"/tmp" in a
│ │ │ -001c3090: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ -001c30a0: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ -001c30b0: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ -001c30c0: 202d 206d 6f75 6e74 5f69 6e66 6f20 6973   - mount_info is
│ │ │ -001c30d0: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ -001c30e0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001c30f0: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ -001c3100: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ -001c3110: 6f75 7420 7c20 6c65 6e67 7468 2026 6774  out | length >
│ │ │ -001c3120: 3b20 3029 2920 6f72 2028 222d 2d66 7374  ; 0)) or ("--fst
│ │ │ -001c3130: 6162 220a 2020 2020 7c20 6c65 6e67 7468  ab".    | length
│ │ │ -001c3140: 203d 3d20 3029 0a20 2074 6167 733a 0a20   == 0).  tags:. 
│ │ │ -001c3150: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001c3160: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ -001c3170: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ -001c3180: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -001c3190: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001c31a0: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ -001c31b0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001c31c0: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ -001c31d0: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ -001c31e0: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -001c31f0: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -001c3200: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -001c3210: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -001c3220: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -001c3230: 6f75 6e74 5f6f 7074 696f 6e5f 746d 705f  ount_option_tmp_
│ │ │ -001c3240: 6e6f 6578 6563 0a20 202d 206e 6f5f 7265  noexec.  - no_re
│ │ │ -001c3250: 626f 6f74 5f6e 6565 6465 640a 3c2f 636f  boot_needed.
< │ │ │ -001c3270: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -001c3280: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -001c3290: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -001c32a0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -001c32b0: 6435 3133 2220 7461 6269 6e64 6578 3d22 d513" tabindex=" │ │ │ -001c32c0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -001c32d0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -001c32e0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -001c32f0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -001c3300: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -001c3310: 6469 6174 696f 6e20 5368 656c 6c20 7363 diation Shell sc │ │ │ -001c3320: 7269 7074 20e2 87b2 3c2f 613e 3c62 723e ript ...
│ │ │ -001c3330: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -001c3360: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
C │ │ │ -001c1af0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -001c1b20: 6f6e 3a3c 2f74 683e 3c74 643e 6869 6768 on:high │ │ │ -001c1b30: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -001c1b70: 793a 3c2f 7468 3e3c 7464 3e63 6f6e 6669 y:confi │ │ │ -001c1b80: 6775 7265 3c2f 7464 3e3c 2f74 723e 3c2f gure
Reboot │ │ │ -001c33b0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -001c33c0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
# Re
│ │ │ -001c33e0: 6d65 6469 6174 696f 6e20 6973 2061 7070  mediation is app
│ │ │ -001c33f0: 6c69 6361 626c 6520 6f6e 6c79 2069 6e20  licable only in 
│ │ │ -001c3400: 6365 7274 6169 6e20 706c 6174 666f 726d  certain platform
│ │ │ -001c3410: 730a 6966 2028 2021 2028 207b 2072 706d  s.if ( ! ( { rpm
│ │ │ -001c3420: 202d 2d71 7569 6574 202d 7120 6b65 726e   --quiet -q kern
│ │ │ -001c3430: 656c 203b 7d20 2661 6d70 3b26 616d 703b  el ;} &&
│ │ │ -001c3440: 207b 2072 706d 202d 2d71 7569 6574 202d   { rpm --quiet -
│ │ │ -001c3450: 7120 7270 6d2d 6f73 7472 6565 203b 7d20  q rpm-ostree ;} 
│ │ │ -001c3460: 2661 6d70 3b26 616d 703b 207b 2072 706d  && { rpm
│ │ │ -001c3470: 202d 2d71 7569 6574 202d 7120 626f 6f74   --quiet -q boot
│ │ │ -001c3480: 6320 3b7d 2026 616d 703b 2661 6d70 3b20  c ;} && 
│ │ │ -001c3490: 7b20 2120 7270 6d20 2d2d 7175 6965 7420  { ! rpm --quiet 
│ │ │ -001c34a0: 2d71 206f 7065 6e73 6869 6674 2d6b 7562  -q openshift-kub
│ │ │ -001c34b0: 656c 6574 203b 7d20 2661 6d70 3b26 616d  elet ;} &&am
│ │ │ -001c34c0: 703b 2028 5b20 2d66 202f 7275 6e2f 6f73  p; ([ -f /run/os
│ │ │ -001c34d0: 7472 6565 2d62 6f6f 7465 6420 5d20 7c7c  tree-booted ] ||
│ │ │ -001c34e0: 205b 202d 4c20 2f6f 7374 7265 6520 5d29   [ -L /ostree ])
│ │ │ -001c34f0: 2029 2026 616d 703b 2661 6d70 3b20 2120   ) && ! 
│ │ │ -001c3500: 2820 5b20 2d66 202f 2e64 6f63 6b65 7265  ( [ -f /.dockere
│ │ │ -001c3510: 6e76 205d 207c 7c20 5b20 2d66 202f 7275  nv ] || [ -f /ru
│ │ │ -001c3520: 6e2f 2e63 6f6e 7461 696e 6572 656e 7620  n/.containerenv 
│ │ │ -001c3530: 5d20 2920 2920 2661 6d70 3b26 616d 703b  ] ) ) &&
│ │ │ -001c3540: 207b 2028 2066 696e 646d 6e74 202d 2d6b   { ( findmnt --k
│ │ │ -001c3550: 6572 6e65 6c20 222f 746d 7022 2026 6774  ernel "/tmp" >
│ │ │ -001c3560: 3b20 2f64 6576 2f6e 756c 6c20 7c7c 2066  ; /dev/null || f
│ │ │ -001c3570: 696e 646d 6e74 202d 2d66 7374 6162 2022  indmnt --fstab "
│ │ │ -001c3580: 2f74 6d70 2220 2667 743b 202f 6465 762f  /tmp" > /dev/
│ │ │ -001c3590: 6e75 6c6c 2029 3b20 7d3b 2074 6865 6e0a  null ); }; then.
│ │ │ -001c35a0: 0a66 756e 6374 696f 6e20 7065 7266 6f72  .function perfor
│ │ │ -001c35b0: 6d5f 7265 6d65 6469 6174 696f 6e20 7b0a  m_remediation {.
│ │ │ -001c35c0: 0a20 2020 200a 2020 2020 2020 2020 2320  .    .        # 
│ │ │ -001c35d0: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ -001c35e0: 2f74 6d70 2068 6173 2074 6f20 6265 2064  /tmp has to be d
│ │ │ -001c35f0: 6566 696e 6564 2069 6e20 2f65 7463 2f66  efined in /etc/f
│ │ │ -001c3600: 7374 6162 0a20 2020 2020 2020 2023 2062  stab.        # b
│ │ │ -001c3610: 6566 6f72 6520 7468 6973 2072 656d 6564  efore this remed
│ │ │ -001c3620: 6961 7469 6f6e 2063 616e 2062 6520 6578  iation can be ex
│ │ │ -001c3630: 6563 7574 6564 2e20 496e 2063 6173 6520  ecuted. In case 
│ │ │ -001c3640: 6974 2069 7320 6e6f 7420 6465 6669 6e65  it is not define
│ │ │ -001c3650: 642c 2074 6865 0a20 2020 2020 2020 2023  d, the.        #
│ │ │ -001c3660: 2072 656d 6564 6961 7469 6f6e 2061 626f   remediation abo
│ │ │ -001c3670: 7274 7320 616e 6420 6e6f 2063 6861 6e67  rts and no chang
│ │ │ -001c3680: 6573 2072 6567 6172 6469 6e67 2074 6865  es regarding the
│ │ │ -001c3690: 206d 6f75 6e74 2070 6f69 6e74 2061 7265   mount point are
│ │ │ -001c36a0: 2064 6f6e 652e 0a20 2020 2020 2020 206d   done..        m
│ │ │ -001c36b0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001c36c0: 5f72 6567 6578 703d 2224 2870 7269 6e74  _regexp="$(print
│ │ │ -001c36d0: 6620 225e 5b5b 3a73 7061 6365 3a5d 5d2a  f "^[[:space:]]*
│ │ │ -001c36e0: 5b5e 235d 2e2a 5b5b 3a73 7061 6365 3a5d  [^#].*[[:space:]
│ │ │ -001c36f0: 5d25 735b 5b3a 7370 6163 653a 5d5d 2220  ]%s[[:space:]]" 
│ │ │ -001c3700: 222f 746d 7022 2922 0a0a 2020 2020 6772  "/tmp")"..    gr
│ │ │ -001c3710: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ -001c3720: 5f6d 6174 6368 5f72 6567 6578 7022 202d  _match_regexp" -
│ │ │ -001c3730: 7120 2f65 7463 2f66 7374 6162 205c 0a20  q /etc/fstab \. 
│ │ │ -001c3740: 2020 2020 2020 207c 7c20 7b20 6563 686f         || { echo
│ │ │ -001c3750: 2022 5468 6520 6d6f 756e 7420 706f 696e   "The mount poin
│ │ │ -001c3760: 7420 272f 746d 7027 2069 7320 6e6f 7420  t '/tmp' is not 
│ │ │ -001c3770: 6576 656e 2069 6e20 2f65 7463 2f66 7374  even in /etc/fst
│ │ │ -001c3780: 6162 2c20 736f 2077 6520 6361 6e27 7420  ab, so we can't 
│ │ │ -001c3790: 7365 7420 7570 206d 6f75 6e74 206f 7074  set up mount opt
│ │ │ -001c37a0: 696f 6e73 2220 2667 743b 2661 6d70 3b32  ions" >&2
│ │ │ -001c37b0: 3b0a 2020 2020 2020 2020 2020 2020 2020  ;.              
│ │ │ -001c37c0: 2020 6563 686f 2022 4e6f 7420 7265 6d65    echo "Not reme
│ │ │ -001c37d0: 6469 6174 696e 672c 2062 6563 6175 7365  diating, because
│ │ │ -001c37e0: 2074 6865 7265 2069 7320 6e6f 2072 6563   there is no rec
│ │ │ -001c37f0: 6f72 6420 6f66 202f 746d 7020 696e 202f  ord of /tmp in /
│ │ │ -001c3800: 6574 632f 6673 7461 6222 2026 6774 3b26  etc/fstab" >&
│ │ │ -001c3810: 616d 703b 323b 2072 6574 7572 6e20 313b  amp;2; return 1;
│ │ │ -001c3820: 207d 0a20 2020 200a 0a0a 2020 2020 6d6f   }.    ...    mo
│ │ │ -001c3830: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001c3840: 7265 6765 7870 3d22 2428 7072 696e 7466  regexp="$(printf
│ │ │ -001c3850: 2022 5e5b 5b3a 7370 6163 653a 5d5d 2a5b   "^[[:space:]]*[
│ │ │ -001c3860: 5e23 5d2e 2a5b 5b3a 7370 6163 653a 5d5d  ^#].*[[:space:]]
│ │ │ -001c3870: 2573 5b5b 3a73 7061 6365 3a5d 5d22 202f  %s[[:space:]]" /
│ │ │ -001c3880: 746d 7029 220a 0a20 2020 2023 2049 6620  tmp)"..    # If 
│ │ │ -001c3890: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ -001c38a0: 6973 206e 6f74 2069 6e20 2f65 7463 2f66  is not in /etc/f
│ │ │ -001c38b0: 7374 6162 2c20 6765 7420 7072 6576 696f  stab, get previo
│ │ │ -001c38c0: 7573 206d 6f75 6e74 206f 7074 696f 6e73  us mount options
│ │ │ -001c38d0: 2066 726f 6d20 2f65 7463 2f6d 7461 620a   from /etc/mtab.
│ │ │ -001c38e0: 2020 2020 6966 2021 2067 7265 7020 2d71      if ! grep -q
│ │ │ -001c38f0: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -001c3900: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ -001c3910: 632f 6673 7461 623b 2074 6865 6e0a 2020  c/fstab; then.  
│ │ │ -001c3920: 2020 2020 2020 2320 7275 6e74 696d 6520        # runtime 
│ │ │ -001c3930: 6f70 7473 2077 6974 686f 7574 2073 6f6d  opts without som
│ │ │ -001c3940: 6520 6175 746f 6d61 7469 6320 6b65 726e  e automatic kern
│ │ │ -001c3950: 656c 2f75 7365 7273 7061 6365 2d61 6464  el/userspace-add
│ │ │ -001c3960: 6564 2064 6566 6175 6c74 730a 2020 2020  ed defaults.    
│ │ │ -001c3970: 2020 2020 7072 6576 696f 7573 5f6d 6f75      previous_mou
│ │ │ -001c3980: 6e74 5f6f 7074 733d 2428 6772 6570 2022  nt_opts=$(grep "
│ │ │ -001c3990: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ -001c39a0: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ -001c39b0: 6d74 6162 207c 2068 6561 6420 2d31 207c  mtab | head -1 |
│ │ │ -001c39c0: 2020 6177 6b20 277b 7072 696e 7420 2434    awk '{print $4
│ │ │ -001c39d0: 7d27 205c 0a20 2020 2020 2020 2020 2020  }' \.           
│ │ │ -001c39e0: 2020 2020 2020 2020 207c 2073 6564 202d           | sed -
│ │ │ -001c39f0: 4520 2273 2f28 7277 7c64 6566 6175 6c74  E "s/(rw|default
│ │ │ -001c3a00: 737c 7365 636c 6162 656c 7c6e 6f65 7865  s|seclabel|noexe
│ │ │ -001c3a10: 6329 282c 7c24 292f 2f67 3b73 2f2c 242f  c)(,|$)//g;s/,$/
│ │ │ -001c3a20: 2f22 290a 2020 2020 2020 2020 5b20 2224  /").        [ "$
│ │ │ -001c3a30: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001c3a40: 7074 7322 205d 2026 616d 703b 2661 6d70  pts" ] &&
│ │ │ -001c3a50: 3b20 7072 6576 696f 7573 5f6d 6f75 6e74  ; previous_mount
│ │ │ -001c3a60: 5f6f 7074 732b 3d22 2c22 0a20 2020 2020  _opts+=",".     
│ │ │ -001c3a70: 2020 2023 2049 6e20 6973 6f39 3636 3020     # In iso9660 
│ │ │ -001c3a80: 6669 6c65 7379 7374 656d 7320 6d74 6162  filesystems mtab
│ │ │ -001c3a90: 2063 6f75 6c64 2064 6573 6372 6962 6520   could describe 
│ │ │ -001c3aa0: 6120 2262 6c6f 636b 7369 7a65 2220 7661  a "blocksize" va
│ │ │ -001c3ab0: 6c75 652c 2074 6869 7320 7368 6f75 6c64  lue, this should
│ │ │ -001c3ac0: 2062 6520 7265 666c 6563 7465 6420 696e   be reflected in
│ │ │ -001c3ad0: 0a20 2020 2020 2020 2023 2066 7374 6162  .        # fstab
│ │ │ -001c3ae0: 2061 7320 2262 6c6f 636b 222e 2020 5468   as "block".  Th
│ │ │ -001c3af0: 6520 6e65 7874 2076 6172 6961 626c 6520  e next variable 
│ │ │ -001c3b00: 6973 2074 6f20 7361 7469 7366 7920 7368  is to satisfy sh
│ │ │ -001c3b10: 656c 6c63 6865 636b 2053 4332 3035 302e  ellcheck SC2050.
│ │ │ -001c3b20: 0a20 2020 2020 2020 2066 735f 7479 7065  .        fs_type
│ │ │ -001c3b30: 3d22 220a 2020 2020 2020 2020 6966 205b  ="".        if [
│ │ │ -001c3b40: 2020 2224 6673 5f74 7970 6522 203d 3d20    "$fs_type" == 
│ │ │ -001c3b50: 2269 736f 3936 3630 2220 5d20 3b20 7468  "iso9660" ] ; th
│ │ │ -001c3b60: 656e 0a20 2020 2020 2020 2020 2020 2070  en.            p
│ │ │ -001c3b70: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001c3b80: 7473 3d24 2873 6564 2027 732f 626c 6f63  ts=$(sed 's/bloc
│ │ │ -001c3b90: 6b73 697a 653d 2f62 6c6f 636b 3d2f 2720  ksize=/block=/' 
│ │ │ -001c3ba0: 266c 743b 266c 743b 266c 743b 2022 2470  <<< "$p
│ │ │ -001c3bb0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001c3bc0: 7473 2229 0a20 2020 2020 2020 2066 690a  ts").        fi.
│ │ │ -001c3bd0: 2020 2020 2020 2020 6563 686f 2022 202f          echo " /
│ │ │ -001c3be0: 746d 7020 2064 6566 6175 6c74 732c 247b  tmp  defaults,${
│ │ │ -001c3bf0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001c3c00: 7074 737d 6e6f 6578 6563 2030 2030 2220  pts}noexec 0 0" 
│ │ │ -001c3c10: 2667 743b 2667 743b 202f 6574 632f 6673  >> /etc/fs
│ │ │ -001c3c20: 7461 620a 2020 2020 2320 4966 2074 6865  tab.    # If the
│ │ │ -001c3c30: 206d 6f75 6e74 5f6f 7074 206f 7074 696f   mount_opt optio
│ │ │ -001c3c40: 6e20 6973 206e 6f74 2061 6c72 6561 6479  n is not already
│ │ │ -001c3c50: 2069 6e20 7468 6520 6d6f 756e 7420 706f   in the mount po
│ │ │ -001c3c60: 696e 7427 7320 2f65 7463 2f66 7374 6162  int's /etc/fstab
│ │ │ -001c3c70: 2065 6e74 7279 2c20 6164 6420 6974 0a20   entry, add it. 
│ │ │ -001c3c80: 2020 2065 6c69 6620 2120 6772 6570 2022     elif ! grep "
│ │ │ -001c3c90: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ -001c3ca0: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ -001c3cb0: 6673 7461 6220 7c20 6772 6570 202d 7120  fstab | grep -q 
│ │ │ -001c3cc0: 226e 6f65 7865 6322 3b20 7468 656e 0a20  "noexec"; then. 
│ │ │ -001c3cd0: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ -001c3ce0: 6d6f 756e 745f 6f70 7473 3d24 2867 7265  mount_opts=$(gre
│ │ │ -001c3cf0: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001c3d00: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ -001c3d10: 7463 2f66 7374 6162 207c 2061 776b 2027  tc/fstab | awk '
│ │ │ -001c3d20: 7b70 7269 6e74 2024 347d 2729 0a20 2020  {print $4}').   
│ │ │ -001c3d30: 2020 2020 2073 6564 202d 6920 2273 7c5c       sed -i "s|\
│ │ │ -001c3d40: 2824 7b6d 6f75 6e74 5f70 6f69 6e74 5f6d  (${mount_point_m
│ │ │ -001c3d50: 6174 6368 5f72 6567 6578 707d 2e2a 247b  atch_regexp}.*${
│ │ │ -001c3d60: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001c3d70: 7074 737d 5c29 7c5c 312c 6e6f 6578 6563  pts}\)|\1,noexec
│ │ │ -001c3d80: 7c22 202f 6574 632f 6673 7461 620a 2020  |" /etc/fstab.  
│ │ │ -001c3d90: 2020 6669 0a0a 0a20 2020 2069 6620 6d6b    fi...    if mk
│ │ │ -001c3da0: 6469 7220 2d70 2022 2f74 6d70 223b 2074  dir -p "/tmp"; t
│ │ │ -001c3db0: 6865 6e0a 2020 2020 2020 2020 6966 206d  hen.        if m
│ │ │ -001c3dc0: 6f75 6e74 706f 696e 7420 2d71 2022 2f74  ountpoint -q "/t
│ │ │ -001c3dd0: 6d70 223b 2074 6865 6e0a 2020 2020 2020  mp"; then.      
│ │ │ -001c3de0: 2020 2020 2020 6d6f 756e 7420 2d6f 2072        mount -o r
│ │ │ -001c3df0: 656d 6f75 6e74 202d 2d74 6172 6765 7420  emount --target 
│ │ │ -001c3e00: 222f 746d 7022 0a20 2020 2020 2020 2066  "/tmp".        f
│ │ │ -001c3e10: 690a 2020 2020 6669 0a7d 0a0a 7065 7266  i.    fi.}..perf
│ │ │ -001c3e20: 6f72 6d5f 7265 6d65 6469 6174 696f 6e0a  orm_remediation.
│ │ │ -001c3e30: 0a65 6c73 650a 2020 2020 2667 743b 2661  .else.    >&a
│ │ │ -001c3e40: 6d70 3b32 2065 6368 6f20 2752 656d 6564  mp;2 echo 'Remed
│ │ │ -001c3e50: 6961 7469 6f6e 2069 7320 6e6f 7420 6170  iation is not ap
│ │ │ -001c3e60: 706c 6963 6162 6c65 2c20 6e6f 7468 696e  plicable, nothin
│ │ │ -001c3e70: 6720 7761 7320 646f 6e65 270a 6669 0a3c  g was done'.fi.<
│ │ │ +001c1830: 6174 696f 6e20 416e 7369 626c 6520 736e  ation Ansible sn
│ │ │ +001c1840: 6970 7065 7420 e287 b23c 2f61 3e3c 6272  ippet ...
│ │ │ +001c18f0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c
- n
│ │ │ +001c1980: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ +001c1990: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ +001c19a0: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ +001c19b0: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ +001c19c0: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +001c19d0: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ +001c19e0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001c19f0: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ +001c1a00: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ +001c1a10: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001c1a20: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ +001c1a30: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ +001c1a40: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ +001c1a50: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ +001c1a60: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +001c1a70: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +001c1a80: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +001c1a90: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +001c1aa0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ +001c1ab0: 7074 696f 6e5f 746d 705f 6e6f 6578 6563  ption_tmp_noexec
│ │ │ +001c1ac0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +001c1ad0: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ +001c1ae0: 4164 6420 6e6f 6578 6563 204f 7074 696f  Add noexec Optio
│ │ │ +001c1af0: 6e20 746f 202f 746d 703a 2043 6865 636b  n to /tmp: Check
│ │ │ +001c1b00: 2069 6e66 6f72 6d61 7469 6f6e 2061 7373   information ass
│ │ │ +001c1b10: 6f63 6961 7465 6420 746f 206d 6f75 6e74  ociated to mount
│ │ │ +001c1b20: 706f 696e 7427 0a20 2061 6e73 6962 6c65  point'.  ansible
│ │ │ +001c1b30: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ +001c1b40: 3a20 6669 6e64 6d6e 7420 2d2d 6673 7461  : findmnt --fsta
│ │ │ +001c1b50: 6220 272f 746d 7027 0a20 2072 6567 6973  b '/tmp'.  regis
│ │ │ +001c1b60: 7465 723a 2064 6576 6963 655f 6e61 6d65  ter: device_name
│ │ │ +001c1b70: 0a20 2066 6169 6c65 645f 7768 656e 3a20  .  failed_when: 
│ │ │ +001c1b80: 6465 7669 6365 5f6e 616d 652e 7263 2026  device_name.rc &
│ │ │ +001c1b90: 6774 3b20 310a 2020 6368 616e 6765 645f  gt; 1.  changed_
│ │ │ +001c1ba0: 7768 656e 3a20 6661 6c73 650a 2020 6368  when: false.  ch
│ │ │ +001c1bb0: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a  eck_mode: false.
│ │ │ +001c1bc0: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ +001c1bd0: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ +001c1be0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001c1bf0: 636b 6167 6573 2061 6e64 2022 7270 6d2d  ckages and "rpm-
│ │ │ +001c1c00: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001c1c10: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001c1c20: 730a 2020 2020 616e 6420 2262 6f6f 7463  s.    and "bootc
│ │ │ +001c1c30: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001c1c40: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001c1c50: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ +001c1c60: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ +001c1c70: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001c1c80: 730a 2020 2020 616e 6420 226f 7374 7265  s.    and "ostre
│ │ │ +001c1c90: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ +001c1ca0: 6f63 5f63 6d64 6c69 6e65 2029 2061 6e64  oc_cmdline ) and
│ │ │ +001c1cb0: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ +001c1cc0: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ +001c1cd0: 7065 2069 6e0a 2020 2020 5b22 646f 636b  pe in.    ["dock
│ │ │ +001c1ce0: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ +001c1cf0: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c20  nvz", "podman", 
│ │ │ +001c1d00: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ +001c1d10: 0a20 202d 2027 222f 746d 7022 2069 6e20  .  - '"/tmp" in 
│ │ │ +001c1d20: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ +001c1d30: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ +001c1d40: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ +001c1d50: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +001c1d60: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ +001c1d70: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001c1d80: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ +001c1d90: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +001c1da0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001c1db0: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ +001c1dc0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ +001c1dd0: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ +001c1de0: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ +001c1df0: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ +001c1e00: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ +001c1e10: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +001c1e20: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +001c1e30: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ +001c1e40: 7469 6f6e 5f74 6d70 5f6e 6f65 7865 630a  tion_tmp_noexec.
│ │ │ +001c1e50: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001c1e60: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001c1e70: 6464 206e 6f65 7865 6320 4f70 7469 6f6e  dd noexec Option
│ │ │ +001c1e80: 2074 6f20 2f74 6d70 3a20 4372 6561 7465   to /tmp: Create
│ │ │ +001c1e90: 206d 6f75 6e74 5f69 6e66 6f20 6469 6374   mount_info dict
│ │ │ +001c1ea0: 696f 6e61 7279 2076 6172 6961 626c 6527  ionary variable'
│ │ │ +001c1eb0: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ +001c1ec0: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b   mount_info: '{{
│ │ │ +001c1ed0: 206d 6f75 6e74 5f69 6e66 6f7c 6465 6661   mount_info|defa
│ │ │ +001c1ee0: 756c 7428 7b7d 297c 636f 6d62 696e 6528  ult({})|combine(
│ │ │ +001c1ef0: 7b69 7465 6d2e 303a 2069 7465 6d2e 317d  {item.0: item.1}
│ │ │ +001c1f00: 2920 7d7d 270a 2020 7769 7468 5f74 6f67  ) }}'.  with_tog
│ │ │ +001c1f10: 6574 6865 723a 0a20 202d 2027 7b7b 2064  ether:.  - '{{ d
│ │ │ +001c1f20: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001c1f30: 745f 6c69 6e65 735b 305d 2e73 706c 6974  t_lines[0].split
│ │ │ +001c1f40: 2829 207c 206d 6170 2827 276c 6f77 6572  () | map(''lower
│ │ │ +001c1f50: 2727 2920 7c20 6c69 7374 207d 7d27 0a20  '') | list }}'. 
│ │ │ +001c1f60: 202d 2027 7b7b 2064 6576 6963 655f 6e61   - '{{ device_na
│ │ │ +001c1f70: 6d65 2e73 7464 6f75 745f 6c69 6e65 735b  me.stdout_lines[
│ │ │ +001c1f80: 315d 2e73 706c 6974 2829 207c 206c 6973  1].split() | lis
│ │ │ +001c1f90: 7420 7d7d 270a 2020 7768 656e 3a0a 2020  t }}'.  when:.  
│ │ │ +001c1fa0: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ +001c1fb0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +001c1fc0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001c1fd0: 2022 7270 6d2d 6f73 7472 6565 2220 696e   "rpm-ostree" in
│ │ │ +001c1fe0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001c1ff0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001c2000: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ +001c2010: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001c2020: 7320 616e 6420 6e6f 7420 226f 7065 6e73  s and not "opens
│ │ │ +001c2030: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ +001c2040: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001c2050: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001c2060: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ +001c2070: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ +001c2080: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ +001c2090: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ +001c20a0: 696f 6e5f 7479 7065 2069 6e0a 2020 2020  ion_type in.    
│ │ │ +001c20b0: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ +001c20c0: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ +001c20d0: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572  man", "container
│ │ │ +001c20e0: 225d 2029 2029 0a20 202d 2027 222f 746d  "] ) ).  - '"/tm
│ │ │ +001c20f0: 7022 2069 6e20 616e 7369 626c 655f 6d6f  p" in ansible_mo
│ │ │ +001c2100: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ +001c2110: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ +001c2120: 6c69 7374 270a 2020 2d20 6465 7669 6365  list'.  - device
│ │ │ +001c2130: 5f6e 616d 652e 7374 646f 7574 2069 7320  _name.stdout is 
│ │ │ +001c2140: 6465 6669 6e65 6420 616e 6420 6465 7669  defined and devi
│ │ │ +001c2150: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ +001c2160: 696e 6573 2069 7320 6465 6669 6e65 640a  ines is defined.
│ │ │ +001c2170: 2020 2d20 2864 6576 6963 655f 6e61 6d65    - (device_name
│ │ │ +001c2180: 2e73 7464 6f75 7420 7c20 6c65 6e67 7468  .stdout | length
│ │ │ +001c2190: 2026 6774 3b20 3029 0a20 2074 6167 733a   > 0).  tags:
│ │ │ +001c21a0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001c21b0: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ +001c21c0: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ +001c21d0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001c21e0: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ +001c21f0: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ +001c2200: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001c2210: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ +001c2220: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ +001c2230: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +001c2240: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +001c2250: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +001c2260: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +001c2270: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001c2280: 206d 6f75 6e74 5f6f 7074 696f 6e5f 746d   mount_option_tm
│ │ │ +001c2290: 705f 6e6f 6578 6563 0a20 202d 206e 6f5f  p_noexec.  - no_
│ │ │ +001c22a0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +001c22b0: 206e 616d 653a 2027 4164 6420 6e6f 6578   name: 'Add noex
│ │ │ +001c22c0: 6563 204f 7074 696f 6e20 746f 202f 746d  ec Option to /tm
│ │ │ +001c22d0: 703a 2049 6620 2f74 6d70 206e 6f74 206d  p: If /tmp not m
│ │ │ +001c22e0: 6f75 6e74 6564 2c20 6372 6166 7420 6d6f  ounted, craft mo
│ │ │ +001c22f0: 756e 745f 696e 666f 206d 616e 7561 6c6c  unt_info manuall
│ │ │ +001c2300: 7927 0a20 2073 6574 5f66 6163 743a 0a20  y'.  set_fact:. 
│ │ │ +001c2310: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ +001c2320: 7b7b 206d 6f75 6e74 5f69 6e66 6f7c 6465  {{ mount_info|de
│ │ │ +001c2330: 6661 756c 7428 7b7d 297c 636f 6d62 696e  fault({})|combin
│ │ │ +001c2340: 6528 7b69 7465 6d2e 303a 2069 7465 6d2e  e({item.0: item.
│ │ │ +001c2350: 317d 2920 7d7d 270a 2020 7769 7468 5f74  1}) }}'.  with_t
│ │ │ +001c2360: 6f67 6574 6865 723a 0a20 202d 202d 2074  ogether:.  - - t
│ │ │ +001c2370: 6172 6765 740a 2020 2020 2d20 736f 7572  arget.    - sour
│ │ │ +001c2380: 6365 0a20 2020 202d 2066 7374 7970 650a  ce.    - fstype.
│ │ │ +001c2390: 2020 2020 2d20 6f70 7469 6f6e 730a 2020      - options.  
│ │ │ +001c23a0: 2d20 2d20 2f74 6d70 0a20 2020 202d 2027  - - /tmp.    - '
│ │ │ +001c23b0: 270a 2020 2020 2d20 2727 0a20 2020 202d  '.    - ''.    -
│ │ │ +001c23c0: 2064 6566 6175 6c74 730a 2020 7768 656e   defaults.  when
│ │ │ +001c23d0: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ +001c23e0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +001c23f0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001c2400: 2061 6e64 2022 7270 6d2d 6f73 7472 6565   and "rpm-ostree
│ │ │ +001c2410: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001c2420: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +001c2430: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ +001c2440: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001c2450: 6b61 6765 7320 616e 6420 6e6f 7420 226f  kages and not "o
│ │ │ +001c2460: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ +001c2470: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001c2480: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +001c2490: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ +001c24a0: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ +001c24b0: 6c69 6e65 2029 2061 6e64 206e 6f74 2028  line ) and not (
│ │ │ +001c24c0: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ +001c24d0: 697a 6174 696f 6e5f 7479 7065 2069 6e0a  ization_type in.
│ │ │ +001c24e0: 2020 2020 5b22 646f 636b 6572 222c 2022      ["docker", "
│ │ │ +001c24f0: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ +001c2500: 2270 6f64 6d61 6e22 2c20 2263 6f6e 7461  "podman", "conta
│ │ │ +001c2510: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ +001c2520: 222f 746d 7022 2069 6e20 616e 7369 626c  "/tmp" in ansibl
│ │ │ +001c2530: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ +001c2540: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ +001c2550: 2920 7c20 6c69 7374 270a 2020 2d20 2822  ) | list'.  - ("
│ │ │ +001c2560: 2d2d 6673 7461 6222 207c 206c 656e 6774  --fstab" | lengt
│ │ │ +001c2570: 6820 3d3d 2030 290a 2020 2d20 6465 7669  h == 0).  - devi
│ │ │ +001c2580: 6365 5f6e 616d 652e 7374 646f 7574 2069  ce_name.stdout i
│ │ │ +001c2590: 7320 6465 6669 6e65 6420 616e 6420 6465  s defined and de
│ │ │ +001c25a0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001c25b0: 5f6c 696e 6573 2069 7320 6465 6669 6e65  _lines is define
│ │ │ +001c25c0: 640a 2020 2d20 2864 6576 6963 655f 6e61  d.  - (device_na
│ │ │ +001c25d0: 6d65 2e73 7464 6f75 7420 7c20 6c65 6e67  me.stdout | leng
│ │ │ +001c25e0: 7468 203d 3d20 3029 0a20 2074 6167 733a  th == 0).  tags:
│ │ │ +001c25f0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001c2600: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ +001c2610: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ +001c2620: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001c2630: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ +001c2640: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ +001c2650: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001c2660: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ +001c2670: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ +001c2680: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +001c2690: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +001c26a0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +001c26b0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +001c26c0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001c26d0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 746d   mount_option_tm
│ │ │ +001c26e0: 705f 6e6f 6578 6563 0a20 202d 206e 6f5f  p_noexec.  - no_
│ │ │ +001c26f0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +001c2700: 206e 616d 653a 2027 4164 6420 6e6f 6578   name: 'Add noex
│ │ │ +001c2710: 6563 204f 7074 696f 6e20 746f 202f 746d  ec Option to /tm
│ │ │ +001c2720: 703a 204d 616b 6520 7375 7265 206e 6f65  p: Make sure noe
│ │ │ +001c2730: 7865 6320 6f70 7469 6f6e 2069 7320 7061  xec option is pa
│ │ │ +001c2740: 7274 206f 6620 7468 6520 746f 202f 746d  rt of the to /tm
│ │ │ +001c2750: 700a 2020 2020 6f70 7469 6f6e 7327 0a20  p.    options'. 
│ │ │ +001c2760: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ +001c2770: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ +001c2780: 6f75 6e74 5f69 6e66 6f20 7c20 636f 6d62  ount_info | comb
│ │ │ +001c2790: 696e 6528 207b 2727 6f70 7469 6f6e 7327  ine( {''options'
│ │ │ +001c27a0: 273a 2727 2727 7e28 6d6f 756e 745f 696e  ':''''~(mount_in
│ │ │ +001c27b0: 666f 2e6f 7074 696f 6e73 207c 0a20 2020  fo.options |.   
│ │ │ +001c27c0: 2020 2064 6566 6175 6c74 2827 2727 2729     default('''')
│ │ │ +001c27d0: 297e 2827 272c 2727 2069 6620 286d 6f75  )~('','' if (mou
│ │ │ +001c27e0: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ +001c27f0: 7c20 6465 6661 756c 7428 2727 2727 2929  | default(''''))
│ │ │ +001c2800: 2065 6c73 6520 2727 2727 297e 2727 6e6f   else '''')~''no
│ │ │ +001c2810: 6578 6563 2727 0a20 2020 2020 207d 2920  exec''.      }) 
│ │ │ +001c2820: 7d7d 270a 2020 7768 656e 3a0a 2020 2d20  }}'.  when:.  - 
│ │ │ +001c2830: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ +001c2840: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001c2850: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001c2860: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ +001c2870: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001c2880: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ +001c2890: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +001c28a0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001c28b0: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ +001c28c0: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ +001c28d0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001c28e0: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ +001c28f0: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001c2900: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ +001c2910: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ +001c2920: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ +001c2930: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ +001c2940: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +001c2950: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +001c2960: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ +001c2970: 2029 2029 0a20 202d 2027 222f 746d 7022   ) ).  - '"/tmp"
│ │ │ +001c2980: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ +001c2990: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ +001c29a0: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ +001c29b0: 7374 270a 2020 2d20 6d6f 756e 745f 696e  st'.  - mount_in
│ │ │ +001c29c0: 666f 2069 7320 6465 6669 6e65 6420 616e  fo is defined an
│ │ │ +001c29d0: 6420 226e 6f65 7865 6322 206e 6f74 2069  d "noexec" not i
│ │ │ +001c29e0: 6e20 286d 6f75 6e74 5f69 6e66 6f2e 6f70  n (mount_info.op
│ │ │ +001c29f0: 7469 6f6e 7320 7c20 6465 6661 756c 7428  tions | default(
│ │ │ +001c2a00: 2727 2929 0a20 2074 6167 733a 0a20 202d  '')).  tags:.  -
│ │ │ +001c2a10: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001c2a20: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +001c2a30: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ +001c2a40: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +001c2a50: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001c2a60: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +001c2a70: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +001c2a80: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001c2a90: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ +001c2aa0: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001c2ab0: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001c2ac0: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001c2ad0: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001c2ae0: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001c2af0: 6e74 5f6f 7074 696f 6e5f 746d 705f 6e6f  nt_option_tmp_no
│ │ │ +001c2b00: 6578 6563 0a20 202d 206e 6f5f 7265 626f  exec.  - no_rebo
│ │ │ +001c2b10: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +001c2b20: 653a 2027 4164 6420 6e6f 6578 6563 204f  e: 'Add noexec O
│ │ │ +001c2b30: 7074 696f 6e20 746f 202f 746d 703a 2045  ption to /tmp: E
│ │ │ +001c2b40: 6e73 7572 6520 2f74 6d70 2069 7320 6d6f  nsure /tmp is mo
│ │ │ +001c2b50: 756e 7465 6420 7769 7468 206e 6f65 7865  unted with noexe
│ │ │ +001c2b60: 6320 6f70 7469 6f6e 270a 2020 616e 7369  c option'.  ansi
│ │ │ +001c2b70: 626c 652e 706f 7369 782e 6d6f 756e 743a  ble.posix.mount:
│ │ │ +001c2b80: 0a20 2020 2070 6174 683a 202f 746d 700a  .    path: /tmp.
│ │ │ +001c2b90: 2020 2020 7372 633a 2027 7b7b 206d 6f75      src: '{{ mou
│ │ │ +001c2ba0: 6e74 5f69 6e66 6f2e 736f 7572 6365 207c  nt_info.source |
│ │ │ +001c2bb0: 2064 6566 6175 6c74 2827 2727 2729 207d   default('''') }
│ │ │ +001c2bc0: 7d27 0a20 2020 206f 7074 733a 2027 7b7b  }'.    opts: '{{
│ │ │ +001c2bd0: 206d 6f75 6e74 5f69 6e66 6f2e 6f70 7469   mount_info.opti
│ │ │ +001c2be0: 6f6e 7320 7c20 6465 6661 756c 7428 2727  ons | default(''
│ │ │ +001c2bf0: 2727 2920 7d7d 270a 2020 2020 7374 6174  '') }}'.    stat
│ │ │ +001c2c00: 653a 206d 6f75 6e74 6564 0a20 2020 2066  e: mounted.    f
│ │ │ +001c2c10: 7374 7970 653a 2027 7b7b 206d 6f75 6e74  stype: '{{ mount
│ │ │ +001c2c20: 5f69 6e66 6f2e 6673 7479 7065 207c 2064  _info.fstype | d
│ │ │ +001c2c30: 6566 6175 6c74 2827 2727 2729 207d 7d27  efault('''') }}'
│ │ │ +001c2c40: 0a20 2072 6567 6973 7465 723a 206d 6f75  .  register: mou
│ │ │ +001c2c50: 6e74 5f72 6573 756c 740a 2020 6661 696c  nt_result.  fail
│ │ │ +001c2c60: 6564 5f77 6865 6e3a 0a20 202d 206d 6f75  ed_when:.  - mou
│ │ │ +001c2c70: 6e74 5f72 6573 756c 7420 6973 2066 6169  nt_result is fai
│ │ │ +001c2c80: 6c65 640a 2020 2d20 2727 2774 6172 6765  led.  - '''targe
│ │ │ +001c2c90: 7420 6973 2062 7573 7927 2720 6e6f 7420  t is busy'' not 
│ │ │ +001c2ca0: 696e 2028 6d6f 756e 745f 7265 7375 6c74  in (mount_result
│ │ │ +001c2cb0: 2e6d 7367 207c 2064 6566 6175 6c74 2827  .msg | default('
│ │ │ +001c2cc0: 2727 2729 2927 0a20 202d 2027 2727 616c  '''))'.  - '''al
│ │ │ +001c2cd0: 7265 6164 7920 6d6f 756e 7465 6427 2720  ready mounted'' 
│ │ │ +001c2ce0: 6e6f 7420 696e 2028 6d6f 756e 745f 7265  not in (mount_re
│ │ │ +001c2cf0: 7375 6c74 2e6d 7367 207c 2064 6566 6175  sult.msg | defau
│ │ │ +001c2d00: 6c74 2827 2727 2729 2927 0a20 2077 6865  lt(''''))'.  whe
│ │ │ +001c2d10: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +001c2d20: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001c2d30: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001c2d40: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ +001c2d50: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ +001c2d60: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001c2d70: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ +001c2d80: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001c2d90: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ +001c2da0: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +001c2db0: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ +001c2dc0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001c2dd0: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ +001c2de0: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ +001c2df0: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ +001c2e00: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ +001c2e10: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ +001c2e20: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ +001c2e30: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ +001c2e40: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ +001c2e50: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ +001c2e60: 2722 2f74 6d70 2220 696e 2061 6e73 6962  '"/tmp" in ansib
│ │ │ +001c2e70: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ +001c2e80: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ +001c2e90: 2229 207c 206c 6973 7427 0a20 202d 206d  ") | list'.  - m
│ │ │ +001c2ea0: 6f75 6e74 5f69 6e66 6f20 6973 2064 6566  ount_info is def
│ │ │ +001c2eb0: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ +001c2ec0: 5f6e 616d 652e 7374 646f 7574 2069 7320  _name.stdout is 
│ │ │ +001c2ed0: 6465 6669 6e65 6420 616e 6420 2864 6576  defined and (dev
│ │ │ +001c2ee0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ +001c2ef0: 7c20 6c65 6e67 7468 2026 6774 3b20 3029  | length > 0)
│ │ │ +001c2f00: 2920 6f72 2028 222d 2d66 7374 6162 220a  ) or ("--fstab".
│ │ │ +001c2f10: 2020 2020 7c20 6c65 6e67 7468 203d 3d20      | length == 
│ │ │ +001c2f20: 3029 0a20 2074 6167 733a 0a20 202d 204e  0).  tags:.  - N
│ │ │ +001c2f30: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ +001c2f40: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001c2f50: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ +001c2f60: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +001c2f70: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001c2f80: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +001c2f90: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +001c2fa0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001c2fb0: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ +001c2fc0: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +001c2fd0: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +001c2fe0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +001c2ff0: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +001c3000: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +001c3010: 5f6f 7074 696f 6e5f 746d 705f 6e6f 6578  _option_tmp_noex
│ │ │ +001c3020: 6563 0a20 202d 206e 6f5f 7265 626f 6f74  ec.  - no_reboot
│ │ │ +001c3030: 5f6e 6565 6465 640a 3c2f 636f 6465 3e3c  _needed.<
│ │ │ +001c3040: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ +001c30f0: 696f 6e20 5368 656c 6c20 7363 7269 7074  ion Shell script
│ │ │ +001c3100: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
│ │ │ +001c31a0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Compl │ │ │ +001c18d0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +001c18e0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +001c1900: 2f74 683e 3c74 643e 6869 6768 3c2f 7464 /th>high
Re │ │ │ +001c1920: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +001c1930: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:configure │ │ │ +001c1960: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Reboot:false
# Remedi │ │ │ +001c31c0: 6174 696f 6e20 6973 2061 7070 6c69 6361 ation is applica │ │ │ +001c31d0: 626c 6520 6f6e 6c79 2069 6e20 6365 7274 ble only in cert │ │ │ +001c31e0: 6169 6e20 706c 6174 666f 726d 730a 6966 ain platforms.if │ │ │ +001c31f0: 2028 2021 2028 207b 2072 706d 202d 2d71 ( ! ( { rpm --q │ │ │ +001c3200: 7569 6574 202d 7120 6b65 726e 656c 203b uiet -q kernel ; │ │ │ +001c3210: 7d20 2661 6d70 3b26 616d 703b 207b 2072 } && { r │ │ │ +001c3220: 706d 202d 2d71 7569 6574 202d 7120 7270 pm --quiet -q rp │ │ │ +001c3230: 6d2d 6f73 7472 6565 203b 7d20 2661 6d70 m-ostree ;} & │ │ │ +001c3240: 3b26 616d 703b 207b 2072 706d 202d 2d71 ;& { rpm --q │ │ │ +001c3250: 7569 6574 202d 7120 626f 6f74 6320 3b7d uiet -q bootc ;} │ │ │ +001c3260: 2026 616d 703b 2661 6d70 3b20 7b20 2120 && { ! │ │ │ +001c3270: 7270 6d20 2d2d 7175 6965 7420 2d71 206f rpm --quiet -q o │ │ │ +001c3280: 7065 6e73 6869 6674 2d6b 7562 656c 6574 penshift-kubelet │ │ │ +001c3290: 203b 7d20 2661 6d70 3b26 616d 703b 2028 ;} && ( │ │ │ +001c32a0: 5b20 2d66 202f 7275 6e2f 6f73 7472 6565 [ -f /run/ostree │ │ │ +001c32b0: 2d62 6f6f 7465 6420 5d20 7c7c 205b 202d -booted ] || [ - │ │ │ +001c32c0: 4c20 2f6f 7374 7265 6520 5d29 2029 2026 L /ostree ]) ) & │ │ │ +001c32d0: 616d 703b 2661 6d70 3b20 2120 2820 5b20 amp;& ! ( [ │ │ │ +001c32e0: 2d66 202f 2e64 6f63 6b65 7265 6e76 205d -f /.dockerenv ] │ │ │ +001c32f0: 207c 7c20 5b20 2d66 202f 7275 6e2f 2e63 || [ -f /run/.c │ │ │ +001c3300: 6f6e 7461 696e 6572 656e 7620 5d20 2920 ontainerenv ] ) │ │ │ +001c3310: 2920 2661 6d70 3b26 616d 703b 207b 2028 ) && { ( │ │ │ +001c3320: 2066 696e 646d 6e74 202d 2d6b 6572 6e65 findmnt --kerne │ │ │ +001c3330: 6c20 222f 746d 7022 2026 6774 3b20 2f64 l "/tmp" > /d │ │ │ +001c3340: 6576 2f6e 756c 6c20 7c7c 2066 696e 646d ev/null || findm │ │ │ +001c3350: 6e74 202d 2d66 7374 6162 2022 2f74 6d70 nt --fstab "/tmp │ │ │ +001c3360: 2220 2667 743b 202f 6465 762f 6e75 6c6c " > /dev/null │ │ │ +001c3370: 2029 3b20 7d3b 2074 6865 6e0a 0a66 756e ); }; then..fun │ │ │ +001c3380: 6374 696f 6e20 7065 7266 6f72 6d5f 7265 ction perform_re │ │ │ +001c3390: 6d65 6469 6174 696f 6e20 7b0a 0a20 2020 mediation {.. │ │ │ +001c33a0: 200a 2020 2020 2020 2020 2320 7468 6520 . # the │ │ │ +001c33b0: 6d6f 756e 7420 706f 696e 7420 2f74 6d70 mount point /tmp │ │ │ +001c33c0: 2068 6173 2074 6f20 6265 2064 6566 696e has to be defin │ │ │ +001c33d0: 6564 2069 6e20 2f65 7463 2f66 7374 6162 ed in /etc/fstab │ │ │ +001c33e0: 0a20 2020 2020 2020 2023 2062 6566 6f72 . # befor │ │ │ +001c33f0: 6520 7468 6973 2072 656d 6564 6961 7469 e this remediati │ │ │ +001c3400: 6f6e 2063 616e 2062 6520 6578 6563 7574 on can be execut │ │ │ +001c3410: 6564 2e20 496e 2063 6173 6520 6974 2069 ed. In case it i │ │ │ +001c3420: 7320 6e6f 7420 6465 6669 6e65 642c 2074 s not defined, t │ │ │ +001c3430: 6865 0a20 2020 2020 2020 2023 2072 656d he. # rem │ │ │ +001c3440: 6564 6961 7469 6f6e 2061 626f 7274 7320 ediation aborts │ │ │ +001c3450: 616e 6420 6e6f 2063 6861 6e67 6573 2072 and no changes r │ │ │ +001c3460: 6567 6172 6469 6e67 2074 6865 206d 6f75 egarding the mou │ │ │ +001c3470: 6e74 2070 6f69 6e74 2061 7265 2064 6f6e nt point are don │ │ │ +001c3480: 652e 0a20 2020 2020 2020 206d 6f75 6e74 e.. mount │ │ │ +001c3490: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567 _point_match_reg │ │ │ +001c34a0: 6578 703d 2224 2870 7269 6e74 6620 225e exp="$(printf "^ │ │ │ +001c34b0: 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e 235d [[:space:]]*[^#] │ │ │ +001c34c0: 2e2a 5b5b 3a73 7061 6365 3a5d 5d25 735b .*[[:space:]]%s[ │ │ │ +001c34d0: 5b3a 7370 6163 653a 5d5d 2220 222f 746d [:space:]]" "/tm │ │ │ +001c34e0: 7022 2922 0a0a 2020 2020 6772 6570 2022 p")".. grep " │ │ │ +001c34f0: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174 $mount_point_mat │ │ │ +001c3500: 6368 5f72 6567 6578 7022 202d 7120 2f65 ch_regexp" -q /e │ │ │ +001c3510: 7463 2f66 7374 6162 205c 0a20 2020 2020 tc/fstab \. │ │ │ +001c3520: 2020 207c 7c20 7b20 6563 686f 2022 5468 || { echo "Th │ │ │ +001c3530: 6520 6d6f 756e 7420 706f 696e 7420 272f e mount point '/ │ │ │ +001c3540: 746d 7027 2069 7320 6e6f 7420 6576 656e tmp' is not even │ │ │ +001c3550: 2069 6e20 2f65 7463 2f66 7374 6162 2c20 in /etc/fstab, │ │ │ +001c3560: 736f 2077 6520 6361 6e27 7420 7365 7420 so we can't set │ │ │ +001c3570: 7570 206d 6f75 6e74 206f 7074 696f 6e73 up mount options │ │ │ +001c3580: 2220 2667 743b 2661 6d70 3b32 3b0a 2020 " >&2;. │ │ │ +001c3590: 2020 2020 2020 2020 2020 2020 2020 6563 ec │ │ │ +001c35a0: 686f 2022 4e6f 7420 7265 6d65 6469 6174 ho "Not remediat │ │ │ +001c35b0: 696e 672c 2062 6563 6175 7365 2074 6865 ing, because the │ │ │ +001c35c0: 7265 2069 7320 6e6f 2072 6563 6f72 6420 re is no record │ │ │ +001c35d0: 6f66 202f 746d 7020 696e 202f 6574 632f of /tmp in /etc/ │ │ │ +001c35e0: 6673 7461 6222 2026 6774 3b26 616d 703b fstab" >& │ │ │ +001c35f0: 323b 2072 6574 7572 6e20 313b 207d 0a20 2; return 1; }. │ │ │ +001c3600: 2020 200a 0a0a 2020 2020 6d6f 756e 745f ... mount_ │ │ │ +001c3610: 706f 696e 745f 6d61 7463 685f 7265 6765 point_match_rege │ │ │ +001c3620: 7870 3d22 2428 7072 696e 7466 2022 5e5b xp="$(printf "^[ │ │ │ +001c3630: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e [:space:]]*[^#]. │ │ │ +001c3640: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b *[[:space:]]%s[[ │ │ │ +001c3650: 3a73 7061 6365 3a5d 5d22 202f 746d 7029 :space:]]" /tmp) │ │ │ +001c3660: 220a 0a20 2020 2023 2049 6620 7468 6520 ".. # If the │ │ │ +001c3670: 6d6f 756e 7420 706f 696e 7420 6973 206e mount point is n │ │ │ +001c3680: 6f74 2069 6e20 2f65 7463 2f66 7374 6162 ot in /etc/fstab │ │ │ +001c3690: 2c20 6765 7420 7072 6576 696f 7573 206d , get previous m │ │ │ +001c36a0: 6f75 6e74 206f 7074 696f 6e73 2066 726f ount options fro │ │ │ +001c36b0: 6d20 2f65 7463 2f6d 7461 620a 2020 2020 m /etc/mtab. │ │ │ +001c36c0: 6966 2021 2067 7265 7020 2d71 2022 246d if ! grep -q "$m │ │ │ +001c36d0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368 ount_point_match │ │ │ +001c36e0: 5f72 6567 6578 7022 202f 6574 632f 6673 _regexp" /etc/fs │ │ │ +001c36f0: 7461 623b 2074 6865 6e0a 2020 2020 2020 tab; then. │ │ │ +001c3700: 2020 2320 7275 6e74 696d 6520 6f70 7473 # runtime opts │ │ │ +001c3710: 2077 6974 686f 7574 2073 6f6d 6520 6175 without some au │ │ │ +001c3720: 746f 6d61 7469 6320 6b65 726e 656c 2f75 tomatic kernel/u │ │ │ +001c3730: 7365 7273 7061 6365 2d61 6464 6564 2064 serspace-added d │ │ │ +001c3740: 6566 6175 6c74 730a 2020 2020 2020 2020 efaults. │ │ │ +001c3750: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f previous_mount_o │ │ │ +001c3760: 7074 733d 2428 6772 6570 2022 246d 6f75 pts=$(grep "$mou │ │ │ +001c3770: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72 nt_point_match_r │ │ │ +001c3780: 6567 6578 7022 202f 6574 632f 6d74 6162 egexp" /etc/mtab │ │ │ +001c3790: 207c 2068 6561 6420 2d31 207c 2020 6177 | head -1 | aw │ │ │ +001c37a0: 6b20 277b 7072 696e 7420 2434 7d27 205c k '{print $4}' \ │ │ │ +001c37b0: 0a20 2020 2020 2020 2020 2020 2020 2020 . │ │ │ +001c37c0: 2020 2020 207c 2073 6564 202d 4520 2273 | sed -E "s │ │ │ +001c37d0: 2f28 7277 7c64 6566 6175 6c74 737c 7365 /(rw|defaults|se │ │ │ +001c37e0: 636c 6162 656c 7c6e 6f65 7865 6329 282c clabel|noexec)(, │ │ │ +001c37f0: 7c24 292f 2f67 3b73 2f2c 242f 2f22 290a |$)//g;s/,$//"). │ │ │ +001c3800: 2020 2020 2020 2020 5b20 2224 7072 6576 [ "$prev │ │ │ +001c3810: 696f 7573 5f6d 6f75 6e74 5f6f 7074 7322 ious_mount_opts" │ │ │ +001c3820: 205d 2026 616d 703b 2661 6d70 3b20 7072 ] && pr │ │ │ +001c3830: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074 evious_mount_opt │ │ │ +001c3840: 732b 3d22 2c22 0a20 2020 2020 2020 2023 s+=",". # │ │ │ +001c3850: 2049 6e20 6973 6f39 3636 3020 6669 6c65 In iso9660 file │ │ │ +001c3860: 7379 7374 656d 7320 6d74 6162 2063 6f75 systems mtab cou │ │ │ +001c3870: 6c64 2064 6573 6372 6962 6520 6120 2262 ld describe a "b │ │ │ +001c3880: 6c6f 636b 7369 7a65 2220 7661 6c75 652c locksize" value, │ │ │ +001c3890: 2074 6869 7320 7368 6f75 6c64 2062 6520 this should be │ │ │ +001c38a0: 7265 666c 6563 7465 6420 696e 0a20 2020 reflected in. │ │ │ +001c38b0: 2020 2020 2023 2066 7374 6162 2061 7320 # fstab as │ │ │ +001c38c0: 2262 6c6f 636b 222e 2020 5468 6520 6e65 "block". The ne │ │ │ +001c38d0: 7874 2076 6172 6961 626c 6520 6973 2074 xt variable is t │ │ │ +001c38e0: 6f20 7361 7469 7366 7920 7368 656c 6c63 o satisfy shellc │ │ │ +001c38f0: 6865 636b 2053 4332 3035 302e 0a20 2020 heck SC2050.. │ │ │ +001c3900: 2020 2020 2066 735f 7479 7065 3d22 220a fs_type="". │ │ │ +001c3910: 2020 2020 2020 2020 6966 205b 2020 2224 if [ "$ │ │ │ +001c3920: 6673 5f74 7970 6522 203d 3d20 2269 736f fs_type" == "iso │ │ │ +001c3930: 3936 3630 2220 5d20 3b20 7468 656e 0a20 9660" ] ; then. │ │ │ +001c3940: 2020 2020 2020 2020 2020 2070 7265 7669 previ │ │ │ +001c3950: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24 ous_mount_opts=$ │ │ │ +001c3960: 2873 6564 2027 732f 626c 6f63 6b73 697a (sed 's/blocksiz │ │ │ +001c3970: 653d 2f62 6c6f 636b 3d2f 2720 266c 743b e=/block=/' < │ │ │ +001c3980: 266c 743b 266c 743b 2022 2470 7265 7669 << "$previ │ │ │ +001c3990: 6f75 735f 6d6f 756e 745f 6f70 7473 2229 ous_mount_opts") │ │ │ +001c39a0: 0a20 2020 2020 2020 2066 690a 2020 2020 . fi. │ │ │ +001c39b0: 2020 2020 6563 686f 2022 202f 746d 7020 echo " /tmp │ │ │ +001c39c0: 2064 6566 6175 6c74 732c 247b 7072 6576 defaults,${prev │ │ │ +001c39d0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 737d ious_mount_opts} │ │ │ +001c39e0: 6e6f 6578 6563 2030 2030 2220 2667 743b noexec 0 0" > │ │ │ +001c39f0: 2667 743b 202f 6574 632f 6673 7461 620a > /etc/fstab. │ │ │ +001c3a00: 2020 2020 2320 4966 2074 6865 206d 6f75 # If the mou │ │ │ +001c3a10: 6e74 5f6f 7074 206f 7074 696f 6e20 6973 nt_opt option is │ │ │ +001c3a20: 206e 6f74 2061 6c72 6561 6479 2069 6e20 not already in │ │ │ +001c3a30: 7468 6520 6d6f 756e 7420 706f 696e 7427 the mount point' │ │ │ +001c3a40: 7320 2f65 7463 2f66 7374 6162 2065 6e74 s /etc/fstab ent │ │ │ +001c3a50: 7279 2c20 6164 6420 6974 0a20 2020 2065 ry, add it. e │ │ │ +001c3a60: 6c69 6620 2120 6772 6570 2022 246d 6f75 lif ! grep "$mou │ │ │ +001c3a70: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72 nt_point_match_r │ │ │ +001c3a80: 6567 6578 7022 202f 6574 632f 6673 7461 egexp" /etc/fsta │ │ │ +001c3a90: 6220 7c20 6772 6570 202d 7120 226e 6f65 b | grep -q "noe │ │ │ +001c3aa0: 7865 6322 3b20 7468 656e 0a20 2020 2020 xec"; then. │ │ │ +001c3ab0: 2020 2070 7265 7669 6f75 735f 6d6f 756e previous_moun │ │ │ +001c3ac0: 745f 6f70 7473 3d24 2867 7265 7020 2224 t_opts=$(grep "$ │ │ │ +001c3ad0: 6d6f 756e 745f 706f 696e 745f 6d61 7463 mount_point_matc │ │ │ +001c3ae0: 685f 7265 6765 7870 2220 2f65 7463 2f66 h_regexp" /etc/f │ │ │ +001c3af0: 7374 6162 207c 2061 776b 2027 7b70 7269 stab | awk '{pri │ │ │ +001c3b00: 6e74 2024 347d 2729 0a20 2020 2020 2020 nt $4}'). │ │ │ +001c3b10: 2073 6564 202d 6920 2273 7c5c 2824 7b6d sed -i "s|\(${m │ │ │ +001c3b20: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368 ount_point_match │ │ │ +001c3b30: 5f72 6567 6578 707d 2e2a 247b 7072 6576 _regexp}.*${prev │ │ │ +001c3b40: 696f 7573 5f6d 6f75 6e74 5f6f 7074 737d ious_mount_opts} │ │ │ +001c3b50: 5c29 7c5c 312c 6e6f 6578 6563 7c22 202f \)|\1,noexec|" / │ │ │ +001c3b60: 6574 632f 6673 7461 620a 2020 2020 6669 etc/fstab. fi │ │ │ +001c3b70: 0a0a 0a20 2020 2069 6620 6d6b 6469 7220 ... if mkdir │ │ │ +001c3b80: 2d70 2022 2f74 6d70 223b 2074 6865 6e0a -p "/tmp"; then. │ │ │ +001c3b90: 2020 2020 2020 2020 6966 206d 6f75 6e74 if mount │ │ │ +001c3ba0: 706f 696e 7420 2d71 2022 2f74 6d70 223b point -q "/tmp"; │ │ │ +001c3bb0: 2074 6865 6e0a 2020 2020 2020 2020 2020 then. │ │ │ +001c3bc0: 2020 6d6f 756e 7420 2d6f 2072 656d 6f75 mount -o remou │ │ │ +001c3bd0: 6e74 202d 2d74 6172 6765 7420 222f 746d nt --target "/tm │ │ │ +001c3be0: 7022 0a20 2020 2020 2020 2066 690a 2020 p". fi. │ │ │ +001c3bf0: 2020 6669 0a7d 0a0a 7065 7266 6f72 6d5f fi.}..perform_ │ │ │ +001c3c00: 7265 6d65 6469 6174 696f 6e0a 0a65 6c73 remediation..els │ │ │ +001c3c10: 650a 2020 2020 2667 743b 2661 6d70 3b32 e. >&2 │ │ │ +001c3c20: 2065 6368 6f20 2752 656d 6564 6961 7469 echo 'Remediati │ │ │ +001c3c30: 6f6e 2069 7320 6e6f 7420 6170 706c 6963 on is not applic │ │ │ +001c3c40: 6162 6c65 2c20 6e6f 7468 696e 6720 7761 able, nothing wa │ │ │ +001c3c50: 7320 646f 6e65 270a 6669 0a3c 2f63 6f64 s done'.fi.
Remed │ │ │ +001c3d10: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ +001c3d20: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +001c3d30: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
< │ │ │ +001c3e20: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Com │ │ │ +001c3db0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +001c3de0: 3a3c 2f74 683e 3c74 643e 6869 6768 3c2f :high
│ │ │ +001c3e00: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +001c3e10: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +001c3e30: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +001c3e40: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.par
│ │ │ +001c3e60: 7420 2f74 6d70 202d 2d6d 6f75 6e74 6f70  t /tmp --mountop
│ │ │ +001c3e70: 7469 6f6e 733d 226e 6f65 7865 6322 0a3c  tions="noexec".<
│ │ │  001c3e80: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -001c4f70: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ -001c4f80: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ -001c4f90: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -001c5060: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -001c5070: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -001c50c0: 0a70 6172 7420 2f74 6d70 202d 2d6d 6f75  .part /tmp --mou
│ │ │ -001c50d0: 6e74 6f70 7469 6f6e 733d 226e 6f73 7569  ntoptions="nosui
│ │ │ -001c50e0: 6422 0a3c 2f63 6f64 653e 3c2f 7072 653e  d".
│ │ │ -001c50f0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation A │ │ │ -001c51a0: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ -001c51b0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
Complexity:low
Disrup │ │ │ -001c5040: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6869 tion:hi │ │ │ -001c5050: 6768 3c2f 7464 3e3c 2f74 723e 3c74 723e gh
Reboot:false
Strat │ │ │ -001c5090: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -001c50a0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
│ │ │ -001c5230: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -001c5250: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ -001c5280: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
Complexity:< │ │ │ -001c5240: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -001c5260: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ -001c52b0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -001c52c0: 636f 6e66 6967 7572 653c 2f74 643e 3c2f configure
│ │ │ -001c52e0: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -001c52f0: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -001c5300: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -001c5310: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -001c5320: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -001c5330: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -001c5340: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ -001c5350: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ -001c5360: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001c5370: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ -001c5380: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ -001c5390: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001c53a0: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ -001c53b0: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ -001c53c0: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ -001c53d0: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ -001c53e0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ -001c53f0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ -001c5400: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -001c5410: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f74  - mount_option_t
│ │ │ -001c5420: 6d70 5f6e 6f73 7569 640a 2020 2d20 6e6f  mp_nosuid.  - no
│ │ │ -001c5430: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ -001c5440: 2d20 6e61 6d65 3a20 2741 6464 206e 6f73  - name: 'Add nos
│ │ │ -001c5450: 7569 6420 4f70 7469 6f6e 2074 6f20 2f74  uid Option to /t
│ │ │ -001c5460: 6d70 3a20 4368 6563 6b20 696e 666f 726d  mp: Check inform
│ │ │ -001c5470: 6174 696f 6e20 6173 736f 6369 6174 6564  ation associated
│ │ │ -001c5480: 2074 6f20 6d6f 756e 7470 6f69 6e74 270a   to mountpoint'.
│ │ │ -001c5490: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -001c54a0: 6e2e 636f 6d6d 616e 643a 2066 696e 646d  n.command: findm
│ │ │ -001c54b0: 6e74 202d 2d66 7374 6162 2027 2f74 6d70  nt --fstab '/tmp
│ │ │ -001c54c0: 270a 2020 7265 6769 7374 6572 3a20 6465  '.  register: de
│ │ │ -001c54d0: 7669 6365 5f6e 616d 650a 2020 6661 696c  vice_name.  fail
│ │ │ -001c54e0: 6564 5f77 6865 6e3a 2064 6576 6963 655f  ed_when: device_
│ │ │ -001c54f0: 6e61 6d65 2e72 6320 2667 743b 2031 0a20  name.rc > 1. 
│ │ │ -001c5500: 2063 6861 6e67 6564 5f77 6865 6e3a 2066   changed_when: f
│ │ │ -001c5510: 616c 7365 0a20 2063 6865 636b 5f6d 6f64  alse.  check_mod
│ │ │ -001c5520: 653a 2066 616c 7365 0a20 2077 6865 6e3a  e: false.  when:
│ │ │ -001c5530: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ -001c5540: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -001c5550: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001c5560: 616e 6420 2272 706d 2d6f 7374 7265 6522  and "rpm-ostree"
│ │ │ -001c5570: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001c5580: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001c5590: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ -001c55a0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001c55b0: 6167 6573 2061 6e64 206e 6f74 2022 6f70  ages and not "op
│ │ │ -001c55c0: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ -001c55d0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001c55e0: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001c55f0: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ -001c5600: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ -001c5610: 696e 6520 2920 616e 6420 6e6f 7420 2820  ine ) and not ( 
│ │ │ -001c5620: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ -001c5630: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20  zation_type in. 
│ │ │ -001c5640: 2020 205b 2264 6f63 6b65 7222 2c20 226c     ["docker", "l
│ │ │ -001c5650: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ -001c5660: 706f 646d 616e 222c 2022 636f 6e74 6169  podman", "contai
│ │ │ -001c5670: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ -001c5680: 2f74 6d70 2220 696e 2061 6e73 6962 6c65  /tmp" in ansible
│ │ │ -001c5690: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ -001c56a0: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ -001c56b0: 207c 206c 6973 7427 0a20 2074 6167 733a   | list'.  tags:
│ │ │ -001c56c0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001c56d0: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ -001c56e0: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ -001c56f0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001c5700: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -001c5710: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ -001c5720: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001c5730: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ -001c5740: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ -001c5750: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001c5760: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -001c5770: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -001c5780: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001c5790: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001c57a0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 746d   mount_option_tm
│ │ │ -001c57b0: 705f 6e6f 7375 6964 0a20 202d 206e 6f5f  p_nosuid.  - no_
│ │ │ -001c57c0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001c57d0: 206e 616d 653a 2027 4164 6420 6e6f 7375   name: 'Add nosu
│ │ │ -001c57e0: 6964 204f 7074 696f 6e20 746f 202f 746d  id Option to /tm
│ │ │ -001c57f0: 703a 2043 7265 6174 6520 6d6f 756e 745f  p: Create mount_
│ │ │ -001c5800: 696e 666f 2064 6963 7469 6f6e 6172 7920  info dictionary 
│ │ │ -001c5810: 7661 7269 6162 6c65 270a 2020 7365 745f  variable'.  set_
│ │ │ -001c5820: 6661 6374 3a0a 2020 2020 6d6f 756e 745f  fact:.    mount_
│ │ │ -001c5830: 696e 666f 3a20 277b 7b20 6d6f 756e 745f  info: '{{ mount_
│ │ │ -001c5840: 696e 666f 7c64 6566 6175 6c74 287b 7d29  info|default({})
│ │ │ -001c5850: 7c63 6f6d 6269 6e65 287b 6974 656d 2e30  |combine({item.0
│ │ │ -001c5860: 3a20 6974 656d 2e31 7d29 207d 7d27 0a20  : item.1}) }}'. 
│ │ │ -001c5870: 2077 6974 685f 746f 6765 7468 6572 3a0a   with_together:.
│ │ │ -001c5880: 2020 2d20 277b 7b20 6465 7669 6365 5f6e    - '{{ device_n
│ │ │ -001c5890: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ -001c58a0: 5b30 5d2e 7370 6c69 7428 2920 7c20 6d61  [0].split() | ma
│ │ │ -001c58b0: 7028 2727 6c6f 7765 7227 2729 207c 206c  p(''lower'') | l
│ │ │ -001c58c0: 6973 7420 7d7d 270a 2020 2d20 277b 7b20  ist }}'.  - '{{ 
│ │ │ -001c58d0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001c58e0: 7574 5f6c 696e 6573 5b31 5d2e 7370 6c69  ut_lines[1].spli
│ │ │ -001c58f0: 7428 2920 7c20 6c69 7374 207d 7d27 0a20  t() | list }}'. 
│ │ │ -001c5900: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ -001c5910: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ -001c5920: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001c5930: 6b61 6765 7320 616e 6420 2272 706d 2d6f  kages and "rpm-o
│ │ │ -001c5940: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001c5950: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001c5960: 0a20 2020 2061 6e64 2022 626f 6f74 6322  .    and "bootc"
│ │ │ -001c5970: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001c5980: 732e 7061 636b 6167 6573 2061 6e64 206e  s.packages and n
│ │ │ -001c5990: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ -001c59a0: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ -001c59b0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001c59c0: 0a20 2020 2061 6e64 2022 6f73 7472 6565  .    and "ostree
│ │ │ -001c59d0: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ -001c59e0: 635f 636d 646c 696e 6520 2920 616e 6420  c_cmdline ) and 
│ │ │ -001c59f0: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ -001c5a00: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ -001c5a10: 6520 696e 0a20 2020 205b 2264 6f63 6b65  e in.    ["docke
│ │ │ -001c5a20: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ -001c5a30: 767a 222c 2022 706f 646d 616e 222c 2022  vz", "podman", "
│ │ │ -001c5a40: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ -001c5a50: 2020 2d20 2722 2f74 6d70 2220 696e 2061    - '"/tmp" in a
│ │ │ -001c5a60: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ -001c5a70: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ -001c5a80: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ -001c5a90: 202d 2064 6576 6963 655f 6e61 6d65 2e73   - device_name.s
│ │ │ -001c5aa0: 7464 6f75 7420 6973 2064 6566 696e 6564  tdout is defined
│ │ │ -001c5ab0: 2061 6e64 2064 6576 6963 655f 6e61 6d65   and device_name
│ │ │ -001c5ac0: 2e73 7464 6f75 745f 6c69 6e65 7320 6973  .stdout_lines is
│ │ │ -001c5ad0: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ -001c5ae0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001c5af0: 207c 206c 656e 6774 6820 2667 743b 2030   | length > 0
│ │ │ -001c5b00: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ -001c5b10: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ -001c5b20: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001c5b30: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ -001c5b40: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -001c5b50: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001c5b60: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -001c5b70: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -001c5b80: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ -001c5b90: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ -001c5ba0: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -001c5bb0: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -001c5bc0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001c5bd0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -001c5be0: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ -001c5bf0: 6f70 7469 6f6e 5f74 6d70 5f6e 6f73 7569  option_tmp_nosui
│ │ │ -001c5c00: 640a 2020 2d20 6e6f 5f72 6562 6f6f 745f  d.  - no_reboot_
│ │ │ -001c5c10: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ -001c5c20: 2741 6464 206e 6f73 7569 6420 4f70 7469  'Add nosuid Opti
│ │ │ -001c5c30: 6f6e 2074 6f20 2f74 6d70 3a20 4966 202f  on to /tmp: If /
│ │ │ -001c5c40: 746d 7020 6e6f 7420 6d6f 756e 7465 642c  tmp not mounted,
│ │ │ -001c5c50: 2063 7261 6674 206d 6f75 6e74 5f69 6e66   craft mount_inf
│ │ │ -001c5c60: 6f20 6d61 6e75 616c 6c79 270a 2020 7365  o manually'.  se
│ │ │ -001c5c70: 745f 6661 6374 3a0a 2020 2020 6d6f 756e  t_fact:.    moun
│ │ │ -001c5c80: 745f 696e 666f 3a20 277b 7b20 6d6f 756e  t_info: '{{ moun
│ │ │ -001c5c90: 745f 696e 666f 7c64 6566 6175 6c74 287b  t_info|default({
│ │ │ -001c5ca0: 7d29 7c63 6f6d 6269 6e65 287b 6974 656d  })|combine({item
│ │ │ -001c5cb0: 2e30 3a20 6974 656d 2e31 7d29 207d 7d27  .0: item.1}) }}'
│ │ │ -001c5cc0: 0a20 2077 6974 685f 746f 6765 7468 6572  .  with_together
│ │ │ -001c5cd0: 3a0a 2020 2d20 2d20 7461 7267 6574 0a20  :.  - - target. 
│ │ │ -001c5ce0: 2020 202d 2073 6f75 7263 650a 2020 2020     - source.    
│ │ │ -001c5cf0: 2d20 6673 7479 7065 0a20 2020 202d 206f  - fstype.    - o
│ │ │ -001c5d00: 7074 696f 6e73 0a20 202d 202d 202f 746d  ptions.  - - /tm
│ │ │ -001c5d10: 700a 2020 2020 2d20 2727 0a20 2020 202d  p.    - ''.    -
│ │ │ -001c5d20: 2027 270a 2020 2020 2d20 6465 6661 756c   ''.    - defaul
│ │ │ -001c5d30: 7473 0a20 2077 6865 6e3a 0a20 202d 2028  ts.  when:.  - (
│ │ │ -001c5d40: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -001c5d50: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001c5d60: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ -001c5d70: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ -001c5d80: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001c5d90: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ -001c5da0: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ -001c5db0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001c5dc0: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -001c5dd0: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -001c5de0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001c5df0: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ -001c5e00: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001c5e10: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ -001c5e20: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -001c5e30: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -001c5e40: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ -001c5e50: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ -001c5e60: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ -001c5e70: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ -001c5e80: 2920 290a 2020 2d20 2722 2f74 6d70 2220  ) ).  - '"/tmp" 
│ │ │ -001c5e90: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ -001c5ea0: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ -001c5eb0: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ -001c5ec0: 7427 0a20 202d 2028 222d 2d66 7374 6162  t'.  - ("--fstab
│ │ │ -001c5ed0: 2220 7c20 6c65 6e67 7468 203d 3d20 3029  " | length == 0)
│ │ │ -001c5ee0: 0a20 202d 2064 6576 6963 655f 6e61 6d65  .  - device_name
│ │ │ -001c5ef0: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ -001c5f00: 6564 2061 6e64 2064 6576 6963 655f 6e61  ed and device_na
│ │ │ -001c5f10: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320  me.stdout_lines 
│ │ │ -001c5f20: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ -001c5f30: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001c5f40: 7574 207c 206c 656e 6774 6820 3d3d 2030  ut | length == 0
│ │ │ -001c5f50: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ -001c5f60: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ -001c5f70: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001c5f80: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ -001c5f90: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -001c5fa0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001c5fb0: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -001c5fc0: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -001c5fd0: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ -001c5fe0: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ -001c5ff0: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -001c6000: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -001c6010: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001c6020: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -001c6030: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ -001c6040: 6f70 7469 6f6e 5f74 6d70 5f6e 6f73 7569  option_tmp_nosui
│ │ │ -001c6050: 640a 2020 2d20 6e6f 5f72 6562 6f6f 745f  d.  - no_reboot_
│ │ │ -001c6060: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ -001c6070: 2741 6464 206e 6f73 7569 6420 4f70 7469  'Add nosuid Opti
│ │ │ -001c6080: 6f6e 2074 6f20 2f74 6d70 3a20 4d61 6b65  on to /tmp: Make
│ │ │ -001c6090: 2073 7572 6520 6e6f 7375 6964 206f 7074   sure nosuid opt
│ │ │ -001c60a0: 696f 6e20 6973 2070 6172 7420 6f66 2074  ion is part of t
│ │ │ -001c60b0: 6865 2074 6f20 2f74 6d70 0a20 2020 206f  he to /tmp.    o
│ │ │ -001c60c0: 7074 696f 6e73 270a 2020 7365 745f 6661  ptions'.  set_fa
│ │ │ -001c60d0: 6374 3a0a 2020 2020 6d6f 756e 745f 696e  ct:.    mount_in
│ │ │ -001c60e0: 666f 3a20 277b 7b20 6d6f 756e 745f 696e  fo: '{{ mount_in
│ │ │ -001c60f0: 666f 207c 2063 6f6d 6269 6e65 2820 7b27  fo | combine( {'
│ │ │ -001c6100: 276f 7074 696f 6e73 2727 3a27 2727 277e  'options'':''''~
│ │ │ -001c6110: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469  (mount_info.opti
│ │ │ -001c6120: 6f6e 7320 7c0a 2020 2020 2020 6465 6661  ons |.      defa
│ │ │ -001c6130: 756c 7428 2727 2727 2929 7e28 2727 2c27  ult(''''))~('','
│ │ │ -001c6140: 2720 6966 2028 6d6f 756e 745f 696e 666f  ' if (mount_info
│ │ │ -001c6150: 2e6f 7074 696f 6e73 207c 2064 6566 6175  .options | defau
│ │ │ -001c6160: 6c74 2827 2727 2729 2920 656c 7365 2027  lt('''')) else '
│ │ │ -001c6170: 2727 2729 7e27 276e 6f73 7569 6427 270a  ''')~''nosuid''.
│ │ │ -001c6180: 2020 2020 2020 7d29 207d 7d27 0a20 2077        }) }}'.  w
│ │ │ -001c6190: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ -001c61a0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -001c61b0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001c61c0: 6765 7320 616e 6420 2272 706d 2d6f 7374  ges and "rpm-ost
│ │ │ -001c61d0: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -001c61e0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -001c61f0: 2020 2061 6e64 2022 626f 6f74 6322 2069     and "bootc" i
│ │ │ -001c6200: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001c6210: 7061 636b 6167 6573 2061 6e64 206e 6f74  packages and not
│ │ │ -001c6220: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ -001c6230: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ -001c6240: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -001c6250: 2020 2061 6e64 2022 6f73 7472 6565 2220     and "ostree" 
│ │ │ -001c6260: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ -001c6270: 636d 646c 696e 6520 2920 616e 6420 6e6f  cmdline ) and no
│ │ │ -001c6280: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ -001c6290: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ -001c62a0: 696e 0a20 2020 205b 2264 6f63 6b65 7222  in.    ["docker"
│ │ │ -001c62b0: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ -001c62c0: 222c 2022 706f 646d 616e 222c 2022 636f  ", "podman", "co
│ │ │ -001c62d0: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ -001c62e0: 2d20 2722 2f74 6d70 2220 696e 2061 6e73  - '"/tmp" in ans
│ │ │ -001c62f0: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ -001c6300: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ -001c6310: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ -001c6320: 206d 6f75 6e74 5f69 6e66 6f20 6973 2064   mount_info is d
│ │ │ -001c6330: 6566 696e 6564 2061 6e64 2022 6e6f 7375  efined and "nosu
│ │ │ -001c6340: 6964 2220 6e6f 7420 696e 2028 6d6f 756e  id" not in (moun
│ │ │ -001c6350: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ -001c6360: 2064 6566 6175 6c74 2827 2729 290a 2020   default('')).  
│ │ │ -001c6370: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ -001c6380: 3030 2d35 332d 4143 2d36 0a20 202d 204e  00-53-AC-6.  - N
│ │ │ -001c6390: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ -001c63a0: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ -001c63b0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ -001c63c0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -001c63d0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -001c63e0: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ -001c63f0: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ -001c6400: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ -001c6410: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ -001c6420: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -001c6430: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -001c6440: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -001c6450: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ -001c6460: 6f6e 5f74 6d70 5f6e 6f73 7569 640a 2020  on_tmp_nosuid.  
│ │ │ -001c6470: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -001c6480: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ -001c6490: 206e 6f73 7569 6420 4f70 7469 6f6e 2074   nosuid Option t
│ │ │ -001c64a0: 6f20 2f74 6d70 3a20 456e 7375 7265 202f  o /tmp: Ensure /
│ │ │ -001c64b0: 746d 7020 6973 206d 6f75 6e74 6564 2077  tmp is mounted w
│ │ │ -001c64c0: 6974 6820 6e6f 7375 6964 206f 7074 696f  ith nosuid optio
│ │ │ -001c64d0: 6e27 0a20 2061 6e73 6962 6c65 2e70 6f73  n'.  ansible.pos
│ │ │ -001c64e0: 6978 2e6d 6f75 6e74 3a0a 2020 2020 7061  ix.mount:.    pa
│ │ │ -001c64f0: 7468 3a20 2f74 6d70 0a20 2020 2073 7263  th: /tmp.    src
│ │ │ -001c6500: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001c6510: 2e73 6f75 7263 6520 7c20 6465 6661 756c  .source | defaul
│ │ │ -001c6520: 7428 2727 2727 2920 7d7d 270a 2020 2020  t('''') }}'.    
│ │ │ -001c6530: 6f70 7473 3a20 277b 7b20 6d6f 756e 745f  opts: '{{ mount_
│ │ │ -001c6540: 696e 666f 2e6f 7074 696f 6e73 207c 2064  info.options | d
│ │ │ -001c6550: 6566 6175 6c74 2827 2727 2729 207d 7d27  efault('''') }}'
│ │ │ -001c6560: 0a20 2020 2073 7461 7465 3a20 6d6f 756e  .    state: moun
│ │ │ -001c6570: 7465 640a 2020 2020 6673 7479 7065 3a20  ted.    fstype: 
│ │ │ -001c6580: 277b 7b20 6d6f 756e 745f 696e 666f 2e66  '{{ mount_info.f
│ │ │ -001c6590: 7374 7970 6520 7c20 6465 6661 756c 7428  stype | default(
│ │ │ -001c65a0: 2727 2727 2920 7d7d 270a 2020 7265 6769  '''') }}'.  regi
│ │ │ -001c65b0: 7374 6572 3a20 6d6f 756e 745f 7265 7375  ster: mount_resu
│ │ │ -001c65c0: 6c74 0a20 2066 6169 6c65 645f 7768 656e  lt.  failed_when
│ │ │ -001c65d0: 3a0a 2020 2d20 6d6f 756e 745f 7265 7375  :.  - mount_resu
│ │ │ -001c65e0: 6c74 2069 7320 6661 696c 6564 0a20 202d  lt is failed.  -
│ │ │ -001c65f0: 2027 2727 7461 7267 6574 2069 7320 6275   '''target is bu
│ │ │ -001c6600: 7379 2727 206e 6f74 2069 6e20 286d 6f75  sy'' not in (mou
│ │ │ -001c6610: 6e74 5f72 6573 756c 742e 6d73 6720 7c20  nt_result.msg | 
│ │ │ -001c6620: 6465 6661 756c 7428 2727 2727 2929 270a  default(''''))'.
│ │ │ -001c6630: 2020 2d20 2727 2761 6c72 6561 6479 206d    - '''already m
│ │ │ -001c6640: 6f75 6e74 6564 2727 206e 6f74 2069 6e20  ounted'' not in 
│ │ │ -001c6650: 286d 6f75 6e74 5f72 6573 756c 742e 6d73  (mount_result.ms
│ │ │ -001c6660: 6720 7c20 6465 6661 756c 7428 2727 2727  g | default(''''
│ │ │ -001c6670: 2929 270a 2020 7768 656e 3a0a 2020 2d20  ))'.  when:.  - 
│ │ │ -001c6680: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -001c6690: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001c66a0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001c66b0: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ -001c66c0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001c66d0: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ -001c66e0: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -001c66f0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001c6700: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001c6710: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001c6720: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001c6730: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ -001c6740: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001c6750: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ -001c6760: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001c6770: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001c6780: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ -001c6790: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -001c67a0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -001c67b0: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ -001c67c0: 2029 2029 0a20 202d 2027 222f 746d 7022   ) ).  - '"/tmp"
│ │ │ -001c67d0: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ -001c67e0: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ -001c67f0: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ -001c6800: 7374 270a 2020 2d20 6d6f 756e 745f 696e  st'.  - mount_in
│ │ │ -001c6810: 666f 2069 7320 6465 6669 6e65 640a 2020  fo is defined.  
│ │ │ -001c6820: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ -001c6830: 7464 6f75 7420 6973 2064 6566 696e 6564  tdout is defined
│ │ │ -001c6840: 2061 6e64 2028 6465 7669 6365 5f6e 616d   and (device_nam
│ │ │ -001c6850: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ -001c6860: 6820 2667 743b 2030 2929 206f 7220 2822  h > 0)) or ("
│ │ │ -001c6870: 2d2d 6673 7461 6222 0a20 2020 207c 206c  --fstab".    | l
│ │ │ -001c6880: 656e 6774 6820 3d3d 2030 290a 2020 7461  ength == 0).  ta
│ │ │ -001c6890: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -001c68a0: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ -001c68b0: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ -001c68c0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001c68d0: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ -001c68e0: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ -001c68f0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001c6900: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ -001c6910: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ -001c6920: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -001c6930: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ -001c6940: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -001c6950: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001c6960: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -001c6970: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ -001c6980: 5f74 6d70 5f6e 6f73 7569 640a 2020 2d20  _tmp_nosuid.  - 
│ │ │ -001c6990: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001c69a0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation She │ │ │ -001c6a60: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...
# Remediation i
│ │ │ -001c6b30: 7320 6170 706c 6963 6162 6c65 206f 6e6c  s applicable onl
│ │ │ -001c6b40: 7920 696e 2063 6572 7461 696e 2070 6c61  y in certain pla
│ │ │ -001c6b50: 7466 6f72 6d73 0a69 6620 2820 2120 2820  tforms.if ( ! ( 
│ │ │ -001c6b60: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ -001c6b70: 206b 6572 6e65 6c20 3b7d 2026 616d 703b   kernel ;} &
│ │ │ -001c6b80: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ -001c6b90: 6965 7420 2d71 2072 706d 2d6f 7374 7265  iet -q rpm-ostre
│ │ │ -001c6ba0: 6520 3b7d 2026 616d 703b 2661 6d70 3b20  e ;} && 
│ │ │ -001c6bb0: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ -001c6bc0: 2062 6f6f 7463 203b 7d20 2661 6d70 3b26   bootc ;} &&
│ │ │ -001c6bd0: 616d 703b 207b 2021 2072 706d 202d 2d71  amp; { ! rpm --q
│ │ │ -001c6be0: 7569 6574 202d 7120 6f70 656e 7368 6966  uiet -q openshif
│ │ │ -001c6bf0: 742d 6b75 6265 6c65 7420 3b7d 2026 616d  t-kubelet ;} &am
│ │ │ -001c6c00: 703b 2661 6d70 3b20 285b 202d 6620 2f72  p;& ([ -f /r
│ │ │ -001c6c10: 756e 2f6f 7374 7265 652d 626f 6f74 6564  un/ostree-booted
│ │ │ -001c6c20: 205d 207c 7c20 5b20 2d4c 202f 6f73 7472   ] || [ -L /ostr
│ │ │ -001c6c30: 6565 205d 2920 2920 2661 6d70 3b26 616d  ee ]) ) &&am
│ │ │ -001c6c40: 703b 2021 2028 205b 202d 6620 2f2e 646f  p; ! ( [ -f /.do
│ │ │ -001c6c50: 636b 6572 656e 7620 5d20 7c7c 205b 202d  ckerenv ] || [ -
│ │ │ -001c6c60: 6620 2f72 756e 2f2e 636f 6e74 6169 6e65  f /run/.containe
│ │ │ -001c6c70: 7265 6e76 205d 2029 2029 2026 616d 703b  renv ] ) ) &
│ │ │ -001c6c80: 2661 6d70 3b20 7b20 2820 6669 6e64 6d6e  & { ( findmn
│ │ │ -001c6c90: 7420 2d2d 6b65 726e 656c 2022 2f74 6d70  t --kernel "/tmp
│ │ │ -001c6ca0: 2220 2667 743b 202f 6465 762f 6e75 6c6c  " > /dev/null
│ │ │ -001c6cb0: 207c 7c20 6669 6e64 6d6e 7420 2d2d 6673   || findmnt --fs
│ │ │ -001c6cc0: 7461 6220 222f 746d 7022 2026 6774 3b20  tab "/tmp" > 
│ │ │ -001c6cd0: 2f64 6576 2f6e 756c 6c20 293b 207d 3b20  /dev/null ); }; 
│ │ │ -001c6ce0: 7468 656e 0a0a 6675 6e63 7469 6f6e 2070  then..function p
│ │ │ -001c6cf0: 6572 666f 726d 5f72 656d 6564 6961 7469  erform_remediati
│ │ │ -001c6d00: 6f6e 207b 0a0a 2020 2020 0a20 2020 2020  on {..    .     
│ │ │ -001c6d10: 2020 2023 2074 6865 206d 6f75 6e74 2070     # the mount p
│ │ │ -001c6d20: 6f69 6e74 202f 746d 7020 6861 7320 746f  oint /tmp has to
│ │ │ -001c6d30: 2062 6520 6465 6669 6e65 6420 696e 202f   be defined in /
│ │ │ -001c6d40: 6574 632f 6673 7461 620a 2020 2020 2020  etc/fstab.      
│ │ │ -001c6d50: 2020 2320 6265 666f 7265 2074 6869 7320    # before this 
│ │ │ -001c6d60: 7265 6d65 6469 6174 696f 6e20 6361 6e20  remediation can 
│ │ │ -001c6d70: 6265 2065 7865 6375 7465 642e 2049 6e20  be executed. In 
│ │ │ -001c6d80: 6361 7365 2069 7420 6973 206e 6f74 2064  case it is not d
│ │ │ -001c6d90: 6566 696e 6564 2c20 7468 650a 2020 2020  efined, the.    
│ │ │ -001c6da0: 2020 2020 2320 7265 6d65 6469 6174 696f      # remediatio
│ │ │ -001c6db0: 6e20 6162 6f72 7473 2061 6e64 206e 6f20  n aborts and no 
│ │ │ -001c6dc0: 6368 616e 6765 7320 7265 6761 7264 696e  changes regardin
│ │ │ -001c6dd0: 6720 7468 6520 6d6f 756e 7420 706f 696e  g the mount poin
│ │ │ -001c6de0: 7420 6172 6520 646f 6e65 2e0a 2020 2020  t are done..    
│ │ │ -001c6df0: 2020 2020 6d6f 756e 745f 706f 696e 745f      mount_point_
│ │ │ -001c6e00: 6d61 7463 685f 7265 6765 7870 3d22 2428  match_regexp="$(
│ │ │ -001c6e10: 7072 696e 7466 2022 5e5b 5b3a 7370 6163  printf "^[[:spac
│ │ │ -001c6e20: 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370  e:]]*[^#].*[[:sp
│ │ │ -001c6e30: 6163 653a 5d5d 2573 5b5b 3a73 7061 6365  ace:]]%s[[:space
│ │ │ -001c6e40: 3a5d 5d22 2022 2f74 6d70 2229 220a 0a20  :]]" "/tmp")".. 
│ │ │ -001c6e50: 2020 2067 7265 7020 2224 6d6f 756e 745f     grep "$mount_
│ │ │ -001c6e60: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001c6e70: 7870 2220 2d71 202f 6574 632f 6673 7461  xp" -q /etc/fsta
│ │ │ -001c6e80: 6220 5c0a 2020 2020 2020 2020 7c7c 207b  b \.        || {
│ │ │ -001c6e90: 2065 6368 6f20 2254 6865 206d 6f75 6e74   echo "The mount
│ │ │ -001c6ea0: 2070 6f69 6e74 2027 2f74 6d70 2720 6973   point '/tmp' is
│ │ │ -001c6eb0: 206e 6f74 2065 7665 6e20 696e 202f 6574   not even in /et
│ │ │ -001c6ec0: 632f 6673 7461 622c 2073 6f20 7765 2063  c/fstab, so we c
│ │ │ -001c6ed0: 616e 2774 2073 6574 2075 7020 6d6f 756e  an't set up moun
│ │ │ -001c6ee0: 7420 6f70 7469 6f6e 7322 2026 6774 3b26  t options" >&
│ │ │ -001c6ef0: 616d 703b 323b 0a20 2020 2020 2020 2020  amp;2;.         
│ │ │ -001c6f00: 2020 2020 2020 2065 6368 6f20 224e 6f74         echo "Not
│ │ │ -001c6f10: 2072 656d 6564 6961 7469 6e67 2c20 6265   remediating, be
│ │ │ -001c6f20: 6361 7573 6520 7468 6572 6520 6973 206e  cause there is n
│ │ │ -001c6f30: 6f20 7265 636f 7264 206f 6620 2f74 6d70  o record of /tmp
│ │ │ -001c6f40: 2069 6e20 2f65 7463 2f66 7374 6162 2220   in /etc/fstab" 
│ │ │ -001c6f50: 2667 743b 2661 6d70 3b32 3b20 7265 7475  >&2; retu
│ │ │ -001c6f60: 726e 2031 3b20 7d0a 2020 2020 0a0a 0a20  rn 1; }.    ... 
│ │ │ -001c6f70: 2020 206d 6f75 6e74 5f70 6f69 6e74 5f6d     mount_point_m
│ │ │ -001c6f80: 6174 6368 5f72 6567 6578 703d 2224 2870  atch_regexp="$(p
│ │ │ -001c6f90: 7269 6e74 6620 225e 5b5b 3a73 7061 6365  rintf "^[[:space
│ │ │ -001c6fa0: 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061  :]]*[^#].*[[:spa
│ │ │ -001c6fb0: 6365 3a5d 5d25 735b 5b3a 7370 6163 653a  ce:]]%s[[:space:
│ │ │ -001c6fc0: 5d5d 2220 2f74 6d70 2922 0a0a 2020 2020  ]]" /tmp)"..    
│ │ │ -001c6fd0: 2320 4966 2074 6865 206d 6f75 6e74 2070  # If the mount p
│ │ │ -001c6fe0: 6f69 6e74 2069 7320 6e6f 7420 696e 202f  oint is not in /
│ │ │ -001c6ff0: 6574 632f 6673 7461 622c 2067 6574 2070  etc/fstab, get p
│ │ │ -001c7000: 7265 7669 6f75 7320 6d6f 756e 7420 6f70  revious mount op
│ │ │ -001c7010: 7469 6f6e 7320 6672 6f6d 202f 6574 632f  tions from /etc/
│ │ │ -001c7020: 6d74 6162 0a20 2020 2069 6620 2120 6772  mtab.    if ! gr
│ │ │ -001c7030: 6570 202d 7120 2224 6d6f 756e 745f 706f  ep -q "$mount_po
│ │ │ -001c7040: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001c7050: 2220 2f65 7463 2f66 7374 6162 3b20 7468  " /etc/fstab; th
│ │ │ -001c7060: 656e 0a20 2020 2020 2020 2023 2072 756e  en.        # run
│ │ │ -001c7070: 7469 6d65 206f 7074 7320 7769 7468 6f75  time opts withou
│ │ │ -001c7080: 7420 736f 6d65 2061 7574 6f6d 6174 6963  t some automatic
│ │ │ -001c7090: 206b 6572 6e65 6c2f 7573 6572 7370 6163   kernel/userspac
│ │ │ -001c70a0: 652d 6164 6465 6420 6465 6661 756c 7473  e-added defaults
│ │ │ -001c70b0: 0a20 2020 2020 2020 2070 7265 7669 6f75  .        previou
│ │ │ -001c70c0: 735f 6d6f 756e 745f 6f70 7473 3d24 2867  s_mount_opts=$(g
│ │ │ -001c70d0: 7265 7020 2224 6d6f 756e 745f 706f 696e  rep "$mount_poin
│ │ │ -001c70e0: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ -001c70f0: 2f65 7463 2f6d 7461 6220 7c20 6865 6164  /etc/mtab | head
│ │ │ -001c7100: 202d 3120 7c20 2061 776b 2027 7b70 7269   -1 |  awk '{pri
│ │ │ -001c7110: 6e74 2024 347d 2720 5c0a 2020 2020 2020  nt $4}' \.      
│ │ │ -001c7120: 2020 2020 2020 2020 2020 2020 2020 7c20                | 
│ │ │ -001c7130: 7365 6420 2d45 2022 732f 2872 777c 6465  sed -E "s/(rw|de
│ │ │ -001c7140: 6661 756c 7473 7c73 6563 6c61 6265 6c7c  faults|seclabel|
│ │ │ -001c7150: 6e6f 7375 6964 2928 2c7c 2429 2f2f 673b  nosuid)(,|$)//g;
│ │ │ -001c7160: 732f 2c24 2f2f 2229 0a20 2020 2020 2020  s/,$//").       
│ │ │ -001c7170: 205b 2022 2470 7265 7669 6f75 735f 6d6f   [ "$previous_mo
│ │ │ -001c7180: 756e 745f 6f70 7473 2220 5d20 2661 6d70  unt_opts" ] &
│ │ │ -001c7190: 3b26 616d 703b 2070 7265 7669 6f75 735f  ;& previous_
│ │ │ -001c71a0: 6d6f 756e 745f 6f70 7473 2b3d 222c 220a  mount_opts+=",".
│ │ │ -001c71b0: 2020 2020 2020 2020 2320 496e 2069 736f          # In iso
│ │ │ -001c71c0: 3936 3630 2066 696c 6573 7973 7465 6d73  9660 filesystems
│ │ │ -001c71d0: 206d 7461 6220 636f 756c 6420 6465 7363   mtab could desc
│ │ │ -001c71e0: 7269 6265 2061 2022 626c 6f63 6b73 697a  ribe a "blocksiz
│ │ │ -001c71f0: 6522 2076 616c 7565 2c20 7468 6973 2073  e" value, this s
│ │ │ -001c7200: 686f 756c 6420 6265 2072 6566 6c65 6374  hould be reflect
│ │ │ -001c7210: 6564 2069 6e0a 2020 2020 2020 2020 2320  ed in.        # 
│ │ │ -001c7220: 6673 7461 6220 6173 2022 626c 6f63 6b22  fstab as "block"
│ │ │ -001c7230: 2e20 2054 6865 206e 6578 7420 7661 7269  .  The next vari
│ │ │ -001c7240: 6162 6c65 2069 7320 746f 2073 6174 6973  able is to satis
│ │ │ -001c7250: 6679 2073 6865 6c6c 6368 6563 6b20 5343  fy shellcheck SC
│ │ │ -001c7260: 3230 3530 2e0a 2020 2020 2020 2020 6673  2050..        fs
│ │ │ -001c7270: 5f74 7970 653d 2222 0a20 2020 2020 2020  _type="".       
│ │ │ -001c7280: 2069 6620 5b20 2022 2466 735f 7479 7065   if [  "$fs_type
│ │ │ -001c7290: 2220 3d3d 2022 6973 6f39 3636 3022 205d  " == "iso9660" ]
│ │ │ -001c72a0: 203b 2074 6865 6e0a 2020 2020 2020 2020   ; then.        
│ │ │ -001c72b0: 2020 2020 7072 6576 696f 7573 5f6d 6f75      previous_mou
│ │ │ -001c72c0: 6e74 5f6f 7074 733d 2428 7365 6420 2773  nt_opts=$(sed 's
│ │ │ -001c72d0: 2f62 6c6f 636b 7369 7a65 3d2f 626c 6f63  /blocksize=/bloc
│ │ │ -001c72e0: 6b3d 2f27 2026 6c74 3b26 6c74 3b26 6c74  k=/' <<<
│ │ │ -001c72f0: 3b20 2224 7072 6576 696f 7573 5f6d 6f75  ; "$previous_mou
│ │ │ -001c7300: 6e74 5f6f 7074 7322 290a 2020 2020 2020  nt_opts").      
│ │ │ -001c7310: 2020 6669 0a20 2020 2020 2020 2065 6368    fi.        ech
│ │ │ -001c7320: 6f20 2220 2f74 6d70 2020 6465 6661 756c  o " /tmp  defaul
│ │ │ -001c7330: 7473 2c24 7b70 7265 7669 6f75 735f 6d6f  ts,${previous_mo
│ │ │ -001c7340: 756e 745f 6f70 7473 7d6e 6f73 7569 6420  unt_opts}nosuid 
│ │ │ -001c7350: 3020 3022 2026 6774 3b26 6774 3b20 2f65  0 0" >> /e
│ │ │ -001c7360: 7463 2f66 7374 6162 0a20 2020 2023 2049  tc/fstab.    # I
│ │ │ -001c7370: 6620 7468 6520 6d6f 756e 745f 6f70 7420  f the mount_opt 
│ │ │ -001c7380: 6f70 7469 6f6e 2069 7320 6e6f 7420 616c  option is not al
│ │ │ -001c7390: 7265 6164 7920 696e 2074 6865 206d 6f75  ready in the mou
│ │ │ -001c73a0: 6e74 2070 6f69 6e74 2773 202f 6574 632f  nt point's /etc/
│ │ │ -001c73b0: 6673 7461 6220 656e 7472 792c 2061 6464  fstab entry, add
│ │ │ -001c73c0: 2069 740a 2020 2020 656c 6966 2021 2067   it.    elif ! g
│ │ │ -001c73d0: 7265 7020 2224 6d6f 756e 745f 706f 696e  rep "$mount_poin
│ │ │ -001c73e0: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ -001c73f0: 2f65 7463 2f66 7374 6162 207c 2067 7265  /etc/fstab | gre
│ │ │ -001c7400: 7020 2d71 2022 6e6f 7375 6964 223b 2074  p -q "nosuid"; t
│ │ │ -001c7410: 6865 6e0a 2020 2020 2020 2020 7072 6576  hen.        prev
│ │ │ -001c7420: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d  ious_mount_opts=
│ │ │ -001c7430: 2428 6772 6570 2022 246d 6f75 6e74 5f70  $(grep "$mount_p
│ │ │ -001c7440: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001c7450: 7022 202f 6574 632f 6673 7461 6220 7c20  p" /etc/fstab | 
│ │ │ -001c7460: 6177 6b20 277b 7072 696e 7420 2434 7d27  awk '{print $4}'
│ │ │ -001c7470: 290a 2020 2020 2020 2020 7365 6420 2d69  ).        sed -i
│ │ │ -001c7480: 2022 737c 5c28 247b 6d6f 756e 745f 706f   "s|\(${mount_po
│ │ │ -001c7490: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001c74a0: 7d2e 2a24 7b70 7265 7669 6f75 735f 6d6f  }.*${previous_mo
│ │ │ -001c74b0: 756e 745f 6f70 7473 7d5c 297c 5c31 2c6e  unt_opts}\)|\1,n
│ │ │ -001c74c0: 6f73 7569 647c 2220 2f65 7463 2f66 7374  osuid|" /etc/fst
│ │ │ -001c74d0: 6162 0a20 2020 2066 690a 0a0a 2020 2020  ab.    fi...    
│ │ │ -001c74e0: 6966 206d 6b64 6972 202d 7020 222f 746d  if mkdir -p "/tm
│ │ │ -001c74f0: 7022 3b20 7468 656e 0a20 2020 2020 2020  p"; then.       
│ │ │ -001c7500: 2069 6620 6d6f 756e 7470 6f69 6e74 202d   if mountpoint -
│ │ │ -001c7510: 7120 222f 746d 7022 3b20 7468 656e 0a20  q "/tmp"; then. 
│ │ │ -001c7520: 2020 2020 2020 2020 2020 206d 6f75 6e74             mount
│ │ │ -001c7530: 202d 6f20 7265 6d6f 756e 7420 2d2d 7461   -o remount --ta
│ │ │ -001c7540: 7267 6574 2022 2f74 6d70 220a 2020 2020  rget "/tmp".    
│ │ │ -001c7550: 2020 2020 6669 0a20 2020 2066 690a 7d0a      fi.    fi.}.
│ │ │ -001c7560: 0a70 6572 666f 726d 5f72 656d 6564 6961  .perform_remedia
│ │ │ -001c7570: 7469 6f6e 0a0a 656c 7365 0a20 2020 2026  tion..else.    &
│ │ │ -001c7580: 6774 3b26 616d 703b 3220 6563 686f 2027  gt;&2 echo '
│ │ │ -001c7590: 5265 6d65 6469 6174 696f 6e20 6973 206e  Remediation is n
│ │ │ -001c75a0: 6f74 2061 7070 6c69 6361 626c 652c 206e  ot applicable, n
│ │ │ -001c75b0: 6f74 6869 6e67 2077 6173 2064 6f6e 6527  othing was done'
│ │ │ -001c75c0: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.

R │ │ │ -001c6af0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001c6b00: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c2f alse
│ │ │ +001c5020: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 < │ │ │ +001c5060: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +001c5070: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false< │ │ │ +001c50b0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ +001c50d0: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ +001c50e0: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ +001c50f0: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ +001c5100: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ +001c5110: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001c5120: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ +001c5130: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ +001c5140: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +001c5150: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001c5160: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ +001c5170: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001c5180: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ +001c5190: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ +001c51a0: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +001c51b0: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ +001c51c0: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ +001c51d0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ +001c51e0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ +001c51f0: 756e 745f 6f70 7469 6f6e 5f74 6d70 5f6e  unt_option_tmp_n
│ │ │ +001c5200: 6f73 7569 640a 2020 2d20 6e6f 5f72 6562  osuid.  - no_reb
│ │ │ +001c5210: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61  oot_needed..- na
│ │ │ +001c5220: 6d65 3a20 2741 6464 206e 6f73 7569 6420  me: 'Add nosuid 
│ │ │ +001c5230: 4f70 7469 6f6e 2074 6f20 2f74 6d70 3a20  Option to /tmp: 
│ │ │ +001c5240: 4368 6563 6b20 696e 666f 726d 6174 696f  Check informatio
│ │ │ +001c5250: 6e20 6173 736f 6369 6174 6564 2074 6f20  n associated to 
│ │ │ +001c5260: 6d6f 756e 7470 6f69 6e74 270a 2020 616e  mountpoint'.  an
│ │ │ +001c5270: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ +001c5280: 6d6d 616e 643a 2066 696e 646d 6e74 202d  mmand: findmnt -
│ │ │ +001c5290: 2d66 7374 6162 2027 2f74 6d70 270a 2020  -fstab '/tmp'.  
│ │ │ +001c52a0: 7265 6769 7374 6572 3a20 6465 7669 6365  register: device
│ │ │ +001c52b0: 5f6e 616d 650a 2020 6661 696c 6564 5f77  _name.  failed_w
│ │ │ +001c52c0: 6865 6e3a 2064 6576 6963 655f 6e61 6d65  hen: device_name
│ │ │ +001c52d0: 2e72 6320 2667 743b 2031 0a20 2063 6861  .rc > 1.  cha
│ │ │ +001c52e0: 6e67 6564 5f77 6865 6e3a 2066 616c 7365  nged_when: false
│ │ │ +001c52f0: 0a20 2063 6865 636b 5f6d 6f64 653a 2066  .  check_mode: f
│ │ │ +001c5300: 616c 7365 0a20 2077 6865 6e3a 0a20 202d  alse.  when:.  -
│ │ │ +001c5310: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ +001c5320: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001c5330: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001c5340: 2272 706d 2d6f 7374 7265 6522 2069 6e20  "rpm-ostree" in 
│ │ │ +001c5350: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001c5360: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ +001c5370: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ +001c5380: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001c5390: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ +001c53a0: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ +001c53b0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001c53c0: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ +001c53d0: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001c53e0: 6c65 5f70 726f 635f 636d 646c 696e 6520  le_proc_cmdline 
│ │ │ +001c53f0: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ +001c5400: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ +001c5410: 6f6e 5f74 7970 6520 696e 0a20 2020 205b  on_type in.    [
│ │ │ +001c5420: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ +001c5430: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ +001c5440: 616e 222c 2022 636f 6e74 6169 6e65 7222  an", "container"
│ │ │ +001c5450: 5d20 2920 290a 2020 2d20 2722 2f74 6d70  ] ) ).  - '"/tmp
│ │ │ +001c5460: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ +001c5470: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ +001c5480: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ +001c5490: 6973 7427 0a20 2074 6167 733a 0a20 202d  ist'.  tags:.  -
│ │ │ +001c54a0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001c54b0: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +001c54c0: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ +001c54d0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +001c54e0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001c54f0: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +001c5500: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +001c5510: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001c5520: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ +001c5530: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001c5540: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001c5550: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001c5560: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001c5570: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001c5580: 6e74 5f6f 7074 696f 6e5f 746d 705f 6e6f  nt_option_tmp_no
│ │ │ +001c5590: 7375 6964 0a20 202d 206e 6f5f 7265 626f  suid.  - no_rebo
│ │ │ +001c55a0: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +001c55b0: 653a 2027 4164 6420 6e6f 7375 6964 204f  e: 'Add nosuid O
│ │ │ +001c55c0: 7074 696f 6e20 746f 202f 746d 703a 2043  ption to /tmp: C
│ │ │ +001c55d0: 7265 6174 6520 6d6f 756e 745f 696e 666f  reate mount_info
│ │ │ +001c55e0: 2064 6963 7469 6f6e 6172 7920 7661 7269   dictionary vari
│ │ │ +001c55f0: 6162 6c65 270a 2020 7365 745f 6661 6374  able'.  set_fact
│ │ │ +001c5600: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ +001c5610: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001c5620: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d  |default({})|com
│ │ │ +001c5630: 6269 6e65 287b 6974 656d 2e30 3a20 6974  bine({item.0: it
│ │ │ +001c5640: 656d 2e31 7d29 207d 7d27 0a20 2077 6974  em.1}) }}'.  wit
│ │ │ +001c5650: 685f 746f 6765 7468 6572 3a0a 2020 2d20  h_together:.  - 
│ │ │ +001c5660: 277b 7b20 6465 7669 6365 5f6e 616d 652e  '{{ device_name.
│ │ │ +001c5670: 7374 646f 7574 5f6c 696e 6573 5b30 5d2e  stdout_lines[0].
│ │ │ +001c5680: 7370 6c69 7428 2920 7c20 6d61 7028 2727  split() | map(''
│ │ │ +001c5690: 6c6f 7765 7227 2729 207c 206c 6973 7420  lower'') | list 
│ │ │ +001c56a0: 7d7d 270a 2020 2d20 277b 7b20 6465 7669  }}'.  - '{{ devi
│ │ │ +001c56b0: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ +001c56c0: 696e 6573 5b31 5d2e 7370 6c69 7428 2920  ines[1].split() 
│ │ │ +001c56d0: 7c20 6c69 7374 207d 7d27 0a20 2077 6865  | list }}'.  whe
│ │ │ +001c56e0: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +001c56f0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001c5700: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001c5710: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ +001c5720: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ +001c5730: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001c5740: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ +001c5750: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001c5760: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ +001c5770: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +001c5780: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ +001c5790: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001c57a0: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ +001c57b0: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ +001c57c0: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ +001c57d0: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ +001c57e0: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ +001c57f0: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ +001c5800: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ +001c5810: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ +001c5820: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ +001c5830: 2722 2f74 6d70 2220 696e 2061 6e73 6962  '"/tmp" in ansib
│ │ │ +001c5840: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ +001c5850: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ +001c5860: 2229 207c 206c 6973 7427 0a20 202d 2064  ") | list'.  - d
│ │ │ +001c5870: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001c5880: 7420 6973 2064 6566 696e 6564 2061 6e64  t is defined and
│ │ │ +001c5890: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +001c58a0: 6f75 745f 6c69 6e65 7320 6973 2064 6566  out_lines is def
│ │ │ +001c58b0: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ +001c58c0: 5f6e 616d 652e 7374 646f 7574 207c 206c  _name.stdout | l
│ │ │ +001c58d0: 656e 6774 6820 2667 743b 2030 290a 2020  ength > 0).  
│ │ │ +001c58e0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +001c58f0: 3030 2d35 332d 4143 2d36 0a20 202d 204e  00-53-AC-6.  - N
│ │ │ +001c5900: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ +001c5910: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ +001c5920: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ +001c5930: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001c5940: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001c5950: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ +001c5960: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ +001c5970: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +001c5980: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +001c5990: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +001c59a0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +001c59b0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001c59c0: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ +001c59d0: 6f6e 5f74 6d70 5f6e 6f73 7569 640a 2020  on_tmp_nosuid.  
│ │ │ +001c59e0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001c59f0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ +001c5a00: 206e 6f73 7569 6420 4f70 7469 6f6e 2074   nosuid Option t
│ │ │ +001c5a10: 6f20 2f74 6d70 3a20 4966 202f 746d 7020  o /tmp: If /tmp 
│ │ │ +001c5a20: 6e6f 7420 6d6f 756e 7465 642c 2063 7261  not mounted, cra
│ │ │ +001c5a30: 6674 206d 6f75 6e74 5f69 6e66 6f20 6d61  ft mount_info ma
│ │ │ +001c5a40: 6e75 616c 6c79 270a 2020 7365 745f 6661  nually'.  set_fa
│ │ │ +001c5a50: 6374 3a0a 2020 2020 6d6f 756e 745f 696e  ct:.    mount_in
│ │ │ +001c5a60: 666f 3a20 277b 7b20 6d6f 756e 745f 696e  fo: '{{ mount_in
│ │ │ +001c5a70: 666f 7c64 6566 6175 6c74 287b 7d29 7c63  fo|default({})|c
│ │ │ +001c5a80: 6f6d 6269 6e65 287b 6974 656d 2e30 3a20  ombine({item.0: 
│ │ │ +001c5a90: 6974 656d 2e31 7d29 207d 7d27 0a20 2077  item.1}) }}'.  w
│ │ │ +001c5aa0: 6974 685f 746f 6765 7468 6572 3a0a 2020  ith_together:.  
│ │ │ +001c5ab0: 2d20 2d20 7461 7267 6574 0a20 2020 202d  - - target.    -
│ │ │ +001c5ac0: 2073 6f75 7263 650a 2020 2020 2d20 6673   source.    - fs
│ │ │ +001c5ad0: 7479 7065 0a20 2020 202d 206f 7074 696f  type.    - optio
│ │ │ +001c5ae0: 6e73 0a20 202d 202d 202f 746d 700a 2020  ns.  - - /tmp.  
│ │ │ +001c5af0: 2020 2d20 2727 0a20 2020 202d 2027 270a    - ''.    - ''.
│ │ │ +001c5b00: 2020 2020 2d20 6465 6661 756c 7473 0a20      - defaults. 
│ │ │ +001c5b10: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ +001c5b20: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ +001c5b30: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001c5b40: 6b61 6765 7320 616e 6420 2272 706d 2d6f  kages and "rpm-o
│ │ │ +001c5b50: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001c5b60: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001c5b70: 0a20 2020 2061 6e64 2022 626f 6f74 6322  .    and "bootc"
│ │ │ +001c5b80: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001c5b90: 732e 7061 636b 6167 6573 2061 6e64 206e  s.packages and n
│ │ │ +001c5ba0: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ +001c5bb0: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ +001c5bc0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001c5bd0: 0a20 2020 2061 6e64 2022 6f73 7472 6565  .    and "ostree
│ │ │ +001c5be0: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ +001c5bf0: 635f 636d 646c 696e 6520 2920 616e 6420  c_cmdline ) and 
│ │ │ +001c5c00: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ +001c5c10: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ +001c5c20: 6520 696e 0a20 2020 205b 2264 6f63 6b65  e in.    ["docke
│ │ │ +001c5c30: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ +001c5c40: 767a 222c 2022 706f 646d 616e 222c 2022  vz", "podman", "
│ │ │ +001c5c50: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ +001c5c60: 2020 2d20 2722 2f74 6d70 2220 696e 2061    - '"/tmp" in a
│ │ │ +001c5c70: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ +001c5c80: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ +001c5c90: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ +001c5ca0: 202d 2028 222d 2d66 7374 6162 2220 7c20   - ("--fstab" | 
│ │ │ +001c5cb0: 6c65 6e67 7468 203d 3d20 3029 0a20 202d  length == 0).  -
│ │ │ +001c5cc0: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +001c5cd0: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ +001c5ce0: 6e64 2064 6576 6963 655f 6e61 6d65 2e73  nd device_name.s
│ │ │ +001c5cf0: 7464 6f75 745f 6c69 6e65 7320 6973 2064  tdout_lines is d
│ │ │ +001c5d00: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ +001c5d10: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ +001c5d20: 206c 656e 6774 6820 3d3d 2030 290a 2020   length == 0).  
│ │ │ +001c5d30: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +001c5d40: 3030 2d35 332d 4143 2d36 0a20 202d 204e  00-53-AC-6.  - N
│ │ │ +001c5d50: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ +001c5d60: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ +001c5d70: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ +001c5d80: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001c5d90: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001c5da0: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ +001c5db0: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ +001c5dc0: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +001c5dd0: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +001c5de0: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +001c5df0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +001c5e00: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001c5e10: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ +001c5e20: 6f6e 5f74 6d70 5f6e 6f73 7569 640a 2020  on_tmp_nosuid.  
│ │ │ +001c5e30: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001c5e40: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ +001c5e50: 206e 6f73 7569 6420 4f70 7469 6f6e 2074   nosuid Option t
│ │ │ +001c5e60: 6f20 2f74 6d70 3a20 4d61 6b65 2073 7572  o /tmp: Make sur
│ │ │ +001c5e70: 6520 6e6f 7375 6964 206f 7074 696f 6e20  e nosuid option 
│ │ │ +001c5e80: 6973 2070 6172 7420 6f66 2074 6865 2074  is part of the t
│ │ │ +001c5e90: 6f20 2f74 6d70 0a20 2020 206f 7074 696f  o /tmp.    optio
│ │ │ +001c5ea0: 6e73 270a 2020 7365 745f 6661 6374 3a0a  ns'.  set_fact:.
│ │ │ +001c5eb0: 2020 2020 6d6f 756e 745f 696e 666f 3a20      mount_info: 
│ │ │ +001c5ec0: 277b 7b20 6d6f 756e 745f 696e 666f 207c  '{{ mount_info |
│ │ │ +001c5ed0: 2063 6f6d 6269 6e65 2820 7b27 276f 7074   combine( {''opt
│ │ │ +001c5ee0: 696f 6e73 2727 3a27 2727 277e 286d 6f75  ions'':''''~(mou
│ │ │ +001c5ef0: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ +001c5f00: 7c0a 2020 2020 2020 6465 6661 756c 7428  |.      default(
│ │ │ +001c5f10: 2727 2727 2929 7e28 2727 2c27 2720 6966  ''''))~('','' if
│ │ │ +001c5f20: 2028 6d6f 756e 745f 696e 666f 2e6f 7074   (mount_info.opt
│ │ │ +001c5f30: 696f 6e73 207c 2064 6566 6175 6c74 2827  ions | default('
│ │ │ +001c5f40: 2727 2729 2920 656c 7365 2027 2727 2729  ''')) else '''')
│ │ │ +001c5f50: 7e27 276e 6f73 7569 6427 270a 2020 2020  ~''nosuid''.    
│ │ │ +001c5f60: 2020 7d29 207d 7d27 0a20 2077 6865 6e3a    }) }}'.  when:
│ │ │ +001c5f70: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ +001c5f80: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +001c5f90: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001c5fa0: 616e 6420 2272 706d 2d6f 7374 7265 6522  and "rpm-ostree"
│ │ │ +001c5fb0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001c5fc0: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001c5fd0: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ +001c5fe0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001c5ff0: 6167 6573 2061 6e64 206e 6f74 2022 6f70  ages and not "op
│ │ │ +001c6000: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ +001c6010: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001c6020: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001c6030: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ +001c6040: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ +001c6050: 696e 6520 2920 616e 6420 6e6f 7420 2820  ine ) and not ( 
│ │ │ +001c6060: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ +001c6070: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20  zation_type in. 
│ │ │ +001c6080: 2020 205b 2264 6f63 6b65 7222 2c20 226c     ["docker", "l
│ │ │ +001c6090: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ +001c60a0: 706f 646d 616e 222c 2022 636f 6e74 6169  podman", "contai
│ │ │ +001c60b0: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ +001c60c0: 2f74 6d70 2220 696e 2061 6e73 6962 6c65  /tmp" in ansible
│ │ │ +001c60d0: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ +001c60e0: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ +001c60f0: 207c 206c 6973 7427 0a20 202d 206d 6f75   | list'.  - mou
│ │ │ +001c6100: 6e74 5f69 6e66 6f20 6973 2064 6566 696e  nt_info is defin
│ │ │ +001c6110: 6564 2061 6e64 2022 6e6f 7375 6964 2220  ed and "nosuid" 
│ │ │ +001c6120: 6e6f 7420 696e 2028 6d6f 756e 745f 696e  not in (mount_in
│ │ │ +001c6130: 666f 2e6f 7074 696f 6e73 207c 2064 6566  fo.options | def
│ │ │ +001c6140: 6175 6c74 2827 2729 290a 2020 7461 6773  ault('')).  tags
│ │ │ +001c6150: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +001c6160: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ +001c6170: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ +001c6180: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001c6190: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ +001c61a0: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ +001c61b0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001c61c0: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ +001c61d0: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ +001c61e0: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +001c61f0: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +001c6200: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +001c6210: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +001c6220: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001c6230: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f74  - mount_option_t
│ │ │ +001c6240: 6d70 5f6e 6f73 7569 640a 2020 2d20 6e6f  mp_nosuid.  - no
│ │ │ +001c6250: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +001c6260: 2d20 6e61 6d65 3a20 2741 6464 206e 6f73  - name: 'Add nos
│ │ │ +001c6270: 7569 6420 4f70 7469 6f6e 2074 6f20 2f74  uid Option to /t
│ │ │ +001c6280: 6d70 3a20 456e 7375 7265 202f 746d 7020  mp: Ensure /tmp 
│ │ │ +001c6290: 6973 206d 6f75 6e74 6564 2077 6974 6820  is mounted with 
│ │ │ +001c62a0: 6e6f 7375 6964 206f 7074 696f 6e27 0a20  nosuid option'. 
│ │ │ +001c62b0: 2061 6e73 6962 6c65 2e70 6f73 6978 2e6d   ansible.posix.m
│ │ │ +001c62c0: 6f75 6e74 3a0a 2020 2020 7061 7468 3a20  ount:.    path: 
│ │ │ +001c62d0: 2f74 6d70 0a20 2020 2073 7263 3a20 277b  /tmp.    src: '{
│ │ │ +001c62e0: 7b20 6d6f 756e 745f 696e 666f 2e73 6f75  { mount_info.sou
│ │ │ +001c62f0: 7263 6520 7c20 6465 6661 756c 7428 2727  rce | default(''
│ │ │ +001c6300: 2727 2920 7d7d 270a 2020 2020 6f70 7473  '') }}'.    opts
│ │ │ +001c6310: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001c6320: 2e6f 7074 696f 6e73 207c 2064 6566 6175  .options | defau
│ │ │ +001c6330: 6c74 2827 2727 2729 207d 7d27 0a20 2020  lt('''') }}'.   
│ │ │ +001c6340: 2073 7461 7465 3a20 6d6f 756e 7465 640a   state: mounted.
│ │ │ +001c6350: 2020 2020 6673 7479 7065 3a20 277b 7b20      fstype: '{{ 
│ │ │ +001c6360: 6d6f 756e 745f 696e 666f 2e66 7374 7970  mount_info.fstyp
│ │ │ +001c6370: 6520 7c20 6465 6661 756c 7428 2727 2727  e | default(''''
│ │ │ +001c6380: 2920 7d7d 270a 2020 7265 6769 7374 6572  ) }}'.  register
│ │ │ +001c6390: 3a20 6d6f 756e 745f 7265 7375 6c74 0a20  : mount_result. 
│ │ │ +001c63a0: 2066 6169 6c65 645f 7768 656e 3a0a 2020   failed_when:.  
│ │ │ +001c63b0: 2d20 6d6f 756e 745f 7265 7375 6c74 2069  - mount_result i
│ │ │ +001c63c0: 7320 6661 696c 6564 0a20 202d 2027 2727  s failed.  - '''
│ │ │ +001c63d0: 7461 7267 6574 2069 7320 6275 7379 2727  target is busy''
│ │ │ +001c63e0: 206e 6f74 2069 6e20 286d 6f75 6e74 5f72   not in (mount_r
│ │ │ +001c63f0: 6573 756c 742e 6d73 6720 7c20 6465 6661  esult.msg | defa
│ │ │ +001c6400: 756c 7428 2727 2727 2929 270a 2020 2d20  ult(''''))'.  - 
│ │ │ +001c6410: 2727 2761 6c72 6561 6479 206d 6f75 6e74  '''already mount
│ │ │ +001c6420: 6564 2727 206e 6f74 2069 6e20 286d 6f75  ed'' not in (mou
│ │ │ +001c6430: 6e74 5f72 6573 756c 742e 6d73 6720 7c20  nt_result.msg | 
│ │ │ +001c6440: 6465 6661 756c 7428 2727 2727 2929 270a  default(''''))'.
│ │ │ +001c6450: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ +001c6460: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ +001c6470: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001c6480: 636b 6167 6573 2061 6e64 2022 7270 6d2d  ckages and "rpm-
│ │ │ +001c6490: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001c64a0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001c64b0: 730a 2020 2020 616e 6420 2262 6f6f 7463  s.    and "bootc
│ │ │ +001c64c0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001c64d0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001c64e0: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ +001c64f0: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ +001c6500: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001c6510: 730a 2020 2020 616e 6420 226f 7374 7265  s.    and "ostre
│ │ │ +001c6520: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ +001c6530: 6f63 5f63 6d64 6c69 6e65 2029 2061 6e64  oc_cmdline ) and
│ │ │ +001c6540: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ +001c6550: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ +001c6560: 7065 2069 6e0a 2020 2020 5b22 646f 636b  pe in.    ["dock
│ │ │ +001c6570: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ +001c6580: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c20  nvz", "podman", 
│ │ │ +001c6590: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ +001c65a0: 0a20 202d 2027 222f 746d 7022 2069 6e20  .  - '"/tmp" in 
│ │ │ +001c65b0: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ +001c65c0: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ +001c65d0: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ +001c65e0: 2020 2d20 6d6f 756e 745f 696e 666f 2069    - mount_info i
│ │ │ +001c65f0: 7320 6465 6669 6e65 640a 2020 2d20 2864  s defined.  - (d
│ │ │ +001c6600: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001c6610: 7420 6973 2064 6566 696e 6564 2061 6e64  t is defined and
│ │ │ +001c6620: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ +001c6630: 646f 7574 207c 206c 656e 6774 6820 2667  dout | length &g
│ │ │ +001c6640: 743b 2030 2929 206f 7220 2822 2d2d 6673  t; 0)) or ("--fs
│ │ │ +001c6650: 7461 6222 0a20 2020 207c 206c 656e 6774  tab".    | lengt
│ │ │ +001c6660: 6820 3d3d 2030 290a 2020 7461 6773 3a0a  h == 0).  tags:.
│ │ │ +001c6670: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001c6680: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ +001c6690: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ +001c66a0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001c66b0: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ +001c66c0: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ +001c66d0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001c66e0: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ +001c66f0: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ +001c6700: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001c6710: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001c6720: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001c6730: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001c6740: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001c6750: 6d6f 756e 745f 6f70 7469 6f6e 5f74 6d70  mount_option_tmp
│ │ │ +001c6760: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ +001c6770: 6562 6f6f 745f 6e65 6564 6564 0a3c 2f63  eboot_needed.
│ │ │ +001c6790: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +001c6830: 6564 6961 7469 6f6e 2053 6865 6c6c 2073 ediation Shell s │ │ │ +001c6840: 6372 6970 7420 e287 b23c 2f61 3e3c 6272 cript ...
│ │ │ +001c5010: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +001c5040: 696f 6e3a 3c2f 7468 3e3c 7464 3e68 6967 ion:hig │ │ │ +001c5050: 683c 2f74 643e 3c2f 7472 3e3c 7472 3e3c h
Strate │ │ │ +001c5090: 6779 3a3c 2f74 683e 3c74 643e 636f 6e66 gy:conf │ │ │ +001c50a0: 6967 7572 653c 2f74 643e 3c2f 7472 3e3c igure
# R
│ │ │ +001c6900: 656d 6564 6961 7469 6f6e 2069 7320 6170  emediation is ap
│ │ │ +001c6910: 706c 6963 6162 6c65 206f 6e6c 7920 696e  plicable only in
│ │ │ +001c6920: 2063 6572 7461 696e 2070 6c61 7466 6f72   certain platfor
│ │ │ +001c6930: 6d73 0a69 6620 2820 2120 2820 7b20 7270  ms.if ( ! ( { rp
│ │ │ +001c6940: 6d20 2d2d 7175 6965 7420 2d71 206b 6572  m --quiet -q ker
│ │ │ +001c6950: 6e65 6c20 3b7d 2026 616d 703b 2661 6d70  nel ;} &&
│ │ │ +001c6960: 3b20 7b20 7270 6d20 2d2d 7175 6965 7420  ; { rpm --quiet 
│ │ │ +001c6970: 2d71 2072 706d 2d6f 7374 7265 6520 3b7d  -q rpm-ostree ;}
│ │ │ +001c6980: 2026 616d 703b 2661 6d70 3b20 7b20 7270   && { rp
│ │ │ +001c6990: 6d20 2d2d 7175 6965 7420 2d71 2062 6f6f  m --quiet -q boo
│ │ │ +001c69a0: 7463 203b 7d20 2661 6d70 3b26 616d 703b  tc ;} &&
│ │ │ +001c69b0: 207b 2021 2072 706d 202d 2d71 7569 6574   { ! rpm --quiet
│ │ │ +001c69c0: 202d 7120 6f70 656e 7368 6966 742d 6b75   -q openshift-ku
│ │ │ +001c69d0: 6265 6c65 7420 3b7d 2026 616d 703b 2661  belet ;} &&a
│ │ │ +001c69e0: 6d70 3b20 285b 202d 6620 2f72 756e 2f6f  mp; ([ -f /run/o
│ │ │ +001c69f0: 7374 7265 652d 626f 6f74 6564 205d 207c  stree-booted ] |
│ │ │ +001c6a00: 7c20 5b20 2d4c 202f 6f73 7472 6565 205d  | [ -L /ostree ]
│ │ │ +001c6a10: 2920 2920 2661 6d70 3b26 616d 703b 2021  ) ) && !
│ │ │ +001c6a20: 2028 205b 202d 6620 2f2e 646f 636b 6572   ( [ -f /.docker
│ │ │ +001c6a30: 656e 7620 5d20 7c7c 205b 202d 6620 2f72  env ] || [ -f /r
│ │ │ +001c6a40: 756e 2f2e 636f 6e74 6169 6e65 7265 6e76  un/.containerenv
│ │ │ +001c6a50: 205d 2029 2029 2026 616d 703b 2661 6d70   ] ) ) &&
│ │ │ +001c6a60: 3b20 7b20 2820 6669 6e64 6d6e 7420 2d2d  ; { ( findmnt --
│ │ │ +001c6a70: 6b65 726e 656c 2022 2f74 6d70 2220 2667  kernel "/tmp" &g
│ │ │ +001c6a80: 743b 202f 6465 762f 6e75 6c6c 207c 7c20  t; /dev/null || 
│ │ │ +001c6a90: 6669 6e64 6d6e 7420 2d2d 6673 7461 6220  findmnt --fstab 
│ │ │ +001c6aa0: 222f 746d 7022 2026 6774 3b20 2f64 6576  "/tmp" > /dev
│ │ │ +001c6ab0: 2f6e 756c 6c20 293b 207d 3b20 7468 656e  /null ); }; then
│ │ │ +001c6ac0: 0a0a 6675 6e63 7469 6f6e 2070 6572 666f  ..function perfo
│ │ │ +001c6ad0: 726d 5f72 656d 6564 6961 7469 6f6e 207b  rm_remediation {
│ │ │ +001c6ae0: 0a0a 2020 2020 0a20 2020 2020 2020 2023  ..    .        #
│ │ │ +001c6af0: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ +001c6b00: 202f 746d 7020 6861 7320 746f 2062 6520   /tmp has to be 
│ │ │ +001c6b10: 6465 6669 6e65 6420 696e 202f 6574 632f  defined in /etc/
│ │ │ +001c6b20: 6673 7461 620a 2020 2020 2020 2020 2320  fstab.        # 
│ │ │ +001c6b30: 6265 666f 7265 2074 6869 7320 7265 6d65  before this reme
│ │ │ +001c6b40: 6469 6174 696f 6e20 6361 6e20 6265 2065  diation can be e
│ │ │ +001c6b50: 7865 6375 7465 642e 2049 6e20 6361 7365  xecuted. In case
│ │ │ +001c6b60: 2069 7420 6973 206e 6f74 2064 6566 696e   it is not defin
│ │ │ +001c6b70: 6564 2c20 7468 650a 2020 2020 2020 2020  ed, the.        
│ │ │ +001c6b80: 2320 7265 6d65 6469 6174 696f 6e20 6162  # remediation ab
│ │ │ +001c6b90: 6f72 7473 2061 6e64 206e 6f20 6368 616e  orts and no chan
│ │ │ +001c6ba0: 6765 7320 7265 6761 7264 696e 6720 7468  ges regarding th
│ │ │ +001c6bb0: 6520 6d6f 756e 7420 706f 696e 7420 6172  e mount point ar
│ │ │ +001c6bc0: 6520 646f 6e65 2e0a 2020 2020 2020 2020  e done..        
│ │ │ +001c6bd0: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001c6be0: 685f 7265 6765 7870 3d22 2428 7072 696e  h_regexp="$(prin
│ │ │ +001c6bf0: 7466 2022 5e5b 5b3a 7370 6163 653a 5d5d  tf "^[[:space:]]
│ │ │ +001c6c00: 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163 653a  *[^#].*[[:space:
│ │ │ +001c6c10: 5d5d 2573 5b5b 3a73 7061 6365 3a5d 5d22  ]]%s[[:space:]]"
│ │ │ +001c6c20: 2022 2f74 6d70 2229 220a 0a20 2020 2067   "/tmp")"..    g
│ │ │ +001c6c30: 7265 7020 2224 6d6f 756e 745f 706f 696e  rep "$mount_poin
│ │ │ +001c6c40: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ +001c6c50: 2d71 202f 6574 632f 6673 7461 6220 5c0a  -q /etc/fstab \.
│ │ │ +001c6c60: 2020 2020 2020 2020 7c7c 207b 2065 6368          || { ech
│ │ │ +001c6c70: 6f20 2254 6865 206d 6f75 6e74 2070 6f69  o "The mount poi
│ │ │ +001c6c80: 6e74 2027 2f74 6d70 2720 6973 206e 6f74  nt '/tmp' is not
│ │ │ +001c6c90: 2065 7665 6e20 696e 202f 6574 632f 6673   even in /etc/fs
│ │ │ +001c6ca0: 7461 622c 2073 6f20 7765 2063 616e 2774  tab, so we can't
│ │ │ +001c6cb0: 2073 6574 2075 7020 6d6f 756e 7420 6f70   set up mount op
│ │ │ +001c6cc0: 7469 6f6e 7322 2026 6774 3b26 616d 703b  tions" >&
│ │ │ +001c6cd0: 323b 0a20 2020 2020 2020 2020 2020 2020  2;.             
│ │ │ +001c6ce0: 2020 2065 6368 6f20 224e 6f74 2072 656d     echo "Not rem
│ │ │ +001c6cf0: 6564 6961 7469 6e67 2c20 6265 6361 7573  ediating, becaus
│ │ │ +001c6d00: 6520 7468 6572 6520 6973 206e 6f20 7265  e there is no re
│ │ │ +001c6d10: 636f 7264 206f 6620 2f74 6d70 2069 6e20  cord of /tmp in 
│ │ │ +001c6d20: 2f65 7463 2f66 7374 6162 2220 2667 743b  /etc/fstab" >
│ │ │ +001c6d30: 2661 6d70 3b32 3b20 7265 7475 726e 2031  &2; return 1
│ │ │ +001c6d40: 3b20 7d0a 2020 2020 0a0a 0a20 2020 206d  ; }.    ...    m
│ │ │ +001c6d50: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001c6d60: 5f72 6567 6578 703d 2224 2870 7269 6e74  _regexp="$(print
│ │ │ +001c6d70: 6620 225e 5b5b 3a73 7061 6365 3a5d 5d2a  f "^[[:space:]]*
│ │ │ +001c6d80: 5b5e 235d 2e2a 5b5b 3a73 7061 6365 3a5d  [^#].*[[:space:]
│ │ │ +001c6d90: 5d25 735b 5b3a 7370 6163 653a 5d5d 2220  ]%s[[:space:]]" 
│ │ │ +001c6da0: 2f74 6d70 2922 0a0a 2020 2020 2320 4966  /tmp)"..    # If
│ │ │ +001c6db0: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ +001c6dc0: 2069 7320 6e6f 7420 696e 202f 6574 632f   is not in /etc/
│ │ │ +001c6dd0: 6673 7461 622c 2067 6574 2070 7265 7669  fstab, get previ
│ │ │ +001c6de0: 6f75 7320 6d6f 756e 7420 6f70 7469 6f6e  ous mount option
│ │ │ +001c6df0: 7320 6672 6f6d 202f 6574 632f 6d74 6162  s from /etc/mtab
│ │ │ +001c6e00: 0a20 2020 2069 6620 2120 6772 6570 202d  .    if ! grep -
│ │ │ +001c6e10: 7120 2224 6d6f 756e 745f 706f 696e 745f  q "$mount_point_
│ │ │ +001c6e20: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ +001c6e30: 7463 2f66 7374 6162 3b20 7468 656e 0a20  tc/fstab; then. 
│ │ │ +001c6e40: 2020 2020 2020 2023 2072 756e 7469 6d65         # runtime
│ │ │ +001c6e50: 206f 7074 7320 7769 7468 6f75 7420 736f   opts without so
│ │ │ +001c6e60: 6d65 2061 7574 6f6d 6174 6963 206b 6572  me automatic ker
│ │ │ +001c6e70: 6e65 6c2f 7573 6572 7370 6163 652d 6164  nel/userspace-ad
│ │ │ +001c6e80: 6465 6420 6465 6661 756c 7473 0a20 2020  ded defaults.   
│ │ │ +001c6e90: 2020 2020 2070 7265 7669 6f75 735f 6d6f       previous_mo
│ │ │ +001c6ea0: 756e 745f 6f70 7473 3d24 2867 7265 7020  unt_opts=$(grep 
│ │ │ +001c6eb0: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ +001c6ec0: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ +001c6ed0: 2f6d 7461 6220 7c20 6865 6164 202d 3120  /mtab | head -1 
│ │ │ +001c6ee0: 7c20 2061 776b 2027 7b70 7269 6e74 2024  |  awk '{print $
│ │ │ +001c6ef0: 347d 2720 5c0a 2020 2020 2020 2020 2020  4}' \.          
│ │ │ +001c6f00: 2020 2020 2020 2020 2020 7c20 7365 6420            | sed 
│ │ │ +001c6f10: 2d45 2022 732f 2872 777c 6465 6661 756c  -E "s/(rw|defaul
│ │ │ +001c6f20: 7473 7c73 6563 6c61 6265 6c7c 6e6f 7375  ts|seclabel|nosu
│ │ │ +001c6f30: 6964 2928 2c7c 2429 2f2f 673b 732f 2c24  id)(,|$)//g;s/,$
│ │ │ +001c6f40: 2f2f 2229 0a20 2020 2020 2020 205b 2022  //").        [ "
│ │ │ +001c6f50: 2470 7265 7669 6f75 735f 6d6f 756e 745f  $previous_mount_
│ │ │ +001c6f60: 6f70 7473 2220 5d20 2661 6d70 3b26 616d  opts" ] &&am
│ │ │ +001c6f70: 703b 2070 7265 7669 6f75 735f 6d6f 756e  p; previous_moun
│ │ │ +001c6f80: 745f 6f70 7473 2b3d 222c 220a 2020 2020  t_opts+=",".    
│ │ │ +001c6f90: 2020 2020 2320 496e 2069 736f 3936 3630      # In iso9660
│ │ │ +001c6fa0: 2066 696c 6573 7973 7465 6d73 206d 7461   filesystems mta
│ │ │ +001c6fb0: 6220 636f 756c 6420 6465 7363 7269 6265  b could describe
│ │ │ +001c6fc0: 2061 2022 626c 6f63 6b73 697a 6522 2076   a "blocksize" v
│ │ │ +001c6fd0: 616c 7565 2c20 7468 6973 2073 686f 756c  alue, this shoul
│ │ │ +001c6fe0: 6420 6265 2072 6566 6c65 6374 6564 2069  d be reflected i
│ │ │ +001c6ff0: 6e0a 2020 2020 2020 2020 2320 6673 7461  n.        # fsta
│ │ │ +001c7000: 6220 6173 2022 626c 6f63 6b22 2e20 2054  b as "block".  T
│ │ │ +001c7010: 6865 206e 6578 7420 7661 7269 6162 6c65  he next variable
│ │ │ +001c7020: 2069 7320 746f 2073 6174 6973 6679 2073   is to satisfy s
│ │ │ +001c7030: 6865 6c6c 6368 6563 6b20 5343 3230 3530  hellcheck SC2050
│ │ │ +001c7040: 2e0a 2020 2020 2020 2020 6673 5f74 7970  ..        fs_typ
│ │ │ +001c7050: 653d 2222 0a20 2020 2020 2020 2069 6620  e="".        if 
│ │ │ +001c7060: 5b20 2022 2466 735f 7479 7065 2220 3d3d  [  "$fs_type" ==
│ │ │ +001c7070: 2022 6973 6f39 3636 3022 205d 203b 2074   "iso9660" ] ; t
│ │ │ +001c7080: 6865 6e0a 2020 2020 2020 2020 2020 2020  hen.            
│ │ │ +001c7090: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001c70a0: 7074 733d 2428 7365 6420 2773 2f62 6c6f  pts=$(sed 's/blo
│ │ │ +001c70b0: 636b 7369 7a65 3d2f 626c 6f63 6b3d 2f27  cksize=/block=/'
│ │ │ +001c70c0: 2026 6c74 3b26 6c74 3b26 6c74 3b20 2224   <<< "$
│ │ │ +001c70d0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001c70e0: 7074 7322 290a 2020 2020 2020 2020 6669  pts").        fi
│ │ │ +001c70f0: 0a20 2020 2020 2020 2065 6368 6f20 2220  .        echo " 
│ │ │ +001c7100: 2f74 6d70 2020 6465 6661 756c 7473 2c24  /tmp  defaults,$
│ │ │ +001c7110: 7b70 7265 7669 6f75 735f 6d6f 756e 745f  {previous_mount_
│ │ │ +001c7120: 6f70 7473 7d6e 6f73 7569 6420 3020 3022  opts}nosuid 0 0"
│ │ │ +001c7130: 2026 6774 3b26 6774 3b20 2f65 7463 2f66   >> /etc/f
│ │ │ +001c7140: 7374 6162 0a20 2020 2023 2049 6620 7468  stab.    # If th
│ │ │ +001c7150: 6520 6d6f 756e 745f 6f70 7420 6f70 7469  e mount_opt opti
│ │ │ +001c7160: 6f6e 2069 7320 6e6f 7420 616c 7265 6164  on is not alread
│ │ │ +001c7170: 7920 696e 2074 6865 206d 6f75 6e74 2070  y in the mount p
│ │ │ +001c7180: 6f69 6e74 2773 202f 6574 632f 6673 7461  oint's /etc/fsta
│ │ │ +001c7190: 6220 656e 7472 792c 2061 6464 2069 740a  b entry, add it.
│ │ │ +001c71a0: 2020 2020 656c 6966 2021 2067 7265 7020      elif ! grep 
│ │ │ +001c71b0: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ +001c71c0: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ +001c71d0: 2f66 7374 6162 207c 2067 7265 7020 2d71  /fstab | grep -q
│ │ │ +001c71e0: 2022 6e6f 7375 6964 223b 2074 6865 6e0a   "nosuid"; then.
│ │ │ +001c71f0: 2020 2020 2020 2020 7072 6576 696f 7573          previous
│ │ │ +001c7200: 5f6d 6f75 6e74 5f6f 7074 733d 2428 6772  _mount_opts=$(gr
│ │ │ +001c7210: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ +001c7220: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ +001c7230: 6574 632f 6673 7461 6220 7c20 6177 6b20  etc/fstab | awk 
│ │ │ +001c7240: 277b 7072 696e 7420 2434 7d27 290a 2020  '{print $4}').  
│ │ │ +001c7250: 2020 2020 2020 7365 6420 2d69 2022 737c        sed -i "s|
│ │ │ +001c7260: 5c28 247b 6d6f 756e 745f 706f 696e 745f  \(${mount_point_
│ │ │ +001c7270: 6d61 7463 685f 7265 6765 7870 7d2e 2a24  match_regexp}.*$
│ │ │ +001c7280: 7b70 7265 7669 6f75 735f 6d6f 756e 745f  {previous_mount_
│ │ │ +001c7290: 6f70 7473 7d5c 297c 5c31 2c6e 6f73 7569  opts}\)|\1,nosui
│ │ │ +001c72a0: 647c 2220 2f65 7463 2f66 7374 6162 0a20  d|" /etc/fstab. 
│ │ │ +001c72b0: 2020 2066 690a 0a0a 2020 2020 6966 206d     fi...    if m
│ │ │ +001c72c0: 6b64 6972 202d 7020 222f 746d 7022 3b20  kdir -p "/tmp"; 
│ │ │ +001c72d0: 7468 656e 0a20 2020 2020 2020 2069 6620  then.        if 
│ │ │ +001c72e0: 6d6f 756e 7470 6f69 6e74 202d 7120 222f  mountpoint -q "/
│ │ │ +001c72f0: 746d 7022 3b20 7468 656e 0a20 2020 2020  tmp"; then.     
│ │ │ +001c7300: 2020 2020 2020 206d 6f75 6e74 202d 6f20         mount -o 
│ │ │ +001c7310: 7265 6d6f 756e 7420 2d2d 7461 7267 6574  remount --target
│ │ │ +001c7320: 2022 2f74 6d70 220a 2020 2020 2020 2020   "/tmp".        
│ │ │ +001c7330: 6669 0a20 2020 2066 690a 7d0a 0a70 6572  fi.    fi.}..per
│ │ │ +001c7340: 666f 726d 5f72 656d 6564 6961 7469 6f6e  form_remediation
│ │ │ +001c7350: 0a0a 656c 7365 0a20 2020 2026 6774 3b26  ..else.    >&
│ │ │ +001c7360: 616d 703b 3220 6563 686f 2027 5265 6d65  amp;2 echo 'Reme
│ │ │ +001c7370: 6469 6174 696f 6e20 6973 206e 6f74 2061  diation is not a
│ │ │ +001c7380: 7070 6c69 6361 626c 652c 206e 6f74 6869  pplicable, nothi
│ │ │ +001c7390: 6e67 2077 6173 2064 6f6e 6527 0a66 690a  ng was done'.fi.
│ │ │ +001c73a0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +001c7450: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ +001c7460: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ +001c7470: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Reboo │ │ │ +001c68d0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +001c68e0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexity:< │ │ │ +001c7560: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
.part /tmp --mo
│ │ │ +001c75b0: 756e 746f 7074 696f 6e73 3d22 6e6f 7375  untoptions="nosu
│ │ │ +001c75c0: 6964 220a 3c2f 636f 6465 3e3c 2f70 7265  id".
< │ │ │ 001c75f0: 2f74 6162 6c65 3e3c 2f74 643e 3c2f 7472 /table>Re │ │ │ -001c8270: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ -001c8280: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
low
Disru │ │ │ +001c7520: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e68 ption:h │ │ │ +001c7530: 6967 683c 2f74 643e 3c2f 7472 3e3c 7472 igh
Reboot:false
Stra │ │ │ +001c7570: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +001c7580: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ -001c8320: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 < │ │ │ -001c8360: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -001c8370: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
.
│ │ │ -001c83c0: 7061 7274 202f 7661 722f 6c6f 672f 6175  part /var/log/au
│ │ │ -001c83d0: 6469 7420 2d2d 6d6f 756e 746f 7074 696f  dit --mountoptio
│ │ │ -001c83e0: 6e73 3d22 6e6f 6465 7622 0a3c 2f63 6f64  ns="nodev".
Remed │ │ │ -001c84a0: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ -001c84b0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
│ │ │ -001c8310: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -001c8340: 696f 6e3a 3c2f 7468 3e3c 7464 3e68 6967 ion:hig │ │ │ -001c8350: 683c 2f74 643e 3c2f 7472 3e3c 7472 3e3c h
Strate │ │ │ -001c8390: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -001c83a0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
- 
│ │ │ -001c85f0: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ -001c8600: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ -001c8610: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ -001c8620: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ -001c8630: 6f0a 2020 7461 6773 3a0a 2020 2d20 4e49  o.  tags:.  - NI
│ │ │ -001c8640: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ -001c8650: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001c8660: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ -001c8670: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -001c8680: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001c8690: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -001c86a0: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -001c86b0: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ -001c86c0: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ -001c86d0: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -001c86e0: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -001c86f0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001c8700: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -001c8710: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ -001c8720: 6f70 7469 6f6e 5f76 6172 5f6c 6f67 5f61  option_var_log_a
│ │ │ -001c8730: 7564 6974 5f6e 6f64 6576 0a20 202d 206e  udit_nodev.  - n
│ │ │ -001c8740: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -001c8750: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ -001c8760: 6465 7620 4f70 7469 6f6e 2074 6f20 2f76  dev Option to /v
│ │ │ -001c8770: 6172 2f6c 6f67 2f61 7564 6974 3a20 4368  ar/log/audit: Ch
│ │ │ -001c8780: 6563 6b20 696e 666f 726d 6174 696f 6e20  eck information 
│ │ │ -001c8790: 6173 736f 6369 6174 6564 2074 6f20 6d6f  associated to mo
│ │ │ -001c87a0: 756e 7470 6f69 6e74 270a 2020 616e 7369  untpoint'.  ansi
│ │ │ -001c87b0: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ -001c87c0: 616e 643a 2066 696e 646d 6e74 202d 2d66  and: findmnt --f
│ │ │ -001c87d0: 7374 6162 2027 2f76 6172 2f6c 6f67 2f61  stab '/var/log/a
│ │ │ -001c87e0: 7564 6974 270a 2020 7265 6769 7374 6572  udit'.  register
│ │ │ -001c87f0: 3a20 6465 7669 6365 5f6e 616d 650a 2020  : device_name.  
│ │ │ -001c8800: 6661 696c 6564 5f77 6865 6e3a 2064 6576  failed_when: dev
│ │ │ -001c8810: 6963 655f 6e61 6d65 2e72 6320 2667 743b  ice_name.rc >
│ │ │ -001c8820: 2031 0a20 2063 6861 6e67 6564 5f77 6865   1.  changed_whe
│ │ │ -001c8830: 6e3a 2066 616c 7365 0a20 2063 6865 636b  n: false.  check
│ │ │ -001c8840: 5f6d 6f64 653a 2066 616c 7365 0a20 2077  _mode: false.  w
│ │ │ -001c8850: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ -001c8860: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -001c8870: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001c8880: 6765 7320 616e 6420 2272 706d 2d6f 7374  ges and "rpm-ost
│ │ │ -001c8890: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -001c88a0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -001c88b0: 2020 2061 6e64 2022 626f 6f74 6322 2069     and "bootc" i
│ │ │ -001c88c0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001c88d0: 7061 636b 6167 6573 2061 6e64 206e 6f74  packages and not
│ │ │ -001c88e0: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ -001c88f0: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ -001c8900: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -001c8910: 2020 2061 6e64 2022 6f73 7472 6565 2220     and "ostree" 
│ │ │ -001c8920: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ -001c8930: 636d 646c 696e 6520 2920 616e 6420 6e6f  cmdline ) and no
│ │ │ -001c8940: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ -001c8950: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ -001c8960: 696e 0a20 2020 205b 2264 6f63 6b65 7222  in.    ["docker"
│ │ │ -001c8970: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ -001c8980: 222c 2022 706f 646d 616e 222c 2022 636f  ", "podman", "co
│ │ │ -001c8990: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ -001c89a0: 2d20 2722 2f76 6172 2f6c 6f67 2f61 7564  - '"/var/log/aud
│ │ │ -001c89b0: 6974 2220 696e 2061 6e73 6962 6c65 5f6d  it" in ansible_m
│ │ │ -001c89c0: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ -001c89d0: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ -001c89e0: 206c 6973 7427 0a20 2074 6167 733a 0a20   list'.  tags:. 
│ │ │ -001c89f0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001c8a00: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ -001c8a10: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ -001c8a20: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -001c8a30: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001c8a40: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ -001c8a50: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001c8a60: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ -001c8a70: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ -001c8a80: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -001c8a90: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -001c8aa0: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -001c8ab0: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -001c8ac0: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -001c8ad0: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f  ount_option_var_
│ │ │ -001c8ae0: 6c6f 675f 6175 6469 745f 6e6f 6465 760a  log_audit_nodev.
│ │ │ -001c8af0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001c8b00: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ -001c8b10: 6464 206e 6f64 6576 204f 7074 696f 6e20  dd nodev Option 
│ │ │ -001c8b20: 746f 202f 7661 722f 6c6f 672f 6175 6469  to /var/log/audi
│ │ │ -001c8b30: 743a 2043 7265 6174 6520 6d6f 756e 745f  t: Create mount_
│ │ │ -001c8b40: 696e 666f 2064 6963 7469 6f6e 6172 7920  info dictionary 
│ │ │ -001c8b50: 7661 7269 6162 6c65 270a 2020 7365 745f  variable'.  set_
│ │ │ -001c8b60: 6661 6374 3a0a 2020 2020 6d6f 756e 745f  fact:.    mount_
│ │ │ -001c8b70: 696e 666f 3a20 277b 7b20 6d6f 756e 745f  info: '{{ mount_
│ │ │ -001c8b80: 696e 666f 7c64 6566 6175 6c74 287b 7d29  info|default({})
│ │ │ -001c8b90: 7c63 6f6d 6269 6e65 287b 6974 656d 2e30  |combine({item.0
│ │ │ -001c8ba0: 3a20 6974 656d 2e31 7d29 207d 7d27 0a20  : item.1}) }}'. 
│ │ │ -001c8bb0: 2077 6974 685f 746f 6765 7468 6572 3a0a   with_together:.
│ │ │ -001c8bc0: 2020 2d20 277b 7b20 6465 7669 6365 5f6e    - '{{ device_n
│ │ │ -001c8bd0: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ -001c8be0: 5b30 5d2e 7370 6c69 7428 2920 7c20 6d61  [0].split() | ma
│ │ │ -001c8bf0: 7028 2727 6c6f 7765 7227 2729 207c 206c  p(''lower'') | l
│ │ │ -001c8c00: 6973 7420 7d7d 270a 2020 2d20 277b 7b20  ist }}'.  - '{{ 
│ │ │ -001c8c10: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001c8c20: 7574 5f6c 696e 6573 5b31 5d2e 7370 6c69  ut_lines[1].spli
│ │ │ -001c8c30: 7428 2920 7c20 6c69 7374 207d 7d27 0a20  t() | list }}'. 
│ │ │ -001c8c40: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ -001c8c50: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ -001c8c60: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001c8c70: 6b61 6765 7320 616e 6420 2272 706d 2d6f  kages and "rpm-o
│ │ │ -001c8c80: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001c8c90: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001c8ca0: 0a20 2020 2061 6e64 2022 626f 6f74 6322  .    and "bootc"
│ │ │ -001c8cb0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001c8cc0: 732e 7061 636b 6167 6573 2061 6e64 206e  s.packages and n
│ │ │ -001c8cd0: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ -001c8ce0: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ -001c8cf0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001c8d00: 0a20 2020 2061 6e64 2022 6f73 7472 6565  .    and "ostree
│ │ │ -001c8d10: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ -001c8d20: 635f 636d 646c 696e 6520 2920 616e 6420  c_cmdline ) and 
│ │ │ -001c8d30: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ -001c8d40: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ -001c8d50: 6520 696e 0a20 2020 205b 2264 6f63 6b65  e in.    ["docke
│ │ │ -001c8d60: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ -001c8d70: 767a 222c 2022 706f 646d 616e 222c 2022  vz", "podman", "
│ │ │ -001c8d80: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ -001c8d90: 2020 2d20 2722 2f76 6172 2f6c 6f67 2f61    - '"/var/log/a
│ │ │ -001c8da0: 7564 6974 2220 696e 2061 6e73 6962 6c65  udit" in ansible
│ │ │ -001c8db0: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ -001c8dc0: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ -001c8dd0: 207c 206c 6973 7427 0a20 202d 2064 6576   | list'.  - dev
│ │ │ -001c8de0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ -001c8df0: 6973 2064 6566 696e 6564 2061 6e64 2064  is defined and d
│ │ │ -001c8e00: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001c8e10: 745f 6c69 6e65 7320 6973 2064 6566 696e  t_lines is defin
│ │ │ -001c8e20: 6564 0a20 202d 2028 6465 7669 6365 5f6e  ed.  - (device_n
│ │ │ -001c8e30: 616d 652e 7374 646f 7574 207c 206c 656e  ame.stdout | len
│ │ │ -001c8e40: 6774 6820 2667 743b 2030 290a 2020 7461  gth > 0).  ta
│ │ │ -001c8e50: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -001c8e60: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ -001c8e70: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ -001c8e80: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001c8e90: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ -001c8ea0: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ -001c8eb0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001c8ec0: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ -001c8ed0: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ -001c8ee0: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -001c8ef0: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ -001c8f00: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -001c8f10: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001c8f20: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -001c8f30: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ -001c8f40: 5f76 6172 5f6c 6f67 5f61 7564 6974 5f6e  _var_log_audit_n
│ │ │ -001c8f50: 6f64 6576 0a20 202d 206e 6f5f 7265 626f  odev.  - no_rebo
│ │ │ -001c8f60: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -001c8f70: 653a 2027 4164 6420 6e6f 6465 7620 4f70  e: 'Add nodev Op
│ │ │ -001c8f80: 7469 6f6e 2074 6f20 2f76 6172 2f6c 6f67  tion to /var/log
│ │ │ -001c8f90: 2f61 7564 6974 3a20 4966 202f 7661 722f  /audit: If /var/
│ │ │ -001c8fa0: 6c6f 672f 6175 6469 7420 6e6f 7420 6d6f  log/audit not mo
│ │ │ -001c8fb0: 756e 7465 642c 2063 7261 6674 0a20 2020  unted, craft.   
│ │ │ -001c8fc0: 206d 6f75 6e74 5f69 6e66 6f20 6d61 6e75   mount_info manu
│ │ │ -001c8fd0: 616c 6c79 270a 2020 7365 745f 6661 6374  ally'.  set_fact
│ │ │ -001c8fe0: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ -001c8ff0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001c9000: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d  |default({})|com
│ │ │ -001c9010: 6269 6e65 287b 6974 656d 2e30 3a20 6974  bine({item.0: it
│ │ │ -001c9020: 656d 2e31 7d29 207d 7d27 0a20 2077 6974  em.1}) }}'.  wit
│ │ │ -001c9030: 685f 746f 6765 7468 6572 3a0a 2020 2d20  h_together:.  - 
│ │ │ -001c9040: 2d20 7461 7267 6574 0a20 2020 202d 2073  - target.    - s
│ │ │ -001c9050: 6f75 7263 650a 2020 2020 2d20 6673 7479  ource.    - fsty
│ │ │ -001c9060: 7065 0a20 2020 202d 206f 7074 696f 6e73  pe.    - options
│ │ │ -001c9070: 0a20 202d 202d 202f 7661 722f 6c6f 672f  .  - - /var/log/
│ │ │ -001c9080: 6175 6469 740a 2020 2020 2d20 2727 0a20  audit.    - ''. 
│ │ │ -001c9090: 2020 202d 2027 270a 2020 2020 2d20 6465     - ''.    - de
│ │ │ -001c90a0: 6661 756c 7473 0a20 2077 6865 6e3a 0a20  faults.  when:. 
│ │ │ -001c90b0: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ -001c90c0: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -001c90d0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001c90e0: 6420 2272 706d 2d6f 7374 7265 6522 2069  d "rpm-ostree" i
│ │ │ -001c90f0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001c9100: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001c9110: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ -001c9120: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001c9130: 6573 2061 6e64 206e 6f74 2022 6f70 656e  es and not "open
│ │ │ -001c9140: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ -001c9150: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001c9160: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001c9170: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ -001c9180: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ -001c9190: 6520 2920 616e 6420 6e6f 7420 2820 616e  e ) and not ( an
│ │ │ -001c91a0: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ -001c91b0: 7469 6f6e 5f74 7970 6520 696e 0a20 2020  tion_type in.   
│ │ │ -001c91c0: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ -001c91d0: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ -001c91e0: 646d 616e 222c 2022 636f 6e74 6169 6e65  dman", "containe
│ │ │ -001c91f0: 7222 5d20 2920 290a 2020 2d20 2722 2f76  r"] ) ).  - '"/v
│ │ │ -001c9200: 6172 2f6c 6f67 2f61 7564 6974 2220 696e  ar/log/audit" in
│ │ │ -001c9210: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ -001c9220: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ -001c9230: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ -001c9240: 0a20 202d 2028 222d 2d66 7374 6162 2220  .  - ("--fstab" 
│ │ │ -001c9250: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ -001c9260: 202d 2064 6576 6963 655f 6e61 6d65 2e73   - device_name.s
│ │ │ -001c9270: 7464 6f75 7420 6973 2064 6566 696e 6564  tdout is defined
│ │ │ -001c9280: 2061 6e64 2064 6576 6963 655f 6e61 6d65   and device_name
│ │ │ -001c9290: 2e73 7464 6f75 745f 6c69 6e65 7320 6973  .stdout_lines is
│ │ │ -001c92a0: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ -001c92b0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001c92c0: 207c 206c 656e 6774 6820 3d3d 2030 290a   | length == 0).
│ │ │ -001c92d0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -001c92e0: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ -001c92f0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001c9300: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ -001c9310: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -001c9320: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001c9330: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -001c9340: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ -001c9350: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ -001c9360: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ -001c9370: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001c9380: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001c9390: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001c93a0: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001c93b0: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001c93c0: 7469 6f6e 5f76 6172 5f6c 6f67 5f61 7564  tion_var_log_aud
│ │ │ -001c93d0: 6974 5f6e 6f64 6576 0a20 202d 206e 6f5f  it_nodev.  - no_
│ │ │ -001c93e0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001c93f0: 206e 616d 653a 2027 4164 6420 6e6f 6465   name: 'Add node
│ │ │ -001c9400: 7620 4f70 7469 6f6e 2074 6f20 2f76 6172  v Option to /var
│ │ │ -001c9410: 2f6c 6f67 2f61 7564 6974 3a20 4d61 6b65  /log/audit: Make
│ │ │ -001c9420: 2073 7572 6520 6e6f 6465 7620 6f70 7469   sure nodev opti
│ │ │ -001c9430: 6f6e 2069 7320 7061 7274 206f 6620 7468  on is part of th
│ │ │ -001c9440: 650a 2020 2020 746f 202f 7661 722f 6c6f  e.    to /var/lo
│ │ │ -001c9450: 672f 6175 6469 7420 6f70 7469 6f6e 7327  g/audit options'
│ │ │ -001c9460: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ -001c9470: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b   mount_info: '{{
│ │ │ -001c9480: 206d 6f75 6e74 5f69 6e66 6f20 7c20 636f   mount_info | co
│ │ │ -001c9490: 6d62 696e 6528 207b 2727 6f70 7469 6f6e  mbine( {''option
│ │ │ -001c94a0: 7327 273a 2727 2727 7e28 6d6f 756e 745f  s'':''''~(mount_
│ │ │ -001c94b0: 696e 666f 2e6f 7074 696f 6e73 207c 0a20  info.options |. 
│ │ │ -001c94c0: 2020 2020 2064 6566 6175 6c74 2827 2727       default('''
│ │ │ -001c94d0: 2729 297e 2827 272c 2727 2069 6620 286d  '))~('','' if (m
│ │ │ -001c94e0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -001c94f0: 7320 7c20 6465 6661 756c 7428 2727 2727  s | default(''''
│ │ │ -001c9500: 2929 2065 6c73 6520 2727 2727 297e 2727  )) else '''')~''
│ │ │ -001c9510: 6e6f 6465 7627 270a 2020 2020 2020 7d29  nodev''.      })
│ │ │ -001c9520: 207d 7d27 0a20 2077 6865 6e3a 0a20 202d   }}'.  when:.  -
│ │ │ -001c9530: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ -001c9540: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001c9550: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001c9560: 2272 706d 2d6f 7374 7265 6522 2069 6e20  "rpm-ostree" in 
│ │ │ -001c9570: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001c9580: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001c9590: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -001c95a0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001c95b0: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ -001c95c0: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ -001c95d0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001c95e0: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001c95f0: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001c9600: 6c65 5f70 726f 635f 636d 646c 696e 6520  le_proc_cmdline 
│ │ │ -001c9610: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ -001c9620: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ -001c9630: 6f6e 5f74 7970 6520 696e 0a20 2020 205b  on_type in.    [
│ │ │ -001c9640: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -001c9650: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -001c9660: 616e 222c 2022 636f 6e74 6169 6e65 7222  an", "container"
│ │ │ -001c9670: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ -001c9680: 2f6c 6f67 2f61 7564 6974 2220 696e 2061  /log/audit" in a
│ │ │ -001c9690: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ -001c96a0: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ -001c96b0: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ -001c96c0: 202d 206d 6f75 6e74 5f69 6e66 6f20 6973   - mount_info is
│ │ │ -001c96d0: 2064 6566 696e 6564 2061 6e64 2022 6e6f   defined and "no
│ │ │ -001c96e0: 6465 7622 206e 6f74 2069 6e20 286d 6f75  dev" not in (mou
│ │ │ -001c96f0: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ -001c9700: 7c20 6465 6661 756c 7428 2727 2929 0a20  | default('')). 
│ │ │ -001c9710: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -001c9720: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ -001c9730: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001c9740: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ -001c9750: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -001c9760: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001c9770: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001c9780: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ -001c9790: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ -001c97a0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -001c97b0: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -001c97c0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001c97d0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001c97e0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001c97f0: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -001c9800: 696f 6e5f 7661 725f 6c6f 675f 6175 6469  ion_var_log_audi
│ │ │ -001c9810: 745f 6e6f 6465 760a 2020 2d20 6e6f 5f72  t_nodev.  - no_r
│ │ │ -001c9820: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ -001c9830: 6e61 6d65 3a20 2741 6464 206e 6f64 6576  name: 'Add nodev
│ │ │ -001c9840: 204f 7074 696f 6e20 746f 202f 7661 722f   Option to /var/
│ │ │ -001c9850: 6c6f 672f 6175 6469 743a 2045 6e73 7572  log/audit: Ensur
│ │ │ -001c9860: 6520 2f76 6172 2f6c 6f67 2f61 7564 6974  e /var/log/audit
│ │ │ -001c9870: 2069 7320 6d6f 756e 7465 6420 7769 7468   is mounted with
│ │ │ -001c9880: 0a20 2020 206e 6f64 6576 206f 7074 696f  .    nodev optio
│ │ │ -001c9890: 6e27 0a20 2061 6e73 6962 6c65 2e70 6f73  n'.  ansible.pos
│ │ │ -001c98a0: 6978 2e6d 6f75 6e74 3a0a 2020 2020 7061  ix.mount:.    pa
│ │ │ -001c98b0: 7468 3a20 2f76 6172 2f6c 6f67 2f61 7564  th: /var/log/aud
│ │ │ -001c98c0: 6974 0a20 2020 2073 7263 3a20 277b 7b20  it.    src: '{{ 
│ │ │ -001c98d0: 6d6f 756e 745f 696e 666f 2e73 6f75 7263  mount_info.sourc
│ │ │ -001c98e0: 6520 7c20 6465 6661 756c 7428 2727 2727  e | default(''''
│ │ │ -001c98f0: 2920 7d7d 270a 2020 2020 6f70 7473 3a20  ) }}'.    opts: 
│ │ │ -001c9900: 277b 7b20 6d6f 756e 745f 696e 666f 2e6f  '{{ mount_info.o
│ │ │ -001c9910: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ -001c9920: 2827 2727 2729 207d 7d27 0a20 2020 2073  ('''') }}'.    s
│ │ │ -001c9930: 7461 7465 3a20 6d6f 756e 7465 640a 2020  tate: mounted.  
│ │ │ -001c9940: 2020 6673 7479 7065 3a20 277b 7b20 6d6f    fstype: '{{ mo
│ │ │ -001c9950: 756e 745f 696e 666f 2e66 7374 7970 6520  unt_info.fstype 
│ │ │ -001c9960: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ -001c9970: 7d7d 270a 2020 7265 6769 7374 6572 3a20  }}'.  register: 
│ │ │ -001c9980: 6d6f 756e 745f 7265 7375 6c74 0a20 2066  mount_result.  f
│ │ │ -001c9990: 6169 6c65 645f 7768 656e 3a0a 2020 2d20  ailed_when:.  - 
│ │ │ -001c99a0: 6d6f 756e 745f 7265 7375 6c74 2069 7320  mount_result is 
│ │ │ -001c99b0: 6661 696c 6564 0a20 202d 2027 2727 7461  failed.  - '''ta
│ │ │ -001c99c0: 7267 6574 2069 7320 6275 7379 2727 206e  rget is busy'' n
│ │ │ -001c99d0: 6f74 2069 6e20 286d 6f75 6e74 5f72 6573  ot in (mount_res
│ │ │ -001c99e0: 756c 742e 6d73 6720 7c20 6465 6661 756c  ult.msg | defaul
│ │ │ -001c99f0: 7428 2727 2727 2929 270a 2020 2d20 2727  t(''''))'.  - ''
│ │ │ -001c9a00: 2761 6c72 6561 6479 206d 6f75 6e74 6564  'already mounted
│ │ │ -001c9a10: 2727 206e 6f74 2069 6e20 286d 6f75 6e74  '' not in (mount
│ │ │ -001c9a20: 5f72 6573 756c 742e 6d73 6720 7c20 6465  _result.msg | de
│ │ │ -001c9a30: 6661 756c 7428 2727 2727 2929 270a 2020  fault(''''))'.  
│ │ │ -001c9a40: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ -001c9a50: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ -001c9a60: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001c9a70: 6167 6573 2061 6e64 2022 7270 6d2d 6f73  ages and "rpm-os
│ │ │ -001c9a80: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001c9a90: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001c9aa0: 2020 2020 616e 6420 2262 6f6f 7463 2220      and "bootc" 
│ │ │ -001c9ab0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001c9ac0: 2e70 6163 6b61 6765 7320 616e 6420 6e6f  .packages and no
│ │ │ -001c9ad0: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ -001c9ae0: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ -001c9af0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001c9b00: 2020 2020 616e 6420 226f 7374 7265 6522      and "ostree"
│ │ │ -001c9b10: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ -001c9b20: 5f63 6d64 6c69 6e65 2029 2061 6e64 206e  _cmdline ) and n
│ │ │ -001c9b30: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ -001c9b40: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ -001c9b50: 2069 6e0a 2020 2020 5b22 646f 636b 6572   in.    ["docker
│ │ │ -001c9b60: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ -001c9b70: 7a22 2c20 2270 6f64 6d61 6e22 2c20 2263  z", "podman", "c
│ │ │ -001c9b80: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ -001c9b90: 202d 2027 222f 7661 722f 6c6f 672f 6175   - '"/var/log/au
│ │ │ -001c9ba0: 6469 7422 2069 6e20 616e 7369 626c 655f  dit" in ansible_
│ │ │ -001c9bb0: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ -001c9bc0: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ -001c9bd0: 7c20 6c69 7374 270a 2020 2d20 6d6f 756e  | list'.  - moun
│ │ │ -001c9be0: 745f 696e 666f 2069 7320 6465 6669 6e65  t_info is define
│ │ │ -001c9bf0: 640a 2020 2d20 2864 6576 6963 655f 6e61  d.  - (device_na
│ │ │ -001c9c00: 6d65 2e73 7464 6f75 7420 6973 2064 6566  me.stdout is def
│ │ │ -001c9c10: 696e 6564 2061 6e64 2028 6465 7669 6365  ined and (device
│ │ │ -001c9c20: 5f6e 616d 652e 7374 646f 7574 207c 206c  _name.stdout | l
│ │ │ -001c9c30: 656e 6774 6820 2667 743b 2030 2929 206f  ength > 0)) o
│ │ │ -001c9c40: 7220 2822 2d2d 6673 7461 6222 0a20 2020  r ("--fstab".   
│ │ │ -001c9c50: 207c 206c 656e 6774 6820 3d3d 2030 290a   | length == 0).
│ │ │ -001c9c60: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -001c9c70: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ -001c9c80: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001c9c90: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ -001c9ca0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -001c9cb0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001c9cc0: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -001c9cd0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ -001c9ce0: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ -001c9cf0: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ -001c9d00: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001c9d10: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001c9d20: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001c9d30: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001c9d40: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001c9d50: 7469 6f6e 5f76 6172 5f6c 6f67 5f61 7564  tion_var_log_aud
│ │ │ -001c9d60: 6974 5f6e 6f64 6576 0a20 202d 206e 6f5f  it_nodev.  - no_
│ │ │ -001c9d70: 7265 626f 6f74 5f6e 6565 6465 640a 3c2f  reboot_needed.
Re │ │ │ -001c9e30: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ -001c9e40: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
Comp │ │ │ -001c8540: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -001c8550: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -001c8570: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ -001c8590: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001c85a0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -001c85c0: 2f74 683e 3c74 643e 636f 6e66 6967 7572 /th>configur │ │ │ -001c85d0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
# 
│ │ │ -001c9f00: 5265 6d65 6469 6174 696f 6e20 6973 2061  Remediation is a
│ │ │ -001c9f10: 7070 6c69 6361 626c 6520 6f6e 6c79 2069  pplicable only i
│ │ │ -001c9f20: 6e20 6365 7274 6169 6e20 706c 6174 666f  n certain platfo
│ │ │ -001c9f30: 726d 730a 6966 2028 2021 2028 207b 2072  rms.if ( ! ( { r
│ │ │ -001c9f40: 706d 202d 2d71 7569 6574 202d 7120 6b65  pm --quiet -q ke
│ │ │ -001c9f50: 726e 656c 203b 7d20 2661 6d70 3b26 616d  rnel ;} &&am
│ │ │ -001c9f60: 703b 207b 2072 706d 202d 2d71 7569 6574  p; { rpm --quiet
│ │ │ -001c9f70: 202d 7120 7270 6d2d 6f73 7472 6565 203b   -q rpm-ostree ;
│ │ │ -001c9f80: 7d20 2661 6d70 3b26 616d 703b 207b 2072  } && { r
│ │ │ -001c9f90: 706d 202d 2d71 7569 6574 202d 7120 626f  pm --quiet -q bo
│ │ │ -001c9fa0: 6f74 6320 3b7d 2026 616d 703b 2661 6d70  otc ;} &&
│ │ │ -001c9fb0: 3b20 7b20 2120 7270 6d20 2d2d 7175 6965  ; { ! rpm --quie
│ │ │ -001c9fc0: 7420 2d71 206f 7065 6e73 6869 6674 2d6b  t -q openshift-k
│ │ │ -001c9fd0: 7562 656c 6574 203b 7d20 2661 6d70 3b26  ubelet ;} &&
│ │ │ -001c9fe0: 616d 703b 2028 5b20 2d66 202f 7275 6e2f  amp; ([ -f /run/
│ │ │ -001c9ff0: 6f73 7472 6565 2d62 6f6f 7465 6420 5d20  ostree-booted ] 
│ │ │ -001ca000: 7c7c 205b 202d 4c20 2f6f 7374 7265 6520  || [ -L /ostree 
│ │ │ -001ca010: 5d29 2029 2026 616d 703b 2661 6d70 3b20  ]) ) && 
│ │ │ -001ca020: 2120 2820 5b20 2d66 202f 2e64 6f63 6b65  ! ( [ -f /.docke
│ │ │ -001ca030: 7265 6e76 205d 207c 7c20 5b20 2d66 202f  renv ] || [ -f /
│ │ │ -001ca040: 7275 6e2f 2e63 6f6e 7461 696e 6572 656e  run/.containeren
│ │ │ -001ca050: 7620 5d20 2920 2920 2661 6d70 3b26 616d  v ] ) ) &&am
│ │ │ -001ca060: 703b 207b 2028 2066 696e 646d 6e74 202d  p; { ( findmnt -
│ │ │ -001ca070: 2d6b 6572 6e65 6c20 222f 7661 722f 6c6f  -kernel "/var/lo
│ │ │ -001ca080: 672f 6175 6469 7422 2026 6774 3b20 2f64  g/audit" > /d
│ │ │ -001ca090: 6576 2f6e 756c 6c20 7c7c 2066 696e 646d  ev/null || findm
│ │ │ -001ca0a0: 6e74 202d 2d66 7374 6162 2022 2f76 6172  nt --fstab "/var
│ │ │ -001ca0b0: 2f6c 6f67 2f61 7564 6974 2220 2667 743b  /log/audit" >
│ │ │ -001ca0c0: 202f 6465 762f 6e75 6c6c 2029 3b20 7d3b   /dev/null ); };
│ │ │ -001ca0d0: 2074 6865 6e0a 0a66 756e 6374 696f 6e20   then..function 
│ │ │ -001ca0e0: 7065 7266 6f72 6d5f 7265 6d65 6469 6174  perform_remediat
│ │ │ -001ca0f0: 696f 6e20 7b0a 0a20 2020 200a 2020 2020  ion {..    .    
│ │ │ -001ca100: 2020 2020 2320 7468 6520 6d6f 756e 7420      # the mount 
│ │ │ -001ca110: 706f 696e 7420 2f76 6172 2f6c 6f67 2f61  point /var/log/a
│ │ │ -001ca120: 7564 6974 2068 6173 2074 6f20 6265 2064  udit has to be d
│ │ │ -001ca130: 6566 696e 6564 2069 6e20 2f65 7463 2f66  efined in /etc/f
│ │ │ -001ca140: 7374 6162 0a20 2020 2020 2020 2023 2062  stab.        # b
│ │ │ -001ca150: 6566 6f72 6520 7468 6973 2072 656d 6564  efore this remed
│ │ │ -001ca160: 6961 7469 6f6e 2063 616e 2062 6520 6578  iation can be ex
│ │ │ -001ca170: 6563 7574 6564 2e20 496e 2063 6173 6520  ecuted. In case 
│ │ │ -001ca180: 6974 2069 7320 6e6f 7420 6465 6669 6e65  it is not define
│ │ │ -001ca190: 642c 2074 6865 0a20 2020 2020 2020 2023  d, the.        #
│ │ │ -001ca1a0: 2072 656d 6564 6961 7469 6f6e 2061 626f   remediation abo
│ │ │ -001ca1b0: 7274 7320 616e 6420 6e6f 2063 6861 6e67  rts and no chang
│ │ │ -001ca1c0: 6573 2072 6567 6172 6469 6e67 2074 6865  es regarding the
│ │ │ -001ca1d0: 206d 6f75 6e74 2070 6f69 6e74 2061 7265   mount point are
│ │ │ -001ca1e0: 2064 6f6e 652e 0a20 2020 2020 2020 206d   done..        m
│ │ │ -001ca1f0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001ca200: 5f72 6567 6578 703d 2224 2870 7269 6e74  _regexp="$(print
│ │ │ -001ca210: 6620 225e 5b5b 3a73 7061 6365 3a5d 5d2a  f "^[[:space:]]*
│ │ │ -001ca220: 5b5e 235d 2e2a 5b5b 3a73 7061 6365 3a5d  [^#].*[[:space:]
│ │ │ -001ca230: 5d25 735b 5b3a 7370 6163 653a 5d5d 2220  ]%s[[:space:]]" 
│ │ │ -001ca240: 222f 7661 722f 6c6f 672f 6175 6469 7422  "/var/log/audit"
│ │ │ -001ca250: 2922 0a0a 2020 2020 6772 6570 2022 246d  )"..    grep "$m
│ │ │ -001ca260: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001ca270: 5f72 6567 6578 7022 202d 7120 2f65 7463  _regexp" -q /etc
│ │ │ -001ca280: 2f66 7374 6162 205c 0a20 2020 2020 2020  /fstab \.       
│ │ │ -001ca290: 207c 7c20 7b20 6563 686f 2022 5468 6520   || { echo "The 
│ │ │ -001ca2a0: 6d6f 756e 7420 706f 696e 7420 272f 7661  mount point '/va
│ │ │ -001ca2b0: 722f 6c6f 672f 6175 6469 7427 2069 7320  r/log/audit' is 
│ │ │ -001ca2c0: 6e6f 7420 6576 656e 2069 6e20 2f65 7463  not even in /etc
│ │ │ -001ca2d0: 2f66 7374 6162 2c20 736f 2077 6520 6361  /fstab, so we ca
│ │ │ -001ca2e0: 6e27 7420 7365 7420 7570 206d 6f75 6e74  n't set up mount
│ │ │ -001ca2f0: 206f 7074 696f 6e73 2220 2667 743b 2661   options" >&a
│ │ │ -001ca300: 6d70 3b32 3b0a 2020 2020 2020 2020 2020  mp;2;.          
│ │ │ -001ca310: 2020 2020 2020 6563 686f 2022 4e6f 7420        echo "Not 
│ │ │ -001ca320: 7265 6d65 6469 6174 696e 672c 2062 6563  remediating, bec
│ │ │ -001ca330: 6175 7365 2074 6865 7265 2069 7320 6e6f  ause there is no
│ │ │ -001ca340: 2072 6563 6f72 6420 6f66 202f 7661 722f   record of /var/
│ │ │ -001ca350: 6c6f 672f 6175 6469 7420 696e 202f 6574  log/audit in /et
│ │ │ -001ca360: 632f 6673 7461 6222 2026 6774 3b26 616d  c/fstab" >&am
│ │ │ -001ca370: 703b 323b 2072 6574 7572 6e20 313b 207d  p;2; return 1; }
│ │ │ -001ca380: 0a20 2020 200a 0a0a 2020 2020 6d6f 756e  .    ...    moun
│ │ │ -001ca390: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001ca3a0: 6765 7870 3d22 2428 7072 696e 7466 2022  gexp="$(printf "
│ │ │ -001ca3b0: 5e5b 5b3a 7370 6163 653a 5d5d 2a5b 5e23  ^[[:space:]]*[^#
│ │ │ -001ca3c0: 5d2e 2a5b 5b3a 7370 6163 653a 5d5d 2573  ].*[[:space:]]%s
│ │ │ -001ca3d0: 5b5b 3a73 7061 6365 3a5d 5d22 202f 7661  [[:space:]]" /va
│ │ │ -001ca3e0: 722f 6c6f 672f 6175 6469 7429 220a 0a20  r/log/audit)".. 
│ │ │ -001ca3f0: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ -001ca400: 7420 706f 696e 7420 6973 206e 6f74 2069  t point is not i
│ │ │ -001ca410: 6e20 2f65 7463 2f66 7374 6162 2c20 6765  n /etc/fstab, ge
│ │ │ -001ca420: 7420 7072 6576 696f 7573 206d 6f75 6e74  t previous mount
│ │ │ -001ca430: 206f 7074 696f 6e73 2066 726f 6d20 2f65   options from /e
│ │ │ -001ca440: 7463 2f6d 7461 620a 2020 2020 6966 2021  tc/mtab.    if !
│ │ │ -001ca450: 2067 7265 7020 2d71 2022 246d 6f75 6e74   grep -q "$mount
│ │ │ -001ca460: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001ca470: 6578 7022 202f 6574 632f 6673 7461 623b  exp" /etc/fstab;
│ │ │ -001ca480: 2074 6865 6e0a 2020 2020 2020 2020 2320   then.        # 
│ │ │ -001ca490: 7275 6e74 696d 6520 6f70 7473 2077 6974  runtime opts wit
│ │ │ -001ca4a0: 686f 7574 2073 6f6d 6520 6175 746f 6d61  hout some automa
│ │ │ -001ca4b0: 7469 6320 6b65 726e 656c 2f75 7365 7273  tic kernel/users
│ │ │ -001ca4c0: 7061 6365 2d61 6464 6564 2064 6566 6175  pace-added defau
│ │ │ -001ca4d0: 6c74 730a 2020 2020 2020 2020 7072 6576  lts.        prev
│ │ │ -001ca4e0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d  ious_mount_opts=
│ │ │ -001ca4f0: 2428 6772 6570 2022 246d 6f75 6e74 5f70  $(grep "$mount_p
│ │ │ -001ca500: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001ca510: 7022 202f 6574 632f 6d74 6162 207c 2068  p" /etc/mtab | h
│ │ │ -001ca520: 6561 6420 2d31 207c 2020 6177 6b20 277b  ead -1 |  awk '{
│ │ │ -001ca530: 7072 696e 7420 2434 7d27 205c 0a20 2020  print $4}' \.   
│ │ │ -001ca540: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -001ca550: 207c 2073 6564 202d 4520 2273 2f28 7277   | sed -E "s/(rw
│ │ │ -001ca560: 7c64 6566 6175 6c74 737c 7365 636c 6162  |defaults|seclab
│ │ │ -001ca570: 656c 7c6e 6f64 6576 2928 2c7c 2429 2f2f  el|nodev)(,|$)//
│ │ │ -001ca580: 673b 732f 2c24 2f2f 2229 0a20 2020 2020  g;s/,$//").     
│ │ │ -001ca590: 2020 205b 2022 2470 7265 7669 6f75 735f     [ "$previous_
│ │ │ -001ca5a0: 6d6f 756e 745f 6f70 7473 2220 5d20 2661  mount_opts" ] &a
│ │ │ -001ca5b0: 6d70 3b26 616d 703b 2070 7265 7669 6f75  mp;& previou
│ │ │ -001ca5c0: 735f 6d6f 756e 745f 6f70 7473 2b3d 222c  s_mount_opts+=",
│ │ │ -001ca5d0: 220a 2020 2020 2020 2020 2320 496e 2069  ".        # In i
│ │ │ -001ca5e0: 736f 3936 3630 2066 696c 6573 7973 7465  so9660 filesyste
│ │ │ -001ca5f0: 6d73 206d 7461 6220 636f 756c 6420 6465  ms mtab could de
│ │ │ -001ca600: 7363 7269 6265 2061 2022 626c 6f63 6b73  scribe a "blocks
│ │ │ -001ca610: 697a 6522 2076 616c 7565 2c20 7468 6973  ize" value, this
│ │ │ -001ca620: 2073 686f 756c 6420 6265 2072 6566 6c65   should be refle
│ │ │ -001ca630: 6374 6564 2069 6e0a 2020 2020 2020 2020  cted in.        
│ │ │ -001ca640: 2320 6673 7461 6220 6173 2022 626c 6f63  # fstab as "bloc
│ │ │ -001ca650: 6b22 2e20 2054 6865 206e 6578 7420 7661  k".  The next va
│ │ │ -001ca660: 7269 6162 6c65 2069 7320 746f 2073 6174  riable is to sat
│ │ │ -001ca670: 6973 6679 2073 6865 6c6c 6368 6563 6b20  isfy shellcheck 
│ │ │ -001ca680: 5343 3230 3530 2e0a 2020 2020 2020 2020  SC2050..        
│ │ │ -001ca690: 6673 5f74 7970 653d 2222 0a20 2020 2020  fs_type="".     
│ │ │ -001ca6a0: 2020 2069 6620 5b20 2022 2466 735f 7479     if [  "$fs_ty
│ │ │ -001ca6b0: 7065 2220 3d3d 2022 6973 6f39 3636 3022  pe" == "iso9660"
│ │ │ -001ca6c0: 205d 203b 2074 6865 6e0a 2020 2020 2020   ] ; then.      
│ │ │ -001ca6d0: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ -001ca6e0: 6f75 6e74 5f6f 7074 733d 2428 7365 6420  ount_opts=$(sed 
│ │ │ -001ca6f0: 2773 2f62 6c6f 636b 7369 7a65 3d2f 626c  's/blocksize=/bl
│ │ │ -001ca700: 6f63 6b3d 2f27 2026 6c74 3b26 6c74 3b26  ock=/' <<&
│ │ │ -001ca710: 6c74 3b20 2224 7072 6576 696f 7573 5f6d  lt; "$previous_m
│ │ │ -001ca720: 6f75 6e74 5f6f 7074 7322 290a 2020 2020  ount_opts").    
│ │ │ -001ca730: 2020 2020 6669 0a20 2020 2020 2020 2065      fi.        e
│ │ │ -001ca740: 6368 6f20 2220 2f76 6172 2f6c 6f67 2f61  cho " /var/log/a
│ │ │ -001ca750: 7564 6974 2020 6465 6661 756c 7473 2c24  udit  defaults,$
│ │ │ -001ca760: 7b70 7265 7669 6f75 735f 6d6f 756e 745f  {previous_mount_
│ │ │ -001ca770: 6f70 7473 7d6e 6f64 6576 2030 2030 2220  opts}nodev 0 0" 
│ │ │ -001ca780: 2667 743b 2667 743b 202f 6574 632f 6673  >> /etc/fs
│ │ │ -001ca790: 7461 620a 2020 2020 2320 4966 2074 6865  tab.    # If the
│ │ │ -001ca7a0: 206d 6f75 6e74 5f6f 7074 206f 7074 696f   mount_opt optio
│ │ │ -001ca7b0: 6e20 6973 206e 6f74 2061 6c72 6561 6479  n is not already
│ │ │ -001ca7c0: 2069 6e20 7468 6520 6d6f 756e 7420 706f   in the mount po
│ │ │ -001ca7d0: 696e 7427 7320 2f65 7463 2f66 7374 6162  int's /etc/fstab
│ │ │ -001ca7e0: 2065 6e74 7279 2c20 6164 6420 6974 0a20   entry, add it. 
│ │ │ -001ca7f0: 2020 2065 6c69 6620 2120 6772 6570 2022     elif ! grep "
│ │ │ -001ca800: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ -001ca810: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ -001ca820: 6673 7461 6220 7c20 6772 6570 202d 7120  fstab | grep -q 
│ │ │ -001ca830: 226e 6f64 6576 223b 2074 6865 6e0a 2020  "nodev"; then.  
│ │ │ -001ca840: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ -001ca850: 6f75 6e74 5f6f 7074 733d 2428 6772 6570  ount_opts=$(grep
│ │ │ -001ca860: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -001ca870: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ -001ca880: 632f 6673 7461 6220 7c20 6177 6b20 277b  c/fstab | awk '{
│ │ │ -001ca890: 7072 696e 7420 2434 7d27 290a 2020 2020  print $4}').    
│ │ │ -001ca8a0: 2020 2020 7365 6420 2d69 2022 737c 5c28      sed -i "s|\(
│ │ │ -001ca8b0: 247b 6d6f 756e 745f 706f 696e 745f 6d61  ${mount_point_ma
│ │ │ -001ca8c0: 7463 685f 7265 6765 7870 7d2e 2a24 7b70  tch_regexp}.*${p
│ │ │ -001ca8d0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001ca8e0: 7473 7d5c 297c 5c31 2c6e 6f64 6576 7c22  ts}\)|\1,nodev|"
│ │ │ -001ca8f0: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ -001ca900: 6669 0a0a 0a20 2020 2069 6620 6d6b 6469  fi...    if mkdi
│ │ │ -001ca910: 7220 2d70 2022 2f76 6172 2f6c 6f67 2f61  r -p "/var/log/a
│ │ │ -001ca920: 7564 6974 223b 2074 6865 6e0a 2020 2020  udit"; then.    
│ │ │ -001ca930: 2020 2020 6966 206d 6f75 6e74 706f 696e      if mountpoin
│ │ │ -001ca940: 7420 2d71 2022 2f76 6172 2f6c 6f67 2f61  t -q "/var/log/a
│ │ │ -001ca950: 7564 6974 223b 2074 6865 6e0a 2020 2020  udit"; then.    
│ │ │ -001ca960: 2020 2020 2020 2020 6d6f 756e 7420 2d6f          mount -o
│ │ │ -001ca970: 2072 656d 6f75 6e74 202d 2d74 6172 6765   remount --targe
│ │ │ -001ca980: 7420 222f 7661 722f 6c6f 672f 6175 6469  t "/var/log/audi
│ │ │ -001ca990: 7422 0a20 2020 2020 2020 2066 690a 2020  t".        fi.  
│ │ │ -001ca9a0: 2020 6669 0a7d 0a0a 7065 7266 6f72 6d5f    fi.}..perform_
│ │ │ -001ca9b0: 7265 6d65 6469 6174 696f 6e0a 0a65 6c73  remediation..els
│ │ │ -001ca9c0: 650a 2020 2020 2667 743b 2661 6d70 3b32  e.    >&2
│ │ │ -001ca9d0: 2065 6368 6f20 2752 656d 6564 6961 7469   echo 'Remediati
│ │ │ -001ca9e0: 6f6e 2069 7320 6e6f 7420 6170 706c 6963  on is not applic
│ │ │ -001ca9f0: 6162 6c65 2c20 6e6f 7468 696e 6720 7761  able, nothing wa
│ │ │ -001caa00: 7320 646f 6e65 270a 6669 0a3c 2f63 6f64  s done'.fi.
Rebo │ │ │ -001c9ed0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -001c9ee0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ +001c8320: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +001c8330: 3c74 723e 3c74 683e 4469 7372 7570 7469 Reboot:false
- name: Gather 
│ │ │ +001c83d0: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ +001c83e0: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ +001c83f0: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ +001c8400: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ +001c8410: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001c8420: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +001c8430: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ +001c8440: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +001c8450: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001c8460: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +001c8470: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +001c8480: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001c8490: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ +001c84a0: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001c84b0: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001c84c0: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001c84d0: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001c84e0: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001c84f0: 6e74 5f6f 7074 696f 6e5f 7661 725f 6c6f  nt_option_var_lo
│ │ │ +001c8500: 675f 6175 6469 745f 6e6f 6465 760a 2020  g_audit_nodev.  
│ │ │ +001c8510: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001c8520: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ +001c8530: 206e 6f64 6576 204f 7074 696f 6e20 746f   nodev Option to
│ │ │ +001c8540: 202f 7661 722f 6c6f 672f 6175 6469 743a   /var/log/audit:
│ │ │ +001c8550: 2043 6865 636b 2069 6e66 6f72 6d61 7469   Check informati
│ │ │ +001c8560: 6f6e 2061 7373 6f63 6961 7465 6420 746f  on associated to
│ │ │ +001c8570: 206d 6f75 6e74 706f 696e 7427 0a20 2061   mountpoint'.  a
│ │ │ +001c8580: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ +001c8590: 6f6d 6d61 6e64 3a20 6669 6e64 6d6e 7420  ommand: findmnt 
│ │ │ +001c85a0: 2d2d 6673 7461 6220 272f 7661 722f 6c6f  --fstab '/var/lo
│ │ │ +001c85b0: 672f 6175 6469 7427 0a20 2072 6567 6973  g/audit'.  regis
│ │ │ +001c85c0: 7465 723a 2064 6576 6963 655f 6e61 6d65  ter: device_name
│ │ │ +001c85d0: 0a20 2066 6169 6c65 645f 7768 656e 3a20  .  failed_when: 
│ │ │ +001c85e0: 6465 7669 6365 5f6e 616d 652e 7263 2026  device_name.rc &
│ │ │ +001c85f0: 6774 3b20 310a 2020 6368 616e 6765 645f  gt; 1.  changed_
│ │ │ +001c8600: 7768 656e 3a20 6661 6c73 650a 2020 6368  when: false.  ch
│ │ │ +001c8610: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a  eck_mode: false.
│ │ │ +001c8620: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ +001c8630: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ +001c8640: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001c8650: 636b 6167 6573 2061 6e64 2022 7270 6d2d  ckages and "rpm-
│ │ │ +001c8660: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001c8670: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001c8680: 730a 2020 2020 616e 6420 2262 6f6f 7463  s.    and "bootc
│ │ │ +001c8690: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001c86a0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001c86b0: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ +001c86c0: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ +001c86d0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001c86e0: 730a 2020 2020 616e 6420 226f 7374 7265  s.    and "ostre
│ │ │ +001c86f0: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ +001c8700: 6f63 5f63 6d64 6c69 6e65 2029 2061 6e64  oc_cmdline ) and
│ │ │ +001c8710: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ +001c8720: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ +001c8730: 7065 2069 6e0a 2020 2020 5b22 646f 636b  pe in.    ["dock
│ │ │ +001c8740: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ +001c8750: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c20  nvz", "podman", 
│ │ │ +001c8760: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ +001c8770: 0a20 202d 2027 222f 7661 722f 6c6f 672f  .  - '"/var/log/
│ │ │ +001c8780: 6175 6469 7422 2069 6e20 616e 7369 626c  audit" in ansibl
│ │ │ +001c8790: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ +001c87a0: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ +001c87b0: 2920 7c20 6c69 7374 270a 2020 7461 6773  ) | list'.  tags
│ │ │ +001c87c0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +001c87d0: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ +001c87e0: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ +001c87f0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001c8800: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ +001c8810: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ +001c8820: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001c8830: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ +001c8840: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ +001c8850: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +001c8860: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +001c8870: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +001c8880: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +001c8890: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001c88a0: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76  - mount_option_v
│ │ │ +001c88b0: 6172 5f6c 6f67 5f61 7564 6974 5f6e 6f64  ar_log_audit_nod
│ │ │ +001c88c0: 6576 0a20 202d 206e 6f5f 7265 626f 6f74  ev.  - no_reboot
│ │ │ +001c88d0: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ +001c88e0: 2027 4164 6420 6e6f 6465 7620 4f70 7469   'Add nodev Opti
│ │ │ +001c88f0: 6f6e 2074 6f20 2f76 6172 2f6c 6f67 2f61  on to /var/log/a
│ │ │ +001c8900: 7564 6974 3a20 4372 6561 7465 206d 6f75  udit: Create mou
│ │ │ +001c8910: 6e74 5f69 6e66 6f20 6469 6374 696f 6e61  nt_info dictiona
│ │ │ +001c8920: 7279 2076 6172 6961 626c 6527 0a20 2073  ry variable'.  s
│ │ │ +001c8930: 6574 5f66 6163 743a 0a20 2020 206d 6f75  et_fact:.    mou
│ │ │ +001c8940: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75  nt_info: '{{ mou
│ │ │ +001c8950: 6e74 5f69 6e66 6f7c 6465 6661 756c 7428  nt_info|default(
│ │ │ +001c8960: 7b7d 297c 636f 6d62 696e 6528 7b69 7465  {})|combine({ite
│ │ │ +001c8970: 6d2e 303a 2069 7465 6d2e 317d 2920 7d7d  m.0: item.1}) }}
│ │ │ +001c8980: 270a 2020 7769 7468 5f74 6f67 6574 6865  '.  with_togethe
│ │ │ +001c8990: 723a 0a20 202d 2027 7b7b 2064 6576 6963  r:.  - '{{ devic
│ │ │ +001c89a0: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ +001c89b0: 6e65 735b 305d 2e73 706c 6974 2829 207c  nes[0].split() |
│ │ │ +001c89c0: 206d 6170 2827 276c 6f77 6572 2727 2920   map(''lower'') 
│ │ │ +001c89d0: 7c20 6c69 7374 207d 7d27 0a20 202d 2027  | list }}'.  - '
│ │ │ +001c89e0: 7b7b 2064 6576 6963 655f 6e61 6d65 2e73  {{ device_name.s
│ │ │ +001c89f0: 7464 6f75 745f 6c69 6e65 735b 315d 2e73  tdout_lines[1].s
│ │ │ +001c8a00: 706c 6974 2829 207c 206c 6973 7420 7d7d  plit() | list }}
│ │ │ +001c8a10: 270a 2020 7768 656e 3a0a 2020 2d20 2820  '.  when:.  - ( 
│ │ │ +001c8a20: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ +001c8a30: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001c8a40: 7061 636b 6167 6573 2061 6e64 2022 7270  packages and "rp
│ │ │ +001c8a50: 6d2d 6f73 7472 6565 2220 696e 2061 6e73  m-ostree" in ans
│ │ │ +001c8a60: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001c8a70: 6765 730a 2020 2020 616e 6420 2262 6f6f  ges.    and "boo
│ │ │ +001c8a80: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ +001c8a90: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001c8aa0: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ +001c8ab0: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ +001c8ac0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001c8ad0: 6765 730a 2020 2020 616e 6420 226f 7374  ges.    and "ost
│ │ │ +001c8ae0: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001c8af0: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061  proc_cmdline ) a
│ │ │ +001c8b00: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ +001c8b10: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ +001c8b20: 7479 7065 2069 6e0a 2020 2020 5b22 646f  type in.    ["do
│ │ │ +001c8b30: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ +001c8b40: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ +001c8b50: 2c20 2263 6f6e 7461 696e 6572 225d 2029  , "container"] )
│ │ │ +001c8b60: 2029 0a20 202d 2027 222f 7661 722f 6c6f   ).  - '"/var/lo
│ │ │ +001c8b70: 672f 6175 6469 7422 2069 6e20 616e 7369  g/audit" in ansi
│ │ │ +001c8b80: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ +001c8b90: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ +001c8ba0: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ +001c8bb0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001c8bc0: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ +001c8bd0: 6420 6465 7669 6365 5f6e 616d 652e 7374  d device_name.st
│ │ │ +001c8be0: 646f 7574 5f6c 696e 6573 2069 7320 6465  dout_lines is de
│ │ │ +001c8bf0: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ +001c8c00: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ +001c8c10: 6c65 6e67 7468 2026 6774 3b20 3029 0a20  length > 0). 
│ │ │ +001c8c20: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +001c8c30: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ +001c8c40: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001c8c50: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ +001c8c60: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +001c8c70: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001c8c80: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001c8c90: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ +001c8ca0: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ +001c8cb0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +001c8cc0: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +001c8cd0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001c8ce0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001c8cf0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001c8d00: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001c8d10: 696f 6e5f 7661 725f 6c6f 675f 6175 6469  ion_var_log_audi
│ │ │ +001c8d20: 745f 6e6f 6465 760a 2020 2d20 6e6f 5f72  t_nodev.  - no_r
│ │ │ +001c8d30: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +001c8d40: 6e61 6d65 3a20 2741 6464 206e 6f64 6576  name: 'Add nodev
│ │ │ +001c8d50: 204f 7074 696f 6e20 746f 202f 7661 722f   Option to /var/
│ │ │ +001c8d60: 6c6f 672f 6175 6469 743a 2049 6620 2f76  log/audit: If /v
│ │ │ +001c8d70: 6172 2f6c 6f67 2f61 7564 6974 206e 6f74  ar/log/audit not
│ │ │ +001c8d80: 206d 6f75 6e74 6564 2c20 6372 6166 740a   mounted, craft.
│ │ │ +001c8d90: 2020 2020 6d6f 756e 745f 696e 666f 206d      mount_info m
│ │ │ +001c8da0: 616e 7561 6c6c 7927 0a20 2073 6574 5f66  anually'.  set_f
│ │ │ +001c8db0: 6163 743a 0a20 2020 206d 6f75 6e74 5f69  act:.    mount_i
│ │ │ +001c8dc0: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69  nfo: '{{ mount_i
│ │ │ +001c8dd0: 6e66 6f7c 6465 6661 756c 7428 7b7d 297c  nfo|default({})|
│ │ │ +001c8de0: 636f 6d62 696e 6528 7b69 7465 6d2e 303a  combine({item.0:
│ │ │ +001c8df0: 2069 7465 6d2e 317d 2920 7d7d 270a 2020   item.1}) }}'.  
│ │ │ +001c8e00: 7769 7468 5f74 6f67 6574 6865 723a 0a20  with_together:. 
│ │ │ +001c8e10: 202d 202d 2074 6172 6765 740a 2020 2020   - - target.    
│ │ │ +001c8e20: 2d20 736f 7572 6365 0a20 2020 202d 2066  - source.    - f
│ │ │ +001c8e30: 7374 7970 650a 2020 2020 2d20 6f70 7469  stype.    - opti
│ │ │ +001c8e40: 6f6e 730a 2020 2d20 2d20 2f76 6172 2f6c  ons.  - - /var/l
│ │ │ +001c8e50: 6f67 2f61 7564 6974 0a20 2020 202d 2027  og/audit.    - '
│ │ │ +001c8e60: 270a 2020 2020 2d20 2727 0a20 2020 202d  '.    - ''.    -
│ │ │ +001c8e70: 2064 6566 6175 6c74 730a 2020 7768 656e   defaults.  when
│ │ │ +001c8e80: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ +001c8e90: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +001c8ea0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001c8eb0: 2061 6e64 2022 7270 6d2d 6f73 7472 6565   and "rpm-ostree
│ │ │ +001c8ec0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001c8ed0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +001c8ee0: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ +001c8ef0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001c8f00: 6b61 6765 7320 616e 6420 6e6f 7420 226f  kages and not "o
│ │ │ +001c8f10: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ +001c8f20: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001c8f30: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +001c8f40: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ +001c8f50: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ +001c8f60: 6c69 6e65 2029 2061 6e64 206e 6f74 2028  line ) and not (
│ │ │ +001c8f70: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ +001c8f80: 697a 6174 696f 6e5f 7479 7065 2069 6e0a  ization_type in.
│ │ │ +001c8f90: 2020 2020 5b22 646f 636b 6572 222c 2022      ["docker", "
│ │ │ +001c8fa0: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ +001c8fb0: 2270 6f64 6d61 6e22 2c20 2263 6f6e 7461  "podman", "conta
│ │ │ +001c8fc0: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ +001c8fd0: 222f 7661 722f 6c6f 672f 6175 6469 7422  "/var/log/audit"
│ │ │ +001c8fe0: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ +001c8ff0: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ +001c9000: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ +001c9010: 7374 270a 2020 2d20 2822 2d2d 6673 7461  st'.  - ("--fsta
│ │ │ +001c9020: 6222 207c 206c 656e 6774 6820 3d3d 2030  b" | length == 0
│ │ │ +001c9030: 290a 2020 2d20 6465 7669 6365 5f6e 616d  ).  - device_nam
│ │ │ +001c9040: 652e 7374 646f 7574 2069 7320 6465 6669  e.stdout is defi
│ │ │ +001c9050: 6e65 6420 616e 6420 6465 7669 6365 5f6e  ned and device_n
│ │ │ +001c9060: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ +001c9070: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ +001c9080: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ +001c9090: 6f75 7420 7c20 6c65 6e67 7468 203d 3d20  out | length == 
│ │ │ +001c90a0: 3029 0a20 2074 6167 733a 0a20 202d 204e  0).  tags:.  - N
│ │ │ +001c90b0: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ +001c90c0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001c90d0: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ +001c90e0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +001c90f0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001c9100: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +001c9110: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +001c9120: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001c9130: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ +001c9140: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +001c9150: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +001c9160: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +001c9170: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +001c9180: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +001c9190: 5f6f 7074 696f 6e5f 7661 725f 6c6f 675f  _option_var_log_
│ │ │ +001c91a0: 6175 6469 745f 6e6f 6465 760a 2020 2d20  audit_nodev.  - 
│ │ │ +001c91b0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001c91c0: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ +001c91d0: 6f64 6576 204f 7074 696f 6e20 746f 202f  odev Option to /
│ │ │ +001c91e0: 7661 722f 6c6f 672f 6175 6469 743a 204d  var/log/audit: M
│ │ │ +001c91f0: 616b 6520 7375 7265 206e 6f64 6576 206f  ake sure nodev o
│ │ │ +001c9200: 7074 696f 6e20 6973 2070 6172 7420 6f66  ption is part of
│ │ │ +001c9210: 2074 6865 0a20 2020 2074 6f20 2f76 6172   the.    to /var
│ │ │ +001c9220: 2f6c 6f67 2f61 7564 6974 206f 7074 696f  /log/audit optio
│ │ │ +001c9230: 6e73 270a 2020 7365 745f 6661 6374 3a0a  ns'.  set_fact:.
│ │ │ +001c9240: 2020 2020 6d6f 756e 745f 696e 666f 3a20      mount_info: 
│ │ │ +001c9250: 277b 7b20 6d6f 756e 745f 696e 666f 207c  '{{ mount_info |
│ │ │ +001c9260: 2063 6f6d 6269 6e65 2820 7b27 276f 7074   combine( {''opt
│ │ │ +001c9270: 696f 6e73 2727 3a27 2727 277e 286d 6f75  ions'':''''~(mou
│ │ │ +001c9280: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ +001c9290: 7c0a 2020 2020 2020 6465 6661 756c 7428  |.      default(
│ │ │ +001c92a0: 2727 2727 2929 7e28 2727 2c27 2720 6966  ''''))~('','' if
│ │ │ +001c92b0: 2028 6d6f 756e 745f 696e 666f 2e6f 7074   (mount_info.opt
│ │ │ +001c92c0: 696f 6e73 207c 2064 6566 6175 6c74 2827  ions | default('
│ │ │ +001c92d0: 2727 2729 2920 656c 7365 2027 2727 2729  ''')) else '''')
│ │ │ +001c92e0: 7e27 276e 6f64 6576 2727 0a20 2020 2020  ~''nodev''.     
│ │ │ +001c92f0: 207d 2920 7d7d 270a 2020 7768 656e 3a0a   }) }}'.  when:.
│ │ │ +001c9300: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ +001c9310: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +001c9320: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001c9330: 6e64 2022 7270 6d2d 6f73 7472 6565 2220  nd "rpm-ostree" 
│ │ │ +001c9340: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001c9350: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001c9360: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ +001c9370: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001c9380: 6765 7320 616e 6420 6e6f 7420 226f 7065  ges and not "ope
│ │ │ +001c9390: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ +001c93a0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001c93b0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001c93c0: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ +001c93d0: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ +001c93e0: 6e65 2029 2061 6e64 206e 6f74 2028 2061  ne ) and not ( a
│ │ │ +001c93f0: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ +001c9400: 6174 696f 6e5f 7479 7065 2069 6e0a 2020  ation_type in.  
│ │ │ +001c9410: 2020 5b22 646f 636b 6572 222c 2022 6c78    ["docker", "lx
│ │ │ +001c9420: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ +001c9430: 6f64 6d61 6e22 2c20 2263 6f6e 7461 696e  odman", "contain
│ │ │ +001c9440: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ +001c9450: 7661 722f 6c6f 672f 6175 6469 7422 2069  var/log/audit" i
│ │ │ +001c9460: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ +001c9470: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ +001c9480: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ +001c9490: 270a 2020 2d20 6d6f 756e 745f 696e 666f  '.  - mount_info
│ │ │ +001c94a0: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ +001c94b0: 226e 6f64 6576 2220 6e6f 7420 696e 2028  "nodev" not in (
│ │ │ +001c94c0: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ +001c94d0: 6e73 207c 2064 6566 6175 6c74 2827 2729  ns | default('')
│ │ │ +001c94e0: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ +001c94f0: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ +001c9500: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001c9510: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ +001c9520: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +001c9530: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001c9540: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +001c9550: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +001c9560: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ +001c9570: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ +001c9580: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ +001c9590: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ +001c95a0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +001c95b0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +001c95c0: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ +001c95d0: 6f70 7469 6f6e 5f76 6172 5f6c 6f67 5f61  option_var_log_a
│ │ │ +001c95e0: 7564 6974 5f6e 6f64 6576 0a20 202d 206e  udit_nodev.  - n
│ │ │ +001c95f0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +001c9600: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ +001c9610: 6465 7620 4f70 7469 6f6e 2074 6f20 2f76  dev Option to /v
│ │ │ +001c9620: 6172 2f6c 6f67 2f61 7564 6974 3a20 456e  ar/log/audit: En
│ │ │ +001c9630: 7375 7265 202f 7661 722f 6c6f 672f 6175  sure /var/log/au
│ │ │ +001c9640: 6469 7420 6973 206d 6f75 6e74 6564 2077  dit is mounted w
│ │ │ +001c9650: 6974 680a 2020 2020 6e6f 6465 7620 6f70  ith.    nodev op
│ │ │ +001c9660: 7469 6f6e 270a 2020 616e 7369 626c 652e  tion'.  ansible.
│ │ │ +001c9670: 706f 7369 782e 6d6f 756e 743a 0a20 2020  posix.mount:.   
│ │ │ +001c9680: 2070 6174 683a 202f 7661 722f 6c6f 672f   path: /var/log/
│ │ │ +001c9690: 6175 6469 740a 2020 2020 7372 633a 2027  audit.    src: '
│ │ │ +001c96a0: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 736f  {{ mount_info.so
│ │ │ +001c96b0: 7572 6365 207c 2064 6566 6175 6c74 2827  urce | default('
│ │ │ +001c96c0: 2727 2729 207d 7d27 0a20 2020 206f 7074  ''') }}'.    opt
│ │ │ +001c96d0: 733a 2027 7b7b 206d 6f75 6e74 5f69 6e66  s: '{{ mount_inf
│ │ │ +001c96e0: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ +001c96f0: 756c 7428 2727 2727 2920 7d7d 270a 2020  ult('''') }}'.  
│ │ │ +001c9700: 2020 7374 6174 653a 206d 6f75 6e74 6564    state: mounted
│ │ │ +001c9710: 0a20 2020 2066 7374 7970 653a 2027 7b7b  .    fstype: '{{
│ │ │ +001c9720: 206d 6f75 6e74 5f69 6e66 6f2e 6673 7479   mount_info.fsty
│ │ │ +001c9730: 7065 207c 2064 6566 6175 6c74 2827 2727  pe | default('''
│ │ │ +001c9740: 2729 207d 7d27 0a20 2072 6567 6973 7465  ') }}'.  registe
│ │ │ +001c9750: 723a 206d 6f75 6e74 5f72 6573 756c 740a  r: mount_result.
│ │ │ +001c9760: 2020 6661 696c 6564 5f77 6865 6e3a 0a20    failed_when:. 
│ │ │ +001c9770: 202d 206d 6f75 6e74 5f72 6573 756c 7420   - mount_result 
│ │ │ +001c9780: 6973 2066 6169 6c65 640a 2020 2d20 2727  is failed.  - ''
│ │ │ +001c9790: 2774 6172 6765 7420 6973 2062 7573 7927  'target is busy'
│ │ │ +001c97a0: 2720 6e6f 7420 696e 2028 6d6f 756e 745f  ' not in (mount_
│ │ │ +001c97b0: 7265 7375 6c74 2e6d 7367 207c 2064 6566  result.msg | def
│ │ │ +001c97c0: 6175 6c74 2827 2727 2729 2927 0a20 202d  ault(''''))'.  -
│ │ │ +001c97d0: 2027 2727 616c 7265 6164 7920 6d6f 756e   '''already moun
│ │ │ +001c97e0: 7465 6427 2720 6e6f 7420 696e 2028 6d6f  ted'' not in (mo
│ │ │ +001c97f0: 756e 745f 7265 7375 6c74 2e6d 7367 207c  unt_result.msg |
│ │ │ +001c9800: 2064 6566 6175 6c74 2827 2727 2729 2927   default(''''))'
│ │ │ +001c9810: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ +001c9820: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ +001c9830: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001c9840: 6163 6b61 6765 7320 616e 6420 2272 706d  ackages and "rpm
│ │ │ +001c9850: 2d6f 7374 7265 6522 2069 6e20 616e 7369  -ostree" in ansi
│ │ │ +001c9860: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001c9870: 6573 0a20 2020 2061 6e64 2022 626f 6f74  es.    and "boot
│ │ │ +001c9880: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ +001c9890: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001c98a0: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ +001c98b0: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ +001c98c0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001c98d0: 6573 0a20 2020 2061 6e64 2022 6f73 7472  es.    and "ostr
│ │ │ +001c98e0: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ +001c98f0: 726f 635f 636d 646c 696e 6520 2920 616e  roc_cmdline ) an
│ │ │ +001c9900: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ +001c9910: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ +001c9920: 7970 6520 696e 0a20 2020 205b 2264 6f63  ype in.    ["doc
│ │ │ +001c9930: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ +001c9940: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ +001c9950: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ +001c9960: 290a 2020 2d20 2722 2f76 6172 2f6c 6f67  ).  - '"/var/log
│ │ │ +001c9970: 2f61 7564 6974 2220 696e 2061 6e73 6962  /audit" in ansib
│ │ │ +001c9980: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ +001c9990: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ +001c99a0: 2229 207c 206c 6973 7427 0a20 202d 206d  ") | list'.  - m
│ │ │ +001c99b0: 6f75 6e74 5f69 6e66 6f20 6973 2064 6566  ount_info is def
│ │ │ +001c99c0: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ +001c99d0: 5f6e 616d 652e 7374 646f 7574 2069 7320  _name.stdout is 
│ │ │ +001c99e0: 6465 6669 6e65 6420 616e 6420 2864 6576  defined and (dev
│ │ │ +001c99f0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ +001c9a00: 7c20 6c65 6e67 7468 2026 6774 3b20 3029  | length > 0)
│ │ │ +001c9a10: 2920 6f72 2028 222d 2d66 7374 6162 220a  ) or ("--fstab".
│ │ │ +001c9a20: 2020 2020 7c20 6c65 6e67 7468 203d 3d20      | length == 
│ │ │ +001c9a30: 3029 0a20 2074 6167 733a 0a20 202d 204e  0).  tags:.  - N
│ │ │ +001c9a40: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ +001c9a50: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001c9a60: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ +001c9a70: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +001c9a80: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001c9a90: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +001c9aa0: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +001c9ab0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001c9ac0: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ +001c9ad0: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +001c9ae0: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +001c9af0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +001c9b00: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +001c9b10: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +001c9b20: 5f6f 7074 696f 6e5f 7661 725f 6c6f 675f  _option_var_log_
│ │ │ +001c9b30: 6175 6469 745f 6e6f 6465 760a 2020 2d20  audit_nodev.  - 
│ │ │ +001c9b40: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001c9b50: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation She │ │ │ +001c9c10: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...
C │ │ │ +001c8310: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +001c8340: 6f6e 3a3c 2f74 683e 3c74 643e 6869 6768 on:high │ │ │ +001c8350: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +001c8390: 793a 3c2f 7468 3e3c 7464 3e63 6f6e 6669 y:confi │ │ │ +001c83a0: 6775 7265 3c2f 7464 3e3c 2f74 723e 3c2f gure
# Remediation i
│ │ │ +001c9ce0: 7320 6170 706c 6963 6162 6c65 206f 6e6c  s applicable onl
│ │ │ +001c9cf0: 7920 696e 2063 6572 7461 696e 2070 6c61  y in certain pla
│ │ │ +001c9d00: 7466 6f72 6d73 0a69 6620 2820 2120 2820  tforms.if ( ! ( 
│ │ │ +001c9d10: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ +001c9d20: 206b 6572 6e65 6c20 3b7d 2026 616d 703b   kernel ;} &
│ │ │ +001c9d30: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ +001c9d40: 6965 7420 2d71 2072 706d 2d6f 7374 7265  iet -q rpm-ostre
│ │ │ +001c9d50: 6520 3b7d 2026 616d 703b 2661 6d70 3b20  e ;} && 
│ │ │ +001c9d60: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ +001c9d70: 2062 6f6f 7463 203b 7d20 2661 6d70 3b26   bootc ;} &&
│ │ │ +001c9d80: 616d 703b 207b 2021 2072 706d 202d 2d71  amp; { ! rpm --q
│ │ │ +001c9d90: 7569 6574 202d 7120 6f70 656e 7368 6966  uiet -q openshif
│ │ │ +001c9da0: 742d 6b75 6265 6c65 7420 3b7d 2026 616d  t-kubelet ;} &am
│ │ │ +001c9db0: 703b 2661 6d70 3b20 285b 202d 6620 2f72  p;& ([ -f /r
│ │ │ +001c9dc0: 756e 2f6f 7374 7265 652d 626f 6f74 6564  un/ostree-booted
│ │ │ +001c9dd0: 205d 207c 7c20 5b20 2d4c 202f 6f73 7472   ] || [ -L /ostr
│ │ │ +001c9de0: 6565 205d 2920 2920 2661 6d70 3b26 616d  ee ]) ) &&am
│ │ │ +001c9df0: 703b 2021 2028 205b 202d 6620 2f2e 646f  p; ! ( [ -f /.do
│ │ │ +001c9e00: 636b 6572 656e 7620 5d20 7c7c 205b 202d  ckerenv ] || [ -
│ │ │ +001c9e10: 6620 2f72 756e 2f2e 636f 6e74 6169 6e65  f /run/.containe
│ │ │ +001c9e20: 7265 6e76 205d 2029 2029 2026 616d 703b  renv ] ) ) &
│ │ │ +001c9e30: 2661 6d70 3b20 7b20 2820 6669 6e64 6d6e  & { ( findmn
│ │ │ +001c9e40: 7420 2d2d 6b65 726e 656c 2022 2f76 6172  t --kernel "/var
│ │ │ +001c9e50: 2f6c 6f67 2f61 7564 6974 2220 2667 743b  /log/audit" >
│ │ │ +001c9e60: 202f 6465 762f 6e75 6c6c 207c 7c20 6669   /dev/null || fi
│ │ │ +001c9e70: 6e64 6d6e 7420 2d2d 6673 7461 6220 222f  ndmnt --fstab "/
│ │ │ +001c9e80: 7661 722f 6c6f 672f 6175 6469 7422 2026  var/log/audit" &
│ │ │ +001c9e90: 6774 3b20 2f64 6576 2f6e 756c 6c20 293b  gt; /dev/null );
│ │ │ +001c9ea0: 207d 3b20 7468 656e 0a0a 6675 6e63 7469   }; then..functi
│ │ │ +001c9eb0: 6f6e 2070 6572 666f 726d 5f72 656d 6564  on perform_remed
│ │ │ +001c9ec0: 6961 7469 6f6e 207b 0a0a 2020 2020 0a20  iation {..    . 
│ │ │ +001c9ed0: 2020 2020 2020 2023 2074 6865 206d 6f75         # the mou
│ │ │ +001c9ee0: 6e74 2070 6f69 6e74 202f 7661 722f 6c6f  nt point /var/lo
│ │ │ +001c9ef0: 672f 6175 6469 7420 6861 7320 746f 2062  g/audit has to b
│ │ │ +001c9f00: 6520 6465 6669 6e65 6420 696e 202f 6574  e defined in /et
│ │ │ +001c9f10: 632f 6673 7461 620a 2020 2020 2020 2020  c/fstab.        
│ │ │ +001c9f20: 2320 6265 666f 7265 2074 6869 7320 7265  # before this re
│ │ │ +001c9f30: 6d65 6469 6174 696f 6e20 6361 6e20 6265  mediation can be
│ │ │ +001c9f40: 2065 7865 6375 7465 642e 2049 6e20 6361   executed. In ca
│ │ │ +001c9f50: 7365 2069 7420 6973 206e 6f74 2064 6566  se it is not def
│ │ │ +001c9f60: 696e 6564 2c20 7468 650a 2020 2020 2020  ined, the.      
│ │ │ +001c9f70: 2020 2320 7265 6d65 6469 6174 696f 6e20    # remediation 
│ │ │ +001c9f80: 6162 6f72 7473 2061 6e64 206e 6f20 6368  aborts and no ch
│ │ │ +001c9f90: 616e 6765 7320 7265 6761 7264 696e 6720  anges regarding 
│ │ │ +001c9fa0: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ +001c9fb0: 6172 6520 646f 6e65 2e0a 2020 2020 2020  are done..      
│ │ │ +001c9fc0: 2020 6d6f 756e 745f 706f 696e 745f 6d61    mount_point_ma
│ │ │ +001c9fd0: 7463 685f 7265 6765 7870 3d22 2428 7072  tch_regexp="$(pr
│ │ │ +001c9fe0: 696e 7466 2022 5e5b 5b3a 7370 6163 653a  intf "^[[:space:
│ │ │ +001c9ff0: 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163  ]]*[^#].*[[:spac
│ │ │ +001ca000: 653a 5d5d 2573 5b5b 3a73 7061 6365 3a5d  e:]]%s[[:space:]
│ │ │ +001ca010: 5d22 2022 2f76 6172 2f6c 6f67 2f61 7564  ]" "/var/log/aud
│ │ │ +001ca020: 6974 2229 220a 0a20 2020 2067 7265 7020  it")"..    grep 
│ │ │ +001ca030: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ +001ca040: 7463 685f 7265 6765 7870 2220 2d71 202f  tch_regexp" -q /
│ │ │ +001ca050: 6574 632f 6673 7461 6220 5c0a 2020 2020  etc/fstab \.    
│ │ │ +001ca060: 2020 2020 7c7c 207b 2065 6368 6f20 2254      || { echo "T
│ │ │ +001ca070: 6865 206d 6f75 6e74 2070 6f69 6e74 2027  he mount point '
│ │ │ +001ca080: 2f76 6172 2f6c 6f67 2f61 7564 6974 2720  /var/log/audit' 
│ │ │ +001ca090: 6973 206e 6f74 2065 7665 6e20 696e 202f  is not even in /
│ │ │ +001ca0a0: 6574 632f 6673 7461 622c 2073 6f20 7765  etc/fstab, so we
│ │ │ +001ca0b0: 2063 616e 2774 2073 6574 2075 7020 6d6f   can't set up mo
│ │ │ +001ca0c0: 756e 7420 6f70 7469 6f6e 7322 2026 6774  unt options" >
│ │ │ +001ca0d0: 3b26 616d 703b 323b 0a20 2020 2020 2020  ;&2;.       
│ │ │ +001ca0e0: 2020 2020 2020 2020 2065 6368 6f20 224e           echo "N
│ │ │ +001ca0f0: 6f74 2072 656d 6564 6961 7469 6e67 2c20  ot remediating, 
│ │ │ +001ca100: 6265 6361 7573 6520 7468 6572 6520 6973  because there is
│ │ │ +001ca110: 206e 6f20 7265 636f 7264 206f 6620 2f76   no record of /v
│ │ │ +001ca120: 6172 2f6c 6f67 2f61 7564 6974 2069 6e20  ar/log/audit in 
│ │ │ +001ca130: 2f65 7463 2f66 7374 6162 2220 2667 743b  /etc/fstab" >
│ │ │ +001ca140: 2661 6d70 3b32 3b20 7265 7475 726e 2031  &2; return 1
│ │ │ +001ca150: 3b20 7d0a 2020 2020 0a0a 0a20 2020 206d  ; }.    ...    m
│ │ │ +001ca160: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001ca170: 5f72 6567 6578 703d 2224 2870 7269 6e74  _regexp="$(print
│ │ │ +001ca180: 6620 225e 5b5b 3a73 7061 6365 3a5d 5d2a  f "^[[:space:]]*
│ │ │ +001ca190: 5b5e 235d 2e2a 5b5b 3a73 7061 6365 3a5d  [^#].*[[:space:]
│ │ │ +001ca1a0: 5d25 735b 5b3a 7370 6163 653a 5d5d 2220  ]%s[[:space:]]" 
│ │ │ +001ca1b0: 2f76 6172 2f6c 6f67 2f61 7564 6974 2922  /var/log/audit)"
│ │ │ +001ca1c0: 0a0a 2020 2020 2320 4966 2074 6865 206d  ..    # If the m
│ │ │ +001ca1d0: 6f75 6e74 2070 6f69 6e74 2069 7320 6e6f  ount point is no
│ │ │ +001ca1e0: 7420 696e 202f 6574 632f 6673 7461 622c  t in /etc/fstab,
│ │ │ +001ca1f0: 2067 6574 2070 7265 7669 6f75 7320 6d6f   get previous mo
│ │ │ +001ca200: 756e 7420 6f70 7469 6f6e 7320 6672 6f6d  unt options from
│ │ │ +001ca210: 202f 6574 632f 6d74 6162 0a20 2020 2069   /etc/mtab.    i
│ │ │ +001ca220: 6620 2120 6772 6570 202d 7120 2224 6d6f  f ! grep -q "$mo
│ │ │ +001ca230: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001ca240: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ +001ca250: 6162 3b20 7468 656e 0a20 2020 2020 2020  ab; then.       
│ │ │ +001ca260: 2023 2072 756e 7469 6d65 206f 7074 7320   # runtime opts 
│ │ │ +001ca270: 7769 7468 6f75 7420 736f 6d65 2061 7574  without some aut
│ │ │ +001ca280: 6f6d 6174 6963 206b 6572 6e65 6c2f 7573  omatic kernel/us
│ │ │ +001ca290: 6572 7370 6163 652d 6164 6465 6420 6465  erspace-added de
│ │ │ +001ca2a0: 6661 756c 7473 0a20 2020 2020 2020 2070  faults.        p
│ │ │ +001ca2b0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001ca2c0: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ +001ca2d0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001ca2e0: 6765 7870 2220 2f65 7463 2f6d 7461 6220  gexp" /etc/mtab 
│ │ │ +001ca2f0: 7c20 6865 6164 202d 3120 7c20 2061 776b  | head -1 |  awk
│ │ │ +001ca300: 2027 7b70 7269 6e74 2024 347d 2720 5c0a   '{print $4}' \.
│ │ │ +001ca310: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +001ca320: 2020 2020 7c20 7365 6420 2d45 2022 732f      | sed -E "s/
│ │ │ +001ca330: 2872 777c 6465 6661 756c 7473 7c73 6563  (rw|defaults|sec
│ │ │ +001ca340: 6c61 6265 6c7c 6e6f 6465 7629 282c 7c24  label|nodev)(,|$
│ │ │ +001ca350: 292f 2f67 3b73 2f2c 242f 2f22 290a 2020  )//g;s/,$//").  
│ │ │ +001ca360: 2020 2020 2020 5b20 2224 7072 6576 696f        [ "$previo
│ │ │ +001ca370: 7573 5f6d 6f75 6e74 5f6f 7074 7322 205d  us_mount_opts" ]
│ │ │ +001ca380: 2026 616d 703b 2661 6d70 3b20 7072 6576   && prev
│ │ │ +001ca390: 696f 7573 5f6d 6f75 6e74 5f6f 7074 732b  ious_mount_opts+
│ │ │ +001ca3a0: 3d22 2c22 0a20 2020 2020 2020 2023 2049  =",".        # I
│ │ │ +001ca3b0: 6e20 6973 6f39 3636 3020 6669 6c65 7379  n iso9660 filesy
│ │ │ +001ca3c0: 7374 656d 7320 6d74 6162 2063 6f75 6c64  stems mtab could
│ │ │ +001ca3d0: 2064 6573 6372 6962 6520 6120 2262 6c6f   describe a "blo
│ │ │ +001ca3e0: 636b 7369 7a65 2220 7661 6c75 652c 2074  cksize" value, t
│ │ │ +001ca3f0: 6869 7320 7368 6f75 6c64 2062 6520 7265  his should be re
│ │ │ +001ca400: 666c 6563 7465 6420 696e 0a20 2020 2020  flected in.     
│ │ │ +001ca410: 2020 2023 2066 7374 6162 2061 7320 2262     # fstab as "b
│ │ │ +001ca420: 6c6f 636b 222e 2020 5468 6520 6e65 7874  lock".  The next
│ │ │ +001ca430: 2076 6172 6961 626c 6520 6973 2074 6f20   variable is to 
│ │ │ +001ca440: 7361 7469 7366 7920 7368 656c 6c63 6865  satisfy shellche
│ │ │ +001ca450: 636b 2053 4332 3035 302e 0a20 2020 2020  ck SC2050..     
│ │ │ +001ca460: 2020 2066 735f 7479 7065 3d22 220a 2020     fs_type="".  
│ │ │ +001ca470: 2020 2020 2020 6966 205b 2020 2224 6673        if [  "$fs
│ │ │ +001ca480: 5f74 7970 6522 203d 3d20 2269 736f 3936  _type" == "iso96
│ │ │ +001ca490: 3630 2220 5d20 3b20 7468 656e 0a20 2020  60" ] ; then.   
│ │ │ +001ca4a0: 2020 2020 2020 2020 2070 7265 7669 6f75           previou
│ │ │ +001ca4b0: 735f 6d6f 756e 745f 6f70 7473 3d24 2873  s_mount_opts=$(s
│ │ │ +001ca4c0: 6564 2027 732f 626c 6f63 6b73 697a 653d  ed 's/blocksize=
│ │ │ +001ca4d0: 2f62 6c6f 636b 3d2f 2720 266c 743b 266c  /block=/' <&l
│ │ │ +001ca4e0: 743b 266c 743b 2022 2470 7265 7669 6f75  t;< "$previou
│ │ │ +001ca4f0: 735f 6d6f 756e 745f 6f70 7473 2229 0a20  s_mount_opts"). 
│ │ │ +001ca500: 2020 2020 2020 2066 690a 2020 2020 2020         fi.      
│ │ │ +001ca510: 2020 6563 686f 2022 202f 7661 722f 6c6f    echo " /var/lo
│ │ │ +001ca520: 672f 6175 6469 7420 2064 6566 6175 6c74  g/audit  default
│ │ │ +001ca530: 732c 247b 7072 6576 696f 7573 5f6d 6f75  s,${previous_mou
│ │ │ +001ca540: 6e74 5f6f 7074 737d 6e6f 6465 7620 3020  nt_opts}nodev 0 
│ │ │ +001ca550: 3022 2026 6774 3b26 6774 3b20 2f65 7463  0" >> /etc
│ │ │ +001ca560: 2f66 7374 6162 0a20 2020 2023 2049 6620  /fstab.    # If 
│ │ │ +001ca570: 7468 6520 6d6f 756e 745f 6f70 7420 6f70  the mount_opt op
│ │ │ +001ca580: 7469 6f6e 2069 7320 6e6f 7420 616c 7265  tion is not alre
│ │ │ +001ca590: 6164 7920 696e 2074 6865 206d 6f75 6e74  ady in the mount
│ │ │ +001ca5a0: 2070 6f69 6e74 2773 202f 6574 632f 6673   point's /etc/fs
│ │ │ +001ca5b0: 7461 6220 656e 7472 792c 2061 6464 2069  tab entry, add i
│ │ │ +001ca5c0: 740a 2020 2020 656c 6966 2021 2067 7265  t.    elif ! gre
│ │ │ +001ca5d0: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ +001ca5e0: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ +001ca5f0: 7463 2f66 7374 6162 207c 2067 7265 7020  tc/fstab | grep 
│ │ │ +001ca600: 2d71 2022 6e6f 6465 7622 3b20 7468 656e  -q "nodev"; then
│ │ │ +001ca610: 0a20 2020 2020 2020 2070 7265 7669 6f75  .        previou
│ │ │ +001ca620: 735f 6d6f 756e 745f 6f70 7473 3d24 2867  s_mount_opts=$(g
│ │ │ +001ca630: 7265 7020 2224 6d6f 756e 745f 706f 696e  rep "$mount_poin
│ │ │ +001ca640: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ +001ca650: 2f65 7463 2f66 7374 6162 207c 2061 776b  /etc/fstab | awk
│ │ │ +001ca660: 2027 7b70 7269 6e74 2024 347d 2729 0a20   '{print $4}'). 
│ │ │ +001ca670: 2020 2020 2020 2073 6564 202d 6920 2273         sed -i "s
│ │ │ +001ca680: 7c5c 2824 7b6d 6f75 6e74 5f70 6f69 6e74  |\(${mount_point
│ │ │ +001ca690: 5f6d 6174 6368 5f72 6567 6578 707d 2e2a  _match_regexp}.*
│ │ │ +001ca6a0: 247b 7072 6576 696f 7573 5f6d 6f75 6e74  ${previous_mount
│ │ │ +001ca6b0: 5f6f 7074 737d 5c29 7c5c 312c 6e6f 6465  _opts}\)|\1,node
│ │ │ +001ca6c0: 767c 2220 2f65 7463 2f66 7374 6162 0a20  v|" /etc/fstab. 
│ │ │ +001ca6d0: 2020 2066 690a 0a0a 2020 2020 6966 206d     fi...    if m
│ │ │ +001ca6e0: 6b64 6972 202d 7020 222f 7661 722f 6c6f  kdir -p "/var/lo
│ │ │ +001ca6f0: 672f 6175 6469 7422 3b20 7468 656e 0a20  g/audit"; then. 
│ │ │ +001ca700: 2020 2020 2020 2069 6620 6d6f 756e 7470         if mountp
│ │ │ +001ca710: 6f69 6e74 202d 7120 222f 7661 722f 6c6f  oint -q "/var/lo
│ │ │ +001ca720: 672f 6175 6469 7422 3b20 7468 656e 0a20  g/audit"; then. 
│ │ │ +001ca730: 2020 2020 2020 2020 2020 206d 6f75 6e74             mount
│ │ │ +001ca740: 202d 6f20 7265 6d6f 756e 7420 2d2d 7461   -o remount --ta
│ │ │ +001ca750: 7267 6574 2022 2f76 6172 2f6c 6f67 2f61  rget "/var/log/a
│ │ │ +001ca760: 7564 6974 220a 2020 2020 2020 2020 6669  udit".        fi
│ │ │ +001ca770: 0a20 2020 2066 690a 7d0a 0a70 6572 666f  .    fi.}..perfo
│ │ │ +001ca780: 726d 5f72 656d 6564 6961 7469 6f6e 0a0a  rm_remediation..
│ │ │ +001ca790: 656c 7365 0a20 2020 2026 6774 3b26 616d  else.    >&am
│ │ │ +001ca7a0: 703b 3220 6563 686f 2027 5265 6d65 6469  p;2 echo 'Remedi
│ │ │ +001ca7b0: 6174 696f 6e20 6973 206e 6f74 2061 7070  ation is not app
│ │ │ +001ca7c0: 6c69 6361 626c 652c 206e 6f74 6869 6e67  licable, nothing
│ │ │ +001ca7d0: 2077 6173 2064 6f6e 6527 0a66 690a 3c2f   was done'.fi.
Re │ │ │ +001ca890: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ +001ca8a0: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
R │ │ │ +001c9ca0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +001c9cb0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c2f alse
│ │ │ +001ca940: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 < │ │ │ +001ca980: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +001ca990: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
.
│ │ │ +001ca9e0: 7061 7274 202f 7661 722f 6c6f 672f 6175  part /var/log/au
│ │ │ +001ca9f0: 6469 7420 2d2d 6d6f 756e 746f 7074 696f  dit --mountoptio
│ │ │ +001caa00: 6e73 3d22 6e6f 6465 7622 0a3c 2f63 6f64  ns="nodev".
│ │ │ +001ca930: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +001ca960: 696f 6e3a 3c2f 7468 3e3c 7464 3e68 6967 ion:hig │ │ │ +001ca970: 683c 2f74 643e 3c2f 7472 3e3c 7472 3e3c h
Strate │ │ │ +001ca9b0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +001ca9c0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Remediation An │ │ │ -001cb660: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ -001cb670: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -001cb6f0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -001cb710: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ -001cb740: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ -001cb790: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -001cb700: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -001cb720: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ -001cb770: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -001cb780: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable
.part /var/lo
│ │ │ -001cb7b0: 672f 6175 6469 7420 2d2d 6d6f 756e 746f  g/audit --mounto
│ │ │ -001cb7c0: 7074 696f 6e73 3d22 6e6f 6578 6563 220a  ptions="noexec".
│ │ │ -001cb7d0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -001cb880: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -001cb890: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -001cb8a0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -001cb970: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -001cb980: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f │ │ │ -001cb9c0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:low
Disrup │ │ │ -001cb950: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6869 tion:hi │ │ │ -001cb960: 6768 3c2f 7464 3e3c 2f74 723e 3c74 723e gh
Reboot:false
Strat │ │ │ -001cb9a0: 6567 793a 3c2f 7468 3e3c 7464 3e63 6f6e egy:con │ │ │ -001cb9b0: 6669 6775 7265 3c2f 7464 3e3c 2f74 723e figure
- name: Gathe
│ │ │ -001cb9e0: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ -001cb9f0: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ -001cba00: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ -001cba10: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ -001cba20: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001cba30: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ -001cba40: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ -001cba50: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -001cba60: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001cba70: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ -001cba80: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001cba90: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ -001cbaa0: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ -001cbab0: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -001cbac0: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -001cbad0: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -001cbae0: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -001cbaf0: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -001cbb00: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f  ount_option_var_
│ │ │ -001cbb10: 6c6f 675f 6175 6469 745f 6e6f 6578 6563  log_audit_noexec
│ │ │ -001cbb20: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -001cbb30: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ -001cbb40: 4164 6420 6e6f 6578 6563 204f 7074 696f  Add noexec Optio
│ │ │ -001cbb50: 6e20 746f 202f 7661 722f 6c6f 672f 6175  n to /var/log/au
│ │ │ -001cbb60: 6469 743a 2043 6865 636b 2069 6e66 6f72  dit: Check infor
│ │ │ -001cbb70: 6d61 7469 6f6e 2061 7373 6f63 6961 7465  mation associate
│ │ │ -001cbb80: 6420 746f 206d 6f75 6e74 706f 696e 7427  d to mountpoint'
│ │ │ -001cbb90: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -001cbba0: 696e 2e63 6f6d 6d61 6e64 3a20 6669 6e64  in.command: find
│ │ │ -001cbbb0: 6d6e 7420 2d2d 6673 7461 6220 272f 7661  mnt --fstab '/va
│ │ │ -001cbbc0: 722f 6c6f 672f 6175 6469 7427 0a20 2072  r/log/audit'.  r
│ │ │ -001cbbd0: 6567 6973 7465 723a 2064 6576 6963 655f  egister: device_
│ │ │ -001cbbe0: 6e61 6d65 0a20 2066 6169 6c65 645f 7768  name.  failed_wh
│ │ │ -001cbbf0: 656e 3a20 6465 7669 6365 5f6e 616d 652e  en: device_name.
│ │ │ -001cbc00: 7263 2026 6774 3b20 310a 2020 6368 616e  rc > 1.  chan
│ │ │ -001cbc10: 6765 645f 7768 656e 3a20 6661 6c73 650a  ged_when: false.
│ │ │ -001cbc20: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661    check_mode: fa
│ │ │ -001cbc30: 6c73 650a 2020 7768 656e 3a0a 2020 2d20  lse.  when:.  - 
│ │ │ -001cbc40: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -001cbc50: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001cbc60: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001cbc70: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ -001cbc80: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001cbc90: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ -001cbca0: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -001cbcb0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001cbcc0: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001cbcd0: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001cbce0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001cbcf0: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ -001cbd00: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001cbd10: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ -001cbd20: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001cbd30: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001cbd40: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ -001cbd50: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -001cbd60: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -001cbd70: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ -001cbd80: 2029 2029 0a20 202d 2027 222f 7661 722f   ) ).  - '"/var/
│ │ │ -001cbd90: 6c6f 672f 6175 6469 7422 2069 6e20 616e  log/audit" in an
│ │ │ -001cbda0: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ -001cbdb0: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ -001cbdc0: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ -001cbdd0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ -001cbde0: 3030 2d35 332d 4143 2d36 0a20 202d 204e  00-53-AC-6.  - N
│ │ │ -001cbdf0: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ -001cbe00: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ -001cbe10: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ -001cbe20: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -001cbe30: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -001cbe40: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ -001cbe50: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ -001cbe60: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ -001cbe70: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ -001cbe80: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -001cbe90: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -001cbea0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -001cbeb0: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ -001cbec0: 6f6e 5f76 6172 5f6c 6f67 5f61 7564 6974  on_var_log_audit
│ │ │ -001cbed0: 5f6e 6f65 7865 630a 2020 2d20 6e6f 5f72  _noexec.  - no_r
│ │ │ -001cbee0: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ -001cbef0: 6e61 6d65 3a20 2741 6464 206e 6f65 7865  name: 'Add noexe
│ │ │ -001cbf00: 6320 4f70 7469 6f6e 2074 6f20 2f76 6172  c Option to /var
│ │ │ -001cbf10: 2f6c 6f67 2f61 7564 6974 3a20 4372 6561  /log/audit: Crea
│ │ │ -001cbf20: 7465 206d 6f75 6e74 5f69 6e66 6f20 6469  te mount_info di
│ │ │ -001cbf30: 6374 696f 6e61 7279 2076 6172 6961 626c  ctionary variabl
│ │ │ -001cbf40: 6527 0a20 2073 6574 5f66 6163 743a 0a20  e'.  set_fact:. 
│ │ │ -001cbf50: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ -001cbf60: 7b7b 206d 6f75 6e74 5f69 6e66 6f7c 6465  {{ mount_info|de
│ │ │ -001cbf70: 6661 756c 7428 7b7d 297c 636f 6d62 696e  fault({})|combin
│ │ │ -001cbf80: 6528 7b69 7465 6d2e 303a 2069 7465 6d2e  e({item.0: item.
│ │ │ -001cbf90: 317d 2920 7d7d 270a 2020 7769 7468 5f74  1}) }}'.  with_t
│ │ │ -001cbfa0: 6f67 6574 6865 723a 0a20 202d 2027 7b7b  ogether:.  - '{{
│ │ │ -001cbfb0: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ -001cbfc0: 6f75 745f 6c69 6e65 735b 305d 2e73 706c  out_lines[0].spl
│ │ │ -001cbfd0: 6974 2829 207c 206d 6170 2827 276c 6f77  it() | map(''low
│ │ │ -001cbfe0: 6572 2727 2920 7c20 6c69 7374 207d 7d27  er'') | list }}'
│ │ │ -001cbff0: 0a20 202d 2027 7b7b 2064 6576 6963 655f  .  - '{{ device_
│ │ │ -001cc000: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ -001cc010: 735b 315d 2e73 706c 6974 2829 207c 206c  s[1].split() | l
│ │ │ -001cc020: 6973 7420 7d7d 270a 2020 7768 656e 3a0a  ist }}'.  when:.
│ │ │ -001cc030: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ -001cc040: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -001cc050: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001cc060: 6e64 2022 7270 6d2d 6f73 7472 6565 2220  nd "rpm-ostree" 
│ │ │ -001cc070: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001cc080: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001cc090: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ -001cc0a0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001cc0b0: 6765 7320 616e 6420 6e6f 7420 226f 7065  ges and not "ope
│ │ │ -001cc0c0: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ -001cc0d0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001cc0e0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001cc0f0: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ -001cc100: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ -001cc110: 6e65 2029 2061 6e64 206e 6f74 2028 2061  ne ) and not ( a
│ │ │ -001cc120: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ -001cc130: 6174 696f 6e5f 7479 7065 2069 6e0a 2020  ation_type in.  
│ │ │ -001cc140: 2020 5b22 646f 636b 6572 222c 2022 6c78    ["docker", "lx
│ │ │ -001cc150: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ -001cc160: 6f64 6d61 6e22 2c20 2263 6f6e 7461 696e  odman", "contain
│ │ │ -001cc170: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ -001cc180: 7661 722f 6c6f 672f 6175 6469 7422 2069  var/log/audit" i
│ │ │ -001cc190: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ -001cc1a0: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ -001cc1b0: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ -001cc1c0: 270a 2020 2d20 6465 7669 6365 5f6e 616d  '.  - device_nam
│ │ │ -001cc1d0: 652e 7374 646f 7574 2069 7320 6465 6669  e.stdout is defi
│ │ │ -001cc1e0: 6e65 6420 616e 6420 6465 7669 6365 5f6e  ned and device_n
│ │ │ -001cc1f0: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ -001cc200: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ -001cc210: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ -001cc220: 6f75 7420 7c20 6c65 6e67 7468 2026 6774  out | length >
│ │ │ -001cc230: 3b20 3029 0a20 2074 6167 733a 0a20 202d  ; 0).  tags:.  -
│ │ │ -001cc240: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001cc250: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ -001cc260: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ -001cc270: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -001cc280: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001cc290: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ -001cc2a0: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ -001cc2b0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001cc2c0: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ -001cc2d0: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ -001cc2e0: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ -001cc2f0: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ -001cc300: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ -001cc310: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ -001cc320: 6e74 5f6f 7074 696f 6e5f 7661 725f 6c6f  nt_option_var_lo
│ │ │ -001cc330: 675f 6175 6469 745f 6e6f 6578 6563 0a20  g_audit_noexec. 
│ │ │ -001cc340: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -001cc350: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ -001cc360: 6420 6e6f 6578 6563 204f 7074 696f 6e20  d noexec Option 
│ │ │ -001cc370: 746f 202f 7661 722f 6c6f 672f 6175 6469  to /var/log/audi
│ │ │ -001cc380: 743a 2049 6620 2f76 6172 2f6c 6f67 2f61  t: If /var/log/a
│ │ │ -001cc390: 7564 6974 206e 6f74 206d 6f75 6e74 6564  udit not mounted
│ │ │ -001cc3a0: 2c20 6372 6166 740a 2020 2020 6d6f 756e  , craft.    moun
│ │ │ -001cc3b0: 745f 696e 666f 206d 616e 7561 6c6c 7927  t_info manually'
│ │ │ -001cc3c0: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ -001cc3d0: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b   mount_info: '{{
│ │ │ -001cc3e0: 206d 6f75 6e74 5f69 6e66 6f7c 6465 6661   mount_info|defa
│ │ │ -001cc3f0: 756c 7428 7b7d 297c 636f 6d62 696e 6528  ult({})|combine(
│ │ │ -001cc400: 7b69 7465 6d2e 303a 2069 7465 6d2e 317d  {item.0: item.1}
│ │ │ -001cc410: 2920 7d7d 270a 2020 7769 7468 5f74 6f67  ) }}'.  with_tog
│ │ │ -001cc420: 6574 6865 723a 0a20 202d 202d 2074 6172  ether:.  - - tar
│ │ │ -001cc430: 6765 740a 2020 2020 2d20 736f 7572 6365  get.    - source
│ │ │ -001cc440: 0a20 2020 202d 2066 7374 7970 650a 2020  .    - fstype.  
│ │ │ -001cc450: 2020 2d20 6f70 7469 6f6e 730a 2020 2d20    - options.  - 
│ │ │ -001cc460: 2d20 2f76 6172 2f6c 6f67 2f61 7564 6974  - /var/log/audit
│ │ │ -001cc470: 0a20 2020 202d 2027 270a 2020 2020 2d20  .    - ''.    - 
│ │ │ -001cc480: 2727 0a20 2020 202d 2064 6566 6175 6c74  ''.    - default
│ │ │ -001cc490: 730a 2020 7768 656e 3a0a 2020 2d20 2820  s.  when:.  - ( 
│ │ │ -001cc4a0: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ -001cc4b0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001cc4c0: 7061 636b 6167 6573 2061 6e64 2022 7270  packages and "rp
│ │ │ -001cc4d0: 6d2d 6f73 7472 6565 2220 696e 2061 6e73  m-ostree" in ans
│ │ │ -001cc4e0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001cc4f0: 6765 730a 2020 2020 616e 6420 2262 6f6f  ges.    and "boo
│ │ │ -001cc500: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ -001cc510: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001cc520: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ -001cc530: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ -001cc540: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001cc550: 6765 730a 2020 2020 616e 6420 226f 7374  ges.    and "ost
│ │ │ -001cc560: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -001cc570: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061  proc_cmdline ) a
│ │ │ -001cc580: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ -001cc590: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ -001cc5a0: 7479 7065 2069 6e0a 2020 2020 5b22 646f  type in.    ["do
│ │ │ -001cc5b0: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ -001cc5c0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ -001cc5d0: 2c20 2263 6f6e 7461 696e 6572 225d 2029  , "container"] )
│ │ │ -001cc5e0: 2029 0a20 202d 2027 222f 7661 722f 6c6f   ).  - '"/var/lo
│ │ │ -001cc5f0: 672f 6175 6469 7422 2069 6e20 616e 7369  g/audit" in ansi
│ │ │ -001cc600: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ -001cc610: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ -001cc620: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ -001cc630: 2822 2d2d 6673 7461 6222 207c 206c 656e  ("--fstab" | len
│ │ │ -001cc640: 6774 6820 3d3d 2030 290a 2020 2d20 6465  gth == 0).  - de
│ │ │ -001cc650: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001cc660: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ -001cc670: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001cc680: 7574 5f6c 696e 6573 2069 7320 6465 6669  ut_lines is defi
│ │ │ -001cc690: 6e65 640a 2020 2d20 2864 6576 6963 655f  ned.  - (device_
│ │ │ -001cc6a0: 6e61 6d65 2e73 7464 6f75 7420 7c20 6c65  name.stdout | le
│ │ │ -001cc6b0: 6e67 7468 203d 3d20 3029 0a20 2074 6167  ngth == 0).  tag
│ │ │ -001cc6c0: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ -001cc6d0: 3533 2d41 432d 360a 2020 2d20 4e49 5354  53-AC-6.  - NIST
│ │ │ -001cc6e0: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ -001cc6f0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001cc700: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ -001cc710: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ -001cc720: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001cc730: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ -001cc740: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d  -800-53-MP-7.  -
│ │ │ -001cc750: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ -001cc760: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ -001cc770: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -001cc780: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -001cc790: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -001cc7a0: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ -001cc7b0: 7661 725f 6c6f 675f 6175 6469 745f 6e6f  var_log_audit_no
│ │ │ -001cc7c0: 6578 6563 0a20 202d 206e 6f5f 7265 626f  exec.  - no_rebo
│ │ │ -001cc7d0: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -001cc7e0: 653a 2027 4164 6420 6e6f 6578 6563 204f  e: 'Add noexec O
│ │ │ -001cc7f0: 7074 696f 6e20 746f 202f 7661 722f 6c6f  ption to /var/lo
│ │ │ -001cc800: 672f 6175 6469 743a 204d 616b 6520 7375  g/audit: Make su
│ │ │ -001cc810: 7265 206e 6f65 7865 6320 6f70 7469 6f6e  re noexec option
│ │ │ -001cc820: 2069 7320 7061 7274 206f 6620 7468 650a   is part of the.
│ │ │ -001cc830: 2020 2020 746f 202f 7661 722f 6c6f 672f      to /var/log/
│ │ │ -001cc840: 6175 6469 7420 6f70 7469 6f6e 7327 0a20  audit options'. 
│ │ │ -001cc850: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ -001cc860: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ -001cc870: 6f75 6e74 5f69 6e66 6f20 7c20 636f 6d62  ount_info | comb
│ │ │ -001cc880: 696e 6528 207b 2727 6f70 7469 6f6e 7327  ine( {''options'
│ │ │ -001cc890: 273a 2727 2727 7e28 6d6f 756e 745f 696e  ':''''~(mount_in
│ │ │ -001cc8a0: 666f 2e6f 7074 696f 6e73 207c 0a20 2020  fo.options |.   
│ │ │ -001cc8b0: 2020 2064 6566 6175 6c74 2827 2727 2729     default('''')
│ │ │ -001cc8c0: 297e 2827 272c 2727 2069 6620 286d 6f75  )~('','' if (mou
│ │ │ -001cc8d0: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ -001cc8e0: 7c20 6465 6661 756c 7428 2727 2727 2929  | default(''''))
│ │ │ -001cc8f0: 2065 6c73 6520 2727 2727 297e 2727 6e6f   else '''')~''no
│ │ │ -001cc900: 6578 6563 2727 0a20 2020 2020 207d 2920  exec''.      }) 
│ │ │ -001cc910: 7d7d 270a 2020 7768 656e 3a0a 2020 2d20  }}'.  when:.  - 
│ │ │ -001cc920: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -001cc930: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001cc940: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001cc950: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ -001cc960: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001cc970: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ -001cc980: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -001cc990: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001cc9a0: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001cc9b0: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001cc9c0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001cc9d0: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ -001cc9e0: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001cc9f0: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ -001cca00: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001cca10: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001cca20: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ -001cca30: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -001cca40: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -001cca50: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ -001cca60: 2029 2029 0a20 202d 2027 222f 7661 722f   ) ).  - '"/var/
│ │ │ -001cca70: 6c6f 672f 6175 6469 7422 2069 6e20 616e  log/audit" in an
│ │ │ -001cca80: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ -001cca90: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ -001ccaa0: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ -001ccab0: 2d20 6d6f 756e 745f 696e 666f 2069 7320  - mount_info is 
│ │ │ -001ccac0: 6465 6669 6e65 6420 616e 6420 226e 6f65  defined and "noe
│ │ │ -001ccad0: 7865 6322 206e 6f74 2069 6e20 286d 6f75  xec" not in (mou
│ │ │ -001ccae0: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ -001ccaf0: 7c20 6465 6661 756c 7428 2727 2929 0a20  | default('')). 
│ │ │ -001ccb00: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -001ccb10: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ -001ccb20: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001ccb30: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ -001ccb40: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -001ccb50: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001ccb60: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001ccb70: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ -001ccb80: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ -001ccb90: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -001ccba0: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -001ccbb0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001ccbc0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001ccbd0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001ccbe0: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -001ccbf0: 696f 6e5f 7661 725f 6c6f 675f 6175 6469  ion_var_log_audi
│ │ │ -001ccc00: 745f 6e6f 6578 6563 0a20 202d 206e 6f5f  t_noexec.  - no_
│ │ │ -001ccc10: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001ccc20: 206e 616d 653a 2027 4164 6420 6e6f 6578   name: 'Add noex
│ │ │ -001ccc30: 6563 204f 7074 696f 6e20 746f 202f 7661  ec Option to /va
│ │ │ -001ccc40: 722f 6c6f 672f 6175 6469 743a 2045 6e73  r/log/audit: Ens
│ │ │ -001ccc50: 7572 6520 2f76 6172 2f6c 6f67 2f61 7564  ure /var/log/aud
│ │ │ -001ccc60: 6974 2069 7320 6d6f 756e 7465 6420 7769  it is mounted wi
│ │ │ -001ccc70: 7468 0a20 2020 206e 6f65 7865 6320 6f70  th.    noexec op
│ │ │ -001ccc80: 7469 6f6e 270a 2020 616e 7369 626c 652e  tion'.  ansible.
│ │ │ -001ccc90: 706f 7369 782e 6d6f 756e 743a 0a20 2020  posix.mount:.   
│ │ │ -001ccca0: 2070 6174 683a 202f 7661 722f 6c6f 672f   path: /var/log/
│ │ │ -001cccb0: 6175 6469 740a 2020 2020 7372 633a 2027  audit.    src: '
│ │ │ -001cccc0: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 736f  {{ mount_info.so
│ │ │ -001cccd0: 7572 6365 207c 2064 6566 6175 6c74 2827  urce | default('
│ │ │ -001ccce0: 2727 2729 207d 7d27 0a20 2020 206f 7074  ''') }}'.    opt
│ │ │ -001cccf0: 733a 2027 7b7b 206d 6f75 6e74 5f69 6e66  s: '{{ mount_inf
│ │ │ -001ccd00: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ -001ccd10: 756c 7428 2727 2727 2920 7d7d 270a 2020  ult('''') }}'.  
│ │ │ -001ccd20: 2020 7374 6174 653a 206d 6f75 6e74 6564    state: mounted
│ │ │ -001ccd30: 0a20 2020 2066 7374 7970 653a 2027 7b7b  .    fstype: '{{
│ │ │ -001ccd40: 206d 6f75 6e74 5f69 6e66 6f2e 6673 7479   mount_info.fsty
│ │ │ -001ccd50: 7065 207c 2064 6566 6175 6c74 2827 2727  pe | default('''
│ │ │ -001ccd60: 2729 207d 7d27 0a20 2072 6567 6973 7465  ') }}'.  registe
│ │ │ -001ccd70: 723a 206d 6f75 6e74 5f72 6573 756c 740a  r: mount_result.
│ │ │ -001ccd80: 2020 6661 696c 6564 5f77 6865 6e3a 0a20    failed_when:. 
│ │ │ -001ccd90: 202d 206d 6f75 6e74 5f72 6573 756c 7420   - mount_result 
│ │ │ -001ccda0: 6973 2066 6169 6c65 640a 2020 2d20 2727  is failed.  - ''
│ │ │ -001ccdb0: 2774 6172 6765 7420 6973 2062 7573 7927  'target is busy'
│ │ │ -001ccdc0: 2720 6e6f 7420 696e 2028 6d6f 756e 745f  ' not in (mount_
│ │ │ -001ccdd0: 7265 7375 6c74 2e6d 7367 207c 2064 6566  result.msg | def
│ │ │ -001ccde0: 6175 6c74 2827 2727 2729 2927 0a20 202d  ault(''''))'.  -
│ │ │ -001ccdf0: 2027 2727 616c 7265 6164 7920 6d6f 756e   '''already moun
│ │ │ -001cce00: 7465 6427 2720 6e6f 7420 696e 2028 6d6f  ted'' not in (mo
│ │ │ -001cce10: 756e 745f 7265 7375 6c74 2e6d 7367 207c  unt_result.msg |
│ │ │ -001cce20: 2064 6566 6175 6c74 2827 2727 2729 2927   default(''''))'
│ │ │ -001cce30: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ -001cce40: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ -001cce50: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001cce60: 6163 6b61 6765 7320 616e 6420 2272 706d  ackages and "rpm
│ │ │ -001cce70: 2d6f 7374 7265 6522 2069 6e20 616e 7369  -ostree" in ansi
│ │ │ -001cce80: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001cce90: 6573 0a20 2020 2061 6e64 2022 626f 6f74  es.    and "boot
│ │ │ -001ccea0: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ -001cceb0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001ccec0: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ -001cced0: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ -001ccee0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001ccef0: 6573 0a20 2020 2061 6e64 2022 6f73 7472  es.    and "ostr
│ │ │ -001ccf00: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ -001ccf10: 726f 635f 636d 646c 696e 6520 2920 616e  roc_cmdline ) an
│ │ │ -001ccf20: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ -001ccf30: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ -001ccf40: 7970 6520 696e 0a20 2020 205b 2264 6f63  ype in.    ["doc
│ │ │ -001ccf50: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ -001ccf60: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ -001ccf70: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ -001ccf80: 290a 2020 2d20 2722 2f76 6172 2f6c 6f67  ).  - '"/var/log
│ │ │ -001ccf90: 2f61 7564 6974 2220 696e 2061 6e73 6962  /audit" in ansib
│ │ │ -001ccfa0: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ -001ccfb0: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ -001ccfc0: 2229 207c 206c 6973 7427 0a20 202d 206d  ") | list'.  - m
│ │ │ -001ccfd0: 6f75 6e74 5f69 6e66 6f20 6973 2064 6566  ount_info is def
│ │ │ -001ccfe0: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ -001ccff0: 5f6e 616d 652e 7374 646f 7574 2069 7320  _name.stdout is 
│ │ │ -001cd000: 6465 6669 6e65 6420 616e 6420 2864 6576  defined and (dev
│ │ │ -001cd010: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ -001cd020: 7c20 6c65 6e67 7468 2026 6774 3b20 3029  | length > 0)
│ │ │ -001cd030: 2920 6f72 2028 222d 2d66 7374 6162 220a  ) or ("--fstab".
│ │ │ -001cd040: 2020 2020 7c20 6c65 6e67 7468 203d 3d20      | length == 
│ │ │ -001cd050: 3029 0a20 2074 6167 733a 0a20 202d 204e  0).  tags:.  - N
│ │ │ -001cd060: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ -001cd070: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001cd080: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ -001cd090: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -001cd0a0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001cd0b0: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ -001cd0c0: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ -001cd0d0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001cd0e0: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ -001cd0f0: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ -001cd100: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ -001cd110: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -001cd120: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ -001cd130: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ -001cd140: 5f6f 7074 696f 6e5f 7661 725f 6c6f 675f  _option_var_log_
│ │ │ -001cd150: 6175 6469 745f 6e6f 6578 6563 0a20 202d  audit_noexec.  -
│ │ │ -001cd160: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -001cd170: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ -001cd180: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>
Remediation Sh │ │ │ -001cd230: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
< │ │ │ -001cd2e0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
# Remediation 
│ │ │ -001cd300: 6973 2061 7070 6c69 6361 626c 6520 6f6e  is applicable on
│ │ │ -001cd310: 6c79 2069 6e20 6365 7274 6169 6e20 706c  ly in certain pl
│ │ │ -001cd320: 6174 666f 726d 730a 6966 2028 2021 2028  atforms.if ( ! (
│ │ │ -001cd330: 207b 2072 706d 202d 2d71 7569 6574 202d   { rpm --quiet -
│ │ │ -001cd340: 7120 6b65 726e 656c 203b 7d20 2661 6d70  q kernel ;} &
│ │ │ -001cd350: 3b26 616d 703b 207b 2072 706d 202d 2d71  ;& { rpm --q
│ │ │ -001cd360: 7569 6574 202d 7120 7270 6d2d 6f73 7472  uiet -q rpm-ostr
│ │ │ -001cd370: 6565 203b 7d20 2661 6d70 3b26 616d 703b  ee ;} &&
│ │ │ -001cd380: 207b 2072 706d 202d 2d71 7569 6574 202d   { rpm --quiet -
│ │ │ -001cd390: 7120 626f 6f74 6320 3b7d 2026 616d 703b  q bootc ;} &
│ │ │ -001cd3a0: 2661 6d70 3b20 7b20 2120 7270 6d20 2d2d  & { ! rpm --
│ │ │ -001cd3b0: 7175 6965 7420 2d71 206f 7065 6e73 6869  quiet -q openshi
│ │ │ -001cd3c0: 6674 2d6b 7562 656c 6574 203b 7d20 2661  ft-kubelet ;} &a
│ │ │ -001cd3d0: 6d70 3b26 616d 703b 2028 5b20 2d66 202f  mp;& ([ -f /
│ │ │ -001cd3e0: 7275 6e2f 6f73 7472 6565 2d62 6f6f 7465  run/ostree-boote
│ │ │ -001cd3f0: 6420 5d20 7c7c 205b 202d 4c20 2f6f 7374  d ] || [ -L /ost
│ │ │ -001cd400: 7265 6520 5d29 2029 2026 616d 703b 2661  ree ]) ) &&a
│ │ │ -001cd410: 6d70 3b20 2120 2820 5b20 2d66 202f 2e64  mp; ! ( [ -f /.d
│ │ │ -001cd420: 6f63 6b65 7265 6e76 205d 207c 7c20 5b20  ockerenv ] || [ 
│ │ │ -001cd430: 2d66 202f 7275 6e2f 2e63 6f6e 7461 696e  -f /run/.contain
│ │ │ -001cd440: 6572 656e 7620 5d20 2920 2920 2661 6d70  erenv ] ) ) &
│ │ │ -001cd450: 3b26 616d 703b 207b 2028 2066 696e 646d  ;& { ( findm
│ │ │ -001cd460: 6e74 202d 2d6b 6572 6e65 6c20 222f 7661  nt --kernel "/va
│ │ │ -001cd470: 722f 6c6f 672f 6175 6469 7422 2026 6774  r/log/audit" >
│ │ │ -001cd480: 3b20 2f64 6576 2f6e 756c 6c20 7c7c 2066  ; /dev/null || f
│ │ │ -001cd490: 696e 646d 6e74 202d 2d66 7374 6162 2022  indmnt --fstab "
│ │ │ -001cd4a0: 2f76 6172 2f6c 6f67 2f61 7564 6974 2220  /var/log/audit" 
│ │ │ -001cd4b0: 2667 743b 202f 6465 762f 6e75 6c6c 2029  > /dev/null )
│ │ │ -001cd4c0: 3b20 7d3b 2074 6865 6e0a 0a66 756e 6374  ; }; then..funct
│ │ │ -001cd4d0: 696f 6e20 7065 7266 6f72 6d5f 7265 6d65  ion perform_reme
│ │ │ -001cd4e0: 6469 6174 696f 6e20 7b0a 0a20 2020 200a  diation {..    .
│ │ │ -001cd4f0: 2020 2020 2020 2020 2320 7468 6520 6d6f          # the mo
│ │ │ -001cd500: 756e 7420 706f 696e 7420 2f76 6172 2f6c  unt point /var/l
│ │ │ -001cd510: 6f67 2f61 7564 6974 2068 6173 2074 6f20  og/audit has to 
│ │ │ -001cd520: 6265 2064 6566 696e 6564 2069 6e20 2f65  be defined in /e
│ │ │ -001cd530: 7463 2f66 7374 6162 0a20 2020 2020 2020  tc/fstab.       
│ │ │ -001cd540: 2023 2062 6566 6f72 6520 7468 6973 2072   # before this r
│ │ │ -001cd550: 656d 6564 6961 7469 6f6e 2063 616e 2062  emediation can b
│ │ │ -001cd560: 6520 6578 6563 7574 6564 2e20 496e 2063  e executed. In c
│ │ │ -001cd570: 6173 6520 6974 2069 7320 6e6f 7420 6465  ase it is not de
│ │ │ -001cd580: 6669 6e65 642c 2074 6865 0a20 2020 2020  fined, the.     
│ │ │ -001cd590: 2020 2023 2072 656d 6564 6961 7469 6f6e     # remediation
│ │ │ -001cd5a0: 2061 626f 7274 7320 616e 6420 6e6f 2063   aborts and no c
│ │ │ -001cd5b0: 6861 6e67 6573 2072 6567 6172 6469 6e67  hanges regarding
│ │ │ -001cd5c0: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ -001cd5d0: 2061 7265 2064 6f6e 652e 0a20 2020 2020   are done..     
│ │ │ -001cd5e0: 2020 206d 6f75 6e74 5f70 6f69 6e74 5f6d     mount_point_m
│ │ │ -001cd5f0: 6174 6368 5f72 6567 6578 703d 2224 2870  atch_regexp="$(p
│ │ │ -001cd600: 7269 6e74 6620 225e 5b5b 3a73 7061 6365  rintf "^[[:space
│ │ │ -001cd610: 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061  :]]*[^#].*[[:spa
│ │ │ -001cd620: 6365 3a5d 5d25 735b 5b3a 7370 6163 653a  ce:]]%s[[:space:
│ │ │ -001cd630: 5d5d 2220 222f 7661 722f 6c6f 672f 6175  ]]" "/var/log/au
│ │ │ -001cd640: 6469 7422 2922 0a0a 2020 2020 6772 6570  dit")"..    grep
│ │ │ -001cd650: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -001cd660: 6174 6368 5f72 6567 6578 7022 202d 7120  atch_regexp" -q 
│ │ │ -001cd670: 2f65 7463 2f66 7374 6162 205c 0a20 2020  /etc/fstab \.   
│ │ │ -001cd680: 2020 2020 207c 7c20 7b20 6563 686f 2022       || { echo "
│ │ │ -001cd690: 5468 6520 6d6f 756e 7420 706f 696e 7420  The mount point 
│ │ │ -001cd6a0: 272f 7661 722f 6c6f 672f 6175 6469 7427  '/var/log/audit'
│ │ │ -001cd6b0: 2069 7320 6e6f 7420 6576 656e 2069 6e20   is not even in 
│ │ │ -001cd6c0: 2f65 7463 2f66 7374 6162 2c20 736f 2077  /etc/fstab, so w
│ │ │ -001cd6d0: 6520 6361 6e27 7420 7365 7420 7570 206d  e can't set up m
│ │ │ -001cd6e0: 6f75 6e74 206f 7074 696f 6e73 2220 2667  ount options" &g
│ │ │ -001cd6f0: 743b 2661 6d70 3b32 3b0a 2020 2020 2020  t;&2;.      
│ │ │ -001cd700: 2020 2020 2020 2020 2020 6563 686f 2022            echo "
│ │ │ -001cd710: 4e6f 7420 7265 6d65 6469 6174 696e 672c  Not remediating,
│ │ │ -001cd720: 2062 6563 6175 7365 2074 6865 7265 2069   because there i
│ │ │ -001cd730: 7320 6e6f 2072 6563 6f72 6420 6f66 202f  s no record of /
│ │ │ -001cd740: 7661 722f 6c6f 672f 6175 6469 7420 696e  var/log/audit in
│ │ │ -001cd750: 202f 6574 632f 6673 7461 6222 2026 6774   /etc/fstab" >
│ │ │ -001cd760: 3b26 616d 703b 323b 2072 6574 7572 6e20  ;&2; return 
│ │ │ -001cd770: 313b 207d 0a20 2020 200a 0a0a 2020 2020  1; }.    ...    
│ │ │ -001cd780: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001cd790: 685f 7265 6765 7870 3d22 2428 7072 696e  h_regexp="$(prin
│ │ │ -001cd7a0: 7466 2022 5e5b 5b3a 7370 6163 653a 5d5d  tf "^[[:space:]]
│ │ │ -001cd7b0: 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163 653a  *[^#].*[[:space:
│ │ │ -001cd7c0: 5d5d 2573 5b5b 3a73 7061 6365 3a5d 5d22  ]]%s[[:space:]]"
│ │ │ -001cd7d0: 202f 7661 722f 6c6f 672f 6175 6469 7429   /var/log/audit)
│ │ │ -001cd7e0: 220a 0a20 2020 2023 2049 6620 7468 6520  "..    # If the 
│ │ │ -001cd7f0: 6d6f 756e 7420 706f 696e 7420 6973 206e  mount point is n
│ │ │ -001cd800: 6f74 2069 6e20 2f65 7463 2f66 7374 6162  ot in /etc/fstab
│ │ │ -001cd810: 2c20 6765 7420 7072 6576 696f 7573 206d  , get previous m
│ │ │ -001cd820: 6f75 6e74 206f 7074 696f 6e73 2066 726f  ount options fro
│ │ │ -001cd830: 6d20 2f65 7463 2f6d 7461 620a 2020 2020  m /etc/mtab.    
│ │ │ -001cd840: 6966 2021 2067 7265 7020 2d71 2022 246d  if ! grep -q "$m
│ │ │ -001cd850: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001cd860: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ -001cd870: 7461 623b 2074 6865 6e0a 2020 2020 2020  tab; then.      
│ │ │ -001cd880: 2020 2320 7275 6e74 696d 6520 6f70 7473    # runtime opts
│ │ │ -001cd890: 2077 6974 686f 7574 2073 6f6d 6520 6175   without some au
│ │ │ -001cd8a0: 746f 6d61 7469 6320 6b65 726e 656c 2f75  tomatic kernel/u
│ │ │ -001cd8b0: 7365 7273 7061 6365 2d61 6464 6564 2064  serspace-added d
│ │ │ -001cd8c0: 6566 6175 6c74 730a 2020 2020 2020 2020  efaults.        
│ │ │ -001cd8d0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001cd8e0: 7074 733d 2428 6772 6570 2022 246d 6f75  pts=$(grep "$mou
│ │ │ -001cd8f0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001cd900: 6567 6578 7022 202f 6574 632f 6d74 6162  egexp" /etc/mtab
│ │ │ -001cd910: 207c 2068 6561 6420 2d31 207c 2020 6177   | head -1 |  aw
│ │ │ -001cd920: 6b20 277b 7072 696e 7420 2434 7d27 205c  k '{print $4}' \
│ │ │ -001cd930: 0a20 2020 2020 2020 2020 2020 2020 2020  .               
│ │ │ -001cd940: 2020 2020 207c 2073 6564 202d 4520 2273       | sed -E "s
│ │ │ -001cd950: 2f28 7277 7c64 6566 6175 6c74 737c 7365  /(rw|defaults|se
│ │ │ -001cd960: 636c 6162 656c 7c6e 6f65 7865 6329 282c  clabel|noexec)(,
│ │ │ -001cd970: 7c24 292f 2f67 3b73 2f2c 242f 2f22 290a  |$)//g;s/,$//").
│ │ │ -001cd980: 2020 2020 2020 2020 5b20 2224 7072 6576          [ "$prev
│ │ │ -001cd990: 696f 7573 5f6d 6f75 6e74 5f6f 7074 7322  ious_mount_opts"
│ │ │ -001cd9a0: 205d 2026 616d 703b 2661 6d70 3b20 7072   ] && pr
│ │ │ -001cd9b0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001cd9c0: 732b 3d22 2c22 0a20 2020 2020 2020 2023  s+=",".        #
│ │ │ -001cd9d0: 2049 6e20 6973 6f39 3636 3020 6669 6c65   In iso9660 file
│ │ │ -001cd9e0: 7379 7374 656d 7320 6d74 6162 2063 6f75  systems mtab cou
│ │ │ -001cd9f0: 6c64 2064 6573 6372 6962 6520 6120 2262  ld describe a "b
│ │ │ -001cda00: 6c6f 636b 7369 7a65 2220 7661 6c75 652c  locksize" value,
│ │ │ -001cda10: 2074 6869 7320 7368 6f75 6c64 2062 6520   this should be 
│ │ │ -001cda20: 7265 666c 6563 7465 6420 696e 0a20 2020  reflected in.   
│ │ │ -001cda30: 2020 2020 2023 2066 7374 6162 2061 7320       # fstab as 
│ │ │ -001cda40: 2262 6c6f 636b 222e 2020 5468 6520 6e65  "block".  The ne
│ │ │ -001cda50: 7874 2076 6172 6961 626c 6520 6973 2074  xt variable is t
│ │ │ -001cda60: 6f20 7361 7469 7366 7920 7368 656c 6c63  o satisfy shellc
│ │ │ -001cda70: 6865 636b 2053 4332 3035 302e 0a20 2020  heck SC2050..   
│ │ │ -001cda80: 2020 2020 2066 735f 7479 7065 3d22 220a       fs_type="".
│ │ │ -001cda90: 2020 2020 2020 2020 6966 205b 2020 2224          if [  "$
│ │ │ -001cdaa0: 6673 5f74 7970 6522 203d 3d20 2269 736f  fs_type" == "iso
│ │ │ -001cdab0: 3936 3630 2220 5d20 3b20 7468 656e 0a20  9660" ] ; then. 
│ │ │ -001cdac0: 2020 2020 2020 2020 2020 2070 7265 7669             previ
│ │ │ -001cdad0: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ -001cdae0: 2873 6564 2027 732f 626c 6f63 6b73 697a  (sed 's/blocksiz
│ │ │ -001cdaf0: 653d 2f62 6c6f 636b 3d2f 2720 266c 743b  e=/block=/' <
│ │ │ -001cdb00: 266c 743b 266c 743b 2022 2470 7265 7669  << "$previ
│ │ │ -001cdb10: 6f75 735f 6d6f 756e 745f 6f70 7473 2229  ous_mount_opts")
│ │ │ -001cdb20: 0a20 2020 2020 2020 2066 690a 2020 2020  .        fi.    
│ │ │ -001cdb30: 2020 2020 6563 686f 2022 202f 7661 722f      echo " /var/
│ │ │ -001cdb40: 6c6f 672f 6175 6469 7420 2064 6566 6175  log/audit  defau
│ │ │ -001cdb50: 6c74 732c 247b 7072 6576 696f 7573 5f6d  lts,${previous_m
│ │ │ -001cdb60: 6f75 6e74 5f6f 7074 737d 6e6f 6578 6563  ount_opts}noexec
│ │ │ -001cdb70: 2030 2030 2220 2667 743b 2667 743b 202f   0 0" >> /
│ │ │ -001cdb80: 6574 632f 6673 7461 620a 2020 2020 2320  etc/fstab.    # 
│ │ │ -001cdb90: 4966 2074 6865 206d 6f75 6e74 5f6f 7074  If the mount_opt
│ │ │ -001cdba0: 206f 7074 696f 6e20 6973 206e 6f74 2061   option is not a
│ │ │ -001cdbb0: 6c72 6561 6479 2069 6e20 7468 6520 6d6f  lready in the mo
│ │ │ -001cdbc0: 756e 7420 706f 696e 7427 7320 2f65 7463  unt point's /etc
│ │ │ -001cdbd0: 2f66 7374 6162 2065 6e74 7279 2c20 6164  /fstab entry, ad
│ │ │ -001cdbe0: 6420 6974 0a20 2020 2065 6c69 6620 2120  d it.    elif ! 
│ │ │ -001cdbf0: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ -001cdc00: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ -001cdc10: 202f 6574 632f 6673 7461 6220 7c20 6772   /etc/fstab | gr
│ │ │ -001cdc20: 6570 202d 7120 226e 6f65 7865 6322 3b20  ep -q "noexec"; 
│ │ │ -001cdc30: 7468 656e 0a20 2020 2020 2020 2070 7265  then.        pre
│ │ │ -001cdc40: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ -001cdc50: 3d24 2867 7265 7020 2224 6d6f 756e 745f  =$(grep "$mount_
│ │ │ -001cdc60: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001cdc70: 7870 2220 2f65 7463 2f66 7374 6162 207c  xp" /etc/fstab |
│ │ │ -001cdc80: 2061 776b 2027 7b70 7269 6e74 2024 347d   awk '{print $4}
│ │ │ -001cdc90: 2729 0a20 2020 2020 2020 2073 6564 202d  ').        sed -
│ │ │ -001cdca0: 6920 2273 7c5c 2824 7b6d 6f75 6e74 5f70  i "s|\(${mount_p
│ │ │ -001cdcb0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001cdcc0: 707d 2e2a 247b 7072 6576 696f 7573 5f6d  p}.*${previous_m
│ │ │ -001cdcd0: 6f75 6e74 5f6f 7074 737d 5c29 7c5c 312c  ount_opts}\)|\1,
│ │ │ -001cdce0: 6e6f 6578 6563 7c22 202f 6574 632f 6673  noexec|" /etc/fs
│ │ │ -001cdcf0: 7461 620a 2020 2020 6669 0a0a 0a20 2020  tab.    fi...   
│ │ │ -001cdd00: 2069 6620 6d6b 6469 7220 2d70 2022 2f76   if mkdir -p "/v
│ │ │ -001cdd10: 6172 2f6c 6f67 2f61 7564 6974 223b 2074  ar/log/audit"; t
│ │ │ -001cdd20: 6865 6e0a 2020 2020 2020 2020 6966 206d  hen.        if m
│ │ │ -001cdd30: 6f75 6e74 706f 696e 7420 2d71 2022 2f76  ountpoint -q "/v
│ │ │ -001cdd40: 6172 2f6c 6f67 2f61 7564 6974 223b 2074  ar/log/audit"; t
│ │ │ -001cdd50: 6865 6e0a 2020 2020 2020 2020 2020 2020  hen.            
│ │ │ -001cdd60: 6d6f 756e 7420 2d6f 2072 656d 6f75 6e74  mount -o remount
│ │ │ -001cdd70: 202d 2d74 6172 6765 7420 222f 7661 722f   --target "/var/
│ │ │ -001cdd80: 6c6f 672f 6175 6469 7422 0a20 2020 2020  log/audit".     
│ │ │ -001cdd90: 2020 2066 690a 2020 2020 6669 0a7d 0a0a     fi.    fi.}..
│ │ │ -001cdda0: 7065 7266 6f72 6d5f 7265 6d65 6469 6174  perform_remediat
│ │ │ -001cddb0: 696f 6e0a 0a65 6c73 650a 2020 2020 2667  ion..else.    &g
│ │ │ -001cddc0: 743b 2661 6d70 3b32 2065 6368 6f20 2752  t;&2 echo 'R
│ │ │ -001cddd0: 656d 6564 6961 7469 6f6e 2069 7320 6e6f  emediation is no
│ │ │ -001cdde0: 7420 6170 706c 6963 6162 6c65 2c20 6e6f  t applicable, no
│ │ │ -001cddf0: 7468 696e 6720 7761 7320 646f 6e65 270a  thing was done'.
│ │ │ -001cde00: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e  fi.
│ │ │ +001cb660: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ +001cb670: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
│ │ │ -001cd2c0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -001cd2d0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
< │ │ │ +001cb6f0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +001cb710: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr> │ │ │ +001cb760: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472
low
Disr │ │ │ +001cb720: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +001cb730: 6869 6768 3c2f 7464 3e3c 2f74 723e 3c74 high
Reboot:false
Str │ │ │ +001cb770: 6174 6567 793a 3c2f 7468 3e3c 7464 3e63 ategy:c │ │ │ +001cb780: 6f6e 6669 6775 7265 3c2f 7464 3e3c 2f74 onfigure
<
│ │ │ +001cb7a0: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ +001cb7b0: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ +001cb7c0: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ +001cb7d0: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ +001cb7e0: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ +001cb7f0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001cb800: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ +001cb810: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ +001cb820: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001cb830: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ +001cb840: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ +001cb850: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001cb860: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ +001cb870: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ +001cb880: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +001cb890: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +001cb8a0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +001cb8b0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +001cb8c0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001cb8d0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ +001cb8e0: 725f 6c6f 675f 6175 6469 745f 6e6f 6578  r_log_audit_noex
│ │ │ +001cb8f0: 6563 0a20 202d 206e 6f5f 7265 626f 6f74  ec.  - no_reboot
│ │ │ +001cb900: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ +001cb910: 2027 4164 6420 6e6f 6578 6563 204f 7074   'Add noexec Opt
│ │ │ +001cb920: 696f 6e20 746f 202f 7661 722f 6c6f 672f  ion to /var/log/
│ │ │ +001cb930: 6175 6469 743a 2043 6865 636b 2069 6e66  audit: Check inf
│ │ │ +001cb940: 6f72 6d61 7469 6f6e 2061 7373 6f63 6961  ormation associa
│ │ │ +001cb950: 7465 6420 746f 206d 6f75 6e74 706f 696e  ted to mountpoin
│ │ │ +001cb960: 7427 0a20 2061 6e73 6962 6c65 2e62 7569  t'.  ansible.bui
│ │ │ +001cb970: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 6669  ltin.command: fi
│ │ │ +001cb980: 6e64 6d6e 7420 2d2d 6673 7461 6220 272f  ndmnt --fstab '/
│ │ │ +001cb990: 7661 722f 6c6f 672f 6175 6469 7427 0a20  var/log/audit'. 
│ │ │ +001cb9a0: 2072 6567 6973 7465 723a 2064 6576 6963   register: devic
│ │ │ +001cb9b0: 655f 6e61 6d65 0a20 2066 6169 6c65 645f  e_name.  failed_
│ │ │ +001cb9c0: 7768 656e 3a20 6465 7669 6365 5f6e 616d  when: device_nam
│ │ │ +001cb9d0: 652e 7263 2026 6774 3b20 310a 2020 6368  e.rc > 1.  ch
│ │ │ +001cb9e0: 616e 6765 645f 7768 656e 3a20 6661 6c73  anged_when: fals
│ │ │ +001cb9f0: 650a 2020 6368 6563 6b5f 6d6f 6465 3a20  e.  check_mode: 
│ │ │ +001cba00: 6661 6c73 650a 2020 7768 656e 3a0a 2020  false.  when:.  
│ │ │ +001cba10: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ +001cba20: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +001cba30: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001cba40: 2022 7270 6d2d 6f73 7472 6565 2220 696e   "rpm-ostree" in
│ │ │ +001cba50: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001cba60: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001cba70: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ +001cba80: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001cba90: 7320 616e 6420 6e6f 7420 226f 7065 6e73  s and not "opens
│ │ │ +001cbaa0: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ +001cbab0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001cbac0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001cbad0: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ +001cbae0: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ +001cbaf0: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ +001cbb00: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ +001cbb10: 696f 6e5f 7479 7065 2069 6e0a 2020 2020  ion_type in.    
│ │ │ +001cbb20: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ +001cbb30: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ +001cbb40: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572  man", "container
│ │ │ +001cbb50: 225d 2029 2029 0a20 202d 2027 222f 7661  "] ) ).  - '"/va
│ │ │ +001cbb60: 722f 6c6f 672f 6175 6469 7422 2069 6e20  r/log/audit" in 
│ │ │ +001cbb70: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ +001cbb80: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ +001cbb90: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ +001cbba0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +001cbbb0: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ +001cbbc0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001cbbd0: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ +001cbbe0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +001cbbf0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001cbc00: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ +001cbc10: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ +001cbc20: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ +001cbc30: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ +001cbc40: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ +001cbc50: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ +001cbc60: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +001cbc70: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +001cbc80: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ +001cbc90: 7469 6f6e 5f76 6172 5f6c 6f67 5f61 7564  tion_var_log_aud
│ │ │ +001cbca0: 6974 5f6e 6f65 7865 630a 2020 2d20 6e6f  it_noexec.  - no
│ │ │ +001cbcb0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +001cbcc0: 2d20 6e61 6d65 3a20 2741 6464 206e 6f65  - name: 'Add noe
│ │ │ +001cbcd0: 7865 6320 4f70 7469 6f6e 2074 6f20 2f76  xec Option to /v
│ │ │ +001cbce0: 6172 2f6c 6f67 2f61 7564 6974 3a20 4372  ar/log/audit: Cr
│ │ │ +001cbcf0: 6561 7465 206d 6f75 6e74 5f69 6e66 6f20  eate mount_info 
│ │ │ +001cbd00: 6469 6374 696f 6e61 7279 2076 6172 6961  dictionary varia
│ │ │ +001cbd10: 626c 6527 0a20 2073 6574 5f66 6163 743a  ble'.  set_fact:
│ │ │ +001cbd20: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ +001cbd30: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c   '{{ mount_info|
│ │ │ +001cbd40: 6465 6661 756c 7428 7b7d 297c 636f 6d62  default({})|comb
│ │ │ +001cbd50: 696e 6528 7b69 7465 6d2e 303a 2069 7465  ine({item.0: ite
│ │ │ +001cbd60: 6d2e 317d 2920 7d7d 270a 2020 7769 7468  m.1}) }}'.  with
│ │ │ +001cbd70: 5f74 6f67 6574 6865 723a 0a20 202d 2027  _together:.  - '
│ │ │ +001cbd80: 7b7b 2064 6576 6963 655f 6e61 6d65 2e73  {{ device_name.s
│ │ │ +001cbd90: 7464 6f75 745f 6c69 6e65 735b 305d 2e73  tdout_lines[0].s
│ │ │ +001cbda0: 706c 6974 2829 207c 206d 6170 2827 276c  plit() | map(''l
│ │ │ +001cbdb0: 6f77 6572 2727 2920 7c20 6c69 7374 207d  ower'') | list }
│ │ │ +001cbdc0: 7d27 0a20 202d 2027 7b7b 2064 6576 6963  }'.  - '{{ devic
│ │ │ +001cbdd0: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ +001cbde0: 6e65 735b 315d 2e73 706c 6974 2829 207c  nes[1].split() |
│ │ │ +001cbdf0: 206c 6973 7420 7d7d 270a 2020 7768 656e   list }}'.  when
│ │ │ +001cbe00: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ +001cbe10: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +001cbe20: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001cbe30: 2061 6e64 2022 7270 6d2d 6f73 7472 6565   and "rpm-ostree
│ │ │ +001cbe40: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001cbe50: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +001cbe60: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ +001cbe70: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001cbe80: 6b61 6765 7320 616e 6420 6e6f 7420 226f  kages and not "o
│ │ │ +001cbe90: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ +001cbea0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001cbeb0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +001cbec0: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ +001cbed0: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ +001cbee0: 6c69 6e65 2029 2061 6e64 206e 6f74 2028  line ) and not (
│ │ │ +001cbef0: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ +001cbf00: 697a 6174 696f 6e5f 7479 7065 2069 6e0a  ization_type in.
│ │ │ +001cbf10: 2020 2020 5b22 646f 636b 6572 222c 2022      ["docker", "
│ │ │ +001cbf20: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ +001cbf30: 2270 6f64 6d61 6e22 2c20 2263 6f6e 7461  "podman", "conta
│ │ │ +001cbf40: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ +001cbf50: 222f 7661 722f 6c6f 672f 6175 6469 7422  "/var/log/audit"
│ │ │ +001cbf60: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ +001cbf70: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ +001cbf80: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ +001cbf90: 7374 270a 2020 2d20 6465 7669 6365 5f6e  st'.  - device_n
│ │ │ +001cbfa0: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ +001cbfb0: 6669 6e65 6420 616e 6420 6465 7669 6365  fined and device
│ │ │ +001cbfc0: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ +001cbfd0: 6573 2069 7320 6465 6669 6e65 640a 2020  es is defined.  
│ │ │ +001cbfe0: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ +001cbff0: 7464 6f75 7420 7c20 6c65 6e67 7468 2026  tdout | length &
│ │ │ +001cc000: 6774 3b20 3029 0a20 2074 6167 733a 0a20  gt; 0).  tags:. 
│ │ │ +001cc010: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001cc020: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ +001cc030: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ +001cc040: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +001cc050: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001cc060: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ +001cc070: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001cc080: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ +001cc090: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ +001cc0a0: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +001cc0b0: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ +001cc0c0: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ +001cc0d0: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ +001cc0e0: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ +001cc0f0: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f  ount_option_var_
│ │ │ +001cc100: 6c6f 675f 6175 6469 745f 6e6f 6578 6563  log_audit_noexec
│ │ │ +001cc110: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +001cc120: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ +001cc130: 4164 6420 6e6f 6578 6563 204f 7074 696f  Add noexec Optio
│ │ │ +001cc140: 6e20 746f 202f 7661 722f 6c6f 672f 6175  n to /var/log/au
│ │ │ +001cc150: 6469 743a 2049 6620 2f76 6172 2f6c 6f67  dit: If /var/log
│ │ │ +001cc160: 2f61 7564 6974 206e 6f74 206d 6f75 6e74  /audit not mount
│ │ │ +001cc170: 6564 2c20 6372 6166 740a 2020 2020 6d6f  ed, craft.    mo
│ │ │ +001cc180: 756e 745f 696e 666f 206d 616e 7561 6c6c  unt_info manuall
│ │ │ +001cc190: 7927 0a20 2073 6574 5f66 6163 743a 0a20  y'.  set_fact:. 
│ │ │ +001cc1a0: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ +001cc1b0: 7b7b 206d 6f75 6e74 5f69 6e66 6f7c 6465  {{ mount_info|de
│ │ │ +001cc1c0: 6661 756c 7428 7b7d 297c 636f 6d62 696e  fault({})|combin
│ │ │ +001cc1d0: 6528 7b69 7465 6d2e 303a 2069 7465 6d2e  e({item.0: item.
│ │ │ +001cc1e0: 317d 2920 7d7d 270a 2020 7769 7468 5f74  1}) }}'.  with_t
│ │ │ +001cc1f0: 6f67 6574 6865 723a 0a20 202d 202d 2074  ogether:.  - - t
│ │ │ +001cc200: 6172 6765 740a 2020 2020 2d20 736f 7572  arget.    - sour
│ │ │ +001cc210: 6365 0a20 2020 202d 2066 7374 7970 650a  ce.    - fstype.
│ │ │ +001cc220: 2020 2020 2d20 6f70 7469 6f6e 730a 2020      - options.  
│ │ │ +001cc230: 2d20 2d20 2f76 6172 2f6c 6f67 2f61 7564  - - /var/log/aud
│ │ │ +001cc240: 6974 0a20 2020 202d 2027 270a 2020 2020  it.    - ''.    
│ │ │ +001cc250: 2d20 2727 0a20 2020 202d 2064 6566 6175  - ''.    - defau
│ │ │ +001cc260: 6c74 730a 2020 7768 656e 3a0a 2020 2d20  lts.  when:.  - 
│ │ │ +001cc270: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ +001cc280: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001cc290: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001cc2a0: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ +001cc2b0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001cc2c0: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ +001cc2d0: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +001cc2e0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001cc2f0: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ +001cc300: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ +001cc310: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001cc320: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ +001cc330: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001cc340: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ +001cc350: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ +001cc360: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ +001cc370: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ +001cc380: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +001cc390: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +001cc3a0: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ +001cc3b0: 2029 2029 0a20 202d 2027 222f 7661 722f   ) ).  - '"/var/
│ │ │ +001cc3c0: 6c6f 672f 6175 6469 7422 2069 6e20 616e  log/audit" in an
│ │ │ +001cc3d0: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ +001cc3e0: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ +001cc3f0: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ +001cc400: 2d20 2822 2d2d 6673 7461 6222 207c 206c  - ("--fstab" | l
│ │ │ +001cc410: 656e 6774 6820 3d3d 2030 290a 2020 2d20  ength == 0).  - 
│ │ │ +001cc420: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001cc430: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ +001cc440: 6420 6465 7669 6365 5f6e 616d 652e 7374  d device_name.st
│ │ │ +001cc450: 646f 7574 5f6c 696e 6573 2069 7320 6465  dout_lines is de
│ │ │ +001cc460: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ +001cc470: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ +001cc480: 6c65 6e67 7468 203d 3d20 3029 0a20 2074  length == 0).  t
│ │ │ +001cc490: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +001cc4a0: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ +001cc4b0: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ +001cc4c0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001cc4d0: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +001cc4e0: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ +001cc4f0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001cc500: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ +001cc510: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ +001cc520: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ +001cc530: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ +001cc540: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +001cc550: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +001cc560: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +001cc570: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ +001cc580: 6e5f 7661 725f 6c6f 675f 6175 6469 745f  n_var_log_audit_
│ │ │ +001cc590: 6e6f 6578 6563 0a20 202d 206e 6f5f 7265  noexec.  - no_re
│ │ │ +001cc5a0: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ +001cc5b0: 616d 653a 2027 4164 6420 6e6f 6578 6563  ame: 'Add noexec
│ │ │ +001cc5c0: 204f 7074 696f 6e20 746f 202f 7661 722f   Option to /var/
│ │ │ +001cc5d0: 6c6f 672f 6175 6469 743a 204d 616b 6520  log/audit: Make 
│ │ │ +001cc5e0: 7375 7265 206e 6f65 7865 6320 6f70 7469  sure noexec opti
│ │ │ +001cc5f0: 6f6e 2069 7320 7061 7274 206f 6620 7468  on is part of th
│ │ │ +001cc600: 650a 2020 2020 746f 202f 7661 722f 6c6f  e.    to /var/lo
│ │ │ +001cc610: 672f 6175 6469 7420 6f70 7469 6f6e 7327  g/audit options'
│ │ │ +001cc620: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ +001cc630: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b   mount_info: '{{
│ │ │ +001cc640: 206d 6f75 6e74 5f69 6e66 6f20 7c20 636f   mount_info | co
│ │ │ +001cc650: 6d62 696e 6528 207b 2727 6f70 7469 6f6e  mbine( {''option
│ │ │ +001cc660: 7327 273a 2727 2727 7e28 6d6f 756e 745f  s'':''''~(mount_
│ │ │ +001cc670: 696e 666f 2e6f 7074 696f 6e73 207c 0a20  info.options |. 
│ │ │ +001cc680: 2020 2020 2064 6566 6175 6c74 2827 2727       default('''
│ │ │ +001cc690: 2729 297e 2827 272c 2727 2069 6620 286d  '))~('','' if (m
│ │ │ +001cc6a0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ +001cc6b0: 7320 7c20 6465 6661 756c 7428 2727 2727  s | default(''''
│ │ │ +001cc6c0: 2929 2065 6c73 6520 2727 2727 297e 2727  )) else '''')~''
│ │ │ +001cc6d0: 6e6f 6578 6563 2727 0a20 2020 2020 207d  noexec''.      }
│ │ │ +001cc6e0: 2920 7d7d 270a 2020 7768 656e 3a0a 2020  ) }}'.  when:.  
│ │ │ +001cc6f0: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ +001cc700: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +001cc710: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001cc720: 2022 7270 6d2d 6f73 7472 6565 2220 696e   "rpm-ostree" in
│ │ │ +001cc730: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001cc740: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001cc750: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ +001cc760: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001cc770: 7320 616e 6420 6e6f 7420 226f 7065 6e73  s and not "opens
│ │ │ +001cc780: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ +001cc790: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001cc7a0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001cc7b0: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ +001cc7c0: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ +001cc7d0: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ +001cc7e0: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ +001cc7f0: 696f 6e5f 7479 7065 2069 6e0a 2020 2020  ion_type in.    
│ │ │ +001cc800: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ +001cc810: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ +001cc820: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572  man", "container
│ │ │ +001cc830: 225d 2029 2029 0a20 202d 2027 222f 7661  "] ) ).  - '"/va
│ │ │ +001cc840: 722f 6c6f 672f 6175 6469 7422 2069 6e20  r/log/audit" in 
│ │ │ +001cc850: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ +001cc860: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ +001cc870: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ +001cc880: 2020 2d20 6d6f 756e 745f 696e 666f 2069    - mount_info i
│ │ │ +001cc890: 7320 6465 6669 6e65 6420 616e 6420 226e  s defined and "n
│ │ │ +001cc8a0: 6f65 7865 6322 206e 6f74 2069 6e20 286d  oexec" not in (m
│ │ │ +001cc8b0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ +001cc8c0: 7320 7c20 6465 6661 756c 7428 2727 2929  s | default(''))
│ │ │ +001cc8d0: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +001cc8e0: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ +001cc8f0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001cc900: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ +001cc910: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ +001cc920: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001cc930: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ +001cc940: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ +001cc950: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ +001cc960: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ +001cc970: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +001cc980: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +001cc990: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +001cc9a0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +001cc9b0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ +001cc9c0: 7074 696f 6e5f 7661 725f 6c6f 675f 6175  ption_var_log_au
│ │ │ +001cc9d0: 6469 745f 6e6f 6578 6563 0a20 202d 206e  dit_noexec.  - n
│ │ │ +001cc9e0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +001cc9f0: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ +001cca00: 6578 6563 204f 7074 696f 6e20 746f 202f  exec Option to /
│ │ │ +001cca10: 7661 722f 6c6f 672f 6175 6469 743a 2045  var/log/audit: E
│ │ │ +001cca20: 6e73 7572 6520 2f76 6172 2f6c 6f67 2f61  nsure /var/log/a
│ │ │ +001cca30: 7564 6974 2069 7320 6d6f 756e 7465 6420  udit is mounted 
│ │ │ +001cca40: 7769 7468 0a20 2020 206e 6f65 7865 6320  with.    noexec 
│ │ │ +001cca50: 6f70 7469 6f6e 270a 2020 616e 7369 626c  option'.  ansibl
│ │ │ +001cca60: 652e 706f 7369 782e 6d6f 756e 743a 0a20  e.posix.mount:. 
│ │ │ +001cca70: 2020 2070 6174 683a 202f 7661 722f 6c6f     path: /var/lo
│ │ │ +001cca80: 672f 6175 6469 740a 2020 2020 7372 633a  g/audit.    src:
│ │ │ +001cca90: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ +001ccaa0: 736f 7572 6365 207c 2064 6566 6175 6c74  source | default
│ │ │ +001ccab0: 2827 2727 2729 207d 7d27 0a20 2020 206f  ('''') }}'.    o
│ │ │ +001ccac0: 7074 733a 2027 7b7b 206d 6f75 6e74 5f69  pts: '{{ mount_i
│ │ │ +001ccad0: 6e66 6f2e 6f70 7469 6f6e 7320 7c20 6465  nfo.options | de
│ │ │ +001ccae0: 6661 756c 7428 2727 2727 2920 7d7d 270a  fault('''') }}'.
│ │ │ +001ccaf0: 2020 2020 7374 6174 653a 206d 6f75 6e74      state: mount
│ │ │ +001ccb00: 6564 0a20 2020 2066 7374 7970 653a 2027  ed.    fstype: '
│ │ │ +001ccb10: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 6673  {{ mount_info.fs
│ │ │ +001ccb20: 7479 7065 207c 2064 6566 6175 6c74 2827  type | default('
│ │ │ +001ccb30: 2727 2729 207d 7d27 0a20 2072 6567 6973  ''') }}'.  regis
│ │ │ +001ccb40: 7465 723a 206d 6f75 6e74 5f72 6573 756c  ter: mount_resul
│ │ │ +001ccb50: 740a 2020 6661 696c 6564 5f77 6865 6e3a  t.  failed_when:
│ │ │ +001ccb60: 0a20 202d 206d 6f75 6e74 5f72 6573 756c  .  - mount_resul
│ │ │ +001ccb70: 7420 6973 2066 6169 6c65 640a 2020 2d20  t is failed.  - 
│ │ │ +001ccb80: 2727 2774 6172 6765 7420 6973 2062 7573  '''target is bus
│ │ │ +001ccb90: 7927 2720 6e6f 7420 696e 2028 6d6f 756e  y'' not in (moun
│ │ │ +001ccba0: 745f 7265 7375 6c74 2e6d 7367 207c 2064  t_result.msg | d
│ │ │ +001ccbb0: 6566 6175 6c74 2827 2727 2729 2927 0a20  efault(''''))'. 
│ │ │ +001ccbc0: 202d 2027 2727 616c 7265 6164 7920 6d6f   - '''already mo
│ │ │ +001ccbd0: 756e 7465 6427 2720 6e6f 7420 696e 2028  unted'' not in (
│ │ │ +001ccbe0: 6d6f 756e 745f 7265 7375 6c74 2e6d 7367  mount_result.msg
│ │ │ +001ccbf0: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ +001ccc00: 2927 0a20 2077 6865 6e3a 0a20 202d 2028  )'.  when:.  - (
│ │ │ +001ccc10: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +001ccc20: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001ccc30: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ +001ccc40: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ +001ccc50: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001ccc60: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ +001ccc70: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ +001ccc80: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001ccc90: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ +001ccca0: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ +001cccb0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001cccc0: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ +001cccd0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001ccce0: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ +001cccf0: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ +001ccd00: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ +001ccd10: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ +001ccd20: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ +001ccd30: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ +001ccd40: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ +001ccd50: 2920 290a 2020 2d20 2722 2f76 6172 2f6c  ) ).  - '"/var/l
│ │ │ +001ccd60: 6f67 2f61 7564 6974 2220 696e 2061 6e73  og/audit" in ans
│ │ │ +001ccd70: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ +001ccd80: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ +001ccd90: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ +001ccda0: 206d 6f75 6e74 5f69 6e66 6f20 6973 2064   mount_info is d
│ │ │ +001ccdb0: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ +001ccdc0: 6365 5f6e 616d 652e 7374 646f 7574 2069  ce_name.stdout i
│ │ │ +001ccdd0: 7320 6465 6669 6e65 6420 616e 6420 2864  s defined and (d
│ │ │ +001ccde0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001ccdf0: 7420 7c20 6c65 6e67 7468 2026 6774 3b20  t | length > 
│ │ │ +001cce00: 3029 2920 6f72 2028 222d 2d66 7374 6162  0)) or ("--fstab
│ │ │ +001cce10: 220a 2020 2020 7c20 6c65 6e67 7468 203d  ".    | length =
│ │ │ +001cce20: 3d20 3029 0a20 2074 6167 733a 0a20 202d  = 0).  tags:.  -
│ │ │ +001cce30: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001cce40: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +001cce50: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ +001cce60: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +001cce70: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001cce80: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +001cce90: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +001ccea0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001cceb0: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ +001ccec0: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001cced0: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001ccee0: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001ccef0: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001ccf00: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001ccf10: 6e74 5f6f 7074 696f 6e5f 7661 725f 6c6f  nt_option_var_lo
│ │ │ +001ccf20: 675f 6175 6469 745f 6e6f 6578 6563 0a20  g_audit_noexec. 
│ │ │ +001ccf30: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +001ccf40: 6465 640a 3c2f 636f 6465 3e3c 2f70 7265  ded.
Remediation │ │ │ +001cd000: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ +001cd010: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Reboot:false
# Remediatio
│ │ │ +001cd0d0: 6e20 6973 2061 7070 6c69 6361 626c 6520  n is applicable 
│ │ │ +001cd0e0: 6f6e 6c79 2069 6e20 6365 7274 6169 6e20  only in certain 
│ │ │ +001cd0f0: 706c 6174 666f 726d 730a 6966 2028 2021  platforms.if ( !
│ │ │ +001cd100: 2028 207b 2072 706d 202d 2d71 7569 6574   ( { rpm --quiet
│ │ │ +001cd110: 202d 7120 6b65 726e 656c 203b 7d20 2661   -q kernel ;} &a
│ │ │ +001cd120: 6d70 3b26 616d 703b 207b 2072 706d 202d  mp;& { rpm -
│ │ │ +001cd130: 2d71 7569 6574 202d 7120 7270 6d2d 6f73  -quiet -q rpm-os
│ │ │ +001cd140: 7472 6565 203b 7d20 2661 6d70 3b26 616d  tree ;} &&am
│ │ │ +001cd150: 703b 207b 2072 706d 202d 2d71 7569 6574  p; { rpm --quiet
│ │ │ +001cd160: 202d 7120 626f 6f74 6320 3b7d 2026 616d   -q bootc ;} &am
│ │ │ +001cd170: 703b 2661 6d70 3b20 7b20 2120 7270 6d20  p;& { ! rpm 
│ │ │ +001cd180: 2d2d 7175 6965 7420 2d71 206f 7065 6e73  --quiet -q opens
│ │ │ +001cd190: 6869 6674 2d6b 7562 656c 6574 203b 7d20  hift-kubelet ;} 
│ │ │ +001cd1a0: 2661 6d70 3b26 616d 703b 2028 5b20 2d66  && ([ -f
│ │ │ +001cd1b0: 202f 7275 6e2f 6f73 7472 6565 2d62 6f6f   /run/ostree-boo
│ │ │ +001cd1c0: 7465 6420 5d20 7c7c 205b 202d 4c20 2f6f  ted ] || [ -L /o
│ │ │ +001cd1d0: 7374 7265 6520 5d29 2029 2026 616d 703b  stree ]) ) &
│ │ │ +001cd1e0: 2661 6d70 3b20 2120 2820 5b20 2d66 202f  & ! ( [ -f /
│ │ │ +001cd1f0: 2e64 6f63 6b65 7265 6e76 205d 207c 7c20  .dockerenv ] || 
│ │ │ +001cd200: 5b20 2d66 202f 7275 6e2f 2e63 6f6e 7461  [ -f /run/.conta
│ │ │ +001cd210: 696e 6572 656e 7620 5d20 2920 2920 2661  inerenv ] ) ) &a
│ │ │ +001cd220: 6d70 3b26 616d 703b 207b 2028 2066 696e  mp;& { ( fin
│ │ │ +001cd230: 646d 6e74 202d 2d6b 6572 6e65 6c20 222f  dmnt --kernel "/
│ │ │ +001cd240: 7661 722f 6c6f 672f 6175 6469 7422 2026  var/log/audit" &
│ │ │ +001cd250: 6774 3b20 2f64 6576 2f6e 756c 6c20 7c7c  gt; /dev/null ||
│ │ │ +001cd260: 2066 696e 646d 6e74 202d 2d66 7374 6162   findmnt --fstab
│ │ │ +001cd270: 2022 2f76 6172 2f6c 6f67 2f61 7564 6974   "/var/log/audit
│ │ │ +001cd280: 2220 2667 743b 202f 6465 762f 6e75 6c6c  " > /dev/null
│ │ │ +001cd290: 2029 3b20 7d3b 2074 6865 6e0a 0a66 756e   ); }; then..fun
│ │ │ +001cd2a0: 6374 696f 6e20 7065 7266 6f72 6d5f 7265  ction perform_re
│ │ │ +001cd2b0: 6d65 6469 6174 696f 6e20 7b0a 0a20 2020  mediation {..   
│ │ │ +001cd2c0: 200a 2020 2020 2020 2020 2320 7468 6520   .        # the 
│ │ │ +001cd2d0: 6d6f 756e 7420 706f 696e 7420 2f76 6172  mount point /var
│ │ │ +001cd2e0: 2f6c 6f67 2f61 7564 6974 2068 6173 2074  /log/audit has t
│ │ │ +001cd2f0: 6f20 6265 2064 6566 696e 6564 2069 6e20  o be defined in 
│ │ │ +001cd300: 2f65 7463 2f66 7374 6162 0a20 2020 2020  /etc/fstab.     
│ │ │ +001cd310: 2020 2023 2062 6566 6f72 6520 7468 6973     # before this
│ │ │ +001cd320: 2072 656d 6564 6961 7469 6f6e 2063 616e   remediation can
│ │ │ +001cd330: 2062 6520 6578 6563 7574 6564 2e20 496e   be executed. In
│ │ │ +001cd340: 2063 6173 6520 6974 2069 7320 6e6f 7420   case it is not 
│ │ │ +001cd350: 6465 6669 6e65 642c 2074 6865 0a20 2020  defined, the.   
│ │ │ +001cd360: 2020 2020 2023 2072 656d 6564 6961 7469       # remediati
│ │ │ +001cd370: 6f6e 2061 626f 7274 7320 616e 6420 6e6f  on aborts and no
│ │ │ +001cd380: 2063 6861 6e67 6573 2072 6567 6172 6469   changes regardi
│ │ │ +001cd390: 6e67 2074 6865 206d 6f75 6e74 2070 6f69  ng the mount poi
│ │ │ +001cd3a0: 6e74 2061 7265 2064 6f6e 652e 0a20 2020  nt are done..   
│ │ │ +001cd3b0: 2020 2020 206d 6f75 6e74 5f70 6f69 6e74       mount_point
│ │ │ +001cd3c0: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ +001cd3d0: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ +001cd3e0: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ +001cd3f0: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ +001cd400: 653a 5d5d 2220 222f 7661 722f 6c6f 672f  e:]]" "/var/log/
│ │ │ +001cd410: 6175 6469 7422 2922 0a0a 2020 2020 6772  audit")"..    gr
│ │ │ +001cd420: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ +001cd430: 5f6d 6174 6368 5f72 6567 6578 7022 202d  _match_regexp" -
│ │ │ +001cd440: 7120 2f65 7463 2f66 7374 6162 205c 0a20  q /etc/fstab \. 
│ │ │ +001cd450: 2020 2020 2020 207c 7c20 7b20 6563 686f         || { echo
│ │ │ +001cd460: 2022 5468 6520 6d6f 756e 7420 706f 696e   "The mount poin
│ │ │ +001cd470: 7420 272f 7661 722f 6c6f 672f 6175 6469  t '/var/log/audi
│ │ │ +001cd480: 7427 2069 7320 6e6f 7420 6576 656e 2069  t' is not even i
│ │ │ +001cd490: 6e20 2f65 7463 2f66 7374 6162 2c20 736f  n /etc/fstab, so
│ │ │ +001cd4a0: 2077 6520 6361 6e27 7420 7365 7420 7570   we can't set up
│ │ │ +001cd4b0: 206d 6f75 6e74 206f 7074 696f 6e73 2220   mount options" 
│ │ │ +001cd4c0: 2667 743b 2661 6d70 3b32 3b0a 2020 2020  >&2;.    
│ │ │ +001cd4d0: 2020 2020 2020 2020 2020 2020 6563 686f              echo
│ │ │ +001cd4e0: 2022 4e6f 7420 7265 6d65 6469 6174 696e   "Not remediatin
│ │ │ +001cd4f0: 672c 2062 6563 6175 7365 2074 6865 7265  g, because there
│ │ │ +001cd500: 2069 7320 6e6f 2072 6563 6f72 6420 6f66   is no record of
│ │ │ +001cd510: 202f 7661 722f 6c6f 672f 6175 6469 7420   /var/log/audit 
│ │ │ +001cd520: 696e 202f 6574 632f 6673 7461 6222 2026  in /etc/fstab" &
│ │ │ +001cd530: 6774 3b26 616d 703b 323b 2072 6574 7572  gt;&2; retur
│ │ │ +001cd540: 6e20 313b 207d 0a20 2020 200a 0a0a 2020  n 1; }.    ...  
│ │ │ +001cd550: 2020 6d6f 756e 745f 706f 696e 745f 6d61    mount_point_ma
│ │ │ +001cd560: 7463 685f 7265 6765 7870 3d22 2428 7072  tch_regexp="$(pr
│ │ │ +001cd570: 696e 7466 2022 5e5b 5b3a 7370 6163 653a  intf "^[[:space:
│ │ │ +001cd580: 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163  ]]*[^#].*[[:spac
│ │ │ +001cd590: 653a 5d5d 2573 5b5b 3a73 7061 6365 3a5d  e:]]%s[[:space:]
│ │ │ +001cd5a0: 5d22 202f 7661 722f 6c6f 672f 6175 6469  ]" /var/log/audi
│ │ │ +001cd5b0: 7429 220a 0a20 2020 2023 2049 6620 7468  t)"..    # If th
│ │ │ +001cd5c0: 6520 6d6f 756e 7420 706f 696e 7420 6973  e mount point is
│ │ │ +001cd5d0: 206e 6f74 2069 6e20 2f65 7463 2f66 7374   not in /etc/fst
│ │ │ +001cd5e0: 6162 2c20 6765 7420 7072 6576 696f 7573  ab, get previous
│ │ │ +001cd5f0: 206d 6f75 6e74 206f 7074 696f 6e73 2066   mount options f
│ │ │ +001cd600: 726f 6d20 2f65 7463 2f6d 7461 620a 2020  rom /etc/mtab.  
│ │ │ +001cd610: 2020 6966 2021 2067 7265 7020 2d71 2022    if ! grep -q "
│ │ │ +001cd620: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ +001cd630: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ +001cd640: 6673 7461 623b 2074 6865 6e0a 2020 2020  fstab; then.    
│ │ │ +001cd650: 2020 2020 2320 7275 6e74 696d 6520 6f70      # runtime op
│ │ │ +001cd660: 7473 2077 6974 686f 7574 2073 6f6d 6520  ts without some 
│ │ │ +001cd670: 6175 746f 6d61 7469 6320 6b65 726e 656c  automatic kernel
│ │ │ +001cd680: 2f75 7365 7273 7061 6365 2d61 6464 6564  /userspace-added
│ │ │ +001cd690: 2064 6566 6175 6c74 730a 2020 2020 2020   defaults.      
│ │ │ +001cd6a0: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ +001cd6b0: 5f6f 7074 733d 2428 6772 6570 2022 246d  _opts=$(grep "$m
│ │ │ +001cd6c0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001cd6d0: 5f72 6567 6578 7022 202f 6574 632f 6d74  _regexp" /etc/mt
│ │ │ +001cd6e0: 6162 207c 2068 6561 6420 2d31 207c 2020  ab | head -1 |  
│ │ │ +001cd6f0: 6177 6b20 277b 7072 696e 7420 2434 7d27  awk '{print $4}'
│ │ │ +001cd700: 205c 0a20 2020 2020 2020 2020 2020 2020   \.             
│ │ │ +001cd710: 2020 2020 2020 207c 2073 6564 202d 4520         | sed -E 
│ │ │ +001cd720: 2273 2f28 7277 7c64 6566 6175 6c74 737c  "s/(rw|defaults|
│ │ │ +001cd730: 7365 636c 6162 656c 7c6e 6f65 7865 6329  seclabel|noexec)
│ │ │ +001cd740: 282c 7c24 292f 2f67 3b73 2f2c 242f 2f22  (,|$)//g;s/,$//"
│ │ │ +001cd750: 290a 2020 2020 2020 2020 5b20 2224 7072  ).        [ "$pr
│ │ │ +001cd760: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001cd770: 7322 205d 2026 616d 703b 2661 6d70 3b20  s" ] && 
│ │ │ +001cd780: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001cd790: 7074 732b 3d22 2c22 0a20 2020 2020 2020  pts+=",".       
│ │ │ +001cd7a0: 2023 2049 6e20 6973 6f39 3636 3020 6669   # In iso9660 fi
│ │ │ +001cd7b0: 6c65 7379 7374 656d 7320 6d74 6162 2063  lesystems mtab c
│ │ │ +001cd7c0: 6f75 6c64 2064 6573 6372 6962 6520 6120  ould describe a 
│ │ │ +001cd7d0: 2262 6c6f 636b 7369 7a65 2220 7661 6c75  "blocksize" valu
│ │ │ +001cd7e0: 652c 2074 6869 7320 7368 6f75 6c64 2062  e, this should b
│ │ │ +001cd7f0: 6520 7265 666c 6563 7465 6420 696e 0a20  e reflected in. 
│ │ │ +001cd800: 2020 2020 2020 2023 2066 7374 6162 2061         # fstab a
│ │ │ +001cd810: 7320 2262 6c6f 636b 222e 2020 5468 6520  s "block".  The 
│ │ │ +001cd820: 6e65 7874 2076 6172 6961 626c 6520 6973  next variable is
│ │ │ +001cd830: 2074 6f20 7361 7469 7366 7920 7368 656c   to satisfy shel
│ │ │ +001cd840: 6c63 6865 636b 2053 4332 3035 302e 0a20  lcheck SC2050.. 
│ │ │ +001cd850: 2020 2020 2020 2066 735f 7479 7065 3d22         fs_type="
│ │ │ +001cd860: 220a 2020 2020 2020 2020 6966 205b 2020  ".        if [  
│ │ │ +001cd870: 2224 6673 5f74 7970 6522 203d 3d20 2269  "$fs_type" == "i
│ │ │ +001cd880: 736f 3936 3630 2220 5d20 3b20 7468 656e  so9660" ] ; then
│ │ │ +001cd890: 0a20 2020 2020 2020 2020 2020 2070 7265  .            pre
│ │ │ +001cd8a0: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001cd8b0: 3d24 2873 6564 2027 732f 626c 6f63 6b73  =$(sed 's/blocks
│ │ │ +001cd8c0: 697a 653d 2f62 6c6f 636b 3d2f 2720 266c  ize=/block=/' &l
│ │ │ +001cd8d0: 743b 266c 743b 266c 743b 2022 2470 7265  t;<< "$pre
│ │ │ +001cd8e0: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001cd8f0: 2229 0a20 2020 2020 2020 2066 690a 2020  ").        fi.  
│ │ │ +001cd900: 2020 2020 2020 6563 686f 2022 202f 7661        echo " /va
│ │ │ +001cd910: 722f 6c6f 672f 6175 6469 7420 2064 6566  r/log/audit  def
│ │ │ +001cd920: 6175 6c74 732c 247b 7072 6576 696f 7573  aults,${previous
│ │ │ +001cd930: 5f6d 6f75 6e74 5f6f 7074 737d 6e6f 6578  _mount_opts}noex
│ │ │ +001cd940: 6563 2030 2030 2220 2667 743b 2667 743b  ec 0 0" >>
│ │ │ +001cd950: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ +001cd960: 2320 4966 2074 6865 206d 6f75 6e74 5f6f  # If the mount_o
│ │ │ +001cd970: 7074 206f 7074 696f 6e20 6973 206e 6f74  pt option is not
│ │ │ +001cd980: 2061 6c72 6561 6479 2069 6e20 7468 6520   already in the 
│ │ │ +001cd990: 6d6f 756e 7420 706f 696e 7427 7320 2f65  mount point's /e
│ │ │ +001cd9a0: 7463 2f66 7374 6162 2065 6e74 7279 2c20  tc/fstab entry, 
│ │ │ +001cd9b0: 6164 6420 6974 0a20 2020 2065 6c69 6620  add it.    elif 
│ │ │ +001cd9c0: 2120 6772 6570 2022 246d 6f75 6e74 5f70  ! grep "$mount_p
│ │ │ +001cd9d0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001cd9e0: 7022 202f 6574 632f 6673 7461 6220 7c20  p" /etc/fstab | 
│ │ │ +001cd9f0: 6772 6570 202d 7120 226e 6f65 7865 6322  grep -q "noexec"
│ │ │ +001cda00: 3b20 7468 656e 0a20 2020 2020 2020 2070  ; then.        p
│ │ │ +001cda10: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001cda20: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ +001cda30: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001cda40: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ +001cda50: 207c 2061 776b 2027 7b70 7269 6e74 2024   | awk '{print $
│ │ │ +001cda60: 347d 2729 0a20 2020 2020 2020 2073 6564  4}').        sed
│ │ │ +001cda70: 202d 6920 2273 7c5c 2824 7b6d 6f75 6e74   -i "s|\(${mount
│ │ │ +001cda80: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001cda90: 6578 707d 2e2a 247b 7072 6576 696f 7573  exp}.*${previous
│ │ │ +001cdaa0: 5f6d 6f75 6e74 5f6f 7074 737d 5c29 7c5c  _mount_opts}\)|\
│ │ │ +001cdab0: 312c 6e6f 6578 6563 7c22 202f 6574 632f  1,noexec|" /etc/
│ │ │ +001cdac0: 6673 7461 620a 2020 2020 6669 0a0a 0a20  fstab.    fi... 
│ │ │ +001cdad0: 2020 2069 6620 6d6b 6469 7220 2d70 2022     if mkdir -p "
│ │ │ +001cdae0: 2f76 6172 2f6c 6f67 2f61 7564 6974 223b  /var/log/audit";
│ │ │ +001cdaf0: 2074 6865 6e0a 2020 2020 2020 2020 6966   then.        if
│ │ │ +001cdb00: 206d 6f75 6e74 706f 696e 7420 2d71 2022   mountpoint -q "
│ │ │ +001cdb10: 2f76 6172 2f6c 6f67 2f61 7564 6974 223b  /var/log/audit";
│ │ │ +001cdb20: 2074 6865 6e0a 2020 2020 2020 2020 2020   then.          
│ │ │ +001cdb30: 2020 6d6f 756e 7420 2d6f 2072 656d 6f75    mount -o remou
│ │ │ +001cdb40: 6e74 202d 2d74 6172 6765 7420 222f 7661  nt --target "/va
│ │ │ +001cdb50: 722f 6c6f 672f 6175 6469 7422 0a20 2020  r/log/audit".   
│ │ │ +001cdb60: 2020 2020 2066 690a 2020 2020 6669 0a7d       fi.    fi.}
│ │ │ +001cdb70: 0a0a 7065 7266 6f72 6d5f 7265 6d65 6469  ..perform_remedi
│ │ │ +001cdb80: 6174 696f 6e0a 0a65 6c73 650a 2020 2020  ation..else.    
│ │ │ +001cdb90: 2667 743b 2661 6d70 3b32 2065 6368 6f20  >&2 echo 
│ │ │ +001cdba0: 2752 656d 6564 6961 7469 6f6e 2069 7320  'Remediation is 
│ │ │ +001cdbb0: 6e6f 7420 6170 706c 6963 6162 6c65 2c20  not applicable, 
│ │ │ +001cdbc0: 6e6f 7468 696e 6720 7761 7320 646f 6e65  nothing was done
│ │ │ +001cdbd0: 270a 6669 0a3c 2f63 6f64 653e 3c2f 7072  '.fi.
Remediation │ │ │ +001cdc90: 2041 6e61 636f 6e64 6120 736e 6970 7065 Anaconda snippe │ │ │ +001cdca0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +001cdd20: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +001cdd30: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +001cdd50: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +001cdd60: 3c74 643e 6869 6768 3c2f 7464 3e3c 2f74 highReboot │ │ │ +001cdd80: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +001cdd90: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +001cddb0: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ +001cddd0: 3c63 6f64 653e 0a70 6172 7420 2f76 6172  .part /var
│ │ │ +001cdde0: 2f6c 6f67 2f61 7564 6974 202d 2d6d 6f75  /log/audit --mou
│ │ │ +001cddf0: 6e74 6f70 7469 6f6e 733d 226e 6f65 7865  ntoptions="noexe
│ │ │ +001cde00: 6322 0a3c 2f63 6f64 653e 3c2f 7072 653e  c".
│ │ │ 001cde10: 3c2f 6469 763e 3c2f 6469 763e 3c2f 7464
│ │ │ 001cde40: 3c74 7220 6461 7461 2d74 742d 6964 3d22 Remediation │ │ │ -001cea90: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ -001ceaa0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -001ceb30: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -001ceb50: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -001ceb60: 7464 3e68 6967 683c 2f74 643e 3c2f 7472 td>highReboot: │ │ │ -001ceb80: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -001ceba0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ -001cebd0: 636f 6465 3e0a 7061 7274 202f 7661 722f  code>.part /var/
│ │ │ -001cebe0: 6c6f 672f 6175 6469 7420 2d2d 6d6f 756e  log/audit --moun
│ │ │ -001cebf0: 746f 7074 696f 6e73 3d22 6e6f 7375 6964  toptions="nosuid
│ │ │ -001cec00: 220a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  ".
< │ │ │ -001cec10: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -001cecc0: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -001cecd0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -001ced50: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -001ced70: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr> │ │ │ -001cedc0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472
low
Disr │ │ │ -001ced80: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -001ced90: 6869 6768 3c2f 7464 3e3c 2f74 723e 3c74 high
Reboot:false
Str │ │ │ -001cedd0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e63 ategy:c │ │ │ -001cede0: 6f6e 6669 6775 7265 3c2f 7464 3e3c 2f74 onfigure
<
│ │ │ -001cee00: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ -001cee10: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ -001cee20: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ -001cee30: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ -001cee40: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ -001cee50: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001cee60: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ -001cee70: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ -001cee80: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001cee90: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -001ceea0: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ -001ceeb0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001ceec0: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ -001ceed0: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ -001ceee0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001ceef0: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -001cef00: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -001cef10: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001cef20: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001cef30: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ -001cef40: 725f 6c6f 675f 6175 6469 745f 6e6f 7375  r_log_audit_nosu
│ │ │ -001cef50: 6964 0a20 202d 206e 6f5f 7265 626f 6f74  id.  - no_reboot
│ │ │ -001cef60: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ -001cef70: 2027 4164 6420 6e6f 7375 6964 204f 7074   'Add nosuid Opt
│ │ │ -001cef80: 696f 6e20 746f 202f 7661 722f 6c6f 672f  ion to /var/log/
│ │ │ -001cef90: 6175 6469 743a 2043 6865 636b 2069 6e66  audit: Check inf
│ │ │ -001cefa0: 6f72 6d61 7469 6f6e 2061 7373 6f63 6961  ormation associa
│ │ │ -001cefb0: 7465 6420 746f 206d 6f75 6e74 706f 696e  ted to mountpoin
│ │ │ -001cefc0: 7427 0a20 2061 6e73 6962 6c65 2e62 7569  t'.  ansible.bui
│ │ │ -001cefd0: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 6669  ltin.command: fi
│ │ │ -001cefe0: 6e64 6d6e 7420 2d2d 6673 7461 6220 272f  ndmnt --fstab '/
│ │ │ -001ceff0: 7661 722f 6c6f 672f 6175 6469 7427 0a20  var/log/audit'. 
│ │ │ -001cf000: 2072 6567 6973 7465 723a 2064 6576 6963   register: devic
│ │ │ -001cf010: 655f 6e61 6d65 0a20 2066 6169 6c65 645f  e_name.  failed_
│ │ │ -001cf020: 7768 656e 3a20 6465 7669 6365 5f6e 616d  when: device_nam
│ │ │ -001cf030: 652e 7263 2026 6774 3b20 310a 2020 6368  e.rc > 1.  ch
│ │ │ -001cf040: 616e 6765 645f 7768 656e 3a20 6661 6c73  anged_when: fals
│ │ │ -001cf050: 650a 2020 6368 6563 6b5f 6d6f 6465 3a20  e.  check_mode: 
│ │ │ -001cf060: 6661 6c73 650a 2020 7768 656e 3a0a 2020  false.  when:.  
│ │ │ -001cf070: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ -001cf080: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -001cf090: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001cf0a0: 2022 7270 6d2d 6f73 7472 6565 2220 696e   "rpm-ostree" in
│ │ │ -001cf0b0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001cf0c0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001cf0d0: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ -001cf0e0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001cf0f0: 7320 616e 6420 6e6f 7420 226f 7065 6e73  s and not "opens
│ │ │ -001cf100: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ -001cf110: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001cf120: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001cf130: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ -001cf140: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ -001cf150: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ -001cf160: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ -001cf170: 696f 6e5f 7479 7065 2069 6e0a 2020 2020  ion_type in.    
│ │ │ -001cf180: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ -001cf190: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ -001cf1a0: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572  man", "container
│ │ │ -001cf1b0: 225d 2029 2029 0a20 202d 2027 222f 7661  "] ) ).  - '"/va
│ │ │ -001cf1c0: 722f 6c6f 672f 6175 6469 7422 2069 6e20  r/log/audit" in 
│ │ │ -001cf1d0: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ -001cf1e0: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ -001cf1f0: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ -001cf200: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -001cf210: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ -001cf220: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001cf230: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ -001cf240: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -001cf250: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001cf260: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -001cf270: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ -001cf280: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ -001cf290: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ -001cf2a0: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001cf2b0: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001cf2c0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001cf2d0: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001cf2e0: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001cf2f0: 7469 6f6e 5f76 6172 5f6c 6f67 5f61 7564  tion_var_log_aud
│ │ │ -001cf300: 6974 5f6e 6f73 7569 640a 2020 2d20 6e6f  it_nosuid.  - no
│ │ │ -001cf310: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ -001cf320: 2d20 6e61 6d65 3a20 2741 6464 206e 6f73  - name: 'Add nos
│ │ │ -001cf330: 7569 6420 4f70 7469 6f6e 2074 6f20 2f76  uid Option to /v
│ │ │ -001cf340: 6172 2f6c 6f67 2f61 7564 6974 3a20 4372  ar/log/audit: Cr
│ │ │ -001cf350: 6561 7465 206d 6f75 6e74 5f69 6e66 6f20  eate mount_info 
│ │ │ -001cf360: 6469 6374 696f 6e61 7279 2076 6172 6961  dictionary varia
│ │ │ -001cf370: 626c 6527 0a20 2073 6574 5f66 6163 743a  ble'.  set_fact:
│ │ │ -001cf380: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ -001cf390: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c   '{{ mount_info|
│ │ │ -001cf3a0: 6465 6661 756c 7428 7b7d 297c 636f 6d62  default({})|comb
│ │ │ -001cf3b0: 696e 6528 7b69 7465 6d2e 303a 2069 7465  ine({item.0: ite
│ │ │ -001cf3c0: 6d2e 317d 2920 7d7d 270a 2020 7769 7468  m.1}) }}'.  with
│ │ │ -001cf3d0: 5f74 6f67 6574 6865 723a 0a20 202d 2027  _together:.  - '
│ │ │ -001cf3e0: 7b7b 2064 6576 6963 655f 6e61 6d65 2e73  {{ device_name.s
│ │ │ -001cf3f0: 7464 6f75 745f 6c69 6e65 735b 305d 2e73  tdout_lines[0].s
│ │ │ -001cf400: 706c 6974 2829 207c 206d 6170 2827 276c  plit() | map(''l
│ │ │ -001cf410: 6f77 6572 2727 2920 7c20 6c69 7374 207d  ower'') | list }
│ │ │ -001cf420: 7d27 0a20 202d 2027 7b7b 2064 6576 6963  }'.  - '{{ devic
│ │ │ -001cf430: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ -001cf440: 6e65 735b 315d 2e73 706c 6974 2829 207c  nes[1].split() |
│ │ │ -001cf450: 206c 6973 7420 7d7d 270a 2020 7768 656e   list }}'.  when
│ │ │ -001cf460: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ -001cf470: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -001cf480: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001cf490: 2061 6e64 2022 7270 6d2d 6f73 7472 6565   and "rpm-ostree
│ │ │ -001cf4a0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001cf4b0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001cf4c0: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ -001cf4d0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001cf4e0: 6b61 6765 7320 616e 6420 6e6f 7420 226f  kages and not "o
│ │ │ -001cf4f0: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ -001cf500: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001cf510: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001cf520: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ -001cf530: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ -001cf540: 6c69 6e65 2029 2061 6e64 206e 6f74 2028  line ) and not (
│ │ │ -001cf550: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ -001cf560: 697a 6174 696f 6e5f 7479 7065 2069 6e0a  ization_type in.
│ │ │ -001cf570: 2020 2020 5b22 646f 636b 6572 222c 2022      ["docker", "
│ │ │ -001cf580: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ -001cf590: 2270 6f64 6d61 6e22 2c20 2263 6f6e 7461  "podman", "conta
│ │ │ -001cf5a0: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ -001cf5b0: 222f 7661 722f 6c6f 672f 6175 6469 7422  "/var/log/audit"
│ │ │ -001cf5c0: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ -001cf5d0: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ -001cf5e0: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ -001cf5f0: 7374 270a 2020 2d20 6465 7669 6365 5f6e  st'.  - device_n
│ │ │ -001cf600: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ -001cf610: 6669 6e65 6420 616e 6420 6465 7669 6365  fined and device
│ │ │ -001cf620: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ -001cf630: 6573 2069 7320 6465 6669 6e65 640a 2020  es is defined.  
│ │ │ -001cf640: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ -001cf650: 7464 6f75 7420 7c20 6c65 6e67 7468 2026  tdout | length &
│ │ │ -001cf660: 6774 3b20 3029 0a20 2074 6167 733a 0a20  gt; 0).  tags:. 
│ │ │ -001cf670: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001cf680: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ -001cf690: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ -001cf6a0: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -001cf6b0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001cf6c0: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ -001cf6d0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001cf6e0: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ -001cf6f0: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ -001cf700: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -001cf710: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -001cf720: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -001cf730: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -001cf740: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -001cf750: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f  ount_option_var_
│ │ │ -001cf760: 6c6f 675f 6175 6469 745f 6e6f 7375 6964  log_audit_nosuid
│ │ │ -001cf770: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -001cf780: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ -001cf790: 4164 6420 6e6f 7375 6964 204f 7074 696f  Add nosuid Optio
│ │ │ -001cf7a0: 6e20 746f 202f 7661 722f 6c6f 672f 6175  n to /var/log/au
│ │ │ -001cf7b0: 6469 743a 2049 6620 2f76 6172 2f6c 6f67  dit: If /var/log
│ │ │ -001cf7c0: 2f61 7564 6974 206e 6f74 206d 6f75 6e74  /audit not mount
│ │ │ -001cf7d0: 6564 2c20 6372 6166 740a 2020 2020 6d6f  ed, craft.    mo
│ │ │ -001cf7e0: 756e 745f 696e 666f 206d 616e 7561 6c6c  unt_info manuall
│ │ │ -001cf7f0: 7927 0a20 2073 6574 5f66 6163 743a 0a20  y'.  set_fact:. 
│ │ │ -001cf800: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ -001cf810: 7b7b 206d 6f75 6e74 5f69 6e66 6f7c 6465  {{ mount_info|de
│ │ │ -001cf820: 6661 756c 7428 7b7d 297c 636f 6d62 696e  fault({})|combin
│ │ │ -001cf830: 6528 7b69 7465 6d2e 303a 2069 7465 6d2e  e({item.0: item.
│ │ │ -001cf840: 317d 2920 7d7d 270a 2020 7769 7468 5f74  1}) }}'.  with_t
│ │ │ -001cf850: 6f67 6574 6865 723a 0a20 202d 202d 2074  ogether:.  - - t
│ │ │ -001cf860: 6172 6765 740a 2020 2020 2d20 736f 7572  arget.    - sour
│ │ │ -001cf870: 6365 0a20 2020 202d 2066 7374 7970 650a  ce.    - fstype.
│ │ │ -001cf880: 2020 2020 2d20 6f70 7469 6f6e 730a 2020      - options.  
│ │ │ -001cf890: 2d20 2d20 2f76 6172 2f6c 6f67 2f61 7564  - - /var/log/aud
│ │ │ -001cf8a0: 6974 0a20 2020 202d 2027 270a 2020 2020  it.    - ''.    
│ │ │ -001cf8b0: 2d20 2727 0a20 2020 202d 2064 6566 6175  - ''.    - defau
│ │ │ -001cf8c0: 6c74 730a 2020 7768 656e 3a0a 2020 2d20  lts.  when:.  - 
│ │ │ -001cf8d0: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -001cf8e0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001cf8f0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001cf900: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ -001cf910: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001cf920: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ -001cf930: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -001cf940: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001cf950: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001cf960: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001cf970: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001cf980: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ -001cf990: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001cf9a0: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ -001cf9b0: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001cf9c0: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001cf9d0: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ -001cf9e0: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -001cf9f0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -001cfa00: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ -001cfa10: 2029 2029 0a20 202d 2027 222f 7661 722f   ) ).  - '"/var/
│ │ │ -001cfa20: 6c6f 672f 6175 6469 7422 2069 6e20 616e  log/audit" in an
│ │ │ -001cfa30: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ -001cfa40: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ -001cfa50: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ -001cfa60: 2d20 2822 2d2d 6673 7461 6222 207c 206c  - ("--fstab" | l
│ │ │ -001cfa70: 656e 6774 6820 3d3d 2030 290a 2020 2d20  ength == 0).  - 
│ │ │ -001cfa80: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001cfa90: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ -001cfaa0: 6420 6465 7669 6365 5f6e 616d 652e 7374  d device_name.st
│ │ │ -001cfab0: 646f 7574 5f6c 696e 6573 2069 7320 6465  dout_lines is de
│ │ │ -001cfac0: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ -001cfad0: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ -001cfae0: 6c65 6e67 7468 203d 3d20 3029 0a20 2074  length == 0).  t
│ │ │ -001cfaf0: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -001cfb00: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ -001cfb10: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ -001cfb20: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001cfb30: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ -001cfb40: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ -001cfb50: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001cfb60: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ -001cfb70: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ -001cfb80: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -001cfb90: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -001cfba0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -001cfbb0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -001cfbc0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -001cfbd0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ -001cfbe0: 6e5f 7661 725f 6c6f 675f 6175 6469 745f  n_var_log_audit_
│ │ │ -001cfbf0: 6e6f 7375 6964 0a20 202d 206e 6f5f 7265  nosuid.  - no_re
│ │ │ -001cfc00: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -001cfc10: 616d 653a 2027 4164 6420 6e6f 7375 6964  ame: 'Add nosuid
│ │ │ -001cfc20: 204f 7074 696f 6e20 746f 202f 7661 722f   Option to /var/
│ │ │ -001cfc30: 6c6f 672f 6175 6469 743a 204d 616b 6520  log/audit: Make 
│ │ │ -001cfc40: 7375 7265 206e 6f73 7569 6420 6f70 7469  sure nosuid opti
│ │ │ -001cfc50: 6f6e 2069 7320 7061 7274 206f 6620 7468  on is part of th
│ │ │ -001cfc60: 650a 2020 2020 746f 202f 7661 722f 6c6f  e.    to /var/lo
│ │ │ -001cfc70: 672f 6175 6469 7420 6f70 7469 6f6e 7327  g/audit options'
│ │ │ -001cfc80: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ -001cfc90: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b   mount_info: '{{
│ │ │ -001cfca0: 206d 6f75 6e74 5f69 6e66 6f20 7c20 636f   mount_info | co
│ │ │ -001cfcb0: 6d62 696e 6528 207b 2727 6f70 7469 6f6e  mbine( {''option
│ │ │ -001cfcc0: 7327 273a 2727 2727 7e28 6d6f 756e 745f  s'':''''~(mount_
│ │ │ -001cfcd0: 696e 666f 2e6f 7074 696f 6e73 207c 0a20  info.options |. 
│ │ │ -001cfce0: 2020 2020 2064 6566 6175 6c74 2827 2727       default('''
│ │ │ -001cfcf0: 2729 297e 2827 272c 2727 2069 6620 286d  '))~('','' if (m
│ │ │ -001cfd00: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -001cfd10: 7320 7c20 6465 6661 756c 7428 2727 2727  s | default(''''
│ │ │ -001cfd20: 2929 2065 6c73 6520 2727 2727 297e 2727  )) else '''')~''
│ │ │ -001cfd30: 6e6f 7375 6964 2727 0a20 2020 2020 207d  nosuid''.      }
│ │ │ -001cfd40: 2920 7d7d 270a 2020 7768 656e 3a0a 2020  ) }}'.  when:.  
│ │ │ -001cfd50: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ -001cfd60: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -001cfd70: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001cfd80: 2022 7270 6d2d 6f73 7472 6565 2220 696e   "rpm-ostree" in
│ │ │ -001cfd90: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001cfda0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001cfdb0: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ -001cfdc0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001cfdd0: 7320 616e 6420 6e6f 7420 226f 7065 6e73  s and not "opens
│ │ │ -001cfde0: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ -001cfdf0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001cfe00: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001cfe10: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ -001cfe20: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ -001cfe30: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ -001cfe40: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ -001cfe50: 696f 6e5f 7479 7065 2069 6e0a 2020 2020  ion_type in.    
│ │ │ -001cfe60: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ -001cfe70: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ -001cfe80: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572  man", "container
│ │ │ -001cfe90: 225d 2029 2029 0a20 202d 2027 222f 7661  "] ) ).  - '"/va
│ │ │ -001cfea0: 722f 6c6f 672f 6175 6469 7422 2069 6e20  r/log/audit" in 
│ │ │ -001cfeb0: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ -001cfec0: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ -001cfed0: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ -001cfee0: 2020 2d20 6d6f 756e 745f 696e 666f 2069    - mount_info i
│ │ │ -001cfef0: 7320 6465 6669 6e65 6420 616e 6420 226e  s defined and "n
│ │ │ -001cff00: 6f73 7569 6422 206e 6f74 2069 6e20 286d  osuid" not in (m
│ │ │ -001cff10: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -001cff20: 7320 7c20 6465 6661 756c 7428 2727 2929  s | default(''))
│ │ │ -001cff30: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -001cff40: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ -001cff50: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001cff60: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ -001cff70: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ -001cff80: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001cff90: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ -001cffa0: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ -001cffb0: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ -001cffc0: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ -001cffd0: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ -001cffe0: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ -001cfff0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001d0000: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -001d0010: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ -001d0020: 7074 696f 6e5f 7661 725f 6c6f 675f 6175  ption_var_log_au
│ │ │ -001d0030: 6469 745f 6e6f 7375 6964 0a20 202d 206e  dit_nosuid.  - n
│ │ │ -001d0040: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -001d0050: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ -001d0060: 7375 6964 204f 7074 696f 6e20 746f 202f  suid Option to /
│ │ │ -001d0070: 7661 722f 6c6f 672f 6175 6469 743a 2045  var/log/audit: E
│ │ │ -001d0080: 6e73 7572 6520 2f76 6172 2f6c 6f67 2f61  nsure /var/log/a
│ │ │ -001d0090: 7564 6974 2069 7320 6d6f 756e 7465 6420  udit is mounted 
│ │ │ -001d00a0: 7769 7468 0a20 2020 206e 6f73 7569 6420  with.    nosuid 
│ │ │ -001d00b0: 6f70 7469 6f6e 270a 2020 616e 7369 626c  option'.  ansibl
│ │ │ -001d00c0: 652e 706f 7369 782e 6d6f 756e 743a 0a20  e.posix.mount:. 
│ │ │ -001d00d0: 2020 2070 6174 683a 202f 7661 722f 6c6f     path: /var/lo
│ │ │ -001d00e0: 672f 6175 6469 740a 2020 2020 7372 633a  g/audit.    src:
│ │ │ -001d00f0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ -001d0100: 736f 7572 6365 207c 2064 6566 6175 6c74  source | default
│ │ │ -001d0110: 2827 2727 2729 207d 7d27 0a20 2020 206f  ('''') }}'.    o
│ │ │ -001d0120: 7074 733a 2027 7b7b 206d 6f75 6e74 5f69  pts: '{{ mount_i
│ │ │ -001d0130: 6e66 6f2e 6f70 7469 6f6e 7320 7c20 6465  nfo.options | de
│ │ │ -001d0140: 6661 756c 7428 2727 2727 2920 7d7d 270a  fault('''') }}'.
│ │ │ -001d0150: 2020 2020 7374 6174 653a 206d 6f75 6e74      state: mount
│ │ │ -001d0160: 6564 0a20 2020 2066 7374 7970 653a 2027  ed.    fstype: '
│ │ │ -001d0170: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 6673  {{ mount_info.fs
│ │ │ -001d0180: 7479 7065 207c 2064 6566 6175 6c74 2827  type | default('
│ │ │ -001d0190: 2727 2729 207d 7d27 0a20 2072 6567 6973  ''') }}'.  regis
│ │ │ -001d01a0: 7465 723a 206d 6f75 6e74 5f72 6573 756c  ter: mount_resul
│ │ │ -001d01b0: 740a 2020 6661 696c 6564 5f77 6865 6e3a  t.  failed_when:
│ │ │ -001d01c0: 0a20 202d 206d 6f75 6e74 5f72 6573 756c  .  - mount_resul
│ │ │ -001d01d0: 7420 6973 2066 6169 6c65 640a 2020 2d20  t is failed.  - 
│ │ │ -001d01e0: 2727 2774 6172 6765 7420 6973 2062 7573  '''target is bus
│ │ │ -001d01f0: 7927 2720 6e6f 7420 696e 2028 6d6f 756e  y'' not in (moun
│ │ │ -001d0200: 745f 7265 7375 6c74 2e6d 7367 207c 2064  t_result.msg | d
│ │ │ -001d0210: 6566 6175 6c74 2827 2727 2729 2927 0a20  efault(''''))'. 
│ │ │ -001d0220: 202d 2027 2727 616c 7265 6164 7920 6d6f   - '''already mo
│ │ │ -001d0230: 756e 7465 6427 2720 6e6f 7420 696e 2028  unted'' not in (
│ │ │ -001d0240: 6d6f 756e 745f 7265 7375 6c74 2e6d 7367  mount_result.msg
│ │ │ -001d0250: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ -001d0260: 2927 0a20 2077 6865 6e3a 0a20 202d 2028  )'.  when:.  - (
│ │ │ -001d0270: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -001d0280: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001d0290: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ -001d02a0: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ -001d02b0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001d02c0: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ -001d02d0: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ -001d02e0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001d02f0: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -001d0300: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -001d0310: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001d0320: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ -001d0330: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001d0340: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ -001d0350: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -001d0360: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -001d0370: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ -001d0380: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ -001d0390: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ -001d03a0: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ -001d03b0: 2920 290a 2020 2d20 2722 2f76 6172 2f6c  ) ).  - '"/var/l
│ │ │ -001d03c0: 6f67 2f61 7564 6974 2220 696e 2061 6e73  og/audit" in ans
│ │ │ -001d03d0: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ -001d03e0: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ -001d03f0: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ -001d0400: 206d 6f75 6e74 5f69 6e66 6f20 6973 2064   mount_info is d
│ │ │ -001d0410: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ -001d0420: 6365 5f6e 616d 652e 7374 646f 7574 2069  ce_name.stdout i
│ │ │ -001d0430: 7320 6465 6669 6e65 6420 616e 6420 2864  s defined and (d
│ │ │ -001d0440: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001d0450: 7420 7c20 6c65 6e67 7468 2026 6774 3b20  t | length > 
│ │ │ -001d0460: 3029 2920 6f72 2028 222d 2d66 7374 6162  0)) or ("--fstab
│ │ │ -001d0470: 220a 2020 2020 7c20 6c65 6e67 7468 203d  ".    | length =
│ │ │ -001d0480: 3d20 3029 0a20 2074 6167 733a 0a20 202d  = 0).  tags:.  -
│ │ │ -001d0490: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001d04a0: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ -001d04b0: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ -001d04c0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -001d04d0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001d04e0: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ -001d04f0: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ -001d0500: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001d0510: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ -001d0520: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ -001d0530: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ -001d0540: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ -001d0550: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ -001d0560: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ -001d0570: 6e74 5f6f 7074 696f 6e5f 7661 725f 6c6f  nt_option_var_lo
│ │ │ -001d0580: 675f 6175 6469 745f 6e6f 7375 6964 0a20  g_audit_nosuid. 
│ │ │ -001d0590: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -001d05a0: 6465 640a 3c2f 636f 6465 3e3c 2f70 7265  ded.
Remediation │ │ │ -001d0660: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ -001d0670: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Reboot:false
# Remediatio
│ │ │ -001d0730: 6e20 6973 2061 7070 6c69 6361 626c 6520  n is applicable 
│ │ │ -001d0740: 6f6e 6c79 2069 6e20 6365 7274 6169 6e20  only in certain 
│ │ │ -001d0750: 706c 6174 666f 726d 730a 6966 2028 2021  platforms.if ( !
│ │ │ -001d0760: 2028 207b 2072 706d 202d 2d71 7569 6574   ( { rpm --quiet
│ │ │ -001d0770: 202d 7120 6b65 726e 656c 203b 7d20 2661   -q kernel ;} &a
│ │ │ -001d0780: 6d70 3b26 616d 703b 207b 2072 706d 202d  mp;& { rpm -
│ │ │ -001d0790: 2d71 7569 6574 202d 7120 7270 6d2d 6f73  -quiet -q rpm-os
│ │ │ -001d07a0: 7472 6565 203b 7d20 2661 6d70 3b26 616d  tree ;} &&am
│ │ │ -001d07b0: 703b 207b 2072 706d 202d 2d71 7569 6574  p; { rpm --quiet
│ │ │ -001d07c0: 202d 7120 626f 6f74 6320 3b7d 2026 616d   -q bootc ;} &am
│ │ │ -001d07d0: 703b 2661 6d70 3b20 7b20 2120 7270 6d20  p;& { ! rpm 
│ │ │ -001d07e0: 2d2d 7175 6965 7420 2d71 206f 7065 6e73  --quiet -q opens
│ │ │ -001d07f0: 6869 6674 2d6b 7562 656c 6574 203b 7d20  hift-kubelet ;} 
│ │ │ -001d0800: 2661 6d70 3b26 616d 703b 2028 5b20 2d66  && ([ -f
│ │ │ -001d0810: 202f 7275 6e2f 6f73 7472 6565 2d62 6f6f   /run/ostree-boo
│ │ │ -001d0820: 7465 6420 5d20 7c7c 205b 202d 4c20 2f6f  ted ] || [ -L /o
│ │ │ -001d0830: 7374 7265 6520 5d29 2029 2026 616d 703b  stree ]) ) &
│ │ │ -001d0840: 2661 6d70 3b20 2120 2820 5b20 2d66 202f  & ! ( [ -f /
│ │ │ -001d0850: 2e64 6f63 6b65 7265 6e76 205d 207c 7c20  .dockerenv ] || 
│ │ │ -001d0860: 5b20 2d66 202f 7275 6e2f 2e63 6f6e 7461  [ -f /run/.conta
│ │ │ -001d0870: 696e 6572 656e 7620 5d20 2920 2920 2661  inerenv ] ) ) &a
│ │ │ -001d0880: 6d70 3b26 616d 703b 207b 2028 2066 696e  mp;& { ( fin
│ │ │ -001d0890: 646d 6e74 202d 2d6b 6572 6e65 6c20 222f  dmnt --kernel "/
│ │ │ -001d08a0: 7661 722f 6c6f 672f 6175 6469 7422 2026  var/log/audit" &
│ │ │ -001d08b0: 6774 3b20 2f64 6576 2f6e 756c 6c20 7c7c  gt; /dev/null ||
│ │ │ -001d08c0: 2066 696e 646d 6e74 202d 2d66 7374 6162   findmnt --fstab
│ │ │ -001d08d0: 2022 2f76 6172 2f6c 6f67 2f61 7564 6974   "/var/log/audit
│ │ │ -001d08e0: 2220 2667 743b 202f 6465 762f 6e75 6c6c  " > /dev/null
│ │ │ -001d08f0: 2029 3b20 7d3b 2074 6865 6e0a 0a66 756e   ); }; then..fun
│ │ │ -001d0900: 6374 696f 6e20 7065 7266 6f72 6d5f 7265  ction perform_re
│ │ │ -001d0910: 6d65 6469 6174 696f 6e20 7b0a 0a20 2020  mediation {..   
│ │ │ -001d0920: 200a 2020 2020 2020 2020 2320 7468 6520   .        # the 
│ │ │ -001d0930: 6d6f 756e 7420 706f 696e 7420 2f76 6172  mount point /var
│ │ │ -001d0940: 2f6c 6f67 2f61 7564 6974 2068 6173 2074  /log/audit has t
│ │ │ -001d0950: 6f20 6265 2064 6566 696e 6564 2069 6e20  o be defined in 
│ │ │ -001d0960: 2f65 7463 2f66 7374 6162 0a20 2020 2020  /etc/fstab.     
│ │ │ -001d0970: 2020 2023 2062 6566 6f72 6520 7468 6973     # before this
│ │ │ -001d0980: 2072 656d 6564 6961 7469 6f6e 2063 616e   remediation can
│ │ │ -001d0990: 2062 6520 6578 6563 7574 6564 2e20 496e   be executed. In
│ │ │ -001d09a0: 2063 6173 6520 6974 2069 7320 6e6f 7420   case it is not 
│ │ │ -001d09b0: 6465 6669 6e65 642c 2074 6865 0a20 2020  defined, the.   
│ │ │ -001d09c0: 2020 2020 2023 2072 656d 6564 6961 7469       # remediati
│ │ │ -001d09d0: 6f6e 2061 626f 7274 7320 616e 6420 6e6f  on aborts and no
│ │ │ -001d09e0: 2063 6861 6e67 6573 2072 6567 6172 6469   changes regardi
│ │ │ -001d09f0: 6e67 2074 6865 206d 6f75 6e74 2070 6f69  ng the mount poi
│ │ │ -001d0a00: 6e74 2061 7265 2064 6f6e 652e 0a20 2020  nt are done..   
│ │ │ -001d0a10: 2020 2020 206d 6f75 6e74 5f70 6f69 6e74       mount_point
│ │ │ -001d0a20: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ -001d0a30: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ -001d0a40: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ -001d0a50: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ -001d0a60: 653a 5d5d 2220 222f 7661 722f 6c6f 672f  e:]]" "/var/log/
│ │ │ -001d0a70: 6175 6469 7422 2922 0a0a 2020 2020 6772  audit")"..    gr
│ │ │ -001d0a80: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ -001d0a90: 5f6d 6174 6368 5f72 6567 6578 7022 202d  _match_regexp" -
│ │ │ -001d0aa0: 7120 2f65 7463 2f66 7374 6162 205c 0a20  q /etc/fstab \. 
│ │ │ -001d0ab0: 2020 2020 2020 207c 7c20 7b20 6563 686f         || { echo
│ │ │ -001d0ac0: 2022 5468 6520 6d6f 756e 7420 706f 696e   "The mount poin
│ │ │ -001d0ad0: 7420 272f 7661 722f 6c6f 672f 6175 6469  t '/var/log/audi
│ │ │ -001d0ae0: 7427 2069 7320 6e6f 7420 6576 656e 2069  t' is not even i
│ │ │ -001d0af0: 6e20 2f65 7463 2f66 7374 6162 2c20 736f  n /etc/fstab, so
│ │ │ -001d0b00: 2077 6520 6361 6e27 7420 7365 7420 7570   we can't set up
│ │ │ -001d0b10: 206d 6f75 6e74 206f 7074 696f 6e73 2220   mount options" 
│ │ │ -001d0b20: 2667 743b 2661 6d70 3b32 3b0a 2020 2020  >&2;.    
│ │ │ -001d0b30: 2020 2020 2020 2020 2020 2020 6563 686f              echo
│ │ │ -001d0b40: 2022 4e6f 7420 7265 6d65 6469 6174 696e   "Not remediatin
│ │ │ -001d0b50: 672c 2062 6563 6175 7365 2074 6865 7265  g, because there
│ │ │ -001d0b60: 2069 7320 6e6f 2072 6563 6f72 6420 6f66   is no record of
│ │ │ -001d0b70: 202f 7661 722f 6c6f 672f 6175 6469 7420   /var/log/audit 
│ │ │ -001d0b80: 696e 202f 6574 632f 6673 7461 6222 2026  in /etc/fstab" &
│ │ │ -001d0b90: 6774 3b26 616d 703b 323b 2072 6574 7572  gt;&2; retur
│ │ │ -001d0ba0: 6e20 313b 207d 0a20 2020 200a 0a0a 2020  n 1; }.    ...  
│ │ │ -001d0bb0: 2020 6d6f 756e 745f 706f 696e 745f 6d61    mount_point_ma
│ │ │ -001d0bc0: 7463 685f 7265 6765 7870 3d22 2428 7072  tch_regexp="$(pr
│ │ │ -001d0bd0: 696e 7466 2022 5e5b 5b3a 7370 6163 653a  intf "^[[:space:
│ │ │ -001d0be0: 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163  ]]*[^#].*[[:spac
│ │ │ -001d0bf0: 653a 5d5d 2573 5b5b 3a73 7061 6365 3a5d  e:]]%s[[:space:]
│ │ │ -001d0c00: 5d22 202f 7661 722f 6c6f 672f 6175 6469  ]" /var/log/audi
│ │ │ -001d0c10: 7429 220a 0a20 2020 2023 2049 6620 7468  t)"..    # If th
│ │ │ -001d0c20: 6520 6d6f 756e 7420 706f 696e 7420 6973  e mount point is
│ │ │ -001d0c30: 206e 6f74 2069 6e20 2f65 7463 2f66 7374   not in /etc/fst
│ │ │ -001d0c40: 6162 2c20 6765 7420 7072 6576 696f 7573  ab, get previous
│ │ │ -001d0c50: 206d 6f75 6e74 206f 7074 696f 6e73 2066   mount options f
│ │ │ -001d0c60: 726f 6d20 2f65 7463 2f6d 7461 620a 2020  rom /etc/mtab.  
│ │ │ -001d0c70: 2020 6966 2021 2067 7265 7020 2d71 2022    if ! grep -q "
│ │ │ -001d0c80: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ -001d0c90: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ -001d0ca0: 6673 7461 623b 2074 6865 6e0a 2020 2020  fstab; then.    
│ │ │ -001d0cb0: 2020 2020 2320 7275 6e74 696d 6520 6f70      # runtime op
│ │ │ -001d0cc0: 7473 2077 6974 686f 7574 2073 6f6d 6520  ts without some 
│ │ │ -001d0cd0: 6175 746f 6d61 7469 6320 6b65 726e 656c  automatic kernel
│ │ │ -001d0ce0: 2f75 7365 7273 7061 6365 2d61 6464 6564  /userspace-added
│ │ │ -001d0cf0: 2064 6566 6175 6c74 730a 2020 2020 2020   defaults.      
│ │ │ -001d0d00: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ -001d0d10: 5f6f 7074 733d 2428 6772 6570 2022 246d  _opts=$(grep "$m
│ │ │ -001d0d20: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001d0d30: 5f72 6567 6578 7022 202f 6574 632f 6d74  _regexp" /etc/mt
│ │ │ -001d0d40: 6162 207c 2068 6561 6420 2d31 207c 2020  ab | head -1 |  
│ │ │ -001d0d50: 6177 6b20 277b 7072 696e 7420 2434 7d27  awk '{print $4}'
│ │ │ -001d0d60: 205c 0a20 2020 2020 2020 2020 2020 2020   \.             
│ │ │ -001d0d70: 2020 2020 2020 207c 2073 6564 202d 4520         | sed -E 
│ │ │ -001d0d80: 2273 2f28 7277 7c64 6566 6175 6c74 737c  "s/(rw|defaults|
│ │ │ -001d0d90: 7365 636c 6162 656c 7c6e 6f73 7569 6429  seclabel|nosuid)
│ │ │ -001d0da0: 282c 7c24 292f 2f67 3b73 2f2c 242f 2f22  (,|$)//g;s/,$//"
│ │ │ -001d0db0: 290a 2020 2020 2020 2020 5b20 2224 7072  ).        [ "$pr
│ │ │ -001d0dc0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001d0dd0: 7322 205d 2026 616d 703b 2661 6d70 3b20  s" ] && 
│ │ │ -001d0de0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001d0df0: 7074 732b 3d22 2c22 0a20 2020 2020 2020  pts+=",".       
│ │ │ -001d0e00: 2023 2049 6e20 6973 6f39 3636 3020 6669   # In iso9660 fi
│ │ │ -001d0e10: 6c65 7379 7374 656d 7320 6d74 6162 2063  lesystems mtab c
│ │ │ -001d0e20: 6f75 6c64 2064 6573 6372 6962 6520 6120  ould describe a 
│ │ │ -001d0e30: 2262 6c6f 636b 7369 7a65 2220 7661 6c75  "blocksize" valu
│ │ │ -001d0e40: 652c 2074 6869 7320 7368 6f75 6c64 2062  e, this should b
│ │ │ -001d0e50: 6520 7265 666c 6563 7465 6420 696e 0a20  e reflected in. 
│ │ │ -001d0e60: 2020 2020 2020 2023 2066 7374 6162 2061         # fstab a
│ │ │ -001d0e70: 7320 2262 6c6f 636b 222e 2020 5468 6520  s "block".  The 
│ │ │ -001d0e80: 6e65 7874 2076 6172 6961 626c 6520 6973  next variable is
│ │ │ -001d0e90: 2074 6f20 7361 7469 7366 7920 7368 656c   to satisfy shel
│ │ │ -001d0ea0: 6c63 6865 636b 2053 4332 3035 302e 0a20  lcheck SC2050.. 
│ │ │ -001d0eb0: 2020 2020 2020 2066 735f 7479 7065 3d22         fs_type="
│ │ │ -001d0ec0: 220a 2020 2020 2020 2020 6966 205b 2020  ".        if [  
│ │ │ -001d0ed0: 2224 6673 5f74 7970 6522 203d 3d20 2269  "$fs_type" == "i
│ │ │ -001d0ee0: 736f 3936 3630 2220 5d20 3b20 7468 656e  so9660" ] ; then
│ │ │ -001d0ef0: 0a20 2020 2020 2020 2020 2020 2070 7265  .            pre
│ │ │ -001d0f00: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ -001d0f10: 3d24 2873 6564 2027 732f 626c 6f63 6b73  =$(sed 's/blocks
│ │ │ -001d0f20: 697a 653d 2f62 6c6f 636b 3d2f 2720 266c  ize=/block=/' &l
│ │ │ -001d0f30: 743b 266c 743b 266c 743b 2022 2470 7265  t;<< "$pre
│ │ │ -001d0f40: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ -001d0f50: 2229 0a20 2020 2020 2020 2066 690a 2020  ").        fi.  
│ │ │ -001d0f60: 2020 2020 2020 6563 686f 2022 202f 7661        echo " /va
│ │ │ -001d0f70: 722f 6c6f 672f 6175 6469 7420 2064 6566  r/log/audit  def
│ │ │ -001d0f80: 6175 6c74 732c 247b 7072 6576 696f 7573  aults,${previous
│ │ │ -001d0f90: 5f6d 6f75 6e74 5f6f 7074 737d 6e6f 7375  _mount_opts}nosu
│ │ │ -001d0fa0: 6964 2030 2030 2220 2667 743b 2667 743b  id 0 0" >>
│ │ │ -001d0fb0: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ -001d0fc0: 2320 4966 2074 6865 206d 6f75 6e74 5f6f  # If the mount_o
│ │ │ -001d0fd0: 7074 206f 7074 696f 6e20 6973 206e 6f74  pt option is not
│ │ │ -001d0fe0: 2061 6c72 6561 6479 2069 6e20 7468 6520   already in the 
│ │ │ -001d0ff0: 6d6f 756e 7420 706f 696e 7427 7320 2f65  mount point's /e
│ │ │ -001d1000: 7463 2f66 7374 6162 2065 6e74 7279 2c20  tc/fstab entry, 
│ │ │ -001d1010: 6164 6420 6974 0a20 2020 2065 6c69 6620  add it.    elif 
│ │ │ -001d1020: 2120 6772 6570 2022 246d 6f75 6e74 5f70  ! grep "$mount_p
│ │ │ -001d1030: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001d1040: 7022 202f 6574 632f 6673 7461 6220 7c20  p" /etc/fstab | 
│ │ │ -001d1050: 6772 6570 202d 7120 226e 6f73 7569 6422  grep -q "nosuid"
│ │ │ -001d1060: 3b20 7468 656e 0a20 2020 2020 2020 2070  ; then.        p
│ │ │ -001d1070: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001d1080: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ -001d1090: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001d10a0: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ -001d10b0: 207c 2061 776b 2027 7b70 7269 6e74 2024   | awk '{print $
│ │ │ -001d10c0: 347d 2729 0a20 2020 2020 2020 2073 6564  4}').        sed
│ │ │ -001d10d0: 202d 6920 2273 7c5c 2824 7b6d 6f75 6e74   -i "s|\(${mount
│ │ │ -001d10e0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001d10f0: 6578 707d 2e2a 247b 7072 6576 696f 7573  exp}.*${previous
│ │ │ -001d1100: 5f6d 6f75 6e74 5f6f 7074 737d 5c29 7c5c  _mount_opts}\)|\
│ │ │ -001d1110: 312c 6e6f 7375 6964 7c22 202f 6574 632f  1,nosuid|" /etc/
│ │ │ -001d1120: 6673 7461 620a 2020 2020 6669 0a0a 0a20  fstab.    fi... 
│ │ │ -001d1130: 2020 2069 6620 6d6b 6469 7220 2d70 2022     if mkdir -p "
│ │ │ -001d1140: 2f76 6172 2f6c 6f67 2f61 7564 6974 223b  /var/log/audit";
│ │ │ -001d1150: 2074 6865 6e0a 2020 2020 2020 2020 6966   then.        if
│ │ │ -001d1160: 206d 6f75 6e74 706f 696e 7420 2d71 2022   mountpoint -q "
│ │ │ -001d1170: 2f76 6172 2f6c 6f67 2f61 7564 6974 223b  /var/log/audit";
│ │ │ -001d1180: 2074 6865 6e0a 2020 2020 2020 2020 2020   then.          
│ │ │ -001d1190: 2020 6d6f 756e 7420 2d6f 2072 656d 6f75    mount -o remou
│ │ │ -001d11a0: 6e74 202d 2d74 6172 6765 7420 222f 7661  nt --target "/va
│ │ │ -001d11b0: 722f 6c6f 672f 6175 6469 7422 0a20 2020  r/log/audit".   
│ │ │ -001d11c0: 2020 2020 2066 690a 2020 2020 6669 0a7d       fi.    fi.}
│ │ │ -001d11d0: 0a0a 7065 7266 6f72 6d5f 7265 6d65 6469  ..perform_remedi
│ │ │ -001d11e0: 6174 696f 6e0a 0a65 6c73 650a 2020 2020  ation..else.    
│ │ │ -001d11f0: 2667 743b 2661 6d70 3b32 2065 6368 6f20  >&2 echo 
│ │ │ -001d1200: 2752 656d 6564 6961 7469 6f6e 2069 7320  'Remediation is 
│ │ │ -001d1210: 6e6f 7420 6170 706c 6963 6162 6c65 2c20  not applicable, 
│ │ │ -001d1220: 6e6f 7468 696e 6720 7761 7320 646f 6e65  nothing was done
│ │ │ -001d1230: 270a 6669 0a3c 2f63 6f64 653e 3c2f 7072  '.fi.
Complexity: │ │ │ +001ceb30: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +001ceb50: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:high │ │ │ +001ceb70: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +001ceb80: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +001ceba0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:configure< │ │ │ +001cebc0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
- name: G
│ │ │ +001cebe0: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ +001cebf0: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ +001cec00: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ +001cec10: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ +001cec20: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +001cec30: 3533 2d41 432d 360a 2020 2d20 4e49 5354  53-AC-6.  - NIST
│ │ │ +001cec40: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ +001cec50: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001cec60: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ +001cec70: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ +001cec80: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001cec90: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ +001ceca0: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d  -800-53-MP-7.  -
│ │ │ +001cecb0: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ +001cecc0: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ +001cecd0: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ +001cece0: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +001cecf0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +001ced00: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ +001ced10: 7661 725f 6c6f 675f 6175 6469 745f 6e6f  var_log_audit_no
│ │ │ +001ced20: 7375 6964 0a20 202d 206e 6f5f 7265 626f  suid.  - no_rebo
│ │ │ +001ced30: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +001ced40: 653a 2027 4164 6420 6e6f 7375 6964 204f  e: 'Add nosuid O
│ │ │ +001ced50: 7074 696f 6e20 746f 202f 7661 722f 6c6f  ption to /var/lo
│ │ │ +001ced60: 672f 6175 6469 743a 2043 6865 636b 2069  g/audit: Check i
│ │ │ +001ced70: 6e66 6f72 6d61 7469 6f6e 2061 7373 6f63  nformation assoc
│ │ │ +001ced80: 6961 7465 6420 746f 206d 6f75 6e74 706f  iated to mountpo
│ │ │ +001ced90: 696e 7427 0a20 2061 6e73 6962 6c65 2e62  int'.  ansible.b
│ │ │ +001ceda0: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ +001cedb0: 6669 6e64 6d6e 7420 2d2d 6673 7461 6220  findmnt --fstab 
│ │ │ +001cedc0: 272f 7661 722f 6c6f 672f 6175 6469 7427  '/var/log/audit'
│ │ │ +001cedd0: 0a20 2072 6567 6973 7465 723a 2064 6576  .  register: dev
│ │ │ +001cede0: 6963 655f 6e61 6d65 0a20 2066 6169 6c65  ice_name.  faile
│ │ │ +001cedf0: 645f 7768 656e 3a20 6465 7669 6365 5f6e  d_when: device_n
│ │ │ +001cee00: 616d 652e 7263 2026 6774 3b20 310a 2020  ame.rc > 1.  
│ │ │ +001cee10: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ +001cee20: 6c73 650a 2020 6368 6563 6b5f 6d6f 6465  lse.  check_mode
│ │ │ +001cee30: 3a20 6661 6c73 650a 2020 7768 656e 3a0a  : false.  when:.
│ │ │ +001cee40: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ +001cee50: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +001cee60: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001cee70: 6e64 2022 7270 6d2d 6f73 7472 6565 2220  nd "rpm-ostree" 
│ │ │ +001cee80: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001cee90: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001ceea0: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ +001ceeb0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001ceec0: 6765 7320 616e 6420 6e6f 7420 226f 7065  ges and not "ope
│ │ │ +001ceed0: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ +001ceee0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001ceef0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001cef00: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ +001cef10: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ +001cef20: 6e65 2029 2061 6e64 206e 6f74 2028 2061  ne ) and not ( a
│ │ │ +001cef30: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ +001cef40: 6174 696f 6e5f 7479 7065 2069 6e0a 2020  ation_type in.  
│ │ │ +001cef50: 2020 5b22 646f 636b 6572 222c 2022 6c78    ["docker", "lx
│ │ │ +001cef60: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ +001cef70: 6f64 6d61 6e22 2c20 2263 6f6e 7461 696e  odman", "contain
│ │ │ +001cef80: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ +001cef90: 7661 722f 6c6f 672f 6175 6469 7422 2069  var/log/audit" i
│ │ │ +001cefa0: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ +001cefb0: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ +001cefc0: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ +001cefd0: 270a 2020 7461 6773 3a0a 2020 2d20 4e49  '.  tags:.  - NI
│ │ │ +001cefe0: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ +001ceff0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001cf000: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ +001cf010: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +001cf020: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001cf030: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +001cf040: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +001cf050: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ +001cf060: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ +001cf070: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ +001cf080: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ +001cf090: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +001cf0a0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +001cf0b0: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ +001cf0c0: 6f70 7469 6f6e 5f76 6172 5f6c 6f67 5f61  option_var_log_a
│ │ │ +001cf0d0: 7564 6974 5f6e 6f73 7569 640a 2020 2d20  udit_nosuid.  - 
│ │ │ +001cf0e0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001cf0f0: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ +001cf100: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20  osuid Option to 
│ │ │ +001cf110: 2f76 6172 2f6c 6f67 2f61 7564 6974 3a20  /var/log/audit: 
│ │ │ +001cf120: 4372 6561 7465 206d 6f75 6e74 5f69 6e66  Create mount_inf
│ │ │ +001cf130: 6f20 6469 6374 696f 6e61 7279 2076 6172  o dictionary var
│ │ │ +001cf140: 6961 626c 6527 0a20 2073 6574 5f66 6163  iable'.  set_fac
│ │ │ +001cf150: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66  t:.    mount_inf
│ │ │ +001cf160: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66  o: '{{ mount_inf
│ │ │ +001cf170: 6f7c 6465 6661 756c 7428 7b7d 297c 636f  o|default({})|co
│ │ │ +001cf180: 6d62 696e 6528 7b69 7465 6d2e 303a 2069  mbine({item.0: i
│ │ │ +001cf190: 7465 6d2e 317d 2920 7d7d 270a 2020 7769  tem.1}) }}'.  wi
│ │ │ +001cf1a0: 7468 5f74 6f67 6574 6865 723a 0a20 202d  th_together:.  -
│ │ │ +001cf1b0: 2027 7b7b 2064 6576 6963 655f 6e61 6d65   '{{ device_name
│ │ │ +001cf1c0: 2e73 7464 6f75 745f 6c69 6e65 735b 305d  .stdout_lines[0]
│ │ │ +001cf1d0: 2e73 706c 6974 2829 207c 206d 6170 2827  .split() | map('
│ │ │ +001cf1e0: 276c 6f77 6572 2727 2920 7c20 6c69 7374  'lower'') | list
│ │ │ +001cf1f0: 207d 7d27 0a20 202d 2027 7b7b 2064 6576   }}'.  - '{{ dev
│ │ │ +001cf200: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ +001cf210: 6c69 6e65 735b 315d 2e73 706c 6974 2829  lines[1].split()
│ │ │ +001cf220: 207c 206c 6973 7420 7d7d 270a 2020 7768   | list }}'.  wh
│ │ │ +001cf230: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ +001cf240: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +001cf250: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001cf260: 6573 2061 6e64 2022 7270 6d2d 6f73 7472  es and "rpm-ostr
│ │ │ +001cf270: 6565 2220 696e 2061 6e73 6962 6c65 5f66  ee" in ansible_f
│ │ │ +001cf280: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001cf290: 2020 616e 6420 2262 6f6f 7463 2220 696e    and "bootc" in
│ │ │ +001cf2a0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001cf2b0: 6163 6b61 6765 7320 616e 6420 6e6f 7420  ackages and not 
│ │ │ +001cf2c0: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +001cf2d0: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +001cf2e0: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001cf2f0: 2020 616e 6420 226f 7374 7265 6522 2069    and "ostree" i
│ │ │ +001cf300: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ +001cf310: 6d64 6c69 6e65 2029 2061 6e64 206e 6f74  mdline ) and not
│ │ │ +001cf320: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +001cf330: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +001cf340: 6e0a 2020 2020 5b22 646f 636b 6572 222c  n.    ["docker",
│ │ │ +001cf350: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ +001cf360: 2c20 2270 6f64 6d61 6e22 2c20 2263 6f6e  , "podman", "con
│ │ │ +001cf370: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ +001cf380: 2027 222f 7661 722f 6c6f 672f 6175 6469   '"/var/log/audi
│ │ │ +001cf390: 7422 2069 6e20 616e 7369 626c 655f 6d6f  t" in ansible_mo
│ │ │ +001cf3a0: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ +001cf3b0: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ +001cf3c0: 6c69 7374 270a 2020 2d20 6465 7669 6365  list'.  - device
│ │ │ +001cf3d0: 5f6e 616d 652e 7374 646f 7574 2069 7320  _name.stdout is 
│ │ │ +001cf3e0: 6465 6669 6e65 6420 616e 6420 6465 7669  defined and devi
│ │ │ +001cf3f0: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ +001cf400: 696e 6573 2069 7320 6465 6669 6e65 640a  ines is defined.
│ │ │ +001cf410: 2020 2d20 2864 6576 6963 655f 6e61 6d65    - (device_name
│ │ │ +001cf420: 2e73 7464 6f75 7420 7c20 6c65 6e67 7468  .stdout | length
│ │ │ +001cf430: 2026 6774 3b20 3029 0a20 2074 6167 733a   > 0).  tags:
│ │ │ +001cf440: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001cf450: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ +001cf460: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ +001cf470: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001cf480: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ +001cf490: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ +001cf4a0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001cf4b0: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ +001cf4c0: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ +001cf4d0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +001cf4e0: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +001cf4f0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +001cf500: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +001cf510: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001cf520: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ +001cf530: 725f 6c6f 675f 6175 6469 745f 6e6f 7375  r_log_audit_nosu
│ │ │ +001cf540: 6964 0a20 202d 206e 6f5f 7265 626f 6f74  id.  - no_reboot
│ │ │ +001cf550: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ +001cf560: 2027 4164 6420 6e6f 7375 6964 204f 7074   'Add nosuid Opt
│ │ │ +001cf570: 696f 6e20 746f 202f 7661 722f 6c6f 672f  ion to /var/log/
│ │ │ +001cf580: 6175 6469 743a 2049 6620 2f76 6172 2f6c  audit: If /var/l
│ │ │ +001cf590: 6f67 2f61 7564 6974 206e 6f74 206d 6f75  og/audit not mou
│ │ │ +001cf5a0: 6e74 6564 2c20 6372 6166 740a 2020 2020  nted, craft.    
│ │ │ +001cf5b0: 6d6f 756e 745f 696e 666f 206d 616e 7561  mount_info manua
│ │ │ +001cf5c0: 6c6c 7927 0a20 2073 6574 5f66 6163 743a  lly'.  set_fact:
│ │ │ +001cf5d0: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ +001cf5e0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c   '{{ mount_info|
│ │ │ +001cf5f0: 6465 6661 756c 7428 7b7d 297c 636f 6d62  default({})|comb
│ │ │ +001cf600: 696e 6528 7b69 7465 6d2e 303a 2069 7465  ine({item.0: ite
│ │ │ +001cf610: 6d2e 317d 2920 7d7d 270a 2020 7769 7468  m.1}) }}'.  with
│ │ │ +001cf620: 5f74 6f67 6574 6865 723a 0a20 202d 202d  _together:.  - -
│ │ │ +001cf630: 2074 6172 6765 740a 2020 2020 2d20 736f   target.    - so
│ │ │ +001cf640: 7572 6365 0a20 2020 202d 2066 7374 7970  urce.    - fstyp
│ │ │ +001cf650: 650a 2020 2020 2d20 6f70 7469 6f6e 730a  e.    - options.
│ │ │ +001cf660: 2020 2d20 2d20 2f76 6172 2f6c 6f67 2f61    - - /var/log/a
│ │ │ +001cf670: 7564 6974 0a20 2020 202d 2027 270a 2020  udit.    - ''.  
│ │ │ +001cf680: 2020 2d20 2727 0a20 2020 202d 2064 6566    - ''.    - def
│ │ │ +001cf690: 6175 6c74 730a 2020 7768 656e 3a0a 2020  aults.  when:.  
│ │ │ +001cf6a0: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ +001cf6b0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +001cf6c0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001cf6d0: 2022 7270 6d2d 6f73 7472 6565 2220 696e   "rpm-ostree" in
│ │ │ +001cf6e0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001cf6f0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001cf700: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ +001cf710: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001cf720: 7320 616e 6420 6e6f 7420 226f 7065 6e73  s and not "opens
│ │ │ +001cf730: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ +001cf740: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001cf750: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001cf760: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ +001cf770: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ +001cf780: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ +001cf790: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ +001cf7a0: 696f 6e5f 7479 7065 2069 6e0a 2020 2020  ion_type in.    
│ │ │ +001cf7b0: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ +001cf7c0: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ +001cf7d0: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572  man", "container
│ │ │ +001cf7e0: 225d 2029 2029 0a20 202d 2027 222f 7661  "] ) ).  - '"/va
│ │ │ +001cf7f0: 722f 6c6f 672f 6175 6469 7422 2069 6e20  r/log/audit" in 
│ │ │ +001cf800: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ +001cf810: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ +001cf820: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ +001cf830: 2020 2d20 2822 2d2d 6673 7461 6222 207c    - ("--fstab" |
│ │ │ +001cf840: 206c 656e 6774 6820 3d3d 2030 290a 2020   length == 0).  
│ │ │ +001cf850: 2d20 6465 7669 6365 5f6e 616d 652e 7374  - device_name.st
│ │ │ +001cf860: 646f 7574 2069 7320 6465 6669 6e65 6420  dout is defined 
│ │ │ +001cf870: 616e 6420 6465 7669 6365 5f6e 616d 652e  and device_name.
│ │ │ +001cf880: 7374 646f 7574 5f6c 696e 6573 2069 7320  stdout_lines is 
│ │ │ +001cf890: 6465 6669 6e65 640a 2020 2d20 2864 6576  defined.  - (dev
│ │ │ +001cf8a0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ +001cf8b0: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ +001cf8c0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +001cf8d0: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ +001cf8e0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001cf8f0: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ +001cf900: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +001cf910: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001cf920: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001cf930: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ +001cf940: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ +001cf950: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +001cf960: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +001cf970: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001cf980: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001cf990: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001cf9a0: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001cf9b0: 696f 6e5f 7661 725f 6c6f 675f 6175 6469  ion_var_log_audi
│ │ │ +001cf9c0: 745f 6e6f 7375 6964 0a20 202d 206e 6f5f  t_nosuid.  - no_
│ │ │ +001cf9d0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +001cf9e0: 206e 616d 653a 2027 4164 6420 6e6f 7375   name: 'Add nosu
│ │ │ +001cf9f0: 6964 204f 7074 696f 6e20 746f 202f 7661  id Option to /va
│ │ │ +001cfa00: 722f 6c6f 672f 6175 6469 743a 204d 616b  r/log/audit: Mak
│ │ │ +001cfa10: 6520 7375 7265 206e 6f73 7569 6420 6f70  e sure nosuid op
│ │ │ +001cfa20: 7469 6f6e 2069 7320 7061 7274 206f 6620  tion is part of 
│ │ │ +001cfa30: 7468 650a 2020 2020 746f 202f 7661 722f  the.    to /var/
│ │ │ +001cfa40: 6c6f 672f 6175 6469 7420 6f70 7469 6f6e  log/audit option
│ │ │ +001cfa50: 7327 0a20 2073 6574 5f66 6163 743a 0a20  s'.  set_fact:. 
│ │ │ +001cfa60: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ +001cfa70: 7b7b 206d 6f75 6e74 5f69 6e66 6f20 7c20  {{ mount_info | 
│ │ │ +001cfa80: 636f 6d62 696e 6528 207b 2727 6f70 7469  combine( {''opti
│ │ │ +001cfa90: 6f6e 7327 273a 2727 2727 7e28 6d6f 756e  ons'':''''~(moun
│ │ │ +001cfaa0: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ +001cfab0: 0a20 2020 2020 2064 6566 6175 6c74 2827  .      default('
│ │ │ +001cfac0: 2727 2729 297e 2827 272c 2727 2069 6620  '''))~('','' if 
│ │ │ +001cfad0: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469  (mount_info.opti
│ │ │ +001cfae0: 6f6e 7320 7c20 6465 6661 756c 7428 2727  ons | default(''
│ │ │ +001cfaf0: 2727 2929 2065 6c73 6520 2727 2727 297e  '')) else '''')~
│ │ │ +001cfb00: 2727 6e6f 7375 6964 2727 0a20 2020 2020  ''nosuid''.     
│ │ │ +001cfb10: 207d 2920 7d7d 270a 2020 7768 656e 3a0a   }) }}'.  when:.
│ │ │ +001cfb20: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ +001cfb30: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +001cfb40: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001cfb50: 6e64 2022 7270 6d2d 6f73 7472 6565 2220  nd "rpm-ostree" 
│ │ │ +001cfb60: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001cfb70: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001cfb80: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ +001cfb90: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001cfba0: 6765 7320 616e 6420 6e6f 7420 226f 7065  ges and not "ope
│ │ │ +001cfbb0: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ +001cfbc0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001cfbd0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001cfbe0: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ +001cfbf0: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ +001cfc00: 6e65 2029 2061 6e64 206e 6f74 2028 2061  ne ) and not ( a
│ │ │ +001cfc10: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ +001cfc20: 6174 696f 6e5f 7479 7065 2069 6e0a 2020  ation_type in.  
│ │ │ +001cfc30: 2020 5b22 646f 636b 6572 222c 2022 6c78    ["docker", "lx
│ │ │ +001cfc40: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ +001cfc50: 6f64 6d61 6e22 2c20 2263 6f6e 7461 696e  odman", "contain
│ │ │ +001cfc60: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ +001cfc70: 7661 722f 6c6f 672f 6175 6469 7422 2069  var/log/audit" i
│ │ │ +001cfc80: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ +001cfc90: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ +001cfca0: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ +001cfcb0: 270a 2020 2d20 6d6f 756e 745f 696e 666f  '.  - mount_info
│ │ │ +001cfcc0: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ +001cfcd0: 226e 6f73 7569 6422 206e 6f74 2069 6e20  "nosuid" not in 
│ │ │ +001cfce0: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469  (mount_info.opti
│ │ │ +001cfcf0: 6f6e 7320 7c20 6465 6661 756c 7428 2727  ons | default(''
│ │ │ +001cfd00: 2929 0a20 2074 6167 733a 0a20 202d 204e  )).  tags:.  - N
│ │ │ +001cfd10: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ +001cfd20: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001cfd30: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ +001cfd40: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +001cfd50: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001cfd60: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +001cfd70: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +001cfd80: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001cfd90: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ +001cfda0: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +001cfdb0: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +001cfdc0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +001cfdd0: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +001cfde0: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +001cfdf0: 5f6f 7074 696f 6e5f 7661 725f 6c6f 675f  _option_var_log_
│ │ │ +001cfe00: 6175 6469 745f 6e6f 7375 6964 0a20 202d  audit_nosuid.  -
│ │ │ +001cfe10: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +001cfe20: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ +001cfe30: 6e6f 7375 6964 204f 7074 696f 6e20 746f  nosuid Option to
│ │ │ +001cfe40: 202f 7661 722f 6c6f 672f 6175 6469 743a   /var/log/audit:
│ │ │ +001cfe50: 2045 6e73 7572 6520 2f76 6172 2f6c 6f67   Ensure /var/log
│ │ │ +001cfe60: 2f61 7564 6974 2069 7320 6d6f 756e 7465  /audit is mounte
│ │ │ +001cfe70: 6420 7769 7468 0a20 2020 206e 6f73 7569  d with.    nosui
│ │ │ +001cfe80: 6420 6f70 7469 6f6e 270a 2020 616e 7369  d option'.  ansi
│ │ │ +001cfe90: 626c 652e 706f 7369 782e 6d6f 756e 743a  ble.posix.mount:
│ │ │ +001cfea0: 0a20 2020 2070 6174 683a 202f 7661 722f  .    path: /var/
│ │ │ +001cfeb0: 6c6f 672f 6175 6469 740a 2020 2020 7372  log/audit.    sr
│ │ │ +001cfec0: 633a 2027 7b7b 206d 6f75 6e74 5f69 6e66  c: '{{ mount_inf
│ │ │ +001cfed0: 6f2e 736f 7572 6365 207c 2064 6566 6175  o.source | defau
│ │ │ +001cfee0: 6c74 2827 2727 2729 207d 7d27 0a20 2020  lt('''') }}'.   
│ │ │ +001cfef0: 206f 7074 733a 2027 7b7b 206d 6f75 6e74   opts: '{{ mount
│ │ │ +001cff00: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ +001cff10: 6465 6661 756c 7428 2727 2727 2920 7d7d  default('''') }}
│ │ │ +001cff20: 270a 2020 2020 7374 6174 653a 206d 6f75  '.    state: mou
│ │ │ +001cff30: 6e74 6564 0a20 2020 2066 7374 7970 653a  nted.    fstype:
│ │ │ +001cff40: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ +001cff50: 6673 7479 7065 207c 2064 6566 6175 6c74  fstype | default
│ │ │ +001cff60: 2827 2727 2729 207d 7d27 0a20 2072 6567  ('''') }}'.  reg
│ │ │ +001cff70: 6973 7465 723a 206d 6f75 6e74 5f72 6573  ister: mount_res
│ │ │ +001cff80: 756c 740a 2020 6661 696c 6564 5f77 6865  ult.  failed_whe
│ │ │ +001cff90: 6e3a 0a20 202d 206d 6f75 6e74 5f72 6573  n:.  - mount_res
│ │ │ +001cffa0: 756c 7420 6973 2066 6169 6c65 640a 2020  ult is failed.  
│ │ │ +001cffb0: 2d20 2727 2774 6172 6765 7420 6973 2062  - '''target is b
│ │ │ +001cffc0: 7573 7927 2720 6e6f 7420 696e 2028 6d6f  usy'' not in (mo
│ │ │ +001cffd0: 756e 745f 7265 7375 6c74 2e6d 7367 207c  unt_result.msg |
│ │ │ +001cffe0: 2064 6566 6175 6c74 2827 2727 2729 2927   default(''''))'
│ │ │ +001cfff0: 0a20 202d 2027 2727 616c 7265 6164 7920  .  - '''already 
│ │ │ +001d0000: 6d6f 756e 7465 6427 2720 6e6f 7420 696e  mounted'' not in
│ │ │ +001d0010: 2028 6d6f 756e 745f 7265 7375 6c74 2e6d   (mount_result.m
│ │ │ +001d0020: 7367 207c 2064 6566 6175 6c74 2827 2727  sg | default('''
│ │ │ +001d0030: 2729 2927 0a20 2077 6865 6e3a 0a20 202d  '))'.  when:.  -
│ │ │ +001d0040: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ +001d0050: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001d0060: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001d0070: 2272 706d 2d6f 7374 7265 6522 2069 6e20  "rpm-ostree" in 
│ │ │ +001d0080: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001d0090: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ +001d00a0: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ +001d00b0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001d00c0: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ +001d00d0: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ +001d00e0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001d00f0: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ +001d0100: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001d0110: 6c65 5f70 726f 635f 636d 646c 696e 6520  le_proc_cmdline 
│ │ │ +001d0120: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ +001d0130: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ +001d0140: 6f6e 5f74 7970 6520 696e 0a20 2020 205b  on_type in.    [
│ │ │ +001d0150: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ +001d0160: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ +001d0170: 616e 222c 2022 636f 6e74 6169 6e65 7222  an", "container"
│ │ │ +001d0180: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ +001d0190: 2f6c 6f67 2f61 7564 6974 2220 696e 2061  /log/audit" in a
│ │ │ +001d01a0: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ +001d01b0: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ +001d01c0: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ +001d01d0: 202d 206d 6f75 6e74 5f69 6e66 6f20 6973   - mount_info is
│ │ │ +001d01e0: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ +001d01f0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001d0200: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ +001d0210: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ +001d0220: 6f75 7420 7c20 6c65 6e67 7468 2026 6774  out | length >
│ │ │ +001d0230: 3b20 3029 2920 6f72 2028 222d 2d66 7374  ; 0)) or ("--fst
│ │ │ +001d0240: 6162 220a 2020 2020 7c20 6c65 6e67 7468  ab".    | length
│ │ │ +001d0250: 203d 3d20 3029 0a20 2074 6167 733a 0a20   == 0).  tags:. 
│ │ │ +001d0260: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001d0270: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ +001d0280: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ +001d0290: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +001d02a0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001d02b0: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ +001d02c0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001d02d0: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ +001d02e0: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ +001d02f0: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +001d0300: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ +001d0310: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ +001d0320: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ +001d0330: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ +001d0340: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f  ount_option_var_
│ │ │ +001d0350: 6c6f 675f 6175 6469 745f 6e6f 7375 6964  log_audit_nosuid
│ │ │ +001d0360: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +001d0370: 6565 6465 640a 3c2f 636f 6465 3e3c 2f70  eeded.

Remediatio │ │ │ +001d0430: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ +001d0440: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +001d04c0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +001d04d0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
Reboot:false
│ │ │ +001d04f0: 3c63 6f64 653e 2320 5265 6d65 6469 6174  # Remediat
│ │ │ +001d0500: 696f 6e20 6973 2061 7070 6c69 6361 626c  ion is applicabl
│ │ │ +001d0510: 6520 6f6e 6c79 2069 6e20 6365 7274 6169  e only in certai
│ │ │ +001d0520: 6e20 706c 6174 666f 726d 730a 6966 2028  n platforms.if (
│ │ │ +001d0530: 2021 2028 207b 2072 706d 202d 2d71 7569   ! ( { rpm --qui
│ │ │ +001d0540: 6574 202d 7120 6b65 726e 656c 203b 7d20  et -q kernel ;} 
│ │ │ +001d0550: 2661 6d70 3b26 616d 703b 207b 2072 706d  && { rpm
│ │ │ +001d0560: 202d 2d71 7569 6574 202d 7120 7270 6d2d   --quiet -q rpm-
│ │ │ +001d0570: 6f73 7472 6565 203b 7d20 2661 6d70 3b26  ostree ;} &&
│ │ │ +001d0580: 616d 703b 207b 2072 706d 202d 2d71 7569  amp; { rpm --qui
│ │ │ +001d0590: 6574 202d 7120 626f 6f74 6320 3b7d 2026  et -q bootc ;} &
│ │ │ +001d05a0: 616d 703b 2661 6d70 3b20 7b20 2120 7270  amp;& { ! rp
│ │ │ +001d05b0: 6d20 2d2d 7175 6965 7420 2d71 206f 7065  m --quiet -q ope
│ │ │ +001d05c0: 6e73 6869 6674 2d6b 7562 656c 6574 203b  nshift-kubelet ;
│ │ │ +001d05d0: 7d20 2661 6d70 3b26 616d 703b 2028 5b20  } && ([ 
│ │ │ +001d05e0: 2d66 202f 7275 6e2f 6f73 7472 6565 2d62  -f /run/ostree-b
│ │ │ +001d05f0: 6f6f 7465 6420 5d20 7c7c 205b 202d 4c20  ooted ] || [ -L 
│ │ │ +001d0600: 2f6f 7374 7265 6520 5d29 2029 2026 616d  /ostree ]) ) &am
│ │ │ +001d0610: 703b 2661 6d70 3b20 2120 2820 5b20 2d66  p;& ! ( [ -f
│ │ │ +001d0620: 202f 2e64 6f63 6b65 7265 6e76 205d 207c   /.dockerenv ] |
│ │ │ +001d0630: 7c20 5b20 2d66 202f 7275 6e2f 2e63 6f6e  | [ -f /run/.con
│ │ │ +001d0640: 7461 696e 6572 656e 7620 5d20 2920 2920  tainerenv ] ) ) 
│ │ │ +001d0650: 2661 6d70 3b26 616d 703b 207b 2028 2066  && { ( f
│ │ │ +001d0660: 696e 646d 6e74 202d 2d6b 6572 6e65 6c20  indmnt --kernel 
│ │ │ +001d0670: 222f 7661 722f 6c6f 672f 6175 6469 7422  "/var/log/audit"
│ │ │ +001d0680: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20   > /dev/null 
│ │ │ +001d0690: 7c7c 2066 696e 646d 6e74 202d 2d66 7374  || findmnt --fst
│ │ │ +001d06a0: 6162 2022 2f76 6172 2f6c 6f67 2f61 7564  ab "/var/log/aud
│ │ │ +001d06b0: 6974 2220 2667 743b 202f 6465 762f 6e75  it" > /dev/nu
│ │ │ +001d06c0: 6c6c 2029 3b20 7d3b 2074 6865 6e0a 0a66  ll ); }; then..f
│ │ │ +001d06d0: 756e 6374 696f 6e20 7065 7266 6f72 6d5f  unction perform_
│ │ │ +001d06e0: 7265 6d65 6469 6174 696f 6e20 7b0a 0a20  remediation {.. 
│ │ │ +001d06f0: 2020 200a 2020 2020 2020 2020 2320 7468     .        # th
│ │ │ +001d0700: 6520 6d6f 756e 7420 706f 696e 7420 2f76  e mount point /v
│ │ │ +001d0710: 6172 2f6c 6f67 2f61 7564 6974 2068 6173  ar/log/audit has
│ │ │ +001d0720: 2074 6f20 6265 2064 6566 696e 6564 2069   to be defined i
│ │ │ +001d0730: 6e20 2f65 7463 2f66 7374 6162 0a20 2020  n /etc/fstab.   
│ │ │ +001d0740: 2020 2020 2023 2062 6566 6f72 6520 7468       # before th
│ │ │ +001d0750: 6973 2072 656d 6564 6961 7469 6f6e 2063  is remediation c
│ │ │ +001d0760: 616e 2062 6520 6578 6563 7574 6564 2e20  an be executed. 
│ │ │ +001d0770: 496e 2063 6173 6520 6974 2069 7320 6e6f  In case it is no
│ │ │ +001d0780: 7420 6465 6669 6e65 642c 2074 6865 0a20  t defined, the. 
│ │ │ +001d0790: 2020 2020 2020 2023 2072 656d 6564 6961         # remedia
│ │ │ +001d07a0: 7469 6f6e 2061 626f 7274 7320 616e 6420  tion aborts and 
│ │ │ +001d07b0: 6e6f 2063 6861 6e67 6573 2072 6567 6172  no changes regar
│ │ │ +001d07c0: 6469 6e67 2074 6865 206d 6f75 6e74 2070  ding the mount p
│ │ │ +001d07d0: 6f69 6e74 2061 7265 2064 6f6e 652e 0a20  oint are done.. 
│ │ │ +001d07e0: 2020 2020 2020 206d 6f75 6e74 5f70 6f69         mount_poi
│ │ │ +001d07f0: 6e74 5f6d 6174 6368 5f72 6567 6578 703d  nt_match_regexp=
│ │ │ +001d0800: 2224 2870 7269 6e74 6620 225e 5b5b 3a73  "$(printf "^[[:s
│ │ │ +001d0810: 7061 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b  pace:]]*[^#].*[[
│ │ │ +001d0820: 3a73 7061 6365 3a5d 5d25 735b 5b3a 7370  :space:]]%s[[:sp
│ │ │ +001d0830: 6163 653a 5d5d 2220 222f 7661 722f 6c6f  ace:]]" "/var/lo
│ │ │ +001d0840: 672f 6175 6469 7422 2922 0a0a 2020 2020  g/audit")"..    
│ │ │ +001d0850: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ +001d0860: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ +001d0870: 202d 7120 2f65 7463 2f66 7374 6162 205c   -q /etc/fstab \
│ │ │ +001d0880: 0a20 2020 2020 2020 207c 7c20 7b20 6563  .        || { ec
│ │ │ +001d0890: 686f 2022 5468 6520 6d6f 756e 7420 706f  ho "The mount po
│ │ │ +001d08a0: 696e 7420 272f 7661 722f 6c6f 672f 6175  int '/var/log/au
│ │ │ +001d08b0: 6469 7427 2069 7320 6e6f 7420 6576 656e  dit' is not even
│ │ │ +001d08c0: 2069 6e20 2f65 7463 2f66 7374 6162 2c20   in /etc/fstab, 
│ │ │ +001d08d0: 736f 2077 6520 6361 6e27 7420 7365 7420  so we can't set 
│ │ │ +001d08e0: 7570 206d 6f75 6e74 206f 7074 696f 6e73  up mount options
│ │ │ +001d08f0: 2220 2667 743b 2661 6d70 3b32 3b0a 2020  " >&2;.  
│ │ │ +001d0900: 2020 2020 2020 2020 2020 2020 2020 6563                ec
│ │ │ +001d0910: 686f 2022 4e6f 7420 7265 6d65 6469 6174  ho "Not remediat
│ │ │ +001d0920: 696e 672c 2062 6563 6175 7365 2074 6865  ing, because the
│ │ │ +001d0930: 7265 2069 7320 6e6f 2072 6563 6f72 6420  re is no record 
│ │ │ +001d0940: 6f66 202f 7661 722f 6c6f 672f 6175 6469  of /var/log/audi
│ │ │ +001d0950: 7420 696e 202f 6574 632f 6673 7461 6222  t in /etc/fstab"
│ │ │ +001d0960: 2026 6774 3b26 616d 703b 323b 2072 6574   >&2; ret
│ │ │ +001d0970: 7572 6e20 313b 207d 0a20 2020 200a 0a0a  urn 1; }.    ...
│ │ │ +001d0980: 2020 2020 6d6f 756e 745f 706f 696e 745f      mount_point_
│ │ │ +001d0990: 6d61 7463 685f 7265 6765 7870 3d22 2428  match_regexp="$(
│ │ │ +001d09a0: 7072 696e 7466 2022 5e5b 5b3a 7370 6163  printf "^[[:spac
│ │ │ +001d09b0: 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370  e:]]*[^#].*[[:sp
│ │ │ +001d09c0: 6163 653a 5d5d 2573 5b5b 3a73 7061 6365  ace:]]%s[[:space
│ │ │ +001d09d0: 3a5d 5d22 202f 7661 722f 6c6f 672f 6175  :]]" /var/log/au
│ │ │ +001d09e0: 6469 7429 220a 0a20 2020 2023 2049 6620  dit)"..    # If 
│ │ │ +001d09f0: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ +001d0a00: 6973 206e 6f74 2069 6e20 2f65 7463 2f66  is not in /etc/f
│ │ │ +001d0a10: 7374 6162 2c20 6765 7420 7072 6576 696f  stab, get previo
│ │ │ +001d0a20: 7573 206d 6f75 6e74 206f 7074 696f 6e73  us mount options
│ │ │ +001d0a30: 2066 726f 6d20 2f65 7463 2f6d 7461 620a   from /etc/mtab.
│ │ │ +001d0a40: 2020 2020 6966 2021 2067 7265 7020 2d71      if ! grep -q
│ │ │ +001d0a50: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ +001d0a60: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ +001d0a70: 632f 6673 7461 623b 2074 6865 6e0a 2020  c/fstab; then.  
│ │ │ +001d0a80: 2020 2020 2020 2320 7275 6e74 696d 6520        # runtime 
│ │ │ +001d0a90: 6f70 7473 2077 6974 686f 7574 2073 6f6d  opts without som
│ │ │ +001d0aa0: 6520 6175 746f 6d61 7469 6320 6b65 726e  e automatic kern
│ │ │ +001d0ab0: 656c 2f75 7365 7273 7061 6365 2d61 6464  el/userspace-add
│ │ │ +001d0ac0: 6564 2064 6566 6175 6c74 730a 2020 2020  ed defaults.    
│ │ │ +001d0ad0: 2020 2020 7072 6576 696f 7573 5f6d 6f75      previous_mou
│ │ │ +001d0ae0: 6e74 5f6f 7074 733d 2428 6772 6570 2022  nt_opts=$(grep "
│ │ │ +001d0af0: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ +001d0b00: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ +001d0b10: 6d74 6162 207c 2068 6561 6420 2d31 207c  mtab | head -1 |
│ │ │ +001d0b20: 2020 6177 6b20 277b 7072 696e 7420 2434    awk '{print $4
│ │ │ +001d0b30: 7d27 205c 0a20 2020 2020 2020 2020 2020  }' \.           
│ │ │ +001d0b40: 2020 2020 2020 2020 207c 2073 6564 202d           | sed -
│ │ │ +001d0b50: 4520 2273 2f28 7277 7c64 6566 6175 6c74  E "s/(rw|default
│ │ │ +001d0b60: 737c 7365 636c 6162 656c 7c6e 6f73 7569  s|seclabel|nosui
│ │ │ +001d0b70: 6429 282c 7c24 292f 2f67 3b73 2f2c 242f  d)(,|$)//g;s/,$/
│ │ │ +001d0b80: 2f22 290a 2020 2020 2020 2020 5b20 2224  /").        [ "$
│ │ │ +001d0b90: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001d0ba0: 7074 7322 205d 2026 616d 703b 2661 6d70  pts" ] &&
│ │ │ +001d0bb0: 3b20 7072 6576 696f 7573 5f6d 6f75 6e74  ; previous_mount
│ │ │ +001d0bc0: 5f6f 7074 732b 3d22 2c22 0a20 2020 2020  _opts+=",".     
│ │ │ +001d0bd0: 2020 2023 2049 6e20 6973 6f39 3636 3020     # In iso9660 
│ │ │ +001d0be0: 6669 6c65 7379 7374 656d 7320 6d74 6162  filesystems mtab
│ │ │ +001d0bf0: 2063 6f75 6c64 2064 6573 6372 6962 6520   could describe 
│ │ │ +001d0c00: 6120 2262 6c6f 636b 7369 7a65 2220 7661  a "blocksize" va
│ │ │ +001d0c10: 6c75 652c 2074 6869 7320 7368 6f75 6c64  lue, this should
│ │ │ +001d0c20: 2062 6520 7265 666c 6563 7465 6420 696e   be reflected in
│ │ │ +001d0c30: 0a20 2020 2020 2020 2023 2066 7374 6162  .        # fstab
│ │ │ +001d0c40: 2061 7320 2262 6c6f 636b 222e 2020 5468   as "block".  Th
│ │ │ +001d0c50: 6520 6e65 7874 2076 6172 6961 626c 6520  e next variable 
│ │ │ +001d0c60: 6973 2074 6f20 7361 7469 7366 7920 7368  is to satisfy sh
│ │ │ +001d0c70: 656c 6c63 6865 636b 2053 4332 3035 302e  ellcheck SC2050.
│ │ │ +001d0c80: 0a20 2020 2020 2020 2066 735f 7479 7065  .        fs_type
│ │ │ +001d0c90: 3d22 220a 2020 2020 2020 2020 6966 205b  ="".        if [
│ │ │ +001d0ca0: 2020 2224 6673 5f74 7970 6522 203d 3d20    "$fs_type" == 
│ │ │ +001d0cb0: 2269 736f 3936 3630 2220 5d20 3b20 7468  "iso9660" ] ; th
│ │ │ +001d0cc0: 656e 0a20 2020 2020 2020 2020 2020 2070  en.            p
│ │ │ +001d0cd0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001d0ce0: 7473 3d24 2873 6564 2027 732f 626c 6f63  ts=$(sed 's/bloc
│ │ │ +001d0cf0: 6b73 697a 653d 2f62 6c6f 636b 3d2f 2720  ksize=/block=/' 
│ │ │ +001d0d00: 266c 743b 266c 743b 266c 743b 2022 2470  <<< "$p
│ │ │ +001d0d10: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001d0d20: 7473 2229 0a20 2020 2020 2020 2066 690a  ts").        fi.
│ │ │ +001d0d30: 2020 2020 2020 2020 6563 686f 2022 202f          echo " /
│ │ │ +001d0d40: 7661 722f 6c6f 672f 6175 6469 7420 2064  var/log/audit  d
│ │ │ +001d0d50: 6566 6175 6c74 732c 247b 7072 6576 696f  efaults,${previo
│ │ │ +001d0d60: 7573 5f6d 6f75 6e74 5f6f 7074 737d 6e6f  us_mount_opts}no
│ │ │ +001d0d70: 7375 6964 2030 2030 2220 2667 743b 2667  suid 0 0" >&g
│ │ │ +001d0d80: 743b 202f 6574 632f 6673 7461 620a 2020  t; /etc/fstab.  
│ │ │ +001d0d90: 2020 2320 4966 2074 6865 206d 6f75 6e74    # If the mount
│ │ │ +001d0da0: 5f6f 7074 206f 7074 696f 6e20 6973 206e  _opt option is n
│ │ │ +001d0db0: 6f74 2061 6c72 6561 6479 2069 6e20 7468  ot already in th
│ │ │ +001d0dc0: 6520 6d6f 756e 7420 706f 696e 7427 7320  e mount point's 
│ │ │ +001d0dd0: 2f65 7463 2f66 7374 6162 2065 6e74 7279  /etc/fstab entry
│ │ │ +001d0de0: 2c20 6164 6420 6974 0a20 2020 2065 6c69  , add it.    eli
│ │ │ +001d0df0: 6620 2120 6772 6570 2022 246d 6f75 6e74  f ! grep "$mount
│ │ │ +001d0e00: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001d0e10: 6578 7022 202f 6574 632f 6673 7461 6220  exp" /etc/fstab 
│ │ │ +001d0e20: 7c20 6772 6570 202d 7120 226e 6f73 7569  | grep -q "nosui
│ │ │ +001d0e30: 6422 3b20 7468 656e 0a20 2020 2020 2020  d"; then.       
│ │ │ +001d0e40: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ +001d0e50: 6f70 7473 3d24 2867 7265 7020 2224 6d6f  opts=$(grep "$mo
│ │ │ +001d0e60: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001d0e70: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ +001d0e80: 6162 207c 2061 776b 2027 7b70 7269 6e74  ab | awk '{print
│ │ │ +001d0e90: 2024 347d 2729 0a20 2020 2020 2020 2073   $4}').        s
│ │ │ +001d0ea0: 6564 202d 6920 2273 7c5c 2824 7b6d 6f75  ed -i "s|\(${mou
│ │ │ +001d0eb0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +001d0ec0: 6567 6578 707d 2e2a 247b 7072 6576 696f  egexp}.*${previo
│ │ │ +001d0ed0: 7573 5f6d 6f75 6e74 5f6f 7074 737d 5c29  us_mount_opts}\)
│ │ │ +001d0ee0: 7c5c 312c 6e6f 7375 6964 7c22 202f 6574  |\1,nosuid|" /et
│ │ │ +001d0ef0: 632f 6673 7461 620a 2020 2020 6669 0a0a  c/fstab.    fi..
│ │ │ +001d0f00: 0a20 2020 2069 6620 6d6b 6469 7220 2d70  .    if mkdir -p
│ │ │ +001d0f10: 2022 2f76 6172 2f6c 6f67 2f61 7564 6974   "/var/log/audit
│ │ │ +001d0f20: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ +001d0f30: 6966 206d 6f75 6e74 706f 696e 7420 2d71  if mountpoint -q
│ │ │ +001d0f40: 2022 2f76 6172 2f6c 6f67 2f61 7564 6974   "/var/log/audit
│ │ │ +001d0f50: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ +001d0f60: 2020 2020 6d6f 756e 7420 2d6f 2072 656d      mount -o rem
│ │ │ +001d0f70: 6f75 6e74 202d 2d74 6172 6765 7420 222f  ount --target "/
│ │ │ +001d0f80: 7661 722f 6c6f 672f 6175 6469 7422 0a20  var/log/audit". 
│ │ │ +001d0f90: 2020 2020 2020 2066 690a 2020 2020 6669         fi.    fi
│ │ │ +001d0fa0: 0a7d 0a0a 7065 7266 6f72 6d5f 7265 6d65  .}..perform_reme
│ │ │ +001d0fb0: 6469 6174 696f 6e0a 0a65 6c73 650a 2020  diation..else.  
│ │ │ +001d0fc0: 2020 2667 743b 2661 6d70 3b32 2065 6368    >&2 ech
│ │ │ +001d0fd0: 6f20 2752 656d 6564 6961 7469 6f6e 2069  o 'Remediation i
│ │ │ +001d0fe0: 7320 6e6f 7420 6170 706c 6963 6162 6c65  s not applicable
│ │ │ +001d0ff0: 2c20 6e6f 7468 696e 6720 7761 7320 646f  , nothing was do
│ │ │ +001d1000: 6e65 270a 6669 0a3c 2f63 6f64 653e 3c2f  ne'.fi.
Remediati │ │ │ +001d10c0: 6f6e 2041 6e61 636f 6e64 6120 736e 6970 on Anaconda snip │ │ │ +001d10d0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +001d10e0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001d10f0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001d1100: 7365 2220 6964 3d22 6964 3532 3922 3e3c se" id="id529">< │ │ │ +001d1110: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001d1120: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001d1130: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001d1140: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +001d1150: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +001d1160: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +001d1170: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:high< │ │ │ +001d11a0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>Rebo │ │ │ +001d11b0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001d11c0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e< │ │ │ +001d11d0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:enable │ │ │ +001d11f0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 .part /v │ │ │ +001d1210: 6172 2f6c 6f67 2f61 7564 6974 202d 2d6d ar/log/audit --m │ │ │ +001d1220: 6f75 6e74 6f70 7469 6f6e 733d 226e 6f73 ountoptions="nos │ │ │ +001d1230: 7569 6422 0a3c 2f63 6f64 653e 3c2f 7072 uid".
│ │ │ 001d1260: 3c2f 7461 626c 653e 3c2f 7464 3e3c 2f74 Remed │ │ │ -001d1e50: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ -001d1e60: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -001d1e70: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
< │ │ │ -001d1f60: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Com │ │ │ -001d1ef0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -001d1f20: 3a3c 2f74 683e 3c74 643e 6869 6768 3c2f :high
│ │ │ -001d1f40: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -001d1f50: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -001d1f70: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -001d1f80: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.par
│ │ │ -001d1fa0: 7420 2f76 6172 2f6c 6f67 202d 2d6d 6f75  t /var/log --mou
│ │ │ -001d1fb0: 6e74 6f70 7469 6f6e 733d 226e 6f64 6576  ntoptions="nodev
│ │ │ -001d1fc0: 220a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  ".
< │ │ │ -001d1fd0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -001d2080: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -001d2090: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -001d2110: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -001d2130: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr> │ │ │ -001d2180: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472
low
Disr │ │ │ -001d2140: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -001d2150: 6869 6768 3c2f 7464 3e3c 2f74 723e 3c74 high
Reboot:false
Str │ │ │ -001d2190: 6174 6567 793a 3c2f 7468 3e3c 7464 3e63 ategy:c │ │ │ -001d21a0: 6f6e 6669 6775 7265 3c2f 7464 3e3c 2f74 onfigure
<
│ │ │ -001d21c0: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ -001d21d0: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ -001d21e0: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ -001d21f0: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ -001d2200: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ -001d2210: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001d2220: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ -001d2230: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ -001d2240: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001d2250: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -001d2260: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ -001d2270: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001d2280: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ -001d2290: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ -001d22a0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001d22b0: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -001d22c0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -001d22d0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001d22e0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001d22f0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ -001d2300: 725f 6c6f 675f 6e6f 6465 760a 2020 2d20  r_log_nodev.  - 
│ │ │ -001d2310: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001d2320: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ -001d2330: 6f64 6576 204f 7074 696f 6e20 746f 202f  odev Option to /
│ │ │ -001d2340: 7661 722f 6c6f 673a 2043 6865 636b 2069  var/log: Check i
│ │ │ -001d2350: 6e66 6f72 6d61 7469 6f6e 2061 7373 6f63  nformation assoc
│ │ │ -001d2360: 6961 7465 6420 746f 206d 6f75 6e74 706f  iated to mountpo
│ │ │ -001d2370: 696e 7427 0a20 2061 6e73 6962 6c65 2e62  int'.  ansible.b
│ │ │ -001d2380: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ -001d2390: 6669 6e64 6d6e 7420 2d2d 6673 7461 6220  findmnt --fstab 
│ │ │ -001d23a0: 272f 7661 722f 6c6f 6727 0a20 2072 6567  '/var/log'.  reg
│ │ │ -001d23b0: 6973 7465 723a 2064 6576 6963 655f 6e61  ister: device_na
│ │ │ -001d23c0: 6d65 0a20 2066 6169 6c65 645f 7768 656e  me.  failed_when
│ │ │ -001d23d0: 3a20 6465 7669 6365 5f6e 616d 652e 7263  : device_name.rc
│ │ │ -001d23e0: 2026 6774 3b20 310a 2020 6368 616e 6765   > 1.  change
│ │ │ -001d23f0: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ -001d2400: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73  check_mode: fals
│ │ │ -001d2410: 650a 2020 7768 656e 3a0a 2020 2d20 2820  e.  when:.  - ( 
│ │ │ -001d2420: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ -001d2430: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001d2440: 7061 636b 6167 6573 2061 6e64 2022 7270  packages and "rp
│ │ │ -001d2450: 6d2d 6f73 7472 6565 2220 696e 2061 6e73  m-ostree" in ans
│ │ │ -001d2460: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001d2470: 6765 730a 2020 2020 616e 6420 2262 6f6f  ges.    and "boo
│ │ │ -001d2480: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ -001d2490: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001d24a0: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ -001d24b0: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ -001d24c0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001d24d0: 6765 730a 2020 2020 616e 6420 226f 7374  ges.    and "ost
│ │ │ -001d24e0: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -001d24f0: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061  proc_cmdline ) a
│ │ │ -001d2500: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ -001d2510: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ -001d2520: 7479 7065 2069 6e0a 2020 2020 5b22 646f  type in.    ["do
│ │ │ -001d2530: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ -001d2540: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ -001d2550: 2c20 2263 6f6e 7461 696e 6572 225d 2029  , "container"] )
│ │ │ -001d2560: 2029 0a20 202d 2027 222f 7661 722f 6c6f   ).  - '"/var/lo
│ │ │ -001d2570: 6722 2069 6e20 616e 7369 626c 655f 6d6f  g" in ansible_mo
│ │ │ -001d2580: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ -001d2590: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ -001d25a0: 6c69 7374 270a 2020 7461 6773 3a0a 2020  list'.  tags:.  
│ │ │ -001d25b0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001d25c0: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ -001d25d0: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ -001d25e0: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -001d25f0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -001d2600: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ -001d2610: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -001d2620: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ -001d2630: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ -001d2640: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -001d2650: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -001d2660: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -001d2670: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -001d2680: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -001d2690: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6c  unt_option_var_l
│ │ │ -001d26a0: 6f67 5f6e 6f64 6576 0a20 202d 206e 6f5f  og_nodev.  - no_
│ │ │ -001d26b0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001d26c0: 206e 616d 653a 2027 4164 6420 6e6f 6465   name: 'Add node
│ │ │ -001d26d0: 7620 4f70 7469 6f6e 2074 6f20 2f76 6172  v Option to /var
│ │ │ -001d26e0: 2f6c 6f67 3a20 4372 6561 7465 206d 6f75  /log: Create mou
│ │ │ -001d26f0: 6e74 5f69 6e66 6f20 6469 6374 696f 6e61  nt_info dictiona
│ │ │ -001d2700: 7279 2076 6172 6961 626c 6527 0a20 2073  ry variable'.  s
│ │ │ -001d2710: 6574 5f66 6163 743a 0a20 2020 206d 6f75  et_fact:.    mou
│ │ │ -001d2720: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75  nt_info: '{{ mou
│ │ │ -001d2730: 6e74 5f69 6e66 6f7c 6465 6661 756c 7428  nt_info|default(
│ │ │ -001d2740: 7b7d 297c 636f 6d62 696e 6528 7b69 7465  {})|combine({ite
│ │ │ -001d2750: 6d2e 303a 2069 7465 6d2e 317d 2920 7d7d  m.0: item.1}) }}
│ │ │ -001d2760: 270a 2020 7769 7468 5f74 6f67 6574 6865  '.  with_togethe
│ │ │ -001d2770: 723a 0a20 202d 2027 7b7b 2064 6576 6963  r:.  - '{{ devic
│ │ │ -001d2780: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ -001d2790: 6e65 735b 305d 2e73 706c 6974 2829 207c  nes[0].split() |
│ │ │ -001d27a0: 206d 6170 2827 276c 6f77 6572 2727 2920   map(''lower'') 
│ │ │ -001d27b0: 7c20 6c69 7374 207d 7d27 0a20 202d 2027  | list }}'.  - '
│ │ │ -001d27c0: 7b7b 2064 6576 6963 655f 6e61 6d65 2e73  {{ device_name.s
│ │ │ -001d27d0: 7464 6f75 745f 6c69 6e65 735b 315d 2e73  tdout_lines[1].s
│ │ │ -001d27e0: 706c 6974 2829 207c 206c 6973 7420 7d7d  plit() | list }}
│ │ │ -001d27f0: 270a 2020 7768 656e 3a0a 2020 2d20 2820  '.  when:.  - ( 
│ │ │ -001d2800: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ -001d2810: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001d2820: 7061 636b 6167 6573 2061 6e64 2022 7270  packages and "rp
│ │ │ -001d2830: 6d2d 6f73 7472 6565 2220 696e 2061 6e73  m-ostree" in ans
│ │ │ -001d2840: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001d2850: 6765 730a 2020 2020 616e 6420 2262 6f6f  ges.    and "boo
│ │ │ -001d2860: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ -001d2870: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001d2880: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ -001d2890: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ -001d28a0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001d28b0: 6765 730a 2020 2020 616e 6420 226f 7374  ges.    and "ost
│ │ │ -001d28c0: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -001d28d0: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061  proc_cmdline ) a
│ │ │ -001d28e0: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ -001d28f0: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ -001d2900: 7479 7065 2069 6e0a 2020 2020 5b22 646f  type in.    ["do
│ │ │ -001d2910: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ -001d2920: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ -001d2930: 2c20 2263 6f6e 7461 696e 6572 225d 2029  , "container"] )
│ │ │ -001d2940: 2029 0a20 202d 2027 222f 7661 722f 6c6f   ).  - '"/var/lo
│ │ │ -001d2950: 6722 2069 6e20 616e 7369 626c 655f 6d6f  g" in ansible_mo
│ │ │ -001d2960: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ -001d2970: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ -001d2980: 6c69 7374 270a 2020 2d20 6465 7669 6365  list'.  - device
│ │ │ -001d2990: 5f6e 616d 652e 7374 646f 7574 2069 7320  _name.stdout is 
│ │ │ -001d29a0: 6465 6669 6e65 6420 616e 6420 6465 7669  defined and devi
│ │ │ -001d29b0: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ -001d29c0: 696e 6573 2069 7320 6465 6669 6e65 640a  ines is defined.
│ │ │ -001d29d0: 2020 2d20 2864 6576 6963 655f 6e61 6d65    - (device_name
│ │ │ -001d29e0: 2e73 7464 6f75 7420 7c20 6c65 6e67 7468  .stdout | length
│ │ │ -001d29f0: 2026 6774 3b20 3029 0a20 2074 6167 733a   > 0).  tags:
│ │ │ -001d2a00: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001d2a10: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ -001d2a20: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ -001d2a30: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001d2a40: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -001d2a50: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ -001d2a60: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001d2a70: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ -001d2a80: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ -001d2a90: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001d2aa0: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -001d2ab0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -001d2ac0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001d2ad0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001d2ae0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ -001d2af0: 725f 6c6f 675f 6e6f 6465 760a 2020 2d20  r_log_nodev.  - 
│ │ │ -001d2b00: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001d2b10: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ -001d2b20: 6f64 6576 204f 7074 696f 6e20 746f 202f  odev Option to /
│ │ │ -001d2b30: 7661 722f 6c6f 673a 2049 6620 2f76 6172  var/log: If /var
│ │ │ -001d2b40: 2f6c 6f67 206e 6f74 206d 6f75 6e74 6564  /log not mounted
│ │ │ -001d2b50: 2c20 6372 6166 7420 6d6f 756e 745f 696e  , craft mount_in
│ │ │ -001d2b60: 666f 206d 616e 7561 6c6c 7927 0a20 2073  fo manually'.  s
│ │ │ -001d2b70: 6574 5f66 6163 743a 0a20 2020 206d 6f75  et_fact:.    mou
│ │ │ -001d2b80: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75  nt_info: '{{ mou
│ │ │ -001d2b90: 6e74 5f69 6e66 6f7c 6465 6661 756c 7428  nt_info|default(
│ │ │ -001d2ba0: 7b7d 297c 636f 6d62 696e 6528 7b69 7465  {})|combine({ite
│ │ │ -001d2bb0: 6d2e 303a 2069 7465 6d2e 317d 2920 7d7d  m.0: item.1}) }}
│ │ │ -001d2bc0: 270a 2020 7769 7468 5f74 6f67 6574 6865  '.  with_togethe
│ │ │ -001d2bd0: 723a 0a20 202d 202d 2074 6172 6765 740a  r:.  - - target.
│ │ │ -001d2be0: 2020 2020 2d20 736f 7572 6365 0a20 2020      - source.   
│ │ │ -001d2bf0: 202d 2066 7374 7970 650a 2020 2020 2d20   - fstype.    - 
│ │ │ -001d2c00: 6f70 7469 6f6e 730a 2020 2d20 2d20 2f76  options.  - - /v
│ │ │ -001d2c10: 6172 2f6c 6f67 0a20 2020 202d 2027 270a  ar/log.    - ''.
│ │ │ -001d2c20: 2020 2020 2d20 2727 0a20 2020 202d 2064      - ''.    - d
│ │ │ -001d2c30: 6566 6175 6c74 730a 2020 7768 656e 3a0a  efaults.  when:.
│ │ │ -001d2c40: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ -001d2c50: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -001d2c60: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001d2c70: 6e64 2022 7270 6d2d 6f73 7472 6565 2220  nd "rpm-ostree" 
│ │ │ -001d2c80: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001d2c90: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001d2ca0: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ -001d2cb0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001d2cc0: 6765 7320 616e 6420 6e6f 7420 226f 7065  ges and not "ope
│ │ │ -001d2cd0: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ -001d2ce0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001d2cf0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001d2d00: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ -001d2d10: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ -001d2d20: 6e65 2029 2061 6e64 206e 6f74 2028 2061  ne ) and not ( a
│ │ │ -001d2d30: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ -001d2d40: 6174 696f 6e5f 7479 7065 2069 6e0a 2020  ation_type in.  
│ │ │ -001d2d50: 2020 5b22 646f 636b 6572 222c 2022 6c78    ["docker", "lx
│ │ │ -001d2d60: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ -001d2d70: 6f64 6d61 6e22 2c20 2263 6f6e 7461 696e  odman", "contain
│ │ │ -001d2d80: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ -001d2d90: 7661 722f 6c6f 6722 2069 6e20 616e 7369  var/log" in ansi
│ │ │ -001d2da0: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ -001d2db0: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ -001d2dc0: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ -001d2dd0: 2822 2d2d 6673 7461 6222 207c 206c 656e  ("--fstab" | len
│ │ │ -001d2de0: 6774 6820 3d3d 2030 290a 2020 2d20 6465  gth == 0).  - de
│ │ │ -001d2df0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001d2e00: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ -001d2e10: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001d2e20: 7574 5f6c 696e 6573 2069 7320 6465 6669  ut_lines is defi
│ │ │ -001d2e30: 6e65 640a 2020 2d20 2864 6576 6963 655f  ned.  - (device_
│ │ │ -001d2e40: 6e61 6d65 2e73 7464 6f75 7420 7c20 6c65  name.stdout | le
│ │ │ -001d2e50: 6e67 7468 203d 3d20 3029 0a20 2074 6167  ngth == 0).  tag
│ │ │ -001d2e60: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ -001d2e70: 3533 2d41 432d 360a 2020 2d20 4e49 5354  53-AC-6.  - NIST
│ │ │ -001d2e80: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ -001d2e90: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001d2ea0: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ -001d2eb0: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ -001d2ec0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001d2ed0: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ -001d2ee0: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d  -800-53-MP-7.  -
│ │ │ -001d2ef0: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ -001d2f00: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ -001d2f10: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -001d2f20: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -001d2f30: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -001d2f40: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ -001d2f50: 7661 725f 6c6f 675f 6e6f 6465 760a 2020  var_log_nodev.  
│ │ │ -001d2f60: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -001d2f70: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ -001d2f80: 206e 6f64 6576 204f 7074 696f 6e20 746f   nodev Option to
│ │ │ -001d2f90: 202f 7661 722f 6c6f 673a 204d 616b 6520   /var/log: Make 
│ │ │ -001d2fa0: 7375 7265 206e 6f64 6576 206f 7074 696f  sure nodev optio
│ │ │ -001d2fb0: 6e20 6973 2070 6172 7420 6f66 2074 6865  n is part of the
│ │ │ -001d2fc0: 2074 6f20 2f76 6172 2f6c 6f67 0a20 2020   to /var/log.   
│ │ │ -001d2fd0: 206f 7074 696f 6e73 270a 2020 7365 745f   options'.  set_
│ │ │ -001d2fe0: 6661 6374 3a0a 2020 2020 6d6f 756e 745f  fact:.    mount_
│ │ │ -001d2ff0: 696e 666f 3a20 277b 7b20 6d6f 756e 745f  info: '{{ mount_
│ │ │ -001d3000: 696e 666f 207c 2063 6f6d 6269 6e65 2820  info | combine( 
│ │ │ -001d3010: 7b27 276f 7074 696f 6e73 2727 3a27 2727  {''options'':'''
│ │ │ -001d3020: 277e 286d 6f75 6e74 5f69 6e66 6f2e 6f70  '~(mount_info.op
│ │ │ -001d3030: 7469 6f6e 7320 7c0a 2020 2020 2020 6465  tions |.      de
│ │ │ -001d3040: 6661 756c 7428 2727 2727 2929 7e28 2727  fault(''''))~(''
│ │ │ -001d3050: 2c27 2720 6966 2028 6d6f 756e 745f 696e  ,'' if (mount_in
│ │ │ -001d3060: 666f 2e6f 7074 696f 6e73 207c 2064 6566  fo.options | def
│ │ │ -001d3070: 6175 6c74 2827 2727 2729 2920 656c 7365  ault('''')) else
│ │ │ -001d3080: 2027 2727 2729 7e27 276e 6f64 6576 2727   '''')~''nodev''
│ │ │ -001d3090: 0a20 2020 2020 207d 2920 7d7d 270a 2020  .      }) }}'.  
│ │ │ -001d30a0: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ -001d30b0: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ -001d30c0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001d30d0: 6167 6573 2061 6e64 2022 7270 6d2d 6f73  ages and "rpm-os
│ │ │ -001d30e0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001d30f0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001d3100: 2020 2020 616e 6420 2262 6f6f 7463 2220      and "bootc" 
│ │ │ -001d3110: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001d3120: 2e70 6163 6b61 6765 7320 616e 6420 6e6f  .packages and no
│ │ │ -001d3130: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ -001d3140: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ -001d3150: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001d3160: 2020 2020 616e 6420 226f 7374 7265 6522      and "ostree"
│ │ │ -001d3170: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ -001d3180: 5f63 6d64 6c69 6e65 2029 2061 6e64 206e  _cmdline ) and n
│ │ │ -001d3190: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ -001d31a0: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ -001d31b0: 2069 6e0a 2020 2020 5b22 646f 636b 6572   in.    ["docker
│ │ │ -001d31c0: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ -001d31d0: 7a22 2c20 2270 6f64 6d61 6e22 2c20 2263  z", "podman", "c
│ │ │ -001d31e0: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ -001d31f0: 202d 2027 222f 7661 722f 6c6f 6722 2069   - '"/var/log" i
│ │ │ -001d3200: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ -001d3210: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ -001d3220: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ -001d3230: 270a 2020 2d20 6d6f 756e 745f 696e 666f  '.  - mount_info
│ │ │ -001d3240: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ -001d3250: 226e 6f64 6576 2220 6e6f 7420 696e 2028  "nodev" not in (
│ │ │ -001d3260: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ -001d3270: 6e73 207c 2064 6566 6175 6c74 2827 2729  ns | default('')
│ │ │ -001d3280: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ -001d3290: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ -001d32a0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001d32b0: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ -001d32c0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -001d32d0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001d32e0: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -001d32f0: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -001d3300: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ -001d3310: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ -001d3320: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -001d3330: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -001d3340: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001d3350: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -001d3360: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ -001d3370: 6f70 7469 6f6e 5f76 6172 5f6c 6f67 5f6e  option_var_log_n
│ │ │ -001d3380: 6f64 6576 0a20 202d 206e 6f5f 7265 626f  odev.  - no_rebo
│ │ │ -001d3390: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -001d33a0: 653a 2027 4164 6420 6e6f 6465 7620 4f70  e: 'Add nodev Op
│ │ │ -001d33b0: 7469 6f6e 2074 6f20 2f76 6172 2f6c 6f67  tion to /var/log
│ │ │ -001d33c0: 3a20 456e 7375 7265 202f 7661 722f 6c6f  : Ensure /var/lo
│ │ │ -001d33d0: 6720 6973 206d 6f75 6e74 6564 2077 6974  g is mounted wit
│ │ │ -001d33e0: 6820 6e6f 6465 7620 6f70 7469 6f6e 270a  h nodev option'.
│ │ │ -001d33f0: 2020 616e 7369 626c 652e 706f 7369 782e    ansible.posix.
│ │ │ -001d3400: 6d6f 756e 743a 0a20 2020 2070 6174 683a  mount:.    path:
│ │ │ -001d3410: 202f 7661 722f 6c6f 670a 2020 2020 7372   /var/log.    sr
│ │ │ -001d3420: 633a 2027 7b7b 206d 6f75 6e74 5f69 6e66  c: '{{ mount_inf
│ │ │ -001d3430: 6f2e 736f 7572 6365 207c 2064 6566 6175  o.source | defau
│ │ │ -001d3440: 6c74 2827 2727 2729 207d 7d27 0a20 2020  lt('''') }}'.   
│ │ │ -001d3450: 206f 7074 733a 2027 7b7b 206d 6f75 6e74   opts: '{{ mount
│ │ │ -001d3460: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ -001d3470: 6465 6661 756c 7428 2727 2727 2920 7d7d  default('''') }}
│ │ │ -001d3480: 270a 2020 2020 7374 6174 653a 206d 6f75  '.    state: mou
│ │ │ -001d3490: 6e74 6564 0a20 2020 2066 7374 7970 653a  nted.    fstype:
│ │ │ -001d34a0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ -001d34b0: 6673 7479 7065 207c 2064 6566 6175 6c74  fstype | default
│ │ │ -001d34c0: 2827 2727 2729 207d 7d27 0a20 2072 6567  ('''') }}'.  reg
│ │ │ -001d34d0: 6973 7465 723a 206d 6f75 6e74 5f72 6573  ister: mount_res
│ │ │ -001d34e0: 756c 740a 2020 6661 696c 6564 5f77 6865  ult.  failed_whe
│ │ │ -001d34f0: 6e3a 0a20 202d 206d 6f75 6e74 5f72 6573  n:.  - mount_res
│ │ │ -001d3500: 756c 7420 6973 2066 6169 6c65 640a 2020  ult is failed.  
│ │ │ -001d3510: 2d20 2727 2774 6172 6765 7420 6973 2062  - '''target is b
│ │ │ -001d3520: 7573 7927 2720 6e6f 7420 696e 2028 6d6f  usy'' not in (mo
│ │ │ -001d3530: 756e 745f 7265 7375 6c74 2e6d 7367 207c  unt_result.msg |
│ │ │ -001d3540: 2064 6566 6175 6c74 2827 2727 2729 2927   default(''''))'
│ │ │ -001d3550: 0a20 202d 2027 2727 616c 7265 6164 7920  .  - '''already 
│ │ │ -001d3560: 6d6f 756e 7465 6427 2720 6e6f 7420 696e  mounted'' not in
│ │ │ -001d3570: 2028 6d6f 756e 745f 7265 7375 6c74 2e6d   (mount_result.m
│ │ │ -001d3580: 7367 207c 2064 6566 6175 6c74 2827 2727  sg | default('''
│ │ │ -001d3590: 2729 2927 0a20 2077 6865 6e3a 0a20 202d  '))'.  when:.  -
│ │ │ -001d35a0: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ -001d35b0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001d35c0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001d35d0: 2272 706d 2d6f 7374 7265 6522 2069 6e20  "rpm-ostree" in 
│ │ │ -001d35e0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001d35f0: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001d3600: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -001d3610: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001d3620: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ -001d3630: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ -001d3640: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001d3650: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001d3660: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001d3670: 6c65 5f70 726f 635f 636d 646c 696e 6520  le_proc_cmdline 
│ │ │ -001d3680: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ -001d3690: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ -001d36a0: 6f6e 5f74 7970 6520 696e 0a20 2020 205b  on_type in.    [
│ │ │ -001d36b0: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -001d36c0: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -001d36d0: 616e 222c 2022 636f 6e74 6169 6e65 7222  an", "container"
│ │ │ -001d36e0: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ -001d36f0: 2f6c 6f67 2220 696e 2061 6e73 6962 6c65  /log" in ansible
│ │ │ -001d3700: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ -001d3710: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ -001d3720: 207c 206c 6973 7427 0a20 202d 206d 6f75   | list'.  - mou
│ │ │ -001d3730: 6e74 5f69 6e66 6f20 6973 2064 6566 696e  nt_info is defin
│ │ │ -001d3740: 6564 0a20 202d 2028 6465 7669 6365 5f6e  ed.  - (device_n
│ │ │ -001d3750: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ -001d3760: 6669 6e65 6420 616e 6420 2864 6576 6963  fined and (devic
│ │ │ -001d3770: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ -001d3780: 6c65 6e67 7468 2026 6774 3b20 3029 2920  length > 0)) 
│ │ │ -001d3790: 6f72 2028 222d 2d66 7374 6162 220a 2020  or ("--fstab".  
│ │ │ -001d37a0: 2020 7c20 6c65 6e67 7468 203d 3d20 3029    | length == 0)
│ │ │ -001d37b0: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -001d37c0: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ -001d37d0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001d37e0: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ -001d37f0: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ -001d3800: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001d3810: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ -001d3820: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ -001d3830: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ -001d3840: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ -001d3850: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ -001d3860: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ -001d3870: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001d3880: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -001d3890: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ -001d38a0: 7074 696f 6e5f 7661 725f 6c6f 675f 6e6f  ption_var_log_no
│ │ │ -001d38b0: 6465 760a 2020 2d20 6e6f 5f72 6562 6f6f  dev.  - no_reboo
│ │ │ -001d38c0: 745f 6e65 6564 6564 0a3c 2f63 6f64 653e  t_needed.
│ │ │ -001d38d0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -001d3980: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ -001d3990: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -001d3a10: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:false

# Remed │ │ │ -001d3a50: 6961 7469 6f6e 2069 7320 6170 706c 6963 iation is applic │ │ │ -001d3a60: 6162 6c65 206f 6e6c 7920 696e 2063 6572 able only in cer │ │ │ -001d3a70: 7461 696e 2070 6c61 7466 6f72 6d73 0a69 tain platforms.i │ │ │ -001d3a80: 6620 2820 2120 2820 7b20 7270 6d20 2d2d f ( ! ( { rpm -- │ │ │ -001d3a90: 7175 6965 7420 2d71 206b 6572 6e65 6c20 quiet -q kernel │ │ │ -001d3aa0: 3b7d 2026 616d 703b 2661 6d70 3b20 7b20 ;} && { │ │ │ -001d3ab0: 7270 6d20 2d2d 7175 6965 7420 2d71 2072 rpm --quiet -q r │ │ │ -001d3ac0: 706d 2d6f 7374 7265 6520 3b7d 2026 616d pm-ostree ;} &am │ │ │ -001d3ad0: 703b 2661 6d70 3b20 7b20 7270 6d20 2d2d p;& { rpm -- │ │ │ -001d3ae0: 7175 6965 7420 2d71 2062 6f6f 7463 203b quiet -q bootc ; │ │ │ -001d3af0: 7d20 2661 6d70 3b26 616d 703b 207b 2021 } && { ! │ │ │ -001d3b00: 2072 706d 202d 2d71 7569 6574 202d 7120 rpm --quiet -q │ │ │ -001d3b10: 6f70 656e 7368 6966 742d 6b75 6265 6c65 openshift-kubele │ │ │ -001d3b20: 7420 3b7d 2026 616d 703b 2661 6d70 3b20 t ;} && │ │ │ -001d3b30: 285b 202d 6620 2f72 756e 2f6f 7374 7265 ([ -f /run/ostre │ │ │ -001d3b40: 652d 626f 6f74 6564 205d 207c 7c20 5b20 e-booted ] || [ │ │ │ -001d3b50: 2d4c 202f 6f73 7472 6565 205d 2920 2920 -L /ostree ]) ) │ │ │ -001d3b60: 2661 6d70 3b26 616d 703b 2021 2028 205b && ! ( [ │ │ │ -001d3b70: 202d 6620 2f2e 646f 636b 6572 656e 7620 -f /.dockerenv │ │ │ -001d3b80: 5d20 7c7c 205b 202d 6620 2f72 756e 2f2e ] || [ -f /run/. │ │ │ -001d3b90: 636f 6e74 6169 6e65 7265 6e76 205d 2029 containerenv ] ) │ │ │ -001d3ba0: 2029 2026 616d 703b 2661 6d70 3b20 7b20 ) && { │ │ │ -001d3bb0: 2820 6669 6e64 6d6e 7420 2d2d 6b65 726e ( findmnt --kern │ │ │ -001d3bc0: 656c 2022 2f76 6172 2f6c 6f67 2220 2667 el "/var/log" &g │ │ │ -001d3bd0: 743b 202f 6465 762f 6e75 6c6c 207c 7c20 t; /dev/null || │ │ │ -001d3be0: 6669 6e64 6d6e 7420 2d2d 6673 7461 6220 findmnt --fstab │ │ │ -001d3bf0: 222f 7661 722f 6c6f 6722 2026 6774 3b20 "/var/log" > │ │ │ -001d3c00: 2f64 6576 2f6e 756c 6c20 293b 207d 3b20 /dev/null ); }; │ │ │ -001d3c10: 7468 656e 0a0a 6675 6e63 7469 6f6e 2070 then..function p │ │ │ -001d3c20: 6572 666f 726d 5f72 656d 6564 6961 7469 erform_remediati │ │ │ -001d3c30: 6f6e 207b 0a0a 2020 2020 0a20 2020 2020 on {.. . │ │ │ -001d3c40: 2020 2023 2074 6865 206d 6f75 6e74 2070 # the mount p │ │ │ -001d3c50: 6f69 6e74 202f 7661 722f 6c6f 6720 6861 oint /var/log ha │ │ │ -001d3c60: 7320 746f 2062 6520 6465 6669 6e65 6420 s to be defined │ │ │ -001d3c70: 696e 202f 6574 632f 6673 7461 620a 2020 in /etc/fstab. │ │ │ -001d3c80: 2020 2020 2020 2320 6265 666f 7265 2074 # before t │ │ │ -001d3c90: 6869 7320 7265 6d65 6469 6174 696f 6e20 his remediation │ │ │ -001d3ca0: 6361 6e20 6265 2065 7865 6375 7465 642e can be executed. │ │ │ -001d3cb0: 2049 6e20 6361 7365 2069 7420 6973 206e In case it is n │ │ │ -001d3cc0: 6f74 2064 6566 696e 6564 2c20 7468 650a ot defined, the. │ │ │ -001d3cd0: 2020 2020 2020 2020 2320 7265 6d65 6469 # remedi │ │ │ -001d3ce0: 6174 696f 6e20 6162 6f72 7473 2061 6e64 ation aborts and │ │ │ -001d3cf0: 206e 6f20 6368 616e 6765 7320 7265 6761 no changes rega │ │ │ -001d3d00: 7264 696e 6720 7468 6520 6d6f 756e 7420 rding the mount │ │ │ -001d3d10: 706f 696e 7420 6172 6520 646f 6e65 2e0a point are done.. │ │ │ -001d3d20: 2020 2020 2020 2020 6d6f 756e 745f 706f mount_po │ │ │ -001d3d30: 696e 745f 6d61 7463 685f 7265 6765 7870 int_match_regexp │ │ │ -001d3d40: 3d22 2428 7072 696e 7466 2022 5e5b 5b3a ="$(printf "^[[: │ │ │ -001d3d50: 7370 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b space:]]*[^#].*[ │ │ │ -001d3d60: 5b3a 7370 6163 653a 5d5d 2573 5b5b 3a73 [:space:]]%s[[:s │ │ │ -001d3d70: 7061 6365 3a5d 5d22 2022 2f76 6172 2f6c pace:]]" "/var/l │ │ │ -001d3d80: 6f67 2229 220a 0a20 2020 2067 7265 7020 og")".. grep │ │ │ -001d3d90: 2224 6d6f 756e 745f 706f 696e 745f 6d61 "$mount_point_ma │ │ │ -001d3da0: 7463 685f 7265 6765 7870 2220 2d71 202f tch_regexp" -q / │ │ │ -001d3db0: 6574 632f 6673 7461 6220 5c0a 2020 2020 etc/fstab \. │ │ │ -001d3dc0: 2020 2020 7c7c 207b 2065 6368 6f20 2254 || { echo "T │ │ │ -001d3dd0: 6865 206d 6f75 6e74 2070 6f69 6e74 2027 he mount point ' │ │ │ -001d3de0: 2f76 6172 2f6c 6f67 2720 6973 206e 6f74 /var/log' is not │ │ │ -001d3df0: 2065 7665 6e20 696e 202f 6574 632f 6673 even in /etc/fs │ │ │ -001d3e00: 7461 622c 2073 6f20 7765 2063 616e 2774 tab, so we can't │ │ │ -001d3e10: 2073 6574 2075 7020 6d6f 756e 7420 6f70 set up mount op │ │ │ -001d3e20: 7469 6f6e 7322 2026 6774 3b26 616d 703b tions" >& │ │ │ -001d3e30: 323b 0a20 2020 2020 2020 2020 2020 2020 2;. │ │ │ -001d3e40: 2020 2065 6368 6f20 224e 6f74 2072 656d echo "Not rem │ │ │ -001d3e50: 6564 6961 7469 6e67 2c20 6265 6361 7573 ediating, becaus │ │ │ -001d3e60: 6520 7468 6572 6520 6973 206e 6f20 7265 e there is no re │ │ │ -001d3e70: 636f 7264 206f 6620 2f76 6172 2f6c 6f67 cord of /var/log │ │ │ -001d3e80: 2069 6e20 2f65 7463 2f66 7374 6162 2220 in /etc/fstab" │ │ │ -001d3e90: 2667 743b 2661 6d70 3b32 3b20 7265 7475 >&2; retu │ │ │ -001d3ea0: 726e 2031 3b20 7d0a 2020 2020 0a0a 0a20 rn 1; }. ... │ │ │ -001d3eb0: 2020 206d 6f75 6e74 5f70 6f69 6e74 5f6d mount_point_m │ │ │ -001d3ec0: 6174 6368 5f72 6567 6578 703d 2224 2870 atch_regexp="$(p │ │ │ -001d3ed0: 7269 6e74 6620 225e 5b5b 3a73 7061 6365 rintf "^[[:space │ │ │ -001d3ee0: 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061 :]]*[^#].*[[:spa │ │ │ -001d3ef0: 6365 3a5d 5d25 735b 5b3a 7370 6163 653a ce:]]%s[[:space: │ │ │ -001d3f00: 5d5d 2220 2f76 6172 2f6c 6f67 2922 0a0a ]]" /var/log)".. │ │ │ -001d3f10: 2020 2020 2320 4966 2074 6865 206d 6f75 # If the mou │ │ │ -001d3f20: 6e74 2070 6f69 6e74 2069 7320 6e6f 7420 nt point is not │ │ │ -001d3f30: 696e 202f 6574 632f 6673 7461 622c 2067 in /etc/fstab, g │ │ │ -001d3f40: 6574 2070 7265 7669 6f75 7320 6d6f 756e et previous moun │ │ │ -001d3f50: 7420 6f70 7469 6f6e 7320 6672 6f6d 202f t options from / │ │ │ -001d3f60: 6574 632f 6d74 6162 0a20 2020 2069 6620 etc/mtab. if │ │ │ -001d3f70: 2120 6772 6570 202d 7120 2224 6d6f 756e ! grep -q "$moun │ │ │ -001d3f80: 745f 706f 696e 745f 6d61 7463 685f 7265 t_point_match_re │ │ │ -001d3f90: 6765 7870 2220 2f65 7463 2f66 7374 6162 gexp" /etc/fstab │ │ │ -001d3fa0: 3b20 7468 656e 0a20 2020 2020 2020 2023 ; then. # │ │ │ -001d3fb0: 2072 756e 7469 6d65 206f 7074 7320 7769 runtime opts wi │ │ │ -001d3fc0: 7468 6f75 7420 736f 6d65 2061 7574 6f6d thout some autom │ │ │ -001d3fd0: 6174 6963 206b 6572 6e65 6c2f 7573 6572 atic kernel/user │ │ │ -001d3fe0: 7370 6163 652d 6164 6465 6420 6465 6661 space-added defa │ │ │ -001d3ff0: 756c 7473 0a20 2020 2020 2020 2070 7265 ults. pre │ │ │ -001d4000: 7669 6f75 735f 6d6f 756e 745f 6f70 7473 vious_mount_opts │ │ │ -001d4010: 3d24 2867 7265 7020 2224 6d6f 756e 745f =$(grep "$mount_ │ │ │ -001d4020: 706f 696e 745f 6d61 7463 685f 7265 6765 point_match_rege │ │ │ -001d4030: 7870 2220 2f65 7463 2f6d 7461 6220 7c20 xp" /etc/mtab | │ │ │ -001d4040: 6865 6164 202d 3120 7c20 2061 776b 2027 head -1 | awk ' │ │ │ -001d4050: 7b70 7269 6e74 2024 347d 2720 5c0a 2020 {print $4}' \. │ │ │ -001d4060: 2020 2020 2020 2020 2020 2020 2020 2020 │ │ │ -001d4070: 2020 7c20 7365 6420 2d45 2022 732f 2872 | sed -E "s/(r │ │ │ -001d4080: 777c 6465 6661 756c 7473 7c73 6563 6c61 w|defaults|secla │ │ │ -001d4090: 6265 6c7c 6e6f 6465 7629 282c 7c24 292f bel|nodev)(,|$)/ │ │ │ -001d40a0: 2f67 3b73 2f2c 242f 2f22 290a 2020 2020 /g;s/,$//"). │ │ │ -001d40b0: 2020 2020 5b20 2224 7072 6576 696f 7573 [ "$previous │ │ │ -001d40c0: 5f6d 6f75 6e74 5f6f 7074 7322 205d 2026 _mount_opts" ] & │ │ │ -001d40d0: 616d 703b 2661 6d70 3b20 7072 6576 696f amp;& previo │ │ │ -001d40e0: 7573 5f6d 6f75 6e74 5f6f 7074 732b 3d22 us_mount_opts+=" │ │ │ -001d40f0: 2c22 0a20 2020 2020 2020 2023 2049 6e20 ,". # In │ │ │ -001d4100: 6973 6f39 3636 3020 6669 6c65 7379 7374 iso9660 filesyst │ │ │ -001d4110: 656d 7320 6d74 6162 2063 6f75 6c64 2064 ems mtab could d │ │ │ -001d4120: 6573 6372 6962 6520 6120 2262 6c6f 636b escribe a "block │ │ │ -001d4130: 7369 7a65 2220 7661 6c75 652c 2074 6869 size" value, thi │ │ │ -001d4140: 7320 7368 6f75 6c64 2062 6520 7265 666c s should be refl │ │ │ -001d4150: 6563 7465 6420 696e 0a20 2020 2020 2020 ected in. │ │ │ -001d4160: 2023 2066 7374 6162 2061 7320 2262 6c6f # fstab as "blo │ │ │ -001d4170: 636b 222e 2020 5468 6520 6e65 7874 2076 ck". The next v │ │ │ -001d4180: 6172 6961 626c 6520 6973 2074 6f20 7361 ariable is to sa │ │ │ -001d4190: 7469 7366 7920 7368 656c 6c63 6865 636b tisfy shellcheck │ │ │ -001d41a0: 2053 4332 3035 302e 0a20 2020 2020 2020 SC2050.. │ │ │ -001d41b0: 2066 735f 7479 7065 3d22 220a 2020 2020 fs_type="". │ │ │ -001d41c0: 2020 2020 6966 205b 2020 2224 6673 5f74 if [ "$fs_t │ │ │ -001d41d0: 7970 6522 203d 3d20 2269 736f 3936 3630 ype" == "iso9660 │ │ │ -001d41e0: 2220 5d20 3b20 7468 656e 0a20 2020 2020 " ] ; then. │ │ │ -001d41f0: 2020 2020 2020 2070 7265 7669 6f75 735f previous_ │ │ │ -001d4200: 6d6f 756e 745f 6f70 7473 3d24 2873 6564 mount_opts=$(sed │ │ │ -001d4210: 2027 732f 626c 6f63 6b73 697a 653d 2f62 's/blocksize=/b │ │ │ -001d4220: 6c6f 636b 3d2f 2720 266c 743b 266c 743b lock=/' << │ │ │ -001d4230: 266c 743b 2022 2470 7265 7669 6f75 735f < "$previous_ │ │ │ -001d4240: 6d6f 756e 745f 6f70 7473 2229 0a20 2020 mount_opts"). │ │ │ -001d4250: 2020 2020 2066 690a 2020 2020 2020 2020 fi. │ │ │ -001d4260: 6563 686f 2022 202f 7661 722f 6c6f 6720 echo " /var/log │ │ │ -001d4270: 2064 6566 6175 6c74 732c 247b 7072 6576 defaults,${prev │ │ │ -001d4280: 696f 7573 5f6d 6f75 6e74 5f6f 7074 737d ious_mount_opts} │ │ │ -001d4290: 6e6f 6465 7620 3020 3022 2026 6774 3b26 nodev 0 0" >& │ │ │ -001d42a0: 6774 3b20 2f65 7463 2f66 7374 6162 0a20 gt; /etc/fstab. │ │ │ -001d42b0: 2020 2023 2049 6620 7468 6520 6d6f 756e # If the moun │ │ │ -001d42c0: 745f 6f70 7420 6f70 7469 6f6e 2069 7320 t_opt option is │ │ │ -001d42d0: 6e6f 7420 616c 7265 6164 7920 696e 2074 not already in t │ │ │ -001d42e0: 6865 206d 6f75 6e74 2070 6f69 6e74 2773 he mount point's │ │ │ -001d42f0: 202f 6574 632f 6673 7461 6220 656e 7472 /etc/fstab entr │ │ │ -001d4300: 792c 2061 6464 2069 740a 2020 2020 656c y, add it. el │ │ │ -001d4310: 6966 2021 2067 7265 7020 2224 6d6f 756e if ! grep "$moun │ │ │ -001d4320: 745f 706f 696e 745f 6d61 7463 685f 7265 t_point_match_re │ │ │ -001d4330: 6765 7870 2220 2f65 7463 2f66 7374 6162 gexp" /etc/fstab │ │ │ -001d4340: 207c 2067 7265 7020 2d71 2022 6e6f 6465 | grep -q "node │ │ │ -001d4350: 7622 3b20 7468 656e 0a20 2020 2020 2020 v"; then. │ │ │ -001d4360: 2070 7265 7669 6f75 735f 6d6f 756e 745f previous_mount_ │ │ │ -001d4370: 6f70 7473 3d24 2867 7265 7020 2224 6d6f opts=$(grep "$mo │ │ │ -001d4380: 756e 745f 706f 696e 745f 6d61 7463 685f unt_point_match_ │ │ │ -001d4390: 7265 6765 7870 2220 2f65 7463 2f66 7374 regexp" /etc/fst │ │ │ -001d43a0: 6162 207c 2061 776b 2027 7b70 7269 6e74 ab | awk '{print │ │ │ -001d43b0: 2024 347d 2729 0a20 2020 2020 2020 2073 $4}'). s │ │ │ -001d43c0: 6564 202d 6920 2273 7c5c 2824 7b6d 6f75 ed -i "s|\(${mou │ │ │ -001d43d0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72 nt_point_match_r │ │ │ -001d43e0: 6567 6578 707d 2e2a 247b 7072 6576 696f egexp}.*${previo │ │ │ -001d43f0: 7573 5f6d 6f75 6e74 5f6f 7074 737d 5c29 us_mount_opts}\) │ │ │ -001d4400: 7c5c 312c 6e6f 6465 767c 2220 2f65 7463 |\1,nodev|" /etc │ │ │ -001d4410: 2f66 7374 6162 0a20 2020 2066 690a 0a0a /fstab. fi... │ │ │ -001d4420: 2020 2020 6966 206d 6b64 6972 202d 7020 if mkdir -p │ │ │ -001d4430: 222f 7661 722f 6c6f 6722 3b20 7468 656e "/var/log"; then │ │ │ -001d4440: 0a20 2020 2020 2020 2069 6620 6d6f 756e . if moun │ │ │ -001d4450: 7470 6f69 6e74 202d 7120 222f 7661 722f tpoint -q "/var/ │ │ │ -001d4460: 6c6f 6722 3b20 7468 656e 0a20 2020 2020 log"; then. │ │ │ -001d4470: 2020 2020 2020 206d 6f75 6e74 202d 6f20 mount -o │ │ │ -001d4480: 7265 6d6f 756e 7420 2d2d 7461 7267 6574 remount --target │ │ │ -001d4490: 2022 2f76 6172 2f6c 6f67 220a 2020 2020 "/var/log". │ │ │ -001d44a0: 2020 2020 6669 0a20 2020 2066 690a 7d0a fi. fi.}. │ │ │ -001d44b0: 0a70 6572 666f 726d 5f72 656d 6564 6961 .perform_remedia │ │ │ -001d44c0: 7469 6f6e 0a0a 656c 7365 0a20 2020 2026 tion..else. & │ │ │ -001d44d0: 6774 3b26 616d 703b 3220 6563 686f 2027 gt;&2 echo ' │ │ │ -001d44e0: 5265 6d65 6469 6174 696f 6e20 6973 206e Remediation is n │ │ │ -001d44f0: 6f74 2061 7070 6c69 6361 626c 652c 206e ot applicable, n │ │ │ -001d4500: 6f74 6869 6e67 2077 6173 2064 6f6e 6527 othing was done' │ │ │ -001d4510: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265 .fi.

- 
│ │ │ +001d1fa0: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ +001d1fb0: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ +001d1fc0: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ +001d1fd0: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ +001d1fe0: 6f0a 2020 7461 6773 3a0a 2020 2d20 4e49  o.  tags:.  - NI
│ │ │ +001d1ff0: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ +001d2000: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001d2010: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ +001d2020: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +001d2030: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001d2040: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +001d2050: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +001d2060: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ +001d2070: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ +001d2080: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ +001d2090: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ +001d20a0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +001d20b0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +001d20c0: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ +001d20d0: 6f70 7469 6f6e 5f76 6172 5f6c 6f67 5f6e  option_var_log_n
│ │ │ +001d20e0: 6f64 6576 0a20 202d 206e 6f5f 7265 626f  odev.  - no_rebo
│ │ │ +001d20f0: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +001d2100: 653a 2027 4164 6420 6e6f 6465 7620 4f70  e: 'Add nodev Op
│ │ │ +001d2110: 7469 6f6e 2074 6f20 2f76 6172 2f6c 6f67  tion to /var/log
│ │ │ +001d2120: 3a20 4368 6563 6b20 696e 666f 726d 6174  : Check informat
│ │ │ +001d2130: 696f 6e20 6173 736f 6369 6174 6564 2074  ion associated t
│ │ │ +001d2140: 6f20 6d6f 756e 7470 6f69 6e74 270a 2020  o mountpoint'.  
│ │ │ +001d2150: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +001d2160: 636f 6d6d 616e 643a 2066 696e 646d 6e74  command: findmnt
│ │ │ +001d2170: 202d 2d66 7374 6162 2027 2f76 6172 2f6c   --fstab '/var/l
│ │ │ +001d2180: 6f67 270a 2020 7265 6769 7374 6572 3a20  og'.  register: 
│ │ │ +001d2190: 6465 7669 6365 5f6e 616d 650a 2020 6661  device_name.  fa
│ │ │ +001d21a0: 696c 6564 5f77 6865 6e3a 2064 6576 6963  iled_when: devic
│ │ │ +001d21b0: 655f 6e61 6d65 2e72 6320 2667 743b 2031  e_name.rc > 1
│ │ │ +001d21c0: 0a20 2063 6861 6e67 6564 5f77 6865 6e3a  .  changed_when:
│ │ │ +001d21d0: 2066 616c 7365 0a20 2063 6865 636b 5f6d   false.  check_m
│ │ │ +001d21e0: 6f64 653a 2066 616c 7365 0a20 2077 6865  ode: false.  whe
│ │ │ +001d21f0: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +001d2200: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001d2210: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001d2220: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ +001d2230: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ +001d2240: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001d2250: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ +001d2260: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001d2270: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ +001d2280: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +001d2290: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ +001d22a0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001d22b0: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ +001d22c0: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ +001d22d0: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ +001d22e0: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ +001d22f0: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ +001d2300: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ +001d2310: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ +001d2320: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ +001d2330: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ +001d2340: 2722 2f76 6172 2f6c 6f67 2220 696e 2061  '"/var/log" in a
│ │ │ +001d2350: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ +001d2360: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ +001d2370: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ +001d2380: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +001d2390: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ +001d23a0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001d23b0: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ +001d23c0: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +001d23d0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001d23e0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001d23f0: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ +001d2400: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ +001d2410: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +001d2420: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +001d2430: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001d2440: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001d2450: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001d2460: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001d2470: 696f 6e5f 7661 725f 6c6f 675f 6e6f 6465  ion_var_log_node
│ │ │ +001d2480: 760a 2020 2d20 6e6f 5f72 6562 6f6f 745f  v.  - no_reboot_
│ │ │ +001d2490: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ +001d24a0: 2741 6464 206e 6f64 6576 204f 7074 696f  'Add nodev Optio
│ │ │ +001d24b0: 6e20 746f 202f 7661 722f 6c6f 673a 2043  n to /var/log: C
│ │ │ +001d24c0: 7265 6174 6520 6d6f 756e 745f 696e 666f  reate mount_info
│ │ │ +001d24d0: 2064 6963 7469 6f6e 6172 7920 7661 7269   dictionary vari
│ │ │ +001d24e0: 6162 6c65 270a 2020 7365 745f 6661 6374  able'.  set_fact
│ │ │ +001d24f0: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ +001d2500: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001d2510: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d  |default({})|com
│ │ │ +001d2520: 6269 6e65 287b 6974 656d 2e30 3a20 6974  bine({item.0: it
│ │ │ +001d2530: 656d 2e31 7d29 207d 7d27 0a20 2077 6974  em.1}) }}'.  wit
│ │ │ +001d2540: 685f 746f 6765 7468 6572 3a0a 2020 2d20  h_together:.  - 
│ │ │ +001d2550: 277b 7b20 6465 7669 6365 5f6e 616d 652e  '{{ device_name.
│ │ │ +001d2560: 7374 646f 7574 5f6c 696e 6573 5b30 5d2e  stdout_lines[0].
│ │ │ +001d2570: 7370 6c69 7428 2920 7c20 6d61 7028 2727  split() | map(''
│ │ │ +001d2580: 6c6f 7765 7227 2729 207c 206c 6973 7420  lower'') | list 
│ │ │ +001d2590: 7d7d 270a 2020 2d20 277b 7b20 6465 7669  }}'.  - '{{ devi
│ │ │ +001d25a0: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ +001d25b0: 696e 6573 5b31 5d2e 7370 6c69 7428 2920  ines[1].split() 
│ │ │ +001d25c0: 7c20 6c69 7374 207d 7d27 0a20 2077 6865  | list }}'.  whe
│ │ │ +001d25d0: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +001d25e0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001d25f0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001d2600: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ +001d2610: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ +001d2620: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001d2630: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ +001d2640: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001d2650: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ +001d2660: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +001d2670: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ +001d2680: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001d2690: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ +001d26a0: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ +001d26b0: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ +001d26c0: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ +001d26d0: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ +001d26e0: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ +001d26f0: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ +001d2700: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ +001d2710: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ +001d2720: 2722 2f76 6172 2f6c 6f67 2220 696e 2061  '"/var/log" in a
│ │ │ +001d2730: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ +001d2740: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ +001d2750: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ +001d2760: 202d 2064 6576 6963 655f 6e61 6d65 2e73   - device_name.s
│ │ │ +001d2770: 7464 6f75 7420 6973 2064 6566 696e 6564  tdout is defined
│ │ │ +001d2780: 2061 6e64 2064 6576 6963 655f 6e61 6d65   and device_name
│ │ │ +001d2790: 2e73 7464 6f75 745f 6c69 6e65 7320 6973  .stdout_lines is
│ │ │ +001d27a0: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ +001d27b0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001d27c0: 207c 206c 656e 6774 6820 2667 743b 2030   | length > 0
│ │ │ +001d27d0: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ +001d27e0: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ +001d27f0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001d2800: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ +001d2810: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +001d2820: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001d2830: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +001d2840: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +001d2850: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ +001d2860: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ +001d2870: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ +001d2880: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ +001d2890: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +001d28a0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +001d28b0: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ +001d28c0: 6f70 7469 6f6e 5f76 6172 5f6c 6f67 5f6e  option_var_log_n
│ │ │ +001d28d0: 6f64 6576 0a20 202d 206e 6f5f 7265 626f  odev.  - no_rebo
│ │ │ +001d28e0: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +001d28f0: 653a 2027 4164 6420 6e6f 6465 7620 4f70  e: 'Add nodev Op
│ │ │ +001d2900: 7469 6f6e 2074 6f20 2f76 6172 2f6c 6f67  tion to /var/log
│ │ │ +001d2910: 3a20 4966 202f 7661 722f 6c6f 6720 6e6f  : If /var/log no
│ │ │ +001d2920: 7420 6d6f 756e 7465 642c 2063 7261 6674  t mounted, craft
│ │ │ +001d2930: 206d 6f75 6e74 5f69 6e66 6f20 6d61 6e75   mount_info manu
│ │ │ +001d2940: 616c 6c79 270a 2020 7365 745f 6661 6374  ally'.  set_fact
│ │ │ +001d2950: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ +001d2960: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001d2970: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d  |default({})|com
│ │ │ +001d2980: 6269 6e65 287b 6974 656d 2e30 3a20 6974  bine({item.0: it
│ │ │ +001d2990: 656d 2e31 7d29 207d 7d27 0a20 2077 6974  em.1}) }}'.  wit
│ │ │ +001d29a0: 685f 746f 6765 7468 6572 3a0a 2020 2d20  h_together:.  - 
│ │ │ +001d29b0: 2d20 7461 7267 6574 0a20 2020 202d 2073  - target.    - s
│ │ │ +001d29c0: 6f75 7263 650a 2020 2020 2d20 6673 7479  ource.    - fsty
│ │ │ +001d29d0: 7065 0a20 2020 202d 206f 7074 696f 6e73  pe.    - options
│ │ │ +001d29e0: 0a20 202d 202d 202f 7661 722f 6c6f 670a  .  - - /var/log.
│ │ │ +001d29f0: 2020 2020 2d20 2727 0a20 2020 202d 2027      - ''.    - '
│ │ │ +001d2a00: 270a 2020 2020 2d20 6465 6661 756c 7473  '.    - defaults
│ │ │ +001d2a10: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ +001d2a20: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ +001d2a30: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001d2a40: 6163 6b61 6765 7320 616e 6420 2272 706d  ackages and "rpm
│ │ │ +001d2a50: 2d6f 7374 7265 6522 2069 6e20 616e 7369  -ostree" in ansi
│ │ │ +001d2a60: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001d2a70: 6573 0a20 2020 2061 6e64 2022 626f 6f74  es.    and "boot
│ │ │ +001d2a80: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ +001d2a90: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001d2aa0: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ +001d2ab0: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ +001d2ac0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001d2ad0: 6573 0a20 2020 2061 6e64 2022 6f73 7472  es.    and "ostr
│ │ │ +001d2ae0: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ +001d2af0: 726f 635f 636d 646c 696e 6520 2920 616e  roc_cmdline ) an
│ │ │ +001d2b00: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ +001d2b10: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ +001d2b20: 7970 6520 696e 0a20 2020 205b 2264 6f63  ype in.    ["doc
│ │ │ +001d2b30: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ +001d2b40: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ +001d2b50: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ +001d2b60: 290a 2020 2d20 2722 2f76 6172 2f6c 6f67  ).  - '"/var/log
│ │ │ +001d2b70: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ +001d2b80: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ +001d2b90: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ +001d2ba0: 6973 7427 0a20 202d 2028 222d 2d66 7374  ist'.  - ("--fst
│ │ │ +001d2bb0: 6162 2220 7c20 6c65 6e67 7468 203d 3d20  ab" | length == 
│ │ │ +001d2bc0: 3029 0a20 202d 2064 6576 6963 655f 6e61  0).  - device_na
│ │ │ +001d2bd0: 6d65 2e73 7464 6f75 7420 6973 2064 6566  me.stdout is def
│ │ │ +001d2be0: 696e 6564 2061 6e64 2064 6576 6963 655f  ined and device_
│ │ │ +001d2bf0: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ +001d2c00: 7320 6973 2064 6566 696e 6564 0a20 202d  s is defined.  -
│ │ │ +001d2c10: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ +001d2c20: 646f 7574 207c 206c 656e 6774 6820 3d3d  dout | length ==
│ │ │ +001d2c30: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ +001d2c40: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001d2c50: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001d2c60: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ +001d2c70: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +001d2c80: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001d2c90: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ +001d2ca0: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ +001d2cb0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001d2cc0: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ +001d2cd0: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +001d2ce0: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ +001d2cf0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001d2d00: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ +001d2d10: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ +001d2d20: 745f 6f70 7469 6f6e 5f76 6172 5f6c 6f67  t_option_var_log
│ │ │ +001d2d30: 5f6e 6f64 6576 0a20 202d 206e 6f5f 7265  _nodev.  - no_re
│ │ │ +001d2d40: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ +001d2d50: 616d 653a 2027 4164 6420 6e6f 6465 7620  ame: 'Add nodev 
│ │ │ +001d2d60: 4f70 7469 6f6e 2074 6f20 2f76 6172 2f6c  Option to /var/l
│ │ │ +001d2d70: 6f67 3a20 4d61 6b65 2073 7572 6520 6e6f  og: Make sure no
│ │ │ +001d2d80: 6465 7620 6f70 7469 6f6e 2069 7320 7061  dev option is pa
│ │ │ +001d2d90: 7274 206f 6620 7468 6520 746f 202f 7661  rt of the to /va
│ │ │ +001d2da0: 722f 6c6f 670a 2020 2020 6f70 7469 6f6e  r/log.    option
│ │ │ +001d2db0: 7327 0a20 2073 6574 5f66 6163 743a 0a20  s'.  set_fact:. 
│ │ │ +001d2dc0: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ +001d2dd0: 7b7b 206d 6f75 6e74 5f69 6e66 6f20 7c20  {{ mount_info | 
│ │ │ +001d2de0: 636f 6d62 696e 6528 207b 2727 6f70 7469  combine( {''opti
│ │ │ +001d2df0: 6f6e 7327 273a 2727 2727 7e28 6d6f 756e  ons'':''''~(moun
│ │ │ +001d2e00: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ +001d2e10: 0a20 2020 2020 2064 6566 6175 6c74 2827  .      default('
│ │ │ +001d2e20: 2727 2729 297e 2827 272c 2727 2069 6620  '''))~('','' if 
│ │ │ +001d2e30: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469  (mount_info.opti
│ │ │ +001d2e40: 6f6e 7320 7c20 6465 6661 756c 7428 2727  ons | default(''
│ │ │ +001d2e50: 2727 2929 2065 6c73 6520 2727 2727 297e  '')) else '''')~
│ │ │ +001d2e60: 2727 6e6f 6465 7627 270a 2020 2020 2020  ''nodev''.      
│ │ │ +001d2e70: 7d29 207d 7d27 0a20 2077 6865 6e3a 0a20  }) }}'.  when:. 
│ │ │ +001d2e80: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ +001d2e90: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +001d2ea0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001d2eb0: 6420 2272 706d 2d6f 7374 7265 6522 2069  d "rpm-ostree" i
│ │ │ +001d2ec0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001d2ed0: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +001d2ee0: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ +001d2ef0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001d2f00: 6573 2061 6e64 206e 6f74 2022 6f70 656e  es and not "open
│ │ │ +001d2f10: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ +001d2f20: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001d2f30: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +001d2f40: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ +001d2f50: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ +001d2f60: 6520 2920 616e 6420 6e6f 7420 2820 616e  e ) and not ( an
│ │ │ +001d2f70: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ +001d2f80: 7469 6f6e 5f74 7970 6520 696e 0a20 2020  tion_type in.   
│ │ │ +001d2f90: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ +001d2fa0: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ +001d2fb0: 646d 616e 222c 2022 636f 6e74 6169 6e65  dman", "containe
│ │ │ +001d2fc0: 7222 5d20 2920 290a 2020 2d20 2722 2f76  r"] ) ).  - '"/v
│ │ │ +001d2fd0: 6172 2f6c 6f67 2220 696e 2061 6e73 6962  ar/log" in ansib
│ │ │ +001d2fe0: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ +001d2ff0: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ +001d3000: 2229 207c 206c 6973 7427 0a20 202d 206d  ") | list'.  - m
│ │ │ +001d3010: 6f75 6e74 5f69 6e66 6f20 6973 2064 6566  ount_info is def
│ │ │ +001d3020: 696e 6564 2061 6e64 2022 6e6f 6465 7622  ined and "nodev"
│ │ │ +001d3030: 206e 6f74 2069 6e20 286d 6f75 6e74 5f69   not in (mount_i
│ │ │ +001d3040: 6e66 6f2e 6f70 7469 6f6e 7320 7c20 6465  nfo.options | de
│ │ │ +001d3050: 6661 756c 7428 2727 2929 0a20 2074 6167  fault('')).  tag
│ │ │ +001d3060: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +001d3070: 3533 2d41 432d 360a 2020 2d20 4e49 5354  53-AC-6.  - NIST
│ │ │ +001d3080: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ +001d3090: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001d30a0: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ +001d30b0: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ +001d30c0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001d30d0: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ +001d30e0: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d  -800-53-MP-7.  -
│ │ │ +001d30f0: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ +001d3100: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ +001d3110: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ +001d3120: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +001d3130: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +001d3140: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ +001d3150: 7661 725f 6c6f 675f 6e6f 6465 760a 2020  var_log_nodev.  
│ │ │ +001d3160: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001d3170: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ +001d3180: 206e 6f64 6576 204f 7074 696f 6e20 746f   nodev Option to
│ │ │ +001d3190: 202f 7661 722f 6c6f 673a 2045 6e73 7572   /var/log: Ensur
│ │ │ +001d31a0: 6520 2f76 6172 2f6c 6f67 2069 7320 6d6f  e /var/log is mo
│ │ │ +001d31b0: 756e 7465 6420 7769 7468 206e 6f64 6576  unted with nodev
│ │ │ +001d31c0: 206f 7074 696f 6e27 0a20 2061 6e73 6962   option'.  ansib
│ │ │ +001d31d0: 6c65 2e70 6f73 6978 2e6d 6f75 6e74 3a0a  le.posix.mount:.
│ │ │ +001d31e0: 2020 2020 7061 7468 3a20 2f76 6172 2f6c      path: /var/l
│ │ │ +001d31f0: 6f67 0a20 2020 2073 7263 3a20 277b 7b20  og.    src: '{{ 
│ │ │ +001d3200: 6d6f 756e 745f 696e 666f 2e73 6f75 7263  mount_info.sourc
│ │ │ +001d3210: 6520 7c20 6465 6661 756c 7428 2727 2727  e | default(''''
│ │ │ +001d3220: 2920 7d7d 270a 2020 2020 6f70 7473 3a20  ) }}'.    opts: 
│ │ │ +001d3230: 277b 7b20 6d6f 756e 745f 696e 666f 2e6f  '{{ mount_info.o
│ │ │ +001d3240: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ +001d3250: 2827 2727 2729 207d 7d27 0a20 2020 2073  ('''') }}'.    s
│ │ │ +001d3260: 7461 7465 3a20 6d6f 756e 7465 640a 2020  tate: mounted.  
│ │ │ +001d3270: 2020 6673 7479 7065 3a20 277b 7b20 6d6f    fstype: '{{ mo
│ │ │ +001d3280: 756e 745f 696e 666f 2e66 7374 7970 6520  unt_info.fstype 
│ │ │ +001d3290: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ +001d32a0: 7d7d 270a 2020 7265 6769 7374 6572 3a20  }}'.  register: 
│ │ │ +001d32b0: 6d6f 756e 745f 7265 7375 6c74 0a20 2066  mount_result.  f
│ │ │ +001d32c0: 6169 6c65 645f 7768 656e 3a0a 2020 2d20  ailed_when:.  - 
│ │ │ +001d32d0: 6d6f 756e 745f 7265 7375 6c74 2069 7320  mount_result is 
│ │ │ +001d32e0: 6661 696c 6564 0a20 202d 2027 2727 7461  failed.  - '''ta
│ │ │ +001d32f0: 7267 6574 2069 7320 6275 7379 2727 206e  rget is busy'' n
│ │ │ +001d3300: 6f74 2069 6e20 286d 6f75 6e74 5f72 6573  ot in (mount_res
│ │ │ +001d3310: 756c 742e 6d73 6720 7c20 6465 6661 756c  ult.msg | defaul
│ │ │ +001d3320: 7428 2727 2727 2929 270a 2020 2d20 2727  t(''''))'.  - ''
│ │ │ +001d3330: 2761 6c72 6561 6479 206d 6f75 6e74 6564  'already mounted
│ │ │ +001d3340: 2727 206e 6f74 2069 6e20 286d 6f75 6e74  '' not in (mount
│ │ │ +001d3350: 5f72 6573 756c 742e 6d73 6720 7c20 6465  _result.msg | de
│ │ │ +001d3360: 6661 756c 7428 2727 2727 2929 270a 2020  fault(''''))'.  
│ │ │ +001d3370: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ +001d3380: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ +001d3390: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001d33a0: 6167 6573 2061 6e64 2022 7270 6d2d 6f73  ages and "rpm-os
│ │ │ +001d33b0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001d33c0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001d33d0: 2020 2020 616e 6420 2262 6f6f 7463 2220      and "bootc" 
│ │ │ +001d33e0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001d33f0: 2e70 6163 6b61 6765 7320 616e 6420 6e6f  .packages and no
│ │ │ +001d3400: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ +001d3410: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ +001d3420: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001d3430: 2020 2020 616e 6420 226f 7374 7265 6522      and "ostree"
│ │ │ +001d3440: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ +001d3450: 5f63 6d64 6c69 6e65 2029 2061 6e64 206e  _cmdline ) and n
│ │ │ +001d3460: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ +001d3470: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ +001d3480: 2069 6e0a 2020 2020 5b22 646f 636b 6572   in.    ["docker
│ │ │ +001d3490: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ +001d34a0: 7a22 2c20 2270 6f64 6d61 6e22 2c20 2263  z", "podman", "c
│ │ │ +001d34b0: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ +001d34c0: 202d 2027 222f 7661 722f 6c6f 6722 2069   - '"/var/log" i
│ │ │ +001d34d0: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ +001d34e0: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ +001d34f0: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ +001d3500: 270a 2020 2d20 6d6f 756e 745f 696e 666f  '.  - mount_info
│ │ │ +001d3510: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ +001d3520: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ +001d3530: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ +001d3540: 6e64 2028 6465 7669 6365 5f6e 616d 652e  nd (device_name.
│ │ │ +001d3550: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ +001d3560: 2667 743b 2030 2929 206f 7220 2822 2d2d  > 0)) or ("--
│ │ │ +001d3570: 6673 7461 6222 0a20 2020 207c 206c 656e  fstab".    | len
│ │ │ +001d3580: 6774 6820 3d3d 2030 290a 2020 7461 6773  gth == 0).  tags
│ │ │ +001d3590: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +001d35a0: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ +001d35b0: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ +001d35c0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001d35d0: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ +001d35e0: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ +001d35f0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001d3600: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ +001d3610: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ +001d3620: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +001d3630: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +001d3640: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +001d3650: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +001d3660: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001d3670: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76  - mount_option_v
│ │ │ +001d3680: 6172 5f6c 6f67 5f6e 6f64 6576 0a20 202d  ar_log_nodev.  -
│ │ │ +001d3690: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +001d36a0: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ +001d36b0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Sh │ │ │ +001d3760: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
Comp │ │ │ +001d1ef0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +001d1f00: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +001d1f20: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ +001d1f40: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +001d1f50: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +001d1f70: 2f74 683e 3c74 643e 636f 6e66 6967 7572 /th>configur │ │ │ +001d1f80: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ +001d3810: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
# Remediation 
│ │ │ +001d3830: 6973 2061 7070 6c69 6361 626c 6520 6f6e  is applicable on
│ │ │ +001d3840: 6c79 2069 6e20 6365 7274 6169 6e20 706c  ly in certain pl
│ │ │ +001d3850: 6174 666f 726d 730a 6966 2028 2021 2028  atforms.if ( ! (
│ │ │ +001d3860: 207b 2072 706d 202d 2d71 7569 6574 202d   { rpm --quiet -
│ │ │ +001d3870: 7120 6b65 726e 656c 203b 7d20 2661 6d70  q kernel ;} &
│ │ │ +001d3880: 3b26 616d 703b 207b 2072 706d 202d 2d71  ;& { rpm --q
│ │ │ +001d3890: 7569 6574 202d 7120 7270 6d2d 6f73 7472  uiet -q rpm-ostr
│ │ │ +001d38a0: 6565 203b 7d20 2661 6d70 3b26 616d 703b  ee ;} &&
│ │ │ +001d38b0: 207b 2072 706d 202d 2d71 7569 6574 202d   { rpm --quiet -
│ │ │ +001d38c0: 7120 626f 6f74 6320 3b7d 2026 616d 703b  q bootc ;} &
│ │ │ +001d38d0: 2661 6d70 3b20 7b20 2120 7270 6d20 2d2d  & { ! rpm --
│ │ │ +001d38e0: 7175 6965 7420 2d71 206f 7065 6e73 6869  quiet -q openshi
│ │ │ +001d38f0: 6674 2d6b 7562 656c 6574 203b 7d20 2661  ft-kubelet ;} &a
│ │ │ +001d3900: 6d70 3b26 616d 703b 2028 5b20 2d66 202f  mp;& ([ -f /
│ │ │ +001d3910: 7275 6e2f 6f73 7472 6565 2d62 6f6f 7465  run/ostree-boote
│ │ │ +001d3920: 6420 5d20 7c7c 205b 202d 4c20 2f6f 7374  d ] || [ -L /ost
│ │ │ +001d3930: 7265 6520 5d29 2029 2026 616d 703b 2661  ree ]) ) &&a
│ │ │ +001d3940: 6d70 3b20 2120 2820 5b20 2d66 202f 2e64  mp; ! ( [ -f /.d
│ │ │ +001d3950: 6f63 6b65 7265 6e76 205d 207c 7c20 5b20  ockerenv ] || [ 
│ │ │ +001d3960: 2d66 202f 7275 6e2f 2e63 6f6e 7461 696e  -f /run/.contain
│ │ │ +001d3970: 6572 656e 7620 5d20 2920 2920 2661 6d70  erenv ] ) ) &
│ │ │ +001d3980: 3b26 616d 703b 207b 2028 2066 696e 646d  ;& { ( findm
│ │ │ +001d3990: 6e74 202d 2d6b 6572 6e65 6c20 222f 7661  nt --kernel "/va
│ │ │ +001d39a0: 722f 6c6f 6722 2026 6774 3b20 2f64 6576  r/log" > /dev
│ │ │ +001d39b0: 2f6e 756c 6c20 7c7c 2066 696e 646d 6e74  /null || findmnt
│ │ │ +001d39c0: 202d 2d66 7374 6162 2022 2f76 6172 2f6c   --fstab "/var/l
│ │ │ +001d39d0: 6f67 2220 2667 743b 202f 6465 762f 6e75  og" > /dev/nu
│ │ │ +001d39e0: 6c6c 2029 3b20 7d3b 2074 6865 6e0a 0a66  ll ); }; then..f
│ │ │ +001d39f0: 756e 6374 696f 6e20 7065 7266 6f72 6d5f  unction perform_
│ │ │ +001d3a00: 7265 6d65 6469 6174 696f 6e20 7b0a 0a20  remediation {.. 
│ │ │ +001d3a10: 2020 200a 2020 2020 2020 2020 2320 7468     .        # th
│ │ │ +001d3a20: 6520 6d6f 756e 7420 706f 696e 7420 2f76  e mount point /v
│ │ │ +001d3a30: 6172 2f6c 6f67 2068 6173 2074 6f20 6265  ar/log has to be
│ │ │ +001d3a40: 2064 6566 696e 6564 2069 6e20 2f65 7463   defined in /etc
│ │ │ +001d3a50: 2f66 7374 6162 0a20 2020 2020 2020 2023  /fstab.        #
│ │ │ +001d3a60: 2062 6566 6f72 6520 7468 6973 2072 656d   before this rem
│ │ │ +001d3a70: 6564 6961 7469 6f6e 2063 616e 2062 6520  ediation can be 
│ │ │ +001d3a80: 6578 6563 7574 6564 2e20 496e 2063 6173  executed. In cas
│ │ │ +001d3a90: 6520 6974 2069 7320 6e6f 7420 6465 6669  e it is not defi
│ │ │ +001d3aa0: 6e65 642c 2074 6865 0a20 2020 2020 2020  ned, the.       
│ │ │ +001d3ab0: 2023 2072 656d 6564 6961 7469 6f6e 2061   # remediation a
│ │ │ +001d3ac0: 626f 7274 7320 616e 6420 6e6f 2063 6861  borts and no cha
│ │ │ +001d3ad0: 6e67 6573 2072 6567 6172 6469 6e67 2074  nges regarding t
│ │ │ +001d3ae0: 6865 206d 6f75 6e74 2070 6f69 6e74 2061  he mount point a
│ │ │ +001d3af0: 7265 2064 6f6e 652e 0a20 2020 2020 2020  re done..       
│ │ │ +001d3b00: 206d 6f75 6e74 5f70 6f69 6e74 5f6d 6174   mount_point_mat
│ │ │ +001d3b10: 6368 5f72 6567 6578 703d 2224 2870 7269  ch_regexp="$(pri
│ │ │ +001d3b20: 6e74 6620 225e 5b5b 3a73 7061 6365 3a5d  ntf "^[[:space:]
│ │ │ +001d3b30: 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061 6365  ]*[^#].*[[:space
│ │ │ +001d3b40: 3a5d 5d25 735b 5b3a 7370 6163 653a 5d5d  :]]%s[[:space:]]
│ │ │ +001d3b50: 2220 222f 7661 722f 6c6f 6722 2922 0a0a  " "/var/log")"..
│ │ │ +001d3b60: 2020 2020 6772 6570 2022 246d 6f75 6e74      grep "$mount
│ │ │ +001d3b70: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001d3b80: 6578 7022 202d 7120 2f65 7463 2f66 7374  exp" -q /etc/fst
│ │ │ +001d3b90: 6162 205c 0a20 2020 2020 2020 207c 7c20  ab \.        || 
│ │ │ +001d3ba0: 7b20 6563 686f 2022 5468 6520 6d6f 756e  { echo "The moun
│ │ │ +001d3bb0: 7420 706f 696e 7420 272f 7661 722f 6c6f  t point '/var/lo
│ │ │ +001d3bc0: 6727 2069 7320 6e6f 7420 6576 656e 2069  g' is not even i
│ │ │ +001d3bd0: 6e20 2f65 7463 2f66 7374 6162 2c20 736f  n /etc/fstab, so
│ │ │ +001d3be0: 2077 6520 6361 6e27 7420 7365 7420 7570   we can't set up
│ │ │ +001d3bf0: 206d 6f75 6e74 206f 7074 696f 6e73 2220   mount options" 
│ │ │ +001d3c00: 2667 743b 2661 6d70 3b32 3b0a 2020 2020  >&2;.    
│ │ │ +001d3c10: 2020 2020 2020 2020 2020 2020 6563 686f              echo
│ │ │ +001d3c20: 2022 4e6f 7420 7265 6d65 6469 6174 696e   "Not remediatin
│ │ │ +001d3c30: 672c 2062 6563 6175 7365 2074 6865 7265  g, because there
│ │ │ +001d3c40: 2069 7320 6e6f 2072 6563 6f72 6420 6f66   is no record of
│ │ │ +001d3c50: 202f 7661 722f 6c6f 6720 696e 202f 6574   /var/log in /et
│ │ │ +001d3c60: 632f 6673 7461 6222 2026 6774 3b26 616d  c/fstab" >&am
│ │ │ +001d3c70: 703b 323b 2072 6574 7572 6e20 313b 207d  p;2; return 1; }
│ │ │ +001d3c80: 0a20 2020 200a 0a0a 2020 2020 6d6f 756e  .    ...    moun
│ │ │ +001d3c90: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001d3ca0: 6765 7870 3d22 2428 7072 696e 7466 2022  gexp="$(printf "
│ │ │ +001d3cb0: 5e5b 5b3a 7370 6163 653a 5d5d 2a5b 5e23  ^[[:space:]]*[^#
│ │ │ +001d3cc0: 5d2e 2a5b 5b3a 7370 6163 653a 5d5d 2573  ].*[[:space:]]%s
│ │ │ +001d3cd0: 5b5b 3a73 7061 6365 3a5d 5d22 202f 7661  [[:space:]]" /va
│ │ │ +001d3ce0: 722f 6c6f 6729 220a 0a20 2020 2023 2049  r/log)"..    # I
│ │ │ +001d3cf0: 6620 7468 6520 6d6f 756e 7420 706f 696e  f the mount poin
│ │ │ +001d3d00: 7420 6973 206e 6f74 2069 6e20 2f65 7463  t is not in /etc
│ │ │ +001d3d10: 2f66 7374 6162 2c20 6765 7420 7072 6576  /fstab, get prev
│ │ │ +001d3d20: 696f 7573 206d 6f75 6e74 206f 7074 696f  ious mount optio
│ │ │ +001d3d30: 6e73 2066 726f 6d20 2f65 7463 2f6d 7461  ns from /etc/mta
│ │ │ +001d3d40: 620a 2020 2020 6966 2021 2067 7265 7020  b.    if ! grep 
│ │ │ +001d3d50: 2d71 2022 246d 6f75 6e74 5f70 6f69 6e74  -q "$mount_point
│ │ │ +001d3d60: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ +001d3d70: 6574 632f 6673 7461 623b 2074 6865 6e0a  etc/fstab; then.
│ │ │ +001d3d80: 2020 2020 2020 2020 2320 7275 6e74 696d          # runtim
│ │ │ +001d3d90: 6520 6f70 7473 2077 6974 686f 7574 2073  e opts without s
│ │ │ +001d3da0: 6f6d 6520 6175 746f 6d61 7469 6320 6b65  ome automatic ke
│ │ │ +001d3db0: 726e 656c 2f75 7365 7273 7061 6365 2d61  rnel/userspace-a
│ │ │ +001d3dc0: 6464 6564 2064 6566 6175 6c74 730a 2020  dded defaults.  
│ │ │ +001d3dd0: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ +001d3de0: 6f75 6e74 5f6f 7074 733d 2428 6772 6570  ount_opts=$(grep
│ │ │ +001d3df0: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ +001d3e00: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ +001d3e10: 632f 6d74 6162 207c 2068 6561 6420 2d31  c/mtab | head -1
│ │ │ +001d3e20: 207c 2020 6177 6b20 277b 7072 696e 7420   |  awk '{print 
│ │ │ +001d3e30: 2434 7d27 205c 0a20 2020 2020 2020 2020  $4}' \.         
│ │ │ +001d3e40: 2020 2020 2020 2020 2020 207c 2073 6564             | sed
│ │ │ +001d3e50: 202d 4520 2273 2f28 7277 7c64 6566 6175   -E "s/(rw|defau
│ │ │ +001d3e60: 6c74 737c 7365 636c 6162 656c 7c6e 6f64  lts|seclabel|nod
│ │ │ +001d3e70: 6576 2928 2c7c 2429 2f2f 673b 732f 2c24  ev)(,|$)//g;s/,$
│ │ │ +001d3e80: 2f2f 2229 0a20 2020 2020 2020 205b 2022  //").        [ "
│ │ │ +001d3e90: 2470 7265 7669 6f75 735f 6d6f 756e 745f  $previous_mount_
│ │ │ +001d3ea0: 6f70 7473 2220 5d20 2661 6d70 3b26 616d  opts" ] &&am
│ │ │ +001d3eb0: 703b 2070 7265 7669 6f75 735f 6d6f 756e  p; previous_moun
│ │ │ +001d3ec0: 745f 6f70 7473 2b3d 222c 220a 2020 2020  t_opts+=",".    
│ │ │ +001d3ed0: 2020 2020 2320 496e 2069 736f 3936 3630      # In iso9660
│ │ │ +001d3ee0: 2066 696c 6573 7973 7465 6d73 206d 7461   filesystems mta
│ │ │ +001d3ef0: 6220 636f 756c 6420 6465 7363 7269 6265  b could describe
│ │ │ +001d3f00: 2061 2022 626c 6f63 6b73 697a 6522 2076   a "blocksize" v
│ │ │ +001d3f10: 616c 7565 2c20 7468 6973 2073 686f 756c  alue, this shoul
│ │ │ +001d3f20: 6420 6265 2072 6566 6c65 6374 6564 2069  d be reflected i
│ │ │ +001d3f30: 6e0a 2020 2020 2020 2020 2320 6673 7461  n.        # fsta
│ │ │ +001d3f40: 6220 6173 2022 626c 6f63 6b22 2e20 2054  b as "block".  T
│ │ │ +001d3f50: 6865 206e 6578 7420 7661 7269 6162 6c65  he next variable
│ │ │ +001d3f60: 2069 7320 746f 2073 6174 6973 6679 2073   is to satisfy s
│ │ │ +001d3f70: 6865 6c6c 6368 6563 6b20 5343 3230 3530  hellcheck SC2050
│ │ │ +001d3f80: 2e0a 2020 2020 2020 2020 6673 5f74 7970  ..        fs_typ
│ │ │ +001d3f90: 653d 2222 0a20 2020 2020 2020 2069 6620  e="".        if 
│ │ │ +001d3fa0: 5b20 2022 2466 735f 7479 7065 2220 3d3d  [  "$fs_type" ==
│ │ │ +001d3fb0: 2022 6973 6f39 3636 3022 205d 203b 2074   "iso9660" ] ; t
│ │ │ +001d3fc0: 6865 6e0a 2020 2020 2020 2020 2020 2020  hen.            
│ │ │ +001d3fd0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001d3fe0: 7074 733d 2428 7365 6420 2773 2f62 6c6f  pts=$(sed 's/blo
│ │ │ +001d3ff0: 636b 7369 7a65 3d2f 626c 6f63 6b3d 2f27  cksize=/block=/'
│ │ │ +001d4000: 2026 6c74 3b26 6c74 3b26 6c74 3b20 2224   <<< "$
│ │ │ +001d4010: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001d4020: 7074 7322 290a 2020 2020 2020 2020 6669  pts").        fi
│ │ │ +001d4030: 0a20 2020 2020 2020 2065 6368 6f20 2220  .        echo " 
│ │ │ +001d4040: 2f76 6172 2f6c 6f67 2020 6465 6661 756c  /var/log  defaul
│ │ │ +001d4050: 7473 2c24 7b70 7265 7669 6f75 735f 6d6f  ts,${previous_mo
│ │ │ +001d4060: 756e 745f 6f70 7473 7d6e 6f64 6576 2030  unt_opts}nodev 0
│ │ │ +001d4070: 2030 2220 2667 743b 2667 743b 202f 6574   0" >> /et
│ │ │ +001d4080: 632f 6673 7461 620a 2020 2020 2320 4966  c/fstab.    # If
│ │ │ +001d4090: 2074 6865 206d 6f75 6e74 5f6f 7074 206f   the mount_opt o
│ │ │ +001d40a0: 7074 696f 6e20 6973 206e 6f74 2061 6c72  ption is not alr
│ │ │ +001d40b0: 6561 6479 2069 6e20 7468 6520 6d6f 756e  eady in the moun
│ │ │ +001d40c0: 7420 706f 696e 7427 7320 2f65 7463 2f66  t point's /etc/f
│ │ │ +001d40d0: 7374 6162 2065 6e74 7279 2c20 6164 6420  stab entry, add 
│ │ │ +001d40e0: 6974 0a20 2020 2065 6c69 6620 2120 6772  it.    elif ! gr
│ │ │ +001d40f0: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ +001d4100: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ +001d4110: 6574 632f 6673 7461 6220 7c20 6772 6570  etc/fstab | grep
│ │ │ +001d4120: 202d 7120 226e 6f64 6576 223b 2074 6865   -q "nodev"; the
│ │ │ +001d4130: 6e0a 2020 2020 2020 2020 7072 6576 696f  n.        previo
│ │ │ +001d4140: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ +001d4150: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ +001d4160: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ +001d4170: 202f 6574 632f 6673 7461 6220 7c20 6177   /etc/fstab | aw
│ │ │ +001d4180: 6b20 277b 7072 696e 7420 2434 7d27 290a  k '{print $4}').
│ │ │ +001d4190: 2020 2020 2020 2020 7365 6420 2d69 2022          sed -i "
│ │ │ +001d41a0: 737c 5c28 247b 6d6f 756e 745f 706f 696e  s|\(${mount_poin
│ │ │ +001d41b0: 745f 6d61 7463 685f 7265 6765 7870 7d2e  t_match_regexp}.
│ │ │ +001d41c0: 2a24 7b70 7265 7669 6f75 735f 6d6f 756e  *${previous_moun
│ │ │ +001d41d0: 745f 6f70 7473 7d5c 297c 5c31 2c6e 6f64  t_opts}\)|\1,nod
│ │ │ +001d41e0: 6576 7c22 202f 6574 632f 6673 7461 620a  ev|" /etc/fstab.
│ │ │ +001d41f0: 2020 2020 6669 0a0a 0a20 2020 2069 6620      fi...    if 
│ │ │ +001d4200: 6d6b 6469 7220 2d70 2022 2f76 6172 2f6c  mkdir -p "/var/l
│ │ │ +001d4210: 6f67 223b 2074 6865 6e0a 2020 2020 2020  og"; then.      
│ │ │ +001d4220: 2020 6966 206d 6f75 6e74 706f 696e 7420    if mountpoint 
│ │ │ +001d4230: 2d71 2022 2f76 6172 2f6c 6f67 223b 2074  -q "/var/log"; t
│ │ │ +001d4240: 6865 6e0a 2020 2020 2020 2020 2020 2020  hen.            
│ │ │ +001d4250: 6d6f 756e 7420 2d6f 2072 656d 6f75 6e74  mount -o remount
│ │ │ +001d4260: 202d 2d74 6172 6765 7420 222f 7661 722f   --target "/var/
│ │ │ +001d4270: 6c6f 6722 0a20 2020 2020 2020 2066 690a  log".        fi.
│ │ │ +001d4280: 2020 2020 6669 0a7d 0a0a 7065 7266 6f72      fi.}..perfor
│ │ │ +001d4290: 6d5f 7265 6d65 6469 6174 696f 6e0a 0a65  m_remediation..e
│ │ │ +001d42a0: 6c73 650a 2020 2020 2667 743b 2661 6d70  lse.    >&
│ │ │ +001d42b0: 3b32 2065 6368 6f20 2752 656d 6564 6961  ;2 echo 'Remedia
│ │ │ +001d42c0: 7469 6f6e 2069 7320 6e6f 7420 6170 706c  tion is not appl
│ │ │ +001d42d0: 6963 6162 6c65 2c20 6e6f 7468 696e 6720  icable, nothing 
│ │ │ +001d42e0: 7761 7320 646f 6e65 270a 6669 0a3c 2f63  was done'.fi.
│ │ │ +001d4300: 3c61 2063 6c61 7373 3d22 6274 6e20 6274
Rem │ │ │ +001d43a0: 6564 6961 7469 6f6e 2041 6e61 636f 6e64 ediation Anacond │ │ │ +001d43b0: 6120 736e 6970 7065 7420 e287 b23c 2f61 a snippet ...
│ │ │ +001d37f0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +001d3800: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
< │ │ │ +001d4450: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +001d4460: 3c74 723e 3c74 683e 4469 7372 7570 7469 Reboot:false
.p
│ │ │ +001d44f0: 6172 7420 2f76 6172 2f6c 6f67 202d 2d6d  art /var/log --m
│ │ │ +001d4500: 6f75 6e74 6f70 7469 6f6e 733d 226e 6f64  ountoptions="nod
│ │ │ +001d4510: 6576 220a 3c2f 636f 6465 3e3c 2f70 7265  ev".
< │ │ │ 001d4540: 2f74 6162 6c65 3e3c 2f74 643e 3c2f 7472 /table>Rem │ │ │ -001d5140: 6564 6961 7469 6f6e 2041 6e61 636f 6e64 ediation Anacond │ │ │ -001d5150: 6120 736e 6970 7065 7420 e287 b23c 2f61 a snippet ...
C │ │ │ +001d4440: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +001d4470: 6f6e 3a3c 2f74 683e 3c74 643e 6869 6768 on:high │ │ │ +001d4480: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +001d44c0: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ +001d44d0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ -001d51f0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -001d5200: 3c74 723e 3c74 683e 4469 7372 7570 7469 Reboot:false
.p
│ │ │ -001d5290: 6172 7420 2f76 6172 2f6c 6f67 202d 2d6d  art /var/log --m
│ │ │ -001d52a0: 6f75 6e74 6f70 7469 6f6e 733d 226e 6f65  ountoptions="noe
│ │ │ -001d52b0: 7865 6322 0a3c 2f63 6f64 653e 3c2f 7072  xec".Remediation
│ │ │ -001d5370: 2041 6e73 6962 6c65 2073 6e69 7070 6574   Ansible snippet
│ │ │ -001d5380: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
< │ │ │ -001d5440: 7464 3e68 6967 683c 2f74 643e 3c2f 7472 td>highconfigure │ │ │ -001d54a0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
C │ │ │ -001d51e0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -001d5210: 6f6e 3a3c 2f74 683e 3c74 643e 6869 6768 on:high │ │ │ -001d5220: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -001d5260: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -001d5270: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexity │ │ │ -001d5410: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ -001d5430: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot: │ │ │ -001d5460: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ -001d5480: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
- name: │ │ │ -001d54c0: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ -001d54d0: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ -001d54e0: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ -001d54f0: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ -001d5500: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ -001d5510: 2d35 332d 4143 2d36 0a20 202d 204e 4953 -53-AC-6. - NIS │ │ │ -001d5520: 542d 3830 302d 3533 2d41 432d 3628 3129 T-800-53-AC-6(1) │ │ │ -001d5530: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001d5540: 2d43 4d2d 3628 6129 0a20 202d 204e 4953 -CM-6(a). - NIS │ │ │ -001d5550: 542d 3830 302d 3533 2d43 4d2d 3728 6129 T-800-53-CM-7(a) │ │ │ -001d5560: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001d5570: 2d43 4d2d 3728 6229 0a20 202d 204e 4953 -CM-7(b). - NIS │ │ │ -001d5580: 542d 3830 302d 3533 2d4d 502d 370a 2020 T-800-53-MP-7. │ │ │ -001d5590: 2d20 636f 6e66 6967 7572 655f 7374 7261 - configure_stra │ │ │ -001d55a0: 7465 6779 0a20 202d 2068 6967 685f 6469 tegy. - high_di │ │ │ -001d55b0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77 sruption. - low │ │ │ -001d55c0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ -001d55d0: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ -001d55e0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e - mount_option │ │ │ -001d55f0: 5f76 6172 5f6c 6f67 5f6e 6f65 7865 630a _var_log_noexec. │ │ │ -001d5600: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ -001d5610: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741 eded..- name: 'A │ │ │ -001d5620: 6464 206e 6f65 7865 6320 4f70 7469 6f6e dd noexec Option │ │ │ -001d5630: 2074 6f20 2f76 6172 2f6c 6f67 3a20 4368 to /var/log: Ch │ │ │ -001d5640: 6563 6b20 696e 666f 726d 6174 696f 6e20 eck information │ │ │ -001d5650: 6173 736f 6369 6174 6564 2074 6f20 6d6f associated to mo │ │ │ -001d5660: 756e 7470 6f69 6e74 270a 2020 616e 7369 untpoint'. ansi │ │ │ -001d5670: 626c 652e 6275 696c 7469 6e2e 636f 6d6d ble.builtin.comm │ │ │ -001d5680: 616e 643a 2066 696e 646d 6e74 202d 2d66 and: findmnt --f │ │ │ -001d5690: 7374 6162 2027 2f76 6172 2f6c 6f67 270a stab '/var/log'. │ │ │ -001d56a0: 2020 7265 6769 7374 6572 3a20 6465 7669 register: devi │ │ │ -001d56b0: 6365 5f6e 616d 650a 2020 6661 696c 6564 ce_name. failed │ │ │ -001d56c0: 5f77 6865 6e3a 2064 6576 6963 655f 6e61 _when: device_na │ │ │ -001d56d0: 6d65 2e72 6320 2667 743b 2031 0a20 2063 me.rc > 1. c │ │ │ -001d56e0: 6861 6e67 6564 5f77 6865 6e3a 2066 616c hanged_when: fal │ │ │ -001d56f0: 7365 0a20 2063 6865 636b 5f6d 6f64 653a se. check_mode: │ │ │ -001d5700: 2066 616c 7365 0a20 2077 6865 6e3a 0a20 false. when:. │ │ │ -001d5710: 202d 2028 206e 6f74 2028 2022 6b65 726e - ( not ( "kern │ │ │ -001d5720: 656c 2220 696e 2061 6e73 6962 6c65 5f66 el" in ansible_f │ │ │ -001d5730: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ -001d5740: 6420 2272 706d 2d6f 7374 7265 6522 2069 d "rpm-ostree" i │ │ │ -001d5750: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001d5760: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ -001d5770: 2022 626f 6f74 6322 2069 6e20 616e 7369 "bootc" in ansi │ │ │ -001d5780: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -001d5790: 6573 2061 6e64 206e 6f74 2022 6f70 656e es and not "open │ │ │ -001d57a0: 7368 6966 742d 6b75 6265 6c65 7422 2069 shift-kubelet" i │ │ │ -001d57b0: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001d57c0: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ -001d57d0: 2022 6f73 7472 6565 2220 696e 2061 6e73 "ostree" in ans │ │ │ -001d57e0: 6962 6c65 5f70 726f 635f 636d 646c 696e ible_proc_cmdlin │ │ │ -001d57f0: 6520 2920 616e 6420 6e6f 7420 2820 616e e ) and not ( an │ │ │ -001d5800: 7369 626c 655f 7669 7274 7561 6c69 7a61 sible_virtualiza │ │ │ -001d5810: 7469 6f6e 5f74 7970 6520 696e 0a20 2020 tion_type in. │ │ │ -001d5820: 205b 2264 6f63 6b65 7222 2c20 226c 7863 ["docker", "lxc │ │ │ -001d5830: 222c 2022 6f70 656e 767a 222c 2022 706f ", "openvz", "po │ │ │ -001d5840: 646d 616e 222c 2022 636f 6e74 6169 6e65 dman", "containe │ │ │ -001d5850: 7222 5d20 2920 290a 2020 2d20 2722 2f76 r"] ) ). - '"/v │ │ │ -001d5860: 6172 2f6c 6f67 2220 696e 2061 6e73 6962 ar/log" in ansib │ │ │ -001d5870: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028 le_mounts | map( │ │ │ -001d5880: 6174 7472 6962 7574 653d 226d 6f75 6e74 attribute="mount │ │ │ -001d5890: 2229 207c 206c 6973 7427 0a20 2074 6167 ") | list'. tag │ │ │ -001d58a0: 733a 0a20 202d 204e 4953 542d 3830 302d s:. - NIST-800- │ │ │ -001d58b0: 3533 2d41 432d 360a 2020 2d20 4e49 5354 53-AC-6. - NIST │ │ │ -001d58c0: 2d38 3030 2d35 332d 4143 2d36 2831 290a -800-53-AC-6(1). │ │ │ -001d58d0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -001d58e0: 434d 2d36 2861 290a 2020 2d20 4e49 5354 CM-6(a). - NIST │ │ │ -001d58f0: 2d38 3030 2d35 332d 434d 2d37 2861 290a -800-53-CM-7(a). │ │ │ -001d5900: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -001d5910: 434d 2d37 2862 290a 2020 2d20 4e49 5354 CM-7(b). - NIST │ │ │ -001d5920: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d -800-53-MP-7. - │ │ │ -001d5930: 2063 6f6e 6669 6775 7265 5f73 7472 6174 configure_strat │ │ │ -001d5940: 6567 790a 2020 2d20 6869 6768 5f64 6973 egy. - high_dis │ │ │ -001d5950: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f ruption. - low_ │ │ │ -001d5960: 636f 6d70 6c65 7869 7479 0a20 202d 206d complexity. - m │ │ │ -001d5970: 6564 6975 6d5f 7365 7665 7269 7479 0a20 edium_severity. │ │ │ -001d5980: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f - mount_option_ │ │ │ -001d5990: 7661 725f 6c6f 675f 6e6f 6578 6563 0a20 var_log_noexec. │ │ │ -001d59a0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ -001d59b0: 6465 640a 0a2d 206e 616d 653a 2027 4164 ded..- name: 'Ad │ │ │ -001d59c0: 6420 6e6f 6578 6563 204f 7074 696f 6e20 d noexec Option │ │ │ -001d59d0: 746f 202f 7661 722f 6c6f 673a 2043 7265 to /var/log: Cre │ │ │ -001d59e0: 6174 6520 6d6f 756e 745f 696e 666f 2064 ate mount_info d │ │ │ -001d59f0: 6963 7469 6f6e 6172 7920 7661 7269 6162 ictionary variab │ │ │ -001d5a00: 6c65 270a 2020 7365 745f 6661 6374 3a0a le'. set_fact:. │ │ │ -001d5a10: 2020 2020 6d6f 756e 745f 696e 666f 3a20 mount_info: │ │ │ -001d5a20: 277b 7b20 6d6f 756e 745f 696e 666f 7c64 '{{ mount_info|d │ │ │ -001d5a30: 6566 6175 6c74 287b 7d29 7c63 6f6d 6269 efault({})|combi │ │ │ -001d5a40: 6e65 287b 6974 656d 2e30 3a20 6974 656d ne({item.0: item │ │ │ -001d5a50: 2e31 7d29 207d 7d27 0a20 2077 6974 685f .1}) }}'. with_ │ │ │ -001d5a60: 746f 6765 7468 6572 3a0a 2020 2d20 277b together:. - '{ │ │ │ -001d5a70: 7b20 6465 7669 6365 5f6e 616d 652e 7374 { device_name.st │ │ │ -001d5a80: 646f 7574 5f6c 696e 6573 5b30 5d2e 7370 dout_lines[0].sp │ │ │ -001d5a90: 6c69 7428 2920 7c20 6d61 7028 2727 6c6f lit() | map(''lo │ │ │ -001d5aa0: 7765 7227 2729 207c 206c 6973 7420 7d7d wer'') | list }} │ │ │ -001d5ab0: 270a 2020 2d20 277b 7b20 6465 7669 6365 '. - '{{ device │ │ │ -001d5ac0: 5f6e 616d 652e 7374 646f 7574 5f6c 696e _name.stdout_lin │ │ │ -001d5ad0: 6573 5b31 5d2e 7370 6c69 7428 2920 7c20 es[1].split() | │ │ │ -001d5ae0: 6c69 7374 207d 7d27 0a20 2077 6865 6e3a list }}'. when: │ │ │ -001d5af0: 0a20 202d 2028 206e 6f74 2028 2022 6b65 . - ( not ( "ke │ │ │ -001d5b00: 726e 656c 2220 696e 2061 6e73 6962 6c65 rnel" in ansible │ │ │ -001d5b10: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ -001d5b20: 616e 6420 2272 706d 2d6f 7374 7265 6522 and "rpm-ostree" │ │ │ -001d5b30: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -001d5b40: 732e 7061 636b 6167 6573 0a20 2020 2061 s.packages. a │ │ │ -001d5b50: 6e64 2022 626f 6f74 6322 2069 6e20 616e nd "bootc" in an │ │ │ -001d5b60: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ -001d5b70: 6167 6573 2061 6e64 206e 6f74 2022 6f70 ages and not "op │ │ │ -001d5b80: 656e 7368 6966 742d 6b75 6265 6c65 7422 enshift-kubelet" │ │ │ -001d5b90: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -001d5ba0: 732e 7061 636b 6167 6573 0a20 2020 2061 s.packages. a │ │ │ -001d5bb0: 6e64 2022 6f73 7472 6565 2220 696e 2061 nd "ostree" in a │ │ │ -001d5bc0: 6e73 6962 6c65 5f70 726f 635f 636d 646c nsible_proc_cmdl │ │ │ -001d5bd0: 696e 6520 2920 616e 6420 6e6f 7420 2820 ine ) and not ( │ │ │ -001d5be0: 616e 7369 626c 655f 7669 7274 7561 6c69 ansible_virtuali │ │ │ -001d5bf0: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20 zation_type in. │ │ │ -001d5c00: 2020 205b 2264 6f63 6b65 7222 2c20 226c ["docker", "l │ │ │ -001d5c10: 7863 222c 2022 6f70 656e 767a 222c 2022 xc", "openvz", " │ │ │ -001d5c20: 706f 646d 616e 222c 2022 636f 6e74 6169 podman", "contai │ │ │ -001d5c30: 6e65 7222 5d20 2920 290a 2020 2d20 2722 ner"] ) ). - '" │ │ │ -001d5c40: 2f76 6172 2f6c 6f67 2220 696e 2061 6e73 /var/log" in ans │ │ │ -001d5c50: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61 ible_mounts | ma │ │ │ -001d5c60: 7028 6174 7472 6962 7574 653d 226d 6f75 p(attribute="mou │ │ │ -001d5c70: 6e74 2229 207c 206c 6973 7427 0a20 202d nt") | list'. - │ │ │ -001d5c80: 2064 6576 6963 655f 6e61 6d65 2e73 7464 device_name.std │ │ │ -001d5c90: 6f75 7420 6973 2064 6566 696e 6564 2061 out is defined a │ │ │ -001d5ca0: 6e64 2064 6576 6963 655f 6e61 6d65 2e73 nd device_name.s │ │ │ -001d5cb0: 7464 6f75 745f 6c69 6e65 7320 6973 2064 tdout_lines is d │ │ │ -001d5cc0: 6566 696e 6564 0a20 202d 2028 6465 7669 efined. - (devi │ │ │ -001d5cd0: 6365 5f6e 616d 652e 7374 646f 7574 207c ce_name.stdout | │ │ │ -001d5ce0: 206c 656e 6774 6820 2667 743b 2030 290a length > 0). │ │ │ -001d5cf0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354 tags:. - NIST │ │ │ -001d5d00: 2d38 3030 2d35 332d 4143 2d36 0a20 202d -800-53-AC-6. - │ │ │ -001d5d10: 204e 4953 542d 3830 302d 3533 2d41 432d NIST-800-53-AC- │ │ │ -001d5d20: 3628 3129 0a20 202d 204e 4953 542d 3830 6(1). - NIST-80 │ │ │ -001d5d30: 302d 3533 2d43 4d2d 3628 6129 0a20 202d 0-53-CM-6(a). - │ │ │ -001d5d40: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ -001d5d50: 3728 6129 0a20 202d 204e 4953 542d 3830 7(a). - NIST-80 │ │ │ -001d5d60: 302d 3533 2d43 4d2d 3728 6229 0a20 202d 0-53-CM-7(b). - │ │ │ -001d5d70: 204e 4953 542d 3830 302d 3533 2d4d 502d NIST-800-53-MP- │ │ │ -001d5d80: 370a 2020 2d20 636f 6e66 6967 7572 655f 7. - configure_ │ │ │ -001d5d90: 7374 7261 7465 6779 0a20 202d 2068 6967 strategy. - hig │ │ │ -001d5da0: 685f 6469 7372 7570 7469 6f6e 0a20 202d h_disruption. - │ │ │ -001d5db0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a low_complexity. │ │ │ -001d5dc0: 2020 2d20 6d65 6469 756d 5f73 6576 6572 - medium_sever │ │ │ -001d5dd0: 6974 790a 2020 2d20 6d6f 756e 745f 6f70 ity. - mount_op │ │ │ -001d5de0: 7469 6f6e 5f76 6172 5f6c 6f67 5f6e 6f65 tion_var_log_noe │ │ │ -001d5df0: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f xec. - no_reboo │ │ │ -001d5e00: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65 t_needed..- name │ │ │ -001d5e10: 3a20 2741 6464 206e 6f65 7865 6320 4f70 : 'Add noexec Op │ │ │ -001d5e20: 7469 6f6e 2074 6f20 2f76 6172 2f6c 6f67 tion to /var/log │ │ │ -001d5e30: 3a20 4966 202f 7661 722f 6c6f 6720 6e6f : If /var/log no │ │ │ -001d5e40: 7420 6d6f 756e 7465 642c 2063 7261 6674 t mounted, craft │ │ │ -001d5e50: 206d 6f75 6e74 5f69 6e66 6f0a 2020 2020 mount_info. │ │ │ -001d5e60: 6d61 6e75 616c 6c79 270a 2020 7365 745f manually'. set_ │ │ │ -001d5e70: 6661 6374 3a0a 2020 2020 6d6f 756e 745f fact:. mount_ │ │ │ -001d5e80: 696e 666f 3a20 277b 7b20 6d6f 756e 745f info: '{{ mount_ │ │ │ -001d5e90: 696e 666f 7c64 6566 6175 6c74 287b 7d29 info|default({}) │ │ │ -001d5ea0: 7c63 6f6d 6269 6e65 287b 6974 656d 2e30 |combine({item.0 │ │ │ -001d5eb0: 3a20 6974 656d 2e31 7d29 207d 7d27 0a20 : item.1}) }}'. │ │ │ -001d5ec0: 2077 6974 685f 746f 6765 7468 6572 3a0a with_together:. │ │ │ -001d5ed0: 2020 2d20 2d20 7461 7267 6574 0a20 2020 - - target. │ │ │ -001d5ee0: 202d 2073 6f75 7263 650a 2020 2020 2d20 - source. - │ │ │ -001d5ef0: 6673 7479 7065 0a20 2020 202d 206f 7074 fstype. - opt │ │ │ -001d5f00: 696f 6e73 0a20 202d 202d 202f 7661 722f ions. - - /var/ │ │ │ -001d5f10: 6c6f 670a 2020 2020 2d20 2727 0a20 2020 log. - ''. │ │ │ -001d5f20: 202d 2027 270a 2020 2020 2d20 6465 6661 - ''. - defa │ │ │ -001d5f30: 756c 7473 0a20 2077 6865 6e3a 0a20 202d ults. when:. - │ │ │ -001d5f40: 2028 206e 6f74 2028 2022 6b65 726e 656c ( not ( "kernel │ │ │ -001d5f50: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -001d5f60: 7473 2e70 6163 6b61 6765 7320 616e 6420 ts.packages and │ │ │ -001d5f70: 2272 706d 2d6f 7374 7265 6522 2069 6e20 "rpm-ostree" in │ │ │ -001d5f80: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -001d5f90: 636b 6167 6573 0a20 2020 2061 6e64 2022 ckages. and " │ │ │ -001d5fa0: 626f 6f74 6322 2069 6e20 616e 7369 626c bootc" in ansibl │ │ │ -001d5fb0: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -001d5fc0: 2061 6e64 206e 6f74 2022 6f70 656e 7368 and not "opensh │ │ │ -001d5fd0: 6966 742d 6b75 6265 6c65 7422 2069 6e20 ift-kubelet" in │ │ │ -001d5fe0: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -001d5ff0: 636b 6167 6573 0a20 2020 2061 6e64 2022 ckages. and " │ │ │ -001d6000: 6f73 7472 6565 2220 696e 2061 6e73 6962 ostree" in ansib │ │ │ -001d6010: 6c65 5f70 726f 635f 636d 646c 696e 6520 le_proc_cmdline │ │ │ -001d6020: 2920 616e 6420 6e6f 7420 2820 616e 7369 ) and not ( ansi │ │ │ -001d6030: 626c 655f 7669 7274 7561 6c69 7a61 7469 ble_virtualizati │ │ │ -001d6040: 6f6e 5f74 7970 6520 696e 0a20 2020 205b on_type in. [ │ │ │ -001d6050: 2264 6f63 6b65 7222 2c20 226c 7863 222c "docker", "lxc", │ │ │ -001d6060: 2022 6f70 656e 767a 222c 2022 706f 646d "openvz", "podm │ │ │ -001d6070: 616e 222c 2022 636f 6e74 6169 6e65 7222 an", "container" │ │ │ -001d6080: 5d20 2920 290a 2020 2d20 2722 2f76 6172 ] ) ). - '"/var │ │ │ -001d6090: 2f6c 6f67 2220 696e 2061 6e73 6962 6c65 /log" in ansible │ │ │ -001d60a0: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174 _mounts | map(at │ │ │ -001d60b0: 7472 6962 7574 653d 226d 6f75 6e74 2229 tribute="mount") │ │ │ -001d60c0: 207c 206c 6973 7427 0a20 202d 2028 222d | list'. - ("- │ │ │ -001d60d0: 2d66 7374 6162 2220 7c20 6c65 6e67 7468 -fstab" | length │ │ │ -001d60e0: 203d 3d20 3029 0a20 202d 2064 6576 6963 == 0). - devic │ │ │ -001d60f0: 655f 6e61 6d65 2e73 7464 6f75 7420 6973 e_name.stdout is │ │ │ -001d6100: 2064 6566 696e 6564 2061 6e64 2064 6576 defined and dev │ │ │ -001d6110: 6963 655f 6e61 6d65 2e73 7464 6f75 745f ice_name.stdout_ │ │ │ -001d6120: 6c69 6e65 7320 6973 2064 6566 696e 6564 lines is defined │ │ │ -001d6130: 0a20 202d 2028 6465 7669 6365 5f6e 616d . - (device_nam │ │ │ -001d6140: 652e 7374 646f 7574 207c 206c 656e 6774 e.stdout | lengt │ │ │ -001d6150: 6820 3d3d 2030 290a 2020 7461 6773 3a0a h == 0). tags:. │ │ │ -001d6160: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -001d6170: 4143 2d36 0a20 202d 204e 4953 542d 3830 AC-6. - NIST-80 │ │ │ -001d6180: 302d 3533 2d41 432d 3628 3129 0a20 202d 0-53-AC-6(1). - │ │ │ -001d6190: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ -001d61a0: 3628 6129 0a20 202d 204e 4953 542d 3830 6(a). - NIST-80 │ │ │ -001d61b0: 302d 3533 2d43 4d2d 3728 6129 0a20 202d 0-53-CM-7(a). - │ │ │ -001d61c0: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ -001d61d0: 3728 6229 0a20 202d 204e 4953 542d 3830 7(b). - NIST-80 │ │ │ -001d61e0: 302d 3533 2d4d 502d 370a 2020 2d20 636f 0-53-MP-7. - co │ │ │ -001d61f0: 6e66 6967 7572 655f 7374 7261 7465 6779 nfigure_strategy │ │ │ -001d6200: 0a20 202d 2068 6967 685f 6469 7372 7570 . - high_disrup │ │ │ -001d6210: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d tion. - low_com │ │ │ -001d6220: 706c 6578 6974 790a 2020 2d20 6d65 6469 plexity. - medi │ │ │ -001d6230: 756d 5f73 6576 6572 6974 790a 2020 2d20 um_severity. - │ │ │ -001d6240: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172 mount_option_var │ │ │ -001d6250: 5f6c 6f67 5f6e 6f65 7865 630a 2020 2d20 _log_noexec. - │ │ │ -001d6260: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564 no_reboot_needed │ │ │ -001d6270: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e ..- name: 'Add n │ │ │ -001d6280: 6f65 7865 6320 4f70 7469 6f6e 2074 6f20 oexec Option to │ │ │ -001d6290: 2f76 6172 2f6c 6f67 3a20 4d61 6b65 2073 /var/log: Make s │ │ │ -001d62a0: 7572 6520 6e6f 6578 6563 206f 7074 696f ure noexec optio │ │ │ -001d62b0: 6e20 6973 2070 6172 7420 6f66 2074 6865 n is part of the │ │ │ -001d62c0: 2074 6f0a 2020 2020 2f76 6172 2f6c 6f67 to. /var/log │ │ │ -001d62d0: 206f 7074 696f 6e73 270a 2020 7365 745f options'. set_ │ │ │ -001d62e0: 6661 6374 3a0a 2020 2020 6d6f 756e 745f fact:. mount_ │ │ │ -001d62f0: 696e 666f 3a20 277b 7b20 6d6f 756e 745f info: '{{ mount_ │ │ │ -001d6300: 696e 666f 207c 2063 6f6d 6269 6e65 2820 info | combine( │ │ │ -001d6310: 7b27 276f 7074 696f 6e73 2727 3a27 2727 {''options'':''' │ │ │ -001d6320: 277e 286d 6f75 6e74 5f69 6e66 6f2e 6f70 '~(mount_info.op │ │ │ -001d6330: 7469 6f6e 7320 7c0a 2020 2020 2020 6465 tions |. de │ │ │ -001d6340: 6661 756c 7428 2727 2727 2929 7e28 2727 fault(''''))~('' │ │ │ -001d6350: 2c27 2720 6966 2028 6d6f 756e 745f 696e ,'' if (mount_in │ │ │ -001d6360: 666f 2e6f 7074 696f 6e73 207c 2064 6566 fo.options | def │ │ │ -001d6370: 6175 6c74 2827 2727 2729 2920 656c 7365 ault('''')) else │ │ │ -001d6380: 2027 2727 2729 7e27 276e 6f65 7865 6327 '''')~''noexec' │ │ │ -001d6390: 270a 2020 2020 2020 7d29 207d 7d27 0a20 '. }) }}'. │ │ │ -001d63a0: 2077 6865 6e3a 0a20 202d 2028 206e 6f74 when:. - ( not │ │ │ -001d63b0: 2028 2022 6b65 726e 656c 2220 696e 2061 ( "kernel" in a │ │ │ -001d63c0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ -001d63d0: 6b61 6765 7320 616e 6420 2272 706d 2d6f kages and "rpm-o │ │ │ -001d63e0: 7374 7265 6522 2069 6e20 616e 7369 626c stree" in ansibl │ │ │ -001d63f0: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -001d6400: 0a20 2020 2061 6e64 2022 626f 6f74 6322 . and "bootc" │ │ │ -001d6410: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -001d6420: 732e 7061 636b 6167 6573 2061 6e64 206e s.packages and n │ │ │ -001d6430: 6f74 2022 6f70 656e 7368 6966 742d 6b75 ot "openshift-ku │ │ │ -001d6440: 6265 6c65 7422 2069 6e20 616e 7369 626c belet" in ansibl │ │ │ -001d6450: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -001d6460: 0a20 2020 2061 6e64 2022 6f73 7472 6565 . and "ostree │ │ │ -001d6470: 2220 696e 2061 6e73 6962 6c65 5f70 726f " in ansible_pro │ │ │ -001d6480: 635f 636d 646c 696e 6520 2920 616e 6420 c_cmdline ) and │ │ │ -001d6490: 6e6f 7420 2820 616e 7369 626c 655f 7669 not ( ansible_vi │ │ │ -001d64a0: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970 rtualization_typ │ │ │ -001d64b0: 6520 696e 0a20 2020 205b 2264 6f63 6b65 e in. ["docke │ │ │ -001d64c0: 7222 2c20 226c 7863 222c 2022 6f70 656e r", "lxc", "open │ │ │ -001d64d0: 767a 222c 2022 706f 646d 616e 222c 2022 vz", "podman", " │ │ │ -001d64e0: 636f 6e74 6169 6e65 7222 5d20 2920 290a container"] ) ). │ │ │ -001d64f0: 2020 2d20 2722 2f76 6172 2f6c 6f67 2220 - '"/var/log" │ │ │ -001d6500: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74 in ansible_mount │ │ │ -001d6510: 7320 7c20 6d61 7028 6174 7472 6962 7574 s | map(attribut │ │ │ -001d6520: 653d 226d 6f75 6e74 2229 207c 206c 6973 e="mount") | lis │ │ │ -001d6530: 7427 0a20 202d 206d 6f75 6e74 5f69 6e66 t'. - mount_inf │ │ │ -001d6540: 6f20 6973 2064 6566 696e 6564 2061 6e64 o is defined and │ │ │ -001d6550: 2022 6e6f 6578 6563 2220 6e6f 7420 696e "noexec" not in │ │ │ -001d6560: 2028 6d6f 756e 745f 696e 666f 2e6f 7074 (mount_info.opt │ │ │ -001d6570: 696f 6e73 207c 2064 6566 6175 6c74 2827 ions | default(' │ │ │ -001d6580: 2729 290a 2020 7461 6773 3a0a 2020 2d20 ')). tags:. - │ │ │ -001d6590: 4e49 5354 2d38 3030 2d35 332d 4143 2d36 NIST-800-53-AC-6 │ │ │ -001d65a0: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001d65b0: 2d41 432d 3628 3129 0a20 202d 204e 4953 -AC-6(1). - NIS │ │ │ -001d65c0: 542d 3830 302d 3533 2d43 4d2d 3628 6129 T-800-53-CM-6(a) │ │ │ -001d65d0: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001d65e0: 2d43 4d2d 3728 6129 0a20 202d 204e 4953 -CM-7(a). - NIS │ │ │ -001d65f0: 542d 3830 302d 3533 2d43 4d2d 3728 6229 T-800-53-CM-7(b) │ │ │ -001d6600: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001d6610: 2d4d 502d 370a 2020 2d20 636f 6e66 6967 -MP-7. - config │ │ │ -001d6620: 7572 655f 7374 7261 7465 6779 0a20 202d ure_strategy. - │ │ │ -001d6630: 2068 6967 685f 6469 7372 7570 7469 6f6e high_disruption │ │ │ -001d6640: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ -001d6650: 6974 790a 2020 2d20 6d65 6469 756d 5f73 ity. - medium_s │ │ │ -001d6660: 6576 6572 6974 790a 2020 2d20 6d6f 756e everity. - moun │ │ │ -001d6670: 745f 6f70 7469 6f6e 5f76 6172 5f6c 6f67 t_option_var_log │ │ │ -001d6680: 5f6e 6f65 7865 630a 2020 2d20 6e6f 5f72 _noexec. - no_r │ │ │ -001d6690: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20 eboot_needed..- │ │ │ -001d66a0: 6e61 6d65 3a20 2741 6464 206e 6f65 7865 name: 'Add noexe │ │ │ -001d66b0: 6320 4f70 7469 6f6e 2074 6f20 2f76 6172 c Option to /var │ │ │ -001d66c0: 2f6c 6f67 3a20 456e 7375 7265 202f 7661 /log: Ensure /va │ │ │ -001d66d0: 722f 6c6f 6720 6973 206d 6f75 6e74 6564 r/log is mounted │ │ │ -001d66e0: 2077 6974 6820 6e6f 6578 6563 206f 7074 with noexec opt │ │ │ -001d66f0: 696f 6e27 0a20 2061 6e73 6962 6c65 2e70 ion'. ansible.p │ │ │ -001d6700: 6f73 6978 2e6d 6f75 6e74 3a0a 2020 2020 osix.mount:. │ │ │ -001d6710: 7061 7468 3a20 2f76 6172 2f6c 6f67 0a20 path: /var/log. │ │ │ -001d6720: 2020 2073 7263 3a20 277b 7b20 6d6f 756e src: '{{ moun │ │ │ -001d6730: 745f 696e 666f 2e73 6f75 7263 6520 7c20 t_info.source | │ │ │ -001d6740: 6465 6661 756c 7428 2727 2727 2920 7d7d default('''') }} │ │ │ -001d6750: 270a 2020 2020 6f70 7473 3a20 277b 7b20 '. opts: '{{ │ │ │ -001d6760: 6d6f 756e 745f 696e 666f 2e6f 7074 696f mount_info.optio │ │ │ -001d6770: 6e73 207c 2064 6566 6175 6c74 2827 2727 ns | default(''' │ │ │ -001d6780: 2729 207d 7d27 0a20 2020 2073 7461 7465 ') }}'. state │ │ │ -001d6790: 3a20 6d6f 756e 7465 640a 2020 2020 6673 : mounted. fs │ │ │ -001d67a0: 7479 7065 3a20 277b 7b20 6d6f 756e 745f type: '{{ mount_ │ │ │ -001d67b0: 696e 666f 2e66 7374 7970 6520 7c20 6465 info.fstype | de │ │ │ -001d67c0: 6661 756c 7428 2727 2727 2920 7d7d 270a fault('''') }}'. │ │ │ -001d67d0: 2020 7265 6769 7374 6572 3a20 6d6f 756e register: moun │ │ │ -001d67e0: 745f 7265 7375 6c74 0a20 2066 6169 6c65 t_result. faile │ │ │ -001d67f0: 645f 7768 656e 3a0a 2020 2d20 6d6f 756e d_when:. - moun │ │ │ -001d6800: 745f 7265 7375 6c74 2069 7320 6661 696c t_result is fail │ │ │ -001d6810: 6564 0a20 202d 2027 2727 7461 7267 6574 ed. - '''target │ │ │ -001d6820: 2069 7320 6275 7379 2727 206e 6f74 2069 is busy'' not i │ │ │ -001d6830: 6e20 286d 6f75 6e74 5f72 6573 756c 742e n (mount_result. │ │ │ -001d6840: 6d73 6720 7c20 6465 6661 756c 7428 2727 msg | default('' │ │ │ -001d6850: 2727 2929 270a 2020 2d20 2727 2761 6c72 ''))'. - '''alr │ │ │ -001d6860: 6561 6479 206d 6f75 6e74 6564 2727 206e eady mounted'' n │ │ │ -001d6870: 6f74 2069 6e20 286d 6f75 6e74 5f72 6573 ot in (mount_res │ │ │ -001d6880: 756c 742e 6d73 6720 7c20 6465 6661 756c ult.msg | defaul │ │ │ -001d6890: 7428 2727 2727 2929 270a 2020 7768 656e t(''''))'. when │ │ │ -001d68a0: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b :. - ( not ( "k │ │ │ -001d68b0: 6572 6e65 6c22 2069 6e20 616e 7369 626c ernel" in ansibl │ │ │ -001d68c0: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -001d68d0: 2061 6e64 2022 7270 6d2d 6f73 7472 6565 and "rpm-ostree │ │ │ -001d68e0: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -001d68f0: 7473 2e70 6163 6b61 6765 730a 2020 2020 ts.packages. │ │ │ -001d6900: 616e 6420 2262 6f6f 7463 2220 696e 2061 and "bootc" in a │ │ │ -001d6910: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ -001d6920: 6b61 6765 7320 616e 6420 6e6f 7420 226f kages and not "o │ │ │ -001d6930: 7065 6e73 6869 6674 2d6b 7562 656c 6574 penshift-kubelet │ │ │ -001d6940: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -001d6950: 7473 2e70 6163 6b61 6765 730a 2020 2020 ts.packages. │ │ │ -001d6960: 616e 6420 226f 7374 7265 6522 2069 6e20 and "ostree" in │ │ │ -001d6970: 616e 7369 626c 655f 7072 6f63 5f63 6d64 ansible_proc_cmd │ │ │ -001d6980: 6c69 6e65 2029 2061 6e64 206e 6f74 2028 line ) and not ( │ │ │ -001d6990: 2061 6e73 6962 6c65 5f76 6972 7475 616c ansible_virtual │ │ │ -001d69a0: 697a 6174 696f 6e5f 7479 7065 2069 6e0a ization_type in. │ │ │ -001d69b0: 2020 2020 5b22 646f 636b 6572 222c 2022 ["docker", " │ │ │ -001d69c0: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20 lxc", "openvz", │ │ │ -001d69d0: 2270 6f64 6d61 6e22 2c20 2263 6f6e 7461 "podman", "conta │ │ │ -001d69e0: 696e 6572 225d 2029 2029 0a20 202d 2027 iner"] ) ). - ' │ │ │ -001d69f0: 222f 7661 722f 6c6f 6722 2069 6e20 616e "/var/log" in an │ │ │ -001d6a00: 7369 626c 655f 6d6f 756e 7473 207c 206d sible_mounts | m │ │ │ -001d6a10: 6170 2861 7474 7269 6275 7465 3d22 6d6f ap(attribute="mo │ │ │ -001d6a20: 756e 7422 2920 7c20 6c69 7374 270a 2020 unt") | list'. │ │ │ -001d6a30: 2d20 6d6f 756e 745f 696e 666f 2069 7320 - mount_info is │ │ │ -001d6a40: 6465 6669 6e65 640a 2020 2d20 2864 6576 defined. - (dev │ │ │ -001d6a50: 6963 655f 6e61 6d65 2e73 7464 6f75 7420 ice_name.stdout │ │ │ -001d6a60: 6973 2064 6566 696e 6564 2061 6e64 2028 is defined and ( │ │ │ -001d6a70: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ -001d6a80: 7574 207c 206c 656e 6774 6820 2667 743b ut | length > │ │ │ -001d6a90: 2030 2929 206f 7220 2822 2d2d 6673 7461 0)) or ("--fsta │ │ │ -001d6aa0: 6222 0a20 2020 207c 206c 656e 6774 6820 b". | length │ │ │ -001d6ab0: 3d3d 2030 290a 2020 7461 6773 3a0a 2020 == 0). tags:. │ │ │ -001d6ac0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143 - NIST-800-53-AC │ │ │ -001d6ad0: 2d36 0a20 202d 204e 4953 542d 3830 302d -6. - NIST-800- │ │ │ -001d6ae0: 3533 2d41 432d 3628 3129 0a20 202d 204e 53-AC-6(1). - N │ │ │ -001d6af0: 4953 542d 3830 302d 3533 2d43 4d2d 3628 IST-800-53-CM-6( │ │ │ -001d6b00: 6129 0a20 202d 204e 4953 542d 3830 302d a). - NIST-800- │ │ │ -001d6b10: 3533 2d43 4d2d 3728 6129 0a20 202d 204e 53-CM-7(a). - N │ │ │ -001d6b20: 4953 542d 3830 302d 3533 2d43 4d2d 3728 IST-800-53-CM-7( │ │ │ -001d6b30: 6229 0a20 202d 204e 4953 542d 3830 302d b). - NIST-800- │ │ │ -001d6b40: 3533 2d4d 502d 370a 2020 2d20 636f 6e66 53-MP-7. - conf │ │ │ -001d6b50: 6967 7572 655f 7374 7261 7465 6779 0a20 igure_strategy. │ │ │ -001d6b60: 202d 2068 6967 685f 6469 7372 7570 7469 - high_disrupti │ │ │ -001d6b70: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c on. - low_compl │ │ │ -001d6b80: 6578 6974 790a 2020 2d20 6d65 6469 756d exity. - medium │ │ │ -001d6b90: 5f73 6576 6572 6974 790a 2020 2d20 6d6f _severity. - mo │ │ │ -001d6ba0: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6c unt_option_var_l │ │ │ -001d6bb0: 6f67 5f6e 6f65 7865 630a 2020 2d20 6e6f og_noexec. - no │ │ │ -001d6bc0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a3c _reboot_needed.< │ │ │ -001d6bd0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469 /code>R │ │ │ -001d6c80: 656d 6564 6961 7469 6f6e 2053 6865 6c6c emediation Shell │ │ │ -001d6c90: 2073 6372 6970 7420 e287 b23c 2f61 3e3c script ...< │ │ │ -001d6ca0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
#
│ │ │ -001d6d50: 2052 656d 6564 6961 7469 6f6e 2069 7320   Remediation is 
│ │ │ -001d6d60: 6170 706c 6963 6162 6c65 206f 6e6c 7920  applicable only 
│ │ │ -001d6d70: 696e 2063 6572 7461 696e 2070 6c61 7466  in certain platf
│ │ │ -001d6d80: 6f72 6d73 0a69 6620 2820 2120 2820 7b20  orms.if ( ! ( { 
│ │ │ -001d6d90: 7270 6d20 2d2d 7175 6965 7420 2d71 206b  rpm --quiet -q k
│ │ │ -001d6da0: 6572 6e65 6c20 3b7d 2026 616d 703b 2661  ernel ;} &&a
│ │ │ -001d6db0: 6d70 3b20 7b20 7270 6d20 2d2d 7175 6965  mp; { rpm --quie
│ │ │ -001d6dc0: 7420 2d71 2072 706d 2d6f 7374 7265 6520  t -q rpm-ostree 
│ │ │ -001d6dd0: 3b7d 2026 616d 703b 2661 6d70 3b20 7b20  ;} && { 
│ │ │ -001d6de0: 7270 6d20 2d2d 7175 6965 7420 2d71 2062  rpm --quiet -q b
│ │ │ -001d6df0: 6f6f 7463 203b 7d20 2661 6d70 3b26 616d  ootc ;} &&am
│ │ │ -001d6e00: 703b 207b 2021 2072 706d 202d 2d71 7569  p; { ! rpm --qui
│ │ │ -001d6e10: 6574 202d 7120 6f70 656e 7368 6966 742d  et -q openshift-
│ │ │ -001d6e20: 6b75 6265 6c65 7420 3b7d 2026 616d 703b  kubelet ;} &
│ │ │ -001d6e30: 2661 6d70 3b20 285b 202d 6620 2f72 756e  & ([ -f /run
│ │ │ -001d6e40: 2f6f 7374 7265 652d 626f 6f74 6564 205d  /ostree-booted ]
│ │ │ -001d6e50: 207c 7c20 5b20 2d4c 202f 6f73 7472 6565   || [ -L /ostree
│ │ │ -001d6e60: 205d 2920 2920 2661 6d70 3b26 616d 703b   ]) ) &&
│ │ │ -001d6e70: 2021 2028 205b 202d 6620 2f2e 646f 636b   ! ( [ -f /.dock
│ │ │ -001d6e80: 6572 656e 7620 5d20 7c7c 205b 202d 6620  erenv ] || [ -f 
│ │ │ -001d6e90: 2f72 756e 2f2e 636f 6e74 6169 6e65 7265  /run/.containere
│ │ │ -001d6ea0: 6e76 205d 2029 2029 2026 616d 703b 2661  nv ] ) ) &&a
│ │ │ -001d6eb0: 6d70 3b20 7b20 2820 6669 6e64 6d6e 7420  mp; { ( findmnt 
│ │ │ -001d6ec0: 2d2d 6b65 726e 656c 2022 2f76 6172 2f6c  --kernel "/var/l
│ │ │ -001d6ed0: 6f67 2220 2667 743b 202f 6465 762f 6e75  og" > /dev/nu
│ │ │ -001d6ee0: 6c6c 207c 7c20 6669 6e64 6d6e 7420 2d2d  ll || findmnt --
│ │ │ -001d6ef0: 6673 7461 6220 222f 7661 722f 6c6f 6722  fstab "/var/log"
│ │ │ -001d6f00: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20   > /dev/null 
│ │ │ -001d6f10: 293b 207d 3b20 7468 656e 0a0a 6675 6e63  ); }; then..func
│ │ │ -001d6f20: 7469 6f6e 2070 6572 666f 726d 5f72 656d  tion perform_rem
│ │ │ -001d6f30: 6564 6961 7469 6f6e 207b 0a0a 2020 2020  ediation {..    
│ │ │ -001d6f40: 0a20 2020 2020 2020 2023 2074 6865 206d  .        # the m
│ │ │ -001d6f50: 6f75 6e74 2070 6f69 6e74 202f 7661 722f  ount point /var/
│ │ │ -001d6f60: 6c6f 6720 6861 7320 746f 2062 6520 6465  log has to be de
│ │ │ -001d6f70: 6669 6e65 6420 696e 202f 6574 632f 6673  fined in /etc/fs
│ │ │ -001d6f80: 7461 620a 2020 2020 2020 2020 2320 6265  tab.        # be
│ │ │ -001d6f90: 666f 7265 2074 6869 7320 7265 6d65 6469  fore this remedi
│ │ │ -001d6fa0: 6174 696f 6e20 6361 6e20 6265 2065 7865  ation can be exe
│ │ │ -001d6fb0: 6375 7465 642e 2049 6e20 6361 7365 2069  cuted. In case i
│ │ │ -001d6fc0: 7420 6973 206e 6f74 2064 6566 696e 6564  t is not defined
│ │ │ -001d6fd0: 2c20 7468 650a 2020 2020 2020 2020 2320  , the.        # 
│ │ │ -001d6fe0: 7265 6d65 6469 6174 696f 6e20 6162 6f72  remediation abor
│ │ │ -001d6ff0: 7473 2061 6e64 206e 6f20 6368 616e 6765  ts and no change
│ │ │ -001d7000: 7320 7265 6761 7264 696e 6720 7468 6520  s regarding the 
│ │ │ -001d7010: 6d6f 756e 7420 706f 696e 7420 6172 6520  mount point are 
│ │ │ -001d7020: 646f 6e65 2e0a 2020 2020 2020 2020 6d6f  done..        mo
│ │ │ -001d7030: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001d7040: 7265 6765 7870 3d22 2428 7072 696e 7466  regexp="$(printf
│ │ │ -001d7050: 2022 5e5b 5b3a 7370 6163 653a 5d5d 2a5b   "^[[:space:]]*[
│ │ │ -001d7060: 5e23 5d2e 2a5b 5b3a 7370 6163 653a 5d5d  ^#].*[[:space:]]
│ │ │ -001d7070: 2573 5b5b 3a73 7061 6365 3a5d 5d22 2022  %s[[:space:]]" "
│ │ │ -001d7080: 2f76 6172 2f6c 6f67 2229 220a 0a20 2020  /var/log")"..   
│ │ │ -001d7090: 2067 7265 7020 2224 6d6f 756e 745f 706f   grep "$mount_po
│ │ │ -001d70a0: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001d70b0: 2220 2d71 202f 6574 632f 6673 7461 6220  " -q /etc/fstab 
│ │ │ -001d70c0: 5c0a 2020 2020 2020 2020 7c7c 207b 2065  \.        || { e
│ │ │ -001d70d0: 6368 6f20 2254 6865 206d 6f75 6e74 2070  cho "The mount p
│ │ │ -001d70e0: 6f69 6e74 2027 2f76 6172 2f6c 6f67 2720  oint '/var/log' 
│ │ │ -001d70f0: 6973 206e 6f74 2065 7665 6e20 696e 202f  is not even in /
│ │ │ -001d7100: 6574 632f 6673 7461 622c 2073 6f20 7765  etc/fstab, so we
│ │ │ -001d7110: 2063 616e 2774 2073 6574 2075 7020 6d6f   can't set up mo
│ │ │ -001d7120: 756e 7420 6f70 7469 6f6e 7322 2026 6774  unt options" >
│ │ │ -001d7130: 3b26 616d 703b 323b 0a20 2020 2020 2020  ;&2;.       
│ │ │ -001d7140: 2020 2020 2020 2020 2065 6368 6f20 224e           echo "N
│ │ │ -001d7150: 6f74 2072 656d 6564 6961 7469 6e67 2c20  ot remediating, 
│ │ │ -001d7160: 6265 6361 7573 6520 7468 6572 6520 6973  because there is
│ │ │ -001d7170: 206e 6f20 7265 636f 7264 206f 6620 2f76   no record of /v
│ │ │ -001d7180: 6172 2f6c 6f67 2069 6e20 2f65 7463 2f66  ar/log in /etc/f
│ │ │ -001d7190: 7374 6162 2220 2667 743b 2661 6d70 3b32  stab" >&2
│ │ │ -001d71a0: 3b20 7265 7475 726e 2031 3b20 7d0a 2020  ; return 1; }.  
│ │ │ -001d71b0: 2020 0a0a 0a20 2020 206d 6f75 6e74 5f70    ...    mount_p
│ │ │ -001d71c0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001d71d0: 703d 2224 2870 7269 6e74 6620 225e 5b5b  p="$(printf "^[[
│ │ │ -001d71e0: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a  :space:]]*[^#].*
│ │ │ -001d71f0: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a  [[:space:]]%s[[:
│ │ │ -001d7200: 7370 6163 653a 5d5d 2220 2f76 6172 2f6c  space:]]" /var/l
│ │ │ -001d7210: 6f67 2922 0a0a 2020 2020 2320 4966 2074  og)"..    # If t
│ │ │ -001d7220: 6865 206d 6f75 6e74 2070 6f69 6e74 2069  he mount point i
│ │ │ -001d7230: 7320 6e6f 7420 696e 202f 6574 632f 6673  s not in /etc/fs
│ │ │ -001d7240: 7461 622c 2067 6574 2070 7265 7669 6f75  tab, get previou
│ │ │ -001d7250: 7320 6d6f 756e 7420 6f70 7469 6f6e 7320  s mount options 
│ │ │ -001d7260: 6672 6f6d 202f 6574 632f 6d74 6162 0a20  from /etc/mtab. 
│ │ │ -001d7270: 2020 2069 6620 2120 6772 6570 202d 7120     if ! grep -q 
│ │ │ -001d7280: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ -001d7290: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ -001d72a0: 2f66 7374 6162 3b20 7468 656e 0a20 2020  /fstab; then.   
│ │ │ -001d72b0: 2020 2020 2023 2072 756e 7469 6d65 206f       # runtime o
│ │ │ -001d72c0: 7074 7320 7769 7468 6f75 7420 736f 6d65  pts without some
│ │ │ -001d72d0: 2061 7574 6f6d 6174 6963 206b 6572 6e65   automatic kerne
│ │ │ -001d72e0: 6c2f 7573 6572 7370 6163 652d 6164 6465  l/userspace-adde
│ │ │ -001d72f0: 6420 6465 6661 756c 7473 0a20 2020 2020  d defaults.     
│ │ │ -001d7300: 2020 2070 7265 7669 6f75 735f 6d6f 756e     previous_moun
│ │ │ -001d7310: 745f 6f70 7473 3d24 2867 7265 7020 2224  t_opts=$(grep "$
│ │ │ -001d7320: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001d7330: 685f 7265 6765 7870 2220 2f65 7463 2f6d  h_regexp" /etc/m
│ │ │ -001d7340: 7461 6220 7c20 6865 6164 202d 3120 7c20  tab | head -1 | 
│ │ │ -001d7350: 2061 776b 2027 7b70 7269 6e74 2024 347d   awk '{print $4}
│ │ │ -001d7360: 2720 5c0a 2020 2020 2020 2020 2020 2020  ' \.            
│ │ │ -001d7370: 2020 2020 2020 2020 7c20 7365 6420 2d45          | sed -E
│ │ │ -001d7380: 2022 732f 2872 777c 6465 6661 756c 7473   "s/(rw|defaults
│ │ │ -001d7390: 7c73 6563 6c61 6265 6c7c 6e6f 6578 6563  |seclabel|noexec
│ │ │ -001d73a0: 2928 2c7c 2429 2f2f 673b 732f 2c24 2f2f  )(,|$)//g;s/,$//
│ │ │ -001d73b0: 2229 0a20 2020 2020 2020 205b 2022 2470  ").        [ "$p
│ │ │ -001d73c0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001d73d0: 7473 2220 5d20 2661 6d70 3b26 616d 703b  ts" ] &&
│ │ │ -001d73e0: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ -001d73f0: 6f70 7473 2b3d 222c 220a 2020 2020 2020  opts+=",".      
│ │ │ -001d7400: 2020 2320 496e 2069 736f 3936 3630 2066    # In iso9660 f
│ │ │ -001d7410: 696c 6573 7973 7465 6d73 206d 7461 6220  ilesystems mtab 
│ │ │ -001d7420: 636f 756c 6420 6465 7363 7269 6265 2061  could describe a
│ │ │ -001d7430: 2022 626c 6f63 6b73 697a 6522 2076 616c   "blocksize" val
│ │ │ -001d7440: 7565 2c20 7468 6973 2073 686f 756c 6420  ue, this should 
│ │ │ -001d7450: 6265 2072 6566 6c65 6374 6564 2069 6e0a  be reflected in.
│ │ │ -001d7460: 2020 2020 2020 2020 2320 6673 7461 6220          # fstab 
│ │ │ -001d7470: 6173 2022 626c 6f63 6b22 2e20 2054 6865  as "block".  The
│ │ │ -001d7480: 206e 6578 7420 7661 7269 6162 6c65 2069   next variable i
│ │ │ -001d7490: 7320 746f 2073 6174 6973 6679 2073 6865  s to satisfy she
│ │ │ -001d74a0: 6c6c 6368 6563 6b20 5343 3230 3530 2e0a  llcheck SC2050..
│ │ │ -001d74b0: 2020 2020 2020 2020 6673 5f74 7970 653d          fs_type=
│ │ │ -001d74c0: 2222 0a20 2020 2020 2020 2069 6620 5b20  "".        if [ 
│ │ │ -001d74d0: 2022 2466 735f 7479 7065 2220 3d3d 2022   "$fs_type" == "
│ │ │ -001d74e0: 6973 6f39 3636 3022 205d 203b 2074 6865  iso9660" ] ; the
│ │ │ -001d74f0: 6e0a 2020 2020 2020 2020 2020 2020 7072  n.            pr
│ │ │ -001d7500: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001d7510: 733d 2428 7365 6420 2773 2f62 6c6f 636b  s=$(sed 's/block
│ │ │ -001d7520: 7369 7a65 3d2f 626c 6f63 6b3d 2f27 2026  size=/block=/' &
│ │ │ -001d7530: 6c74 3b26 6c74 3b26 6c74 3b20 2224 7072  lt;<< "$pr
│ │ │ -001d7540: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001d7550: 7322 290a 2020 2020 2020 2020 6669 0a20  s").        fi. 
│ │ │ -001d7560: 2020 2020 2020 2065 6368 6f20 2220 2f76         echo " /v
│ │ │ -001d7570: 6172 2f6c 6f67 2020 6465 6661 756c 7473  ar/log  defaults
│ │ │ -001d7580: 2c24 7b70 7265 7669 6f75 735f 6d6f 756e  ,${previous_moun
│ │ │ -001d7590: 745f 6f70 7473 7d6e 6f65 7865 6320 3020  t_opts}noexec 0 
│ │ │ -001d75a0: 3022 2026 6774 3b26 6774 3b20 2f65 7463  0" >> /etc
│ │ │ -001d75b0: 2f66 7374 6162 0a20 2020 2023 2049 6620  /fstab.    # If 
│ │ │ -001d75c0: 7468 6520 6d6f 756e 745f 6f70 7420 6f70  the mount_opt op
│ │ │ -001d75d0: 7469 6f6e 2069 7320 6e6f 7420 616c 7265  tion is not alre
│ │ │ -001d75e0: 6164 7920 696e 2074 6865 206d 6f75 6e74  ady in the mount
│ │ │ -001d75f0: 2070 6f69 6e74 2773 202f 6574 632f 6673   point's /etc/fs
│ │ │ -001d7600: 7461 6220 656e 7472 792c 2061 6464 2069  tab entry, add i
│ │ │ -001d7610: 740a 2020 2020 656c 6966 2021 2067 7265  t.    elif ! gre
│ │ │ -001d7620: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001d7630: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ -001d7640: 7463 2f66 7374 6162 207c 2067 7265 7020  tc/fstab | grep 
│ │ │ -001d7650: 2d71 2022 6e6f 6578 6563 223b 2074 6865  -q "noexec"; the
│ │ │ -001d7660: 6e0a 2020 2020 2020 2020 7072 6576 696f  n.        previo
│ │ │ -001d7670: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ -001d7680: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ -001d7690: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ -001d76a0: 202f 6574 632f 6673 7461 6220 7c20 6177   /etc/fstab | aw
│ │ │ -001d76b0: 6b20 277b 7072 696e 7420 2434 7d27 290a  k '{print $4}').
│ │ │ -001d76c0: 2020 2020 2020 2020 7365 6420 2d69 2022          sed -i "
│ │ │ -001d76d0: 737c 5c28 247b 6d6f 756e 745f 706f 696e  s|\(${mount_poin
│ │ │ -001d76e0: 745f 6d61 7463 685f 7265 6765 7870 7d2e  t_match_regexp}.
│ │ │ -001d76f0: 2a24 7b70 7265 7669 6f75 735f 6d6f 756e  *${previous_moun
│ │ │ -001d7700: 745f 6f70 7473 7d5c 297c 5c31 2c6e 6f65  t_opts}\)|\1,noe
│ │ │ -001d7710: 7865 637c 2220 2f65 7463 2f66 7374 6162  xec|" /etc/fstab
│ │ │ -001d7720: 0a20 2020 2066 690a 0a0a 2020 2020 6966  .    fi...    if
│ │ │ -001d7730: 206d 6b64 6972 202d 7020 222f 7661 722f   mkdir -p "/var/
│ │ │ -001d7740: 6c6f 6722 3b20 7468 656e 0a20 2020 2020  log"; then.     
│ │ │ -001d7750: 2020 2069 6620 6d6f 756e 7470 6f69 6e74     if mountpoint
│ │ │ -001d7760: 202d 7120 222f 7661 722f 6c6f 6722 3b20   -q "/var/log"; 
│ │ │ -001d7770: 7468 656e 0a20 2020 2020 2020 2020 2020  then.           
│ │ │ -001d7780: 206d 6f75 6e74 202d 6f20 7265 6d6f 756e   mount -o remoun
│ │ │ -001d7790: 7420 2d2d 7461 7267 6574 2022 2f76 6172  t --target "/var
│ │ │ -001d77a0: 2f6c 6f67 220a 2020 2020 2020 2020 6669  /log".        fi
│ │ │ -001d77b0: 0a20 2020 2066 690a 7d0a 0a70 6572 666f  .    fi.}..perfo
│ │ │ -001d77c0: 726d 5f72 656d 6564 6961 7469 6f6e 0a0a  rm_remediation..
│ │ │ -001d77d0: 656c 7365 0a20 2020 2026 6774 3b26 616d  else.    >&am
│ │ │ -001d77e0: 703b 3220 6563 686f 2027 5265 6d65 6469  p;2 echo 'Remedi
│ │ │ -001d77f0: 6174 696f 6e20 6973 206e 6f74 2061 7070  ation is not app
│ │ │ -001d7800: 6c69 6361 626c 652c 206e 6f74 6869 6e67  licable, nothing
│ │ │ -001d7810: 2077 6173 2064 6f6e 6527 0a66 690a 3c2f   was done'.fi.
│ │ │ +001d5160: 3c62 723e 3c64 6976 2063 6c61 7373 3d22  
Reb │ │ │ -001d6d20: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -001d6d30: 7365 3c2f 7464 3e3c 2f74 723e 3c2f 7461 se
low< │ │ │ +001d5200: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr> │ │ │ +001d5250: 3c74 723e 3c74 683e 5374 7261 7465 6779

│ │ │ +001d5290: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ +001d52a0: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ +001d52b0: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ +001d52c0: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ +001d52d0: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ +001d52e0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001d52f0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001d5300: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ +001d5310: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +001d5320: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001d5330: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ +001d5340: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ +001d5350: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001d5360: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ +001d5370: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +001d5380: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ +001d5390: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001d53a0: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ +001d53b0: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ +001d53c0: 745f 6f70 7469 6f6e 5f76 6172 5f6c 6f67  t_option_var_log
│ │ │ +001d53d0: 5f6e 6f65 7865 630a 2020 2d20 6e6f 5f72  _noexec.  - no_r
│ │ │ +001d53e0: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +001d53f0: 6e61 6d65 3a20 2741 6464 206e 6f65 7865  name: 'Add noexe
│ │ │ +001d5400: 6320 4f70 7469 6f6e 2074 6f20 2f76 6172  c Option to /var
│ │ │ +001d5410: 2f6c 6f67 3a20 4368 6563 6b20 696e 666f  /log: Check info
│ │ │ +001d5420: 726d 6174 696f 6e20 6173 736f 6369 6174  rmation associat
│ │ │ +001d5430: 6564 2074 6f20 6d6f 756e 7470 6f69 6e74  ed to mountpoint
│ │ │ +001d5440: 270a 2020 616e 7369 626c 652e 6275 696c  '.  ansible.buil
│ │ │ +001d5450: 7469 6e2e 636f 6d6d 616e 643a 2066 696e  tin.command: fin
│ │ │ +001d5460: 646d 6e74 202d 2d66 7374 6162 2027 2f76  dmnt --fstab '/v
│ │ │ +001d5470: 6172 2f6c 6f67 270a 2020 7265 6769 7374  ar/log'.  regist
│ │ │ +001d5480: 6572 3a20 6465 7669 6365 5f6e 616d 650a  er: device_name.
│ │ │ +001d5490: 2020 6661 696c 6564 5f77 6865 6e3a 2064    failed_when: d
│ │ │ +001d54a0: 6576 6963 655f 6e61 6d65 2e72 6320 2667  evice_name.rc &g
│ │ │ +001d54b0: 743b 2031 0a20 2063 6861 6e67 6564 5f77  t; 1.  changed_w
│ │ │ +001d54c0: 6865 6e3a 2066 616c 7365 0a20 2063 6865  hen: false.  che
│ │ │ +001d54d0: 636b 5f6d 6f64 653a 2066 616c 7365 0a20  ck_mode: false. 
│ │ │ +001d54e0: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ +001d54f0: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ +001d5500: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001d5510: 6b61 6765 7320 616e 6420 2272 706d 2d6f  kages and "rpm-o
│ │ │ +001d5520: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001d5530: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001d5540: 0a20 2020 2061 6e64 2022 626f 6f74 6322  .    and "bootc"
│ │ │ +001d5550: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001d5560: 732e 7061 636b 6167 6573 2061 6e64 206e  s.packages and n
│ │ │ +001d5570: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ +001d5580: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ +001d5590: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001d55a0: 0a20 2020 2061 6e64 2022 6f73 7472 6565  .    and "ostree
│ │ │ +001d55b0: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ +001d55c0: 635f 636d 646c 696e 6520 2920 616e 6420  c_cmdline ) and 
│ │ │ +001d55d0: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ +001d55e0: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ +001d55f0: 6520 696e 0a20 2020 205b 2264 6f63 6b65  e in.    ["docke
│ │ │ +001d5600: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ +001d5610: 767a 222c 2022 706f 646d 616e 222c 2022  vz", "podman", "
│ │ │ +001d5620: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ +001d5630: 2020 2d20 2722 2f76 6172 2f6c 6f67 2220    - '"/var/log" 
│ │ │ +001d5640: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ +001d5650: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ +001d5660: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ +001d5670: 7427 0a20 2074 6167 733a 0a20 202d 204e  t'.  tags:.  - N
│ │ │ +001d5680: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ +001d5690: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001d56a0: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ +001d56b0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +001d56c0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001d56d0: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +001d56e0: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +001d56f0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001d5700: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ +001d5710: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +001d5720: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +001d5730: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +001d5740: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +001d5750: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +001d5760: 5f6f 7074 696f 6e5f 7661 725f 6c6f 675f  _option_var_log_
│ │ │ +001d5770: 6e6f 6578 6563 0a20 202d 206e 6f5f 7265  noexec.  - no_re
│ │ │ +001d5780: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ +001d5790: 616d 653a 2027 4164 6420 6e6f 6578 6563  ame: 'Add noexec
│ │ │ +001d57a0: 204f 7074 696f 6e20 746f 202f 7661 722f   Option to /var/
│ │ │ +001d57b0: 6c6f 673a 2043 7265 6174 6520 6d6f 756e  log: Create moun
│ │ │ +001d57c0: 745f 696e 666f 2064 6963 7469 6f6e 6172  t_info dictionar
│ │ │ +001d57d0: 7920 7661 7269 6162 6c65 270a 2020 7365  y variable'.  se
│ │ │ +001d57e0: 745f 6661 6374 3a0a 2020 2020 6d6f 756e  t_fact:.    moun
│ │ │ +001d57f0: 745f 696e 666f 3a20 277b 7b20 6d6f 756e  t_info: '{{ moun
│ │ │ +001d5800: 745f 696e 666f 7c64 6566 6175 6c74 287b  t_info|default({
│ │ │ +001d5810: 7d29 7c63 6f6d 6269 6e65 287b 6974 656d  })|combine({item
│ │ │ +001d5820: 2e30 3a20 6974 656d 2e31 7d29 207d 7d27  .0: item.1}) }}'
│ │ │ +001d5830: 0a20 2077 6974 685f 746f 6765 7468 6572  .  with_together
│ │ │ +001d5840: 3a0a 2020 2d20 277b 7b20 6465 7669 6365  :.  - '{{ device
│ │ │ +001d5850: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ +001d5860: 6573 5b30 5d2e 7370 6c69 7428 2920 7c20  es[0].split() | 
│ │ │ +001d5870: 6d61 7028 2727 6c6f 7765 7227 2729 207c  map(''lower'') |
│ │ │ +001d5880: 206c 6973 7420 7d7d 270a 2020 2d20 277b   list }}'.  - '{
│ │ │ +001d5890: 7b20 6465 7669 6365 5f6e 616d 652e 7374  { device_name.st
│ │ │ +001d58a0: 646f 7574 5f6c 696e 6573 5b31 5d2e 7370  dout_lines[1].sp
│ │ │ +001d58b0: 6c69 7428 2920 7c20 6c69 7374 207d 7d27  lit() | list }}'
│ │ │ +001d58c0: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ +001d58d0: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ +001d58e0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001d58f0: 6163 6b61 6765 7320 616e 6420 2272 706d  ackages and "rpm
│ │ │ +001d5900: 2d6f 7374 7265 6522 2069 6e20 616e 7369  -ostree" in ansi
│ │ │ +001d5910: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001d5920: 6573 0a20 2020 2061 6e64 2022 626f 6f74  es.    and "boot
│ │ │ +001d5930: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ +001d5940: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001d5950: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ +001d5960: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ +001d5970: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001d5980: 6573 0a20 2020 2061 6e64 2022 6f73 7472  es.    and "ostr
│ │ │ +001d5990: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ +001d59a0: 726f 635f 636d 646c 696e 6520 2920 616e  roc_cmdline ) an
│ │ │ +001d59b0: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ +001d59c0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ +001d59d0: 7970 6520 696e 0a20 2020 205b 2264 6f63  ype in.    ["doc
│ │ │ +001d59e0: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ +001d59f0: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ +001d5a00: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ +001d5a10: 290a 2020 2d20 2722 2f76 6172 2f6c 6f67  ).  - '"/var/log
│ │ │ +001d5a20: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ +001d5a30: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ +001d5a40: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ +001d5a50: 6973 7427 0a20 202d 2064 6576 6963 655f  ist'.  - device_
│ │ │ +001d5a60: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ +001d5a70: 6566 696e 6564 2061 6e64 2064 6576 6963  efined and devic
│ │ │ +001d5a80: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ +001d5a90: 6e65 7320 6973 2064 6566 696e 6564 0a20  nes is defined. 
│ │ │ +001d5aa0: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ +001d5ab0: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ +001d5ac0: 2667 743b 2030 290a 2020 7461 6773 3a0a  > 0).  tags:.
│ │ │ +001d5ad0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001d5ae0: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ +001d5af0: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ +001d5b00: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001d5b10: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ +001d5b20: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ +001d5b30: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001d5b40: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ +001d5b50: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ +001d5b60: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001d5b70: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001d5b80: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001d5b90: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001d5ba0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001d5bb0: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ +001d5bc0: 5f6c 6f67 5f6e 6f65 7865 630a 2020 2d20  _log_noexec.  - 
│ │ │ +001d5bd0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001d5be0: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ +001d5bf0: 6f65 7865 6320 4f70 7469 6f6e 2074 6f20  oexec Option to 
│ │ │ +001d5c00: 2f76 6172 2f6c 6f67 3a20 4966 202f 7661  /var/log: If /va
│ │ │ +001d5c10: 722f 6c6f 6720 6e6f 7420 6d6f 756e 7465  r/log not mounte
│ │ │ +001d5c20: 642c 2063 7261 6674 206d 6f75 6e74 5f69  d, craft mount_i
│ │ │ +001d5c30: 6e66 6f0a 2020 2020 6d61 6e75 616c 6c79  nfo.    manually
│ │ │ +001d5c40: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ +001d5c50: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ +001d5c60: 7b20 6d6f 756e 745f 696e 666f 7c64 6566  { mount_info|def
│ │ │ +001d5c70: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65  ault({})|combine
│ │ │ +001d5c80: 287b 6974 656d 2e30 3a20 6974 656d 2e31  ({item.0: item.1
│ │ │ +001d5c90: 7d29 207d 7d27 0a20 2077 6974 685f 746f  }) }}'.  with_to
│ │ │ +001d5ca0: 6765 7468 6572 3a0a 2020 2d20 2d20 7461  gether:.  - - ta
│ │ │ +001d5cb0: 7267 6574 0a20 2020 202d 2073 6f75 7263  rget.    - sourc
│ │ │ +001d5cc0: 650a 2020 2020 2d20 6673 7479 7065 0a20  e.    - fstype. 
│ │ │ +001d5cd0: 2020 202d 206f 7074 696f 6e73 0a20 202d     - options.  -
│ │ │ +001d5ce0: 202d 202f 7661 722f 6c6f 670a 2020 2020   - /var/log.    
│ │ │ +001d5cf0: 2d20 2727 0a20 2020 202d 2027 270a 2020  - ''.    - ''.  
│ │ │ +001d5d00: 2020 2d20 6465 6661 756c 7473 0a20 2077    - defaults.  w
│ │ │ +001d5d10: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +001d5d20: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +001d5d30: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001d5d40: 6765 7320 616e 6420 2272 706d 2d6f 7374  ges and "rpm-ost
│ │ │ +001d5d50: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001d5d60: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001d5d70: 2020 2061 6e64 2022 626f 6f74 6322 2069     and "bootc" i
│ │ │ +001d5d80: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001d5d90: 7061 636b 6167 6573 2061 6e64 206e 6f74  packages and not
│ │ │ +001d5da0: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ +001d5db0: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ +001d5dc0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001d5dd0: 2020 2061 6e64 2022 6f73 7472 6565 2220     and "ostree" 
│ │ │ +001d5de0: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ +001d5df0: 636d 646c 696e 6520 2920 616e 6420 6e6f  cmdline ) and no
│ │ │ +001d5e00: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ +001d5e10: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ +001d5e20: 696e 0a20 2020 205b 2264 6f63 6b65 7222  in.    ["docker"
│ │ │ +001d5e30: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ +001d5e40: 222c 2022 706f 646d 616e 222c 2022 636f  ", "podman", "co
│ │ │ +001d5e50: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ +001d5e60: 2d20 2722 2f76 6172 2f6c 6f67 2220 696e  - '"/var/log" in
│ │ │ +001d5e70: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ +001d5e80: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ +001d5e90: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ +001d5ea0: 0a20 202d 2028 222d 2d66 7374 6162 2220  .  - ("--fstab" 
│ │ │ +001d5eb0: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ +001d5ec0: 202d 2064 6576 6963 655f 6e61 6d65 2e73   - device_name.s
│ │ │ +001d5ed0: 7464 6f75 7420 6973 2064 6566 696e 6564  tdout is defined
│ │ │ +001d5ee0: 2061 6e64 2064 6576 6963 655f 6e61 6d65   and device_name
│ │ │ +001d5ef0: 2e73 7464 6f75 745f 6c69 6e65 7320 6973  .stdout_lines is
│ │ │ +001d5f00: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ +001d5f10: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001d5f20: 207c 206c 656e 6774 6820 3d3d 2030 290a   | length == 0).
│ │ │ +001d5f30: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +001d5f40: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ +001d5f50: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001d5f60: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ +001d5f70: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +001d5f80: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001d5f90: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ +001d5fa0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ +001d5fb0: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ +001d5fc0: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ +001d5fd0: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ +001d5fe0: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ +001d5ff0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +001d6000: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +001d6010: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ +001d6020: 7469 6f6e 5f76 6172 5f6c 6f67 5f6e 6f65  tion_var_log_noe
│ │ │ +001d6030: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f  xec.  - no_reboo
│ │ │ +001d6040: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ +001d6050: 3a20 2741 6464 206e 6f65 7865 6320 4f70  : 'Add noexec Op
│ │ │ +001d6060: 7469 6f6e 2074 6f20 2f76 6172 2f6c 6f67  tion to /var/log
│ │ │ +001d6070: 3a20 4d61 6b65 2073 7572 6520 6e6f 6578  : Make sure noex
│ │ │ +001d6080: 6563 206f 7074 696f 6e20 6973 2070 6172  ec option is par
│ │ │ +001d6090: 7420 6f66 2074 6865 2074 6f0a 2020 2020  t of the to.    
│ │ │ +001d60a0: 2f76 6172 2f6c 6f67 206f 7074 696f 6e73  /var/log options
│ │ │ +001d60b0: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ +001d60c0: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ +001d60d0: 7b20 6d6f 756e 745f 696e 666f 207c 2063  { mount_info | c
│ │ │ +001d60e0: 6f6d 6269 6e65 2820 7b27 276f 7074 696f  ombine( {''optio
│ │ │ +001d60f0: 6e73 2727 3a27 2727 277e 286d 6f75 6e74  ns'':''''~(mount
│ │ │ +001d6100: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c0a  _info.options |.
│ │ │ +001d6110: 2020 2020 2020 6465 6661 756c 7428 2727        default(''
│ │ │ +001d6120: 2727 2929 7e28 2727 2c27 2720 6966 2028  ''))~('','' if (
│ │ │ +001d6130: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ +001d6140: 6e73 207c 2064 6566 6175 6c74 2827 2727  ns | default('''
│ │ │ +001d6150: 2729 2920 656c 7365 2027 2727 2729 7e27  ')) else '''')~'
│ │ │ +001d6160: 276e 6f65 7865 6327 270a 2020 2020 2020  'noexec''.      
│ │ │ +001d6170: 7d29 207d 7d27 0a20 2077 6865 6e3a 0a20  }) }}'.  when:. 
│ │ │ +001d6180: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ +001d6190: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +001d61a0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001d61b0: 6420 2272 706d 2d6f 7374 7265 6522 2069  d "rpm-ostree" i
│ │ │ +001d61c0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001d61d0: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +001d61e0: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ +001d61f0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001d6200: 6573 2061 6e64 206e 6f74 2022 6f70 656e  es and not "open
│ │ │ +001d6210: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ +001d6220: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001d6230: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +001d6240: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ +001d6250: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ +001d6260: 6520 2920 616e 6420 6e6f 7420 2820 616e  e ) and not ( an
│ │ │ +001d6270: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ +001d6280: 7469 6f6e 5f74 7970 6520 696e 0a20 2020  tion_type in.   
│ │ │ +001d6290: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ +001d62a0: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ +001d62b0: 646d 616e 222c 2022 636f 6e74 6169 6e65  dman", "containe
│ │ │ +001d62c0: 7222 5d20 2920 290a 2020 2d20 2722 2f76  r"] ) ).  - '"/v
│ │ │ +001d62d0: 6172 2f6c 6f67 2220 696e 2061 6e73 6962  ar/log" in ansib
│ │ │ +001d62e0: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ +001d62f0: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ +001d6300: 2229 207c 206c 6973 7427 0a20 202d 206d  ") | list'.  - m
│ │ │ +001d6310: 6f75 6e74 5f69 6e66 6f20 6973 2064 6566  ount_info is def
│ │ │ +001d6320: 696e 6564 2061 6e64 2022 6e6f 6578 6563  ined and "noexec
│ │ │ +001d6330: 2220 6e6f 7420 696e 2028 6d6f 756e 745f  " not in (mount_
│ │ │ +001d6340: 696e 666f 2e6f 7074 696f 6e73 207c 2064  info.options | d
│ │ │ +001d6350: 6566 6175 6c74 2827 2729 290a 2020 7461  efault('')).  ta
│ │ │ +001d6360: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +001d6370: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ +001d6380: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ +001d6390: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001d63a0: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ +001d63b0: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ +001d63c0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001d63d0: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ +001d63e0: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ +001d63f0: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001d6400: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001d6410: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001d6420: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001d6430: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001d6440: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001d6450: 5f76 6172 5f6c 6f67 5f6e 6f65 7865 630a  _var_log_noexec.
│ │ │ +001d6460: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001d6470: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001d6480: 6464 206e 6f65 7865 6320 4f70 7469 6f6e  dd noexec Option
│ │ │ +001d6490: 2074 6f20 2f76 6172 2f6c 6f67 3a20 456e   to /var/log: En
│ │ │ +001d64a0: 7375 7265 202f 7661 722f 6c6f 6720 6973  sure /var/log is
│ │ │ +001d64b0: 206d 6f75 6e74 6564 2077 6974 6820 6e6f   mounted with no
│ │ │ +001d64c0: 6578 6563 206f 7074 696f 6e27 0a20 2061  exec option'.  a
│ │ │ +001d64d0: 6e73 6962 6c65 2e70 6f73 6978 2e6d 6f75  nsible.posix.mou
│ │ │ +001d64e0: 6e74 3a0a 2020 2020 7061 7468 3a20 2f76  nt:.    path: /v
│ │ │ +001d64f0: 6172 2f6c 6f67 0a20 2020 2073 7263 3a20  ar/log.    src: 
│ │ │ +001d6500: 277b 7b20 6d6f 756e 745f 696e 666f 2e73  '{{ mount_info.s
│ │ │ +001d6510: 6f75 7263 6520 7c20 6465 6661 756c 7428  ource | default(
│ │ │ +001d6520: 2727 2727 2920 7d7d 270a 2020 2020 6f70  '''') }}'.    op
│ │ │ +001d6530: 7473 3a20 277b 7b20 6d6f 756e 745f 696e  ts: '{{ mount_in
│ │ │ +001d6540: 666f 2e6f 7074 696f 6e73 207c 2064 6566  fo.options | def
│ │ │ +001d6550: 6175 6c74 2827 2727 2729 207d 7d27 0a20  ault('''') }}'. 
│ │ │ +001d6560: 2020 2073 7461 7465 3a20 6d6f 756e 7465     state: mounte
│ │ │ +001d6570: 640a 2020 2020 6673 7479 7065 3a20 277b  d.    fstype: '{
│ │ │ +001d6580: 7b20 6d6f 756e 745f 696e 666f 2e66 7374  { mount_info.fst
│ │ │ +001d6590: 7970 6520 7c20 6465 6661 756c 7428 2727  ype | default(''
│ │ │ +001d65a0: 2727 2920 7d7d 270a 2020 7265 6769 7374  '') }}'.  regist
│ │ │ +001d65b0: 6572 3a20 6d6f 756e 745f 7265 7375 6c74  er: mount_result
│ │ │ +001d65c0: 0a20 2066 6169 6c65 645f 7768 656e 3a0a  .  failed_when:.
│ │ │ +001d65d0: 2020 2d20 6d6f 756e 745f 7265 7375 6c74    - mount_result
│ │ │ +001d65e0: 2069 7320 6661 696c 6564 0a20 202d 2027   is failed.  - '
│ │ │ +001d65f0: 2727 7461 7267 6574 2069 7320 6275 7379  ''target is busy
│ │ │ +001d6600: 2727 206e 6f74 2069 6e20 286d 6f75 6e74  '' not in (mount
│ │ │ +001d6610: 5f72 6573 756c 742e 6d73 6720 7c20 6465  _result.msg | de
│ │ │ +001d6620: 6661 756c 7428 2727 2727 2929 270a 2020  fault(''''))'.  
│ │ │ +001d6630: 2d20 2727 2761 6c72 6561 6479 206d 6f75  - '''already mou
│ │ │ +001d6640: 6e74 6564 2727 206e 6f74 2069 6e20 286d  nted'' not in (m
│ │ │ +001d6650: 6f75 6e74 5f72 6573 756c 742e 6d73 6720  ount_result.msg 
│ │ │ +001d6660: 7c20 6465 6661 756c 7428 2727 2727 2929  | default(''''))
│ │ │ +001d6670: 270a 2020 7768 656e 3a0a 2020 2d20 2820  '.  when:.  - ( 
│ │ │ +001d6680: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ +001d6690: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001d66a0: 7061 636b 6167 6573 2061 6e64 2022 7270  packages and "rp
│ │ │ +001d66b0: 6d2d 6f73 7472 6565 2220 696e 2061 6e73  m-ostree" in ans
│ │ │ +001d66c0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001d66d0: 6765 730a 2020 2020 616e 6420 2262 6f6f  ges.    and "boo
│ │ │ +001d66e0: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ +001d66f0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001d6700: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ +001d6710: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ +001d6720: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001d6730: 6765 730a 2020 2020 616e 6420 226f 7374  ges.    and "ost
│ │ │ +001d6740: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001d6750: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061  proc_cmdline ) a
│ │ │ +001d6760: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ +001d6770: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ +001d6780: 7479 7065 2069 6e0a 2020 2020 5b22 646f  type in.    ["do
│ │ │ +001d6790: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ +001d67a0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ +001d67b0: 2c20 2263 6f6e 7461 696e 6572 225d 2029  , "container"] )
│ │ │ +001d67c0: 2029 0a20 202d 2027 222f 7661 722f 6c6f   ).  - '"/var/lo
│ │ │ +001d67d0: 6722 2069 6e20 616e 7369 626c 655f 6d6f  g" in ansible_mo
│ │ │ +001d67e0: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ +001d67f0: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ +001d6800: 6c69 7374 270a 2020 2d20 6d6f 756e 745f  list'.  - mount_
│ │ │ +001d6810: 696e 666f 2069 7320 6465 6669 6e65 640a  info is defined.
│ │ │ +001d6820: 2020 2d20 2864 6576 6963 655f 6e61 6d65    - (device_name
│ │ │ +001d6830: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ +001d6840: 6564 2061 6e64 2028 6465 7669 6365 5f6e  ed and (device_n
│ │ │ +001d6850: 616d 652e 7374 646f 7574 207c 206c 656e  ame.stdout | len
│ │ │ +001d6860: 6774 6820 2667 743b 2030 2929 206f 7220  gth > 0)) or 
│ │ │ +001d6870: 2822 2d2d 6673 7461 6222 0a20 2020 207c  ("--fstab".    |
│ │ │ +001d6880: 206c 656e 6774 6820 3d3d 2030 290a 2020   length == 0).  
│ │ │ +001d6890: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +001d68a0: 3030 2d35 332d 4143 2d36 0a20 202d 204e  00-53-AC-6.  - N
│ │ │ +001d68b0: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ +001d68c0: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ +001d68d0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ +001d68e0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001d68f0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001d6900: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ +001d6910: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ +001d6920: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +001d6930: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +001d6940: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +001d6950: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +001d6960: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001d6970: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ +001d6980: 6f6e 5f76 6172 5f6c 6f67 5f6e 6f65 7865  on_var_log_noexe
│ │ │ +001d6990: 630a 2020 2d20 6e6f 5f72 6562 6f6f 745f  c.  - no_reboot_
│ │ │ +001d69a0: 6e65 6564 6564 0a3c 2f63 6f64 653e 3c2f  needed.Remediati
│ │ │ +001d6a60: 6f6e 2053 6865 6c6c 2073 6372 6970 7420  on Shell script 
│ │ │ +001d6a70: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620  ...
< │ │ │ +001d6b10: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
Co │ │ │ +001d51e0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +001d5210: 6e3a 3c2f 7468 3e3c 7464 3e68 6967 683c n:high< │ │ │ +001d5220: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +001d5260: 3a3c 2f74 683e 3c74 643e 636f 6e66 6967 :config │ │ │ +001d5270: 7572 653c 2f74 643e 3c2f 7472 3e3c 2f74 ure
Reboot:false
# Remedia
│ │ │ +001d6b30: 7469 6f6e 2069 7320 6170 706c 6963 6162  tion is applicab
│ │ │ +001d6b40: 6c65 206f 6e6c 7920 696e 2063 6572 7461  le only in certa
│ │ │ +001d6b50: 696e 2070 6c61 7466 6f72 6d73 0a69 6620  in platforms.if 
│ │ │ +001d6b60: 2820 2120 2820 7b20 7270 6d20 2d2d 7175  ( ! ( { rpm --qu
│ │ │ +001d6b70: 6965 7420 2d71 206b 6572 6e65 6c20 3b7d  iet -q kernel ;}
│ │ │ +001d6b80: 2026 616d 703b 2661 6d70 3b20 7b20 7270   && { rp
│ │ │ +001d6b90: 6d20 2d2d 7175 6965 7420 2d71 2072 706d  m --quiet -q rpm
│ │ │ +001d6ba0: 2d6f 7374 7265 6520 3b7d 2026 616d 703b  -ostree ;} &
│ │ │ +001d6bb0: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ +001d6bc0: 6965 7420 2d71 2062 6f6f 7463 203b 7d20  iet -q bootc ;} 
│ │ │ +001d6bd0: 2661 6d70 3b26 616d 703b 207b 2021 2072  && { ! r
│ │ │ +001d6be0: 706d 202d 2d71 7569 6574 202d 7120 6f70  pm --quiet -q op
│ │ │ +001d6bf0: 656e 7368 6966 742d 6b75 6265 6c65 7420  enshift-kubelet 
│ │ │ +001d6c00: 3b7d 2026 616d 703b 2661 6d70 3b20 285b  ;} && ([
│ │ │ +001d6c10: 202d 6620 2f72 756e 2f6f 7374 7265 652d   -f /run/ostree-
│ │ │ +001d6c20: 626f 6f74 6564 205d 207c 7c20 5b20 2d4c  booted ] || [ -L
│ │ │ +001d6c30: 202f 6f73 7472 6565 205d 2920 2920 2661   /ostree ]) ) &a
│ │ │ +001d6c40: 6d70 3b26 616d 703b 2021 2028 205b 202d  mp;& ! ( [ -
│ │ │ +001d6c50: 6620 2f2e 646f 636b 6572 656e 7620 5d20  f /.dockerenv ] 
│ │ │ +001d6c60: 7c7c 205b 202d 6620 2f72 756e 2f2e 636f  || [ -f /run/.co
│ │ │ +001d6c70: 6e74 6169 6e65 7265 6e76 205d 2029 2029  ntainerenv ] ) )
│ │ │ +001d6c80: 2026 616d 703b 2661 6d70 3b20 7b20 2820   && { ( 
│ │ │ +001d6c90: 6669 6e64 6d6e 7420 2d2d 6b65 726e 656c  findmnt --kernel
│ │ │ +001d6ca0: 2022 2f76 6172 2f6c 6f67 2220 2667 743b   "/var/log" >
│ │ │ +001d6cb0: 202f 6465 762f 6e75 6c6c 207c 7c20 6669   /dev/null || fi
│ │ │ +001d6cc0: 6e64 6d6e 7420 2d2d 6673 7461 6220 222f  ndmnt --fstab "/
│ │ │ +001d6cd0: 7661 722f 6c6f 6722 2026 6774 3b20 2f64  var/log" > /d
│ │ │ +001d6ce0: 6576 2f6e 756c 6c20 293b 207d 3b20 7468  ev/null ); }; th
│ │ │ +001d6cf0: 656e 0a0a 6675 6e63 7469 6f6e 2070 6572  en..function per
│ │ │ +001d6d00: 666f 726d 5f72 656d 6564 6961 7469 6f6e  form_remediation
│ │ │ +001d6d10: 207b 0a0a 2020 2020 0a20 2020 2020 2020   {..    .       
│ │ │ +001d6d20: 2023 2074 6865 206d 6f75 6e74 2070 6f69   # the mount poi
│ │ │ +001d6d30: 6e74 202f 7661 722f 6c6f 6720 6861 7320  nt /var/log has 
│ │ │ +001d6d40: 746f 2062 6520 6465 6669 6e65 6420 696e  to be defined in
│ │ │ +001d6d50: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ +001d6d60: 2020 2020 2320 6265 666f 7265 2074 6869      # before thi
│ │ │ +001d6d70: 7320 7265 6d65 6469 6174 696f 6e20 6361  s remediation ca
│ │ │ +001d6d80: 6e20 6265 2065 7865 6375 7465 642e 2049  n be executed. I
│ │ │ +001d6d90: 6e20 6361 7365 2069 7420 6973 206e 6f74  n case it is not
│ │ │ +001d6da0: 2064 6566 696e 6564 2c20 7468 650a 2020   defined, the.  
│ │ │ +001d6db0: 2020 2020 2020 2320 7265 6d65 6469 6174        # remediat
│ │ │ +001d6dc0: 696f 6e20 6162 6f72 7473 2061 6e64 206e  ion aborts and n
│ │ │ +001d6dd0: 6f20 6368 616e 6765 7320 7265 6761 7264  o changes regard
│ │ │ +001d6de0: 696e 6720 7468 6520 6d6f 756e 7420 706f  ing the mount po
│ │ │ +001d6df0: 696e 7420 6172 6520 646f 6e65 2e0a 2020  int are done..  
│ │ │ +001d6e00: 2020 2020 2020 6d6f 756e 745f 706f 696e        mount_poin
│ │ │ +001d6e10: 745f 6d61 7463 685f 7265 6765 7870 3d22  t_match_regexp="
│ │ │ +001d6e20: 2428 7072 696e 7466 2022 5e5b 5b3a 7370  $(printf "^[[:sp
│ │ │ +001d6e30: 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a  ace:]]*[^#].*[[:
│ │ │ +001d6e40: 7370 6163 653a 5d5d 2573 5b5b 3a73 7061  space:]]%s[[:spa
│ │ │ +001d6e50: 6365 3a5d 5d22 2022 2f76 6172 2f6c 6f67  ce:]]" "/var/log
│ │ │ +001d6e60: 2229 220a 0a20 2020 2067 7265 7020 2224  ")"..    grep "$
│ │ │ +001d6e70: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001d6e80: 685f 7265 6765 7870 2220 2d71 202f 6574  h_regexp" -q /et
│ │ │ +001d6e90: 632f 6673 7461 6220 5c0a 2020 2020 2020  c/fstab \.      
│ │ │ +001d6ea0: 2020 7c7c 207b 2065 6368 6f20 2254 6865    || { echo "The
│ │ │ +001d6eb0: 206d 6f75 6e74 2070 6f69 6e74 2027 2f76   mount point '/v
│ │ │ +001d6ec0: 6172 2f6c 6f67 2720 6973 206e 6f74 2065  ar/log' is not e
│ │ │ +001d6ed0: 7665 6e20 696e 202f 6574 632f 6673 7461  ven in /etc/fsta
│ │ │ +001d6ee0: 622c 2073 6f20 7765 2063 616e 2774 2073  b, so we can't s
│ │ │ +001d6ef0: 6574 2075 7020 6d6f 756e 7420 6f70 7469  et up mount opti
│ │ │ +001d6f00: 6f6e 7322 2026 6774 3b26 616d 703b 323b  ons" >&2;
│ │ │ +001d6f10: 0a20 2020 2020 2020 2020 2020 2020 2020  .               
│ │ │ +001d6f20: 2065 6368 6f20 224e 6f74 2072 656d 6564   echo "Not remed
│ │ │ +001d6f30: 6961 7469 6e67 2c20 6265 6361 7573 6520  iating, because 
│ │ │ +001d6f40: 7468 6572 6520 6973 206e 6f20 7265 636f  there is no reco
│ │ │ +001d6f50: 7264 206f 6620 2f76 6172 2f6c 6f67 2069  rd of /var/log i
│ │ │ +001d6f60: 6e20 2f65 7463 2f66 7374 6162 2220 2667  n /etc/fstab" &g
│ │ │ +001d6f70: 743b 2661 6d70 3b32 3b20 7265 7475 726e  t;&2; return
│ │ │ +001d6f80: 2031 3b20 7d0a 2020 2020 0a0a 0a20 2020   1; }.    ...   
│ │ │ +001d6f90: 206d 6f75 6e74 5f70 6f69 6e74 5f6d 6174   mount_point_mat
│ │ │ +001d6fa0: 6368 5f72 6567 6578 703d 2224 2870 7269  ch_regexp="$(pri
│ │ │ +001d6fb0: 6e74 6620 225e 5b5b 3a73 7061 6365 3a5d  ntf "^[[:space:]
│ │ │ +001d6fc0: 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061 6365  ]*[^#].*[[:space
│ │ │ +001d6fd0: 3a5d 5d25 735b 5b3a 7370 6163 653a 5d5d  :]]%s[[:space:]]
│ │ │ +001d6fe0: 2220 2f76 6172 2f6c 6f67 2922 0a0a 2020  " /var/log)"..  
│ │ │ +001d6ff0: 2020 2320 4966 2074 6865 206d 6f75 6e74    # If the mount
│ │ │ +001d7000: 2070 6f69 6e74 2069 7320 6e6f 7420 696e   point is not in
│ │ │ +001d7010: 202f 6574 632f 6673 7461 622c 2067 6574   /etc/fstab, get
│ │ │ +001d7020: 2070 7265 7669 6f75 7320 6d6f 756e 7420   previous mount 
│ │ │ +001d7030: 6f70 7469 6f6e 7320 6672 6f6d 202f 6574  options from /et
│ │ │ +001d7040: 632f 6d74 6162 0a20 2020 2069 6620 2120  c/mtab.    if ! 
│ │ │ +001d7050: 6772 6570 202d 7120 2224 6d6f 756e 745f  grep -q "$mount_
│ │ │ +001d7060: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001d7070: 7870 2220 2f65 7463 2f66 7374 6162 3b20  xp" /etc/fstab; 
│ │ │ +001d7080: 7468 656e 0a20 2020 2020 2020 2023 2072  then.        # r
│ │ │ +001d7090: 756e 7469 6d65 206f 7074 7320 7769 7468  untime opts with
│ │ │ +001d70a0: 6f75 7420 736f 6d65 2061 7574 6f6d 6174  out some automat
│ │ │ +001d70b0: 6963 206b 6572 6e65 6c2f 7573 6572 7370  ic kernel/usersp
│ │ │ +001d70c0: 6163 652d 6164 6465 6420 6465 6661 756c  ace-added defaul
│ │ │ +001d70d0: 7473 0a20 2020 2020 2020 2070 7265 7669  ts.        previ
│ │ │ +001d70e0: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ +001d70f0: 2867 7265 7020 2224 6d6f 756e 745f 706f  (grep "$mount_po
│ │ │ +001d7100: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001d7110: 2220 2f65 7463 2f6d 7461 6220 7c20 6865  " /etc/mtab | he
│ │ │ +001d7120: 6164 202d 3120 7c20 2061 776b 2027 7b70  ad -1 |  awk '{p
│ │ │ +001d7130: 7269 6e74 2024 347d 2720 5c0a 2020 2020  rint $4}' \.    
│ │ │ +001d7140: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +001d7150: 7c20 7365 6420 2d45 2022 732f 2872 777c  | sed -E "s/(rw|
│ │ │ +001d7160: 6465 6661 756c 7473 7c73 6563 6c61 6265  defaults|seclabe
│ │ │ +001d7170: 6c7c 6e6f 6578 6563 2928 2c7c 2429 2f2f  l|noexec)(,|$)//
│ │ │ +001d7180: 673b 732f 2c24 2f2f 2229 0a20 2020 2020  g;s/,$//").     
│ │ │ +001d7190: 2020 205b 2022 2470 7265 7669 6f75 735f     [ "$previous_
│ │ │ +001d71a0: 6d6f 756e 745f 6f70 7473 2220 5d20 2661  mount_opts" ] &a
│ │ │ +001d71b0: 6d70 3b26 616d 703b 2070 7265 7669 6f75  mp;& previou
│ │ │ +001d71c0: 735f 6d6f 756e 745f 6f70 7473 2b3d 222c  s_mount_opts+=",
│ │ │ +001d71d0: 220a 2020 2020 2020 2020 2320 496e 2069  ".        # In i
│ │ │ +001d71e0: 736f 3936 3630 2066 696c 6573 7973 7465  so9660 filesyste
│ │ │ +001d71f0: 6d73 206d 7461 6220 636f 756c 6420 6465  ms mtab could de
│ │ │ +001d7200: 7363 7269 6265 2061 2022 626c 6f63 6b73  scribe a "blocks
│ │ │ +001d7210: 697a 6522 2076 616c 7565 2c20 7468 6973  ize" value, this
│ │ │ +001d7220: 2073 686f 756c 6420 6265 2072 6566 6c65   should be refle
│ │ │ +001d7230: 6374 6564 2069 6e0a 2020 2020 2020 2020  cted in.        
│ │ │ +001d7240: 2320 6673 7461 6220 6173 2022 626c 6f63  # fstab as "bloc
│ │ │ +001d7250: 6b22 2e20 2054 6865 206e 6578 7420 7661  k".  The next va
│ │ │ +001d7260: 7269 6162 6c65 2069 7320 746f 2073 6174  riable is to sat
│ │ │ +001d7270: 6973 6679 2073 6865 6c6c 6368 6563 6b20  isfy shellcheck 
│ │ │ +001d7280: 5343 3230 3530 2e0a 2020 2020 2020 2020  SC2050..        
│ │ │ +001d7290: 6673 5f74 7970 653d 2222 0a20 2020 2020  fs_type="".     
│ │ │ +001d72a0: 2020 2069 6620 5b20 2022 2466 735f 7479     if [  "$fs_ty
│ │ │ +001d72b0: 7065 2220 3d3d 2022 6973 6f39 3636 3022  pe" == "iso9660"
│ │ │ +001d72c0: 205d 203b 2074 6865 6e0a 2020 2020 2020   ] ; then.      
│ │ │ +001d72d0: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ +001d72e0: 6f75 6e74 5f6f 7074 733d 2428 7365 6420  ount_opts=$(sed 
│ │ │ +001d72f0: 2773 2f62 6c6f 636b 7369 7a65 3d2f 626c  's/blocksize=/bl
│ │ │ +001d7300: 6f63 6b3d 2f27 2026 6c74 3b26 6c74 3b26  ock=/' <<&
│ │ │ +001d7310: 6c74 3b20 2224 7072 6576 696f 7573 5f6d  lt; "$previous_m
│ │ │ +001d7320: 6f75 6e74 5f6f 7074 7322 290a 2020 2020  ount_opts").    
│ │ │ +001d7330: 2020 2020 6669 0a20 2020 2020 2020 2065      fi.        e
│ │ │ +001d7340: 6368 6f20 2220 2f76 6172 2f6c 6f67 2020  cho " /var/log  
│ │ │ +001d7350: 6465 6661 756c 7473 2c24 7b70 7265 7669  defaults,${previ
│ │ │ +001d7360: 6f75 735f 6d6f 756e 745f 6f70 7473 7d6e  ous_mount_opts}n
│ │ │ +001d7370: 6f65 7865 6320 3020 3022 2026 6774 3b26  oexec 0 0" >&
│ │ │ +001d7380: 6774 3b20 2f65 7463 2f66 7374 6162 0a20  gt; /etc/fstab. 
│ │ │ +001d7390: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ +001d73a0: 745f 6f70 7420 6f70 7469 6f6e 2069 7320  t_opt option is 
│ │ │ +001d73b0: 6e6f 7420 616c 7265 6164 7920 696e 2074  not already in t
│ │ │ +001d73c0: 6865 206d 6f75 6e74 2070 6f69 6e74 2773  he mount point's
│ │ │ +001d73d0: 202f 6574 632f 6673 7461 6220 656e 7472   /etc/fstab entr
│ │ │ +001d73e0: 792c 2061 6464 2069 740a 2020 2020 656c  y, add it.    el
│ │ │ +001d73f0: 6966 2021 2067 7265 7020 2224 6d6f 756e  if ! grep "$moun
│ │ │ +001d7400: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001d7410: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ +001d7420: 207c 2067 7265 7020 2d71 2022 6e6f 6578   | grep -q "noex
│ │ │ +001d7430: 6563 223b 2074 6865 6e0a 2020 2020 2020  ec"; then.      
│ │ │ +001d7440: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ +001d7450: 5f6f 7074 733d 2428 6772 6570 2022 246d  _opts=$(grep "$m
│ │ │ +001d7460: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001d7470: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ +001d7480: 7461 6220 7c20 6177 6b20 277b 7072 696e  tab | awk '{prin
│ │ │ +001d7490: 7420 2434 7d27 290a 2020 2020 2020 2020  t $4}').        
│ │ │ +001d74a0: 7365 6420 2d69 2022 737c 5c28 247b 6d6f  sed -i "s|\(${mo
│ │ │ +001d74b0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001d74c0: 7265 6765 7870 7d2e 2a24 7b70 7265 7669  regexp}.*${previ
│ │ │ +001d74d0: 6f75 735f 6d6f 756e 745f 6f70 7473 7d5c  ous_mount_opts}\
│ │ │ +001d74e0: 297c 5c31 2c6e 6f65 7865 637c 2220 2f65  )|\1,noexec|" /e
│ │ │ +001d74f0: 7463 2f66 7374 6162 0a20 2020 2066 690a  tc/fstab.    fi.
│ │ │ +001d7500: 0a0a 2020 2020 6966 206d 6b64 6972 202d  ..    if mkdir -
│ │ │ +001d7510: 7020 222f 7661 722f 6c6f 6722 3b20 7468  p "/var/log"; th
│ │ │ +001d7520: 656e 0a20 2020 2020 2020 2069 6620 6d6f  en.        if mo
│ │ │ +001d7530: 756e 7470 6f69 6e74 202d 7120 222f 7661  untpoint -q "/va
│ │ │ +001d7540: 722f 6c6f 6722 3b20 7468 656e 0a20 2020  r/log"; then.   
│ │ │ +001d7550: 2020 2020 2020 2020 206d 6f75 6e74 202d           mount -
│ │ │ +001d7560: 6f20 7265 6d6f 756e 7420 2d2d 7461 7267  o remount --targ
│ │ │ +001d7570: 6574 2022 2f76 6172 2f6c 6f67 220a 2020  et "/var/log".  
│ │ │ +001d7580: 2020 2020 2020 6669 0a20 2020 2066 690a        fi.    fi.
│ │ │ +001d7590: 7d0a 0a70 6572 666f 726d 5f72 656d 6564  }..perform_remed
│ │ │ +001d75a0: 6961 7469 6f6e 0a0a 656c 7365 0a20 2020  iation..else.   
│ │ │ +001d75b0: 2026 6774 3b26 616d 703b 3220 6563 686f   >&2 echo
│ │ │ +001d75c0: 2027 5265 6d65 6469 6174 696f 6e20 6973   'Remediation is
│ │ │ +001d75d0: 206e 6f74 2061 7070 6c69 6361 626c 652c   not applicable,
│ │ │ +001d75e0: 206e 6f74 6869 6e67 2077 6173 2064 6f6e   nothing was don
│ │ │ +001d75f0: 6527 0a66 690a 3c2f 636f 6465 3e3c 2f70  e'.fi.

Remediatio │ │ │ +001d76b0: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ +001d76c0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +001d7740: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +001d7750: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +001d7760: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:highReboo │ │ │ +001d77a0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +001d77b0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ +001d77d0: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ +001d77e0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.part /va
│ │ │ +001d7800: 722f 6c6f 6720 2d2d 6d6f 756e 746f 7074  r/log --mountopt
│ │ │ +001d7810: 696f 6e73 3d22 6e6f 6578 6563 220a 3c2f  ions="noexec".
Remediation Ana │ │ │ -001d8490: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ -001d84a0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -001d8520: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -001d8540: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr> │ │ │ -001d8590: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ -001d85c0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.part /var/log
│ │ │ -001d85e0: 202d 2d6d 6f75 6e74 6f70 7469 6f6e 733d   --mountoptions=
│ │ │ -001d85f0: 226e 6f73 7569 6422 0a3c 2f63 6f64 653e  "nosuid".
│ │ │ -001d8600: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -001d86b0: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -001d86c0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -001d86d0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -001d8700: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
low
Disr │ │ │ -001d8550: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -001d8560: 6869 6768 3c2f 7464 3e3c 2f74 723e 3c74 high
Reboot:false
Str │ │ │ -001d85a0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ -001d85b0: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
< │ │ │ -001d8770: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption: │ │ │ -001d8790: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -001d87c0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Comple │ │ │ -001d8750: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -001d8760: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
high
Reb │ │ │ -001d87a0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -001d87b0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:configure< │ │ │ -001d87e0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -001d8800: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ -001d8810: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ -001d8820: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ -001d8830: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ -001d8840: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -001d8850: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ -001d8860: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001d8870: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ -001d8880: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -001d8890: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001d88a0: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -001d88b0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ -001d88c0: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ -001d88d0: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ -001d88e0: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001d88f0: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001d8900: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001d8910: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001d8920: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001d8930: 7469 6f6e 5f76 6172 5f6c 6f67 5f6e 6f73  tion_var_log_nos
│ │ │ -001d8940: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f  uid.  - no_reboo
│ │ │ -001d8950: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ -001d8960: 3a20 2741 6464 206e 6f73 7569 6420 4f70  : 'Add nosuid Op
│ │ │ -001d8970: 7469 6f6e 2074 6f20 2f76 6172 2f6c 6f67  tion to /var/log
│ │ │ -001d8980: 3a20 4368 6563 6b20 696e 666f 726d 6174  : Check informat
│ │ │ -001d8990: 696f 6e20 6173 736f 6369 6174 6564 2074  ion associated t
│ │ │ -001d89a0: 6f20 6d6f 756e 7470 6f69 6e74 270a 2020  o mountpoint'.  
│ │ │ -001d89b0: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -001d89c0: 636f 6d6d 616e 643a 2066 696e 646d 6e74  command: findmnt
│ │ │ -001d89d0: 202d 2d66 7374 6162 2027 2f76 6172 2f6c   --fstab '/var/l
│ │ │ -001d89e0: 6f67 270a 2020 7265 6769 7374 6572 3a20  og'.  register: 
│ │ │ -001d89f0: 6465 7669 6365 5f6e 616d 650a 2020 6661  device_name.  fa
│ │ │ -001d8a00: 696c 6564 5f77 6865 6e3a 2064 6576 6963  iled_when: devic
│ │ │ -001d8a10: 655f 6e61 6d65 2e72 6320 2667 743b 2031  e_name.rc > 1
│ │ │ -001d8a20: 0a20 2063 6861 6e67 6564 5f77 6865 6e3a  .  changed_when:
│ │ │ -001d8a30: 2066 616c 7365 0a20 2063 6865 636b 5f6d   false.  check_m
│ │ │ -001d8a40: 6f64 653a 2066 616c 7365 0a20 2077 6865  ode: false.  whe
│ │ │ -001d8a50: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ -001d8a60: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -001d8a70: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001d8a80: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ -001d8a90: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ -001d8aa0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001d8ab0: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -001d8ac0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001d8ad0: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ -001d8ae0: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001d8af0: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001d8b00: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001d8b10: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -001d8b20: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -001d8b30: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ -001d8b40: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001d8b50: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001d8b60: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ -001d8b70: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -001d8b80: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ -001d8b90: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001d8ba0: 2722 2f76 6172 2f6c 6f67 2220 696e 2061  '"/var/log" in a
│ │ │ -001d8bb0: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ -001d8bc0: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ -001d8bd0: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ -001d8be0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -001d8bf0: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ -001d8c00: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001d8c10: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ -001d8c20: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -001d8c30: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001d8c40: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001d8c50: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ -001d8c60: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ -001d8c70: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -001d8c80: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -001d8c90: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001d8ca0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001d8cb0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001d8cc0: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -001d8cd0: 696f 6e5f 7661 725f 6c6f 675f 6e6f 7375  ion_var_log_nosu
│ │ │ -001d8ce0: 6964 0a20 202d 206e 6f5f 7265 626f 6f74  id.  - no_reboot
│ │ │ -001d8cf0: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ -001d8d00: 2027 4164 6420 6e6f 7375 6964 204f 7074   'Add nosuid Opt
│ │ │ -001d8d10: 696f 6e20 746f 202f 7661 722f 6c6f 673a  ion to /var/log:
│ │ │ -001d8d20: 2043 7265 6174 6520 6d6f 756e 745f 696e   Create mount_in
│ │ │ -001d8d30: 666f 2064 6963 7469 6f6e 6172 7920 7661  fo dictionary va
│ │ │ -001d8d40: 7269 6162 6c65 270a 2020 7365 745f 6661  riable'.  set_fa
│ │ │ -001d8d50: 6374 3a0a 2020 2020 6d6f 756e 745f 696e  ct:.    mount_in
│ │ │ -001d8d60: 666f 3a20 277b 7b20 6d6f 756e 745f 696e  fo: '{{ mount_in
│ │ │ -001d8d70: 666f 7c64 6566 6175 6c74 287b 7d29 7c63  fo|default({})|c
│ │ │ -001d8d80: 6f6d 6269 6e65 287b 6974 656d 2e30 3a20  ombine({item.0: 
│ │ │ -001d8d90: 6974 656d 2e31 7d29 207d 7d27 0a20 2077  item.1}) }}'.  w
│ │ │ -001d8da0: 6974 685f 746f 6765 7468 6572 3a0a 2020  ith_together:.  
│ │ │ -001d8db0: 2d20 277b 7b20 6465 7669 6365 5f6e 616d  - '{{ device_nam
│ │ │ -001d8dc0: 652e 7374 646f 7574 5f6c 696e 6573 5b30  e.stdout_lines[0
│ │ │ -001d8dd0: 5d2e 7370 6c69 7428 2920 7c20 6d61 7028  ].split() | map(
│ │ │ -001d8de0: 2727 6c6f 7765 7227 2729 207c 206c 6973  ''lower'') | lis
│ │ │ -001d8df0: 7420 7d7d 270a 2020 2d20 277b 7b20 6465  t }}'.  - '{{ de
│ │ │ -001d8e00: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001d8e10: 5f6c 696e 6573 5b31 5d2e 7370 6c69 7428  _lines[1].split(
│ │ │ -001d8e20: 2920 7c20 6c69 7374 207d 7d27 0a20 2077  ) | list }}'.  w
│ │ │ -001d8e30: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ -001d8e40: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -001d8e50: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001d8e60: 6765 7320 616e 6420 2272 706d 2d6f 7374  ges and "rpm-ost
│ │ │ -001d8e70: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -001d8e80: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -001d8e90: 2020 2061 6e64 2022 626f 6f74 6322 2069     and "bootc" i
│ │ │ -001d8ea0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001d8eb0: 7061 636b 6167 6573 2061 6e64 206e 6f74  packages and not
│ │ │ -001d8ec0: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ -001d8ed0: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ -001d8ee0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -001d8ef0: 2020 2061 6e64 2022 6f73 7472 6565 2220     and "ostree" 
│ │ │ -001d8f00: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ -001d8f10: 636d 646c 696e 6520 2920 616e 6420 6e6f  cmdline ) and no
│ │ │ -001d8f20: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ -001d8f30: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ -001d8f40: 696e 0a20 2020 205b 2264 6f63 6b65 7222  in.    ["docker"
│ │ │ -001d8f50: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ -001d8f60: 222c 2022 706f 646d 616e 222c 2022 636f  ", "podman", "co
│ │ │ -001d8f70: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ -001d8f80: 2d20 2722 2f76 6172 2f6c 6f67 2220 696e  - '"/var/log" in
│ │ │ -001d8f90: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ -001d8fa0: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ -001d8fb0: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ -001d8fc0: 0a20 202d 2064 6576 6963 655f 6e61 6d65  .  - device_name
│ │ │ -001d8fd0: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ -001d8fe0: 6564 2061 6e64 2064 6576 6963 655f 6e61  ed and device_na
│ │ │ -001d8ff0: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320  me.stdout_lines 
│ │ │ -001d9000: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ -001d9010: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001d9020: 7574 207c 206c 656e 6774 6820 2667 743b  ut | length >
│ │ │ -001d9030: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ -001d9040: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001d9050: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001d9060: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ -001d9070: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -001d9080: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001d9090: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ -001d90a0: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ -001d90b0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001d90c0: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ -001d90d0: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001d90e0: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001d90f0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001d9100: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001d9110: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001d9120: 745f 6f70 7469 6f6e 5f76 6172 5f6c 6f67  t_option_var_log
│ │ │ -001d9130: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ -001d9140: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ -001d9150: 6e61 6d65 3a20 2741 6464 206e 6f73 7569  name: 'Add nosui
│ │ │ -001d9160: 6420 4f70 7469 6f6e 2074 6f20 2f76 6172  d Option to /var
│ │ │ -001d9170: 2f6c 6f67 3a20 4966 202f 7661 722f 6c6f  /log: If /var/lo
│ │ │ -001d9180: 6720 6e6f 7420 6d6f 756e 7465 642c 2063  g not mounted, c
│ │ │ -001d9190: 7261 6674 206d 6f75 6e74 5f69 6e66 6f0a  raft mount_info.
│ │ │ -001d91a0: 2020 2020 6d61 6e75 616c 6c79 270a 2020      manually'.  
│ │ │ -001d91b0: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ -001d91c0: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ -001d91d0: 756e 745f 696e 666f 7c64 6566 6175 6c74  unt_info|default
│ │ │ -001d91e0: 287b 7d29 7c63 6f6d 6269 6e65 287b 6974  ({})|combine({it
│ │ │ -001d91f0: 656d 2e30 3a20 6974 656d 2e31 7d29 207d  em.0: item.1}) }
│ │ │ -001d9200: 7d27 0a20 2077 6974 685f 746f 6765 7468  }'.  with_togeth
│ │ │ -001d9210: 6572 3a0a 2020 2d20 2d20 7461 7267 6574  er:.  - - target
│ │ │ -001d9220: 0a20 2020 202d 2073 6f75 7263 650a 2020  .    - source.  
│ │ │ -001d9230: 2020 2d20 6673 7479 7065 0a20 2020 202d    - fstype.    -
│ │ │ -001d9240: 206f 7074 696f 6e73 0a20 202d 202d 202f   options.  - - /
│ │ │ -001d9250: 7661 722f 6c6f 670a 2020 2020 2d20 2727  var/log.    - ''
│ │ │ -001d9260: 0a20 2020 202d 2027 270a 2020 2020 2d20  .    - ''.    - 
│ │ │ -001d9270: 6465 6661 756c 7473 0a20 2077 6865 6e3a  defaults.  when:
│ │ │ -001d9280: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ -001d9290: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -001d92a0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001d92b0: 616e 6420 2272 706d 2d6f 7374 7265 6522  and "rpm-ostree"
│ │ │ -001d92c0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001d92d0: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001d92e0: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ -001d92f0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001d9300: 6167 6573 2061 6e64 206e 6f74 2022 6f70  ages and not "op
│ │ │ -001d9310: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ -001d9320: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001d9330: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001d9340: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ -001d9350: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ -001d9360: 696e 6520 2920 616e 6420 6e6f 7420 2820  ine ) and not ( 
│ │ │ -001d9370: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ -001d9380: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20  zation_type in. 
│ │ │ -001d9390: 2020 205b 2264 6f63 6b65 7222 2c20 226c     ["docker", "l
│ │ │ -001d93a0: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ -001d93b0: 706f 646d 616e 222c 2022 636f 6e74 6169  podman", "contai
│ │ │ -001d93c0: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ -001d93d0: 2f76 6172 2f6c 6f67 2220 696e 2061 6e73  /var/log" in ans
│ │ │ -001d93e0: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ -001d93f0: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ -001d9400: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ -001d9410: 2028 222d 2d66 7374 6162 2220 7c20 6c65   ("--fstab" | le
│ │ │ -001d9420: 6e67 7468 203d 3d20 3029 0a20 202d 2064  ngth == 0).  - d
│ │ │ -001d9430: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001d9440: 7420 6973 2064 6566 696e 6564 2061 6e64  t is defined and
│ │ │ -001d9450: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ -001d9460: 6f75 745f 6c69 6e65 7320 6973 2064 6566  out_lines is def
│ │ │ -001d9470: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ -001d9480: 5f6e 616d 652e 7374 646f 7574 207c 206c  _name.stdout | l
│ │ │ -001d9490: 656e 6774 6820 3d3d 2030 290a 2020 7461  ength == 0).  ta
│ │ │ -001d94a0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -001d94b0: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ -001d94c0: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ -001d94d0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001d94e0: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ -001d94f0: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ -001d9500: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001d9510: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ -001d9520: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ -001d9530: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -001d9540: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ -001d9550: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -001d9560: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001d9570: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -001d9580: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ -001d9590: 5f76 6172 5f6c 6f67 5f6e 6f73 7569 640a  _var_log_nosuid.
│ │ │ -001d95a0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001d95b0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ -001d95c0: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ -001d95d0: 2074 6f20 2f76 6172 2f6c 6f67 3a20 4d61   to /var/log: Ma
│ │ │ -001d95e0: 6b65 2073 7572 6520 6e6f 7375 6964 206f  ke sure nosuid o
│ │ │ -001d95f0: 7074 696f 6e20 6973 2070 6172 7420 6f66  ption is part of
│ │ │ -001d9600: 2074 6865 2074 6f0a 2020 2020 2f76 6172   the to.    /var
│ │ │ -001d9610: 2f6c 6f67 206f 7074 696f 6e73 270a 2020  /log options'.  
│ │ │ -001d9620: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ -001d9630: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ -001d9640: 756e 745f 696e 666f 207c 2063 6f6d 6269  unt_info | combi
│ │ │ -001d9650: 6e65 2820 7b27 276f 7074 696f 6e73 2727  ne( {''options''
│ │ │ -001d9660: 3a27 2727 277e 286d 6f75 6e74 5f69 6e66  :''''~(mount_inf
│ │ │ -001d9670: 6f2e 6f70 7469 6f6e 7320 7c0a 2020 2020  o.options |.    
│ │ │ -001d9680: 2020 6465 6661 756c 7428 2727 2727 2929    default(''''))
│ │ │ -001d9690: 7e28 2727 2c27 2720 6966 2028 6d6f 756e  ~('','' if (moun
│ │ │ -001d96a0: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ -001d96b0: 2064 6566 6175 6c74 2827 2727 2729 2920   default('''')) 
│ │ │ -001d96c0: 656c 7365 2027 2727 2729 7e27 276e 6f73  else '''')~''nos
│ │ │ -001d96d0: 7569 6427 270a 2020 2020 2020 7d29 207d  uid''.      }) }
│ │ │ -001d96e0: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028  }'.  when:.  - (
│ │ │ -001d96f0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -001d9700: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001d9710: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ -001d9720: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ -001d9730: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001d9740: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ -001d9750: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ -001d9760: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001d9770: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -001d9780: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -001d9790: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001d97a0: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ -001d97b0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001d97c0: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ -001d97d0: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -001d97e0: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -001d97f0: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ -001d9800: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ -001d9810: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ -001d9820: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ -001d9830: 2920 290a 2020 2d20 2722 2f76 6172 2f6c  ) ).  - '"/var/l
│ │ │ -001d9840: 6f67 2220 696e 2061 6e73 6962 6c65 5f6d  og" in ansible_m
│ │ │ -001d9850: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ -001d9860: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ -001d9870: 206c 6973 7427 0a20 202d 206d 6f75 6e74   list'.  - mount
│ │ │ -001d9880: 5f69 6e66 6f20 6973 2064 6566 696e 6564  _info is defined
│ │ │ -001d9890: 2061 6e64 2022 6e6f 7375 6964 2220 6e6f   and "nosuid" no
│ │ │ -001d98a0: 7420 696e 2028 6d6f 756e 745f 696e 666f  t in (mount_info
│ │ │ -001d98b0: 2e6f 7074 696f 6e73 207c 2064 6566 6175  .options | defau
│ │ │ -001d98c0: 6c74 2827 2729 290a 2020 7461 6773 3a0a  lt('')).  tags:.
│ │ │ -001d98d0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001d98e0: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ -001d98f0: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ -001d9900: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001d9910: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ -001d9920: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ -001d9930: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001d9940: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ -001d9950: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ -001d9960: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -001d9970: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -001d9980: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -001d9990: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -001d99a0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001d99b0: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ -001d99c0: 5f6c 6f67 5f6e 6f73 7569 640a 2020 2d20  _log_nosuid.  - 
│ │ │ -001d99d0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001d99e0: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ -001d99f0: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20  osuid Option to 
│ │ │ -001d9a00: 2f76 6172 2f6c 6f67 3a20 456e 7375 7265  /var/log: Ensure
│ │ │ -001d9a10: 202f 7661 722f 6c6f 6720 6973 206d 6f75   /var/log is mou
│ │ │ -001d9a20: 6e74 6564 2077 6974 6820 6e6f 7375 6964  nted with nosuid
│ │ │ -001d9a30: 206f 7074 696f 6e27 0a20 2061 6e73 6962   option'.  ansib
│ │ │ -001d9a40: 6c65 2e70 6f73 6978 2e6d 6f75 6e74 3a0a  le.posix.mount:.
│ │ │ -001d9a50: 2020 2020 7061 7468 3a20 2f76 6172 2f6c      path: /var/l
│ │ │ -001d9a60: 6f67 0a20 2020 2073 7263 3a20 277b 7b20  og.    src: '{{ 
│ │ │ -001d9a70: 6d6f 756e 745f 696e 666f 2e73 6f75 7263  mount_info.sourc
│ │ │ -001d9a80: 6520 7c20 6465 6661 756c 7428 2727 2727  e | default(''''
│ │ │ -001d9a90: 2920 7d7d 270a 2020 2020 6f70 7473 3a20  ) }}'.    opts: 
│ │ │ -001d9aa0: 277b 7b20 6d6f 756e 745f 696e 666f 2e6f  '{{ mount_info.o
│ │ │ -001d9ab0: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ -001d9ac0: 2827 2727 2729 207d 7d27 0a20 2020 2073  ('''') }}'.    s
│ │ │ -001d9ad0: 7461 7465 3a20 6d6f 756e 7465 640a 2020  tate: mounted.  
│ │ │ -001d9ae0: 2020 6673 7479 7065 3a20 277b 7b20 6d6f    fstype: '{{ mo
│ │ │ -001d9af0: 756e 745f 696e 666f 2e66 7374 7970 6520  unt_info.fstype 
│ │ │ -001d9b00: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ -001d9b10: 7d7d 270a 2020 7265 6769 7374 6572 3a20  }}'.  register: 
│ │ │ -001d9b20: 6d6f 756e 745f 7265 7375 6c74 0a20 2066  mount_result.  f
│ │ │ -001d9b30: 6169 6c65 645f 7768 656e 3a0a 2020 2d20  ailed_when:.  - 
│ │ │ -001d9b40: 6d6f 756e 745f 7265 7375 6c74 2069 7320  mount_result is 
│ │ │ -001d9b50: 6661 696c 6564 0a20 202d 2027 2727 7461  failed.  - '''ta
│ │ │ -001d9b60: 7267 6574 2069 7320 6275 7379 2727 206e  rget is busy'' n
│ │ │ -001d9b70: 6f74 2069 6e20 286d 6f75 6e74 5f72 6573  ot in (mount_res
│ │ │ -001d9b80: 756c 742e 6d73 6720 7c20 6465 6661 756c  ult.msg | defaul
│ │ │ -001d9b90: 7428 2727 2727 2929 270a 2020 2d20 2727  t(''''))'.  - ''
│ │ │ -001d9ba0: 2761 6c72 6561 6479 206d 6f75 6e74 6564  'already mounted
│ │ │ -001d9bb0: 2727 206e 6f74 2069 6e20 286d 6f75 6e74  '' not in (mount
│ │ │ -001d9bc0: 5f72 6573 756c 742e 6d73 6720 7c20 6465  _result.msg | de
│ │ │ -001d9bd0: 6661 756c 7428 2727 2727 2929 270a 2020  fault(''''))'.  
│ │ │ -001d9be0: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ -001d9bf0: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ -001d9c00: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001d9c10: 6167 6573 2061 6e64 2022 7270 6d2d 6f73  ages and "rpm-os
│ │ │ -001d9c20: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001d9c30: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001d9c40: 2020 2020 616e 6420 2262 6f6f 7463 2220      and "bootc" 
│ │ │ -001d9c50: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001d9c60: 2e70 6163 6b61 6765 7320 616e 6420 6e6f  .packages and no
│ │ │ -001d9c70: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ -001d9c80: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ -001d9c90: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001d9ca0: 2020 2020 616e 6420 226f 7374 7265 6522      and "ostree"
│ │ │ -001d9cb0: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ -001d9cc0: 5f63 6d64 6c69 6e65 2029 2061 6e64 206e  _cmdline ) and n
│ │ │ -001d9cd0: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ -001d9ce0: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ -001d9cf0: 2069 6e0a 2020 2020 5b22 646f 636b 6572   in.    ["docker
│ │ │ -001d9d00: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ -001d9d10: 7a22 2c20 2270 6f64 6d61 6e22 2c20 2263  z", "podman", "c
│ │ │ -001d9d20: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ -001d9d30: 202d 2027 222f 7661 722f 6c6f 6722 2069   - '"/var/log" i
│ │ │ -001d9d40: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ -001d9d50: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ -001d9d60: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ -001d9d70: 270a 2020 2d20 6d6f 756e 745f 696e 666f  '.  - mount_info
│ │ │ -001d9d80: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ -001d9d90: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ -001d9da0: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ -001d9db0: 6e64 2028 6465 7669 6365 5f6e 616d 652e  nd (device_name.
│ │ │ -001d9dc0: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ -001d9dd0: 2667 743b 2030 2929 206f 7220 2822 2d2d  > 0)) or ("--
│ │ │ -001d9de0: 6673 7461 6222 0a20 2020 207c 206c 656e  fstab".    | len
│ │ │ -001d9df0: 6774 6820 3d3d 2030 290a 2020 7461 6773  gth == 0).  tags
│ │ │ -001d9e00: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -001d9e10: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ -001d9e20: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ -001d9e30: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001d9e40: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ -001d9e50: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ -001d9e60: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001d9e70: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ -001d9e80: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ -001d9e90: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ -001d9ea0: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ -001d9eb0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ -001d9ec0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ -001d9ed0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -001d9ee0: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76  - mount_option_v
│ │ │ -001d9ef0: 6172 5f6c 6f67 5f6e 6f73 7569 640a 2020  ar_log_nosuid.  
│ │ │ -001d9f00: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -001d9f10: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e  ed.
│ │ │ -001d9f20: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation S │ │ │ -001d9fd0: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ -001d9fe0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -001da080: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Reboot:false
# Remediation
│ │ │ -001da0a0: 2069 7320 6170 706c 6963 6162 6c65 206f   is applicable o
│ │ │ -001da0b0: 6e6c 7920 696e 2063 6572 7461 696e 2070  nly in certain p
│ │ │ -001da0c0: 6c61 7466 6f72 6d73 0a69 6620 2820 2120  latforms.if ( ! 
│ │ │ -001da0d0: 2820 7b20 7270 6d20 2d2d 7175 6965 7420  ( { rpm --quiet 
│ │ │ -001da0e0: 2d71 206b 6572 6e65 6c20 3b7d 2026 616d  -q kernel ;} &am
│ │ │ -001da0f0: 703b 2661 6d70 3b20 7b20 7270 6d20 2d2d  p;& { rpm --
│ │ │ -001da100: 7175 6965 7420 2d71 2072 706d 2d6f 7374  quiet -q rpm-ost
│ │ │ -001da110: 7265 6520 3b7d 2026 616d 703b 2661 6d70  ree ;} &&
│ │ │ -001da120: 3b20 7b20 7270 6d20 2d2d 7175 6965 7420  ; { rpm --quiet 
│ │ │ -001da130: 2d71 2062 6f6f 7463 203b 7d20 2661 6d70  -q bootc ;} &
│ │ │ -001da140: 3b26 616d 703b 207b 2021 2072 706d 202d  ;& { ! rpm -
│ │ │ -001da150: 2d71 7569 6574 202d 7120 6f70 656e 7368  -quiet -q opensh
│ │ │ -001da160: 6966 742d 6b75 6265 6c65 7420 3b7d 2026  ift-kubelet ;} &
│ │ │ -001da170: 616d 703b 2661 6d70 3b20 285b 202d 6620  amp;& ([ -f 
│ │ │ -001da180: 2f72 756e 2f6f 7374 7265 652d 626f 6f74  /run/ostree-boot
│ │ │ -001da190: 6564 205d 207c 7c20 5b20 2d4c 202f 6f73  ed ] || [ -L /os
│ │ │ -001da1a0: 7472 6565 205d 2920 2920 2661 6d70 3b26  tree ]) ) &&
│ │ │ -001da1b0: 616d 703b 2021 2028 205b 202d 6620 2f2e  amp; ! ( [ -f /.
│ │ │ -001da1c0: 646f 636b 6572 656e 7620 5d20 7c7c 205b  dockerenv ] || [
│ │ │ -001da1d0: 202d 6620 2f72 756e 2f2e 636f 6e74 6169   -f /run/.contai
│ │ │ -001da1e0: 6e65 7265 6e76 205d 2029 2029 2026 616d  nerenv ] ) ) &am
│ │ │ -001da1f0: 703b 2661 6d70 3b20 7b20 2820 6669 6e64  p;& { ( find
│ │ │ -001da200: 6d6e 7420 2d2d 6b65 726e 656c 2022 2f76  mnt --kernel "/v
│ │ │ -001da210: 6172 2f6c 6f67 2220 2667 743b 202f 6465  ar/log" > /de
│ │ │ -001da220: 762f 6e75 6c6c 207c 7c20 6669 6e64 6d6e  v/null || findmn
│ │ │ -001da230: 7420 2d2d 6673 7461 6220 222f 7661 722f  t --fstab "/var/
│ │ │ -001da240: 6c6f 6722 2026 6774 3b20 2f64 6576 2f6e  log" > /dev/n
│ │ │ -001da250: 756c 6c20 293b 207d 3b20 7468 656e 0a0a  ull ); }; then..
│ │ │ -001da260: 6675 6e63 7469 6f6e 2070 6572 666f 726d  function perform
│ │ │ -001da270: 5f72 656d 6564 6961 7469 6f6e 207b 0a0a  _remediation {..
│ │ │ -001da280: 2020 2020 0a20 2020 2020 2020 2023 2074      .        # t
│ │ │ -001da290: 6865 206d 6f75 6e74 2070 6f69 6e74 202f  he mount point /
│ │ │ -001da2a0: 7661 722f 6c6f 6720 6861 7320 746f 2062  var/log has to b
│ │ │ -001da2b0: 6520 6465 6669 6e65 6420 696e 202f 6574  e defined in /et
│ │ │ -001da2c0: 632f 6673 7461 620a 2020 2020 2020 2020  c/fstab.        
│ │ │ -001da2d0: 2320 6265 666f 7265 2074 6869 7320 7265  # before this re
│ │ │ -001da2e0: 6d65 6469 6174 696f 6e20 6361 6e20 6265  mediation can be
│ │ │ -001da2f0: 2065 7865 6375 7465 642e 2049 6e20 6361   executed. In ca
│ │ │ -001da300: 7365 2069 7420 6973 206e 6f74 2064 6566  se it is not def
│ │ │ -001da310: 696e 6564 2c20 7468 650a 2020 2020 2020  ined, the.      
│ │ │ -001da320: 2020 2320 7265 6d65 6469 6174 696f 6e20    # remediation 
│ │ │ -001da330: 6162 6f72 7473 2061 6e64 206e 6f20 6368  aborts and no ch
│ │ │ -001da340: 616e 6765 7320 7265 6761 7264 696e 6720  anges regarding 
│ │ │ -001da350: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ -001da360: 6172 6520 646f 6e65 2e0a 2020 2020 2020  are done..      
│ │ │ -001da370: 2020 6d6f 756e 745f 706f 696e 745f 6d61    mount_point_ma
│ │ │ -001da380: 7463 685f 7265 6765 7870 3d22 2428 7072  tch_regexp="$(pr
│ │ │ -001da390: 696e 7466 2022 5e5b 5b3a 7370 6163 653a  intf "^[[:space:
│ │ │ -001da3a0: 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163  ]]*[^#].*[[:spac
│ │ │ -001da3b0: 653a 5d5d 2573 5b5b 3a73 7061 6365 3a5d  e:]]%s[[:space:]
│ │ │ -001da3c0: 5d22 2022 2f76 6172 2f6c 6f67 2229 220a  ]" "/var/log")".
│ │ │ -001da3d0: 0a20 2020 2067 7265 7020 2224 6d6f 756e  .    grep "$moun
│ │ │ -001da3e0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001da3f0: 6765 7870 2220 2d71 202f 6574 632f 6673  gexp" -q /etc/fs
│ │ │ -001da400: 7461 6220 5c0a 2020 2020 2020 2020 7c7c  tab \.        ||
│ │ │ -001da410: 207b 2065 6368 6f20 2254 6865 206d 6f75   { echo "The mou
│ │ │ -001da420: 6e74 2070 6f69 6e74 2027 2f76 6172 2f6c  nt point '/var/l
│ │ │ -001da430: 6f67 2720 6973 206e 6f74 2065 7665 6e20  og' is not even 
│ │ │ -001da440: 696e 202f 6574 632f 6673 7461 622c 2073  in /etc/fstab, s
│ │ │ -001da450: 6f20 7765 2063 616e 2774 2073 6574 2075  o we can't set u
│ │ │ -001da460: 7020 6d6f 756e 7420 6f70 7469 6f6e 7322  p mount options"
│ │ │ -001da470: 2026 6774 3b26 616d 703b 323b 0a20 2020   >&2;.   
│ │ │ -001da480: 2020 2020 2020 2020 2020 2020 2065 6368               ech
│ │ │ -001da490: 6f20 224e 6f74 2072 656d 6564 6961 7469  o "Not remediati
│ │ │ -001da4a0: 6e67 2c20 6265 6361 7573 6520 7468 6572  ng, because ther
│ │ │ -001da4b0: 6520 6973 206e 6f20 7265 636f 7264 206f  e is no record o
│ │ │ -001da4c0: 6620 2f76 6172 2f6c 6f67 2069 6e20 2f65  f /var/log in /e
│ │ │ -001da4d0: 7463 2f66 7374 6162 2220 2667 743b 2661  tc/fstab" >&a
│ │ │ -001da4e0: 6d70 3b32 3b20 7265 7475 726e 2031 3b20  mp;2; return 1; 
│ │ │ -001da4f0: 7d0a 2020 2020 0a0a 0a20 2020 206d 6f75  }.    ...    mou
│ │ │ -001da500: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001da510: 6567 6578 703d 2224 2870 7269 6e74 6620  egexp="$(printf 
│ │ │ -001da520: 225e 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e  "^[[:space:]]*[^
│ │ │ -001da530: 235d 2e2a 5b5b 3a73 7061 6365 3a5d 5d25  #].*[[:space:]]%
│ │ │ -001da540: 735b 5b3a 7370 6163 653a 5d5d 2220 2f76  s[[:space:]]" /v
│ │ │ -001da550: 6172 2f6c 6f67 2922 0a0a 2020 2020 2320  ar/log)"..    # 
│ │ │ -001da560: 4966 2074 6865 206d 6f75 6e74 2070 6f69  If the mount poi
│ │ │ -001da570: 6e74 2069 7320 6e6f 7420 696e 202f 6574  nt is not in /et
│ │ │ -001da580: 632f 6673 7461 622c 2067 6574 2070 7265  c/fstab, get pre
│ │ │ -001da590: 7669 6f75 7320 6d6f 756e 7420 6f70 7469  vious mount opti
│ │ │ -001da5a0: 6f6e 7320 6672 6f6d 202f 6574 632f 6d74  ons from /etc/mt
│ │ │ -001da5b0: 6162 0a20 2020 2069 6620 2120 6772 6570  ab.    if ! grep
│ │ │ -001da5c0: 202d 7120 2224 6d6f 756e 745f 706f 696e   -q "$mount_poin
│ │ │ -001da5d0: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ -001da5e0: 2f65 7463 2f66 7374 6162 3b20 7468 656e  /etc/fstab; then
│ │ │ -001da5f0: 0a20 2020 2020 2020 2023 2072 756e 7469  .        # runti
│ │ │ -001da600: 6d65 206f 7074 7320 7769 7468 6f75 7420  me opts without 
│ │ │ -001da610: 736f 6d65 2061 7574 6f6d 6174 6963 206b  some automatic k
│ │ │ -001da620: 6572 6e65 6c2f 7573 6572 7370 6163 652d  ernel/userspace-
│ │ │ -001da630: 6164 6465 6420 6465 6661 756c 7473 0a20  added defaults. 
│ │ │ -001da640: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ -001da650: 6d6f 756e 745f 6f70 7473 3d24 2867 7265  mount_opts=$(gre
│ │ │ -001da660: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001da670: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ -001da680: 7463 2f6d 7461 6220 7c20 6865 6164 202d  tc/mtab | head -
│ │ │ -001da690: 3120 7c20 2061 776b 2027 7b70 7269 6e74  1 |  awk '{print
│ │ │ -001da6a0: 2024 347d 2720 5c0a 2020 2020 2020 2020   $4}' \.        
│ │ │ -001da6b0: 2020 2020 2020 2020 2020 2020 7c20 7365              | se
│ │ │ -001da6c0: 6420 2d45 2022 732f 2872 777c 6465 6661  d -E "s/(rw|defa
│ │ │ -001da6d0: 756c 7473 7c73 6563 6c61 6265 6c7c 6e6f  ults|seclabel|no
│ │ │ -001da6e0: 7375 6964 2928 2c7c 2429 2f2f 673b 732f  suid)(,|$)//g;s/
│ │ │ -001da6f0: 2c24 2f2f 2229 0a20 2020 2020 2020 205b  ,$//").        [
│ │ │ -001da700: 2022 2470 7265 7669 6f75 735f 6d6f 756e   "$previous_moun
│ │ │ -001da710: 745f 6f70 7473 2220 5d20 2661 6d70 3b26  t_opts" ] &&
│ │ │ -001da720: 616d 703b 2070 7265 7669 6f75 735f 6d6f  amp; previous_mo
│ │ │ -001da730: 756e 745f 6f70 7473 2b3d 222c 220a 2020  unt_opts+=",".  
│ │ │ -001da740: 2020 2020 2020 2320 496e 2069 736f 3936        # In iso96
│ │ │ -001da750: 3630 2066 696c 6573 7973 7465 6d73 206d  60 filesystems m
│ │ │ -001da760: 7461 6220 636f 756c 6420 6465 7363 7269  tab could descri
│ │ │ -001da770: 6265 2061 2022 626c 6f63 6b73 697a 6522  be a "blocksize"
│ │ │ -001da780: 2076 616c 7565 2c20 7468 6973 2073 686f   value, this sho
│ │ │ -001da790: 756c 6420 6265 2072 6566 6c65 6374 6564  uld be reflected
│ │ │ -001da7a0: 2069 6e0a 2020 2020 2020 2020 2320 6673   in.        # fs
│ │ │ -001da7b0: 7461 6220 6173 2022 626c 6f63 6b22 2e20  tab as "block". 
│ │ │ -001da7c0: 2054 6865 206e 6578 7420 7661 7269 6162   The next variab
│ │ │ -001da7d0: 6c65 2069 7320 746f 2073 6174 6973 6679  le is to satisfy
│ │ │ -001da7e0: 2073 6865 6c6c 6368 6563 6b20 5343 3230   shellcheck SC20
│ │ │ -001da7f0: 3530 2e0a 2020 2020 2020 2020 6673 5f74  50..        fs_t
│ │ │ -001da800: 7970 653d 2222 0a20 2020 2020 2020 2069  ype="".        i
│ │ │ -001da810: 6620 5b20 2022 2466 735f 7479 7065 2220  f [  "$fs_type" 
│ │ │ -001da820: 3d3d 2022 6973 6f39 3636 3022 205d 203b  == "iso9660" ] ;
│ │ │ -001da830: 2074 6865 6e0a 2020 2020 2020 2020 2020   then.          
│ │ │ -001da840: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ -001da850: 5f6f 7074 733d 2428 7365 6420 2773 2f62  _opts=$(sed 's/b
│ │ │ -001da860: 6c6f 636b 7369 7a65 3d2f 626c 6f63 6b3d  locksize=/block=
│ │ │ -001da870: 2f27 2026 6c74 3b26 6c74 3b26 6c74 3b20  /' <<< 
│ │ │ -001da880: 2224 7072 6576 696f 7573 5f6d 6f75 6e74  "$previous_mount
│ │ │ -001da890: 5f6f 7074 7322 290a 2020 2020 2020 2020  _opts").        
│ │ │ -001da8a0: 6669 0a20 2020 2020 2020 2065 6368 6f20  fi.        echo 
│ │ │ -001da8b0: 2220 2f76 6172 2f6c 6f67 2020 6465 6661  " /var/log  defa
│ │ │ -001da8c0: 756c 7473 2c24 7b70 7265 7669 6f75 735f  ults,${previous_
│ │ │ -001da8d0: 6d6f 756e 745f 6f70 7473 7d6e 6f73 7569  mount_opts}nosui
│ │ │ -001da8e0: 6420 3020 3022 2026 6774 3b26 6774 3b20  d 0 0" >> 
│ │ │ -001da8f0: 2f65 7463 2f66 7374 6162 0a20 2020 2023  /etc/fstab.    #
│ │ │ -001da900: 2049 6620 7468 6520 6d6f 756e 745f 6f70   If the mount_op
│ │ │ -001da910: 7420 6f70 7469 6f6e 2069 7320 6e6f 7420  t option is not 
│ │ │ -001da920: 616c 7265 6164 7920 696e 2074 6865 206d  already in the m
│ │ │ -001da930: 6f75 6e74 2070 6f69 6e74 2773 202f 6574  ount point's /et
│ │ │ -001da940: 632f 6673 7461 6220 656e 7472 792c 2061  c/fstab entry, a
│ │ │ -001da950: 6464 2069 740a 2020 2020 656c 6966 2021  dd it.    elif !
│ │ │ -001da960: 2067 7265 7020 2224 6d6f 756e 745f 706f   grep "$mount_po
│ │ │ -001da970: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001da980: 2220 2f65 7463 2f66 7374 6162 207c 2067  " /etc/fstab | g
│ │ │ -001da990: 7265 7020 2d71 2022 6e6f 7375 6964 223b  rep -q "nosuid";
│ │ │ -001da9a0: 2074 6865 6e0a 2020 2020 2020 2020 7072   then.        pr
│ │ │ -001da9b0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001da9c0: 733d 2428 6772 6570 2022 246d 6f75 6e74  s=$(grep "$mount
│ │ │ -001da9d0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001da9e0: 6578 7022 202f 6574 632f 6673 7461 6220  exp" /etc/fstab 
│ │ │ -001da9f0: 7c20 6177 6b20 277b 7072 696e 7420 2434  | awk '{print $4
│ │ │ -001daa00: 7d27 290a 2020 2020 2020 2020 7365 6420  }').        sed 
│ │ │ -001daa10: 2d69 2022 737c 5c28 247b 6d6f 756e 745f  -i "s|\(${mount_
│ │ │ -001daa20: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001daa30: 7870 7d2e 2a24 7b70 7265 7669 6f75 735f  xp}.*${previous_
│ │ │ -001daa40: 6d6f 756e 745f 6f70 7473 7d5c 297c 5c31  mount_opts}\)|\1
│ │ │ -001daa50: 2c6e 6f73 7569 647c 2220 2f65 7463 2f66  ,nosuid|" /etc/f
│ │ │ -001daa60: 7374 6162 0a20 2020 2066 690a 0a0a 2020  stab.    fi...  
│ │ │ -001daa70: 2020 6966 206d 6b64 6972 202d 7020 222f    if mkdir -p "/
│ │ │ -001daa80: 7661 722f 6c6f 6722 3b20 7468 656e 0a20  var/log"; then. 
│ │ │ -001daa90: 2020 2020 2020 2069 6620 6d6f 756e 7470         if mountp
│ │ │ -001daaa0: 6f69 6e74 202d 7120 222f 7661 722f 6c6f  oint -q "/var/lo
│ │ │ -001daab0: 6722 3b20 7468 656e 0a20 2020 2020 2020  g"; then.       
│ │ │ -001daac0: 2020 2020 206d 6f75 6e74 202d 6f20 7265       mount -o re
│ │ │ -001daad0: 6d6f 756e 7420 2d2d 7461 7267 6574 2022  mount --target "
│ │ │ -001daae0: 2f76 6172 2f6c 6f67 220a 2020 2020 2020  /var/log".      
│ │ │ -001daaf0: 2020 6669 0a20 2020 2066 690a 7d0a 0a70    fi.    fi.}..p
│ │ │ -001dab00: 6572 666f 726d 5f72 656d 6564 6961 7469  erform_remediati
│ │ │ -001dab10: 6f6e 0a0a 656c 7365 0a20 2020 2026 6774  on..else.    >
│ │ │ -001dab20: 3b26 616d 703b 3220 6563 686f 2027 5265  ;&2 echo 'Re
│ │ │ -001dab30: 6d65 6469 6174 696f 6e20 6973 206e 6f74  mediation is not
│ │ │ -001dab40: 2061 7070 6c69 6361 626c 652c 206e 6f74   applicable, not
│ │ │ -001dab50: 6869 6e67 2077 6173 2064 6f6e 6527 0a66  hing was done'.f
│ │ │ -001dab60: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +001d8480: 3e52 656d 6564 6961 7469 6f6e 2041 6e73 >Remediation Ans │ │ │ +001d8490: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ +001d84a0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61

Complexity:< │ │ │ +001d8590: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
low
Disru │ │ │ +001d8550: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e68 ption:h │ │ │ +001d8560: 6967 683c 2f74 643e 3c2f 7472 3e3c 7472 igh
Reboot:false
Stra │ │ │ +001d85a0: 7465 6779 3a3c 2f74 683e 3c74 643e 636f tegy:co │ │ │ +001d85b0: 6e66 6967 7572 653c 2f74 643e 3c2f 7472 nfigure
- name: Gath
│ │ │ +001d85e0: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ +001d85f0: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ +001d8600: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ +001d8610: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ +001d8620: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001d8630: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ +001d8640: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ +001d8650: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001d8660: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ +001d8670: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ +001d8680: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001d8690: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ +001d86a0: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ +001d86b0: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001d86c0: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001d86d0: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001d86e0: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001d86f0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001d8700: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ +001d8710: 5f6c 6f67 5f6e 6f73 7569 640a 2020 2d20  _log_nosuid.  - 
│ │ │ +001d8720: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001d8730: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ +001d8740: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20  osuid Option to 
│ │ │ +001d8750: 2f76 6172 2f6c 6f67 3a20 4368 6563 6b20  /var/log: Check 
│ │ │ +001d8760: 696e 666f 726d 6174 696f 6e20 6173 736f  information asso
│ │ │ +001d8770: 6369 6174 6564 2074 6f20 6d6f 756e 7470  ciated to mountp
│ │ │ +001d8780: 6f69 6e74 270a 2020 616e 7369 626c 652e  oint'.  ansible.
│ │ │ +001d8790: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ +001d87a0: 2066 696e 646d 6e74 202d 2d66 7374 6162   findmnt --fstab
│ │ │ +001d87b0: 2027 2f76 6172 2f6c 6f67 270a 2020 7265   '/var/log'.  re
│ │ │ +001d87c0: 6769 7374 6572 3a20 6465 7669 6365 5f6e  gister: device_n
│ │ │ +001d87d0: 616d 650a 2020 6661 696c 6564 5f77 6865  ame.  failed_whe
│ │ │ +001d87e0: 6e3a 2064 6576 6963 655f 6e61 6d65 2e72  n: device_name.r
│ │ │ +001d87f0: 6320 2667 743b 2031 0a20 2063 6861 6e67  c > 1.  chang
│ │ │ +001d8800: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ +001d8810: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ +001d8820: 7365 0a20 2077 6865 6e3a 0a20 202d 2028  se.  when:.  - (
│ │ │ +001d8830: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +001d8840: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001d8850: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ +001d8860: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ +001d8870: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001d8880: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ +001d8890: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ +001d88a0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001d88b0: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ +001d88c0: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ +001d88d0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001d88e0: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ +001d88f0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001d8900: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ +001d8910: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ +001d8920: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ +001d8930: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ +001d8940: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ +001d8950: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ +001d8960: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ +001d8970: 2920 290a 2020 2d20 2722 2f76 6172 2f6c  ) ).  - '"/var/l
│ │ │ +001d8980: 6f67 2220 696e 2061 6e73 6962 6c65 5f6d  og" in ansible_m
│ │ │ +001d8990: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ +001d89a0: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ +001d89b0: 206c 6973 7427 0a20 2074 6167 733a 0a20   list'.  tags:. 
│ │ │ +001d89c0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001d89d0: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ +001d89e0: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ +001d89f0: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +001d8a00: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001d8a10: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ +001d8a20: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001d8a30: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ +001d8a40: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ +001d8a50: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +001d8a60: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ +001d8a70: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ +001d8a80: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ +001d8a90: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ +001d8aa0: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f  ount_option_var_
│ │ │ +001d8ab0: 6c6f 675f 6e6f 7375 6964 0a20 202d 206e  log_nosuid.  - n
│ │ │ +001d8ac0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +001d8ad0: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ +001d8ae0: 7375 6964 204f 7074 696f 6e20 746f 202f  suid Option to /
│ │ │ +001d8af0: 7661 722f 6c6f 673a 2043 7265 6174 6520  var/log: Create 
│ │ │ +001d8b00: 6d6f 756e 745f 696e 666f 2064 6963 7469  mount_info dicti
│ │ │ +001d8b10: 6f6e 6172 7920 7661 7269 6162 6c65 270a  onary variable'.
│ │ │ +001d8b20: 2020 7365 745f 6661 6374 3a0a 2020 2020    set_fact:.    
│ │ │ +001d8b30: 6d6f 756e 745f 696e 666f 3a20 277b 7b20  mount_info: '{{ 
│ │ │ +001d8b40: 6d6f 756e 745f 696e 666f 7c64 6566 6175  mount_info|defau
│ │ │ +001d8b50: 6c74 287b 7d29 7c63 6f6d 6269 6e65 287b  lt({})|combine({
│ │ │ +001d8b60: 6974 656d 2e30 3a20 6974 656d 2e31 7d29  item.0: item.1})
│ │ │ +001d8b70: 207d 7d27 0a20 2077 6974 685f 746f 6765   }}'.  with_toge
│ │ │ +001d8b80: 7468 6572 3a0a 2020 2d20 277b 7b20 6465  ther:.  - '{{ de
│ │ │ +001d8b90: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001d8ba0: 5f6c 696e 6573 5b30 5d2e 7370 6c69 7428  _lines[0].split(
│ │ │ +001d8bb0: 2920 7c20 6d61 7028 2727 6c6f 7765 7227  ) | map(''lower'
│ │ │ +001d8bc0: 2729 207c 206c 6973 7420 7d7d 270a 2020  ') | list }}'.  
│ │ │ +001d8bd0: 2d20 277b 7b20 6465 7669 6365 5f6e 616d  - '{{ device_nam
│ │ │ +001d8be0: 652e 7374 646f 7574 5f6c 696e 6573 5b31  e.stdout_lines[1
│ │ │ +001d8bf0: 5d2e 7370 6c69 7428 2920 7c20 6c69 7374  ].split() | list
│ │ │ +001d8c00: 207d 7d27 0a20 2077 6865 6e3a 0a20 202d   }}'.  when:.  -
│ │ │ +001d8c10: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ +001d8c20: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001d8c30: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001d8c40: 2272 706d 2d6f 7374 7265 6522 2069 6e20  "rpm-ostree" in 
│ │ │ +001d8c50: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001d8c60: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ +001d8c70: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ +001d8c80: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001d8c90: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ +001d8ca0: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ +001d8cb0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001d8cc0: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ +001d8cd0: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001d8ce0: 6c65 5f70 726f 635f 636d 646c 696e 6520  le_proc_cmdline 
│ │ │ +001d8cf0: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ +001d8d00: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ +001d8d10: 6f6e 5f74 7970 6520 696e 0a20 2020 205b  on_type in.    [
│ │ │ +001d8d20: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ +001d8d30: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ +001d8d40: 616e 222c 2022 636f 6e74 6169 6e65 7222  an", "container"
│ │ │ +001d8d50: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ +001d8d60: 2f6c 6f67 2220 696e 2061 6e73 6962 6c65  /log" in ansible
│ │ │ +001d8d70: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ +001d8d80: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ +001d8d90: 207c 206c 6973 7427 0a20 202d 2064 6576   | list'.  - dev
│ │ │ +001d8da0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ +001d8db0: 6973 2064 6566 696e 6564 2061 6e64 2064  is defined and d
│ │ │ +001d8dc0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001d8dd0: 745f 6c69 6e65 7320 6973 2064 6566 696e  t_lines is defin
│ │ │ +001d8de0: 6564 0a20 202d 2028 6465 7669 6365 5f6e  ed.  - (device_n
│ │ │ +001d8df0: 616d 652e 7374 646f 7574 207c 206c 656e  ame.stdout | len
│ │ │ +001d8e00: 6774 6820 2667 743b 2030 290a 2020 7461  gth > 0).  ta
│ │ │ +001d8e10: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +001d8e20: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ +001d8e30: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ +001d8e40: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001d8e50: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ +001d8e60: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ +001d8e70: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001d8e80: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ +001d8e90: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ +001d8ea0: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001d8eb0: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001d8ec0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001d8ed0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001d8ee0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001d8ef0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001d8f00: 5f76 6172 5f6c 6f67 5f6e 6f73 7569 640a  _var_log_nosuid.
│ │ │ +001d8f10: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001d8f20: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001d8f30: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ +001d8f40: 2074 6f20 2f76 6172 2f6c 6f67 3a20 4966   to /var/log: If
│ │ │ +001d8f50: 202f 7661 722f 6c6f 6720 6e6f 7420 6d6f   /var/log not mo
│ │ │ +001d8f60: 756e 7465 642c 2063 7261 6674 206d 6f75  unted, craft mou
│ │ │ +001d8f70: 6e74 5f69 6e66 6f0a 2020 2020 6d61 6e75  nt_info.    manu
│ │ │ +001d8f80: 616c 6c79 270a 2020 7365 745f 6661 6374  ally'.  set_fact
│ │ │ +001d8f90: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ +001d8fa0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001d8fb0: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d  |default({})|com
│ │ │ +001d8fc0: 6269 6e65 287b 6974 656d 2e30 3a20 6974  bine({item.0: it
│ │ │ +001d8fd0: 656d 2e31 7d29 207d 7d27 0a20 2077 6974  em.1}) }}'.  wit
│ │ │ +001d8fe0: 685f 746f 6765 7468 6572 3a0a 2020 2d20  h_together:.  - 
│ │ │ +001d8ff0: 2d20 7461 7267 6574 0a20 2020 202d 2073  - target.    - s
│ │ │ +001d9000: 6f75 7263 650a 2020 2020 2d20 6673 7479  ource.    - fsty
│ │ │ +001d9010: 7065 0a20 2020 202d 206f 7074 696f 6e73  pe.    - options
│ │ │ +001d9020: 0a20 202d 202d 202f 7661 722f 6c6f 670a  .  - - /var/log.
│ │ │ +001d9030: 2020 2020 2d20 2727 0a20 2020 202d 2027      - ''.    - '
│ │ │ +001d9040: 270a 2020 2020 2d20 6465 6661 756c 7473  '.    - defaults
│ │ │ +001d9050: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ +001d9060: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ +001d9070: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001d9080: 6163 6b61 6765 7320 616e 6420 2272 706d  ackages and "rpm
│ │ │ +001d9090: 2d6f 7374 7265 6522 2069 6e20 616e 7369  -ostree" in ansi
│ │ │ +001d90a0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001d90b0: 6573 0a20 2020 2061 6e64 2022 626f 6f74  es.    and "boot
│ │ │ +001d90c0: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ +001d90d0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001d90e0: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ +001d90f0: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ +001d9100: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001d9110: 6573 0a20 2020 2061 6e64 2022 6f73 7472  es.    and "ostr
│ │ │ +001d9120: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ +001d9130: 726f 635f 636d 646c 696e 6520 2920 616e  roc_cmdline ) an
│ │ │ +001d9140: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ +001d9150: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ +001d9160: 7970 6520 696e 0a20 2020 205b 2264 6f63  ype in.    ["doc
│ │ │ +001d9170: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ +001d9180: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ +001d9190: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ +001d91a0: 290a 2020 2d20 2722 2f76 6172 2f6c 6f67  ).  - '"/var/log
│ │ │ +001d91b0: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ +001d91c0: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ +001d91d0: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ +001d91e0: 6973 7427 0a20 202d 2028 222d 2d66 7374  ist'.  - ("--fst
│ │ │ +001d91f0: 6162 2220 7c20 6c65 6e67 7468 203d 3d20  ab" | length == 
│ │ │ +001d9200: 3029 0a20 202d 2064 6576 6963 655f 6e61  0).  - device_na
│ │ │ +001d9210: 6d65 2e73 7464 6f75 7420 6973 2064 6566  me.stdout is def
│ │ │ +001d9220: 696e 6564 2061 6e64 2064 6576 6963 655f  ined and device_
│ │ │ +001d9230: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ +001d9240: 7320 6973 2064 6566 696e 6564 0a20 202d  s is defined.  -
│ │ │ +001d9250: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ +001d9260: 646f 7574 207c 206c 656e 6774 6820 3d3d  dout | length ==
│ │ │ +001d9270: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ +001d9280: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001d9290: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001d92a0: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ +001d92b0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +001d92c0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001d92d0: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ +001d92e0: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ +001d92f0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001d9300: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ +001d9310: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +001d9320: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ +001d9330: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001d9340: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ +001d9350: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ +001d9360: 745f 6f70 7469 6f6e 5f76 6172 5f6c 6f67  t_option_var_log
│ │ │ +001d9370: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ +001d9380: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +001d9390: 6e61 6d65 3a20 2741 6464 206e 6f73 7569  name: 'Add nosui
│ │ │ +001d93a0: 6420 4f70 7469 6f6e 2074 6f20 2f76 6172  d Option to /var
│ │ │ +001d93b0: 2f6c 6f67 3a20 4d61 6b65 2073 7572 6520  /log: Make sure 
│ │ │ +001d93c0: 6e6f 7375 6964 206f 7074 696f 6e20 6973  nosuid option is
│ │ │ +001d93d0: 2070 6172 7420 6f66 2074 6865 2074 6f0a   part of the to.
│ │ │ +001d93e0: 2020 2020 2f76 6172 2f6c 6f67 206f 7074      /var/log opt
│ │ │ +001d93f0: 696f 6e73 270a 2020 7365 745f 6661 6374  ions'.  set_fact
│ │ │ +001d9400: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ +001d9410: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001d9420: 207c 2063 6f6d 6269 6e65 2820 7b27 276f   | combine( {''o
│ │ │ +001d9430: 7074 696f 6e73 2727 3a27 2727 277e 286d  ptions'':''''~(m
│ │ │ +001d9440: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ +001d9450: 7320 7c0a 2020 2020 2020 6465 6661 756c  s |.      defaul
│ │ │ +001d9460: 7428 2727 2727 2929 7e28 2727 2c27 2720  t(''''))~('','' 
│ │ │ +001d9470: 6966 2028 6d6f 756e 745f 696e 666f 2e6f  if (mount_info.o
│ │ │ +001d9480: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ +001d9490: 2827 2727 2729 2920 656c 7365 2027 2727  ('''')) else '''
│ │ │ +001d94a0: 2729 7e27 276e 6f73 7569 6427 270a 2020  ')~''nosuid''.  
│ │ │ +001d94b0: 2020 2020 7d29 207d 7d27 0a20 2077 6865      }) }}'.  whe
│ │ │ +001d94c0: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +001d94d0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001d94e0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001d94f0: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ +001d9500: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ +001d9510: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001d9520: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ +001d9530: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001d9540: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ +001d9550: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +001d9560: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ +001d9570: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001d9580: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ +001d9590: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ +001d95a0: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ +001d95b0: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ +001d95c0: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ +001d95d0: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ +001d95e0: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ +001d95f0: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ +001d9600: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ +001d9610: 2722 2f76 6172 2f6c 6f67 2220 696e 2061  '"/var/log" in a
│ │ │ +001d9620: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ +001d9630: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ +001d9640: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ +001d9650: 202d 206d 6f75 6e74 5f69 6e66 6f20 6973   - mount_info is
│ │ │ +001d9660: 2064 6566 696e 6564 2061 6e64 2022 6e6f   defined and "no
│ │ │ +001d9670: 7375 6964 2220 6e6f 7420 696e 2028 6d6f  suid" not in (mo
│ │ │ +001d9680: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ +001d9690: 207c 2064 6566 6175 6c74 2827 2729 290a   | default('')).
│ │ │ +001d96a0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +001d96b0: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ +001d96c0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001d96d0: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ +001d96e0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +001d96f0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001d9700: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ +001d9710: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ +001d9720: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ +001d9730: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ +001d9740: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ +001d9750: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ +001d9760: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +001d9770: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +001d9780: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ +001d9790: 7469 6f6e 5f76 6172 5f6c 6f67 5f6e 6f73  tion_var_log_nos
│ │ │ +001d97a0: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f  uid.  - no_reboo
│ │ │ +001d97b0: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ +001d97c0: 3a20 2741 6464 206e 6f73 7569 6420 4f70  : 'Add nosuid Op
│ │ │ +001d97d0: 7469 6f6e 2074 6f20 2f76 6172 2f6c 6f67  tion to /var/log
│ │ │ +001d97e0: 3a20 456e 7375 7265 202f 7661 722f 6c6f  : Ensure /var/lo
│ │ │ +001d97f0: 6720 6973 206d 6f75 6e74 6564 2077 6974  g is mounted wit
│ │ │ +001d9800: 6820 6e6f 7375 6964 206f 7074 696f 6e27  h nosuid option'
│ │ │ +001d9810: 0a20 2061 6e73 6962 6c65 2e70 6f73 6978  .  ansible.posix
│ │ │ +001d9820: 2e6d 6f75 6e74 3a0a 2020 2020 7061 7468  .mount:.    path
│ │ │ +001d9830: 3a20 2f76 6172 2f6c 6f67 0a20 2020 2073  : /var/log.    s
│ │ │ +001d9840: 7263 3a20 277b 7b20 6d6f 756e 745f 696e  rc: '{{ mount_in
│ │ │ +001d9850: 666f 2e73 6f75 7263 6520 7c20 6465 6661  fo.source | defa
│ │ │ +001d9860: 756c 7428 2727 2727 2920 7d7d 270a 2020  ult('''') }}'.  
│ │ │ +001d9870: 2020 6f70 7473 3a20 277b 7b20 6d6f 756e    opts: '{{ moun
│ │ │ +001d9880: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ +001d9890: 2064 6566 6175 6c74 2827 2727 2729 207d   default('''') }
│ │ │ +001d98a0: 7d27 0a20 2020 2073 7461 7465 3a20 6d6f  }'.    state: mo
│ │ │ +001d98b0: 756e 7465 640a 2020 2020 6673 7479 7065  unted.    fstype
│ │ │ +001d98c0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001d98d0: 2e66 7374 7970 6520 7c20 6465 6661 756c  .fstype | defaul
│ │ │ +001d98e0: 7428 2727 2727 2920 7d7d 270a 2020 7265  t('''') }}'.  re
│ │ │ +001d98f0: 6769 7374 6572 3a20 6d6f 756e 745f 7265  gister: mount_re
│ │ │ +001d9900: 7375 6c74 0a20 2066 6169 6c65 645f 7768  sult.  failed_wh
│ │ │ +001d9910: 656e 3a0a 2020 2d20 6d6f 756e 745f 7265  en:.  - mount_re
│ │ │ +001d9920: 7375 6c74 2069 7320 6661 696c 6564 0a20  sult is failed. 
│ │ │ +001d9930: 202d 2027 2727 7461 7267 6574 2069 7320   - '''target is 
│ │ │ +001d9940: 6275 7379 2727 206e 6f74 2069 6e20 286d  busy'' not in (m
│ │ │ +001d9950: 6f75 6e74 5f72 6573 756c 742e 6d73 6720  ount_result.msg 
│ │ │ +001d9960: 7c20 6465 6661 756c 7428 2727 2727 2929  | default(''''))
│ │ │ +001d9970: 270a 2020 2d20 2727 2761 6c72 6561 6479  '.  - '''already
│ │ │ +001d9980: 206d 6f75 6e74 6564 2727 206e 6f74 2069   mounted'' not i
│ │ │ +001d9990: 6e20 286d 6f75 6e74 5f72 6573 756c 742e  n (mount_result.
│ │ │ +001d99a0: 6d73 6720 7c20 6465 6661 756c 7428 2727  msg | default(''
│ │ │ +001d99b0: 2727 2929 270a 2020 7768 656e 3a0a 2020  ''))'.  when:.  
│ │ │ +001d99c0: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ +001d99d0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +001d99e0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001d99f0: 2022 7270 6d2d 6f73 7472 6565 2220 696e   "rpm-ostree" in
│ │ │ +001d9a00: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001d9a10: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001d9a20: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ +001d9a30: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001d9a40: 7320 616e 6420 6e6f 7420 226f 7065 6e73  s and not "opens
│ │ │ +001d9a50: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ +001d9a60: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001d9a70: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001d9a80: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ +001d9a90: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ +001d9aa0: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ +001d9ab0: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ +001d9ac0: 696f 6e5f 7479 7065 2069 6e0a 2020 2020  ion_type in.    
│ │ │ +001d9ad0: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ +001d9ae0: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ +001d9af0: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572  man", "container
│ │ │ +001d9b00: 225d 2029 2029 0a20 202d 2027 222f 7661  "] ) ).  - '"/va
│ │ │ +001d9b10: 722f 6c6f 6722 2069 6e20 616e 7369 626c  r/log" in ansibl
│ │ │ +001d9b20: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ +001d9b30: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ +001d9b40: 2920 7c20 6c69 7374 270a 2020 2d20 6d6f  ) | list'.  - mo
│ │ │ +001d9b50: 756e 745f 696e 666f 2069 7320 6465 6669  unt_info is defi
│ │ │ +001d9b60: 6e65 640a 2020 2d20 2864 6576 6963 655f  ned.  - (device_
│ │ │ +001d9b70: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ +001d9b80: 6566 696e 6564 2061 6e64 2028 6465 7669  efined and (devi
│ │ │ +001d9b90: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ +001d9ba0: 206c 656e 6774 6820 2667 743b 2030 2929   length > 0))
│ │ │ +001d9bb0: 206f 7220 2822 2d2d 6673 7461 6222 0a20   or ("--fstab". 
│ │ │ +001d9bc0: 2020 207c 206c 656e 6774 6820 3d3d 2030     | length == 0
│ │ │ +001d9bd0: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ +001d9be0: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ +001d9bf0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001d9c00: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ +001d9c10: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +001d9c20: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001d9c30: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +001d9c40: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +001d9c50: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ +001d9c60: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ +001d9c70: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ +001d9c80: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ +001d9c90: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +001d9ca0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +001d9cb0: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ +001d9cc0: 6f70 7469 6f6e 5f76 6172 5f6c 6f67 5f6e  option_var_log_n
│ │ │ +001d9cd0: 6f73 7569 640a 2020 2d20 6e6f 5f72 6562  osuid.  - no_reb
│ │ │ +001d9ce0: 6f6f 745f 6e65 6564 6564 0a3c 2f63 6f64  oot_needed.
Remed │ │ │ +001d9da0: 6961 7469 6f6e 2053 6865 6c6c 2073 6372 iation Shell scr │ │ │ +001d9db0: 6970 7420 e287 b23c 2f61 3e3c 6272 3e3c ipt ...
< │ │ │ +001d9dc0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001d9dd0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001d9de0: 7365 2220 6964 3d22 6964 3534 3022 3e3c se" id="id540">< │ │ │ +001d9df0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001d9e00: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001d9e10: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001d9e20: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +001d9e30: 3e3c 7472 3e3c 7468 3e52 6562 6f6f 743a >Reboot: │ │ │ +001d9e40: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +001d9e60: 3c70 7265 3e3c 636f 6465 3e23 2052 656d
# Rem
│ │ │ +001d9e70: 6564 6961 7469 6f6e 2069 7320 6170 706c  ediation is appl
│ │ │ +001d9e80: 6963 6162 6c65 206f 6e6c 7920 696e 2063  icable only in c
│ │ │ +001d9e90: 6572 7461 696e 2070 6c61 7466 6f72 6d73  ertain platforms
│ │ │ +001d9ea0: 0a69 6620 2820 2120 2820 7b20 7270 6d20  .if ( ! ( { rpm 
│ │ │ +001d9eb0: 2d2d 7175 6965 7420 2d71 206b 6572 6e65  --quiet -q kerne
│ │ │ +001d9ec0: 6c20 3b7d 2026 616d 703b 2661 6d70 3b20  l ;} && 
│ │ │ +001d9ed0: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ +001d9ee0: 2072 706d 2d6f 7374 7265 6520 3b7d 2026   rpm-ostree ;} &
│ │ │ +001d9ef0: 616d 703b 2661 6d70 3b20 7b20 7270 6d20  amp;& { rpm 
│ │ │ +001d9f00: 2d2d 7175 6965 7420 2d71 2062 6f6f 7463  --quiet -q bootc
│ │ │ +001d9f10: 203b 7d20 2661 6d70 3b26 616d 703b 207b   ;} && {
│ │ │ +001d9f20: 2021 2072 706d 202d 2d71 7569 6574 202d   ! rpm --quiet -
│ │ │ +001d9f30: 7120 6f70 656e 7368 6966 742d 6b75 6265  q openshift-kube
│ │ │ +001d9f40: 6c65 7420 3b7d 2026 616d 703b 2661 6d70  let ;} &&
│ │ │ +001d9f50: 3b20 285b 202d 6620 2f72 756e 2f6f 7374  ; ([ -f /run/ost
│ │ │ +001d9f60: 7265 652d 626f 6f74 6564 205d 207c 7c20  ree-booted ] || 
│ │ │ +001d9f70: 5b20 2d4c 202f 6f73 7472 6565 205d 2920  [ -L /ostree ]) 
│ │ │ +001d9f80: 2920 2661 6d70 3b26 616d 703b 2021 2028  ) && ! (
│ │ │ +001d9f90: 205b 202d 6620 2f2e 646f 636b 6572 656e   [ -f /.dockeren
│ │ │ +001d9fa0: 7620 5d20 7c7c 205b 202d 6620 2f72 756e  v ] || [ -f /run
│ │ │ +001d9fb0: 2f2e 636f 6e74 6169 6e65 7265 6e76 205d  /.containerenv ]
│ │ │ +001d9fc0: 2029 2029 2026 616d 703b 2661 6d70 3b20   ) ) && 
│ │ │ +001d9fd0: 7b20 2820 6669 6e64 6d6e 7420 2d2d 6b65  { ( findmnt --ke
│ │ │ +001d9fe0: 726e 656c 2022 2f76 6172 2f6c 6f67 2220  rnel "/var/log" 
│ │ │ +001d9ff0: 2667 743b 202f 6465 762f 6e75 6c6c 207c  > /dev/null |
│ │ │ +001da000: 7c20 6669 6e64 6d6e 7420 2d2d 6673 7461  | findmnt --fsta
│ │ │ +001da010: 6220 222f 7661 722f 6c6f 6722 2026 6774  b "/var/log" >
│ │ │ +001da020: 3b20 2f64 6576 2f6e 756c 6c20 293b 207d  ; /dev/null ); }
│ │ │ +001da030: 3b20 7468 656e 0a0a 6675 6e63 7469 6f6e  ; then..function
│ │ │ +001da040: 2070 6572 666f 726d 5f72 656d 6564 6961   perform_remedia
│ │ │ +001da050: 7469 6f6e 207b 0a0a 2020 2020 0a20 2020  tion {..    .   
│ │ │ +001da060: 2020 2020 2023 2074 6865 206d 6f75 6e74       # the mount
│ │ │ +001da070: 2070 6f69 6e74 202f 7661 722f 6c6f 6720   point /var/log 
│ │ │ +001da080: 6861 7320 746f 2062 6520 6465 6669 6e65  has to be define
│ │ │ +001da090: 6420 696e 202f 6574 632f 6673 7461 620a  d in /etc/fstab.
│ │ │ +001da0a0: 2020 2020 2020 2020 2320 6265 666f 7265          # before
│ │ │ +001da0b0: 2074 6869 7320 7265 6d65 6469 6174 696f   this remediatio
│ │ │ +001da0c0: 6e20 6361 6e20 6265 2065 7865 6375 7465  n can be execute
│ │ │ +001da0d0: 642e 2049 6e20 6361 7365 2069 7420 6973  d. In case it is
│ │ │ +001da0e0: 206e 6f74 2064 6566 696e 6564 2c20 7468   not defined, th
│ │ │ +001da0f0: 650a 2020 2020 2020 2020 2320 7265 6d65  e.        # reme
│ │ │ +001da100: 6469 6174 696f 6e20 6162 6f72 7473 2061  diation aborts a
│ │ │ +001da110: 6e64 206e 6f20 6368 616e 6765 7320 7265  nd no changes re
│ │ │ +001da120: 6761 7264 696e 6720 7468 6520 6d6f 756e  garding the moun
│ │ │ +001da130: 7420 706f 696e 7420 6172 6520 646f 6e65  t point are done
│ │ │ +001da140: 2e0a 2020 2020 2020 2020 6d6f 756e 745f  ..        mount_
│ │ │ +001da150: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001da160: 7870 3d22 2428 7072 696e 7466 2022 5e5b  xp="$(printf "^[
│ │ │ +001da170: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e  [:space:]]*[^#].
│ │ │ +001da180: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b  *[[:space:]]%s[[
│ │ │ +001da190: 3a73 7061 6365 3a5d 5d22 2022 2f76 6172  :space:]]" "/var
│ │ │ +001da1a0: 2f6c 6f67 2229 220a 0a20 2020 2067 7265  /log")"..    gre
│ │ │ +001da1b0: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ +001da1c0: 6d61 7463 685f 7265 6765 7870 2220 2d71  match_regexp" -q
│ │ │ +001da1d0: 202f 6574 632f 6673 7461 6220 5c0a 2020   /etc/fstab \.  
│ │ │ +001da1e0: 2020 2020 2020 7c7c 207b 2065 6368 6f20        || { echo 
│ │ │ +001da1f0: 2254 6865 206d 6f75 6e74 2070 6f69 6e74  "The mount point
│ │ │ +001da200: 2027 2f76 6172 2f6c 6f67 2720 6973 206e   '/var/log' is n
│ │ │ +001da210: 6f74 2065 7665 6e20 696e 202f 6574 632f  ot even in /etc/
│ │ │ +001da220: 6673 7461 622c 2073 6f20 7765 2063 616e  fstab, so we can
│ │ │ +001da230: 2774 2073 6574 2075 7020 6d6f 756e 7420  't set up mount 
│ │ │ +001da240: 6f70 7469 6f6e 7322 2026 6774 3b26 616d  options" >&am
│ │ │ +001da250: 703b 323b 0a20 2020 2020 2020 2020 2020  p;2;.           
│ │ │ +001da260: 2020 2020 2065 6368 6f20 224e 6f74 2072       echo "Not r
│ │ │ +001da270: 656d 6564 6961 7469 6e67 2c20 6265 6361  emediating, beca
│ │ │ +001da280: 7573 6520 7468 6572 6520 6973 206e 6f20  use there is no 
│ │ │ +001da290: 7265 636f 7264 206f 6620 2f76 6172 2f6c  record of /var/l
│ │ │ +001da2a0: 6f67 2069 6e20 2f65 7463 2f66 7374 6162  og in /etc/fstab
│ │ │ +001da2b0: 2220 2667 743b 2661 6d70 3b32 3b20 7265  " >&2; re
│ │ │ +001da2c0: 7475 726e 2031 3b20 7d0a 2020 2020 0a0a  turn 1; }.    ..
│ │ │ +001da2d0: 0a20 2020 206d 6f75 6e74 5f70 6f69 6e74  .    mount_point
│ │ │ +001da2e0: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ +001da2f0: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ +001da300: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ +001da310: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ +001da320: 653a 5d5d 2220 2f76 6172 2f6c 6f67 2922  e:]]" /var/log)"
│ │ │ +001da330: 0a0a 2020 2020 2320 4966 2074 6865 206d  ..    # If the m
│ │ │ +001da340: 6f75 6e74 2070 6f69 6e74 2069 7320 6e6f  ount point is no
│ │ │ +001da350: 7420 696e 202f 6574 632f 6673 7461 622c  t in /etc/fstab,
│ │ │ +001da360: 2067 6574 2070 7265 7669 6f75 7320 6d6f   get previous mo
│ │ │ +001da370: 756e 7420 6f70 7469 6f6e 7320 6672 6f6d  unt options from
│ │ │ +001da380: 202f 6574 632f 6d74 6162 0a20 2020 2069   /etc/mtab.    i
│ │ │ +001da390: 6620 2120 6772 6570 202d 7120 2224 6d6f  f ! grep -q "$mo
│ │ │ +001da3a0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001da3b0: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ +001da3c0: 6162 3b20 7468 656e 0a20 2020 2020 2020  ab; then.       
│ │ │ +001da3d0: 2023 2072 756e 7469 6d65 206f 7074 7320   # runtime opts 
│ │ │ +001da3e0: 7769 7468 6f75 7420 736f 6d65 2061 7574  without some aut
│ │ │ +001da3f0: 6f6d 6174 6963 206b 6572 6e65 6c2f 7573  omatic kernel/us
│ │ │ +001da400: 6572 7370 6163 652d 6164 6465 6420 6465  erspace-added de
│ │ │ +001da410: 6661 756c 7473 0a20 2020 2020 2020 2070  faults.        p
│ │ │ +001da420: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001da430: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ +001da440: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001da450: 6765 7870 2220 2f65 7463 2f6d 7461 6220  gexp" /etc/mtab 
│ │ │ +001da460: 7c20 6865 6164 202d 3120 7c20 2061 776b  | head -1 |  awk
│ │ │ +001da470: 2027 7b70 7269 6e74 2024 347d 2720 5c0a   '{print $4}' \.
│ │ │ +001da480: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +001da490: 2020 2020 7c20 7365 6420 2d45 2022 732f      | sed -E "s/
│ │ │ +001da4a0: 2872 777c 6465 6661 756c 7473 7c73 6563  (rw|defaults|sec
│ │ │ +001da4b0: 6c61 6265 6c7c 6e6f 7375 6964 2928 2c7c  label|nosuid)(,|
│ │ │ +001da4c0: 2429 2f2f 673b 732f 2c24 2f2f 2229 0a20  $)//g;s/,$//"). 
│ │ │ +001da4d0: 2020 2020 2020 205b 2022 2470 7265 7669         [ "$previ
│ │ │ +001da4e0: 6f75 735f 6d6f 756e 745f 6f70 7473 2220  ous_mount_opts" 
│ │ │ +001da4f0: 5d20 2661 6d70 3b26 616d 703b 2070 7265  ] && pre
│ │ │ +001da500: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001da510: 2b3d 222c 220a 2020 2020 2020 2020 2320  +=",".        # 
│ │ │ +001da520: 496e 2069 736f 3936 3630 2066 696c 6573  In iso9660 files
│ │ │ +001da530: 7973 7465 6d73 206d 7461 6220 636f 756c  ystems mtab coul
│ │ │ +001da540: 6420 6465 7363 7269 6265 2061 2022 626c  d describe a "bl
│ │ │ +001da550: 6f63 6b73 697a 6522 2076 616c 7565 2c20  ocksize" value, 
│ │ │ +001da560: 7468 6973 2073 686f 756c 6420 6265 2072  this should be r
│ │ │ +001da570: 6566 6c65 6374 6564 2069 6e0a 2020 2020  eflected in.    
│ │ │ +001da580: 2020 2020 2320 6673 7461 6220 6173 2022      # fstab as "
│ │ │ +001da590: 626c 6f63 6b22 2e20 2054 6865 206e 6578  block".  The nex
│ │ │ +001da5a0: 7420 7661 7269 6162 6c65 2069 7320 746f  t variable is to
│ │ │ +001da5b0: 2073 6174 6973 6679 2073 6865 6c6c 6368   satisfy shellch
│ │ │ +001da5c0: 6563 6b20 5343 3230 3530 2e0a 2020 2020  eck SC2050..    
│ │ │ +001da5d0: 2020 2020 6673 5f74 7970 653d 2222 0a20      fs_type="". 
│ │ │ +001da5e0: 2020 2020 2020 2069 6620 5b20 2022 2466         if [  "$f
│ │ │ +001da5f0: 735f 7479 7065 2220 3d3d 2022 6973 6f39  s_type" == "iso9
│ │ │ +001da600: 3636 3022 205d 203b 2074 6865 6e0a 2020  660" ] ; then.  
│ │ │ +001da610: 2020 2020 2020 2020 2020 7072 6576 696f            previo
│ │ │ +001da620: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ +001da630: 7365 6420 2773 2f62 6c6f 636b 7369 7a65  sed 's/blocksize
│ │ │ +001da640: 3d2f 626c 6f63 6b3d 2f27 2026 6c74 3b26  =/block=/' <&
│ │ │ +001da650: 6c74 3b26 6c74 3b20 2224 7072 6576 696f  lt;< "$previo
│ │ │ +001da660: 7573 5f6d 6f75 6e74 5f6f 7074 7322 290a  us_mount_opts").
│ │ │ +001da670: 2020 2020 2020 2020 6669 0a20 2020 2020          fi.     
│ │ │ +001da680: 2020 2065 6368 6f20 2220 2f76 6172 2f6c     echo " /var/l
│ │ │ +001da690: 6f67 2020 6465 6661 756c 7473 2c24 7b70  og  defaults,${p
│ │ │ +001da6a0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001da6b0: 7473 7d6e 6f73 7569 6420 3020 3022 2026  ts}nosuid 0 0" &
│ │ │ +001da6c0: 6774 3b26 6774 3b20 2f65 7463 2f66 7374  gt;> /etc/fst
│ │ │ +001da6d0: 6162 0a20 2020 2023 2049 6620 7468 6520  ab.    # If the 
│ │ │ +001da6e0: 6d6f 756e 745f 6f70 7420 6f70 7469 6f6e  mount_opt option
│ │ │ +001da6f0: 2069 7320 6e6f 7420 616c 7265 6164 7920   is not already 
│ │ │ +001da700: 696e 2074 6865 206d 6f75 6e74 2070 6f69  in the mount poi
│ │ │ +001da710: 6e74 2773 202f 6574 632f 6673 7461 6220  nt's /etc/fstab 
│ │ │ +001da720: 656e 7472 792c 2061 6464 2069 740a 2020  entry, add it.  
│ │ │ +001da730: 2020 656c 6966 2021 2067 7265 7020 2224    elif ! grep "$
│ │ │ +001da740: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001da750: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ +001da760: 7374 6162 207c 2067 7265 7020 2d71 2022  stab | grep -q "
│ │ │ +001da770: 6e6f 7375 6964 223b 2074 6865 6e0a 2020  nosuid"; then.  
│ │ │ +001da780: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ +001da790: 6f75 6e74 5f6f 7074 733d 2428 6772 6570  ount_opts=$(grep
│ │ │ +001da7a0: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ +001da7b0: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ +001da7c0: 632f 6673 7461 6220 7c20 6177 6b20 277b  c/fstab | awk '{
│ │ │ +001da7d0: 7072 696e 7420 2434 7d27 290a 2020 2020  print $4}').    
│ │ │ +001da7e0: 2020 2020 7365 6420 2d69 2022 737c 5c28      sed -i "s|\(
│ │ │ +001da7f0: 247b 6d6f 756e 745f 706f 696e 745f 6d61  ${mount_point_ma
│ │ │ +001da800: 7463 685f 7265 6765 7870 7d2e 2a24 7b70  tch_regexp}.*${p
│ │ │ +001da810: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001da820: 7473 7d5c 297c 5c31 2c6e 6f73 7569 647c  ts}\)|\1,nosuid|
│ │ │ +001da830: 2220 2f65 7463 2f66 7374 6162 0a20 2020  " /etc/fstab.   
│ │ │ +001da840: 2066 690a 0a0a 2020 2020 6966 206d 6b64   fi...    if mkd
│ │ │ +001da850: 6972 202d 7020 222f 7661 722f 6c6f 6722  ir -p "/var/log"
│ │ │ +001da860: 3b20 7468 656e 0a20 2020 2020 2020 2069  ; then.        i
│ │ │ +001da870: 6620 6d6f 756e 7470 6f69 6e74 202d 7120  f mountpoint -q 
│ │ │ +001da880: 222f 7661 722f 6c6f 6722 3b20 7468 656e  "/var/log"; then
│ │ │ +001da890: 0a20 2020 2020 2020 2020 2020 206d 6f75  .            mou
│ │ │ +001da8a0: 6e74 202d 6f20 7265 6d6f 756e 7420 2d2d  nt -o remount --
│ │ │ +001da8b0: 7461 7267 6574 2022 2f76 6172 2f6c 6f67  target "/var/log
│ │ │ +001da8c0: 220a 2020 2020 2020 2020 6669 0a20 2020  ".        fi.   
│ │ │ +001da8d0: 2066 690a 7d0a 0a70 6572 666f 726d 5f72   fi.}..perform_r
│ │ │ +001da8e0: 656d 6564 6961 7469 6f6e 0a0a 656c 7365  emediation..else
│ │ │ +001da8f0: 0a20 2020 2026 6774 3b26 616d 703b 3220  .    >&2 
│ │ │ +001da900: 6563 686f 2027 5265 6d65 6469 6174 696f  echo 'Remediatio
│ │ │ +001da910: 6e20 6973 206e 6f74 2061 7070 6c69 6361  n is not applica
│ │ │ +001da920: 626c 652c 206e 6f74 6869 6e67 2077 6173  ble, nothing was
│ │ │ +001da930: 2064 6f6e 6527 0a66 690a 3c2f 636f 6465   done'.fi.
Remedi │ │ │ +001da9f0: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ +001daa00: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +001daa90: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +001daaa0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +001daac0: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ +001daae0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +001daaf0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +001dab10: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ +001dab30: 3c70 7265 3e3c 636f 6465 3e0a 7061 7274
.part
│ │ │ +001dab40: 202f 7661 722f 6c6f 6720 2d2d 6d6f 756e   /var/log --moun
│ │ │ +001dab50: 746f 7074 696f 6e73 3d22 6e6f 7375 6964  toptions="nosuid
│ │ │ +001dab60: 220a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  ".
< │ │ │ 001dab70: 2f64 6976 3e3c 2f64 6976 3e3c 2f74 643e /div>
│ │ │ 001dab80: 3c2f 7472 3e3c 2f74 626f 6479 3e3c 2f74 < │ │ │ 001daba0: 7472 2064 6174 612d 7474 2d69 643d 2278 tr data-tt-id="x │ │ │ 001dabb0: 6363 6466 5f6f 7267 2e73 7367 7072 6f6a ccdf_org.ssgproj │ │ │ 001dabc0: 6563 742e 636f 6e74 656e 745f 7275 6c65 ect.content_rule │ │ │ 001dabd0: 5f6d 6f75 6e74 5f6f 7074 696f 6e5f 7661 _mount_option_va │ │ │ @@ -121712,626 +121712,626 @@ │ │ │ 001db6f0: 612d 7461 7267 6574 3d22 2369 6435 3433 a-target="#id543 │ │ │ 001db700: 2220 7461 6269 6e64 6578 3d22 3022 2072 " tabindex="0" r │ │ │ 001db710: 6f6c 653d 2262 7574 746f 6e22 2061 7269 ole="button" ari │ │ │ 001db720: 612d 6578 7061 6e64 6564 3d22 6661 6c73 a-expanded="fals │ │ │ 001db730: 6522 2074 6974 6c65 3d22 4163 7469 7661 e" title="Activa │ │ │ 001db740: 7465 2074 6f20 7265 7665 616c 2220 6872 te to reveal" hr │ │ │ 001db750: 6566 3d22 2321 223e 5265 6d65 6469 6174 ef="#!">Remediat │ │ │ -001db760: 696f 6e20 416e 6163 6f6e 6461 2073 6e69 ion Anaconda sni │ │ │ -001db770: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -001db780: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -001db7b0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -001db820: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption: │ │ │ -001db840: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -001db870: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Comple │ │ │ -001db800: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -001db810: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
high
Reb │ │ │ -001db850: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -001db860: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

.part / │ │ │ -001db8b0: 7661 7220 2d2d 6d6f 756e 746f 7074 696f var --mountoptio │ │ │ -001db8c0: 6e73 3d22 6e6f 6465 7622 0a3c 2f63 6f64 ns="nodev".

Remed │ │ │ -001db980: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ -001db990: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
- 
│ │ │ -001dbad0: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ -001dbae0: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ -001dbaf0: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ -001dbb00: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ -001dbb10: 6f0a 2020 7461 6773 3a0a 2020 2d20 4e49  o.  tags:.  - NI
│ │ │ -001dbb20: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ -001dbb30: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001dbb40: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ -001dbb50: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -001dbb60: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001dbb70: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -001dbb80: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -001dbb90: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ -001dbba0: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ -001dbbb0: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -001dbbc0: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -001dbbd0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001dbbe0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -001dbbf0: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ -001dbc00: 6f70 7469 6f6e 5f76 6172 5f6e 6f64 6576  option_var_nodev
│ │ │ -001dbc10: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -001dbc20: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ -001dbc30: 4164 6420 6e6f 6465 7620 4f70 7469 6f6e  Add nodev Option
│ │ │ -001dbc40: 2074 6f20 2f76 6172 3a20 4368 6563 6b20   to /var: Check 
│ │ │ -001dbc50: 696e 666f 726d 6174 696f 6e20 6173 736f  information asso
│ │ │ -001dbc60: 6369 6174 6564 2074 6f20 6d6f 756e 7470  ciated to mountp
│ │ │ -001dbc70: 6f69 6e74 270a 2020 616e 7369 626c 652e  oint'.  ansible.
│ │ │ -001dbc80: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ -001dbc90: 2066 696e 646d 6e74 202d 2d66 7374 6162   findmnt --fstab
│ │ │ -001dbca0: 2027 2f76 6172 270a 2020 7265 6769 7374   '/var'.  regist
│ │ │ -001dbcb0: 6572 3a20 6465 7669 6365 5f6e 616d 650a  er: device_name.
│ │ │ -001dbcc0: 2020 6661 696c 6564 5f77 6865 6e3a 2064    failed_when: d
│ │ │ -001dbcd0: 6576 6963 655f 6e61 6d65 2e72 6320 2667  evice_name.rc &g
│ │ │ -001dbce0: 743b 2031 0a20 2063 6861 6e67 6564 5f77  t; 1.  changed_w
│ │ │ -001dbcf0: 6865 6e3a 2066 616c 7365 0a20 2063 6865  hen: false.  che
│ │ │ -001dbd00: 636b 5f6d 6f64 653a 2066 616c 7365 0a20  ck_mode: false. 
│ │ │ -001dbd10: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ -001dbd20: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ -001dbd30: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001dbd40: 6b61 6765 7320 616e 6420 2272 706d 2d6f  kages and "rpm-o
│ │ │ -001dbd50: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001dbd60: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001dbd70: 0a20 2020 2061 6e64 2022 626f 6f74 6322  .    and "bootc"
│ │ │ -001dbd80: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001dbd90: 732e 7061 636b 6167 6573 2061 6e64 206e  s.packages and n
│ │ │ -001dbda0: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ -001dbdb0: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ -001dbdc0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001dbdd0: 0a20 2020 2061 6e64 2022 6f73 7472 6565  .    and "ostree
│ │ │ -001dbde0: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ -001dbdf0: 635f 636d 646c 696e 6520 2920 616e 6420  c_cmdline ) and 
│ │ │ -001dbe00: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ -001dbe10: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ -001dbe20: 6520 696e 0a20 2020 205b 2264 6f63 6b65  e in.    ["docke
│ │ │ -001dbe30: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ -001dbe40: 767a 222c 2022 706f 646d 616e 222c 2022  vz", "podman", "
│ │ │ -001dbe50: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ -001dbe60: 2020 2d20 2722 2f76 6172 2220 696e 2061    - '"/var" in a
│ │ │ -001dbe70: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ -001dbe80: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ -001dbe90: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ -001dbea0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -001dbeb0: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ -001dbec0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001dbed0: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ -001dbee0: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -001dbef0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001dbf00: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001dbf10: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ -001dbf20: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ -001dbf30: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -001dbf40: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -001dbf50: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001dbf60: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001dbf70: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001dbf80: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -001dbf90: 696f 6e5f 7661 725f 6e6f 6465 760a 2020  ion_var_nodev.  
│ │ │ -001dbfa0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -001dbfb0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ -001dbfc0: 206e 6f64 6576 204f 7074 696f 6e20 746f   nodev Option to
│ │ │ -001dbfd0: 202f 7661 723a 2043 7265 6174 6520 6d6f   /var: Create mo
│ │ │ -001dbfe0: 756e 745f 696e 666f 2064 6963 7469 6f6e  unt_info diction
│ │ │ -001dbff0: 6172 7920 7661 7269 6162 6c65 270a 2020  ary variable'.  
│ │ │ -001dc000: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ -001dc010: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ -001dc020: 756e 745f 696e 666f 7c64 6566 6175 6c74  unt_info|default
│ │ │ -001dc030: 287b 7d29 7c63 6f6d 6269 6e65 287b 6974  ({})|combine({it
│ │ │ -001dc040: 656d 2e30 3a20 6974 656d 2e31 7d29 207d  em.0: item.1}) }
│ │ │ -001dc050: 7d27 0a20 2077 6974 685f 746f 6765 7468  }'.  with_togeth
│ │ │ -001dc060: 6572 3a0a 2020 2d20 277b 7b20 6465 7669  er:.  - '{{ devi
│ │ │ -001dc070: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ -001dc080: 696e 6573 5b30 5d2e 7370 6c69 7428 2920  ines[0].split() 
│ │ │ -001dc090: 7c20 6d61 7028 2727 6c6f 7765 7227 2729  | map(''lower'')
│ │ │ -001dc0a0: 207c 206c 6973 7420 7d7d 270a 2020 2d20   | list }}'.  - 
│ │ │ -001dc0b0: 277b 7b20 6465 7669 6365 5f6e 616d 652e  '{{ device_name.
│ │ │ -001dc0c0: 7374 646f 7574 5f6c 696e 6573 5b31 5d2e  stdout_lines[1].
│ │ │ -001dc0d0: 7370 6c69 7428 2920 7c20 6c69 7374 207d  split() | list }
│ │ │ -001dc0e0: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028  }'.  when:.  - (
│ │ │ -001dc0f0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -001dc100: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001dc110: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ -001dc120: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ -001dc130: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001dc140: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ -001dc150: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ -001dc160: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001dc170: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -001dc180: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -001dc190: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001dc1a0: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ -001dc1b0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001dc1c0: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ -001dc1d0: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -001dc1e0: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -001dc1f0: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ -001dc200: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ -001dc210: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ -001dc220: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ -001dc230: 2920 290a 2020 2d20 2722 2f76 6172 2220  ) ).  - '"/var" 
│ │ │ -001dc240: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ -001dc250: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ -001dc260: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ -001dc270: 7427 0a20 202d 2064 6576 6963 655f 6e61  t'.  - device_na
│ │ │ -001dc280: 6d65 2e73 7464 6f75 7420 6973 2064 6566  me.stdout is def
│ │ │ -001dc290: 696e 6564 2061 6e64 2064 6576 6963 655f  ined and device_
│ │ │ -001dc2a0: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ -001dc2b0: 7320 6973 2064 6566 696e 6564 0a20 202d  s is defined.  -
│ │ │ -001dc2c0: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ -001dc2d0: 646f 7574 207c 206c 656e 6774 6820 2667  dout | length &g
│ │ │ -001dc2e0: 743b 2030 290a 2020 7461 6773 3a0a 2020  t; 0).  tags:.  
│ │ │ -001dc2f0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001dc300: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ -001dc310: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ -001dc320: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -001dc330: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -001dc340: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ -001dc350: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -001dc360: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ -001dc370: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ -001dc380: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -001dc390: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -001dc3a0: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -001dc3b0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -001dc3c0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -001dc3d0: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6e  unt_option_var_n
│ │ │ -001dc3e0: 6f64 6576 0a20 202d 206e 6f5f 7265 626f  odev.  - no_rebo
│ │ │ -001dc3f0: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -001dc400: 653a 2027 4164 6420 6e6f 6465 7620 4f70  e: 'Add nodev Op
│ │ │ -001dc410: 7469 6f6e 2074 6f20 2f76 6172 3a20 4966  tion to /var: If
│ │ │ -001dc420: 202f 7661 7220 6e6f 7420 6d6f 756e 7465   /var not mounte
│ │ │ -001dc430: 642c 2063 7261 6674 206d 6f75 6e74 5f69  d, craft mount_i
│ │ │ -001dc440: 6e66 6f20 6d61 6e75 616c 6c79 270a 2020  nfo manually'.  
│ │ │ -001dc450: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ -001dc460: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ -001dc470: 756e 745f 696e 666f 7c64 6566 6175 6c74  unt_info|default
│ │ │ -001dc480: 287b 7d29 7c63 6f6d 6269 6e65 287b 6974  ({})|combine({it
│ │ │ -001dc490: 656d 2e30 3a20 6974 656d 2e31 7d29 207d  em.0: item.1}) }
│ │ │ -001dc4a0: 7d27 0a20 2077 6974 685f 746f 6765 7468  }'.  with_togeth
│ │ │ -001dc4b0: 6572 3a0a 2020 2d20 2d20 7461 7267 6574  er:.  - - target
│ │ │ -001dc4c0: 0a20 2020 202d 2073 6f75 7263 650a 2020  .    - source.  
│ │ │ -001dc4d0: 2020 2d20 6673 7479 7065 0a20 2020 202d    - fstype.    -
│ │ │ -001dc4e0: 206f 7074 696f 6e73 0a20 202d 202d 202f   options.  - - /
│ │ │ -001dc4f0: 7661 720a 2020 2020 2d20 2727 0a20 2020  var.    - ''.   
│ │ │ -001dc500: 202d 2027 270a 2020 2020 2d20 6465 6661   - ''.    - defa
│ │ │ -001dc510: 756c 7473 0a20 2077 6865 6e3a 0a20 202d  ults.  when:.  -
│ │ │ -001dc520: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ -001dc530: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001dc540: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001dc550: 2272 706d 2d6f 7374 7265 6522 2069 6e20  "rpm-ostree" in 
│ │ │ -001dc560: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001dc570: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001dc580: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -001dc590: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001dc5a0: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ -001dc5b0: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ -001dc5c0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001dc5d0: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001dc5e0: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001dc5f0: 6c65 5f70 726f 635f 636d 646c 696e 6520  le_proc_cmdline 
│ │ │ -001dc600: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ -001dc610: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ -001dc620: 6f6e 5f74 7970 6520 696e 0a20 2020 205b  on_type in.    [
│ │ │ -001dc630: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -001dc640: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -001dc650: 616e 222c 2022 636f 6e74 6169 6e65 7222  an", "container"
│ │ │ -001dc660: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ -001dc670: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ -001dc680: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ -001dc690: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ -001dc6a0: 6973 7427 0a20 202d 2028 222d 2d66 7374  ist'.  - ("--fst
│ │ │ -001dc6b0: 6162 2220 7c20 6c65 6e67 7468 203d 3d20  ab" | length == 
│ │ │ -001dc6c0: 3029 0a20 202d 2064 6576 6963 655f 6e61  0).  - device_na
│ │ │ -001dc6d0: 6d65 2e73 7464 6f75 7420 6973 2064 6566  me.stdout is def
│ │ │ -001dc6e0: 696e 6564 2061 6e64 2064 6576 6963 655f  ined and device_
│ │ │ -001dc6f0: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ -001dc700: 7320 6973 2064 6566 696e 6564 0a20 202d  s is defined.  -
│ │ │ -001dc710: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ -001dc720: 646f 7574 207c 206c 656e 6774 6820 3d3d  dout | length ==
│ │ │ -001dc730: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ -001dc740: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001dc750: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001dc760: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ -001dc770: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -001dc780: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001dc790: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ -001dc7a0: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ -001dc7b0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001dc7c0: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ -001dc7d0: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001dc7e0: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001dc7f0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001dc800: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001dc810: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001dc820: 745f 6f70 7469 6f6e 5f76 6172 5f6e 6f64  t_option_var_nod
│ │ │ -001dc830: 6576 0a20 202d 206e 6f5f 7265 626f 6f74  ev.  - no_reboot
│ │ │ -001dc840: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ -001dc850: 2027 4164 6420 6e6f 6465 7620 4f70 7469   'Add nodev Opti
│ │ │ -001dc860: 6f6e 2074 6f20 2f76 6172 3a20 4d61 6b65  on to /var: Make
│ │ │ -001dc870: 2073 7572 6520 6e6f 6465 7620 6f70 7469   sure nodev opti
│ │ │ -001dc880: 6f6e 2069 7320 7061 7274 206f 6620 7468  on is part of th
│ │ │ -001dc890: 6520 746f 202f 7661 7220 6f70 7469 6f6e  e to /var option
│ │ │ -001dc8a0: 7327 0a20 2073 6574 5f66 6163 743a 0a20  s'.  set_fact:. 
│ │ │ -001dc8b0: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ -001dc8c0: 7b7b 206d 6f75 6e74 5f69 6e66 6f20 7c20  {{ mount_info | 
│ │ │ -001dc8d0: 636f 6d62 696e 6528 207b 2727 6f70 7469  combine( {''opti
│ │ │ -001dc8e0: 6f6e 7327 273a 2727 2727 7e28 6d6f 756e  ons'':''''~(moun
│ │ │ -001dc8f0: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ -001dc900: 0a20 2020 2020 2064 6566 6175 6c74 2827  .      default('
│ │ │ -001dc910: 2727 2729 297e 2827 272c 2727 2069 6620  '''))~('','' if 
│ │ │ -001dc920: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469  (mount_info.opti
│ │ │ -001dc930: 6f6e 7320 7c20 6465 6661 756c 7428 2727  ons | default(''
│ │ │ -001dc940: 2727 2929 2065 6c73 6520 2727 2727 297e  '')) else '''')~
│ │ │ -001dc950: 2727 6e6f 6465 7627 270a 2020 2020 2020  ''nodev''.      
│ │ │ -001dc960: 7d29 207d 7d27 0a20 2077 6865 6e3a 0a20  }) }}'.  when:. 
│ │ │ -001dc970: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ -001dc980: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -001dc990: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001dc9a0: 6420 2272 706d 2d6f 7374 7265 6522 2069  d "rpm-ostree" i
│ │ │ -001dc9b0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001dc9c0: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001dc9d0: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ -001dc9e0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001dc9f0: 6573 2061 6e64 206e 6f74 2022 6f70 656e  es and not "open
│ │ │ -001dca00: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ -001dca10: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001dca20: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001dca30: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ -001dca40: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ -001dca50: 6520 2920 616e 6420 6e6f 7420 2820 616e  e ) and not ( an
│ │ │ -001dca60: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ -001dca70: 7469 6f6e 5f74 7970 6520 696e 0a20 2020  tion_type in.   
│ │ │ -001dca80: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ -001dca90: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ -001dcaa0: 646d 616e 222c 2022 636f 6e74 6169 6e65  dman", "containe
│ │ │ -001dcab0: 7222 5d20 2920 290a 2020 2d20 2722 2f76  r"] ) ).  - '"/v
│ │ │ -001dcac0: 6172 2220 696e 2061 6e73 6962 6c65 5f6d  ar" in ansible_m
│ │ │ -001dcad0: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ -001dcae0: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ -001dcaf0: 206c 6973 7427 0a20 202d 206d 6f75 6e74   list'.  - mount
│ │ │ -001dcb00: 5f69 6e66 6f20 6973 2064 6566 696e 6564  _info is defined
│ │ │ -001dcb10: 2061 6e64 2022 6e6f 6465 7622 206e 6f74   and "nodev" not
│ │ │ -001dcb20: 2069 6e20 286d 6f75 6e74 5f69 6e66 6f2e   in (mount_info.
│ │ │ -001dcb30: 6f70 7469 6f6e 7320 7c20 6465 6661 756c  options | defaul
│ │ │ -001dcb40: 7428 2727 2929 0a20 2074 6167 733a 0a20  t('')).  tags:. 
│ │ │ -001dcb50: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001dcb60: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ -001dcb70: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ -001dcb80: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -001dcb90: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001dcba0: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ -001dcbb0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001dcbc0: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ -001dcbd0: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ -001dcbe0: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -001dcbf0: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -001dcc00: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -001dcc10: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -001dcc20: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -001dcc30: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f  ount_option_var_
│ │ │ -001dcc40: 6e6f 6465 760a 2020 2d20 6e6f 5f72 6562  nodev.  - no_reb
│ │ │ -001dcc50: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61  oot_needed..- na
│ │ │ -001dcc60: 6d65 3a20 2741 6464 206e 6f64 6576 204f  me: 'Add nodev O
│ │ │ -001dcc70: 7074 696f 6e20 746f 202f 7661 723a 2045  ption to /var: E
│ │ │ -001dcc80: 6e73 7572 6520 2f76 6172 2069 7320 6d6f  nsure /var is mo
│ │ │ -001dcc90: 756e 7465 6420 7769 7468 206e 6f64 6576  unted with nodev
│ │ │ -001dcca0: 206f 7074 696f 6e27 0a20 2061 6e73 6962   option'.  ansib
│ │ │ -001dccb0: 6c65 2e70 6f73 6978 2e6d 6f75 6e74 3a0a  le.posix.mount:.
│ │ │ -001dccc0: 2020 2020 7061 7468 3a20 2f76 6172 0a20      path: /var. 
│ │ │ -001dccd0: 2020 2073 7263 3a20 277b 7b20 6d6f 756e     src: '{{ moun
│ │ │ -001dcce0: 745f 696e 666f 2e73 6f75 7263 6520 7c20  t_info.source | 
│ │ │ -001dccf0: 6465 6661 756c 7428 2727 2727 2920 7d7d  default('''') }}
│ │ │ -001dcd00: 270a 2020 2020 6f70 7473 3a20 277b 7b20  '.    opts: '{{ 
│ │ │ -001dcd10: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ -001dcd20: 6e73 207c 2064 6566 6175 6c74 2827 2727  ns | default('''
│ │ │ -001dcd30: 2729 207d 7d27 0a20 2020 2073 7461 7465  ') }}'.    state
│ │ │ -001dcd40: 3a20 6d6f 756e 7465 640a 2020 2020 6673  : mounted.    fs
│ │ │ -001dcd50: 7479 7065 3a20 277b 7b20 6d6f 756e 745f  type: '{{ mount_
│ │ │ -001dcd60: 696e 666f 2e66 7374 7970 6520 7c20 6465  info.fstype | de
│ │ │ -001dcd70: 6661 756c 7428 2727 2727 2920 7d7d 270a  fault('''') }}'.
│ │ │ -001dcd80: 2020 7265 6769 7374 6572 3a20 6d6f 756e    register: moun
│ │ │ -001dcd90: 745f 7265 7375 6c74 0a20 2066 6169 6c65  t_result.  faile
│ │ │ -001dcda0: 645f 7768 656e 3a0a 2020 2d20 6d6f 756e  d_when:.  - moun
│ │ │ -001dcdb0: 745f 7265 7375 6c74 2069 7320 6661 696c  t_result is fail
│ │ │ -001dcdc0: 6564 0a20 202d 2027 2727 7461 7267 6574  ed.  - '''target
│ │ │ -001dcdd0: 2069 7320 6275 7379 2727 206e 6f74 2069   is busy'' not i
│ │ │ -001dcde0: 6e20 286d 6f75 6e74 5f72 6573 756c 742e  n (mount_result.
│ │ │ -001dcdf0: 6d73 6720 7c20 6465 6661 756c 7428 2727  msg | default(''
│ │ │ -001dce00: 2727 2929 270a 2020 2d20 2727 2761 6c72  ''))'.  - '''alr
│ │ │ -001dce10: 6561 6479 206d 6f75 6e74 6564 2727 206e  eady mounted'' n
│ │ │ -001dce20: 6f74 2069 6e20 286d 6f75 6e74 5f72 6573  ot in (mount_res
│ │ │ -001dce30: 756c 742e 6d73 6720 7c20 6465 6661 756c  ult.msg | defaul
│ │ │ -001dce40: 7428 2727 2727 2929 270a 2020 7768 656e  t(''''))'.  when
│ │ │ -001dce50: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ -001dce60: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -001dce70: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001dce80: 2061 6e64 2022 7270 6d2d 6f73 7472 6565   and "rpm-ostree
│ │ │ -001dce90: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001dcea0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001dceb0: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ -001dcec0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001dced0: 6b61 6765 7320 616e 6420 6e6f 7420 226f  kages and not "o
│ │ │ -001dcee0: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ -001dcef0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001dcf00: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001dcf10: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ -001dcf20: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ -001dcf30: 6c69 6e65 2029 2061 6e64 206e 6f74 2028  line ) and not (
│ │ │ -001dcf40: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ -001dcf50: 697a 6174 696f 6e5f 7479 7065 2069 6e0a  ization_type in.
│ │ │ -001dcf60: 2020 2020 5b22 646f 636b 6572 222c 2022      ["docker", "
│ │ │ -001dcf70: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ -001dcf80: 2270 6f64 6d61 6e22 2c20 2263 6f6e 7461  "podman", "conta
│ │ │ -001dcf90: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ -001dcfa0: 222f 7661 7222 2069 6e20 616e 7369 626c  "/var" in ansibl
│ │ │ -001dcfb0: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ -001dcfc0: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ -001dcfd0: 2920 7c20 6c69 7374 270a 2020 2d20 6d6f  ) | list'.  - mo
│ │ │ -001dcfe0: 756e 745f 696e 666f 2069 7320 6465 6669  unt_info is defi
│ │ │ -001dcff0: 6e65 640a 2020 2d20 2864 6576 6963 655f  ned.  - (device_
│ │ │ -001dd000: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ -001dd010: 6566 696e 6564 2061 6e64 2028 6465 7669  efined and (devi
│ │ │ -001dd020: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ -001dd030: 206c 656e 6774 6820 2667 743b 2030 2929   length > 0))
│ │ │ -001dd040: 206f 7220 2822 2d2d 6673 7461 6222 0a20   or ("--fstab". 
│ │ │ -001dd050: 2020 207c 206c 656e 6774 6820 3d3d 2030     | length == 0
│ │ │ -001dd060: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ -001dd070: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ -001dd080: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001dd090: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ -001dd0a0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -001dd0b0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001dd0c0: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -001dd0d0: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -001dd0e0: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ -001dd0f0: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ -001dd100: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -001dd110: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -001dd120: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001dd130: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -001dd140: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ -001dd150: 6f70 7469 6f6e 5f76 6172 5f6e 6f64 6576  option_var_nodev
│ │ │ -001dd160: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -001dd170: 6565 6465 640a 3c2f 636f 6465 3e3c 2f70  eeded.

Remediatio │ │ │ -001dd230: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ -001dd240: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
Comp │ │ │ -001dba20: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -001dba30: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -001dba50: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ -001dba70: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001dba80: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -001dbaa0: 2f74 683e 3c74 643e 636f 6e66 6967 7572 /th>configur │ │ │ -001dbab0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ -001dd2c0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -001dd2d0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
Reboot:false
│ │ │ -001dd2f0: 3c63 6f64 653e 2320 5265 6d65 6469 6174  # Remediat
│ │ │ -001dd300: 696f 6e20 6973 2061 7070 6c69 6361 626c  ion is applicabl
│ │ │ -001dd310: 6520 6f6e 6c79 2069 6e20 6365 7274 6169  e only in certai
│ │ │ -001dd320: 6e20 706c 6174 666f 726d 730a 6966 2028  n platforms.if (
│ │ │ -001dd330: 2021 2028 207b 2072 706d 202d 2d71 7569   ! ( { rpm --qui
│ │ │ -001dd340: 6574 202d 7120 6b65 726e 656c 203b 7d20  et -q kernel ;} 
│ │ │ -001dd350: 2661 6d70 3b26 616d 703b 207b 2072 706d  && { rpm
│ │ │ -001dd360: 202d 2d71 7569 6574 202d 7120 7270 6d2d   --quiet -q rpm-
│ │ │ -001dd370: 6f73 7472 6565 203b 7d20 2661 6d70 3b26  ostree ;} &&
│ │ │ -001dd380: 616d 703b 207b 2072 706d 202d 2d71 7569  amp; { rpm --qui
│ │ │ -001dd390: 6574 202d 7120 626f 6f74 6320 3b7d 2026  et -q bootc ;} &
│ │ │ -001dd3a0: 616d 703b 2661 6d70 3b20 7b20 2120 7270  amp;& { ! rp
│ │ │ -001dd3b0: 6d20 2d2d 7175 6965 7420 2d71 206f 7065  m --quiet -q ope
│ │ │ -001dd3c0: 6e73 6869 6674 2d6b 7562 656c 6574 203b  nshift-kubelet ;
│ │ │ -001dd3d0: 7d20 2661 6d70 3b26 616d 703b 2028 5b20  } && ([ 
│ │ │ -001dd3e0: 2d66 202f 7275 6e2f 6f73 7472 6565 2d62  -f /run/ostree-b
│ │ │ -001dd3f0: 6f6f 7465 6420 5d20 7c7c 205b 202d 4c20  ooted ] || [ -L 
│ │ │ -001dd400: 2f6f 7374 7265 6520 5d29 2029 2026 616d  /ostree ]) ) &am
│ │ │ -001dd410: 703b 2661 6d70 3b20 2120 2820 5b20 2d66  p;& ! ( [ -f
│ │ │ -001dd420: 202f 2e64 6f63 6b65 7265 6e76 205d 207c   /.dockerenv ] |
│ │ │ -001dd430: 7c20 5b20 2d66 202f 7275 6e2f 2e63 6f6e  | [ -f /run/.con
│ │ │ -001dd440: 7461 696e 6572 656e 7620 5d20 2920 2920  tainerenv ] ) ) 
│ │ │ -001dd450: 2661 6d70 3b26 616d 703b 207b 2028 2066  && { ( f
│ │ │ -001dd460: 696e 646d 6e74 202d 2d6b 6572 6e65 6c20  indmnt --kernel 
│ │ │ -001dd470: 222f 7661 7222 2026 6774 3b20 2f64 6576  "/var" > /dev
│ │ │ -001dd480: 2f6e 756c 6c20 7c7c 2066 696e 646d 6e74  /null || findmnt
│ │ │ -001dd490: 202d 2d66 7374 6162 2022 2f76 6172 2220   --fstab "/var" 
│ │ │ -001dd4a0: 2667 743b 202f 6465 762f 6e75 6c6c 2029  > /dev/null )
│ │ │ -001dd4b0: 3b20 7d3b 2074 6865 6e0a 0a66 756e 6374  ; }; then..funct
│ │ │ -001dd4c0: 696f 6e20 7065 7266 6f72 6d5f 7265 6d65  ion perform_reme
│ │ │ -001dd4d0: 6469 6174 696f 6e20 7b0a 0a20 2020 200a  diation {..    .
│ │ │ -001dd4e0: 2020 2020 2020 2020 2320 7468 6520 6d6f          # the mo
│ │ │ -001dd4f0: 756e 7420 706f 696e 7420 2f76 6172 2068  unt point /var h
│ │ │ -001dd500: 6173 2074 6f20 6265 2064 6566 696e 6564  as to be defined
│ │ │ -001dd510: 2069 6e20 2f65 7463 2f66 7374 6162 0a20   in /etc/fstab. 
│ │ │ -001dd520: 2020 2020 2020 2023 2062 6566 6f72 6520         # before 
│ │ │ -001dd530: 7468 6973 2072 656d 6564 6961 7469 6f6e  this remediation
│ │ │ -001dd540: 2063 616e 2062 6520 6578 6563 7574 6564   can be executed
│ │ │ -001dd550: 2e20 496e 2063 6173 6520 6974 2069 7320  . In case it is 
│ │ │ -001dd560: 6e6f 7420 6465 6669 6e65 642c 2074 6865  not defined, the
│ │ │ -001dd570: 0a20 2020 2020 2020 2023 2072 656d 6564  .        # remed
│ │ │ -001dd580: 6961 7469 6f6e 2061 626f 7274 7320 616e  iation aborts an
│ │ │ -001dd590: 6420 6e6f 2063 6861 6e67 6573 2072 6567  d no changes reg
│ │ │ -001dd5a0: 6172 6469 6e67 2074 6865 206d 6f75 6e74  arding the mount
│ │ │ -001dd5b0: 2070 6f69 6e74 2061 7265 2064 6f6e 652e   point are done.
│ │ │ -001dd5c0: 0a20 2020 2020 2020 206d 6f75 6e74 5f70  .        mount_p
│ │ │ -001dd5d0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001dd5e0: 703d 2224 2870 7269 6e74 6620 225e 5b5b  p="$(printf "^[[
│ │ │ -001dd5f0: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a  :space:]]*[^#].*
│ │ │ -001dd600: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a  [[:space:]]%s[[:
│ │ │ -001dd610: 7370 6163 653a 5d5d 2220 222f 7661 7222  space:]]" "/var"
│ │ │ -001dd620: 2922 0a0a 2020 2020 6772 6570 2022 246d  )"..    grep "$m
│ │ │ -001dd630: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001dd640: 5f72 6567 6578 7022 202d 7120 2f65 7463  _regexp" -q /etc
│ │ │ -001dd650: 2f66 7374 6162 205c 0a20 2020 2020 2020  /fstab \.       
│ │ │ -001dd660: 207c 7c20 7b20 6563 686f 2022 5468 6520   || { echo "The 
│ │ │ -001dd670: 6d6f 756e 7420 706f 696e 7420 272f 7661  mount point '/va
│ │ │ -001dd680: 7227 2069 7320 6e6f 7420 6576 656e 2069  r' is not even i
│ │ │ -001dd690: 6e20 2f65 7463 2f66 7374 6162 2c20 736f  n /etc/fstab, so
│ │ │ -001dd6a0: 2077 6520 6361 6e27 7420 7365 7420 7570   we can't set up
│ │ │ -001dd6b0: 206d 6f75 6e74 206f 7074 696f 6e73 2220   mount options" 
│ │ │ -001dd6c0: 2667 743b 2661 6d70 3b32 3b0a 2020 2020  >&2;.    
│ │ │ -001dd6d0: 2020 2020 2020 2020 2020 2020 6563 686f              echo
│ │ │ -001dd6e0: 2022 4e6f 7420 7265 6d65 6469 6174 696e   "Not remediatin
│ │ │ -001dd6f0: 672c 2062 6563 6175 7365 2074 6865 7265  g, because there
│ │ │ -001dd700: 2069 7320 6e6f 2072 6563 6f72 6420 6f66   is no record of
│ │ │ -001dd710: 202f 7661 7220 696e 202f 6574 632f 6673   /var in /etc/fs
│ │ │ -001dd720: 7461 6222 2026 6774 3b26 616d 703b 323b  tab" >&2;
│ │ │ -001dd730: 2072 6574 7572 6e20 313b 207d 0a20 2020   return 1; }.   
│ │ │ -001dd740: 200a 0a0a 2020 2020 6d6f 756e 745f 706f   ...    mount_po
│ │ │ -001dd750: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001dd760: 3d22 2428 7072 696e 7466 2022 5e5b 5b3a  ="$(printf "^[[:
│ │ │ -001dd770: 7370 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b  space:]]*[^#].*[
│ │ │ -001dd780: 5b3a 7370 6163 653a 5d5d 2573 5b5b 3a73  [:space:]]%s[[:s
│ │ │ -001dd790: 7061 6365 3a5d 5d22 202f 7661 7229 220a  pace:]]" /var)".
│ │ │ -001dd7a0: 0a20 2020 2023 2049 6620 7468 6520 6d6f  .    # If the mo
│ │ │ -001dd7b0: 756e 7420 706f 696e 7420 6973 206e 6f74  unt point is not
│ │ │ -001dd7c0: 2069 6e20 2f65 7463 2f66 7374 6162 2c20   in /etc/fstab, 
│ │ │ -001dd7d0: 6765 7420 7072 6576 696f 7573 206d 6f75  get previous mou
│ │ │ -001dd7e0: 6e74 206f 7074 696f 6e73 2066 726f 6d20  nt options from 
│ │ │ -001dd7f0: 2f65 7463 2f6d 7461 620a 2020 2020 6966  /etc/mtab.    if
│ │ │ -001dd800: 2021 2067 7265 7020 2d71 2022 246d 6f75   ! grep -q "$mou
│ │ │ -001dd810: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001dd820: 6567 6578 7022 202f 6574 632f 6673 7461  egexp" /etc/fsta
│ │ │ -001dd830: 623b 2074 6865 6e0a 2020 2020 2020 2020  b; then.        
│ │ │ -001dd840: 2320 7275 6e74 696d 6520 6f70 7473 2077  # runtime opts w
│ │ │ -001dd850: 6974 686f 7574 2073 6f6d 6520 6175 746f  ithout some auto
│ │ │ -001dd860: 6d61 7469 6320 6b65 726e 656c 2f75 7365  matic kernel/use
│ │ │ -001dd870: 7273 7061 6365 2d61 6464 6564 2064 6566  rspace-added def
│ │ │ -001dd880: 6175 6c74 730a 2020 2020 2020 2020 7072  aults.        pr
│ │ │ -001dd890: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001dd8a0: 733d 2428 6772 6570 2022 246d 6f75 6e74  s=$(grep "$mount
│ │ │ -001dd8b0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001dd8c0: 6578 7022 202f 6574 632f 6d74 6162 207c  exp" /etc/mtab |
│ │ │ -001dd8d0: 2068 6561 6420 2d31 207c 2020 6177 6b20   head -1 |  awk 
│ │ │ -001dd8e0: 277b 7072 696e 7420 2434 7d27 205c 0a20  '{print $4}' \. 
│ │ │ -001dd8f0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -001dd900: 2020 207c 2073 6564 202d 4520 2273 2f28     | sed -E "s/(
│ │ │ -001dd910: 7277 7c64 6566 6175 6c74 737c 7365 636c  rw|defaults|secl
│ │ │ -001dd920: 6162 656c 7c6e 6f64 6576 2928 2c7c 2429  abel|nodev)(,|$)
│ │ │ -001dd930: 2f2f 673b 732f 2c24 2f2f 2229 0a20 2020  //g;s/,$//").   
│ │ │ -001dd940: 2020 2020 205b 2022 2470 7265 7669 6f75       [ "$previou
│ │ │ -001dd950: 735f 6d6f 756e 745f 6f70 7473 2220 5d20  s_mount_opts" ] 
│ │ │ -001dd960: 2661 6d70 3b26 616d 703b 2070 7265 7669  && previ
│ │ │ -001dd970: 6f75 735f 6d6f 756e 745f 6f70 7473 2b3d  ous_mount_opts+=
│ │ │ -001dd980: 222c 220a 2020 2020 2020 2020 2320 496e  ",".        # In
│ │ │ -001dd990: 2069 736f 3936 3630 2066 696c 6573 7973   iso9660 filesys
│ │ │ -001dd9a0: 7465 6d73 206d 7461 6220 636f 756c 6420  tems mtab could 
│ │ │ -001dd9b0: 6465 7363 7269 6265 2061 2022 626c 6f63  describe a "bloc
│ │ │ -001dd9c0: 6b73 697a 6522 2076 616c 7565 2c20 7468  ksize" value, th
│ │ │ -001dd9d0: 6973 2073 686f 756c 6420 6265 2072 6566  is should be ref
│ │ │ -001dd9e0: 6c65 6374 6564 2069 6e0a 2020 2020 2020  lected in.      
│ │ │ -001dd9f0: 2020 2320 6673 7461 6220 6173 2022 626c    # fstab as "bl
│ │ │ -001dda00: 6f63 6b22 2e20 2054 6865 206e 6578 7420  ock".  The next 
│ │ │ -001dda10: 7661 7269 6162 6c65 2069 7320 746f 2073  variable is to s
│ │ │ -001dda20: 6174 6973 6679 2073 6865 6c6c 6368 6563  atisfy shellchec
│ │ │ -001dda30: 6b20 5343 3230 3530 2e0a 2020 2020 2020  k SC2050..      
│ │ │ -001dda40: 2020 6673 5f74 7970 653d 2222 0a20 2020    fs_type="".   
│ │ │ -001dda50: 2020 2020 2069 6620 5b20 2022 2466 735f       if [  "$fs_
│ │ │ -001dda60: 7479 7065 2220 3d3d 2022 6973 6f39 3636  type" == "iso966
│ │ │ -001dda70: 3022 205d 203b 2074 6865 6e0a 2020 2020  0" ] ; then.    
│ │ │ -001dda80: 2020 2020 2020 2020 7072 6576 696f 7573          previous
│ │ │ -001dda90: 5f6d 6f75 6e74 5f6f 7074 733d 2428 7365  _mount_opts=$(se
│ │ │ -001ddaa0: 6420 2773 2f62 6c6f 636b 7369 7a65 3d2f  d 's/blocksize=/
│ │ │ -001ddab0: 626c 6f63 6b3d 2f27 2026 6c74 3b26 6c74  block=/' <<
│ │ │ -001ddac0: 3b26 6c74 3b20 2224 7072 6576 696f 7573  ;< "$previous
│ │ │ -001ddad0: 5f6d 6f75 6e74 5f6f 7074 7322 290a 2020  _mount_opts").  
│ │ │ -001ddae0: 2020 2020 2020 6669 0a20 2020 2020 2020        fi.       
│ │ │ -001ddaf0: 2065 6368 6f20 2220 2f76 6172 2020 6465   echo " /var  de
│ │ │ -001ddb00: 6661 756c 7473 2c24 7b70 7265 7669 6f75  faults,${previou
│ │ │ -001ddb10: 735f 6d6f 756e 745f 6f70 7473 7d6e 6f64  s_mount_opts}nod
│ │ │ -001ddb20: 6576 2030 2030 2220 2667 743b 2667 743b  ev 0 0" >>
│ │ │ -001ddb30: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ -001ddb40: 2320 4966 2074 6865 206d 6f75 6e74 5f6f  # If the mount_o
│ │ │ -001ddb50: 7074 206f 7074 696f 6e20 6973 206e 6f74  pt option is not
│ │ │ -001ddb60: 2061 6c72 6561 6479 2069 6e20 7468 6520   already in the 
│ │ │ -001ddb70: 6d6f 756e 7420 706f 696e 7427 7320 2f65  mount point's /e
│ │ │ -001ddb80: 7463 2f66 7374 6162 2065 6e74 7279 2c20  tc/fstab entry, 
│ │ │ -001ddb90: 6164 6420 6974 0a20 2020 2065 6c69 6620  add it.    elif 
│ │ │ -001ddba0: 2120 6772 6570 2022 246d 6f75 6e74 5f70  ! grep "$mount_p
│ │ │ -001ddbb0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001ddbc0: 7022 202f 6574 632f 6673 7461 6220 7c20  p" /etc/fstab | 
│ │ │ -001ddbd0: 6772 6570 202d 7120 226e 6f64 6576 223b  grep -q "nodev";
│ │ │ -001ddbe0: 2074 6865 6e0a 2020 2020 2020 2020 7072   then.        pr
│ │ │ -001ddbf0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001ddc00: 733d 2428 6772 6570 2022 246d 6f75 6e74  s=$(grep "$mount
│ │ │ -001ddc10: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001ddc20: 6578 7022 202f 6574 632f 6673 7461 6220  exp" /etc/fstab 
│ │ │ -001ddc30: 7c20 6177 6b20 277b 7072 696e 7420 2434  | awk '{print $4
│ │ │ -001ddc40: 7d27 290a 2020 2020 2020 2020 7365 6420  }').        sed 
│ │ │ -001ddc50: 2d69 2022 737c 5c28 247b 6d6f 756e 745f  -i "s|\(${mount_
│ │ │ -001ddc60: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001ddc70: 7870 7d2e 2a24 7b70 7265 7669 6f75 735f  xp}.*${previous_
│ │ │ -001ddc80: 6d6f 756e 745f 6f70 7473 7d5c 297c 5c31  mount_opts}\)|\1
│ │ │ -001ddc90: 2c6e 6f64 6576 7c22 202f 6574 632f 6673  ,nodev|" /etc/fs
│ │ │ -001ddca0: 7461 620a 2020 2020 6669 0a0a 0a20 2020  tab.    fi...   
│ │ │ -001ddcb0: 2069 6620 6d6b 6469 7220 2d70 2022 2f76   if mkdir -p "/v
│ │ │ -001ddcc0: 6172 223b 2074 6865 6e0a 2020 2020 2020  ar"; then.      
│ │ │ -001ddcd0: 2020 6966 206d 6f75 6e74 706f 696e 7420    if mountpoint 
│ │ │ -001ddce0: 2d71 2022 2f76 6172 223b 2074 6865 6e0a  -q "/var"; then.
│ │ │ -001ddcf0: 2020 2020 2020 2020 2020 2020 6d6f 756e              moun
│ │ │ -001ddd00: 7420 2d6f 2072 656d 6f75 6e74 202d 2d74  t -o remount --t
│ │ │ -001ddd10: 6172 6765 7420 222f 7661 7222 0a20 2020  arget "/var".   
│ │ │ -001ddd20: 2020 2020 2066 690a 2020 2020 6669 0a7d       fi.    fi.}
│ │ │ -001ddd30: 0a0a 7065 7266 6f72 6d5f 7265 6d65 6469  ..perform_remedi
│ │ │ -001ddd40: 6174 696f 6e0a 0a65 6c73 650a 2020 2020  ation..else.    
│ │ │ -001ddd50: 2667 743b 2661 6d70 3b32 2065 6368 6f20  >&2 echo 
│ │ │ -001ddd60: 2752 656d 6564 6961 7469 6f6e 2069 7320  'Remediation is 
│ │ │ -001ddd70: 6e6f 7420 6170 706c 6963 6162 6c65 2c20  not applicable, 
│ │ │ -001ddd80: 6e6f 7468 696e 6720 7761 7320 646f 6e65  nothing was done
│ │ │ -001ddd90: 270a 6669 0a3c 2f63 6f64 653e 3c2f 7072  '.fi.
< │ │ │ +001db780: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001db790: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001db7a0: 7365 2220 6964 3d22 6964 3534 3322 3e3c se" id="id543">< │ │ │ +001db7b0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001db7c0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001db7d0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001db7e0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +001db7f0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +001db800: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +001db810: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:high< │ │ │ +001db840: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>Rebo │ │ │ +001db850: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001db860: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e< │ │ │ +001db870: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:configure │ │ │ +001db8a0: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ +001db8b0: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ +001db8c0: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ +001db8d0: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ +001db8e0: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ +001db8f0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +001db900: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ +001db910: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001db920: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ +001db930: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +001db940: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001db950: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001db960: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ +001db970: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ +001db980: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +001db990: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +001db9a0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001db9b0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001db9c0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001db9d0: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001db9e0: 696f 6e5f 7661 725f 6e6f 6465 760a 2020  ion_var_nodev.  
│ │ │ +001db9f0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001dba00: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ +001dba10: 206e 6f64 6576 204f 7074 696f 6e20 746f   nodev Option to
│ │ │ +001dba20: 202f 7661 723a 2043 6865 636b 2069 6e66   /var: Check inf
│ │ │ +001dba30: 6f72 6d61 7469 6f6e 2061 7373 6f63 6961  ormation associa
│ │ │ +001dba40: 7465 6420 746f 206d 6f75 6e74 706f 696e  ted to mountpoin
│ │ │ +001dba50: 7427 0a20 2061 6e73 6962 6c65 2e62 7569  t'.  ansible.bui
│ │ │ +001dba60: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 6669  ltin.command: fi
│ │ │ +001dba70: 6e64 6d6e 7420 2d2d 6673 7461 6220 272f  ndmnt --fstab '/
│ │ │ +001dba80: 7661 7227 0a20 2072 6567 6973 7465 723a  var'.  register:
│ │ │ +001dba90: 2064 6576 6963 655f 6e61 6d65 0a20 2066   device_name.  f
│ │ │ +001dbaa0: 6169 6c65 645f 7768 656e 3a20 6465 7669  ailed_when: devi
│ │ │ +001dbab0: 6365 5f6e 616d 652e 7263 2026 6774 3b20  ce_name.rc > 
│ │ │ +001dbac0: 310a 2020 6368 616e 6765 645f 7768 656e  1.  changed_when
│ │ │ +001dbad0: 3a20 6661 6c73 650a 2020 6368 6563 6b5f  : false.  check_
│ │ │ +001dbae0: 6d6f 6465 3a20 6661 6c73 650a 2020 7768  mode: false.  wh
│ │ │ +001dbaf0: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ +001dbb00: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +001dbb10: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001dbb20: 6573 2061 6e64 2022 7270 6d2d 6f73 7472  es and "rpm-ostr
│ │ │ +001dbb30: 6565 2220 696e 2061 6e73 6962 6c65 5f66  ee" in ansible_f
│ │ │ +001dbb40: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001dbb50: 2020 616e 6420 2262 6f6f 7463 2220 696e    and "bootc" in
│ │ │ +001dbb60: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001dbb70: 6163 6b61 6765 7320 616e 6420 6e6f 7420  ackages and not 
│ │ │ +001dbb80: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +001dbb90: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +001dbba0: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001dbbb0: 2020 616e 6420 226f 7374 7265 6522 2069    and "ostree" i
│ │ │ +001dbbc0: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ +001dbbd0: 6d64 6c69 6e65 2029 2061 6e64 206e 6f74  mdline ) and not
│ │ │ +001dbbe0: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +001dbbf0: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +001dbc00: 6e0a 2020 2020 5b22 646f 636b 6572 222c  n.    ["docker",
│ │ │ +001dbc10: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ +001dbc20: 2c20 2270 6f64 6d61 6e22 2c20 2263 6f6e  , "podman", "con
│ │ │ +001dbc30: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ +001dbc40: 2027 222f 7661 7222 2069 6e20 616e 7369   '"/var" in ansi
│ │ │ +001dbc50: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ +001dbc60: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ +001dbc70: 7422 2920 7c20 6c69 7374 270a 2020 7461  t") | list'.  ta
│ │ │ +001dbc80: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +001dbc90: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ +001dbca0: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ +001dbcb0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001dbcc0: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ +001dbcd0: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ +001dbce0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001dbcf0: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ +001dbd00: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ +001dbd10: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001dbd20: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001dbd30: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001dbd40: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001dbd50: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001dbd60: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001dbd70: 5f76 6172 5f6e 6f64 6576 0a20 202d 206e  _var_nodev.  - n
│ │ │ +001dbd80: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +001dbd90: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ +001dbda0: 6465 7620 4f70 7469 6f6e 2074 6f20 2f76  dev Option to /v
│ │ │ +001dbdb0: 6172 3a20 4372 6561 7465 206d 6f75 6e74  ar: Create mount
│ │ │ +001dbdc0: 5f69 6e66 6f20 6469 6374 696f 6e61 7279  _info dictionary
│ │ │ +001dbdd0: 2076 6172 6961 626c 6527 0a20 2073 6574   variable'.  set
│ │ │ +001dbde0: 5f66 6163 743a 0a20 2020 206d 6f75 6e74  _fact:.    mount
│ │ │ +001dbdf0: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74  _info: '{{ mount
│ │ │ +001dbe00: 5f69 6e66 6f7c 6465 6661 756c 7428 7b7d  _info|default({}
│ │ │ +001dbe10: 297c 636f 6d62 696e 6528 7b69 7465 6d2e  )|combine({item.
│ │ │ +001dbe20: 303a 2069 7465 6d2e 317d 2920 7d7d 270a  0: item.1}) }}'.
│ │ │ +001dbe30: 2020 7769 7468 5f74 6f67 6574 6865 723a    with_together:
│ │ │ +001dbe40: 0a20 202d 2027 7b7b 2064 6576 6963 655f  .  - '{{ device_
│ │ │ +001dbe50: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ +001dbe60: 735b 305d 2e73 706c 6974 2829 207c 206d  s[0].split() | m
│ │ │ +001dbe70: 6170 2827 276c 6f77 6572 2727 2920 7c20  ap(''lower'') | 
│ │ │ +001dbe80: 6c69 7374 207d 7d27 0a20 202d 2027 7b7b  list }}'.  - '{{
│ │ │ +001dbe90: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +001dbea0: 6f75 745f 6c69 6e65 735b 315d 2e73 706c  out_lines[1].spl
│ │ │ +001dbeb0: 6974 2829 207c 206c 6973 7420 7d7d 270a  it() | list }}'.
│ │ │ +001dbec0: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ +001dbed0: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ +001dbee0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001dbef0: 636b 6167 6573 2061 6e64 2022 7270 6d2d  ckages and "rpm-
│ │ │ +001dbf00: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001dbf10: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001dbf20: 730a 2020 2020 616e 6420 2262 6f6f 7463  s.    and "bootc
│ │ │ +001dbf30: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001dbf40: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001dbf50: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ +001dbf60: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ +001dbf70: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001dbf80: 730a 2020 2020 616e 6420 226f 7374 7265  s.    and "ostre
│ │ │ +001dbf90: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ +001dbfa0: 6f63 5f63 6d64 6c69 6e65 2029 2061 6e64  oc_cmdline ) and
│ │ │ +001dbfb0: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ +001dbfc0: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ +001dbfd0: 7065 2069 6e0a 2020 2020 5b22 646f 636b  pe in.    ["dock
│ │ │ +001dbfe0: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ +001dbff0: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c20  nvz", "podman", 
│ │ │ +001dc000: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ +001dc010: 0a20 202d 2027 222f 7661 7222 2069 6e20  .  - '"/var" in 
│ │ │ +001dc020: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ +001dc030: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ +001dc040: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ +001dc050: 2020 2d20 6465 7669 6365 5f6e 616d 652e    - device_name.
│ │ │ +001dc060: 7374 646f 7574 2069 7320 6465 6669 6e65  stdout is define
│ │ │ +001dc070: 6420 616e 6420 6465 7669 6365 5f6e 616d  d and device_nam
│ │ │ +001dc080: 652e 7374 646f 7574 5f6c 696e 6573 2069  e.stdout_lines i
│ │ │ +001dc090: 7320 6465 6669 6e65 640a 2020 2d20 2864  s defined.  - (d
│ │ │ +001dc0a0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001dc0b0: 7420 7c20 6c65 6e67 7468 2026 6774 3b20  t | length > 
│ │ │ +001dc0c0: 3029 0a20 2074 6167 733a 0a20 202d 204e  0).  tags:.  - N
│ │ │ +001dc0d0: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ +001dc0e0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001dc0f0: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ +001dc100: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +001dc110: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001dc120: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +001dc130: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +001dc140: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001dc150: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ +001dc160: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +001dc170: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +001dc180: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +001dc190: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +001dc1a0: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +001dc1b0: 5f6f 7074 696f 6e5f 7661 725f 6e6f 6465  _option_var_node
│ │ │ +001dc1c0: 760a 2020 2d20 6e6f 5f72 6562 6f6f 745f  v.  - no_reboot_
│ │ │ +001dc1d0: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ +001dc1e0: 2741 6464 206e 6f64 6576 204f 7074 696f  'Add nodev Optio
│ │ │ +001dc1f0: 6e20 746f 202f 7661 723a 2049 6620 2f76  n to /var: If /v
│ │ │ +001dc200: 6172 206e 6f74 206d 6f75 6e74 6564 2c20  ar not mounted, 
│ │ │ +001dc210: 6372 6166 7420 6d6f 756e 745f 696e 666f  craft mount_info
│ │ │ +001dc220: 206d 616e 7561 6c6c 7927 0a20 2073 6574   manually'.  set
│ │ │ +001dc230: 5f66 6163 743a 0a20 2020 206d 6f75 6e74  _fact:.    mount
│ │ │ +001dc240: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74  _info: '{{ mount
│ │ │ +001dc250: 5f69 6e66 6f7c 6465 6661 756c 7428 7b7d  _info|default({}
│ │ │ +001dc260: 297c 636f 6d62 696e 6528 7b69 7465 6d2e  )|combine({item.
│ │ │ +001dc270: 303a 2069 7465 6d2e 317d 2920 7d7d 270a  0: item.1}) }}'.
│ │ │ +001dc280: 2020 7769 7468 5f74 6f67 6574 6865 723a    with_together:
│ │ │ +001dc290: 0a20 202d 202d 2074 6172 6765 740a 2020  .  - - target.  
│ │ │ +001dc2a0: 2020 2d20 736f 7572 6365 0a20 2020 202d    - source.    -
│ │ │ +001dc2b0: 2066 7374 7970 650a 2020 2020 2d20 6f70   fstype.    - op
│ │ │ +001dc2c0: 7469 6f6e 730a 2020 2d20 2d20 2f76 6172  tions.  - - /var
│ │ │ +001dc2d0: 0a20 2020 202d 2027 270a 2020 2020 2d20  .    - ''.    - 
│ │ │ +001dc2e0: 2727 0a20 2020 202d 2064 6566 6175 6c74  ''.    - default
│ │ │ +001dc2f0: 730a 2020 7768 656e 3a0a 2020 2d20 2820  s.  when:.  - ( 
│ │ │ +001dc300: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ +001dc310: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001dc320: 7061 636b 6167 6573 2061 6e64 2022 7270  packages and "rp
│ │ │ +001dc330: 6d2d 6f73 7472 6565 2220 696e 2061 6e73  m-ostree" in ans
│ │ │ +001dc340: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001dc350: 6765 730a 2020 2020 616e 6420 2262 6f6f  ges.    and "boo
│ │ │ +001dc360: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ +001dc370: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001dc380: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ +001dc390: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ +001dc3a0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001dc3b0: 6765 730a 2020 2020 616e 6420 226f 7374  ges.    and "ost
│ │ │ +001dc3c0: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001dc3d0: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061  proc_cmdline ) a
│ │ │ +001dc3e0: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ +001dc3f0: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ +001dc400: 7479 7065 2069 6e0a 2020 2020 5b22 646f  type in.    ["do
│ │ │ +001dc410: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ +001dc420: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ +001dc430: 2c20 2263 6f6e 7461 696e 6572 225d 2029  , "container"] )
│ │ │ +001dc440: 2029 0a20 202d 2027 222f 7661 7222 2069   ).  - '"/var" i
│ │ │ +001dc450: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ +001dc460: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ +001dc470: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ +001dc480: 270a 2020 2d20 2822 2d2d 6673 7461 6222  '.  - ("--fstab"
│ │ │ +001dc490: 207c 206c 656e 6774 6820 3d3d 2030 290a   | length == 0).
│ │ │ +001dc4a0: 2020 2d20 6465 7669 6365 5f6e 616d 652e    - device_name.
│ │ │ +001dc4b0: 7374 646f 7574 2069 7320 6465 6669 6e65  stdout is define
│ │ │ +001dc4c0: 6420 616e 6420 6465 7669 6365 5f6e 616d  d and device_nam
│ │ │ +001dc4d0: 652e 7374 646f 7574 5f6c 696e 6573 2069  e.stdout_lines i
│ │ │ +001dc4e0: 7320 6465 6669 6e65 640a 2020 2d20 2864  s defined.  - (d
│ │ │ +001dc4f0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001dc500: 7420 7c20 6c65 6e67 7468 203d 3d20 3029  t | length == 0)
│ │ │ +001dc510: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +001dc520: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ +001dc530: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001dc540: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ +001dc550: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ +001dc560: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001dc570: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ +001dc580: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ +001dc590: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ +001dc5a0: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ +001dc5b0: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +001dc5c0: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +001dc5d0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +001dc5e0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +001dc5f0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ +001dc600: 7074 696f 6e5f 7661 725f 6e6f 6465 760a  ption_var_nodev.
│ │ │ +001dc610: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001dc620: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001dc630: 6464 206e 6f64 6576 204f 7074 696f 6e20  dd nodev Option 
│ │ │ +001dc640: 746f 202f 7661 723a 204d 616b 6520 7375  to /var: Make su
│ │ │ +001dc650: 7265 206e 6f64 6576 206f 7074 696f 6e20  re nodev option 
│ │ │ +001dc660: 6973 2070 6172 7420 6f66 2074 6865 2074  is part of the t
│ │ │ +001dc670: 6f20 2f76 6172 206f 7074 696f 6e73 270a  o /var options'.
│ │ │ +001dc680: 2020 7365 745f 6661 6374 3a0a 2020 2020    set_fact:.    
│ │ │ +001dc690: 6d6f 756e 745f 696e 666f 3a20 277b 7b20  mount_info: '{{ 
│ │ │ +001dc6a0: 6d6f 756e 745f 696e 666f 207c 2063 6f6d  mount_info | com
│ │ │ +001dc6b0: 6269 6e65 2820 7b27 276f 7074 696f 6e73  bine( {''options
│ │ │ +001dc6c0: 2727 3a27 2727 277e 286d 6f75 6e74 5f69  '':''''~(mount_i
│ │ │ +001dc6d0: 6e66 6f2e 6f70 7469 6f6e 7320 7c0a 2020  nfo.options |.  
│ │ │ +001dc6e0: 2020 2020 6465 6661 756c 7428 2727 2727      default(''''
│ │ │ +001dc6f0: 2929 7e28 2727 2c27 2720 6966 2028 6d6f  ))~('','' if (mo
│ │ │ +001dc700: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ +001dc710: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ +001dc720: 2920 656c 7365 2027 2727 2729 7e27 276e  ) else '''')~''n
│ │ │ +001dc730: 6f64 6576 2727 0a20 2020 2020 207d 2920  odev''.      }) 
│ │ │ +001dc740: 7d7d 270a 2020 7768 656e 3a0a 2020 2d20  }}'.  when:.  - 
│ │ │ +001dc750: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ +001dc760: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001dc770: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001dc780: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ +001dc790: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001dc7a0: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ +001dc7b0: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +001dc7c0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001dc7d0: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ +001dc7e0: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ +001dc7f0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001dc800: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ +001dc810: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001dc820: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ +001dc830: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ +001dc840: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ +001dc850: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ +001dc860: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +001dc870: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +001dc880: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ +001dc890: 2029 2029 0a20 202d 2027 222f 7661 7222   ) ).  - '"/var"
│ │ │ +001dc8a0: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ +001dc8b0: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ +001dc8c0: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ +001dc8d0: 7374 270a 2020 2d20 6d6f 756e 745f 696e  st'.  - mount_in
│ │ │ +001dc8e0: 666f 2069 7320 6465 6669 6e65 6420 616e  fo is defined an
│ │ │ +001dc8f0: 6420 226e 6f64 6576 2220 6e6f 7420 696e  d "nodev" not in
│ │ │ +001dc900: 2028 6d6f 756e 745f 696e 666f 2e6f 7074   (mount_info.opt
│ │ │ +001dc910: 696f 6e73 207c 2064 6566 6175 6c74 2827  ions | default('
│ │ │ +001dc920: 2729 290a 2020 7461 6773 3a0a 2020 2d20  ')).  tags:.  - 
│ │ │ +001dc930: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001dc940: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001dc950: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ +001dc960: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +001dc970: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001dc980: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ +001dc990: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ +001dc9a0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001dc9b0: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ +001dc9c0: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +001dc9d0: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ +001dc9e0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001dc9f0: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ +001dca00: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ +001dca10: 745f 6f70 7469 6f6e 5f76 6172 5f6e 6f64  t_option_var_nod
│ │ │ +001dca20: 6576 0a20 202d 206e 6f5f 7265 626f 6f74  ev.  - no_reboot
│ │ │ +001dca30: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ +001dca40: 2027 4164 6420 6e6f 6465 7620 4f70 7469   'Add nodev Opti
│ │ │ +001dca50: 6f6e 2074 6f20 2f76 6172 3a20 456e 7375  on to /var: Ensu
│ │ │ +001dca60: 7265 202f 7661 7220 6973 206d 6f75 6e74  re /var is mount
│ │ │ +001dca70: 6564 2077 6974 6820 6e6f 6465 7620 6f70  ed with nodev op
│ │ │ +001dca80: 7469 6f6e 270a 2020 616e 7369 626c 652e  tion'.  ansible.
│ │ │ +001dca90: 706f 7369 782e 6d6f 756e 743a 0a20 2020  posix.mount:.   
│ │ │ +001dcaa0: 2070 6174 683a 202f 7661 720a 2020 2020   path: /var.    
│ │ │ +001dcab0: 7372 633a 2027 7b7b 206d 6f75 6e74 5f69  src: '{{ mount_i
│ │ │ +001dcac0: 6e66 6f2e 736f 7572 6365 207c 2064 6566  nfo.source | def
│ │ │ +001dcad0: 6175 6c74 2827 2727 2729 207d 7d27 0a20  ault('''') }}'. 
│ │ │ +001dcae0: 2020 206f 7074 733a 2027 7b7b 206d 6f75     opts: '{{ mou
│ │ │ +001dcaf0: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ +001dcb00: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ +001dcb10: 7d7d 270a 2020 2020 7374 6174 653a 206d  }}'.    state: m
│ │ │ +001dcb20: 6f75 6e74 6564 0a20 2020 2066 7374 7970  ounted.    fstyp
│ │ │ +001dcb30: 653a 2027 7b7b 206d 6f75 6e74 5f69 6e66  e: '{{ mount_inf
│ │ │ +001dcb40: 6f2e 6673 7479 7065 207c 2064 6566 6175  o.fstype | defau
│ │ │ +001dcb50: 6c74 2827 2727 2729 207d 7d27 0a20 2072  lt('''') }}'.  r
│ │ │ +001dcb60: 6567 6973 7465 723a 206d 6f75 6e74 5f72  egister: mount_r
│ │ │ +001dcb70: 6573 756c 740a 2020 6661 696c 6564 5f77  esult.  failed_w
│ │ │ +001dcb80: 6865 6e3a 0a20 202d 206d 6f75 6e74 5f72  hen:.  - mount_r
│ │ │ +001dcb90: 6573 756c 7420 6973 2066 6169 6c65 640a  esult is failed.
│ │ │ +001dcba0: 2020 2d20 2727 2774 6172 6765 7420 6973    - '''target is
│ │ │ +001dcbb0: 2062 7573 7927 2720 6e6f 7420 696e 2028   busy'' not in (
│ │ │ +001dcbc0: 6d6f 756e 745f 7265 7375 6c74 2e6d 7367  mount_result.msg
│ │ │ +001dcbd0: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ +001dcbe0: 2927 0a20 202d 2027 2727 616c 7265 6164  )'.  - '''alread
│ │ │ +001dcbf0: 7920 6d6f 756e 7465 6427 2720 6e6f 7420  y mounted'' not 
│ │ │ +001dcc00: 696e 2028 6d6f 756e 745f 7265 7375 6c74  in (mount_result
│ │ │ +001dcc10: 2e6d 7367 207c 2064 6566 6175 6c74 2827  .msg | default('
│ │ │ +001dcc20: 2727 2729 2927 0a20 2077 6865 6e3a 0a20  '''))'.  when:. 
│ │ │ +001dcc30: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ +001dcc40: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +001dcc50: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001dcc60: 6420 2272 706d 2d6f 7374 7265 6522 2069  d "rpm-ostree" i
│ │ │ +001dcc70: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001dcc80: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +001dcc90: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ +001dcca0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001dccb0: 6573 2061 6e64 206e 6f74 2022 6f70 656e  es and not "open
│ │ │ +001dccc0: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ +001dccd0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001dcce0: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +001dccf0: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ +001dcd00: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ +001dcd10: 6520 2920 616e 6420 6e6f 7420 2820 616e  e ) and not ( an
│ │ │ +001dcd20: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ +001dcd30: 7469 6f6e 5f74 7970 6520 696e 0a20 2020  tion_type in.   
│ │ │ +001dcd40: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ +001dcd50: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ +001dcd60: 646d 616e 222c 2022 636f 6e74 6169 6e65  dman", "containe
│ │ │ +001dcd70: 7222 5d20 2920 290a 2020 2d20 2722 2f76  r"] ) ).  - '"/v
│ │ │ +001dcd80: 6172 2220 696e 2061 6e73 6962 6c65 5f6d  ar" in ansible_m
│ │ │ +001dcd90: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ +001dcda0: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ +001dcdb0: 206c 6973 7427 0a20 202d 206d 6f75 6e74   list'.  - mount
│ │ │ +001dcdc0: 5f69 6e66 6f20 6973 2064 6566 696e 6564  _info is defined
│ │ │ +001dcdd0: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ +001dcde0: 652e 7374 646f 7574 2069 7320 6465 6669  e.stdout is defi
│ │ │ +001dcdf0: 6e65 6420 616e 6420 2864 6576 6963 655f  ned and (device_
│ │ │ +001dce00: 6e61 6d65 2e73 7464 6f75 7420 7c20 6c65  name.stdout | le
│ │ │ +001dce10: 6e67 7468 2026 6774 3b20 3029 2920 6f72  ngth > 0)) or
│ │ │ +001dce20: 2028 222d 2d66 7374 6162 220a 2020 2020   ("--fstab".    
│ │ │ +001dce30: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ +001dce40: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +001dce50: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ +001dce60: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001dce70: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ +001dce80: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +001dce90: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001dcea0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001dceb0: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ +001dcec0: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ +001dced0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +001dcee0: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +001dcef0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001dcf00: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001dcf10: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001dcf20: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001dcf30: 696f 6e5f 7661 725f 6e6f 6465 760a 2020  ion_var_nodev.  
│ │ │ +001dcf40: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001dcf50: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e  ed.
│ │ │ +001dcf60: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation S │ │ │ +001dd010: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ +001dd020: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ +001dd0c0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Reboot:false
# Remediation
│ │ │ +001dd0e0: 2069 7320 6170 706c 6963 6162 6c65 206f   is applicable o
│ │ │ +001dd0f0: 6e6c 7920 696e 2063 6572 7461 696e 2070  nly in certain p
│ │ │ +001dd100: 6c61 7466 6f72 6d73 0a69 6620 2820 2120  latforms.if ( ! 
│ │ │ +001dd110: 2820 7b20 7270 6d20 2d2d 7175 6965 7420  ( { rpm --quiet 
│ │ │ +001dd120: 2d71 206b 6572 6e65 6c20 3b7d 2026 616d  -q kernel ;} &am
│ │ │ +001dd130: 703b 2661 6d70 3b20 7b20 7270 6d20 2d2d  p;& { rpm --
│ │ │ +001dd140: 7175 6965 7420 2d71 2072 706d 2d6f 7374  quiet -q rpm-ost
│ │ │ +001dd150: 7265 6520 3b7d 2026 616d 703b 2661 6d70  ree ;} &&
│ │ │ +001dd160: 3b20 7b20 7270 6d20 2d2d 7175 6965 7420  ; { rpm --quiet 
│ │ │ +001dd170: 2d71 2062 6f6f 7463 203b 7d20 2661 6d70  -q bootc ;} &
│ │ │ +001dd180: 3b26 616d 703b 207b 2021 2072 706d 202d  ;& { ! rpm -
│ │ │ +001dd190: 2d71 7569 6574 202d 7120 6f70 656e 7368  -quiet -q opensh
│ │ │ +001dd1a0: 6966 742d 6b75 6265 6c65 7420 3b7d 2026  ift-kubelet ;} &
│ │ │ +001dd1b0: 616d 703b 2661 6d70 3b20 285b 202d 6620  amp;& ([ -f 
│ │ │ +001dd1c0: 2f72 756e 2f6f 7374 7265 652d 626f 6f74  /run/ostree-boot
│ │ │ +001dd1d0: 6564 205d 207c 7c20 5b20 2d4c 202f 6f73  ed ] || [ -L /os
│ │ │ +001dd1e0: 7472 6565 205d 2920 2920 2661 6d70 3b26  tree ]) ) &&
│ │ │ +001dd1f0: 616d 703b 2021 2028 205b 202d 6620 2f2e  amp; ! ( [ -f /.
│ │ │ +001dd200: 646f 636b 6572 656e 7620 5d20 7c7c 205b  dockerenv ] || [
│ │ │ +001dd210: 202d 6620 2f72 756e 2f2e 636f 6e74 6169   -f /run/.contai
│ │ │ +001dd220: 6e65 7265 6e76 205d 2029 2029 2026 616d  nerenv ] ) ) &am
│ │ │ +001dd230: 703b 2661 6d70 3b20 7b20 2820 6669 6e64  p;& { ( find
│ │ │ +001dd240: 6d6e 7420 2d2d 6b65 726e 656c 2022 2f76  mnt --kernel "/v
│ │ │ +001dd250: 6172 2220 2667 743b 202f 6465 762f 6e75  ar" > /dev/nu
│ │ │ +001dd260: 6c6c 207c 7c20 6669 6e64 6d6e 7420 2d2d  ll || findmnt --
│ │ │ +001dd270: 6673 7461 6220 222f 7661 7222 2026 6774  fstab "/var" >
│ │ │ +001dd280: 3b20 2f64 6576 2f6e 756c 6c20 293b 207d  ; /dev/null ); }
│ │ │ +001dd290: 3b20 7468 656e 0a0a 6675 6e63 7469 6f6e  ; then..function
│ │ │ +001dd2a0: 2070 6572 666f 726d 5f72 656d 6564 6961   perform_remedia
│ │ │ +001dd2b0: 7469 6f6e 207b 0a0a 2020 2020 0a20 2020  tion {..    .   
│ │ │ +001dd2c0: 2020 2020 2023 2074 6865 206d 6f75 6e74       # the mount
│ │ │ +001dd2d0: 2070 6f69 6e74 202f 7661 7220 6861 7320   point /var has 
│ │ │ +001dd2e0: 746f 2062 6520 6465 6669 6e65 6420 696e  to be defined in
│ │ │ +001dd2f0: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ +001dd300: 2020 2020 2320 6265 666f 7265 2074 6869      # before thi
│ │ │ +001dd310: 7320 7265 6d65 6469 6174 696f 6e20 6361  s remediation ca
│ │ │ +001dd320: 6e20 6265 2065 7865 6375 7465 642e 2049  n be executed. I
│ │ │ +001dd330: 6e20 6361 7365 2069 7420 6973 206e 6f74  n case it is not
│ │ │ +001dd340: 2064 6566 696e 6564 2c20 7468 650a 2020   defined, the.  
│ │ │ +001dd350: 2020 2020 2020 2320 7265 6d65 6469 6174        # remediat
│ │ │ +001dd360: 696f 6e20 6162 6f72 7473 2061 6e64 206e  ion aborts and n
│ │ │ +001dd370: 6f20 6368 616e 6765 7320 7265 6761 7264  o changes regard
│ │ │ +001dd380: 696e 6720 7468 6520 6d6f 756e 7420 706f  ing the mount po
│ │ │ +001dd390: 696e 7420 6172 6520 646f 6e65 2e0a 2020  int are done..  
│ │ │ +001dd3a0: 2020 2020 2020 6d6f 756e 745f 706f 696e        mount_poin
│ │ │ +001dd3b0: 745f 6d61 7463 685f 7265 6765 7870 3d22  t_match_regexp="
│ │ │ +001dd3c0: 2428 7072 696e 7466 2022 5e5b 5b3a 7370  $(printf "^[[:sp
│ │ │ +001dd3d0: 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a  ace:]]*[^#].*[[:
│ │ │ +001dd3e0: 7370 6163 653a 5d5d 2573 5b5b 3a73 7061  space:]]%s[[:spa
│ │ │ +001dd3f0: 6365 3a5d 5d22 2022 2f76 6172 2229 220a  ce:]]" "/var")".
│ │ │ +001dd400: 0a20 2020 2067 7265 7020 2224 6d6f 756e  .    grep "$moun
│ │ │ +001dd410: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001dd420: 6765 7870 2220 2d71 202f 6574 632f 6673  gexp" -q /etc/fs
│ │ │ +001dd430: 7461 6220 5c0a 2020 2020 2020 2020 7c7c  tab \.        ||
│ │ │ +001dd440: 207b 2065 6368 6f20 2254 6865 206d 6f75   { echo "The mou
│ │ │ +001dd450: 6e74 2070 6f69 6e74 2027 2f76 6172 2720  nt point '/var' 
│ │ │ +001dd460: 6973 206e 6f74 2065 7665 6e20 696e 202f  is not even in /
│ │ │ +001dd470: 6574 632f 6673 7461 622c 2073 6f20 7765  etc/fstab, so we
│ │ │ +001dd480: 2063 616e 2774 2073 6574 2075 7020 6d6f   can't set up mo
│ │ │ +001dd490: 756e 7420 6f70 7469 6f6e 7322 2026 6774  unt options" >
│ │ │ +001dd4a0: 3b26 616d 703b 323b 0a20 2020 2020 2020  ;&2;.       
│ │ │ +001dd4b0: 2020 2020 2020 2020 2065 6368 6f20 224e           echo "N
│ │ │ +001dd4c0: 6f74 2072 656d 6564 6961 7469 6e67 2c20  ot remediating, 
│ │ │ +001dd4d0: 6265 6361 7573 6520 7468 6572 6520 6973  because there is
│ │ │ +001dd4e0: 206e 6f20 7265 636f 7264 206f 6620 2f76   no record of /v
│ │ │ +001dd4f0: 6172 2069 6e20 2f65 7463 2f66 7374 6162  ar in /etc/fstab
│ │ │ +001dd500: 2220 2667 743b 2661 6d70 3b32 3b20 7265  " >&2; re
│ │ │ +001dd510: 7475 726e 2031 3b20 7d0a 2020 2020 0a0a  turn 1; }.    ..
│ │ │ +001dd520: 0a20 2020 206d 6f75 6e74 5f70 6f69 6e74  .    mount_point
│ │ │ +001dd530: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ +001dd540: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ +001dd550: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ +001dd560: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ +001dd570: 653a 5d5d 2220 2f76 6172 2922 0a0a 2020  e:]]" /var)"..  
│ │ │ +001dd580: 2020 2320 4966 2074 6865 206d 6f75 6e74    # If the mount
│ │ │ +001dd590: 2070 6f69 6e74 2069 7320 6e6f 7420 696e   point is not in
│ │ │ +001dd5a0: 202f 6574 632f 6673 7461 622c 2067 6574   /etc/fstab, get
│ │ │ +001dd5b0: 2070 7265 7669 6f75 7320 6d6f 756e 7420   previous mount 
│ │ │ +001dd5c0: 6f70 7469 6f6e 7320 6672 6f6d 202f 6574  options from /et
│ │ │ +001dd5d0: 632f 6d74 6162 0a20 2020 2069 6620 2120  c/mtab.    if ! 
│ │ │ +001dd5e0: 6772 6570 202d 7120 2224 6d6f 756e 745f  grep -q "$mount_
│ │ │ +001dd5f0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001dd600: 7870 2220 2f65 7463 2f66 7374 6162 3b20  xp" /etc/fstab; 
│ │ │ +001dd610: 7468 656e 0a20 2020 2020 2020 2023 2072  then.        # r
│ │ │ +001dd620: 756e 7469 6d65 206f 7074 7320 7769 7468  untime opts with
│ │ │ +001dd630: 6f75 7420 736f 6d65 2061 7574 6f6d 6174  out some automat
│ │ │ +001dd640: 6963 206b 6572 6e65 6c2f 7573 6572 7370  ic kernel/usersp
│ │ │ +001dd650: 6163 652d 6164 6465 6420 6465 6661 756c  ace-added defaul
│ │ │ +001dd660: 7473 0a20 2020 2020 2020 2070 7265 7669  ts.        previ
│ │ │ +001dd670: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ +001dd680: 2867 7265 7020 2224 6d6f 756e 745f 706f  (grep "$mount_po
│ │ │ +001dd690: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001dd6a0: 2220 2f65 7463 2f6d 7461 6220 7c20 6865  " /etc/mtab | he
│ │ │ +001dd6b0: 6164 202d 3120 7c20 2061 776b 2027 7b70  ad -1 |  awk '{p
│ │ │ +001dd6c0: 7269 6e74 2024 347d 2720 5c0a 2020 2020  rint $4}' \.    
│ │ │ +001dd6d0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +001dd6e0: 7c20 7365 6420 2d45 2022 732f 2872 777c  | sed -E "s/(rw|
│ │ │ +001dd6f0: 6465 6661 756c 7473 7c73 6563 6c61 6265  defaults|seclabe
│ │ │ +001dd700: 6c7c 6e6f 6465 7629 282c 7c24 292f 2f67  l|nodev)(,|$)//g
│ │ │ +001dd710: 3b73 2f2c 242f 2f22 290a 2020 2020 2020  ;s/,$//").      
│ │ │ +001dd720: 2020 5b20 2224 7072 6576 696f 7573 5f6d    [ "$previous_m
│ │ │ +001dd730: 6f75 6e74 5f6f 7074 7322 205d 2026 616d  ount_opts" ] &am
│ │ │ +001dd740: 703b 2661 6d70 3b20 7072 6576 696f 7573  p;& previous
│ │ │ +001dd750: 5f6d 6f75 6e74 5f6f 7074 732b 3d22 2c22  _mount_opts+=","
│ │ │ +001dd760: 0a20 2020 2020 2020 2023 2049 6e20 6973  .        # In is
│ │ │ +001dd770: 6f39 3636 3020 6669 6c65 7379 7374 656d  o9660 filesystem
│ │ │ +001dd780: 7320 6d74 6162 2063 6f75 6c64 2064 6573  s mtab could des
│ │ │ +001dd790: 6372 6962 6520 6120 2262 6c6f 636b 7369  cribe a "blocksi
│ │ │ +001dd7a0: 7a65 2220 7661 6c75 652c 2074 6869 7320  ze" value, this 
│ │ │ +001dd7b0: 7368 6f75 6c64 2062 6520 7265 666c 6563  should be reflec
│ │ │ +001dd7c0: 7465 6420 696e 0a20 2020 2020 2020 2023  ted in.        #
│ │ │ +001dd7d0: 2066 7374 6162 2061 7320 2262 6c6f 636b   fstab as "block
│ │ │ +001dd7e0: 222e 2020 5468 6520 6e65 7874 2076 6172  ".  The next var
│ │ │ +001dd7f0: 6961 626c 6520 6973 2074 6f20 7361 7469  iable is to sati
│ │ │ +001dd800: 7366 7920 7368 656c 6c63 6865 636b 2053  sfy shellcheck S
│ │ │ +001dd810: 4332 3035 302e 0a20 2020 2020 2020 2066  C2050..        f
│ │ │ +001dd820: 735f 7479 7065 3d22 220a 2020 2020 2020  s_type="".      
│ │ │ +001dd830: 2020 6966 205b 2020 2224 6673 5f74 7970    if [  "$fs_typ
│ │ │ +001dd840: 6522 203d 3d20 2269 736f 3936 3630 2220  e" == "iso9660" 
│ │ │ +001dd850: 5d20 3b20 7468 656e 0a20 2020 2020 2020  ] ; then.       
│ │ │ +001dd860: 2020 2020 2070 7265 7669 6f75 735f 6d6f       previous_mo
│ │ │ +001dd870: 756e 745f 6f70 7473 3d24 2873 6564 2027  unt_opts=$(sed '
│ │ │ +001dd880: 732f 626c 6f63 6b73 697a 653d 2f62 6c6f  s/blocksize=/blo
│ │ │ +001dd890: 636b 3d2f 2720 266c 743b 266c 743b 266c  ck=/' <<&l
│ │ │ +001dd8a0: 743b 2022 2470 7265 7669 6f75 735f 6d6f  t; "$previous_mo
│ │ │ +001dd8b0: 756e 745f 6f70 7473 2229 0a20 2020 2020  unt_opts").     
│ │ │ +001dd8c0: 2020 2066 690a 2020 2020 2020 2020 6563     fi.        ec
│ │ │ +001dd8d0: 686f 2022 202f 7661 7220 2064 6566 6175  ho " /var  defau
│ │ │ +001dd8e0: 6c74 732c 247b 7072 6576 696f 7573 5f6d  lts,${previous_m
│ │ │ +001dd8f0: 6f75 6e74 5f6f 7074 737d 6e6f 6465 7620  ount_opts}nodev 
│ │ │ +001dd900: 3020 3022 2026 6774 3b26 6774 3b20 2f65  0 0" >> /e
│ │ │ +001dd910: 7463 2f66 7374 6162 0a20 2020 2023 2049  tc/fstab.    # I
│ │ │ +001dd920: 6620 7468 6520 6d6f 756e 745f 6f70 7420  f the mount_opt 
│ │ │ +001dd930: 6f70 7469 6f6e 2069 7320 6e6f 7420 616c  option is not al
│ │ │ +001dd940: 7265 6164 7920 696e 2074 6865 206d 6f75  ready in the mou
│ │ │ +001dd950: 6e74 2070 6f69 6e74 2773 202f 6574 632f  nt point's /etc/
│ │ │ +001dd960: 6673 7461 6220 656e 7472 792c 2061 6464  fstab entry, add
│ │ │ +001dd970: 2069 740a 2020 2020 656c 6966 2021 2067   it.    elif ! g
│ │ │ +001dd980: 7265 7020 2224 6d6f 756e 745f 706f 696e  rep "$mount_poin
│ │ │ +001dd990: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ +001dd9a0: 2f65 7463 2f66 7374 6162 207c 2067 7265  /etc/fstab | gre
│ │ │ +001dd9b0: 7020 2d71 2022 6e6f 6465 7622 3b20 7468  p -q "nodev"; th
│ │ │ +001dd9c0: 656e 0a20 2020 2020 2020 2070 7265 7669  en.        previ
│ │ │ +001dd9d0: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ +001dd9e0: 2867 7265 7020 2224 6d6f 756e 745f 706f  (grep "$mount_po
│ │ │ +001dd9f0: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001dda00: 2220 2f65 7463 2f66 7374 6162 207c 2061  " /etc/fstab | a
│ │ │ +001dda10: 776b 2027 7b70 7269 6e74 2024 347d 2729  wk '{print $4}')
│ │ │ +001dda20: 0a20 2020 2020 2020 2073 6564 202d 6920  .        sed -i 
│ │ │ +001dda30: 2273 7c5c 2824 7b6d 6f75 6e74 5f70 6f69  "s|\(${mount_poi
│ │ │ +001dda40: 6e74 5f6d 6174 6368 5f72 6567 6578 707d  nt_match_regexp}
│ │ │ +001dda50: 2e2a 247b 7072 6576 696f 7573 5f6d 6f75  .*${previous_mou
│ │ │ +001dda60: 6e74 5f6f 7074 737d 5c29 7c5c 312c 6e6f  nt_opts}\)|\1,no
│ │ │ +001dda70: 6465 767c 2220 2f65 7463 2f66 7374 6162  dev|" /etc/fstab
│ │ │ +001dda80: 0a20 2020 2066 690a 0a0a 2020 2020 6966  .    fi...    if
│ │ │ +001dda90: 206d 6b64 6972 202d 7020 222f 7661 7222   mkdir -p "/var"
│ │ │ +001ddaa0: 3b20 7468 656e 0a20 2020 2020 2020 2069  ; then.        i
│ │ │ +001ddab0: 6620 6d6f 756e 7470 6f69 6e74 202d 7120  f mountpoint -q 
│ │ │ +001ddac0: 222f 7661 7222 3b20 7468 656e 0a20 2020  "/var"; then.   
│ │ │ +001ddad0: 2020 2020 2020 2020 206d 6f75 6e74 202d           mount -
│ │ │ +001ddae0: 6f20 7265 6d6f 756e 7420 2d2d 7461 7267  o remount --targ
│ │ │ +001ddaf0: 6574 2022 2f76 6172 220a 2020 2020 2020  et "/var".      
│ │ │ +001ddb00: 2020 6669 0a20 2020 2066 690a 7d0a 0a70    fi.    fi.}..p
│ │ │ +001ddb10: 6572 666f 726d 5f72 656d 6564 6961 7469  erform_remediati
│ │ │ +001ddb20: 6f6e 0a0a 656c 7365 0a20 2020 2026 6774  on..else.    >
│ │ │ +001ddb30: 3b26 616d 703b 3220 6563 686f 2027 5265  ;&2 echo 'Re
│ │ │ +001ddb40: 6d65 6469 6174 696f 6e20 6973 206e 6f74  mediation is not
│ │ │ +001ddb50: 2061 7070 6c69 6361 626c 652c 206e 6f74   applicable, not
│ │ │ +001ddb60: 6869 6e67 2077 6173 2064 6f6e 6527 0a66  hing was done'.f
│ │ │ +001ddb70: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +001ddb80: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>
Remediation An │ │ │ +001ddc30: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ +001ddc40: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +001ddcc0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +001ddce0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ +001ddd10: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ +001ddd60: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +001ddcd0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +001ddcf0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ +001ddd40: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +001ddd50: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable
.part /var --
│ │ │ +001ddd80: 6d6f 756e 746f 7074 696f 6e73 3d22 6e6f  mountoptions="no
│ │ │ +001ddd90: 6465 7622 0a3c 2f63 6f64 653e 3c2f 7072  dev".
│ │ │ 001dddc0: 3c2f 7461 626c 653e 3c2f 7464 3e3c 2f74 Remediation A │ │ │ -001de6a0: 6e61 636f 6e64 6120 736e 6970 7065 7420 naconda snippet │ │ │ -001de6b0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -001de740: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -001de760: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:high │ │ │ -001de780: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -001de790: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -001de7b0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
.part /var -
│ │ │ -001de7f0: 2d6d 6f75 6e74 6f70 7469 6f6e 733d 226e  -mountoptions="n
│ │ │ -001de800: 6f73 7569 6422 0a3c 2f63 6f64 653e 3c2f  osuid".
Remediati │ │ │ -001de8c0: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070 on Ansible snipp │ │ │ -001de8d0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -001de950: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -001de960: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -001de970: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:highReboo │ │ │ -001de9b0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -001de9c0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -001de9e0: 3c74 643e 636f 6e66 6967 7572 653c 2f74 configure< │ │ │ -001dea00: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -001dea10: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -001dea20: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -001dea30: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -001dea40: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -001dea50: 7461 6773 3a0a 2020 2d20 636f 6e66 6967 tags:. - config │ │ │ -001dea60: 7572 655f 7374 7261 7465 6779 0a20 202d ure_strategy. - │ │ │ -001dea70: 2068 6967 685f 6469 7372 7570 7469 6f6e high_disruption │ │ │ -001dea80: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ -001dea90: 6974 790a 2020 2d20 6d65 6469 756d 5f73 ity. - medium_s │ │ │ -001deaa0: 6576 6572 6974 790a 2020 2d20 6d6f 756e everity. - moun │ │ │ -001deab0: 745f 6f70 7469 6f6e 5f76 6172 5f6e 6f73 t_option_var_nos │ │ │ -001deac0: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f uid. - no_reboo │ │ │ -001dead0: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65 t_needed..- name │ │ │ -001deae0: 3a20 2741 6464 206e 6f73 7569 6420 4f70 : 'Add nosuid Op │ │ │ -001deaf0: 7469 6f6e 2074 6f20 2f76 6172 3a20 4368 tion to /var: Ch │ │ │ -001deb00: 6563 6b20 696e 666f 726d 6174 696f 6e20 eck information │ │ │ -001deb10: 6173 736f 6369 6174 6564 2074 6f20 6d6f associated to mo │ │ │ -001deb20: 756e 7470 6f69 6e74 270a 2020 616e 7369 untpoint'. ansi │ │ │ -001deb30: 626c 652e 6275 696c 7469 6e2e 636f 6d6d ble.builtin.comm │ │ │ -001deb40: 616e 643a 2066 696e 646d 6e74 202d 2d66 and: findmnt --f │ │ │ -001deb50: 7374 6162 2027 2f76 6172 270a 2020 7265 stab '/var'. re │ │ │ -001deb60: 6769 7374 6572 3a20 6465 7669 6365 5f6e gister: device_n │ │ │ -001deb70: 616d 650a 2020 6661 696c 6564 5f77 6865 ame. failed_whe │ │ │ -001deb80: 6e3a 2064 6576 6963 655f 6e61 6d65 2e72 n: device_name.r │ │ │ -001deb90: 6320 2667 743b 2031 0a20 2063 6861 6e67 c > 1. chang │ │ │ -001deba0: 6564 5f77 6865 6e3a 2066 616c 7365 0a20 ed_when: false. │ │ │ -001debb0: 2063 6865 636b 5f6d 6f64 653a 2066 616c check_mode: fal │ │ │ -001debc0: 7365 0a20 2077 6865 6e3a 0a20 202d 2028 se. when:. - ( │ │ │ -001debd0: 206e 6f74 2028 2022 6b65 726e 656c 2220 not ( "kernel" │ │ │ -001debe0: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ -001debf0: 2e70 6163 6b61 6765 7320 616e 6420 2272 .packages and "r │ │ │ -001dec00: 706d 2d6f 7374 7265 6522 2069 6e20 616e pm-ostree" in an │ │ │ -001dec10: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ -001dec20: 6167 6573 0a20 2020 2061 6e64 2022 626f ages. and "bo │ │ │ -001dec30: 6f74 6322 2069 6e20 616e 7369 626c 655f otc" in ansible_ │ │ │ -001dec40: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ -001dec50: 6e64 206e 6f74 2022 6f70 656e 7368 6966 nd not "openshif │ │ │ -001dec60: 742d 6b75 6265 6c65 7422 2069 6e20 616e t-kubelet" in an │ │ │ -001dec70: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ -001dec80: 6167 6573 0a20 2020 2061 6e64 2022 6f73 ages. and "os │ │ │ -001dec90: 7472 6565 2220 696e 2061 6e73 6962 6c65 tree" in ansible │ │ │ -001deca0: 5f70 726f 635f 636d 646c 696e 6520 2920 _proc_cmdline ) │ │ │ -001decb0: 616e 6420 6e6f 7420 2820 616e 7369 626c and not ( ansibl │ │ │ -001decc0: 655f 7669 7274 7561 6c69 7a61 7469 6f6e e_virtualization │ │ │ -001decd0: 5f74 7970 6520 696e 0a20 2020 205b 2264 _type in. ["d │ │ │ -001dece0: 6f63 6b65 7222 2c20 226c 7863 222c 2022 ocker", "lxc", " │ │ │ -001decf0: 6f70 656e 767a 222c 2022 706f 646d 616e openvz", "podman │ │ │ -001ded00: 222c 2022 636f 6e74 6169 6e65 7222 5d20 ", "container"] │ │ │ -001ded10: 2920 290a 2020 2d20 2722 2f76 6172 2220 ) ). - '"/var" │ │ │ -001ded20: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74 in ansible_mount │ │ │ -001ded30: 7320 7c20 6d61 7028 6174 7472 6962 7574 s | map(attribut │ │ │ -001ded40: 653d 226d 6f75 6e74 2229 207c 206c 6973 e="mount") | lis │ │ │ -001ded50: 7427 0a20 2074 6167 733a 0a20 202d 2063 t'. tags:. - c │ │ │ -001ded60: 6f6e 6669 6775 7265 5f73 7472 6174 6567 onfigure_strateg │ │ │ -001ded70: 790a 2020 2d20 6869 6768 5f64 6973 7275 y. - high_disru │ │ │ -001ded80: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f ption. - low_co │ │ │ -001ded90: 6d70 6c65 7869 7479 0a20 202d 206d 6564 mplexity. - med │ │ │ -001deda0: 6975 6d5f 7365 7665 7269 7479 0a20 202d ium_severity. - │ │ │ -001dedb0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661 mount_option_va │ │ │ -001dedc0: 725f 6e6f 7375 6964 0a20 202d 206e 6f5f r_nosuid. - no_ │ │ │ -001dedd0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d reboot_needed..- │ │ │ -001dede0: 206e 616d 653a 2027 4164 6420 6e6f 7375 name: 'Add nosu │ │ │ -001dedf0: 6964 204f 7074 696f 6e20 746f 202f 7661 id Option to /va │ │ │ -001dee00: 723a 2043 7265 6174 6520 6d6f 756e 745f r: Create mount_ │ │ │ -001dee10: 696e 666f 2064 6963 7469 6f6e 6172 7920 info dictionary │ │ │ -001dee20: 7661 7269 6162 6c65 270a 2020 7365 745f variable'. set_ │ │ │ -001dee30: 6661 6374 3a0a 2020 2020 6d6f 756e 745f fact:. mount_ │ │ │ -001dee40: 696e 666f 3a20 277b 7b20 6d6f 756e 745f info: '{{ mount_ │ │ │ -001dee50: 696e 666f 7c64 6566 6175 6c74 287b 7d29 info|default({}) │ │ │ -001dee60: 7c63 6f6d 6269 6e65 287b 6974 656d 2e30 |combine({item.0 │ │ │ -001dee70: 3a20 6974 656d 2e31 7d29 207d 7d27 0a20 : item.1}) }}'. │ │ │ -001dee80: 2077 6974 685f 746f 6765 7468 6572 3a0a with_together:. │ │ │ -001dee90: 2020 2d20 277b 7b20 6465 7669 6365 5f6e - '{{ device_n │ │ │ -001deea0: 616d 652e 7374 646f 7574 5f6c 696e 6573 ame.stdout_lines │ │ │ -001deeb0: 5b30 5d2e 7370 6c69 7428 2920 7c20 6d61 [0].split() | ma │ │ │ -001deec0: 7028 2727 6c6f 7765 7227 2729 207c 206c p(''lower'') | l │ │ │ -001deed0: 6973 7420 7d7d 270a 2020 2d20 277b 7b20 ist }}'. - '{{ │ │ │ -001deee0: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ -001deef0: 7574 5f6c 696e 6573 5b31 5d2e 7370 6c69 ut_lines[1].spli │ │ │ -001def00: 7428 2920 7c20 6c69 7374 207d 7d27 0a20 t() | list }}'. │ │ │ -001def10: 2077 6865 6e3a 0a20 202d 2028 206e 6f74 when:. - ( not │ │ │ -001def20: 2028 2022 6b65 726e 656c 2220 696e 2061 ( "kernel" in a │ │ │ -001def30: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ -001def40: 6b61 6765 7320 616e 6420 2272 706d 2d6f kages and "rpm-o │ │ │ -001def50: 7374 7265 6522 2069 6e20 616e 7369 626c stree" in ansibl │ │ │ -001def60: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -001def70: 0a20 2020 2061 6e64 2022 626f 6f74 6322 . and "bootc" │ │ │ -001def80: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -001def90: 732e 7061 636b 6167 6573 2061 6e64 206e s.packages and n │ │ │ -001defa0: 6f74 2022 6f70 656e 7368 6966 742d 6b75 ot "openshift-ku │ │ │ -001defb0: 6265 6c65 7422 2069 6e20 616e 7369 626c belet" in ansibl │ │ │ -001defc0: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -001defd0: 0a20 2020 2061 6e64 2022 6f73 7472 6565 . and "ostree │ │ │ -001defe0: 2220 696e 2061 6e73 6962 6c65 5f70 726f " in ansible_pro │ │ │ -001deff0: 635f 636d 646c 696e 6520 2920 616e 6420 c_cmdline ) and │ │ │ -001df000: 6e6f 7420 2820 616e 7369 626c 655f 7669 not ( ansible_vi │ │ │ -001df010: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970 rtualization_typ │ │ │ -001df020: 6520 696e 0a20 2020 205b 2264 6f63 6b65 e in. ["docke │ │ │ -001df030: 7222 2c20 226c 7863 222c 2022 6f70 656e r", "lxc", "open │ │ │ -001df040: 767a 222c 2022 706f 646d 616e 222c 2022 vz", "podman", " │ │ │ -001df050: 636f 6e74 6169 6e65 7222 5d20 2920 290a container"] ) ). │ │ │ -001df060: 2020 2d20 2722 2f76 6172 2220 696e 2061 - '"/var" in a │ │ │ -001df070: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20 nsible_mounts | │ │ │ -001df080: 6d61 7028 6174 7472 6962 7574 653d 226d map(attribute="m │ │ │ -001df090: 6f75 6e74 2229 207c 206c 6973 7427 0a20 ount") | list'. │ │ │ -001df0a0: 202d 2064 6576 6963 655f 6e61 6d65 2e73 - device_name.s │ │ │ -001df0b0: 7464 6f75 7420 6973 2064 6566 696e 6564 tdout is defined │ │ │ -001df0c0: 2061 6e64 2064 6576 6963 655f 6e61 6d65 and device_name │ │ │ -001df0d0: 2e73 7464 6f75 745f 6c69 6e65 7320 6973 .stdout_lines is │ │ │ -001df0e0: 2064 6566 696e 6564 0a20 202d 2028 6465 defined. - (de │ │ │ -001df0f0: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ -001df100: 207c 206c 656e 6774 6820 2667 743b 2030 | length > 0 │ │ │ -001df110: 290a 2020 7461 6773 3a0a 2020 2d20 636f ). tags:. - co │ │ │ -001df120: 6e66 6967 7572 655f 7374 7261 7465 6779 nfigure_strategy │ │ │ -001df130: 0a20 202d 2068 6967 685f 6469 7372 7570 . - high_disrup │ │ │ -001df140: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d tion. - low_com │ │ │ -001df150: 706c 6578 6974 790a 2020 2d20 6d65 6469 plexity. - medi │ │ │ -001df160: 756d 5f73 6576 6572 6974 790a 2020 2d20 um_severity. - │ │ │ -001df170: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172 mount_option_var │ │ │ -001df180: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72 _nosuid. - no_r │ │ │ -001df190: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20 eboot_needed..- │ │ │ -001df1a0: 6e61 6d65 3a20 2741 6464 206e 6f73 7569 name: 'Add nosui │ │ │ -001df1b0: 6420 4f70 7469 6f6e 2074 6f20 2f76 6172 d Option to /var │ │ │ -001df1c0: 3a20 4966 202f 7661 7220 6e6f 7420 6d6f : If /var not mo │ │ │ -001df1d0: 756e 7465 642c 2063 7261 6674 206d 6f75 unted, craft mou │ │ │ -001df1e0: 6e74 5f69 6e66 6f20 6d61 6e75 616c 6c79 nt_info manually │ │ │ -001df1f0: 270a 2020 7365 745f 6661 6374 3a0a 2020 '. set_fact:. │ │ │ -001df200: 2020 6d6f 756e 745f 696e 666f 3a20 277b mount_info: '{ │ │ │ -001df210: 7b20 6d6f 756e 745f 696e 666f 7c64 6566 { mount_info|def │ │ │ -001df220: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65 ault({})|combine │ │ │ -001df230: 287b 6974 656d 2e30 3a20 6974 656d 2e31 ({item.0: item.1 │ │ │ -001df240: 7d29 207d 7d27 0a20 2077 6974 685f 746f }) }}'. with_to │ │ │ -001df250: 6765 7468 6572 3a0a 2020 2d20 2d20 7461 gether:. - - ta │ │ │ -001df260: 7267 6574 0a20 2020 202d 2073 6f75 7263 rget. - sourc │ │ │ -001df270: 650a 2020 2020 2d20 6673 7479 7065 0a20 e. - fstype. │ │ │ -001df280: 2020 202d 206f 7074 696f 6e73 0a20 202d - options. - │ │ │ -001df290: 202d 202f 7661 720a 2020 2020 2d20 2727 - /var. - '' │ │ │ -001df2a0: 0a20 2020 202d 2027 270a 2020 2020 2d20 . - ''. - │ │ │ -001df2b0: 6465 6661 756c 7473 0a20 2077 6865 6e3a defaults. when: │ │ │ -001df2c0: 0a20 202d 2028 206e 6f74 2028 2022 6b65 . - ( not ( "ke │ │ │ -001df2d0: 726e 656c 2220 696e 2061 6e73 6962 6c65 rnel" in ansible │ │ │ -001df2e0: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ -001df2f0: 616e 6420 2272 706d 2d6f 7374 7265 6522 and "rpm-ostree" │ │ │ -001df300: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -001df310: 732e 7061 636b 6167 6573 0a20 2020 2061 s.packages. a │ │ │ -001df320: 6e64 2022 626f 6f74 6322 2069 6e20 616e nd "bootc" in an │ │ │ -001df330: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ -001df340: 6167 6573 2061 6e64 206e 6f74 2022 6f70 ages and not "op │ │ │ -001df350: 656e 7368 6966 742d 6b75 6265 6c65 7422 enshift-kubelet" │ │ │ -001df360: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -001df370: 732e 7061 636b 6167 6573 0a20 2020 2061 s.packages. a │ │ │ -001df380: 6e64 2022 6f73 7472 6565 2220 696e 2061 nd "ostree" in a │ │ │ -001df390: 6e73 6962 6c65 5f70 726f 635f 636d 646c nsible_proc_cmdl │ │ │ -001df3a0: 696e 6520 2920 616e 6420 6e6f 7420 2820 ine ) and not ( │ │ │ -001df3b0: 616e 7369 626c 655f 7669 7274 7561 6c69 ansible_virtuali │ │ │ -001df3c0: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20 zation_type in. │ │ │ -001df3d0: 2020 205b 2264 6f63 6b65 7222 2c20 226c ["docker", "l │ │ │ -001df3e0: 7863 222c 2022 6f70 656e 767a 222c 2022 xc", "openvz", " │ │ │ -001df3f0: 706f 646d 616e 222c 2022 636f 6e74 6169 podman", "contai │ │ │ -001df400: 6e65 7222 5d20 2920 290a 2020 2d20 2722 ner"] ) ). - '" │ │ │ -001df410: 2f76 6172 2220 696e 2061 6e73 6962 6c65 /var" in ansible │ │ │ -001df420: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174 _mounts | map(at │ │ │ -001df430: 7472 6962 7574 653d 226d 6f75 6e74 2229 tribute="mount") │ │ │ -001df440: 207c 206c 6973 7427 0a20 202d 2028 222d | list'. - ("- │ │ │ -001df450: 2d66 7374 6162 2220 7c20 6c65 6e67 7468 -fstab" | length │ │ │ -001df460: 203d 3d20 3029 0a20 202d 2064 6576 6963 == 0). - devic │ │ │ -001df470: 655f 6e61 6d65 2e73 7464 6f75 7420 6973 e_name.stdout is │ │ │ -001df480: 2064 6566 696e 6564 2061 6e64 2064 6576 defined and dev │ │ │ -001df490: 6963 655f 6e61 6d65 2e73 7464 6f75 745f ice_name.stdout_ │ │ │ -001df4a0: 6c69 6e65 7320 6973 2064 6566 696e 6564 lines is defined │ │ │ -001df4b0: 0a20 202d 2028 6465 7669 6365 5f6e 616d . - (device_nam │ │ │ -001df4c0: 652e 7374 646f 7574 207c 206c 656e 6774 e.stdout | lengt │ │ │ -001df4d0: 6820 3d3d 2030 290a 2020 7461 6773 3a0a h == 0). tags:. │ │ │ -001df4e0: 2020 2d20 636f 6e66 6967 7572 655f 7374 - configure_st │ │ │ -001df4f0: 7261 7465 6779 0a20 202d 2068 6967 685f rategy. - high_ │ │ │ -001df500: 6469 7372 7570 7469 6f6e 0a20 202d 206c disruption. - l │ │ │ -001df510: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ -001df520: 2d20 6d65 6469 756d 5f73 6576 6572 6974 - medium_severit │ │ │ -001df530: 790a 2020 2d20 6d6f 756e 745f 6f70 7469 y. - mount_opti │ │ │ -001df540: 6f6e 5f76 6172 5f6e 6f73 7569 640a 2020 on_var_nosuid. │ │ │ -001df550: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ -001df560: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464 ed..- name: 'Add │ │ │ -001df570: 206e 6f73 7569 6420 4f70 7469 6f6e 2074 nosuid Option t │ │ │ -001df580: 6f20 2f76 6172 3a20 4d61 6b65 2073 7572 o /var: Make sur │ │ │ -001df590: 6520 6e6f 7375 6964 206f 7074 696f 6e20 e nosuid option │ │ │ -001df5a0: 6973 2070 6172 7420 6f66 2074 6865 2074 is part of the t │ │ │ -001df5b0: 6f20 2f76 6172 0a20 2020 206f 7074 696f o /var. optio │ │ │ -001df5c0: 6e73 270a 2020 7365 745f 6661 6374 3a0a ns'. set_fact:. │ │ │ -001df5d0: 2020 2020 6d6f 756e 745f 696e 666f 3a20 mount_info: │ │ │ -001df5e0: 277b 7b20 6d6f 756e 745f 696e 666f 207c '{{ mount_info | │ │ │ -001df5f0: 2063 6f6d 6269 6e65 2820 7b27 276f 7074 combine( {''opt │ │ │ -001df600: 696f 6e73 2727 3a27 2727 277e 286d 6f75 ions'':''''~(mou │ │ │ -001df610: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320 nt_info.options │ │ │ -001df620: 7c0a 2020 2020 2020 6465 6661 756c 7428 |. default( │ │ │ -001df630: 2727 2727 2929 7e28 2727 2c27 2720 6966 ''''))~('','' if │ │ │ -001df640: 2028 6d6f 756e 745f 696e 666f 2e6f 7074 (mount_info.opt │ │ │ -001df650: 696f 6e73 207c 2064 6566 6175 6c74 2827 ions | default(' │ │ │ -001df660: 2727 2729 2920 656c 7365 2027 2727 2729 ''')) else '''') │ │ │ -001df670: 7e27 276e 6f73 7569 6427 270a 2020 2020 ~''nosuid''. │ │ │ -001df680: 2020 7d29 207d 7d27 0a20 2077 6865 6e3a }) }}'. when: │ │ │ -001df690: 0a20 202d 2028 206e 6f74 2028 2022 6b65 . - ( not ( "ke │ │ │ -001df6a0: 726e 656c 2220 696e 2061 6e73 6962 6c65 rnel" in ansible │ │ │ -001df6b0: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ -001df6c0: 616e 6420 2272 706d 2d6f 7374 7265 6522 and "rpm-ostree" │ │ │ -001df6d0: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -001df6e0: 732e 7061 636b 6167 6573 0a20 2020 2061 s.packages. a │ │ │ -001df6f0: 6e64 2022 626f 6f74 6322 2069 6e20 616e nd "bootc" in an │ │ │ -001df700: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ -001df710: 6167 6573 2061 6e64 206e 6f74 2022 6f70 ages and not "op │ │ │ -001df720: 656e 7368 6966 742d 6b75 6265 6c65 7422 enshift-kubelet" │ │ │ -001df730: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -001df740: 732e 7061 636b 6167 6573 0a20 2020 2061 s.packages. a │ │ │ -001df750: 6e64 2022 6f73 7472 6565 2220 696e 2061 nd "ostree" in a │ │ │ -001df760: 6e73 6962 6c65 5f70 726f 635f 636d 646c nsible_proc_cmdl │ │ │ -001df770: 696e 6520 2920 616e 6420 6e6f 7420 2820 ine ) and not ( │ │ │ -001df780: 616e 7369 626c 655f 7669 7274 7561 6c69 ansible_virtuali │ │ │ -001df790: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20 zation_type in. │ │ │ -001df7a0: 2020 205b 2264 6f63 6b65 7222 2c20 226c ["docker", "l │ │ │ -001df7b0: 7863 222c 2022 6f70 656e 767a 222c 2022 xc", "openvz", " │ │ │ -001df7c0: 706f 646d 616e 222c 2022 636f 6e74 6169 podman", "contai │ │ │ -001df7d0: 6e65 7222 5d20 2920 290a 2020 2d20 2722 ner"] ) ). - '" │ │ │ -001df7e0: 2f76 6172 2220 696e 2061 6e73 6962 6c65 /var" in ansible │ │ │ -001df7f0: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174 _mounts | map(at │ │ │ -001df800: 7472 6962 7574 653d 226d 6f75 6e74 2229 tribute="mount") │ │ │ -001df810: 207c 206c 6973 7427 0a20 202d 206d 6f75 | list'. - mou │ │ │ -001df820: 6e74 5f69 6e66 6f20 6973 2064 6566 696e nt_info is defin │ │ │ -001df830: 6564 2061 6e64 2022 6e6f 7375 6964 2220 ed and "nosuid" │ │ │ -001df840: 6e6f 7420 696e 2028 6d6f 756e 745f 696e not in (mount_in │ │ │ -001df850: 666f 2e6f 7074 696f 6e73 207c 2064 6566 fo.options | def │ │ │ -001df860: 6175 6c74 2827 2729 290a 2020 7461 6773 ault('')). tags │ │ │ -001df870: 3a0a 2020 2d20 636f 6e66 6967 7572 655f :. - configure_ │ │ │ -001df880: 7374 7261 7465 6779 0a20 202d 2068 6967 strategy. - hig │ │ │ -001df890: 685f 6469 7372 7570 7469 6f6e 0a20 202d h_disruption. - │ │ │ -001df8a0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a low_complexity. │ │ │ -001df8b0: 2020 2d20 6d65 6469 756d 5f73 6576 6572 - medium_sever │ │ │ -001df8c0: 6974 790a 2020 2d20 6d6f 756e 745f 6f70 ity. - mount_op │ │ │ -001df8d0: 7469 6f6e 5f76 6172 5f6e 6f73 7569 640a tion_var_nosuid. │ │ │ -001df8e0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ -001df8f0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741 eded..- name: 'A │ │ │ -001df900: 6464 206e 6f73 7569 6420 4f70 7469 6f6e dd nosuid Option │ │ │ -001df910: 2074 6f20 2f76 6172 3a20 456e 7375 7265 to /var: Ensure │ │ │ -001df920: 202f 7661 7220 6973 206d 6f75 6e74 6564 /var is mounted │ │ │ -001df930: 2077 6974 6820 6e6f 7375 6964 206f 7074 with nosuid opt │ │ │ -001df940: 696f 6e27 0a20 2061 6e73 6962 6c65 2e70 ion'. ansible.p │ │ │ -001df950: 6f73 6978 2e6d 6f75 6e74 3a0a 2020 2020 osix.mount:. │ │ │ -001df960: 7061 7468 3a20 2f76 6172 0a20 2020 2073 path: /var. s │ │ │ -001df970: 7263 3a20 277b 7b20 6d6f 756e 745f 696e rc: '{{ mount_in │ │ │ -001df980: 666f 2e73 6f75 7263 6520 7c20 6465 6661 fo.source | defa │ │ │ -001df990: 756c 7428 2727 2727 2920 7d7d 270a 2020 ult('''') }}'. │ │ │ -001df9a0: 2020 6f70 7473 3a20 277b 7b20 6d6f 756e opts: '{{ moun │ │ │ -001df9b0: 745f 696e 666f 2e6f 7074 696f 6e73 207c t_info.options | │ │ │ -001df9c0: 2064 6566 6175 6c74 2827 2727 2729 207d default('''') } │ │ │ -001df9d0: 7d27 0a20 2020 2073 7461 7465 3a20 6d6f }'. state: mo │ │ │ -001df9e0: 756e 7465 640a 2020 2020 6673 7479 7065 unted. fstype │ │ │ -001df9f0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f : '{{ mount_info │ │ │ -001dfa00: 2e66 7374 7970 6520 7c20 6465 6661 756c .fstype | defaul │ │ │ -001dfa10: 7428 2727 2727 2920 7d7d 270a 2020 7265 t('''') }}'. re │ │ │ -001dfa20: 6769 7374 6572 3a20 6d6f 756e 745f 7265 gister: mount_re │ │ │ -001dfa30: 7375 6c74 0a20 2066 6169 6c65 645f 7768 sult. failed_wh │ │ │ -001dfa40: 656e 3a0a 2020 2d20 6d6f 756e 745f 7265 en:. - mount_re │ │ │ -001dfa50: 7375 6c74 2069 7320 6661 696c 6564 0a20 sult is failed. │ │ │ -001dfa60: 202d 2027 2727 7461 7267 6574 2069 7320 - '''target is │ │ │ -001dfa70: 6275 7379 2727 206e 6f74 2069 6e20 286d busy'' not in (m │ │ │ -001dfa80: 6f75 6e74 5f72 6573 756c 742e 6d73 6720 ount_result.msg │ │ │ -001dfa90: 7c20 6465 6661 756c 7428 2727 2727 2929 | default('''')) │ │ │ -001dfaa0: 270a 2020 2d20 2727 2761 6c72 6561 6479 '. - '''already │ │ │ -001dfab0: 206d 6f75 6e74 6564 2727 206e 6f74 2069 mounted'' not i │ │ │ -001dfac0: 6e20 286d 6f75 6e74 5f72 6573 756c 742e n (mount_result. │ │ │ -001dfad0: 6d73 6720 7c20 6465 6661 756c 7428 2727 msg | default('' │ │ │ -001dfae0: 2727 2929 270a 2020 7768 656e 3a0a 2020 ''))'. when:. │ │ │ -001dfaf0: 2d20 2820 6e6f 7420 2820 226b 6572 6e65 - ( not ( "kerne │ │ │ -001dfb00: 6c22 2069 6e20 616e 7369 626c 655f 6661 l" in ansible_fa │ │ │ -001dfb10: 6374 732e 7061 636b 6167 6573 2061 6e64 cts.packages and │ │ │ -001dfb20: 2022 7270 6d2d 6f73 7472 6565 2220 696e "rpm-ostree" in │ │ │ -001dfb30: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -001dfb40: 6163 6b61 6765 730a 2020 2020 616e 6420 ackages. and │ │ │ -001dfb50: 2262 6f6f 7463 2220 696e 2061 6e73 6962 "bootc" in ansib │ │ │ -001dfb60: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -001dfb70: 7320 616e 6420 6e6f 7420 226f 7065 6e73 s and not "opens │ │ │ -001dfb80: 6869 6674 2d6b 7562 656c 6574 2220 696e hift-kubelet" in │ │ │ -001dfb90: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -001dfba0: 6163 6b61 6765 730a 2020 2020 616e 6420 ackages. and │ │ │ -001dfbb0: 226f 7374 7265 6522 2069 6e20 616e 7369 "ostree" in ansi │ │ │ -001dfbc0: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65 ble_proc_cmdline │ │ │ -001dfbd0: 2029 2061 6e64 206e 6f74 2028 2061 6e73 ) and not ( ans │ │ │ -001dfbe0: 6962 6c65 5f76 6972 7475 616c 697a 6174 ible_virtualizat │ │ │ -001dfbf0: 696f 6e5f 7479 7065 2069 6e0a 2020 2020 ion_type in. │ │ │ -001dfc00: 5b22 646f 636b 6572 222c 2022 6c78 6322 ["docker", "lxc" │ │ │ -001dfc10: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64 , "openvz", "pod │ │ │ -001dfc20: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572 man", "container │ │ │ -001dfc30: 225d 2029 2029 0a20 202d 2027 222f 7661 "] ) ). - '"/va │ │ │ -001dfc40: 7222 2069 6e20 616e 7369 626c 655f 6d6f r" in ansible_mo │ │ │ -001dfc50: 756e 7473 207c 206d 6170 2861 7474 7269 unts | map(attri │ │ │ -001dfc60: 6275 7465 3d22 6d6f 756e 7422 2920 7c20 bute="mount") | │ │ │ -001dfc70: 6c69 7374 270a 2020 2d20 6d6f 756e 745f list'. - mount_ │ │ │ -001dfc80: 696e 666f 2069 7320 6465 6669 6e65 640a info is defined. │ │ │ -001dfc90: 2020 2d20 2864 6576 6963 655f 6e61 6d65 - (device_name │ │ │ -001dfca0: 2e73 7464 6f75 7420 6973 2064 6566 696e .stdout is defin │ │ │ -001dfcb0: 6564 2061 6e64 2028 6465 7669 6365 5f6e ed and (device_n │ │ │ -001dfcc0: 616d 652e 7374 646f 7574 207c 206c 656e ame.stdout | len │ │ │ -001dfcd0: 6774 6820 2667 743b 2030 2929 206f 7220 gth > 0)) or │ │ │ -001dfce0: 2822 2d2d 6673 7461 6222 0a20 2020 207c ("--fstab". | │ │ │ -001dfcf0: 206c 656e 6774 6820 3d3d 2030 290a 2020 length == 0). │ │ │ -001dfd00: 7461 6773 3a0a 2020 2d20 636f 6e66 6967 tags:. - config │ │ │ -001dfd10: 7572 655f 7374 7261 7465 6779 0a20 202d ure_strategy. - │ │ │ -001dfd20: 2068 6967 685f 6469 7372 7570 7469 6f6e high_disruption │ │ │ -001dfd30: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ -001dfd40: 6974 790a 2020 2d20 6d65 6469 756d 5f73 ity. - medium_s │ │ │ -001dfd50: 6576 6572 6974 790a 2020 2d20 6d6f 756e everity. - moun │ │ │ -001dfd60: 745f 6f70 7469 6f6e 5f76 6172 5f6e 6f73 t_option_var_nos │ │ │ -001dfd70: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f uid. - no_reboo │ │ │ -001dfd80: 745f 6e65 6564 6564 0a3c 2f63 6f64 653e t_needed. │ │ │ -001dfd90: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063
Remedia │ │ │ -001dfe40: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ -001dfe50: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -001dfed0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:false

# Remed │ │ │ -001dff10: 6961 7469 6f6e 2069 7320 6170 706c 6963 iation is applic │ │ │ -001dff20: 6162 6c65 206f 6e6c 7920 696e 2063 6572 able only in cer │ │ │ -001dff30: 7461 696e 2070 6c61 7466 6f72 6d73 0a69 tain platforms.i │ │ │ -001dff40: 6620 2820 2120 2820 7b20 7270 6d20 2d2d f ( ! ( { rpm -- │ │ │ -001dff50: 7175 6965 7420 2d71 206b 6572 6e65 6c20 quiet -q kernel │ │ │ -001dff60: 3b7d 2026 616d 703b 2661 6d70 3b20 7b20 ;} && { │ │ │ -001dff70: 7270 6d20 2d2d 7175 6965 7420 2d71 2072 rpm --quiet -q r │ │ │ -001dff80: 706d 2d6f 7374 7265 6520 3b7d 2026 616d pm-ostree ;} &am │ │ │ -001dff90: 703b 2661 6d70 3b20 7b20 7270 6d20 2d2d p;& { rpm -- │ │ │ -001dffa0: 7175 6965 7420 2d71 2062 6f6f 7463 203b quiet -q bootc ; │ │ │ -001dffb0: 7d20 2661 6d70 3b26 616d 703b 207b 2021 } && { ! │ │ │ -001dffc0: 2072 706d 202d 2d71 7569 6574 202d 7120 rpm --quiet -q │ │ │ -001dffd0: 6f70 656e 7368 6966 742d 6b75 6265 6c65 openshift-kubele │ │ │ -001dffe0: 7420 3b7d 2026 616d 703b 2661 6d70 3b20 t ;} && │ │ │ -001dfff0: 285b 202d 6620 2f72 756e 2f6f 7374 7265 ([ -f /run/ostre │ │ │ -001e0000: 652d 626f 6f74 6564 205d 207c 7c20 5b20 e-booted ] || [ │ │ │ -001e0010: 2d4c 202f 6f73 7472 6565 205d 2920 2920 -L /ostree ]) ) │ │ │ -001e0020: 2661 6d70 3b26 616d 703b 2021 2028 205b && ! ( [ │ │ │ -001e0030: 202d 6620 2f2e 646f 636b 6572 656e 7620 -f /.dockerenv │ │ │ -001e0040: 5d20 7c7c 205b 202d 6620 2f72 756e 2f2e ] || [ -f /run/. │ │ │ -001e0050: 636f 6e74 6169 6e65 7265 6e76 205d 2029 containerenv ] ) │ │ │ -001e0060: 2029 2026 616d 703b 2661 6d70 3b20 7b20 ) && { │ │ │ -001e0070: 2820 6669 6e64 6d6e 7420 2d2d 6b65 726e ( findmnt --kern │ │ │ -001e0080: 656c 2022 2f76 6172 2220 2667 743b 202f el "/var" > / │ │ │ -001e0090: 6465 762f 6e75 6c6c 207c 7c20 6669 6e64 dev/null || find │ │ │ -001e00a0: 6d6e 7420 2d2d 6673 7461 6220 222f 7661 mnt --fstab "/va │ │ │ -001e00b0: 7222 2026 6774 3b20 2f64 6576 2f6e 756c r" > /dev/nul │ │ │ -001e00c0: 6c20 293b 207d 3b20 7468 656e 0a0a 6675 l ); }; then..fu │ │ │ -001e00d0: 6e63 7469 6f6e 2070 6572 666f 726d 5f72 nction perform_r │ │ │ -001e00e0: 656d 6564 6961 7469 6f6e 207b 0a0a 2020 emediation {.. │ │ │ -001e00f0: 2020 0a20 2020 2020 2020 2023 2074 6865 . # the │ │ │ -001e0100: 206d 6f75 6e74 2070 6f69 6e74 202f 7661 mount point /va │ │ │ -001e0110: 7220 6861 7320 746f 2062 6520 6465 6669 r has to be defi │ │ │ -001e0120: 6e65 6420 696e 202f 6574 632f 6673 7461 ned in /etc/fsta │ │ │ -001e0130: 620a 2020 2020 2020 2020 2320 6265 666f b. # befo │ │ │ -001e0140: 7265 2074 6869 7320 7265 6d65 6469 6174 re this remediat │ │ │ -001e0150: 696f 6e20 6361 6e20 6265 2065 7865 6375 ion can be execu │ │ │ -001e0160: 7465 642e 2049 6e20 6361 7365 2069 7420 ted. In case it │ │ │ -001e0170: 6973 206e 6f74 2064 6566 696e 6564 2c20 is not defined, │ │ │ -001e0180: 7468 650a 2020 2020 2020 2020 2320 7265 the. # re │ │ │ -001e0190: 6d65 6469 6174 696f 6e20 6162 6f72 7473 mediation aborts │ │ │ -001e01a0: 2061 6e64 206e 6f20 6368 616e 6765 7320 and no changes │ │ │ -001e01b0: 7265 6761 7264 696e 6720 7468 6520 6d6f regarding the mo │ │ │ -001e01c0: 756e 7420 706f 696e 7420 6172 6520 646f unt point are do │ │ │ -001e01d0: 6e65 2e0a 2020 2020 2020 2020 6d6f 756e ne.. moun │ │ │ -001e01e0: 745f 706f 696e 745f 6d61 7463 685f 7265 t_point_match_re │ │ │ -001e01f0: 6765 7870 3d22 2428 7072 696e 7466 2022 gexp="$(printf " │ │ │ -001e0200: 5e5b 5b3a 7370 6163 653a 5d5d 2a5b 5e23 ^[[:space:]]*[^# │ │ │ -001e0210: 5d2e 2a5b 5b3a 7370 6163 653a 5d5d 2573 ].*[[:space:]]%s │ │ │ -001e0220: 5b5b 3a73 7061 6365 3a5d 5d22 2022 2f76 [[:space:]]" "/v │ │ │ -001e0230: 6172 2229 220a 0a20 2020 2067 7265 7020 ar")".. grep │ │ │ -001e0240: 2224 6d6f 756e 745f 706f 696e 745f 6d61 "$mount_point_ma │ │ │ -001e0250: 7463 685f 7265 6765 7870 2220 2d71 202f tch_regexp" -q / │ │ │ -001e0260: 6574 632f 6673 7461 6220 5c0a 2020 2020 etc/fstab \. │ │ │ -001e0270: 2020 2020 7c7c 207b 2065 6368 6f20 2254 || { echo "T │ │ │ -001e0280: 6865 206d 6f75 6e74 2070 6f69 6e74 2027 he mount point ' │ │ │ -001e0290: 2f76 6172 2720 6973 206e 6f74 2065 7665 /var' is not eve │ │ │ -001e02a0: 6e20 696e 202f 6574 632f 6673 7461 622c n in /etc/fstab, │ │ │ -001e02b0: 2073 6f20 7765 2063 616e 2774 2073 6574 so we can't set │ │ │ -001e02c0: 2075 7020 6d6f 756e 7420 6f70 7469 6f6e up mount option │ │ │ -001e02d0: 7322 2026 6774 3b26 616d 703b 323b 0a20 s" >&2;. │ │ │ -001e02e0: 2020 2020 2020 2020 2020 2020 2020 2065 e │ │ │ -001e02f0: 6368 6f20 224e 6f74 2072 656d 6564 6961 cho "Not remedia │ │ │ -001e0300: 7469 6e67 2c20 6265 6361 7573 6520 7468 ting, because th │ │ │ -001e0310: 6572 6520 6973 206e 6f20 7265 636f 7264 ere is no record │ │ │ -001e0320: 206f 6620 2f76 6172 2069 6e20 2f65 7463 of /var in /etc │ │ │ -001e0330: 2f66 7374 6162 2220 2667 743b 2661 6d70 /fstab" >& │ │ │ -001e0340: 3b32 3b20 7265 7475 726e 2031 3b20 7d0a ;2; return 1; }. │ │ │ -001e0350: 2020 2020 0a0a 0a20 2020 206d 6f75 6e74 ... mount │ │ │ -001e0360: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567 _point_match_reg │ │ │ -001e0370: 6578 703d 2224 2870 7269 6e74 6620 225e exp="$(printf "^ │ │ │ -001e0380: 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e 235d [[:space:]]*[^#] │ │ │ -001e0390: 2e2a 5b5b 3a73 7061 6365 3a5d 5d25 735b .*[[:space:]]%s[ │ │ │ -001e03a0: 5b3a 7370 6163 653a 5d5d 2220 2f76 6172 [:space:]]" /var │ │ │ -001e03b0: 2922 0a0a 2020 2020 2320 4966 2074 6865 )".. # If the │ │ │ -001e03c0: 206d 6f75 6e74 2070 6f69 6e74 2069 7320 mount point is │ │ │ -001e03d0: 6e6f 7420 696e 202f 6574 632f 6673 7461 not in /etc/fsta │ │ │ -001e03e0: 622c 2067 6574 2070 7265 7669 6f75 7320 b, get previous │ │ │ -001e03f0: 6d6f 756e 7420 6f70 7469 6f6e 7320 6672 mount options fr │ │ │ -001e0400: 6f6d 202f 6574 632f 6d74 6162 0a20 2020 om /etc/mtab. │ │ │ -001e0410: 2069 6620 2120 6772 6570 202d 7120 2224 if ! grep -q "$ │ │ │ -001e0420: 6d6f 756e 745f 706f 696e 745f 6d61 7463 mount_point_matc │ │ │ -001e0430: 685f 7265 6765 7870 2220 2f65 7463 2f66 h_regexp" /etc/f │ │ │ -001e0440: 7374 6162 3b20 7468 656e 0a20 2020 2020 stab; then. │ │ │ -001e0450: 2020 2023 2072 756e 7469 6d65 206f 7074 # runtime opt │ │ │ -001e0460: 7320 7769 7468 6f75 7420 736f 6d65 2061 s without some a │ │ │ -001e0470: 7574 6f6d 6174 6963 206b 6572 6e65 6c2f utomatic kernel/ │ │ │ -001e0480: 7573 6572 7370 6163 652d 6164 6465 6420 userspace-added │ │ │ -001e0490: 6465 6661 756c 7473 0a20 2020 2020 2020 defaults. │ │ │ -001e04a0: 2070 7265 7669 6f75 735f 6d6f 756e 745f previous_mount_ │ │ │ -001e04b0: 6f70 7473 3d24 2867 7265 7020 2224 6d6f opts=$(grep "$mo │ │ │ -001e04c0: 756e 745f 706f 696e 745f 6d61 7463 685f unt_point_match_ │ │ │ -001e04d0: 7265 6765 7870 2220 2f65 7463 2f6d 7461 regexp" /etc/mta │ │ │ -001e04e0: 6220 7c20 6865 6164 202d 3120 7c20 2061 b | head -1 | a │ │ │ -001e04f0: 776b 2027 7b70 7269 6e74 2024 347d 2720 wk '{print $4}' │ │ │ -001e0500: 5c0a 2020 2020 2020 2020 2020 2020 2020 \. │ │ │ -001e0510: 2020 2020 2020 7c20 7365 6420 2d45 2022 | sed -E " │ │ │ -001e0520: 732f 2872 777c 6465 6661 756c 7473 7c73 s/(rw|defaults|s │ │ │ -001e0530: 6563 6c61 6265 6c7c 6e6f 7375 6964 2928 eclabel|nosuid)( │ │ │ -001e0540: 2c7c 2429 2f2f 673b 732f 2c24 2f2f 2229 ,|$)//g;s/,$//") │ │ │ -001e0550: 0a20 2020 2020 2020 205b 2022 2470 7265 . [ "$pre │ │ │ -001e0560: 7669 6f75 735f 6d6f 756e 745f 6f70 7473 vious_mount_opts │ │ │ -001e0570: 2220 5d20 2661 6d70 3b26 616d 703b 2070 " ] && p │ │ │ -001e0580: 7265 7669 6f75 735f 6d6f 756e 745f 6f70 revious_mount_op │ │ │ -001e0590: 7473 2b3d 222c 220a 2020 2020 2020 2020 ts+=",". │ │ │ -001e05a0: 2320 496e 2069 736f 3936 3630 2066 696c # In iso9660 fil │ │ │ -001e05b0: 6573 7973 7465 6d73 206d 7461 6220 636f esystems mtab co │ │ │ -001e05c0: 756c 6420 6465 7363 7269 6265 2061 2022 uld describe a " │ │ │ -001e05d0: 626c 6f63 6b73 697a 6522 2076 616c 7565 blocksize" value │ │ │ -001e05e0: 2c20 7468 6973 2073 686f 756c 6420 6265 , this should be │ │ │ -001e05f0: 2072 6566 6c65 6374 6564 2069 6e0a 2020 reflected in. │ │ │ -001e0600: 2020 2020 2020 2320 6673 7461 6220 6173 # fstab as │ │ │ -001e0610: 2022 626c 6f63 6b22 2e20 2054 6865 206e "block". The n │ │ │ -001e0620: 6578 7420 7661 7269 6162 6c65 2069 7320 ext variable is │ │ │ -001e0630: 746f 2073 6174 6973 6679 2073 6865 6c6c to satisfy shell │ │ │ -001e0640: 6368 6563 6b20 5343 3230 3530 2e0a 2020 check SC2050.. │ │ │ -001e0650: 2020 2020 2020 6673 5f74 7970 653d 2222 fs_type="" │ │ │ -001e0660: 0a20 2020 2020 2020 2069 6620 5b20 2022 . if [ " │ │ │ -001e0670: 2466 735f 7479 7065 2220 3d3d 2022 6973 $fs_type" == "is │ │ │ -001e0680: 6f39 3636 3022 205d 203b 2074 6865 6e0a o9660" ] ; then. │ │ │ -001e0690: 2020 2020 2020 2020 2020 2020 7072 6576 prev │ │ │ -001e06a0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d ious_mount_opts= │ │ │ -001e06b0: 2428 7365 6420 2773 2f62 6c6f 636b 7369 $(sed 's/blocksi │ │ │ -001e06c0: 7a65 3d2f 626c 6f63 6b3d 2f27 2026 6c74 ze=/block=/' < │ │ │ -001e06d0: 3b26 6c74 3b26 6c74 3b20 2224 7072 6576 ;<< "$prev │ │ │ -001e06e0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 7322 ious_mount_opts" │ │ │ -001e06f0: 290a 2020 2020 2020 2020 6669 0a20 2020 ). fi. │ │ │ -001e0700: 2020 2020 2065 6368 6f20 2220 2f76 6172 echo " /var │ │ │ -001e0710: 2020 6465 6661 756c 7473 2c24 7b70 7265 defaults,${pre │ │ │ -001e0720: 7669 6f75 735f 6d6f 756e 745f 6f70 7473 vious_mount_opts │ │ │ -001e0730: 7d6e 6f73 7569 6420 3020 3022 2026 6774 }nosuid 0 0" > │ │ │ -001e0740: 3b26 6774 3b20 2f65 7463 2f66 7374 6162 ;> /etc/fstab │ │ │ -001e0750: 0a20 2020 2023 2049 6620 7468 6520 6d6f . # If the mo │ │ │ -001e0760: 756e 745f 6f70 7420 6f70 7469 6f6e 2069 unt_opt option i │ │ │ -001e0770: 7320 6e6f 7420 616c 7265 6164 7920 696e s not already in │ │ │ -001e0780: 2074 6865 206d 6f75 6e74 2070 6f69 6e74 the mount point │ │ │ -001e0790: 2773 202f 6574 632f 6673 7461 6220 656e 's /etc/fstab en │ │ │ -001e07a0: 7472 792c 2061 6464 2069 740a 2020 2020 try, add it. │ │ │ -001e07b0: 656c 6966 2021 2067 7265 7020 2224 6d6f elif ! grep "$mo │ │ │ -001e07c0: 756e 745f 706f 696e 745f 6d61 7463 685f unt_point_match_ │ │ │ -001e07d0: 7265 6765 7870 2220 2f65 7463 2f66 7374 regexp" /etc/fst │ │ │ -001e07e0: 6162 207c 2067 7265 7020 2d71 2022 6e6f ab | grep -q "no │ │ │ -001e07f0: 7375 6964 223b 2074 6865 6e0a 2020 2020 suid"; then. │ │ │ -001e0800: 2020 2020 7072 6576 696f 7573 5f6d 6f75 previous_mou │ │ │ -001e0810: 6e74 5f6f 7074 733d 2428 6772 6570 2022 nt_opts=$(grep " │ │ │ -001e0820: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174 $mount_point_mat │ │ │ -001e0830: 6368 5f72 6567 6578 7022 202f 6574 632f ch_regexp" /etc/ │ │ │ -001e0840: 6673 7461 6220 7c20 6177 6b20 277b 7072 fstab | awk '{pr │ │ │ -001e0850: 696e 7420 2434 7d27 290a 2020 2020 2020 int $4}'). │ │ │ -001e0860: 2020 7365 6420 2d69 2022 737c 5c28 247b sed -i "s|\(${ │ │ │ -001e0870: 6d6f 756e 745f 706f 696e 745f 6d61 7463 mount_point_matc │ │ │ -001e0880: 685f 7265 6765 7870 7d2e 2a24 7b70 7265 h_regexp}.*${pre │ │ │ -001e0890: 7669 6f75 735f 6d6f 756e 745f 6f70 7473 vious_mount_opts │ │ │ -001e08a0: 7d5c 297c 5c31 2c6e 6f73 7569 647c 2220 }\)|\1,nosuid|" │ │ │ -001e08b0: 2f65 7463 2f66 7374 6162 0a20 2020 2066 /etc/fstab. f │ │ │ -001e08c0: 690a 0a0a 2020 2020 6966 206d 6b64 6972 i... if mkdir │ │ │ -001e08d0: 202d 7020 222f 7661 7222 3b20 7468 656e -p "/var"; then │ │ │ -001e08e0: 0a20 2020 2020 2020 2069 6620 6d6f 756e . if moun │ │ │ -001e08f0: 7470 6f69 6e74 202d 7120 222f 7661 7222 tpoint -q "/var" │ │ │ -001e0900: 3b20 7468 656e 0a20 2020 2020 2020 2020 ; then. │ │ │ -001e0910: 2020 206d 6f75 6e74 202d 6f20 7265 6d6f mount -o remo │ │ │ -001e0920: 756e 7420 2d2d 7461 7267 6574 2022 2f76 unt --target "/v │ │ │ -001e0930: 6172 220a 2020 2020 2020 2020 6669 0a20 ar". fi. │ │ │ -001e0940: 2020 2066 690a 7d0a 0a70 6572 666f 726d fi.}..perform │ │ │ -001e0950: 5f72 656d 6564 6961 7469 6f6e 0a0a 656c _remediation..el │ │ │ -001e0960: 7365 0a20 2020 2026 6774 3b26 616d 703b se. >& │ │ │ -001e0970: 3220 6563 686f 2027 5265 6d65 6469 6174 2 echo 'Remediat │ │ │ -001e0980: 696f 6e20 6973 206e 6f74 2061 7070 6c69 ion is not appli │ │ │ -001e0990: 6361 626c 652c 206e 6f74 6869 6e67 2077 cable, nothing w │ │ │ -001e09a0: 6173 2064 6f6e 6527 0a66 690a 3c2f 636f as done'.fi.

│ │ │ +001de730: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +001de750: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ +001de780: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
Complexity:< │ │ │ +001de740: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +001de760: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ +001de7b0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +001de7c0: 636f 6e66 6967 7572 653c 2f74 643e 3c2f configure
│ │ │ +001de7e0: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ +001de7f0: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ +001de800: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ +001de810: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ +001de820: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ +001de830: 3a0a 2020 2d20 636f 6e66 6967 7572 655f  :.  - configure_
│ │ │ +001de840: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ +001de850: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ +001de860: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +001de870: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +001de880: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ +001de890: 7469 6f6e 5f76 6172 5f6e 6f73 7569 640a  tion_var_nosuid.
│ │ │ +001de8a0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001de8b0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001de8c0: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ +001de8d0: 2074 6f20 2f76 6172 3a20 4368 6563 6b20   to /var: Check 
│ │ │ +001de8e0: 696e 666f 726d 6174 696f 6e20 6173 736f  information asso
│ │ │ +001de8f0: 6369 6174 6564 2074 6f20 6d6f 756e 7470  ciated to mountp
│ │ │ +001de900: 6f69 6e74 270a 2020 616e 7369 626c 652e  oint'.  ansible.
│ │ │ +001de910: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ +001de920: 2066 696e 646d 6e74 202d 2d66 7374 6162   findmnt --fstab
│ │ │ +001de930: 2027 2f76 6172 270a 2020 7265 6769 7374   '/var'.  regist
│ │ │ +001de940: 6572 3a20 6465 7669 6365 5f6e 616d 650a  er: device_name.
│ │ │ +001de950: 2020 6661 696c 6564 5f77 6865 6e3a 2064    failed_when: d
│ │ │ +001de960: 6576 6963 655f 6e61 6d65 2e72 6320 2667  evice_name.rc &g
│ │ │ +001de970: 743b 2031 0a20 2063 6861 6e67 6564 5f77  t; 1.  changed_w
│ │ │ +001de980: 6865 6e3a 2066 616c 7365 0a20 2063 6865  hen: false.  che
│ │ │ +001de990: 636b 5f6d 6f64 653a 2066 616c 7365 0a20  ck_mode: false. 
│ │ │ +001de9a0: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ +001de9b0: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ +001de9c0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001de9d0: 6b61 6765 7320 616e 6420 2272 706d 2d6f  kages and "rpm-o
│ │ │ +001de9e0: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001de9f0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001dea00: 0a20 2020 2061 6e64 2022 626f 6f74 6322  .    and "bootc"
│ │ │ +001dea10: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001dea20: 732e 7061 636b 6167 6573 2061 6e64 206e  s.packages and n
│ │ │ +001dea30: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ +001dea40: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ +001dea50: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001dea60: 0a20 2020 2061 6e64 2022 6f73 7472 6565  .    and "ostree
│ │ │ +001dea70: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ +001dea80: 635f 636d 646c 696e 6520 2920 616e 6420  c_cmdline ) and 
│ │ │ +001dea90: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ +001deaa0: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ +001deab0: 6520 696e 0a20 2020 205b 2264 6f63 6b65  e in.    ["docke
│ │ │ +001deac0: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ +001dead0: 767a 222c 2022 706f 646d 616e 222c 2022  vz", "podman", "
│ │ │ +001deae0: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ +001deaf0: 2020 2d20 2722 2f76 6172 2220 696e 2061    - '"/var" in a
│ │ │ +001deb00: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ +001deb10: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ +001deb20: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ +001deb30: 2074 6167 733a 0a20 202d 2063 6f6e 6669   tags:.  - confi
│ │ │ +001deb40: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001deb50: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001deb60: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001deb70: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001deb80: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001deb90: 6e74 5f6f 7074 696f 6e5f 7661 725f 6e6f  nt_option_var_no
│ │ │ +001deba0: 7375 6964 0a20 202d 206e 6f5f 7265 626f  suid.  - no_rebo
│ │ │ +001debb0: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +001debc0: 653a 2027 4164 6420 6e6f 7375 6964 204f  e: 'Add nosuid O
│ │ │ +001debd0: 7074 696f 6e20 746f 202f 7661 723a 2043  ption to /var: C
│ │ │ +001debe0: 7265 6174 6520 6d6f 756e 745f 696e 666f  reate mount_info
│ │ │ +001debf0: 2064 6963 7469 6f6e 6172 7920 7661 7269   dictionary vari
│ │ │ +001dec00: 6162 6c65 270a 2020 7365 745f 6661 6374  able'.  set_fact
│ │ │ +001dec10: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ +001dec20: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001dec30: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d  |default({})|com
│ │ │ +001dec40: 6269 6e65 287b 6974 656d 2e30 3a20 6974  bine({item.0: it
│ │ │ +001dec50: 656d 2e31 7d29 207d 7d27 0a20 2077 6974  em.1}) }}'.  wit
│ │ │ +001dec60: 685f 746f 6765 7468 6572 3a0a 2020 2d20  h_together:.  - 
│ │ │ +001dec70: 277b 7b20 6465 7669 6365 5f6e 616d 652e  '{{ device_name.
│ │ │ +001dec80: 7374 646f 7574 5f6c 696e 6573 5b30 5d2e  stdout_lines[0].
│ │ │ +001dec90: 7370 6c69 7428 2920 7c20 6d61 7028 2727  split() | map(''
│ │ │ +001deca0: 6c6f 7765 7227 2729 207c 206c 6973 7420  lower'') | list 
│ │ │ +001decb0: 7d7d 270a 2020 2d20 277b 7b20 6465 7669  }}'.  - '{{ devi
│ │ │ +001decc0: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ +001decd0: 696e 6573 5b31 5d2e 7370 6c69 7428 2920  ines[1].split() 
│ │ │ +001dece0: 7c20 6c69 7374 207d 7d27 0a20 2077 6865  | list }}'.  whe
│ │ │ +001decf0: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +001ded00: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001ded10: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001ded20: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ +001ded30: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ +001ded40: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001ded50: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ +001ded60: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001ded70: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ +001ded80: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +001ded90: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ +001deda0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001dedb0: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ +001dedc0: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ +001dedd0: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ +001dede0: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ +001dedf0: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ +001dee00: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ +001dee10: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ +001dee20: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ +001dee30: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ +001dee40: 2722 2f76 6172 2220 696e 2061 6e73 6962  '"/var" in ansib
│ │ │ +001dee50: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ +001dee60: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ +001dee70: 2229 207c 206c 6973 7427 0a20 202d 2064  ") | list'.  - d
│ │ │ +001dee80: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001dee90: 7420 6973 2064 6566 696e 6564 2061 6e64  t is defined and
│ │ │ +001deea0: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +001deeb0: 6f75 745f 6c69 6e65 7320 6973 2064 6566  out_lines is def
│ │ │ +001deec0: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ +001deed0: 5f6e 616d 652e 7374 646f 7574 207c 206c  _name.stdout | l
│ │ │ +001deee0: 656e 6774 6820 2667 743b 2030 290a 2020  ength > 0).  
│ │ │ +001deef0: 7461 6773 3a0a 2020 2d20 636f 6e66 6967  tags:.  - config
│ │ │ +001def00: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +001def10: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ +001def20: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001def30: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ +001def40: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ +001def50: 745f 6f70 7469 6f6e 5f76 6172 5f6e 6f73  t_option_var_nos
│ │ │ +001def60: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f  uid.  - no_reboo
│ │ │ +001def70: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ +001def80: 3a20 2741 6464 206e 6f73 7569 6420 4f70  : 'Add nosuid Op
│ │ │ +001def90: 7469 6f6e 2074 6f20 2f76 6172 3a20 4966  tion to /var: If
│ │ │ +001defa0: 202f 7661 7220 6e6f 7420 6d6f 756e 7465   /var not mounte
│ │ │ +001defb0: 642c 2063 7261 6674 206d 6f75 6e74 5f69  d, craft mount_i
│ │ │ +001defc0: 6e66 6f20 6d61 6e75 616c 6c79 270a 2020  nfo manually'.  
│ │ │ +001defd0: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ +001defe0: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ +001deff0: 756e 745f 696e 666f 7c64 6566 6175 6c74  unt_info|default
│ │ │ +001df000: 287b 7d29 7c63 6f6d 6269 6e65 287b 6974  ({})|combine({it
│ │ │ +001df010: 656d 2e30 3a20 6974 656d 2e31 7d29 207d  em.0: item.1}) }
│ │ │ +001df020: 7d27 0a20 2077 6974 685f 746f 6765 7468  }'.  with_togeth
│ │ │ +001df030: 6572 3a0a 2020 2d20 2d20 7461 7267 6574  er:.  - - target
│ │ │ +001df040: 0a20 2020 202d 2073 6f75 7263 650a 2020  .    - source.  
│ │ │ +001df050: 2020 2d20 6673 7479 7065 0a20 2020 202d    - fstype.    -
│ │ │ +001df060: 206f 7074 696f 6e73 0a20 202d 202d 202f   options.  - - /
│ │ │ +001df070: 7661 720a 2020 2020 2d20 2727 0a20 2020  var.    - ''.   
│ │ │ +001df080: 202d 2027 270a 2020 2020 2d20 6465 6661   - ''.    - defa
│ │ │ +001df090: 756c 7473 0a20 2077 6865 6e3a 0a20 202d  ults.  when:.  -
│ │ │ +001df0a0: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ +001df0b0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001df0c0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001df0d0: 2272 706d 2d6f 7374 7265 6522 2069 6e20  "rpm-ostree" in 
│ │ │ +001df0e0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001df0f0: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ +001df100: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ +001df110: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001df120: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ +001df130: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ +001df140: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001df150: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ +001df160: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001df170: 6c65 5f70 726f 635f 636d 646c 696e 6520  le_proc_cmdline 
│ │ │ +001df180: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ +001df190: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ +001df1a0: 6f6e 5f74 7970 6520 696e 0a20 2020 205b  on_type in.    [
│ │ │ +001df1b0: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ +001df1c0: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ +001df1d0: 616e 222c 2022 636f 6e74 6169 6e65 7222  an", "container"
│ │ │ +001df1e0: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ +001df1f0: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ +001df200: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ +001df210: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ +001df220: 6973 7427 0a20 202d 2028 222d 2d66 7374  ist'.  - ("--fst
│ │ │ +001df230: 6162 2220 7c20 6c65 6e67 7468 203d 3d20  ab" | length == 
│ │ │ +001df240: 3029 0a20 202d 2064 6576 6963 655f 6e61  0).  - device_na
│ │ │ +001df250: 6d65 2e73 7464 6f75 7420 6973 2064 6566  me.stdout is def
│ │ │ +001df260: 696e 6564 2061 6e64 2064 6576 6963 655f  ined and device_
│ │ │ +001df270: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ +001df280: 7320 6973 2064 6566 696e 6564 0a20 202d  s is defined.  -
│ │ │ +001df290: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ +001df2a0: 646f 7574 207c 206c 656e 6774 6820 3d3d  dout | length ==
│ │ │ +001df2b0: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ +001df2c0: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +001df2d0: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +001df2e0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +001df2f0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +001df300: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001df310: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76  - mount_option_v
│ │ │ +001df320: 6172 5f6e 6f73 7569 640a 2020 2d20 6e6f  ar_nosuid.  - no
│ │ │ +001df330: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +001df340: 2d20 6e61 6d65 3a20 2741 6464 206e 6f73  - name: 'Add nos
│ │ │ +001df350: 7569 6420 4f70 7469 6f6e 2074 6f20 2f76  uid Option to /v
│ │ │ +001df360: 6172 3a20 4d61 6b65 2073 7572 6520 6e6f  ar: Make sure no
│ │ │ +001df370: 7375 6964 206f 7074 696f 6e20 6973 2070  suid option is p
│ │ │ +001df380: 6172 7420 6f66 2074 6865 2074 6f20 2f76  art of the to /v
│ │ │ +001df390: 6172 0a20 2020 206f 7074 696f 6e73 270a  ar.    options'.
│ │ │ +001df3a0: 2020 7365 745f 6661 6374 3a0a 2020 2020    set_fact:.    
│ │ │ +001df3b0: 6d6f 756e 745f 696e 666f 3a20 277b 7b20  mount_info: '{{ 
│ │ │ +001df3c0: 6d6f 756e 745f 696e 666f 207c 2063 6f6d  mount_info | com
│ │ │ +001df3d0: 6269 6e65 2820 7b27 276f 7074 696f 6e73  bine( {''options
│ │ │ +001df3e0: 2727 3a27 2727 277e 286d 6f75 6e74 5f69  '':''''~(mount_i
│ │ │ +001df3f0: 6e66 6f2e 6f70 7469 6f6e 7320 7c0a 2020  nfo.options |.  
│ │ │ +001df400: 2020 2020 6465 6661 756c 7428 2727 2727      default(''''
│ │ │ +001df410: 2929 7e28 2727 2c27 2720 6966 2028 6d6f  ))~('','' if (mo
│ │ │ +001df420: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ +001df430: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ +001df440: 2920 656c 7365 2027 2727 2729 7e27 276e  ) else '''')~''n
│ │ │ +001df450: 6f73 7569 6427 270a 2020 2020 2020 7d29  osuid''.      })
│ │ │ +001df460: 207d 7d27 0a20 2077 6865 6e3a 0a20 202d   }}'.  when:.  -
│ │ │ +001df470: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ +001df480: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001df490: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001df4a0: 2272 706d 2d6f 7374 7265 6522 2069 6e20  "rpm-ostree" in 
│ │ │ +001df4b0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001df4c0: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ +001df4d0: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ +001df4e0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001df4f0: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ +001df500: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ +001df510: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001df520: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ +001df530: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001df540: 6c65 5f70 726f 635f 636d 646c 696e 6520  le_proc_cmdline 
│ │ │ +001df550: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ +001df560: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ +001df570: 6f6e 5f74 7970 6520 696e 0a20 2020 205b  on_type in.    [
│ │ │ +001df580: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ +001df590: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ +001df5a0: 616e 222c 2022 636f 6e74 6169 6e65 7222  an", "container"
│ │ │ +001df5b0: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ +001df5c0: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ +001df5d0: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ +001df5e0: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ +001df5f0: 6973 7427 0a20 202d 206d 6f75 6e74 5f69  ist'.  - mount_i
│ │ │ +001df600: 6e66 6f20 6973 2064 6566 696e 6564 2061  nfo is defined a
│ │ │ +001df610: 6e64 2022 6e6f 7375 6964 2220 6e6f 7420  nd "nosuid" not 
│ │ │ +001df620: 696e 2028 6d6f 756e 745f 696e 666f 2e6f  in (mount_info.o
│ │ │ +001df630: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ +001df640: 2827 2729 290a 2020 7461 6773 3a0a 2020  ('')).  tags:.  
│ │ │ +001df650: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001df660: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001df670: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001df680: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001df690: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001df6a0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001df6b0: 5f76 6172 5f6e 6f73 7569 640a 2020 2d20  _var_nosuid.  - 
│ │ │ +001df6c0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001df6d0: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ +001df6e0: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20  osuid Option to 
│ │ │ +001df6f0: 2f76 6172 3a20 456e 7375 7265 202f 7661  /var: Ensure /va
│ │ │ +001df700: 7220 6973 206d 6f75 6e74 6564 2077 6974  r is mounted wit
│ │ │ +001df710: 6820 6e6f 7375 6964 206f 7074 696f 6e27  h nosuid option'
│ │ │ +001df720: 0a20 2061 6e73 6962 6c65 2e70 6f73 6978  .  ansible.posix
│ │ │ +001df730: 2e6d 6f75 6e74 3a0a 2020 2020 7061 7468  .mount:.    path
│ │ │ +001df740: 3a20 2f76 6172 0a20 2020 2073 7263 3a20  : /var.    src: 
│ │ │ +001df750: 277b 7b20 6d6f 756e 745f 696e 666f 2e73  '{{ mount_info.s
│ │ │ +001df760: 6f75 7263 6520 7c20 6465 6661 756c 7428  ource | default(
│ │ │ +001df770: 2727 2727 2920 7d7d 270a 2020 2020 6f70  '''') }}'.    op
│ │ │ +001df780: 7473 3a20 277b 7b20 6d6f 756e 745f 696e  ts: '{{ mount_in
│ │ │ +001df790: 666f 2e6f 7074 696f 6e73 207c 2064 6566  fo.options | def
│ │ │ +001df7a0: 6175 6c74 2827 2727 2729 207d 7d27 0a20  ault('''') }}'. 
│ │ │ +001df7b0: 2020 2073 7461 7465 3a20 6d6f 756e 7465     state: mounte
│ │ │ +001df7c0: 640a 2020 2020 6673 7479 7065 3a20 277b  d.    fstype: '{
│ │ │ +001df7d0: 7b20 6d6f 756e 745f 696e 666f 2e66 7374  { mount_info.fst
│ │ │ +001df7e0: 7970 6520 7c20 6465 6661 756c 7428 2727  ype | default(''
│ │ │ +001df7f0: 2727 2920 7d7d 270a 2020 7265 6769 7374  '') }}'.  regist
│ │ │ +001df800: 6572 3a20 6d6f 756e 745f 7265 7375 6c74  er: mount_result
│ │ │ +001df810: 0a20 2066 6169 6c65 645f 7768 656e 3a0a  .  failed_when:.
│ │ │ +001df820: 2020 2d20 6d6f 756e 745f 7265 7375 6c74    - mount_result
│ │ │ +001df830: 2069 7320 6661 696c 6564 0a20 202d 2027   is failed.  - '
│ │ │ +001df840: 2727 7461 7267 6574 2069 7320 6275 7379  ''target is busy
│ │ │ +001df850: 2727 206e 6f74 2069 6e20 286d 6f75 6e74  '' not in (mount
│ │ │ +001df860: 5f72 6573 756c 742e 6d73 6720 7c20 6465  _result.msg | de
│ │ │ +001df870: 6661 756c 7428 2727 2727 2929 270a 2020  fault(''''))'.  
│ │ │ +001df880: 2d20 2727 2761 6c72 6561 6479 206d 6f75  - '''already mou
│ │ │ +001df890: 6e74 6564 2727 206e 6f74 2069 6e20 286d  nted'' not in (m
│ │ │ +001df8a0: 6f75 6e74 5f72 6573 756c 742e 6d73 6720  ount_result.msg 
│ │ │ +001df8b0: 7c20 6465 6661 756c 7428 2727 2727 2929  | default(''''))
│ │ │ +001df8c0: 270a 2020 7768 656e 3a0a 2020 2d20 2820  '.  when:.  - ( 
│ │ │ +001df8d0: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ +001df8e0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001df8f0: 7061 636b 6167 6573 2061 6e64 2022 7270  packages and "rp
│ │ │ +001df900: 6d2d 6f73 7472 6565 2220 696e 2061 6e73  m-ostree" in ans
│ │ │ +001df910: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001df920: 6765 730a 2020 2020 616e 6420 2262 6f6f  ges.    and "boo
│ │ │ +001df930: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ +001df940: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001df950: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ +001df960: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ +001df970: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001df980: 6765 730a 2020 2020 616e 6420 226f 7374  ges.    and "ost
│ │ │ +001df990: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001df9a0: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061  proc_cmdline ) a
│ │ │ +001df9b0: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ +001df9c0: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ +001df9d0: 7479 7065 2069 6e0a 2020 2020 5b22 646f  type in.    ["do
│ │ │ +001df9e0: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ +001df9f0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ +001dfa00: 2c20 2263 6f6e 7461 696e 6572 225d 2029  , "container"] )
│ │ │ +001dfa10: 2029 0a20 202d 2027 222f 7661 7222 2069   ).  - '"/var" i
│ │ │ +001dfa20: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ +001dfa30: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ +001dfa40: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ +001dfa50: 270a 2020 2d20 6d6f 756e 745f 696e 666f  '.  - mount_info
│ │ │ +001dfa60: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ +001dfa70: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ +001dfa80: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ +001dfa90: 6e64 2028 6465 7669 6365 5f6e 616d 652e  nd (device_name.
│ │ │ +001dfaa0: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ +001dfab0: 2667 743b 2030 2929 206f 7220 2822 2d2d  > 0)) or ("--
│ │ │ +001dfac0: 6673 7461 6222 0a20 2020 207c 206c 656e  fstab".    | len
│ │ │ +001dfad0: 6774 6820 3d3d 2030 290a 2020 7461 6773  gth == 0).  tags
│ │ │ +001dfae0: 3a0a 2020 2d20 636f 6e66 6967 7572 655f  :.  - configure_
│ │ │ +001dfaf0: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ +001dfb00: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ +001dfb10: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +001dfb20: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +001dfb30: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ +001dfb40: 7469 6f6e 5f76 6172 5f6e 6f73 7569 640a  tion_var_nosuid.
│ │ │ +001dfb50: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001dfb60: 6564 6564 0a3c 2f63 6f64 653e 3c2f 7072  eded.
Remediation │ │ │ +001dfc20: 2053 6865 6c6c 2073 6372 6970 7420 e287 Shell script .. │ │ │ +001dfc30: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ +001dfcb0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +001dfcc0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
<
│ │ │ +001dfce0: 636f 6465 3e23 2052 656d 6564 6961 7469  code># Remediati
│ │ │ +001dfcf0: 6f6e 2069 7320 6170 706c 6963 6162 6c65  on is applicable
│ │ │ +001dfd00: 206f 6e6c 7920 696e 2063 6572 7461 696e   only in certain
│ │ │ +001dfd10: 2070 6c61 7466 6f72 6d73 0a69 6620 2820   platforms.if ( 
│ │ │ +001dfd20: 2120 2820 7b20 7270 6d20 2d2d 7175 6965  ! ( { rpm --quie
│ │ │ +001dfd30: 7420 2d71 206b 6572 6e65 6c20 3b7d 2026  t -q kernel ;} &
│ │ │ +001dfd40: 616d 703b 2661 6d70 3b20 7b20 7270 6d20  amp;& { rpm 
│ │ │ +001dfd50: 2d2d 7175 6965 7420 2d71 2072 706d 2d6f  --quiet -q rpm-o
│ │ │ +001dfd60: 7374 7265 6520 3b7d 2026 616d 703b 2661  stree ;} &&a
│ │ │ +001dfd70: 6d70 3b20 7b20 7270 6d20 2d2d 7175 6965  mp; { rpm --quie
│ │ │ +001dfd80: 7420 2d71 2062 6f6f 7463 203b 7d20 2661  t -q bootc ;} &a
│ │ │ +001dfd90: 6d70 3b26 616d 703b 207b 2021 2072 706d  mp;& { ! rpm
│ │ │ +001dfda0: 202d 2d71 7569 6574 202d 7120 6f70 656e   --quiet -q open
│ │ │ +001dfdb0: 7368 6966 742d 6b75 6265 6c65 7420 3b7d  shift-kubelet ;}
│ │ │ +001dfdc0: 2026 616d 703b 2661 6d70 3b20 285b 202d   && ([ -
│ │ │ +001dfdd0: 6620 2f72 756e 2f6f 7374 7265 652d 626f  f /run/ostree-bo
│ │ │ +001dfde0: 6f74 6564 205d 207c 7c20 5b20 2d4c 202f  oted ] || [ -L /
│ │ │ +001dfdf0: 6f73 7472 6565 205d 2920 2920 2661 6d70  ostree ]) ) &
│ │ │ +001dfe00: 3b26 616d 703b 2021 2028 205b 202d 6620  ;& ! ( [ -f 
│ │ │ +001dfe10: 2f2e 646f 636b 6572 656e 7620 5d20 7c7c  /.dockerenv ] ||
│ │ │ +001dfe20: 205b 202d 6620 2f72 756e 2f2e 636f 6e74   [ -f /run/.cont
│ │ │ +001dfe30: 6169 6e65 7265 6e76 205d 2029 2029 2026  ainerenv ] ) ) &
│ │ │ +001dfe40: 616d 703b 2661 6d70 3b20 7b20 2820 6669  amp;& { ( fi
│ │ │ +001dfe50: 6e64 6d6e 7420 2d2d 6b65 726e 656c 2022  ndmnt --kernel "
│ │ │ +001dfe60: 2f76 6172 2220 2667 743b 202f 6465 762f  /var" > /dev/
│ │ │ +001dfe70: 6e75 6c6c 207c 7c20 6669 6e64 6d6e 7420  null || findmnt 
│ │ │ +001dfe80: 2d2d 6673 7461 6220 222f 7661 7222 2026  --fstab "/var" &
│ │ │ +001dfe90: 6774 3b20 2f64 6576 2f6e 756c 6c20 293b  gt; /dev/null );
│ │ │ +001dfea0: 207d 3b20 7468 656e 0a0a 6675 6e63 7469   }; then..functi
│ │ │ +001dfeb0: 6f6e 2070 6572 666f 726d 5f72 656d 6564  on perform_remed
│ │ │ +001dfec0: 6961 7469 6f6e 207b 0a0a 2020 2020 0a20  iation {..    . 
│ │ │ +001dfed0: 2020 2020 2020 2023 2074 6865 206d 6f75         # the mou
│ │ │ +001dfee0: 6e74 2070 6f69 6e74 202f 7661 7220 6861  nt point /var ha
│ │ │ +001dfef0: 7320 746f 2062 6520 6465 6669 6e65 6420  s to be defined 
│ │ │ +001dff00: 696e 202f 6574 632f 6673 7461 620a 2020  in /etc/fstab.  
│ │ │ +001dff10: 2020 2020 2020 2320 6265 666f 7265 2074        # before t
│ │ │ +001dff20: 6869 7320 7265 6d65 6469 6174 696f 6e20  his remediation 
│ │ │ +001dff30: 6361 6e20 6265 2065 7865 6375 7465 642e  can be executed.
│ │ │ +001dff40: 2049 6e20 6361 7365 2069 7420 6973 206e   In case it is n
│ │ │ +001dff50: 6f74 2064 6566 696e 6564 2c20 7468 650a  ot defined, the.
│ │ │ +001dff60: 2020 2020 2020 2020 2320 7265 6d65 6469          # remedi
│ │ │ +001dff70: 6174 696f 6e20 6162 6f72 7473 2061 6e64  ation aborts and
│ │ │ +001dff80: 206e 6f20 6368 616e 6765 7320 7265 6761   no changes rega
│ │ │ +001dff90: 7264 696e 6720 7468 6520 6d6f 756e 7420  rding the mount 
│ │ │ +001dffa0: 706f 696e 7420 6172 6520 646f 6e65 2e0a  point are done..
│ │ │ +001dffb0: 2020 2020 2020 2020 6d6f 756e 745f 706f          mount_po
│ │ │ +001dffc0: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001dffd0: 3d22 2428 7072 696e 7466 2022 5e5b 5b3a  ="$(printf "^[[:
│ │ │ +001dffe0: 7370 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b  space:]]*[^#].*[
│ │ │ +001dfff0: 5b3a 7370 6163 653a 5d5d 2573 5b5b 3a73  [:space:]]%s[[:s
│ │ │ +001e0000: 7061 6365 3a5d 5d22 2022 2f76 6172 2229  pace:]]" "/var")
│ │ │ +001e0010: 220a 0a20 2020 2067 7265 7020 2224 6d6f  "..    grep "$mo
│ │ │ +001e0020: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001e0030: 7265 6765 7870 2220 2d71 202f 6574 632f  regexp" -q /etc/
│ │ │ +001e0040: 6673 7461 6220 5c0a 2020 2020 2020 2020  fstab \.        
│ │ │ +001e0050: 7c7c 207b 2065 6368 6f20 2254 6865 206d  || { echo "The m
│ │ │ +001e0060: 6f75 6e74 2070 6f69 6e74 2027 2f76 6172  ount point '/var
│ │ │ +001e0070: 2720 6973 206e 6f74 2065 7665 6e20 696e  ' is not even in
│ │ │ +001e0080: 202f 6574 632f 6673 7461 622c 2073 6f20   /etc/fstab, so 
│ │ │ +001e0090: 7765 2063 616e 2774 2073 6574 2075 7020  we can't set up 
│ │ │ +001e00a0: 6d6f 756e 7420 6f70 7469 6f6e 7322 2026  mount options" &
│ │ │ +001e00b0: 6774 3b26 616d 703b 323b 0a20 2020 2020  gt;&2;.     
│ │ │ +001e00c0: 2020 2020 2020 2020 2020 2065 6368 6f20             echo 
│ │ │ +001e00d0: 224e 6f74 2072 656d 6564 6961 7469 6e67  "Not remediating
│ │ │ +001e00e0: 2c20 6265 6361 7573 6520 7468 6572 6520  , because there 
│ │ │ +001e00f0: 6973 206e 6f20 7265 636f 7264 206f 6620  is no record of 
│ │ │ +001e0100: 2f76 6172 2069 6e20 2f65 7463 2f66 7374  /var in /etc/fst
│ │ │ +001e0110: 6162 2220 2667 743b 2661 6d70 3b32 3b20  ab" >&2; 
│ │ │ +001e0120: 7265 7475 726e 2031 3b20 7d0a 2020 2020  return 1; }.    
│ │ │ +001e0130: 0a0a 0a20 2020 206d 6f75 6e74 5f70 6f69  ...    mount_poi
│ │ │ +001e0140: 6e74 5f6d 6174 6368 5f72 6567 6578 703d  nt_match_regexp=
│ │ │ +001e0150: 2224 2870 7269 6e74 6620 225e 5b5b 3a73  "$(printf "^[[:s
│ │ │ +001e0160: 7061 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b  pace:]]*[^#].*[[
│ │ │ +001e0170: 3a73 7061 6365 3a5d 5d25 735b 5b3a 7370  :space:]]%s[[:sp
│ │ │ +001e0180: 6163 653a 5d5d 2220 2f76 6172 2922 0a0a  ace:]]" /var)"..
│ │ │ +001e0190: 2020 2020 2320 4966 2074 6865 206d 6f75      # If the mou
│ │ │ +001e01a0: 6e74 2070 6f69 6e74 2069 7320 6e6f 7420  nt point is not 
│ │ │ +001e01b0: 696e 202f 6574 632f 6673 7461 622c 2067  in /etc/fstab, g
│ │ │ +001e01c0: 6574 2070 7265 7669 6f75 7320 6d6f 756e  et previous moun
│ │ │ +001e01d0: 7420 6f70 7469 6f6e 7320 6672 6f6d 202f  t options from /
│ │ │ +001e01e0: 6574 632f 6d74 6162 0a20 2020 2069 6620  etc/mtab.    if 
│ │ │ +001e01f0: 2120 6772 6570 202d 7120 2224 6d6f 756e  ! grep -q "$moun
│ │ │ +001e0200: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001e0210: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ +001e0220: 3b20 7468 656e 0a20 2020 2020 2020 2023  ; then.        #
│ │ │ +001e0230: 2072 756e 7469 6d65 206f 7074 7320 7769   runtime opts wi
│ │ │ +001e0240: 7468 6f75 7420 736f 6d65 2061 7574 6f6d  thout some autom
│ │ │ +001e0250: 6174 6963 206b 6572 6e65 6c2f 7573 6572  atic kernel/user
│ │ │ +001e0260: 7370 6163 652d 6164 6465 6420 6465 6661  space-added defa
│ │ │ +001e0270: 756c 7473 0a20 2020 2020 2020 2070 7265  ults.        pre
│ │ │ +001e0280: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001e0290: 3d24 2867 7265 7020 2224 6d6f 756e 745f  =$(grep "$mount_
│ │ │ +001e02a0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001e02b0: 7870 2220 2f65 7463 2f6d 7461 6220 7c20  xp" /etc/mtab | 
│ │ │ +001e02c0: 6865 6164 202d 3120 7c20 2061 776b 2027  head -1 |  awk '
│ │ │ +001e02d0: 7b70 7269 6e74 2024 347d 2720 5c0a 2020  {print $4}' \.  
│ │ │ +001e02e0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +001e02f0: 2020 7c20 7365 6420 2d45 2022 732f 2872    | sed -E "s/(r
│ │ │ +001e0300: 777c 6465 6661 756c 7473 7c73 6563 6c61  w|defaults|secla
│ │ │ +001e0310: 6265 6c7c 6e6f 7375 6964 2928 2c7c 2429  bel|nosuid)(,|$)
│ │ │ +001e0320: 2f2f 673b 732f 2c24 2f2f 2229 0a20 2020  //g;s/,$//").   
│ │ │ +001e0330: 2020 2020 205b 2022 2470 7265 7669 6f75       [ "$previou
│ │ │ +001e0340: 735f 6d6f 756e 745f 6f70 7473 2220 5d20  s_mount_opts" ] 
│ │ │ +001e0350: 2661 6d70 3b26 616d 703b 2070 7265 7669  && previ
│ │ │ +001e0360: 6f75 735f 6d6f 756e 745f 6f70 7473 2b3d  ous_mount_opts+=
│ │ │ +001e0370: 222c 220a 2020 2020 2020 2020 2320 496e  ",".        # In
│ │ │ +001e0380: 2069 736f 3936 3630 2066 696c 6573 7973   iso9660 filesys
│ │ │ +001e0390: 7465 6d73 206d 7461 6220 636f 756c 6420  tems mtab could 
│ │ │ +001e03a0: 6465 7363 7269 6265 2061 2022 626c 6f63  describe a "bloc
│ │ │ +001e03b0: 6b73 697a 6522 2076 616c 7565 2c20 7468  ksize" value, th
│ │ │ +001e03c0: 6973 2073 686f 756c 6420 6265 2072 6566  is should be ref
│ │ │ +001e03d0: 6c65 6374 6564 2069 6e0a 2020 2020 2020  lected in.      
│ │ │ +001e03e0: 2020 2320 6673 7461 6220 6173 2022 626c    # fstab as "bl
│ │ │ +001e03f0: 6f63 6b22 2e20 2054 6865 206e 6578 7420  ock".  The next 
│ │ │ +001e0400: 7661 7269 6162 6c65 2069 7320 746f 2073  variable is to s
│ │ │ +001e0410: 6174 6973 6679 2073 6865 6c6c 6368 6563  atisfy shellchec
│ │ │ +001e0420: 6b20 5343 3230 3530 2e0a 2020 2020 2020  k SC2050..      
│ │ │ +001e0430: 2020 6673 5f74 7970 653d 2222 0a20 2020    fs_type="".   
│ │ │ +001e0440: 2020 2020 2069 6620 5b20 2022 2466 735f       if [  "$fs_
│ │ │ +001e0450: 7479 7065 2220 3d3d 2022 6973 6f39 3636  type" == "iso966
│ │ │ +001e0460: 3022 205d 203b 2074 6865 6e0a 2020 2020  0" ] ; then.    
│ │ │ +001e0470: 2020 2020 2020 2020 7072 6576 696f 7573          previous
│ │ │ +001e0480: 5f6d 6f75 6e74 5f6f 7074 733d 2428 7365  _mount_opts=$(se
│ │ │ +001e0490: 6420 2773 2f62 6c6f 636b 7369 7a65 3d2f  d 's/blocksize=/
│ │ │ +001e04a0: 626c 6f63 6b3d 2f27 2026 6c74 3b26 6c74  block=/' <<
│ │ │ +001e04b0: 3b26 6c74 3b20 2224 7072 6576 696f 7573  ;< "$previous
│ │ │ +001e04c0: 5f6d 6f75 6e74 5f6f 7074 7322 290a 2020  _mount_opts").  
│ │ │ +001e04d0: 2020 2020 2020 6669 0a20 2020 2020 2020        fi.       
│ │ │ +001e04e0: 2065 6368 6f20 2220 2f76 6172 2020 6465   echo " /var  de
│ │ │ +001e04f0: 6661 756c 7473 2c24 7b70 7265 7669 6f75  faults,${previou
│ │ │ +001e0500: 735f 6d6f 756e 745f 6f70 7473 7d6e 6f73  s_mount_opts}nos
│ │ │ +001e0510: 7569 6420 3020 3022 2026 6774 3b26 6774  uid 0 0" >>
│ │ │ +001e0520: 3b20 2f65 7463 2f66 7374 6162 0a20 2020  ; /etc/fstab.   
│ │ │ +001e0530: 2023 2049 6620 7468 6520 6d6f 756e 745f   # If the mount_
│ │ │ +001e0540: 6f70 7420 6f70 7469 6f6e 2069 7320 6e6f  opt option is no
│ │ │ +001e0550: 7420 616c 7265 6164 7920 696e 2074 6865  t already in the
│ │ │ +001e0560: 206d 6f75 6e74 2070 6f69 6e74 2773 202f   mount point's /
│ │ │ +001e0570: 6574 632f 6673 7461 6220 656e 7472 792c  etc/fstab entry,
│ │ │ +001e0580: 2061 6464 2069 740a 2020 2020 656c 6966   add it.    elif
│ │ │ +001e0590: 2021 2067 7265 7020 2224 6d6f 756e 745f   ! grep "$mount_
│ │ │ +001e05a0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001e05b0: 7870 2220 2f65 7463 2f66 7374 6162 207c  xp" /etc/fstab |
│ │ │ +001e05c0: 2067 7265 7020 2d71 2022 6e6f 7375 6964   grep -q "nosuid
│ │ │ +001e05d0: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ +001e05e0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001e05f0: 7074 733d 2428 6772 6570 2022 246d 6f75  pts=$(grep "$mou
│ │ │ +001e0600: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +001e0610: 6567 6578 7022 202f 6574 632f 6673 7461  egexp" /etc/fsta
│ │ │ +001e0620: 6220 7c20 6177 6b20 277b 7072 696e 7420  b | awk '{print 
│ │ │ +001e0630: 2434 7d27 290a 2020 2020 2020 2020 7365  $4}').        se
│ │ │ +001e0640: 6420 2d69 2022 737c 5c28 247b 6d6f 756e  d -i "s|\(${moun
│ │ │ +001e0650: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001e0660: 6765 7870 7d2e 2a24 7b70 7265 7669 6f75  gexp}.*${previou
│ │ │ +001e0670: 735f 6d6f 756e 745f 6f70 7473 7d5c 297c  s_mount_opts}\)|
│ │ │ +001e0680: 5c31 2c6e 6f73 7569 647c 2220 2f65 7463  \1,nosuid|" /etc
│ │ │ +001e0690: 2f66 7374 6162 0a20 2020 2066 690a 0a0a  /fstab.    fi...
│ │ │ +001e06a0: 2020 2020 6966 206d 6b64 6972 202d 7020      if mkdir -p 
│ │ │ +001e06b0: 222f 7661 7222 3b20 7468 656e 0a20 2020  "/var"; then.   
│ │ │ +001e06c0: 2020 2020 2069 6620 6d6f 756e 7470 6f69       if mountpoi
│ │ │ +001e06d0: 6e74 202d 7120 222f 7661 7222 3b20 7468  nt -q "/var"; th
│ │ │ +001e06e0: 656e 0a20 2020 2020 2020 2020 2020 206d  en.            m
│ │ │ +001e06f0: 6f75 6e74 202d 6f20 7265 6d6f 756e 7420  ount -o remount 
│ │ │ +001e0700: 2d2d 7461 7267 6574 2022 2f76 6172 220a  --target "/var".
│ │ │ +001e0710: 2020 2020 2020 2020 6669 0a20 2020 2066          fi.    f
│ │ │ +001e0720: 690a 7d0a 0a70 6572 666f 726d 5f72 656d  i.}..perform_rem
│ │ │ +001e0730: 6564 6961 7469 6f6e 0a0a 656c 7365 0a20  ediation..else. 
│ │ │ +001e0740: 2020 2026 6774 3b26 616d 703b 3220 6563     >&2 ec
│ │ │ +001e0750: 686f 2027 5265 6d65 6469 6174 696f 6e20  ho 'Remediation 
│ │ │ +001e0760: 6973 206e 6f74 2061 7070 6c69 6361 626c  is not applicabl
│ │ │ +001e0770: 652c 206e 6f74 6869 6e67 2077 6173 2064  e, nothing was d
│ │ │ +001e0780: 6f6e 6527 0a66 690a 3c2f 636f 6465 3e3c  one'.fi.<
│ │ │ +001e0790: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ +001e0840: 696f 6e20 416e 6163 6f6e 6461 2073 6e69 ion Anaconda sni │ │ │ +001e0850: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +001e0860: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +001e0890: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +001e0900: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption: │ │ │ +001e0920: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +001e0950: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Comple │ │ │ +001e08e0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +001e08f0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
high
Reb │ │ │ +001e0930: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +001e0940: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

.part / │ │ │ +001e0990: 7661 7220 2d2d 6d6f 756e 746f 7074 696f var --mountoptio │ │ │ +001e09a0: 6e73 3d22 6e6f 7375 6964 220a 3c2f 636f ns="nosuid".

< │ │ │ 001e09c0: 2f64 6976 3e3c 2f74 643e 3c2f 7472 3e3c /div>< │ │ │ 001e09d0: 2f74 626f 6479 3e3c 2f74 6162 6c65 3e3c /tbody>< │ │ │ 001e09e0: 2f74 643e 3c2f 7472 3e3c 7472 2064 6174 /td>Remediation │ │ │ -001e1370: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ -001e1380: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -001e1410: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -001e1430: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -001e1440: 7464 3e68 6967 683c 2f74 643e 3c2f 7472 td>highReboot: │ │ │ -001e1460: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -001e1480: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ -001e14b0: 636f 6465 3e0a 7061 7274 202f 7661 722f  code>.part /var/
│ │ │ -001e14c0: 746d 7020 2d2d 6d6f 756e 746f 7074 696f  tmp --mountoptio
│ │ │ -001e14d0: 6e73 3d22 6e6f 6465 7622 0a3c 2f63 6f64  ns="nodev".
Remed │ │ │ -001e1590: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ -001e15a0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
- 
│ │ │ -001e16e0: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ -001e16f0: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ -001e1700: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ -001e1710: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ -001e1720: 6f0a 2020 7461 6773 3a0a 2020 2d20 636f  o.  tags:.  - co
│ │ │ -001e1730: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -001e1740: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -001e1750: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -001e1760: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -001e1770: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001e1780: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ -001e1790: 5f74 6d70 5f6e 6f64 6576 0a20 202d 206e  _tmp_nodev.  - n
│ │ │ -001e17a0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -001e17b0: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ -001e17c0: 6465 7620 4f70 7469 6f6e 2074 6f20 2f76  dev Option to /v
│ │ │ -001e17d0: 6172 2f74 6d70 3a20 4368 6563 6b20 696e  ar/tmp: Check in
│ │ │ -001e17e0: 666f 726d 6174 696f 6e20 6173 736f 6369  formation associ
│ │ │ -001e17f0: 6174 6564 2074 6f20 6d6f 756e 7470 6f69  ated to mountpoi
│ │ │ -001e1800: 6e74 270a 2020 616e 7369 626c 652e 6275  nt'.  ansible.bu
│ │ │ -001e1810: 696c 7469 6e2e 636f 6d6d 616e 643a 2066  iltin.command: f
│ │ │ -001e1820: 696e 646d 6e74 202d 2d66 7374 6162 2027  indmnt --fstab '
│ │ │ -001e1830: 2f76 6172 2f74 6d70 270a 2020 7265 6769  /var/tmp'.  regi
│ │ │ -001e1840: 7374 6572 3a20 6465 7669 6365 5f6e 616d  ster: device_nam
│ │ │ -001e1850: 650a 2020 6661 696c 6564 5f77 6865 6e3a  e.  failed_when:
│ │ │ -001e1860: 2064 6576 6963 655f 6e61 6d65 2e72 6320   device_name.rc 
│ │ │ -001e1870: 2667 743b 2031 0a20 2063 6861 6e67 6564  > 1.  changed
│ │ │ -001e1880: 5f77 6865 6e3a 2066 616c 7365 0a20 2063  _when: false.  c
│ │ │ -001e1890: 6865 636b 5f6d 6f64 653a 2066 616c 7365  heck_mode: false
│ │ │ -001e18a0: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ -001e18b0: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ -001e18c0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001e18d0: 6163 6b61 6765 7320 616e 6420 2272 706d  ackages and "rpm
│ │ │ -001e18e0: 2d6f 7374 7265 6522 2069 6e20 616e 7369  -ostree" in ansi
│ │ │ -001e18f0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001e1900: 6573 0a20 2020 2061 6e64 2022 626f 6f74  es.    and "boot
│ │ │ -001e1910: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ -001e1920: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001e1930: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ -001e1940: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ -001e1950: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001e1960: 6573 0a20 2020 2061 6e64 2022 6f73 7472  es.    and "ostr
│ │ │ -001e1970: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ -001e1980: 726f 635f 636d 646c 696e 6520 2920 616e  roc_cmdline ) an
│ │ │ -001e1990: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ -001e19a0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ -001e19b0: 7970 6520 696e 0a20 2020 205b 2264 6f63  ype in.    ["doc
│ │ │ -001e19c0: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ -001e19d0: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ -001e19e0: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ -001e19f0: 290a 2020 2d20 2722 2f76 6172 2f74 6d70  ).  - '"/var/tmp
│ │ │ -001e1a00: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ -001e1a10: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ -001e1a20: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ -001e1a30: 6973 7427 0a20 2074 6167 733a 0a20 202d  ist'.  tags:.  -
│ │ │ -001e1a40: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ -001e1a50: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ -001e1a60: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -001e1a70: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -001e1a80: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -001e1a90: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ -001e1aa0: 7661 725f 746d 705f 6e6f 6465 760a 2020  var_tmp_nodev.  
│ │ │ -001e1ab0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -001e1ac0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ -001e1ad0: 206e 6f64 6576 204f 7074 696f 6e20 746f   nodev Option to
│ │ │ -001e1ae0: 202f 7661 722f 746d 703a 2043 7265 6174   /var/tmp: Creat
│ │ │ -001e1af0: 6520 6d6f 756e 745f 696e 666f 2064 6963  e mount_info dic
│ │ │ -001e1b00: 7469 6f6e 6172 7920 7661 7269 6162 6c65  tionary variable
│ │ │ -001e1b10: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ -001e1b20: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ -001e1b30: 7b20 6d6f 756e 745f 696e 666f 7c64 6566  { mount_info|def
│ │ │ -001e1b40: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65  ault({})|combine
│ │ │ -001e1b50: 287b 6974 656d 2e30 3a20 6974 656d 2e31  ({item.0: item.1
│ │ │ -001e1b60: 7d29 207d 7d27 0a20 2077 6974 685f 746f  }) }}'.  with_to
│ │ │ -001e1b70: 6765 7468 6572 3a0a 2020 2d20 277b 7b20  gether:.  - '{{ 
│ │ │ -001e1b80: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001e1b90: 7574 5f6c 696e 6573 5b30 5d2e 7370 6c69  ut_lines[0].spli
│ │ │ -001e1ba0: 7428 2920 7c20 6d61 7028 2727 6c6f 7765  t() | map(''lowe
│ │ │ -001e1bb0: 7227 2729 207c 206c 6973 7420 7d7d 270a  r'') | list }}'.
│ │ │ -001e1bc0: 2020 2d20 277b 7b20 6465 7669 6365 5f6e    - '{{ device_n
│ │ │ -001e1bd0: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ -001e1be0: 5b31 5d2e 7370 6c69 7428 2920 7c20 6c69  [1].split() | li
│ │ │ -001e1bf0: 7374 207d 7d27 0a20 2077 6865 6e3a 0a20  st }}'.  when:. 
│ │ │ -001e1c00: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ -001e1c10: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -001e1c20: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001e1c30: 6420 2272 706d 2d6f 7374 7265 6522 2069  d "rpm-ostree" i
│ │ │ -001e1c40: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001e1c50: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001e1c60: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ -001e1c70: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001e1c80: 6573 2061 6e64 206e 6f74 2022 6f70 656e  es and not "open
│ │ │ -001e1c90: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ -001e1ca0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001e1cb0: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001e1cc0: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ -001e1cd0: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ -001e1ce0: 6520 2920 616e 6420 6e6f 7420 2820 616e  e ) and not ( an
│ │ │ -001e1cf0: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ -001e1d00: 7469 6f6e 5f74 7970 6520 696e 0a20 2020  tion_type in.   
│ │ │ -001e1d10: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ -001e1d20: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ -001e1d30: 646d 616e 222c 2022 636f 6e74 6169 6e65  dman", "containe
│ │ │ -001e1d40: 7222 5d20 2920 290a 2020 2d20 2722 2f76  r"] ) ).  - '"/v
│ │ │ -001e1d50: 6172 2f74 6d70 2220 696e 2061 6e73 6962  ar/tmp" in ansib
│ │ │ -001e1d60: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ -001e1d70: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ -001e1d80: 2229 207c 206c 6973 7427 0a20 202d 2064  ") | list'.  - d
│ │ │ -001e1d90: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001e1da0: 7420 6973 2064 6566 696e 6564 2061 6e64  t is defined and
│ │ │ -001e1db0: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ -001e1dc0: 6f75 745f 6c69 6e65 7320 6973 2064 6566  out_lines is def
│ │ │ -001e1dd0: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ -001e1de0: 5f6e 616d 652e 7374 646f 7574 207c 206c  _name.stdout | l
│ │ │ -001e1df0: 656e 6774 6820 2667 743b 2030 290a 2020  ength > 0).  
│ │ │ -001e1e00: 7461 6773 3a0a 2020 2d20 636f 6e66 6967  tags:.  - config
│ │ │ -001e1e10: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001e1e20: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001e1e30: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001e1e40: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001e1e50: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001e1e60: 745f 6f70 7469 6f6e 5f76 6172 5f74 6d70  t_option_var_tmp
│ │ │ -001e1e70: 5f6e 6f64 6576 0a20 202d 206e 6f5f 7265  _nodev.  - no_re
│ │ │ -001e1e80: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -001e1e90: 616d 653a 2027 4164 6420 6e6f 6465 7620  ame: 'Add nodev 
│ │ │ -001e1ea0: 4f70 7469 6f6e 2074 6f20 2f76 6172 2f74  Option to /var/t
│ │ │ -001e1eb0: 6d70 3a20 4966 202f 7661 722f 746d 7020  mp: If /var/tmp 
│ │ │ -001e1ec0: 6e6f 7420 6d6f 756e 7465 642c 2063 7261  not mounted, cra
│ │ │ -001e1ed0: 6674 206d 6f75 6e74 5f69 6e66 6f20 6d61  ft mount_info ma
│ │ │ -001e1ee0: 6e75 616c 6c79 270a 2020 7365 745f 6661  nually'.  set_fa
│ │ │ -001e1ef0: 6374 3a0a 2020 2020 6d6f 756e 745f 696e  ct:.    mount_in
│ │ │ -001e1f00: 666f 3a20 277b 7b20 6d6f 756e 745f 696e  fo: '{{ mount_in
│ │ │ -001e1f10: 666f 7c64 6566 6175 6c74 287b 7d29 7c63  fo|default({})|c
│ │ │ -001e1f20: 6f6d 6269 6e65 287b 6974 656d 2e30 3a20  ombine({item.0: 
│ │ │ -001e1f30: 6974 656d 2e31 7d29 207d 7d27 0a20 2077  item.1}) }}'.  w
│ │ │ -001e1f40: 6974 685f 746f 6765 7468 6572 3a0a 2020  ith_together:.  
│ │ │ -001e1f50: 2d20 2d20 7461 7267 6574 0a20 2020 202d  - - target.    -
│ │ │ -001e1f60: 2073 6f75 7263 650a 2020 2020 2d20 6673   source.    - fs
│ │ │ -001e1f70: 7479 7065 0a20 2020 202d 206f 7074 696f  type.    - optio
│ │ │ -001e1f80: 6e73 0a20 202d 202d 202f 7661 722f 746d  ns.  - - /var/tm
│ │ │ -001e1f90: 700a 2020 2020 2d20 2727 0a20 2020 202d  p.    - ''.    -
│ │ │ -001e1fa0: 2027 270a 2020 2020 2d20 6465 6661 756c   ''.    - defaul
│ │ │ -001e1fb0: 7473 0a20 2077 6865 6e3a 0a20 202d 2028  ts.  when:.  - (
│ │ │ -001e1fc0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -001e1fd0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001e1fe0: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ -001e1ff0: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ -001e2000: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001e2010: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ -001e2020: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ -001e2030: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001e2040: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -001e2050: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -001e2060: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001e2070: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ -001e2080: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001e2090: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ -001e20a0: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -001e20b0: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -001e20c0: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ -001e20d0: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ -001e20e0: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ -001e20f0: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ -001e2100: 2920 290a 2020 2d20 2722 2f76 6172 2f74  ) ).  - '"/var/t
│ │ │ -001e2110: 6d70 2220 696e 2061 6e73 6962 6c65 5f6d  mp" in ansible_m
│ │ │ -001e2120: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ -001e2130: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ -001e2140: 206c 6973 7427 0a20 202d 2028 222d 2d66   list'.  - ("--f
│ │ │ -001e2150: 7374 6162 2220 7c20 6c65 6e67 7468 203d  stab" | length =
│ │ │ -001e2160: 3d20 3029 0a20 202d 2064 6576 6963 655f  = 0).  - device_
│ │ │ -001e2170: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ -001e2180: 6566 696e 6564 2061 6e64 2064 6576 6963  efined and devic
│ │ │ -001e2190: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ -001e21a0: 6e65 7320 6973 2064 6566 696e 6564 0a20  nes is defined. 
│ │ │ -001e21b0: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ -001e21c0: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ -001e21d0: 3d3d 2030 290a 2020 7461 6773 3a0a 2020  == 0).  tags:.  
│ │ │ -001e21e0: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -001e21f0: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ -001e2200: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -001e2210: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001e2220: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -001e2230: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ -001e2240: 5f76 6172 5f74 6d70 5f6e 6f64 6576 0a20  _var_tmp_nodev. 
│ │ │ -001e2250: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -001e2260: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ -001e2270: 6420 6e6f 6465 7620 4f70 7469 6f6e 2074  d nodev Option t
│ │ │ -001e2280: 6f20 2f76 6172 2f74 6d70 3a20 4d61 6b65  o /var/tmp: Make
│ │ │ -001e2290: 2073 7572 6520 6e6f 6465 7620 6f70 7469   sure nodev opti
│ │ │ -001e22a0: 6f6e 2069 7320 7061 7274 206f 6620 7468  on is part of th
│ │ │ -001e22b0: 6520 746f 202f 7661 722f 746d 700a 2020  e to /var/tmp.  
│ │ │ -001e22c0: 2020 6f70 7469 6f6e 7327 0a20 2073 6574    options'.  set
│ │ │ -001e22d0: 5f66 6163 743a 0a20 2020 206d 6f75 6e74  _fact:.    mount
│ │ │ -001e22e0: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74  _info: '{{ mount
│ │ │ -001e22f0: 5f69 6e66 6f20 7c20 636f 6d62 696e 6528  _info | combine(
│ │ │ -001e2300: 207b 2727 6f70 7469 6f6e 7327 273a 2727   {''options'':''
│ │ │ -001e2310: 2727 7e28 6d6f 756e 745f 696e 666f 2e6f  ''~(mount_info.o
│ │ │ -001e2320: 7074 696f 6e73 207c 0a20 2020 2020 2064  ptions |.      d
│ │ │ -001e2330: 6566 6175 6c74 2827 2727 2729 297e 2827  efault(''''))~('
│ │ │ -001e2340: 272c 2727 2069 6620 286d 6f75 6e74 5f69  ','' if (mount_i
│ │ │ -001e2350: 6e66 6f2e 6f70 7469 6f6e 7320 7c20 6465  nfo.options | de
│ │ │ -001e2360: 6661 756c 7428 2727 2727 2929 2065 6c73  fault('''')) els
│ │ │ -001e2370: 6520 2727 2727 297e 2727 6e6f 6465 7627  e '''')~''nodev'
│ │ │ -001e2380: 270a 2020 2020 2020 7d29 207d 7d27 0a20  '.      }) }}'. 
│ │ │ -001e2390: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ -001e23a0: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ -001e23b0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001e23c0: 6b61 6765 7320 616e 6420 2272 706d 2d6f  kages and "rpm-o
│ │ │ -001e23d0: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001e23e0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001e23f0: 0a20 2020 2061 6e64 2022 626f 6f74 6322  .    and "bootc"
│ │ │ -001e2400: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001e2410: 732e 7061 636b 6167 6573 2061 6e64 206e  s.packages and n
│ │ │ -001e2420: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ -001e2430: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ -001e2440: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001e2450: 0a20 2020 2061 6e64 2022 6f73 7472 6565  .    and "ostree
│ │ │ -001e2460: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ -001e2470: 635f 636d 646c 696e 6520 2920 616e 6420  c_cmdline ) and 
│ │ │ -001e2480: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ -001e2490: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ -001e24a0: 6520 696e 0a20 2020 205b 2264 6f63 6b65  e in.    ["docke
│ │ │ -001e24b0: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ -001e24c0: 767a 222c 2022 706f 646d 616e 222c 2022  vz", "podman", "
│ │ │ -001e24d0: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ -001e24e0: 2020 2d20 2722 2f76 6172 2f74 6d70 2220    - '"/var/tmp" 
│ │ │ -001e24f0: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ -001e2500: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ -001e2510: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ -001e2520: 7427 0a20 202d 206d 6f75 6e74 5f69 6e66  t'.  - mount_inf
│ │ │ -001e2530: 6f20 6973 2064 6566 696e 6564 2061 6e64  o is defined and
│ │ │ -001e2540: 2022 6e6f 6465 7622 206e 6f74 2069 6e20   "nodev" not in 
│ │ │ -001e2550: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469  (mount_info.opti
│ │ │ -001e2560: 6f6e 7320 7c20 6465 6661 756c 7428 2727  ons | default(''
│ │ │ -001e2570: 2929 0a20 2074 6167 733a 0a20 202d 2063  )).  tags:.  - c
│ │ │ -001e2580: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001e2590: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -001e25a0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -001e25b0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001e25c0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001e25d0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ -001e25e0: 725f 746d 705f 6e6f 6465 760a 2020 2d20  r_tmp_nodev.  - 
│ │ │ -001e25f0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001e2600: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ -001e2610: 6f64 6576 204f 7074 696f 6e20 746f 202f  odev Option to /
│ │ │ -001e2620: 7661 722f 746d 703a 2045 6e73 7572 6520  var/tmp: Ensure 
│ │ │ -001e2630: 2f76 6172 2f74 6d70 2069 7320 6d6f 756e  /var/tmp is moun
│ │ │ -001e2640: 7465 6420 7769 7468 206e 6f64 6576 206f  ted with nodev o
│ │ │ -001e2650: 7074 696f 6e27 0a20 2061 6e73 6962 6c65  ption'.  ansible
│ │ │ -001e2660: 2e70 6f73 6978 2e6d 6f75 6e74 3a0a 2020  .posix.mount:.  
│ │ │ -001e2670: 2020 7061 7468 3a20 2f76 6172 2f74 6d70    path: /var/tmp
│ │ │ -001e2680: 0a20 2020 2073 7263 3a20 277b 7b20 6d6f  .    src: '{{ mo
│ │ │ -001e2690: 756e 745f 696e 666f 2e73 6f75 7263 6520  unt_info.source 
│ │ │ -001e26a0: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ -001e26b0: 7d7d 270a 2020 2020 6f70 7473 3a20 277b  }}'.    opts: '{
│ │ │ -001e26c0: 7b20 6d6f 756e 745f 696e 666f 2e6f 7074  { mount_info.opt
│ │ │ -001e26d0: 696f 6e73 207c 2064 6566 6175 6c74 2827  ions | default('
│ │ │ -001e26e0: 2727 2729 207d 7d27 0a20 2020 2073 7461  ''') }}'.    sta
│ │ │ -001e26f0: 7465 3a20 6d6f 756e 7465 640a 2020 2020  te: mounted.    
│ │ │ -001e2700: 6673 7479 7065 3a20 277b 7b20 6d6f 756e  fstype: '{{ moun
│ │ │ -001e2710: 745f 696e 666f 2e66 7374 7970 6520 7c20  t_info.fstype | 
│ │ │ -001e2720: 6465 6661 756c 7428 2727 2727 2920 7d7d  default('''') }}
│ │ │ -001e2730: 270a 2020 7265 6769 7374 6572 3a20 6d6f  '.  register: mo
│ │ │ -001e2740: 756e 745f 7265 7375 6c74 0a20 2066 6169  unt_result.  fai
│ │ │ -001e2750: 6c65 645f 7768 656e 3a0a 2020 2d20 6d6f  led_when:.  - mo
│ │ │ -001e2760: 756e 745f 7265 7375 6c74 2069 7320 6661  unt_result is fa
│ │ │ -001e2770: 696c 6564 0a20 202d 2027 2727 7461 7267  iled.  - '''targ
│ │ │ -001e2780: 6574 2069 7320 6275 7379 2727 206e 6f74  et is busy'' not
│ │ │ -001e2790: 2069 6e20 286d 6f75 6e74 5f72 6573 756c   in (mount_resul
│ │ │ -001e27a0: 742e 6d73 6720 7c20 6465 6661 756c 7428  t.msg | default(
│ │ │ -001e27b0: 2727 2727 2929 270a 2020 2d20 2727 2761  ''''))'.  - '''a
│ │ │ -001e27c0: 6c72 6561 6479 206d 6f75 6e74 6564 2727  lready mounted''
│ │ │ -001e27d0: 206e 6f74 2069 6e20 286d 6f75 6e74 5f72   not in (mount_r
│ │ │ -001e27e0: 6573 756c 742e 6d73 6720 7c20 6465 6661  esult.msg | defa
│ │ │ -001e27f0: 756c 7428 2727 2727 2929 270a 2020 7768  ult(''''))'.  wh
│ │ │ -001e2800: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ -001e2810: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -001e2820: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001e2830: 6573 2061 6e64 2022 7270 6d2d 6f73 7472  es and "rpm-ostr
│ │ │ -001e2840: 6565 2220 696e 2061 6e73 6962 6c65 5f66  ee" in ansible_f
│ │ │ -001e2850: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -001e2860: 2020 616e 6420 2262 6f6f 7463 2220 696e    and "bootc" in
│ │ │ -001e2870: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001e2880: 6163 6b61 6765 7320 616e 6420 6e6f 7420  ackages and not 
│ │ │ -001e2890: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ -001e28a0: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ -001e28b0: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -001e28c0: 2020 616e 6420 226f 7374 7265 6522 2069    and "ostree" i
│ │ │ -001e28d0: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ -001e28e0: 6d64 6c69 6e65 2029 2061 6e64 206e 6f74  mdline ) and not
│ │ │ -001e28f0: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ -001e2900: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ -001e2910: 6e0a 2020 2020 5b22 646f 636b 6572 222c  n.    ["docker",
│ │ │ -001e2920: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ -001e2930: 2c20 2270 6f64 6d61 6e22 2c20 2263 6f6e  , "podman", "con
│ │ │ -001e2940: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ -001e2950: 2027 222f 7661 722f 746d 7022 2069 6e20   '"/var/tmp" in 
│ │ │ -001e2960: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ -001e2970: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ -001e2980: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ -001e2990: 2020 2d20 6d6f 756e 745f 696e 666f 2069    - mount_info i
│ │ │ -001e29a0: 7320 6465 6669 6e65 640a 2020 2d20 2864  s defined.  - (d
│ │ │ -001e29b0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001e29c0: 7420 6973 2064 6566 696e 6564 2061 6e64  t is defined and
│ │ │ -001e29d0: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ -001e29e0: 646f 7574 207c 206c 656e 6774 6820 2667  dout | length &g
│ │ │ -001e29f0: 743b 2030 2929 206f 7220 2822 2d2d 6673  t; 0)) or ("--fs
│ │ │ -001e2a00: 7461 6222 0a20 2020 207c 206c 656e 6774  tab".    | lengt
│ │ │ -001e2a10: 6820 3d3d 2030 290a 2020 7461 6773 3a0a  h == 0).  tags:.
│ │ │ -001e2a20: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ -001e2a30: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ -001e2a40: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -001e2a50: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -001e2a60: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -001e2a70: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ -001e2a80: 6f6e 5f76 6172 5f74 6d70 5f6e 6f64 6576  on_var_tmp_nodev
│ │ │ -001e2a90: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -001e2aa0: 6565 6465 640a 3c2f 636f 6465 3e3c 2f70  eeded.

Remediatio │ │ │ -001e2b60: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ -001e2b70: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
Comp │ │ │ -001e1630: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -001e1640: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -001e1660: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ -001e1680: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001e1690: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -001e16b0: 2f74 683e 3c74 643e 636f 6e66 6967 7572 /th>configur │ │ │ -001e16c0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ -001e2bf0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -001e2c00: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
Reboot:false
│ │ │ -001e2c20: 3c63 6f64 653e 2320 5265 6d65 6469 6174  # Remediat
│ │ │ -001e2c30: 696f 6e20 6973 2061 7070 6c69 6361 626c  ion is applicabl
│ │ │ -001e2c40: 6520 6f6e 6c79 2069 6e20 6365 7274 6169  e only in certai
│ │ │ -001e2c50: 6e20 706c 6174 666f 726d 730a 6966 2028  n platforms.if (
│ │ │ -001e2c60: 2021 2028 207b 2072 706d 202d 2d71 7569   ! ( { rpm --qui
│ │ │ -001e2c70: 6574 202d 7120 6b65 726e 656c 203b 7d20  et -q kernel ;} 
│ │ │ -001e2c80: 2661 6d70 3b26 616d 703b 207b 2072 706d  && { rpm
│ │ │ -001e2c90: 202d 2d71 7569 6574 202d 7120 7270 6d2d   --quiet -q rpm-
│ │ │ -001e2ca0: 6f73 7472 6565 203b 7d20 2661 6d70 3b26  ostree ;} &&
│ │ │ -001e2cb0: 616d 703b 207b 2072 706d 202d 2d71 7569  amp; { rpm --qui
│ │ │ -001e2cc0: 6574 202d 7120 626f 6f74 6320 3b7d 2026  et -q bootc ;} &
│ │ │ -001e2cd0: 616d 703b 2661 6d70 3b20 7b20 2120 7270  amp;& { ! rp
│ │ │ -001e2ce0: 6d20 2d2d 7175 6965 7420 2d71 206f 7065  m --quiet -q ope
│ │ │ -001e2cf0: 6e73 6869 6674 2d6b 7562 656c 6574 203b  nshift-kubelet ;
│ │ │ -001e2d00: 7d20 2661 6d70 3b26 616d 703b 2028 5b20  } && ([ 
│ │ │ -001e2d10: 2d66 202f 7275 6e2f 6f73 7472 6565 2d62  -f /run/ostree-b
│ │ │ -001e2d20: 6f6f 7465 6420 5d20 7c7c 205b 202d 4c20  ooted ] || [ -L 
│ │ │ -001e2d30: 2f6f 7374 7265 6520 5d29 2029 2026 616d  /ostree ]) ) &am
│ │ │ -001e2d40: 703b 2661 6d70 3b20 2120 2820 5b20 2d66  p;& ! ( [ -f
│ │ │ -001e2d50: 202f 2e64 6f63 6b65 7265 6e76 205d 207c   /.dockerenv ] |
│ │ │ -001e2d60: 7c20 5b20 2d66 202f 7275 6e2f 2e63 6f6e  | [ -f /run/.con
│ │ │ -001e2d70: 7461 696e 6572 656e 7620 5d20 2920 2920  tainerenv ] ) ) 
│ │ │ -001e2d80: 2661 6d70 3b26 616d 703b 207b 2028 2066  && { ( f
│ │ │ -001e2d90: 696e 646d 6e74 202d 2d6b 6572 6e65 6c20  indmnt --kernel 
│ │ │ -001e2da0: 222f 7661 722f 746d 7022 2026 6774 3b20  "/var/tmp" > 
│ │ │ -001e2db0: 2f64 6576 2f6e 756c 6c20 7c7c 2066 696e  /dev/null || fin
│ │ │ -001e2dc0: 646d 6e74 202d 2d66 7374 6162 2022 2f76  dmnt --fstab "/v
│ │ │ -001e2dd0: 6172 2f74 6d70 2220 2667 743b 202f 6465  ar/tmp" > /de
│ │ │ -001e2de0: 762f 6e75 6c6c 2029 3b20 7d3b 2074 6865  v/null ); }; the
│ │ │ -001e2df0: 6e0a 0a66 756e 6374 696f 6e20 7065 7266  n..function perf
│ │ │ -001e2e00: 6f72 6d5f 7265 6d65 6469 6174 696f 6e20  orm_remediation 
│ │ │ -001e2e10: 7b0a 0a20 2020 200a 2020 2020 2020 2020  {..    .        
│ │ │ -001e2e20: 2320 7468 6520 6d6f 756e 7420 706f 696e  # the mount poin
│ │ │ -001e2e30: 7420 2f76 6172 2f74 6d70 2068 6173 2074  t /var/tmp has t
│ │ │ -001e2e40: 6f20 6265 2064 6566 696e 6564 2069 6e20  o be defined in 
│ │ │ -001e2e50: 2f65 7463 2f66 7374 6162 0a20 2020 2020  /etc/fstab.     
│ │ │ -001e2e60: 2020 2023 2062 6566 6f72 6520 7468 6973     # before this
│ │ │ -001e2e70: 2072 656d 6564 6961 7469 6f6e 2063 616e   remediation can
│ │ │ -001e2e80: 2062 6520 6578 6563 7574 6564 2e20 496e   be executed. In
│ │ │ -001e2e90: 2063 6173 6520 6974 2069 7320 6e6f 7420   case it is not 
│ │ │ -001e2ea0: 6465 6669 6e65 642c 2074 6865 0a20 2020  defined, the.   
│ │ │ -001e2eb0: 2020 2020 2023 2072 656d 6564 6961 7469       # remediati
│ │ │ -001e2ec0: 6f6e 2061 626f 7274 7320 616e 6420 6e6f  on aborts and no
│ │ │ -001e2ed0: 2063 6861 6e67 6573 2072 6567 6172 6469   changes regardi
│ │ │ -001e2ee0: 6e67 2074 6865 206d 6f75 6e74 2070 6f69  ng the mount poi
│ │ │ -001e2ef0: 6e74 2061 7265 2064 6f6e 652e 0a20 2020  nt are done..   
│ │ │ -001e2f00: 2020 2020 206d 6f75 6e74 5f70 6f69 6e74       mount_point
│ │ │ -001e2f10: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ -001e2f20: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ -001e2f30: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ -001e2f40: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ -001e2f50: 653a 5d5d 2220 222f 7661 722f 746d 7022  e:]]" "/var/tmp"
│ │ │ -001e2f60: 2922 0a0a 2020 2020 6772 6570 2022 246d  )"..    grep "$m
│ │ │ -001e2f70: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001e2f80: 5f72 6567 6578 7022 202d 7120 2f65 7463  _regexp" -q /etc
│ │ │ -001e2f90: 2f66 7374 6162 205c 0a20 2020 2020 2020  /fstab \.       
│ │ │ -001e2fa0: 207c 7c20 7b20 6563 686f 2022 5468 6520   || { echo "The 
│ │ │ -001e2fb0: 6d6f 756e 7420 706f 696e 7420 272f 7661  mount point '/va
│ │ │ -001e2fc0: 722f 746d 7027 2069 7320 6e6f 7420 6576  r/tmp' is not ev
│ │ │ -001e2fd0: 656e 2069 6e20 2f65 7463 2f66 7374 6162  en in /etc/fstab
│ │ │ -001e2fe0: 2c20 736f 2077 6520 6361 6e27 7420 7365  , so we can't se
│ │ │ -001e2ff0: 7420 7570 206d 6f75 6e74 206f 7074 696f  t up mount optio
│ │ │ -001e3000: 6e73 2220 2667 743b 2661 6d70 3b32 3b0a  ns" >&2;.
│ │ │ -001e3010: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -001e3020: 6563 686f 2022 4e6f 7420 7265 6d65 6469  echo "Not remedi
│ │ │ -001e3030: 6174 696e 672c 2062 6563 6175 7365 2074  ating, because t
│ │ │ -001e3040: 6865 7265 2069 7320 6e6f 2072 6563 6f72  here is no recor
│ │ │ -001e3050: 6420 6f66 202f 7661 722f 746d 7020 696e  d of /var/tmp in
│ │ │ -001e3060: 202f 6574 632f 6673 7461 6222 2026 6774   /etc/fstab" >
│ │ │ -001e3070: 3b26 616d 703b 323b 2072 6574 7572 6e20  ;&2; return 
│ │ │ -001e3080: 313b 207d 0a20 2020 200a 0a0a 2020 2020  1; }.    ...    
│ │ │ -001e3090: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001e30a0: 685f 7265 6765 7870 3d22 2428 7072 696e  h_regexp="$(prin
│ │ │ -001e30b0: 7466 2022 5e5b 5b3a 7370 6163 653a 5d5d  tf "^[[:space:]]
│ │ │ -001e30c0: 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163 653a  *[^#].*[[:space:
│ │ │ -001e30d0: 5d5d 2573 5b5b 3a73 7061 6365 3a5d 5d22  ]]%s[[:space:]]"
│ │ │ -001e30e0: 202f 7661 722f 746d 7029 220a 0a20 2020   /var/tmp)"..   
│ │ │ -001e30f0: 2023 2049 6620 7468 6520 6d6f 756e 7420   # If the mount 
│ │ │ -001e3100: 706f 696e 7420 6973 206e 6f74 2069 6e20  point is not in 
│ │ │ -001e3110: 2f65 7463 2f66 7374 6162 2c20 6765 7420  /etc/fstab, get 
│ │ │ -001e3120: 7072 6576 696f 7573 206d 6f75 6e74 206f  previous mount o
│ │ │ -001e3130: 7074 696f 6e73 2066 726f 6d20 2f65 7463  ptions from /etc
│ │ │ -001e3140: 2f6d 7461 620a 2020 2020 6966 2021 2067  /mtab.    if ! g
│ │ │ -001e3150: 7265 7020 2d71 2022 246d 6f75 6e74 5f70  rep -q "$mount_p
│ │ │ -001e3160: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001e3170: 7022 202f 6574 632f 6673 7461 623b 2074  p" /etc/fstab; t
│ │ │ -001e3180: 6865 6e0a 2020 2020 2020 2020 2320 7275  hen.        # ru
│ │ │ -001e3190: 6e74 696d 6520 6f70 7473 2077 6974 686f  ntime opts witho
│ │ │ -001e31a0: 7574 2073 6f6d 6520 6175 746f 6d61 7469  ut some automati
│ │ │ -001e31b0: 6320 6b65 726e 656c 2f75 7365 7273 7061  c kernel/userspa
│ │ │ -001e31c0: 6365 2d61 6464 6564 2064 6566 6175 6c74  ce-added default
│ │ │ -001e31d0: 730a 2020 2020 2020 2020 7072 6576 696f  s.        previo
│ │ │ -001e31e0: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ -001e31f0: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ -001e3200: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ -001e3210: 202f 6574 632f 6d74 6162 207c 2068 6561   /etc/mtab | hea
│ │ │ -001e3220: 6420 2d31 207c 2020 6177 6b20 277b 7072  d -1 |  awk '{pr
│ │ │ -001e3230: 696e 7420 2434 7d27 205c 0a20 2020 2020  int $4}' \.     
│ │ │ -001e3240: 2020 2020 2020 2020 2020 2020 2020 207c                 |
│ │ │ -001e3250: 2073 6564 202d 4520 2273 2f28 7277 7c64   sed -E "s/(rw|d
│ │ │ -001e3260: 6566 6175 6c74 737c 7365 636c 6162 656c  efaults|seclabel
│ │ │ -001e3270: 7c6e 6f64 6576 2928 2c7c 2429 2f2f 673b  |nodev)(,|$)//g;
│ │ │ -001e3280: 732f 2c24 2f2f 2229 0a20 2020 2020 2020  s/,$//").       
│ │ │ -001e3290: 205b 2022 2470 7265 7669 6f75 735f 6d6f   [ "$previous_mo
│ │ │ -001e32a0: 756e 745f 6f70 7473 2220 5d20 2661 6d70  unt_opts" ] &
│ │ │ -001e32b0: 3b26 616d 703b 2070 7265 7669 6f75 735f  ;& previous_
│ │ │ -001e32c0: 6d6f 756e 745f 6f70 7473 2b3d 222c 220a  mount_opts+=",".
│ │ │ -001e32d0: 2020 2020 2020 2020 2320 496e 2069 736f          # In iso
│ │ │ -001e32e0: 3936 3630 2066 696c 6573 7973 7465 6d73  9660 filesystems
│ │ │ -001e32f0: 206d 7461 6220 636f 756c 6420 6465 7363   mtab could desc
│ │ │ -001e3300: 7269 6265 2061 2022 626c 6f63 6b73 697a  ribe a "blocksiz
│ │ │ -001e3310: 6522 2076 616c 7565 2c20 7468 6973 2073  e" value, this s
│ │ │ -001e3320: 686f 756c 6420 6265 2072 6566 6c65 6374  hould be reflect
│ │ │ -001e3330: 6564 2069 6e0a 2020 2020 2020 2020 2320  ed in.        # 
│ │ │ -001e3340: 6673 7461 6220 6173 2022 626c 6f63 6b22  fstab as "block"
│ │ │ -001e3350: 2e20 2054 6865 206e 6578 7420 7661 7269  .  The next vari
│ │ │ -001e3360: 6162 6c65 2069 7320 746f 2073 6174 6973  able is to satis
│ │ │ -001e3370: 6679 2073 6865 6c6c 6368 6563 6b20 5343  fy shellcheck SC
│ │ │ -001e3380: 3230 3530 2e0a 2020 2020 2020 2020 6673  2050..        fs
│ │ │ -001e3390: 5f74 7970 653d 2222 0a20 2020 2020 2020  _type="".       
│ │ │ -001e33a0: 2069 6620 5b20 2022 2466 735f 7479 7065   if [  "$fs_type
│ │ │ -001e33b0: 2220 3d3d 2022 6973 6f39 3636 3022 205d  " == "iso9660" ]
│ │ │ -001e33c0: 203b 2074 6865 6e0a 2020 2020 2020 2020   ; then.        
│ │ │ -001e33d0: 2020 2020 7072 6576 696f 7573 5f6d 6f75      previous_mou
│ │ │ -001e33e0: 6e74 5f6f 7074 733d 2428 7365 6420 2773  nt_opts=$(sed 's
│ │ │ -001e33f0: 2f62 6c6f 636b 7369 7a65 3d2f 626c 6f63  /blocksize=/bloc
│ │ │ -001e3400: 6b3d 2f27 2026 6c74 3b26 6c74 3b26 6c74  k=/' <<<
│ │ │ -001e3410: 3b20 2224 7072 6576 696f 7573 5f6d 6f75  ; "$previous_mou
│ │ │ -001e3420: 6e74 5f6f 7074 7322 290a 2020 2020 2020  nt_opts").      
│ │ │ -001e3430: 2020 6669 0a20 2020 2020 2020 2065 6368    fi.        ech
│ │ │ -001e3440: 6f20 2220 2f76 6172 2f74 6d70 2020 6465  o " /var/tmp  de
│ │ │ -001e3450: 6661 756c 7473 2c24 7b70 7265 7669 6f75  faults,${previou
│ │ │ -001e3460: 735f 6d6f 756e 745f 6f70 7473 7d6e 6f64  s_mount_opts}nod
│ │ │ -001e3470: 6576 2030 2030 2220 2667 743b 2667 743b  ev 0 0" >>
│ │ │ -001e3480: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ -001e3490: 2320 4966 2074 6865 206d 6f75 6e74 5f6f  # If the mount_o
│ │ │ -001e34a0: 7074 206f 7074 696f 6e20 6973 206e 6f74  pt option is not
│ │ │ -001e34b0: 2061 6c72 6561 6479 2069 6e20 7468 6520   already in the 
│ │ │ -001e34c0: 6d6f 756e 7420 706f 696e 7427 7320 2f65  mount point's /e
│ │ │ -001e34d0: 7463 2f66 7374 6162 2065 6e74 7279 2c20  tc/fstab entry, 
│ │ │ -001e34e0: 6164 6420 6974 0a20 2020 2065 6c69 6620  add it.    elif 
│ │ │ -001e34f0: 2120 6772 6570 2022 246d 6f75 6e74 5f70  ! grep "$mount_p
│ │ │ -001e3500: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001e3510: 7022 202f 6574 632f 6673 7461 6220 7c20  p" /etc/fstab | 
│ │ │ -001e3520: 6772 6570 202d 7120 226e 6f64 6576 223b  grep -q "nodev";
│ │ │ -001e3530: 2074 6865 6e0a 2020 2020 2020 2020 7072   then.        pr
│ │ │ -001e3540: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001e3550: 733d 2428 6772 6570 2022 246d 6f75 6e74  s=$(grep "$mount
│ │ │ -001e3560: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001e3570: 6578 7022 202f 6574 632f 6673 7461 6220  exp" /etc/fstab 
│ │ │ -001e3580: 7c20 6177 6b20 277b 7072 696e 7420 2434  | awk '{print $4
│ │ │ -001e3590: 7d27 290a 2020 2020 2020 2020 7365 6420  }').        sed 
│ │ │ -001e35a0: 2d69 2022 737c 5c28 247b 6d6f 756e 745f  -i "s|\(${mount_
│ │ │ -001e35b0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001e35c0: 7870 7d2e 2a24 7b70 7265 7669 6f75 735f  xp}.*${previous_
│ │ │ -001e35d0: 6d6f 756e 745f 6f70 7473 7d5c 297c 5c31  mount_opts}\)|\1
│ │ │ -001e35e0: 2c6e 6f64 6576 7c22 202f 6574 632f 6673  ,nodev|" /etc/fs
│ │ │ -001e35f0: 7461 620a 2020 2020 6669 0a0a 0a20 2020  tab.    fi...   
│ │ │ -001e3600: 2069 6620 6d6b 6469 7220 2d70 2022 2f76   if mkdir -p "/v
│ │ │ -001e3610: 6172 2f74 6d70 223b 2074 6865 6e0a 2020  ar/tmp"; then.  
│ │ │ -001e3620: 2020 2020 2020 6966 206d 6f75 6e74 706f        if mountpo
│ │ │ -001e3630: 696e 7420 2d71 2022 2f76 6172 2f74 6d70  int -q "/var/tmp
│ │ │ -001e3640: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ -001e3650: 2020 2020 6d6f 756e 7420 2d6f 2072 656d      mount -o rem
│ │ │ -001e3660: 6f75 6e74 202d 2d74 6172 6765 7420 222f  ount --target "/
│ │ │ -001e3670: 7661 722f 746d 7022 0a20 2020 2020 2020  var/tmp".       
│ │ │ -001e3680: 2066 690a 2020 2020 6669 0a7d 0a0a 7065   fi.    fi.}..pe
│ │ │ -001e3690: 7266 6f72 6d5f 7265 6d65 6469 6174 696f  rform_remediatio
│ │ │ -001e36a0: 6e0a 0a65 6c73 650a 2020 2020 2667 743b  n..else.    >
│ │ │ -001e36b0: 2661 6d70 3b32 2065 6368 6f20 2752 656d  &2 echo 'Rem
│ │ │ -001e36c0: 6564 6961 7469 6f6e 2069 7320 6e6f 7420  ediation is not 
│ │ │ -001e36d0: 6170 706c 6963 6162 6c65 2c20 6e6f 7468  applicable, noth
│ │ │ -001e36e0: 696e 6720 7761 7320 646f 6e65 270a 6669  ing was done'.fi
│ │ │ +001e1370: 416e 7369 626c 6520 736e 6970 7065 7420  Ansible snippet 
│ │ │ +001e1380: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620  ...
Complexity: │ │ │ +001e1410: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +001e1430: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:high │ │ │ +001e1450: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +001e1460: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +001e1480: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:configure< │ │ │ +001e14a0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
- name: G
│ │ │ +001e14c0: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ +001e14d0: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ +001e14e0: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ +001e14f0: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ +001e1500: 733a 0a20 202d 2063 6f6e 6669 6775 7265  s:.  - configure
│ │ │ +001e1510: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +001e1520: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +001e1530: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +001e1540: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +001e1550: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ +001e1560: 7074 696f 6e5f 7661 725f 746d 705f 6e6f  ption_var_tmp_no
│ │ │ +001e1570: 6465 760a 2020 2d20 6e6f 5f72 6562 6f6f  dev.  - no_reboo
│ │ │ +001e1580: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ +001e1590: 3a20 2741 6464 206e 6f64 6576 204f 7074  : 'Add nodev Opt
│ │ │ +001e15a0: 696f 6e20 746f 202f 7661 722f 746d 703a  ion to /var/tmp:
│ │ │ +001e15b0: 2043 6865 636b 2069 6e66 6f72 6d61 7469   Check informati
│ │ │ +001e15c0: 6f6e 2061 7373 6f63 6961 7465 6420 746f  on associated to
│ │ │ +001e15d0: 206d 6f75 6e74 706f 696e 7427 0a20 2061   mountpoint'.  a
│ │ │ +001e15e0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ +001e15f0: 6f6d 6d61 6e64 3a20 6669 6e64 6d6e 7420  ommand: findmnt 
│ │ │ +001e1600: 2d2d 6673 7461 6220 272f 7661 722f 746d  --fstab '/var/tm
│ │ │ +001e1610: 7027 0a20 2072 6567 6973 7465 723a 2064  p'.  register: d
│ │ │ +001e1620: 6576 6963 655f 6e61 6d65 0a20 2066 6169  evice_name.  fai
│ │ │ +001e1630: 6c65 645f 7768 656e 3a20 6465 7669 6365  led_when: device
│ │ │ +001e1640: 5f6e 616d 652e 7263 2026 6774 3b20 310a  _name.rc > 1.
│ │ │ +001e1650: 2020 6368 616e 6765 645f 7768 656e 3a20    changed_when: 
│ │ │ +001e1660: 6661 6c73 650a 2020 6368 6563 6b5f 6d6f  false.  check_mo
│ │ │ +001e1670: 6465 3a20 6661 6c73 650a 2020 7768 656e  de: false.  when
│ │ │ +001e1680: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ +001e1690: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +001e16a0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001e16b0: 2061 6e64 2022 7270 6d2d 6f73 7472 6565   and "rpm-ostree
│ │ │ +001e16c0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001e16d0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +001e16e0: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ +001e16f0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001e1700: 6b61 6765 7320 616e 6420 6e6f 7420 226f  kages and not "o
│ │ │ +001e1710: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ +001e1720: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001e1730: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +001e1740: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ +001e1750: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ +001e1760: 6c69 6e65 2029 2061 6e64 206e 6f74 2028  line ) and not (
│ │ │ +001e1770: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ +001e1780: 697a 6174 696f 6e5f 7479 7065 2069 6e0a  ization_type in.
│ │ │ +001e1790: 2020 2020 5b22 646f 636b 6572 222c 2022      ["docker", "
│ │ │ +001e17a0: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ +001e17b0: 2270 6f64 6d61 6e22 2c20 2263 6f6e 7461  "podman", "conta
│ │ │ +001e17c0: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ +001e17d0: 222f 7661 722f 746d 7022 2069 6e20 616e  "/var/tmp" in an
│ │ │ +001e17e0: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ +001e17f0: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ +001e1800: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ +001e1810: 7461 6773 3a0a 2020 2d20 636f 6e66 6967  tags:.  - config
│ │ │ +001e1820: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +001e1830: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ +001e1840: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001e1850: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ +001e1860: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ +001e1870: 745f 6f70 7469 6f6e 5f76 6172 5f74 6d70  t_option_var_tmp
│ │ │ +001e1880: 5f6e 6f64 6576 0a20 202d 206e 6f5f 7265  _nodev.  - no_re
│ │ │ +001e1890: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ +001e18a0: 616d 653a 2027 4164 6420 6e6f 6465 7620  ame: 'Add nodev 
│ │ │ +001e18b0: 4f70 7469 6f6e 2074 6f20 2f76 6172 2f74  Option to /var/t
│ │ │ +001e18c0: 6d70 3a20 4372 6561 7465 206d 6f75 6e74  mp: Create mount
│ │ │ +001e18d0: 5f69 6e66 6f20 6469 6374 696f 6e61 7279  _info dictionary
│ │ │ +001e18e0: 2076 6172 6961 626c 6527 0a20 2073 6574   variable'.  set
│ │ │ +001e18f0: 5f66 6163 743a 0a20 2020 206d 6f75 6e74  _fact:.    mount
│ │ │ +001e1900: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74  _info: '{{ mount
│ │ │ +001e1910: 5f69 6e66 6f7c 6465 6661 756c 7428 7b7d  _info|default({}
│ │ │ +001e1920: 297c 636f 6d62 696e 6528 7b69 7465 6d2e  )|combine({item.
│ │ │ +001e1930: 303a 2069 7465 6d2e 317d 2920 7d7d 270a  0: item.1}) }}'.
│ │ │ +001e1940: 2020 7769 7468 5f74 6f67 6574 6865 723a    with_together:
│ │ │ +001e1950: 0a20 202d 2027 7b7b 2064 6576 6963 655f  .  - '{{ device_
│ │ │ +001e1960: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ +001e1970: 735b 305d 2e73 706c 6974 2829 207c 206d  s[0].split() | m
│ │ │ +001e1980: 6170 2827 276c 6f77 6572 2727 2920 7c20  ap(''lower'') | 
│ │ │ +001e1990: 6c69 7374 207d 7d27 0a20 202d 2027 7b7b  list }}'.  - '{{
│ │ │ +001e19a0: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +001e19b0: 6f75 745f 6c69 6e65 735b 315d 2e73 706c  out_lines[1].spl
│ │ │ +001e19c0: 6974 2829 207c 206c 6973 7420 7d7d 270a  it() | list }}'.
│ │ │ +001e19d0: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ +001e19e0: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ +001e19f0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001e1a00: 636b 6167 6573 2061 6e64 2022 7270 6d2d  ckages and "rpm-
│ │ │ +001e1a10: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001e1a20: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001e1a30: 730a 2020 2020 616e 6420 2262 6f6f 7463  s.    and "bootc
│ │ │ +001e1a40: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001e1a50: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001e1a60: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ +001e1a70: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ +001e1a80: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001e1a90: 730a 2020 2020 616e 6420 226f 7374 7265  s.    and "ostre
│ │ │ +001e1aa0: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ +001e1ab0: 6f63 5f63 6d64 6c69 6e65 2029 2061 6e64  oc_cmdline ) and
│ │ │ +001e1ac0: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ +001e1ad0: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ +001e1ae0: 7065 2069 6e0a 2020 2020 5b22 646f 636b  pe in.    ["dock
│ │ │ +001e1af0: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ +001e1b00: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c20  nvz", "podman", 
│ │ │ +001e1b10: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ +001e1b20: 0a20 202d 2027 222f 7661 722f 746d 7022  .  - '"/var/tmp"
│ │ │ +001e1b30: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ +001e1b40: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ +001e1b50: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ +001e1b60: 7374 270a 2020 2d20 6465 7669 6365 5f6e  st'.  - device_n
│ │ │ +001e1b70: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ +001e1b80: 6669 6e65 6420 616e 6420 6465 7669 6365  fined and device
│ │ │ +001e1b90: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ +001e1ba0: 6573 2069 7320 6465 6669 6e65 640a 2020  es is defined.  
│ │ │ +001e1bb0: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ +001e1bc0: 7464 6f75 7420 7c20 6c65 6e67 7468 2026  tdout | length &
│ │ │ +001e1bd0: 6774 3b20 3029 0a20 2074 6167 733a 0a20  gt; 0).  tags:. 
│ │ │ +001e1be0: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ +001e1bf0: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ +001e1c00: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +001e1c10: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +001e1c20: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +001e1c30: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ +001e1c40: 6e5f 7661 725f 746d 705f 6e6f 6465 760a  n_var_tmp_nodev.
│ │ │ +001e1c50: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001e1c60: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001e1c70: 6464 206e 6f64 6576 204f 7074 696f 6e20  dd nodev Option 
│ │ │ +001e1c80: 746f 202f 7661 722f 746d 703a 2049 6620  to /var/tmp: If 
│ │ │ +001e1c90: 2f76 6172 2f74 6d70 206e 6f74 206d 6f75  /var/tmp not mou
│ │ │ +001e1ca0: 6e74 6564 2c20 6372 6166 7420 6d6f 756e  nted, craft moun
│ │ │ +001e1cb0: 745f 696e 666f 206d 616e 7561 6c6c 7927  t_info manually'
│ │ │ +001e1cc0: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ +001e1cd0: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b   mount_info: '{{
│ │ │ +001e1ce0: 206d 6f75 6e74 5f69 6e66 6f7c 6465 6661   mount_info|defa
│ │ │ +001e1cf0: 756c 7428 7b7d 297c 636f 6d62 696e 6528  ult({})|combine(
│ │ │ +001e1d00: 7b69 7465 6d2e 303a 2069 7465 6d2e 317d  {item.0: item.1}
│ │ │ +001e1d10: 2920 7d7d 270a 2020 7769 7468 5f74 6f67  ) }}'.  with_tog
│ │ │ +001e1d20: 6574 6865 723a 0a20 202d 202d 2074 6172  ether:.  - - tar
│ │ │ +001e1d30: 6765 740a 2020 2020 2d20 736f 7572 6365  get.    - source
│ │ │ +001e1d40: 0a20 2020 202d 2066 7374 7970 650a 2020  .    - fstype.  
│ │ │ +001e1d50: 2020 2d20 6f70 7469 6f6e 730a 2020 2d20    - options.  - 
│ │ │ +001e1d60: 2d20 2f76 6172 2f74 6d70 0a20 2020 202d  - /var/tmp.    -
│ │ │ +001e1d70: 2027 270a 2020 2020 2d20 2727 0a20 2020   ''.    - ''.   
│ │ │ +001e1d80: 202d 2064 6566 6175 6c74 730a 2020 7768   - defaults.  wh
│ │ │ +001e1d90: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ +001e1da0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +001e1db0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001e1dc0: 6573 2061 6e64 2022 7270 6d2d 6f73 7472  es and "rpm-ostr
│ │ │ +001e1dd0: 6565 2220 696e 2061 6e73 6962 6c65 5f66  ee" in ansible_f
│ │ │ +001e1de0: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001e1df0: 2020 616e 6420 2262 6f6f 7463 2220 696e    and "bootc" in
│ │ │ +001e1e00: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001e1e10: 6163 6b61 6765 7320 616e 6420 6e6f 7420  ackages and not 
│ │ │ +001e1e20: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +001e1e30: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +001e1e40: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001e1e50: 2020 616e 6420 226f 7374 7265 6522 2069    and "ostree" i
│ │ │ +001e1e60: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ +001e1e70: 6d64 6c69 6e65 2029 2061 6e64 206e 6f74  mdline ) and not
│ │ │ +001e1e80: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +001e1e90: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +001e1ea0: 6e0a 2020 2020 5b22 646f 636b 6572 222c  n.    ["docker",
│ │ │ +001e1eb0: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ +001e1ec0: 2c20 2270 6f64 6d61 6e22 2c20 2263 6f6e  , "podman", "con
│ │ │ +001e1ed0: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ +001e1ee0: 2027 222f 7661 722f 746d 7022 2069 6e20   '"/var/tmp" in 
│ │ │ +001e1ef0: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ +001e1f00: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ +001e1f10: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ +001e1f20: 2020 2d20 2822 2d2d 6673 7461 6222 207c    - ("--fstab" |
│ │ │ +001e1f30: 206c 656e 6774 6820 3d3d 2030 290a 2020   length == 0).  
│ │ │ +001e1f40: 2d20 6465 7669 6365 5f6e 616d 652e 7374  - device_name.st
│ │ │ +001e1f50: 646f 7574 2069 7320 6465 6669 6e65 6420  dout is defined 
│ │ │ +001e1f60: 616e 6420 6465 7669 6365 5f6e 616d 652e  and device_name.
│ │ │ +001e1f70: 7374 646f 7574 5f6c 696e 6573 2069 7320  stdout_lines is 
│ │ │ +001e1f80: 6465 6669 6e65 640a 2020 2d20 2864 6576  defined.  - (dev
│ │ │ +001e1f90: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ +001e1fa0: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ +001e1fb0: 2074 6167 733a 0a20 202d 2063 6f6e 6669   tags:.  - confi
│ │ │ +001e1fc0: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001e1fd0: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001e1fe0: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001e1ff0: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001e2000: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001e2010: 6e74 5f6f 7074 696f 6e5f 7661 725f 746d  nt_option_var_tm
│ │ │ +001e2020: 705f 6e6f 6465 760a 2020 2d20 6e6f 5f72  p_nodev.  - no_r
│ │ │ +001e2030: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +001e2040: 6e61 6d65 3a20 2741 6464 206e 6f64 6576  name: 'Add nodev
│ │ │ +001e2050: 204f 7074 696f 6e20 746f 202f 7661 722f   Option to /var/
│ │ │ +001e2060: 746d 703a 204d 616b 6520 7375 7265 206e  tmp: Make sure n
│ │ │ +001e2070: 6f64 6576 206f 7074 696f 6e20 6973 2070  odev option is p
│ │ │ +001e2080: 6172 7420 6f66 2074 6865 2074 6f20 2f76  art of the to /v
│ │ │ +001e2090: 6172 2f74 6d70 0a20 2020 206f 7074 696f  ar/tmp.    optio
│ │ │ +001e20a0: 6e73 270a 2020 7365 745f 6661 6374 3a0a  ns'.  set_fact:.
│ │ │ +001e20b0: 2020 2020 6d6f 756e 745f 696e 666f 3a20      mount_info: 
│ │ │ +001e20c0: 277b 7b20 6d6f 756e 745f 696e 666f 207c  '{{ mount_info |
│ │ │ +001e20d0: 2063 6f6d 6269 6e65 2820 7b27 276f 7074   combine( {''opt
│ │ │ +001e20e0: 696f 6e73 2727 3a27 2727 277e 286d 6f75  ions'':''''~(mou
│ │ │ +001e20f0: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ +001e2100: 7c0a 2020 2020 2020 6465 6661 756c 7428  |.      default(
│ │ │ +001e2110: 2727 2727 2929 7e28 2727 2c27 2720 6966  ''''))~('','' if
│ │ │ +001e2120: 2028 6d6f 756e 745f 696e 666f 2e6f 7074   (mount_info.opt
│ │ │ +001e2130: 696f 6e73 207c 2064 6566 6175 6c74 2827  ions | default('
│ │ │ +001e2140: 2727 2729 2920 656c 7365 2027 2727 2729  ''')) else '''')
│ │ │ +001e2150: 7e27 276e 6f64 6576 2727 0a20 2020 2020  ~''nodev''.     
│ │ │ +001e2160: 207d 2920 7d7d 270a 2020 7768 656e 3a0a   }) }}'.  when:.
│ │ │ +001e2170: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ +001e2180: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +001e2190: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001e21a0: 6e64 2022 7270 6d2d 6f73 7472 6565 2220  nd "rpm-ostree" 
│ │ │ +001e21b0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001e21c0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001e21d0: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ +001e21e0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001e21f0: 6765 7320 616e 6420 6e6f 7420 226f 7065  ges and not "ope
│ │ │ +001e2200: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ +001e2210: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001e2220: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001e2230: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ +001e2240: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ +001e2250: 6e65 2029 2061 6e64 206e 6f74 2028 2061  ne ) and not ( a
│ │ │ +001e2260: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ +001e2270: 6174 696f 6e5f 7479 7065 2069 6e0a 2020  ation_type in.  
│ │ │ +001e2280: 2020 5b22 646f 636b 6572 222c 2022 6c78    ["docker", "lx
│ │ │ +001e2290: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ +001e22a0: 6f64 6d61 6e22 2c20 2263 6f6e 7461 696e  odman", "contain
│ │ │ +001e22b0: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ +001e22c0: 7661 722f 746d 7022 2069 6e20 616e 7369  var/tmp" in ansi
│ │ │ +001e22d0: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ +001e22e0: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ +001e22f0: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ +001e2300: 6d6f 756e 745f 696e 666f 2069 7320 6465  mount_info is de
│ │ │ +001e2310: 6669 6e65 6420 616e 6420 226e 6f64 6576  fined and "nodev
│ │ │ +001e2320: 2220 6e6f 7420 696e 2028 6d6f 756e 745f  " not in (mount_
│ │ │ +001e2330: 696e 666f 2e6f 7074 696f 6e73 207c 2064  info.options | d
│ │ │ +001e2340: 6566 6175 6c74 2827 2729 290a 2020 7461  efault('')).  ta
│ │ │ +001e2350: 6773 3a0a 2020 2d20 636f 6e66 6967 7572  gs:.  - configur
│ │ │ +001e2360: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ +001e2370: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ +001e2380: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +001e2390: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +001e23a0: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ +001e23b0: 6f70 7469 6f6e 5f76 6172 5f74 6d70 5f6e  option_var_tmp_n
│ │ │ +001e23c0: 6f64 6576 0a20 202d 206e 6f5f 7265 626f  odev.  - no_rebo
│ │ │ +001e23d0: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +001e23e0: 653a 2027 4164 6420 6e6f 6465 7620 4f70  e: 'Add nodev Op
│ │ │ +001e23f0: 7469 6f6e 2074 6f20 2f76 6172 2f74 6d70  tion to /var/tmp
│ │ │ +001e2400: 3a20 456e 7375 7265 202f 7661 722f 746d  : Ensure /var/tm
│ │ │ +001e2410: 7020 6973 206d 6f75 6e74 6564 2077 6974  p is mounted wit
│ │ │ +001e2420: 6820 6e6f 6465 7620 6f70 7469 6f6e 270a  h nodev option'.
│ │ │ +001e2430: 2020 616e 7369 626c 652e 706f 7369 782e    ansible.posix.
│ │ │ +001e2440: 6d6f 756e 743a 0a20 2020 2070 6174 683a  mount:.    path:
│ │ │ +001e2450: 202f 7661 722f 746d 700a 2020 2020 7372   /var/tmp.    sr
│ │ │ +001e2460: 633a 2027 7b7b 206d 6f75 6e74 5f69 6e66  c: '{{ mount_inf
│ │ │ +001e2470: 6f2e 736f 7572 6365 207c 2064 6566 6175  o.source | defau
│ │ │ +001e2480: 6c74 2827 2727 2729 207d 7d27 0a20 2020  lt('''') }}'.   
│ │ │ +001e2490: 206f 7074 733a 2027 7b7b 206d 6f75 6e74   opts: '{{ mount
│ │ │ +001e24a0: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ +001e24b0: 6465 6661 756c 7428 2727 2727 2920 7d7d  default('''') }}
│ │ │ +001e24c0: 270a 2020 2020 7374 6174 653a 206d 6f75  '.    state: mou
│ │ │ +001e24d0: 6e74 6564 0a20 2020 2066 7374 7970 653a  nted.    fstype:
│ │ │ +001e24e0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ +001e24f0: 6673 7479 7065 207c 2064 6566 6175 6c74  fstype | default
│ │ │ +001e2500: 2827 2727 2729 207d 7d27 0a20 2072 6567  ('''') }}'.  reg
│ │ │ +001e2510: 6973 7465 723a 206d 6f75 6e74 5f72 6573  ister: mount_res
│ │ │ +001e2520: 756c 740a 2020 6661 696c 6564 5f77 6865  ult.  failed_whe
│ │ │ +001e2530: 6e3a 0a20 202d 206d 6f75 6e74 5f72 6573  n:.  - mount_res
│ │ │ +001e2540: 756c 7420 6973 2066 6169 6c65 640a 2020  ult is failed.  
│ │ │ +001e2550: 2d20 2727 2774 6172 6765 7420 6973 2062  - '''target is b
│ │ │ +001e2560: 7573 7927 2720 6e6f 7420 696e 2028 6d6f  usy'' not in (mo
│ │ │ +001e2570: 756e 745f 7265 7375 6c74 2e6d 7367 207c  unt_result.msg |
│ │ │ +001e2580: 2064 6566 6175 6c74 2827 2727 2729 2927   default(''''))'
│ │ │ +001e2590: 0a20 202d 2027 2727 616c 7265 6164 7920  .  - '''already 
│ │ │ +001e25a0: 6d6f 756e 7465 6427 2720 6e6f 7420 696e  mounted'' not in
│ │ │ +001e25b0: 2028 6d6f 756e 745f 7265 7375 6c74 2e6d   (mount_result.m
│ │ │ +001e25c0: 7367 207c 2064 6566 6175 6c74 2827 2727  sg | default('''
│ │ │ +001e25d0: 2729 2927 0a20 2077 6865 6e3a 0a20 202d  '))'.  when:.  -
│ │ │ +001e25e0: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ +001e25f0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001e2600: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001e2610: 2272 706d 2d6f 7374 7265 6522 2069 6e20  "rpm-ostree" in 
│ │ │ +001e2620: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001e2630: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ +001e2640: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ +001e2650: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001e2660: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ +001e2670: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ +001e2680: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001e2690: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ +001e26a0: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001e26b0: 6c65 5f70 726f 635f 636d 646c 696e 6520  le_proc_cmdline 
│ │ │ +001e26c0: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ +001e26d0: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ +001e26e0: 6f6e 5f74 7970 6520 696e 0a20 2020 205b  on_type in.    [
│ │ │ +001e26f0: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ +001e2700: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ +001e2710: 616e 222c 2022 636f 6e74 6169 6e65 7222  an", "container"
│ │ │ +001e2720: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ +001e2730: 2f74 6d70 2220 696e 2061 6e73 6962 6c65  /tmp" in ansible
│ │ │ +001e2740: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ +001e2750: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ +001e2760: 207c 206c 6973 7427 0a20 202d 206d 6f75   | list'.  - mou
│ │ │ +001e2770: 6e74 5f69 6e66 6f20 6973 2064 6566 696e  nt_info is defin
│ │ │ +001e2780: 6564 0a20 202d 2028 6465 7669 6365 5f6e  ed.  - (device_n
│ │ │ +001e2790: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ +001e27a0: 6669 6e65 6420 616e 6420 2864 6576 6963  fined and (devic
│ │ │ +001e27b0: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ +001e27c0: 6c65 6e67 7468 2026 6774 3b20 3029 2920  length > 0)) 
│ │ │ +001e27d0: 6f72 2028 222d 2d66 7374 6162 220a 2020  or ("--fstab".  
│ │ │ +001e27e0: 2020 7c20 6c65 6e67 7468 203d 3d20 3029    | length == 0)
│ │ │ +001e27f0: 0a20 2074 6167 733a 0a20 202d 2063 6f6e  .  tags:.  - con
│ │ │ +001e2800: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +001e2810: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ +001e2820: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ +001e2830: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ +001e2840: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ +001e2850: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f  ount_option_var_
│ │ │ +001e2860: 746d 705f 6e6f 6465 760a 2020 2d20 6e6f  tmp_nodev.  - no
│ │ │ +001e2870: 5f72 6562 6f6f 745f 6e65 6564 6564 0a3c  _reboot_needed.<
│ │ │ +001e2880: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +001e2930: 656d 6564 6961 7469 6f6e 2053 6865 6c6c emediation Shell │ │ │ +001e2940: 2073 6372 6970 7420 e287 b23c 2f61 3e3c script ...< │ │ │ +001e2950: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
#
│ │ │ +001e2a00: 2052 656d 6564 6961 7469 6f6e 2069 7320   Remediation is 
│ │ │ +001e2a10: 6170 706c 6963 6162 6c65 206f 6e6c 7920  applicable only 
│ │ │ +001e2a20: 696e 2063 6572 7461 696e 2070 6c61 7466  in certain platf
│ │ │ +001e2a30: 6f72 6d73 0a69 6620 2820 2120 2820 7b20  orms.if ( ! ( { 
│ │ │ +001e2a40: 7270 6d20 2d2d 7175 6965 7420 2d71 206b  rpm --quiet -q k
│ │ │ +001e2a50: 6572 6e65 6c20 3b7d 2026 616d 703b 2661  ernel ;} &&a
│ │ │ +001e2a60: 6d70 3b20 7b20 7270 6d20 2d2d 7175 6965  mp; { rpm --quie
│ │ │ +001e2a70: 7420 2d71 2072 706d 2d6f 7374 7265 6520  t -q rpm-ostree 
│ │ │ +001e2a80: 3b7d 2026 616d 703b 2661 6d70 3b20 7b20  ;} && { 
│ │ │ +001e2a90: 7270 6d20 2d2d 7175 6965 7420 2d71 2062  rpm --quiet -q b
│ │ │ +001e2aa0: 6f6f 7463 203b 7d20 2661 6d70 3b26 616d  ootc ;} &&am
│ │ │ +001e2ab0: 703b 207b 2021 2072 706d 202d 2d71 7569  p; { ! rpm --qui
│ │ │ +001e2ac0: 6574 202d 7120 6f70 656e 7368 6966 742d  et -q openshift-
│ │ │ +001e2ad0: 6b75 6265 6c65 7420 3b7d 2026 616d 703b  kubelet ;} &
│ │ │ +001e2ae0: 2661 6d70 3b20 285b 202d 6620 2f72 756e  & ([ -f /run
│ │ │ +001e2af0: 2f6f 7374 7265 652d 626f 6f74 6564 205d  /ostree-booted ]
│ │ │ +001e2b00: 207c 7c20 5b20 2d4c 202f 6f73 7472 6565   || [ -L /ostree
│ │ │ +001e2b10: 205d 2920 2920 2661 6d70 3b26 616d 703b   ]) ) &&
│ │ │ +001e2b20: 2021 2028 205b 202d 6620 2f2e 646f 636b   ! ( [ -f /.dock
│ │ │ +001e2b30: 6572 656e 7620 5d20 7c7c 205b 202d 6620  erenv ] || [ -f 
│ │ │ +001e2b40: 2f72 756e 2f2e 636f 6e74 6169 6e65 7265  /run/.containere
│ │ │ +001e2b50: 6e76 205d 2029 2029 2026 616d 703b 2661  nv ] ) ) &&a
│ │ │ +001e2b60: 6d70 3b20 7b20 2820 6669 6e64 6d6e 7420  mp; { ( findmnt 
│ │ │ +001e2b70: 2d2d 6b65 726e 656c 2022 2f76 6172 2f74  --kernel "/var/t
│ │ │ +001e2b80: 6d70 2220 2667 743b 202f 6465 762f 6e75  mp" > /dev/nu
│ │ │ +001e2b90: 6c6c 207c 7c20 6669 6e64 6d6e 7420 2d2d  ll || findmnt --
│ │ │ +001e2ba0: 6673 7461 6220 222f 7661 722f 746d 7022  fstab "/var/tmp"
│ │ │ +001e2bb0: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20   > /dev/null 
│ │ │ +001e2bc0: 293b 207d 3b20 7468 656e 0a0a 6675 6e63  ); }; then..func
│ │ │ +001e2bd0: 7469 6f6e 2070 6572 666f 726d 5f72 656d  tion perform_rem
│ │ │ +001e2be0: 6564 6961 7469 6f6e 207b 0a0a 2020 2020  ediation {..    
│ │ │ +001e2bf0: 0a20 2020 2020 2020 2023 2074 6865 206d  .        # the m
│ │ │ +001e2c00: 6f75 6e74 2070 6f69 6e74 202f 7661 722f  ount point /var/
│ │ │ +001e2c10: 746d 7020 6861 7320 746f 2062 6520 6465  tmp has to be de
│ │ │ +001e2c20: 6669 6e65 6420 696e 202f 6574 632f 6673  fined in /etc/fs
│ │ │ +001e2c30: 7461 620a 2020 2020 2020 2020 2320 6265  tab.        # be
│ │ │ +001e2c40: 666f 7265 2074 6869 7320 7265 6d65 6469  fore this remedi
│ │ │ +001e2c50: 6174 696f 6e20 6361 6e20 6265 2065 7865  ation can be exe
│ │ │ +001e2c60: 6375 7465 642e 2049 6e20 6361 7365 2069  cuted. In case i
│ │ │ +001e2c70: 7420 6973 206e 6f74 2064 6566 696e 6564  t is not defined
│ │ │ +001e2c80: 2c20 7468 650a 2020 2020 2020 2020 2320  , the.        # 
│ │ │ +001e2c90: 7265 6d65 6469 6174 696f 6e20 6162 6f72  remediation abor
│ │ │ +001e2ca0: 7473 2061 6e64 206e 6f20 6368 616e 6765  ts and no change
│ │ │ +001e2cb0: 7320 7265 6761 7264 696e 6720 7468 6520  s regarding the 
│ │ │ +001e2cc0: 6d6f 756e 7420 706f 696e 7420 6172 6520  mount point are 
│ │ │ +001e2cd0: 646f 6e65 2e0a 2020 2020 2020 2020 6d6f  done..        mo
│ │ │ +001e2ce0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001e2cf0: 7265 6765 7870 3d22 2428 7072 696e 7466  regexp="$(printf
│ │ │ +001e2d00: 2022 5e5b 5b3a 7370 6163 653a 5d5d 2a5b   "^[[:space:]]*[
│ │ │ +001e2d10: 5e23 5d2e 2a5b 5b3a 7370 6163 653a 5d5d  ^#].*[[:space:]]
│ │ │ +001e2d20: 2573 5b5b 3a73 7061 6365 3a5d 5d22 2022  %s[[:space:]]" "
│ │ │ +001e2d30: 2f76 6172 2f74 6d70 2229 220a 0a20 2020  /var/tmp")"..   
│ │ │ +001e2d40: 2067 7265 7020 2224 6d6f 756e 745f 706f   grep "$mount_po
│ │ │ +001e2d50: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001e2d60: 2220 2d71 202f 6574 632f 6673 7461 6220  " -q /etc/fstab 
│ │ │ +001e2d70: 5c0a 2020 2020 2020 2020 7c7c 207b 2065  \.        || { e
│ │ │ +001e2d80: 6368 6f20 2254 6865 206d 6f75 6e74 2070  cho "The mount p
│ │ │ +001e2d90: 6f69 6e74 2027 2f76 6172 2f74 6d70 2720  oint '/var/tmp' 
│ │ │ +001e2da0: 6973 206e 6f74 2065 7665 6e20 696e 202f  is not even in /
│ │ │ +001e2db0: 6574 632f 6673 7461 622c 2073 6f20 7765  etc/fstab, so we
│ │ │ +001e2dc0: 2063 616e 2774 2073 6574 2075 7020 6d6f   can't set up mo
│ │ │ +001e2dd0: 756e 7420 6f70 7469 6f6e 7322 2026 6774  unt options" >
│ │ │ +001e2de0: 3b26 616d 703b 323b 0a20 2020 2020 2020  ;&2;.       
│ │ │ +001e2df0: 2020 2020 2020 2020 2065 6368 6f20 224e           echo "N
│ │ │ +001e2e00: 6f74 2072 656d 6564 6961 7469 6e67 2c20  ot remediating, 
│ │ │ +001e2e10: 6265 6361 7573 6520 7468 6572 6520 6973  because there is
│ │ │ +001e2e20: 206e 6f20 7265 636f 7264 206f 6620 2f76   no record of /v
│ │ │ +001e2e30: 6172 2f74 6d70 2069 6e20 2f65 7463 2f66  ar/tmp in /etc/f
│ │ │ +001e2e40: 7374 6162 2220 2667 743b 2661 6d70 3b32  stab" >&2
│ │ │ +001e2e50: 3b20 7265 7475 726e 2031 3b20 7d0a 2020  ; return 1; }.  
│ │ │ +001e2e60: 2020 0a0a 0a20 2020 206d 6f75 6e74 5f70    ...    mount_p
│ │ │ +001e2e70: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001e2e80: 703d 2224 2870 7269 6e74 6620 225e 5b5b  p="$(printf "^[[
│ │ │ +001e2e90: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a  :space:]]*[^#].*
│ │ │ +001e2ea0: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a  [[:space:]]%s[[:
│ │ │ +001e2eb0: 7370 6163 653a 5d5d 2220 2f76 6172 2f74  space:]]" /var/t
│ │ │ +001e2ec0: 6d70 2922 0a0a 2020 2020 2320 4966 2074  mp)"..    # If t
│ │ │ +001e2ed0: 6865 206d 6f75 6e74 2070 6f69 6e74 2069  he mount point i
│ │ │ +001e2ee0: 7320 6e6f 7420 696e 202f 6574 632f 6673  s not in /etc/fs
│ │ │ +001e2ef0: 7461 622c 2067 6574 2070 7265 7669 6f75  tab, get previou
│ │ │ +001e2f00: 7320 6d6f 756e 7420 6f70 7469 6f6e 7320  s mount options 
│ │ │ +001e2f10: 6672 6f6d 202f 6574 632f 6d74 6162 0a20  from /etc/mtab. 
│ │ │ +001e2f20: 2020 2069 6620 2120 6772 6570 202d 7120     if ! grep -q 
│ │ │ +001e2f30: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ +001e2f40: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ +001e2f50: 2f66 7374 6162 3b20 7468 656e 0a20 2020  /fstab; then.   
│ │ │ +001e2f60: 2020 2020 2023 2072 756e 7469 6d65 206f       # runtime o
│ │ │ +001e2f70: 7074 7320 7769 7468 6f75 7420 736f 6d65  pts without some
│ │ │ +001e2f80: 2061 7574 6f6d 6174 6963 206b 6572 6e65   automatic kerne
│ │ │ +001e2f90: 6c2f 7573 6572 7370 6163 652d 6164 6465  l/userspace-adde
│ │ │ +001e2fa0: 6420 6465 6661 756c 7473 0a20 2020 2020  d defaults.     
│ │ │ +001e2fb0: 2020 2070 7265 7669 6f75 735f 6d6f 756e     previous_moun
│ │ │ +001e2fc0: 745f 6f70 7473 3d24 2867 7265 7020 2224  t_opts=$(grep "$
│ │ │ +001e2fd0: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001e2fe0: 685f 7265 6765 7870 2220 2f65 7463 2f6d  h_regexp" /etc/m
│ │ │ +001e2ff0: 7461 6220 7c20 6865 6164 202d 3120 7c20  tab | head -1 | 
│ │ │ +001e3000: 2061 776b 2027 7b70 7269 6e74 2024 347d   awk '{print $4}
│ │ │ +001e3010: 2720 5c0a 2020 2020 2020 2020 2020 2020  ' \.            
│ │ │ +001e3020: 2020 2020 2020 2020 7c20 7365 6420 2d45          | sed -E
│ │ │ +001e3030: 2022 732f 2872 777c 6465 6661 756c 7473   "s/(rw|defaults
│ │ │ +001e3040: 7c73 6563 6c61 6265 6c7c 6e6f 6465 7629  |seclabel|nodev)
│ │ │ +001e3050: 282c 7c24 292f 2f67 3b73 2f2c 242f 2f22  (,|$)//g;s/,$//"
│ │ │ +001e3060: 290a 2020 2020 2020 2020 5b20 2224 7072  ).        [ "$pr
│ │ │ +001e3070: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001e3080: 7322 205d 2026 616d 703b 2661 6d70 3b20  s" ] && 
│ │ │ +001e3090: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001e30a0: 7074 732b 3d22 2c22 0a20 2020 2020 2020  pts+=",".       
│ │ │ +001e30b0: 2023 2049 6e20 6973 6f39 3636 3020 6669   # In iso9660 fi
│ │ │ +001e30c0: 6c65 7379 7374 656d 7320 6d74 6162 2063  lesystems mtab c
│ │ │ +001e30d0: 6f75 6c64 2064 6573 6372 6962 6520 6120  ould describe a 
│ │ │ +001e30e0: 2262 6c6f 636b 7369 7a65 2220 7661 6c75  "blocksize" valu
│ │ │ +001e30f0: 652c 2074 6869 7320 7368 6f75 6c64 2062  e, this should b
│ │ │ +001e3100: 6520 7265 666c 6563 7465 6420 696e 0a20  e reflected in. 
│ │ │ +001e3110: 2020 2020 2020 2023 2066 7374 6162 2061         # fstab a
│ │ │ +001e3120: 7320 2262 6c6f 636b 222e 2020 5468 6520  s "block".  The 
│ │ │ +001e3130: 6e65 7874 2076 6172 6961 626c 6520 6973  next variable is
│ │ │ +001e3140: 2074 6f20 7361 7469 7366 7920 7368 656c   to satisfy shel
│ │ │ +001e3150: 6c63 6865 636b 2053 4332 3035 302e 0a20  lcheck SC2050.. 
│ │ │ +001e3160: 2020 2020 2020 2066 735f 7479 7065 3d22         fs_type="
│ │ │ +001e3170: 220a 2020 2020 2020 2020 6966 205b 2020  ".        if [  
│ │ │ +001e3180: 2224 6673 5f74 7970 6522 203d 3d20 2269  "$fs_type" == "i
│ │ │ +001e3190: 736f 3936 3630 2220 5d20 3b20 7468 656e  so9660" ] ; then
│ │ │ +001e31a0: 0a20 2020 2020 2020 2020 2020 2070 7265  .            pre
│ │ │ +001e31b0: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001e31c0: 3d24 2873 6564 2027 732f 626c 6f63 6b73  =$(sed 's/blocks
│ │ │ +001e31d0: 697a 653d 2f62 6c6f 636b 3d2f 2720 266c  ize=/block=/' &l
│ │ │ +001e31e0: 743b 266c 743b 266c 743b 2022 2470 7265  t;<< "$pre
│ │ │ +001e31f0: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001e3200: 2229 0a20 2020 2020 2020 2066 690a 2020  ").        fi.  
│ │ │ +001e3210: 2020 2020 2020 6563 686f 2022 202f 7661        echo " /va
│ │ │ +001e3220: 722f 746d 7020 2064 6566 6175 6c74 732c  r/tmp  defaults,
│ │ │ +001e3230: 247b 7072 6576 696f 7573 5f6d 6f75 6e74  ${previous_mount
│ │ │ +001e3240: 5f6f 7074 737d 6e6f 6465 7620 3020 3022  _opts}nodev 0 0"
│ │ │ +001e3250: 2026 6774 3b26 6774 3b20 2f65 7463 2f66   >> /etc/f
│ │ │ +001e3260: 7374 6162 0a20 2020 2023 2049 6620 7468  stab.    # If th
│ │ │ +001e3270: 6520 6d6f 756e 745f 6f70 7420 6f70 7469  e mount_opt opti
│ │ │ +001e3280: 6f6e 2069 7320 6e6f 7420 616c 7265 6164  on is not alread
│ │ │ +001e3290: 7920 696e 2074 6865 206d 6f75 6e74 2070  y in the mount p
│ │ │ +001e32a0: 6f69 6e74 2773 202f 6574 632f 6673 7461  oint's /etc/fsta
│ │ │ +001e32b0: 6220 656e 7472 792c 2061 6464 2069 740a  b entry, add it.
│ │ │ +001e32c0: 2020 2020 656c 6966 2021 2067 7265 7020      elif ! grep 
│ │ │ +001e32d0: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ +001e32e0: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ +001e32f0: 2f66 7374 6162 207c 2067 7265 7020 2d71  /fstab | grep -q
│ │ │ +001e3300: 2022 6e6f 6465 7622 3b20 7468 656e 0a20   "nodev"; then. 
│ │ │ +001e3310: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ +001e3320: 6d6f 756e 745f 6f70 7473 3d24 2867 7265  mount_opts=$(gre
│ │ │ +001e3330: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ +001e3340: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ +001e3350: 7463 2f66 7374 6162 207c 2061 776b 2027  tc/fstab | awk '
│ │ │ +001e3360: 7b70 7269 6e74 2024 347d 2729 0a20 2020  {print $4}').   
│ │ │ +001e3370: 2020 2020 2073 6564 202d 6920 2273 7c5c       sed -i "s|\
│ │ │ +001e3380: 2824 7b6d 6f75 6e74 5f70 6f69 6e74 5f6d  (${mount_point_m
│ │ │ +001e3390: 6174 6368 5f72 6567 6578 707d 2e2a 247b  atch_regexp}.*${
│ │ │ +001e33a0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001e33b0: 7074 737d 5c29 7c5c 312c 6e6f 6465 767c  pts}\)|\1,nodev|
│ │ │ +001e33c0: 2220 2f65 7463 2f66 7374 6162 0a20 2020  " /etc/fstab.   
│ │ │ +001e33d0: 2066 690a 0a0a 2020 2020 6966 206d 6b64   fi...    if mkd
│ │ │ +001e33e0: 6972 202d 7020 222f 7661 722f 746d 7022  ir -p "/var/tmp"
│ │ │ +001e33f0: 3b20 7468 656e 0a20 2020 2020 2020 2069  ; then.        i
│ │ │ +001e3400: 6620 6d6f 756e 7470 6f69 6e74 202d 7120  f mountpoint -q 
│ │ │ +001e3410: 222f 7661 722f 746d 7022 3b20 7468 656e  "/var/tmp"; then
│ │ │ +001e3420: 0a20 2020 2020 2020 2020 2020 206d 6f75  .            mou
│ │ │ +001e3430: 6e74 202d 6f20 7265 6d6f 756e 7420 2d2d  nt -o remount --
│ │ │ +001e3440: 7461 7267 6574 2022 2f76 6172 2f74 6d70  target "/var/tmp
│ │ │ +001e3450: 220a 2020 2020 2020 2020 6669 0a20 2020  ".        fi.   
│ │ │ +001e3460: 2066 690a 7d0a 0a70 6572 666f 726d 5f72   fi.}..perform_r
│ │ │ +001e3470: 656d 6564 6961 7469 6f6e 0a0a 656c 7365  emediation..else
│ │ │ +001e3480: 0a20 2020 2026 6774 3b26 616d 703b 3220  .    >&2 
│ │ │ +001e3490: 6563 686f 2027 5265 6d65 6469 6174 696f  echo 'Remediatio
│ │ │ +001e34a0: 6e20 6973 206e 6f74 2061 7070 6c69 6361  n is not applica
│ │ │ +001e34b0: 626c 652c 206e 6f74 6869 6e67 2077 6173  ble, nothing was
│ │ │ +001e34c0: 2064 6f6e 6527 0a66 690a 3c2f 636f 6465   done'.fi.
Remedi │ │ │ +001e3580: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ +001e3590: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Reb │ │ │ +001e29d0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +001e29e0: 7365 3c2f 7464 3e3c 2f74 723e 3c2f 7461 se
Comp │ │ │ +001e3620: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +001e3630: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +001e3650: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ +001e3670: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +001e3680: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +001e36a0: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ +001e36c0: 3c70 7265 3e3c 636f 6465 3e0a 7061 7274
.part
│ │ │ +001e36d0: 202f 7661 722f 746d 7020 2d2d 6d6f 756e   /var/tmp --moun
│ │ │ +001e36e0: 746f 7074 696f 6e73 3d22 6e6f 6465 7622  toptions="nodev"
│ │ │  001e36f0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
< │ │ │ 001e3710: 2f74 723e 3c2f 7462 6f64 793e 3c2f 7461 /tr>Remedia │ │ │ -001e40f0: 7469 6f6e 2041 6e61 636f 6e64 6120 736e tion Anaconda sn │ │ │ -001e4100: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -001e41b0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c
Compl │ │ │ -001e4190: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -001e41a0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -001e41c0: 2f74 683e 3c74 643e 6869 6768 3c2f 7464 /th>high
Re │ │ │ -001e41e0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -001e41f0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -001e4230: 7072 653e 3c63 6f64 653e 0a70 6172 7420 pre>.part │ │ │ -001e4240: 2f76 6172 2f74 6d70 202d 2d6d 6f75 6e74 /var/tmp --mount │ │ │ -001e4250: 6f70 7469 6f6e 733d 226e 6f65 7865 6322 options="noexec" │ │ │ -001e4260: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .
Remediation Ans │ │ │ -001e4320: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ -001e4330: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity:< │ │ │ -001e4420: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
low
Disru │ │ │ -001e43e0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e68 ption:h │ │ │ -001e43f0: 6967 683c 2f74 643e 3c2f 7472 3e3c 7472 igh
Reboot:false
Stra │ │ │ -001e4430: 7465 6779 3a3c 2f74 683e 3c74 643e 636f tegy:co │ │ │ -001e4440: 6e66 6967 7572 653c 2f74 643e 3c2f 7472 nfigure
- name: Gath
│ │ │ -001e4470: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ -001e4480: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ -001e4490: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ -001e44a0: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ -001e44b0: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ -001e44c0: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ -001e44d0: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -001e44e0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -001e44f0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -001e4500: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ -001e4510: 6f6e 5f76 6172 5f74 6d70 5f6e 6f65 7865  on_var_tmp_noexe
│ │ │ -001e4520: 630a 2020 2d20 6e6f 5f72 6562 6f6f 745f  c.  - no_reboot_
│ │ │ -001e4530: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ -001e4540: 2741 6464 206e 6f65 7865 6320 4f70 7469  'Add noexec Opti
│ │ │ -001e4550: 6f6e 2074 6f20 2f76 6172 2f74 6d70 3a20  on to /var/tmp: 
│ │ │ -001e4560: 4368 6563 6b20 696e 666f 726d 6174 696f  Check informatio
│ │ │ -001e4570: 6e20 6173 736f 6369 6174 6564 2074 6f20  n associated to 
│ │ │ -001e4580: 6d6f 756e 7470 6f69 6e74 270a 2020 616e  mountpoint'.  an
│ │ │ -001e4590: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ -001e45a0: 6d6d 616e 643a 2066 696e 646d 6e74 202d  mmand: findmnt -
│ │ │ -001e45b0: 2d66 7374 6162 2027 2f76 6172 2f74 6d70  -fstab '/var/tmp
│ │ │ -001e45c0: 270a 2020 7265 6769 7374 6572 3a20 6465  '.  register: de
│ │ │ -001e45d0: 7669 6365 5f6e 616d 650a 2020 6661 696c  vice_name.  fail
│ │ │ -001e45e0: 6564 5f77 6865 6e3a 2064 6576 6963 655f  ed_when: device_
│ │ │ -001e45f0: 6e61 6d65 2e72 6320 2667 743b 2031 0a20  name.rc > 1. 
│ │ │ -001e4600: 2063 6861 6e67 6564 5f77 6865 6e3a 2066   changed_when: f
│ │ │ -001e4610: 616c 7365 0a20 2063 6865 636b 5f6d 6f64  alse.  check_mod
│ │ │ -001e4620: 653a 2066 616c 7365 0a20 2077 6865 6e3a  e: false.  when:
│ │ │ -001e4630: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ -001e4640: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -001e4650: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001e4660: 616e 6420 2272 706d 2d6f 7374 7265 6522  and "rpm-ostree"
│ │ │ -001e4670: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001e4680: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001e4690: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ -001e46a0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001e46b0: 6167 6573 2061 6e64 206e 6f74 2022 6f70  ages and not "op
│ │ │ -001e46c0: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ -001e46d0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001e46e0: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001e46f0: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ -001e4700: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ -001e4710: 696e 6520 2920 616e 6420 6e6f 7420 2820  ine ) and not ( 
│ │ │ -001e4720: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ -001e4730: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20  zation_type in. 
│ │ │ -001e4740: 2020 205b 2264 6f63 6b65 7222 2c20 226c     ["docker", "l
│ │ │ -001e4750: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ -001e4760: 706f 646d 616e 222c 2022 636f 6e74 6169  podman", "contai
│ │ │ -001e4770: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ -001e4780: 2f76 6172 2f74 6d70 2220 696e 2061 6e73  /var/tmp" in ans
│ │ │ -001e4790: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ -001e47a0: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ -001e47b0: 6e74 2229 207c 206c 6973 7427 0a20 2074  nt") | list'.  t
│ │ │ -001e47c0: 6167 733a 0a20 202d 2063 6f6e 6669 6775  ags:.  - configu
│ │ │ -001e47d0: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ -001e47e0: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ -001e47f0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -001e4800: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ -001e4810: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ -001e4820: 5f6f 7074 696f 6e5f 7661 725f 746d 705f  _option_var_tmp_
│ │ │ -001e4830: 6e6f 6578 6563 0a20 202d 206e 6f5f 7265  noexec.  - no_re
│ │ │ -001e4840: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -001e4850: 616d 653a 2027 4164 6420 6e6f 6578 6563  ame: 'Add noexec
│ │ │ -001e4860: 204f 7074 696f 6e20 746f 202f 7661 722f   Option to /var/
│ │ │ -001e4870: 746d 703a 2043 7265 6174 6520 6d6f 756e  tmp: Create moun
│ │ │ -001e4880: 745f 696e 666f 2064 6963 7469 6f6e 6172  t_info dictionar
│ │ │ -001e4890: 7920 7661 7269 6162 6c65 270a 2020 7365  y variable'.  se
│ │ │ -001e48a0: 745f 6661 6374 3a0a 2020 2020 6d6f 756e  t_fact:.    moun
│ │ │ -001e48b0: 745f 696e 666f 3a20 277b 7b20 6d6f 756e  t_info: '{{ moun
│ │ │ -001e48c0: 745f 696e 666f 7c64 6566 6175 6c74 287b  t_info|default({
│ │ │ -001e48d0: 7d29 7c63 6f6d 6269 6e65 287b 6974 656d  })|combine({item
│ │ │ -001e48e0: 2e30 3a20 6974 656d 2e31 7d29 207d 7d27  .0: item.1}) }}'
│ │ │ -001e48f0: 0a20 2077 6974 685f 746f 6765 7468 6572  .  with_together
│ │ │ -001e4900: 3a0a 2020 2d20 277b 7b20 6465 7669 6365  :.  - '{{ device
│ │ │ -001e4910: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ -001e4920: 6573 5b30 5d2e 7370 6c69 7428 2920 7c20  es[0].split() | 
│ │ │ -001e4930: 6d61 7028 2727 6c6f 7765 7227 2729 207c  map(''lower'') |
│ │ │ -001e4940: 206c 6973 7420 7d7d 270a 2020 2d20 277b   list }}'.  - '{
│ │ │ -001e4950: 7b20 6465 7669 6365 5f6e 616d 652e 7374  { device_name.st
│ │ │ -001e4960: 646f 7574 5f6c 696e 6573 5b31 5d2e 7370  dout_lines[1].sp
│ │ │ -001e4970: 6c69 7428 2920 7c20 6c69 7374 207d 7d27  lit() | list }}'
│ │ │ -001e4980: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ -001e4990: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ -001e49a0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001e49b0: 6163 6b61 6765 7320 616e 6420 2272 706d  ackages and "rpm
│ │ │ -001e49c0: 2d6f 7374 7265 6522 2069 6e20 616e 7369  -ostree" in ansi
│ │ │ -001e49d0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001e49e0: 6573 0a20 2020 2061 6e64 2022 626f 6f74  es.    and "boot
│ │ │ -001e49f0: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ -001e4a00: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001e4a10: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ -001e4a20: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ -001e4a30: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001e4a40: 6573 0a20 2020 2061 6e64 2022 6f73 7472  es.    and "ostr
│ │ │ -001e4a50: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ -001e4a60: 726f 635f 636d 646c 696e 6520 2920 616e  roc_cmdline ) an
│ │ │ -001e4a70: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ -001e4a80: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ -001e4a90: 7970 6520 696e 0a20 2020 205b 2264 6f63  ype in.    ["doc
│ │ │ -001e4aa0: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ -001e4ab0: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ -001e4ac0: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ -001e4ad0: 290a 2020 2d20 2722 2f76 6172 2f74 6d70  ).  - '"/var/tmp
│ │ │ -001e4ae0: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ -001e4af0: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ -001e4b00: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ -001e4b10: 6973 7427 0a20 202d 2064 6576 6963 655f  ist'.  - device_
│ │ │ -001e4b20: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ -001e4b30: 6566 696e 6564 2061 6e64 2064 6576 6963  efined and devic
│ │ │ -001e4b40: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ -001e4b50: 6e65 7320 6973 2064 6566 696e 6564 0a20  nes is defined. 
│ │ │ -001e4b60: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ -001e4b70: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ -001e4b80: 2667 743b 2030 290a 2020 7461 6773 3a0a  > 0).  tags:.
│ │ │ -001e4b90: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ -001e4ba0: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ -001e4bb0: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -001e4bc0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -001e4bd0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -001e4be0: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ -001e4bf0: 6f6e 5f76 6172 5f74 6d70 5f6e 6f65 7865  on_var_tmp_noexe
│ │ │ -001e4c00: 630a 2020 2d20 6e6f 5f72 6562 6f6f 745f  c.  - no_reboot_
│ │ │ -001e4c10: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ -001e4c20: 2741 6464 206e 6f65 7865 6320 4f70 7469  'Add noexec Opti
│ │ │ -001e4c30: 6f6e 2074 6f20 2f76 6172 2f74 6d70 3a20  on to /var/tmp: 
│ │ │ -001e4c40: 4966 202f 7661 722f 746d 7020 6e6f 7420  If /var/tmp not 
│ │ │ -001e4c50: 6d6f 756e 7465 642c 2063 7261 6674 206d  mounted, craft m
│ │ │ -001e4c60: 6f75 6e74 5f69 6e66 6f0a 2020 2020 6d61  ount_info.    ma
│ │ │ -001e4c70: 6e75 616c 6c79 270a 2020 7365 745f 6661  nually'.  set_fa
│ │ │ -001e4c80: 6374 3a0a 2020 2020 6d6f 756e 745f 696e  ct:.    mount_in
│ │ │ -001e4c90: 666f 3a20 277b 7b20 6d6f 756e 745f 696e  fo: '{{ mount_in
│ │ │ -001e4ca0: 666f 7c64 6566 6175 6c74 287b 7d29 7c63  fo|default({})|c
│ │ │ -001e4cb0: 6f6d 6269 6e65 287b 6974 656d 2e30 3a20  ombine({item.0: 
│ │ │ -001e4cc0: 6974 656d 2e31 7d29 207d 7d27 0a20 2077  item.1}) }}'.  w
│ │ │ -001e4cd0: 6974 685f 746f 6765 7468 6572 3a0a 2020  ith_together:.  
│ │ │ -001e4ce0: 2d20 2d20 7461 7267 6574 0a20 2020 202d  - - target.    -
│ │ │ -001e4cf0: 2073 6f75 7263 650a 2020 2020 2d20 6673   source.    - fs
│ │ │ -001e4d00: 7479 7065 0a20 2020 202d 206f 7074 696f  type.    - optio
│ │ │ -001e4d10: 6e73 0a20 202d 202d 202f 7661 722f 746d  ns.  - - /var/tm
│ │ │ -001e4d20: 700a 2020 2020 2d20 2727 0a20 2020 202d  p.    - ''.    -
│ │ │ -001e4d30: 2027 270a 2020 2020 2d20 6465 6661 756c   ''.    - defaul
│ │ │ -001e4d40: 7473 0a20 2077 6865 6e3a 0a20 202d 2028  ts.  when:.  - (
│ │ │ -001e4d50: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -001e4d60: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001e4d70: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ -001e4d80: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ -001e4d90: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001e4da0: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ -001e4db0: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ -001e4dc0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001e4dd0: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -001e4de0: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -001e4df0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001e4e00: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ -001e4e10: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001e4e20: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ -001e4e30: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -001e4e40: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -001e4e50: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ -001e4e60: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ -001e4e70: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ -001e4e80: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ -001e4e90: 2920 290a 2020 2d20 2722 2f76 6172 2f74  ) ).  - '"/var/t
│ │ │ -001e4ea0: 6d70 2220 696e 2061 6e73 6962 6c65 5f6d  mp" in ansible_m
│ │ │ -001e4eb0: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ -001e4ec0: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ -001e4ed0: 206c 6973 7427 0a20 202d 2028 222d 2d66   list'.  - ("--f
│ │ │ -001e4ee0: 7374 6162 2220 7c20 6c65 6e67 7468 203d  stab" | length =
│ │ │ -001e4ef0: 3d20 3029 0a20 202d 2064 6576 6963 655f  = 0).  - device_
│ │ │ -001e4f00: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ -001e4f10: 6566 696e 6564 2061 6e64 2064 6576 6963  efined and devic
│ │ │ -001e4f20: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ -001e4f30: 6e65 7320 6973 2064 6566 696e 6564 0a20  nes is defined. 
│ │ │ -001e4f40: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ -001e4f50: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ -001e4f60: 3d3d 2030 290a 2020 7461 6773 3a0a 2020  == 0).  tags:.  
│ │ │ -001e4f70: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -001e4f80: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ -001e4f90: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -001e4fa0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001e4fb0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -001e4fc0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ -001e4fd0: 5f76 6172 5f74 6d70 5f6e 6f65 7865 630a  _var_tmp_noexec.
│ │ │ -001e4fe0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001e4ff0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ -001e5000: 6464 206e 6f65 7865 6320 4f70 7469 6f6e  dd noexec Option
│ │ │ -001e5010: 2074 6f20 2f76 6172 2f74 6d70 3a20 4d61   to /var/tmp: Ma
│ │ │ -001e5020: 6b65 2073 7572 6520 6e6f 6578 6563 206f  ke sure noexec o
│ │ │ -001e5030: 7074 696f 6e20 6973 2070 6172 7420 6f66  ption is part of
│ │ │ -001e5040: 2074 6865 2074 6f0a 2020 2020 2f76 6172   the to.    /var
│ │ │ -001e5050: 2f74 6d70 206f 7074 696f 6e73 270a 2020  /tmp options'.  
│ │ │ -001e5060: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ -001e5070: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ -001e5080: 756e 745f 696e 666f 207c 2063 6f6d 6269  unt_info | combi
│ │ │ -001e5090: 6e65 2820 7b27 276f 7074 696f 6e73 2727  ne( {''options''
│ │ │ -001e50a0: 3a27 2727 277e 286d 6f75 6e74 5f69 6e66  :''''~(mount_inf
│ │ │ -001e50b0: 6f2e 6f70 7469 6f6e 7320 7c0a 2020 2020  o.options |.    
│ │ │ -001e50c0: 2020 6465 6661 756c 7428 2727 2727 2929    default(''''))
│ │ │ -001e50d0: 7e28 2727 2c27 2720 6966 2028 6d6f 756e  ~('','' if (moun
│ │ │ -001e50e0: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ -001e50f0: 2064 6566 6175 6c74 2827 2727 2729 2920   default('''')) 
│ │ │ -001e5100: 656c 7365 2027 2727 2729 7e27 276e 6f65  else '''')~''noe
│ │ │ -001e5110: 7865 6327 270a 2020 2020 2020 7d29 207d  xec''.      }) }
│ │ │ -001e5120: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028  }'.  when:.  - (
│ │ │ -001e5130: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -001e5140: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001e5150: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ -001e5160: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ -001e5170: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001e5180: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ -001e5190: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ -001e51a0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001e51b0: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -001e51c0: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -001e51d0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001e51e0: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ -001e51f0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001e5200: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ -001e5210: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -001e5220: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -001e5230: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ -001e5240: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ -001e5250: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ -001e5260: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ -001e5270: 2920 290a 2020 2d20 2722 2f76 6172 2f74  ) ).  - '"/var/t
│ │ │ -001e5280: 6d70 2220 696e 2061 6e73 6962 6c65 5f6d  mp" in ansible_m
│ │ │ -001e5290: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ -001e52a0: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ -001e52b0: 206c 6973 7427 0a20 202d 206d 6f75 6e74   list'.  - mount
│ │ │ -001e52c0: 5f69 6e66 6f20 6973 2064 6566 696e 6564  _info is defined
│ │ │ -001e52d0: 2061 6e64 2022 6e6f 6578 6563 2220 6e6f   and "noexec" no
│ │ │ -001e52e0: 7420 696e 2028 6d6f 756e 745f 696e 666f  t in (mount_info
│ │ │ -001e52f0: 2e6f 7074 696f 6e73 207c 2064 6566 6175  .options | defau
│ │ │ -001e5300: 6c74 2827 2729 290a 2020 7461 6773 3a0a  lt('')).  tags:.
│ │ │ -001e5310: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ -001e5320: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ -001e5330: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -001e5340: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -001e5350: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -001e5360: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ -001e5370: 6f6e 5f76 6172 5f74 6d70 5f6e 6f65 7865  on_var_tmp_noexe
│ │ │ -001e5380: 630a 2020 2d20 6e6f 5f72 6562 6f6f 745f  c.  - no_reboot_
│ │ │ -001e5390: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ -001e53a0: 2741 6464 206e 6f65 7865 6320 4f70 7469  'Add noexec Opti
│ │ │ -001e53b0: 6f6e 2074 6f20 2f76 6172 2f74 6d70 3a20  on to /var/tmp: 
│ │ │ -001e53c0: 456e 7375 7265 202f 7661 722f 746d 7020  Ensure /var/tmp 
│ │ │ -001e53d0: 6973 206d 6f75 6e74 6564 2077 6974 6820  is mounted with 
│ │ │ -001e53e0: 6e6f 6578 6563 206f 7074 696f 6e27 0a20  noexec option'. 
│ │ │ -001e53f0: 2061 6e73 6962 6c65 2e70 6f73 6978 2e6d   ansible.posix.m
│ │ │ -001e5400: 6f75 6e74 3a0a 2020 2020 7061 7468 3a20  ount:.    path: 
│ │ │ -001e5410: 2f76 6172 2f74 6d70 0a20 2020 2073 7263  /var/tmp.    src
│ │ │ -001e5420: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001e5430: 2e73 6f75 7263 6520 7c20 6465 6661 756c  .source | defaul
│ │ │ -001e5440: 7428 2727 2727 2920 7d7d 270a 2020 2020  t('''') }}'.    
│ │ │ -001e5450: 6f70 7473 3a20 277b 7b20 6d6f 756e 745f  opts: '{{ mount_
│ │ │ -001e5460: 696e 666f 2e6f 7074 696f 6e73 207c 2064  info.options | d
│ │ │ -001e5470: 6566 6175 6c74 2827 2727 2729 207d 7d27  efault('''') }}'
│ │ │ -001e5480: 0a20 2020 2073 7461 7465 3a20 6d6f 756e  .    state: moun
│ │ │ -001e5490: 7465 640a 2020 2020 6673 7479 7065 3a20  ted.    fstype: 
│ │ │ -001e54a0: 277b 7b20 6d6f 756e 745f 696e 666f 2e66  '{{ mount_info.f
│ │ │ -001e54b0: 7374 7970 6520 7c20 6465 6661 756c 7428  stype | default(
│ │ │ -001e54c0: 2727 2727 2920 7d7d 270a 2020 7265 6769  '''') }}'.  regi
│ │ │ -001e54d0: 7374 6572 3a20 6d6f 756e 745f 7265 7375  ster: mount_resu
│ │ │ -001e54e0: 6c74 0a20 2066 6169 6c65 645f 7768 656e  lt.  failed_when
│ │ │ -001e54f0: 3a0a 2020 2d20 6d6f 756e 745f 7265 7375  :.  - mount_resu
│ │ │ -001e5500: 6c74 2069 7320 6661 696c 6564 0a20 202d  lt is failed.  -
│ │ │ -001e5510: 2027 2727 7461 7267 6574 2069 7320 6275   '''target is bu
│ │ │ -001e5520: 7379 2727 206e 6f74 2069 6e20 286d 6f75  sy'' not in (mou
│ │ │ -001e5530: 6e74 5f72 6573 756c 742e 6d73 6720 7c20  nt_result.msg | 
│ │ │ -001e5540: 6465 6661 756c 7428 2727 2727 2929 270a  default(''''))'.
│ │ │ -001e5550: 2020 2d20 2727 2761 6c72 6561 6479 206d    - '''already m
│ │ │ -001e5560: 6f75 6e74 6564 2727 206e 6f74 2069 6e20  ounted'' not in 
│ │ │ -001e5570: 286d 6f75 6e74 5f72 6573 756c 742e 6d73  (mount_result.ms
│ │ │ -001e5580: 6720 7c20 6465 6661 756c 7428 2727 2727  g | default(''''
│ │ │ -001e5590: 2929 270a 2020 7768 656e 3a0a 2020 2d20  ))'.  when:.  - 
│ │ │ -001e55a0: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -001e55b0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001e55c0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001e55d0: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ -001e55e0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001e55f0: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ -001e5600: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -001e5610: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001e5620: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001e5630: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001e5640: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001e5650: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ -001e5660: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001e5670: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ -001e5680: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001e5690: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001e56a0: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ -001e56b0: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -001e56c0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -001e56d0: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ -001e56e0: 2029 2029 0a20 202d 2027 222f 7661 722f   ) ).  - '"/var/
│ │ │ -001e56f0: 746d 7022 2069 6e20 616e 7369 626c 655f  tmp" in ansible_
│ │ │ -001e5700: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ -001e5710: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ -001e5720: 7c20 6c69 7374 270a 2020 2d20 6d6f 756e  | list'.  - moun
│ │ │ -001e5730: 745f 696e 666f 2069 7320 6465 6669 6e65  t_info is define
│ │ │ -001e5740: 640a 2020 2d20 2864 6576 6963 655f 6e61  d.  - (device_na
│ │ │ -001e5750: 6d65 2e73 7464 6f75 7420 6973 2064 6566  me.stdout is def
│ │ │ -001e5760: 696e 6564 2061 6e64 2028 6465 7669 6365  ined and (device
│ │ │ -001e5770: 5f6e 616d 652e 7374 646f 7574 207c 206c  _name.stdout | l
│ │ │ -001e5780: 656e 6774 6820 2667 743b 2030 2929 206f  ength > 0)) o
│ │ │ -001e5790: 7220 2822 2d2d 6673 7461 6222 0a20 2020  r ("--fstab".   
│ │ │ -001e57a0: 207c 206c 656e 6774 6820 3d3d 2030 290a   | length == 0).
│ │ │ -001e57b0: 2020 7461 6773 3a0a 2020 2d20 636f 6e66    tags:.  - conf
│ │ │ -001e57c0: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -001e57d0: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -001e57e0: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -001e57f0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -001e5800: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -001e5810: 756e 745f 6f70 7469 6f6e 5f76 6172 5f74  unt_option_var_t
│ │ │ -001e5820: 6d70 5f6e 6f65 7865 630a 2020 2d20 6e6f  mp_noexec.  - no
│ │ │ -001e5830: 5f72 6562 6f6f 745f 6e65 6564 6564 0a3c  _reboot_needed.<
│ │ │ -001e5840: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -001e58f0: 656d 6564 6961 7469 6f6e 2053 6865 6c6c emediation Shell │ │ │ -001e5900: 2073 6372 6970 7420 e287 b23c 2f61 3e3c script ...< │ │ │ -001e5910: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
#
│ │ │ -001e59c0: 2052 656d 6564 6961 7469 6f6e 2069 7320   Remediation is 
│ │ │ -001e59d0: 6170 706c 6963 6162 6c65 206f 6e6c 7920  applicable only 
│ │ │ -001e59e0: 696e 2063 6572 7461 696e 2070 6c61 7466  in certain platf
│ │ │ -001e59f0: 6f72 6d73 0a69 6620 2820 2120 2820 7b20  orms.if ( ! ( { 
│ │ │ -001e5a00: 7270 6d20 2d2d 7175 6965 7420 2d71 206b  rpm --quiet -q k
│ │ │ -001e5a10: 6572 6e65 6c20 3b7d 2026 616d 703b 2661  ernel ;} &&a
│ │ │ -001e5a20: 6d70 3b20 7b20 7270 6d20 2d2d 7175 6965  mp; { rpm --quie
│ │ │ -001e5a30: 7420 2d71 2072 706d 2d6f 7374 7265 6520  t -q rpm-ostree 
│ │ │ -001e5a40: 3b7d 2026 616d 703b 2661 6d70 3b20 7b20  ;} && { 
│ │ │ -001e5a50: 7270 6d20 2d2d 7175 6965 7420 2d71 2062  rpm --quiet -q b
│ │ │ -001e5a60: 6f6f 7463 203b 7d20 2661 6d70 3b26 616d  ootc ;} &&am
│ │ │ -001e5a70: 703b 207b 2021 2072 706d 202d 2d71 7569  p; { ! rpm --qui
│ │ │ -001e5a80: 6574 202d 7120 6f70 656e 7368 6966 742d  et -q openshift-
│ │ │ -001e5a90: 6b75 6265 6c65 7420 3b7d 2026 616d 703b  kubelet ;} &
│ │ │ -001e5aa0: 2661 6d70 3b20 285b 202d 6620 2f72 756e  & ([ -f /run
│ │ │ -001e5ab0: 2f6f 7374 7265 652d 626f 6f74 6564 205d  /ostree-booted ]
│ │ │ -001e5ac0: 207c 7c20 5b20 2d4c 202f 6f73 7472 6565   || [ -L /ostree
│ │ │ -001e5ad0: 205d 2920 2920 2661 6d70 3b26 616d 703b   ]) ) &&
│ │ │ -001e5ae0: 2021 2028 205b 202d 6620 2f2e 646f 636b   ! ( [ -f /.dock
│ │ │ -001e5af0: 6572 656e 7620 5d20 7c7c 205b 202d 6620  erenv ] || [ -f 
│ │ │ -001e5b00: 2f72 756e 2f2e 636f 6e74 6169 6e65 7265  /run/.containere
│ │ │ -001e5b10: 6e76 205d 2029 2029 2026 616d 703b 2661  nv ] ) ) &&a
│ │ │ -001e5b20: 6d70 3b20 7b20 2820 6669 6e64 6d6e 7420  mp; { ( findmnt 
│ │ │ -001e5b30: 2d2d 6b65 726e 656c 2022 2f76 6172 2f74  --kernel "/var/t
│ │ │ -001e5b40: 6d70 2220 2667 743b 202f 6465 762f 6e75  mp" > /dev/nu
│ │ │ -001e5b50: 6c6c 207c 7c20 6669 6e64 6d6e 7420 2d2d  ll || findmnt --
│ │ │ -001e5b60: 6673 7461 6220 222f 7661 722f 746d 7022  fstab "/var/tmp"
│ │ │ -001e5b70: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20   > /dev/null 
│ │ │ -001e5b80: 293b 207d 3b20 7468 656e 0a0a 6675 6e63  ); }; then..func
│ │ │ -001e5b90: 7469 6f6e 2070 6572 666f 726d 5f72 656d  tion perform_rem
│ │ │ -001e5ba0: 6564 6961 7469 6f6e 207b 0a0a 2020 2020  ediation {..    
│ │ │ -001e5bb0: 0a20 2020 2020 2020 2023 2074 6865 206d  .        # the m
│ │ │ -001e5bc0: 6f75 6e74 2070 6f69 6e74 202f 7661 722f  ount point /var/
│ │ │ -001e5bd0: 746d 7020 6861 7320 746f 2062 6520 6465  tmp has to be de
│ │ │ -001e5be0: 6669 6e65 6420 696e 202f 6574 632f 6673  fined in /etc/fs
│ │ │ -001e5bf0: 7461 620a 2020 2020 2020 2020 2320 6265  tab.        # be
│ │ │ -001e5c00: 666f 7265 2074 6869 7320 7265 6d65 6469  fore this remedi
│ │ │ -001e5c10: 6174 696f 6e20 6361 6e20 6265 2065 7865  ation can be exe
│ │ │ -001e5c20: 6375 7465 642e 2049 6e20 6361 7365 2069  cuted. In case i
│ │ │ -001e5c30: 7420 6973 206e 6f74 2064 6566 696e 6564  t is not defined
│ │ │ -001e5c40: 2c20 7468 650a 2020 2020 2020 2020 2320  , the.        # 
│ │ │ -001e5c50: 7265 6d65 6469 6174 696f 6e20 6162 6f72  remediation abor
│ │ │ -001e5c60: 7473 2061 6e64 206e 6f20 6368 616e 6765  ts and no change
│ │ │ -001e5c70: 7320 7265 6761 7264 696e 6720 7468 6520  s regarding the 
│ │ │ -001e5c80: 6d6f 756e 7420 706f 696e 7420 6172 6520  mount point are 
│ │ │ -001e5c90: 646f 6e65 2e0a 2020 2020 2020 2020 6d6f  done..        mo
│ │ │ -001e5ca0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001e5cb0: 7265 6765 7870 3d22 2428 7072 696e 7466  regexp="$(printf
│ │ │ -001e5cc0: 2022 5e5b 5b3a 7370 6163 653a 5d5d 2a5b   "^[[:space:]]*[
│ │ │ -001e5cd0: 5e23 5d2e 2a5b 5b3a 7370 6163 653a 5d5d  ^#].*[[:space:]]
│ │ │ -001e5ce0: 2573 5b5b 3a73 7061 6365 3a5d 5d22 2022  %s[[:space:]]" "
│ │ │ -001e5cf0: 2f76 6172 2f74 6d70 2229 220a 0a20 2020  /var/tmp")"..   
│ │ │ -001e5d00: 2067 7265 7020 2224 6d6f 756e 745f 706f   grep "$mount_po
│ │ │ -001e5d10: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001e5d20: 2220 2d71 202f 6574 632f 6673 7461 6220  " -q /etc/fstab 
│ │ │ -001e5d30: 5c0a 2020 2020 2020 2020 7c7c 207b 2065  \.        || { e
│ │ │ -001e5d40: 6368 6f20 2254 6865 206d 6f75 6e74 2070  cho "The mount p
│ │ │ -001e5d50: 6f69 6e74 2027 2f76 6172 2f74 6d70 2720  oint '/var/tmp' 
│ │ │ -001e5d60: 6973 206e 6f74 2065 7665 6e20 696e 202f  is not even in /
│ │ │ -001e5d70: 6574 632f 6673 7461 622c 2073 6f20 7765  etc/fstab, so we
│ │ │ -001e5d80: 2063 616e 2774 2073 6574 2075 7020 6d6f   can't set up mo
│ │ │ -001e5d90: 756e 7420 6f70 7469 6f6e 7322 2026 6774  unt options" >
│ │ │ -001e5da0: 3b26 616d 703b 323b 0a20 2020 2020 2020  ;&2;.       
│ │ │ -001e5db0: 2020 2020 2020 2020 2065 6368 6f20 224e           echo "N
│ │ │ -001e5dc0: 6f74 2072 656d 6564 6961 7469 6e67 2c20  ot remediating, 
│ │ │ -001e5dd0: 6265 6361 7573 6520 7468 6572 6520 6973  because there is
│ │ │ -001e5de0: 206e 6f20 7265 636f 7264 206f 6620 2f76   no record of /v
│ │ │ -001e5df0: 6172 2f74 6d70 2069 6e20 2f65 7463 2f66  ar/tmp in /etc/f
│ │ │ -001e5e00: 7374 6162 2220 2667 743b 2661 6d70 3b32  stab" >&2
│ │ │ -001e5e10: 3b20 7265 7475 726e 2031 3b20 7d0a 2020  ; return 1; }.  
│ │ │ -001e5e20: 2020 0a0a 0a20 2020 206d 6f75 6e74 5f70    ...    mount_p
│ │ │ -001e5e30: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001e5e40: 703d 2224 2870 7269 6e74 6620 225e 5b5b  p="$(printf "^[[
│ │ │ -001e5e50: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a  :space:]]*[^#].*
│ │ │ -001e5e60: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a  [[:space:]]%s[[:
│ │ │ -001e5e70: 7370 6163 653a 5d5d 2220 2f76 6172 2f74  space:]]" /var/t
│ │ │ -001e5e80: 6d70 2922 0a0a 2020 2020 2320 4966 2074  mp)"..    # If t
│ │ │ -001e5e90: 6865 206d 6f75 6e74 2070 6f69 6e74 2069  he mount point i
│ │ │ -001e5ea0: 7320 6e6f 7420 696e 202f 6574 632f 6673  s not in /etc/fs
│ │ │ -001e5eb0: 7461 622c 2067 6574 2070 7265 7669 6f75  tab, get previou
│ │ │ -001e5ec0: 7320 6d6f 756e 7420 6f70 7469 6f6e 7320  s mount options 
│ │ │ -001e5ed0: 6672 6f6d 202f 6574 632f 6d74 6162 0a20  from /etc/mtab. 
│ │ │ -001e5ee0: 2020 2069 6620 2120 6772 6570 202d 7120     if ! grep -q 
│ │ │ -001e5ef0: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ -001e5f00: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ -001e5f10: 2f66 7374 6162 3b20 7468 656e 0a20 2020  /fstab; then.   
│ │ │ -001e5f20: 2020 2020 2023 2072 756e 7469 6d65 206f       # runtime o
│ │ │ -001e5f30: 7074 7320 7769 7468 6f75 7420 736f 6d65  pts without some
│ │ │ -001e5f40: 2061 7574 6f6d 6174 6963 206b 6572 6e65   automatic kerne
│ │ │ -001e5f50: 6c2f 7573 6572 7370 6163 652d 6164 6465  l/userspace-adde
│ │ │ -001e5f60: 6420 6465 6661 756c 7473 0a20 2020 2020  d defaults.     
│ │ │ -001e5f70: 2020 2070 7265 7669 6f75 735f 6d6f 756e     previous_moun
│ │ │ -001e5f80: 745f 6f70 7473 3d24 2867 7265 7020 2224  t_opts=$(grep "$
│ │ │ -001e5f90: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001e5fa0: 685f 7265 6765 7870 2220 2f65 7463 2f6d  h_regexp" /etc/m
│ │ │ -001e5fb0: 7461 6220 7c20 6865 6164 202d 3120 7c20  tab | head -1 | 
│ │ │ -001e5fc0: 2061 776b 2027 7b70 7269 6e74 2024 347d   awk '{print $4}
│ │ │ -001e5fd0: 2720 5c0a 2020 2020 2020 2020 2020 2020  ' \.            
│ │ │ -001e5fe0: 2020 2020 2020 2020 7c20 7365 6420 2d45          | sed -E
│ │ │ -001e5ff0: 2022 732f 2872 777c 6465 6661 756c 7473   "s/(rw|defaults
│ │ │ -001e6000: 7c73 6563 6c61 6265 6c7c 6e6f 6578 6563  |seclabel|noexec
│ │ │ -001e6010: 2928 2c7c 2429 2f2f 673b 732f 2c24 2f2f  )(,|$)//g;s/,$//
│ │ │ -001e6020: 2229 0a20 2020 2020 2020 205b 2022 2470  ").        [ "$p
│ │ │ -001e6030: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001e6040: 7473 2220 5d20 2661 6d70 3b26 616d 703b  ts" ] &&
│ │ │ -001e6050: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ -001e6060: 6f70 7473 2b3d 222c 220a 2020 2020 2020  opts+=",".      
│ │ │ -001e6070: 2020 2320 496e 2069 736f 3936 3630 2066    # In iso9660 f
│ │ │ -001e6080: 696c 6573 7973 7465 6d73 206d 7461 6220  ilesystems mtab 
│ │ │ -001e6090: 636f 756c 6420 6465 7363 7269 6265 2061  could describe a
│ │ │ -001e60a0: 2022 626c 6f63 6b73 697a 6522 2076 616c   "blocksize" val
│ │ │ -001e60b0: 7565 2c20 7468 6973 2073 686f 756c 6420  ue, this should 
│ │ │ -001e60c0: 6265 2072 6566 6c65 6374 6564 2069 6e0a  be reflected in.
│ │ │ -001e60d0: 2020 2020 2020 2020 2320 6673 7461 6220          # fstab 
│ │ │ -001e60e0: 6173 2022 626c 6f63 6b22 2e20 2054 6865  as "block".  The
│ │ │ -001e60f0: 206e 6578 7420 7661 7269 6162 6c65 2069   next variable i
│ │ │ -001e6100: 7320 746f 2073 6174 6973 6679 2073 6865  s to satisfy she
│ │ │ -001e6110: 6c6c 6368 6563 6b20 5343 3230 3530 2e0a  llcheck SC2050..
│ │ │ -001e6120: 2020 2020 2020 2020 6673 5f74 7970 653d          fs_type=
│ │ │ -001e6130: 2222 0a20 2020 2020 2020 2069 6620 5b20  "".        if [ 
│ │ │ -001e6140: 2022 2466 735f 7479 7065 2220 3d3d 2022   "$fs_type" == "
│ │ │ -001e6150: 6973 6f39 3636 3022 205d 203b 2074 6865  iso9660" ] ; the
│ │ │ -001e6160: 6e0a 2020 2020 2020 2020 2020 2020 7072  n.            pr
│ │ │ -001e6170: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001e6180: 733d 2428 7365 6420 2773 2f62 6c6f 636b  s=$(sed 's/block
│ │ │ -001e6190: 7369 7a65 3d2f 626c 6f63 6b3d 2f27 2026  size=/block=/' &
│ │ │ -001e61a0: 6c74 3b26 6c74 3b26 6c74 3b20 2224 7072  lt;<< "$pr
│ │ │ -001e61b0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001e61c0: 7322 290a 2020 2020 2020 2020 6669 0a20  s").        fi. 
│ │ │ -001e61d0: 2020 2020 2020 2065 6368 6f20 2220 2f76         echo " /v
│ │ │ -001e61e0: 6172 2f74 6d70 2020 6465 6661 756c 7473  ar/tmp  defaults
│ │ │ -001e61f0: 2c24 7b70 7265 7669 6f75 735f 6d6f 756e  ,${previous_moun
│ │ │ -001e6200: 745f 6f70 7473 7d6e 6f65 7865 6320 3020  t_opts}noexec 0 
│ │ │ -001e6210: 3022 2026 6774 3b26 6774 3b20 2f65 7463  0" >> /etc
│ │ │ -001e6220: 2f66 7374 6162 0a20 2020 2023 2049 6620  /fstab.    # If 
│ │ │ -001e6230: 7468 6520 6d6f 756e 745f 6f70 7420 6f70  the mount_opt op
│ │ │ -001e6240: 7469 6f6e 2069 7320 6e6f 7420 616c 7265  tion is not alre
│ │ │ -001e6250: 6164 7920 696e 2074 6865 206d 6f75 6e74  ady in the mount
│ │ │ -001e6260: 2070 6f69 6e74 2773 202f 6574 632f 6673   point's /etc/fs
│ │ │ -001e6270: 7461 6220 656e 7472 792c 2061 6464 2069  tab entry, add i
│ │ │ -001e6280: 740a 2020 2020 656c 6966 2021 2067 7265  t.    elif ! gre
│ │ │ -001e6290: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001e62a0: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ -001e62b0: 7463 2f66 7374 6162 207c 2067 7265 7020  tc/fstab | grep 
│ │ │ -001e62c0: 2d71 2022 6e6f 6578 6563 223b 2074 6865  -q "noexec"; the
│ │ │ -001e62d0: 6e0a 2020 2020 2020 2020 7072 6576 696f  n.        previo
│ │ │ -001e62e0: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ -001e62f0: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ -001e6300: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ -001e6310: 202f 6574 632f 6673 7461 6220 7c20 6177   /etc/fstab | aw
│ │ │ -001e6320: 6b20 277b 7072 696e 7420 2434 7d27 290a  k '{print $4}').
│ │ │ -001e6330: 2020 2020 2020 2020 7365 6420 2d69 2022          sed -i "
│ │ │ -001e6340: 737c 5c28 247b 6d6f 756e 745f 706f 696e  s|\(${mount_poin
│ │ │ -001e6350: 745f 6d61 7463 685f 7265 6765 7870 7d2e  t_match_regexp}.
│ │ │ -001e6360: 2a24 7b70 7265 7669 6f75 735f 6d6f 756e  *${previous_moun
│ │ │ -001e6370: 745f 6f70 7473 7d5c 297c 5c31 2c6e 6f65  t_opts}\)|\1,noe
│ │ │ -001e6380: 7865 637c 2220 2f65 7463 2f66 7374 6162  xec|" /etc/fstab
│ │ │ -001e6390: 0a20 2020 2066 690a 0a0a 2020 2020 6966  .    fi...    if
│ │ │ -001e63a0: 206d 6b64 6972 202d 7020 222f 7661 722f   mkdir -p "/var/
│ │ │ -001e63b0: 746d 7022 3b20 7468 656e 0a20 2020 2020  tmp"; then.     
│ │ │ -001e63c0: 2020 2069 6620 6d6f 756e 7470 6f69 6e74     if mountpoint
│ │ │ -001e63d0: 202d 7120 222f 7661 722f 746d 7022 3b20   -q "/var/tmp"; 
│ │ │ -001e63e0: 7468 656e 0a20 2020 2020 2020 2020 2020  then.           
│ │ │ -001e63f0: 206d 6f75 6e74 202d 6f20 7265 6d6f 756e   mount -o remoun
│ │ │ -001e6400: 7420 2d2d 7461 7267 6574 2022 2f76 6172  t --target "/var
│ │ │ -001e6410: 2f74 6d70 220a 2020 2020 2020 2020 6669  /tmp".        fi
│ │ │ -001e6420: 0a20 2020 2066 690a 7d0a 0a70 6572 666f  .    fi.}..perfo
│ │ │ -001e6430: 726d 5f72 656d 6564 6961 7469 6f6e 0a0a  rm_remediation..
│ │ │ -001e6440: 656c 7365 0a20 2020 2026 6774 3b26 616d  else.    >&am
│ │ │ -001e6450: 703b 3220 6563 686f 2027 5265 6d65 6469  p;2 echo 'Remedi
│ │ │ -001e6460: 6174 696f 6e20 6973 206e 6f74 2061 7070  ation is not app
│ │ │ -001e6470: 6c69 6361 626c 652c 206e 6f74 6869 6e67  licable, nothing
│ │ │ -001e6480: 2077 6173 2064 6f6e 6527 0a66 690a 3c2f   was done'.fi.
│ │ │ +001e4110: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +001e4140: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Reb │ │ │ -001e5990: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -001e59a0: 7365 3c2f 7464 3e3c 2f74 723e 3c2f 7461 se
< │ │ │ +001e41b0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption: │ │ │ +001e41d0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +001e4200: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Comple │ │ │ +001e4190: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +001e41a0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
high
Reb │ │ │ +001e41e0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +001e41f0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:configure< │ │ │ +001e4220: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ +001e4240: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ +001e4250: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ +001e4260: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ +001e4270: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ +001e4280: 2020 7461 6773 3a0a 2020 2d20 636f 6e66    tags:.  - conf
│ │ │ +001e4290: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +001e42a0: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ +001e42b0: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ +001e42c0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ +001e42d0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ +001e42e0: 756e 745f 6f70 7469 6f6e 5f76 6172 5f74  unt_option_var_t
│ │ │ +001e42f0: 6d70 5f6e 6f65 7865 630a 2020 2d20 6e6f  mp_noexec.  - no
│ │ │ +001e4300: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +001e4310: 2d20 6e61 6d65 3a20 2741 6464 206e 6f65  - name: 'Add noe
│ │ │ +001e4320: 7865 6320 4f70 7469 6f6e 2074 6f20 2f76  xec Option to /v
│ │ │ +001e4330: 6172 2f74 6d70 3a20 4368 6563 6b20 696e  ar/tmp: Check in
│ │ │ +001e4340: 666f 726d 6174 696f 6e20 6173 736f 6369  formation associ
│ │ │ +001e4350: 6174 6564 2074 6f20 6d6f 756e 7470 6f69  ated to mountpoi
│ │ │ +001e4360: 6e74 270a 2020 616e 7369 626c 652e 6275  nt'.  ansible.bu
│ │ │ +001e4370: 696c 7469 6e2e 636f 6d6d 616e 643a 2066  iltin.command: f
│ │ │ +001e4380: 696e 646d 6e74 202d 2d66 7374 6162 2027  indmnt --fstab '
│ │ │ +001e4390: 2f76 6172 2f74 6d70 270a 2020 7265 6769  /var/tmp'.  regi
│ │ │ +001e43a0: 7374 6572 3a20 6465 7669 6365 5f6e 616d  ster: device_nam
│ │ │ +001e43b0: 650a 2020 6661 696c 6564 5f77 6865 6e3a  e.  failed_when:
│ │ │ +001e43c0: 2064 6576 6963 655f 6e61 6d65 2e72 6320   device_name.rc 
│ │ │ +001e43d0: 2667 743b 2031 0a20 2063 6861 6e67 6564  > 1.  changed
│ │ │ +001e43e0: 5f77 6865 6e3a 2066 616c 7365 0a20 2063  _when: false.  c
│ │ │ +001e43f0: 6865 636b 5f6d 6f64 653a 2066 616c 7365  heck_mode: false
│ │ │ +001e4400: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ +001e4410: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ +001e4420: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001e4430: 6163 6b61 6765 7320 616e 6420 2272 706d  ackages and "rpm
│ │ │ +001e4440: 2d6f 7374 7265 6522 2069 6e20 616e 7369  -ostree" in ansi
│ │ │ +001e4450: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001e4460: 6573 0a20 2020 2061 6e64 2022 626f 6f74  es.    and "boot
│ │ │ +001e4470: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ +001e4480: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001e4490: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ +001e44a0: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ +001e44b0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001e44c0: 6573 0a20 2020 2061 6e64 2022 6f73 7472  es.    and "ostr
│ │ │ +001e44d0: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ +001e44e0: 726f 635f 636d 646c 696e 6520 2920 616e  roc_cmdline ) an
│ │ │ +001e44f0: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ +001e4500: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ +001e4510: 7970 6520 696e 0a20 2020 205b 2264 6f63  ype in.    ["doc
│ │ │ +001e4520: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ +001e4530: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ +001e4540: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ +001e4550: 290a 2020 2d20 2722 2f76 6172 2f74 6d70  ).  - '"/var/tmp
│ │ │ +001e4560: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ +001e4570: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ +001e4580: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ +001e4590: 6973 7427 0a20 2074 6167 733a 0a20 202d  ist'.  tags:.  -
│ │ │ +001e45a0: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ +001e45b0: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ +001e45c0: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ +001e45d0: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +001e45e0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +001e45f0: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ +001e4600: 7661 725f 746d 705f 6e6f 6578 6563 0a20  var_tmp_noexec. 
│ │ │ +001e4610: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +001e4620: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ +001e4630: 6420 6e6f 6578 6563 204f 7074 696f 6e20  d noexec Option 
│ │ │ +001e4640: 746f 202f 7661 722f 746d 703a 2043 7265  to /var/tmp: Cre
│ │ │ +001e4650: 6174 6520 6d6f 756e 745f 696e 666f 2064  ate mount_info d
│ │ │ +001e4660: 6963 7469 6f6e 6172 7920 7661 7269 6162  ictionary variab
│ │ │ +001e4670: 6c65 270a 2020 7365 745f 6661 6374 3a0a  le'.  set_fact:.
│ │ │ +001e4680: 2020 2020 6d6f 756e 745f 696e 666f 3a20      mount_info: 
│ │ │ +001e4690: 277b 7b20 6d6f 756e 745f 696e 666f 7c64  '{{ mount_info|d
│ │ │ +001e46a0: 6566 6175 6c74 287b 7d29 7c63 6f6d 6269  efault({})|combi
│ │ │ +001e46b0: 6e65 287b 6974 656d 2e30 3a20 6974 656d  ne({item.0: item
│ │ │ +001e46c0: 2e31 7d29 207d 7d27 0a20 2077 6974 685f  .1}) }}'.  with_
│ │ │ +001e46d0: 746f 6765 7468 6572 3a0a 2020 2d20 277b  together:.  - '{
│ │ │ +001e46e0: 7b20 6465 7669 6365 5f6e 616d 652e 7374  { device_name.st
│ │ │ +001e46f0: 646f 7574 5f6c 696e 6573 5b30 5d2e 7370  dout_lines[0].sp
│ │ │ +001e4700: 6c69 7428 2920 7c20 6d61 7028 2727 6c6f  lit() | map(''lo
│ │ │ +001e4710: 7765 7227 2729 207c 206c 6973 7420 7d7d  wer'') | list }}
│ │ │ +001e4720: 270a 2020 2d20 277b 7b20 6465 7669 6365  '.  - '{{ device
│ │ │ +001e4730: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ +001e4740: 6573 5b31 5d2e 7370 6c69 7428 2920 7c20  es[1].split() | 
│ │ │ +001e4750: 6c69 7374 207d 7d27 0a20 2077 6865 6e3a  list }}'.  when:
│ │ │ +001e4760: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ +001e4770: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +001e4780: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001e4790: 616e 6420 2272 706d 2d6f 7374 7265 6522  and "rpm-ostree"
│ │ │ +001e47a0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001e47b0: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001e47c0: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ +001e47d0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001e47e0: 6167 6573 2061 6e64 206e 6f74 2022 6f70  ages and not "op
│ │ │ +001e47f0: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ +001e4800: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001e4810: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001e4820: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ +001e4830: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ +001e4840: 696e 6520 2920 616e 6420 6e6f 7420 2820  ine ) and not ( 
│ │ │ +001e4850: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ +001e4860: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20  zation_type in. 
│ │ │ +001e4870: 2020 205b 2264 6f63 6b65 7222 2c20 226c     ["docker", "l
│ │ │ +001e4880: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ +001e4890: 706f 646d 616e 222c 2022 636f 6e74 6169  podman", "contai
│ │ │ +001e48a0: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ +001e48b0: 2f76 6172 2f74 6d70 2220 696e 2061 6e73  /var/tmp" in ans
│ │ │ +001e48c0: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ +001e48d0: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ +001e48e0: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ +001e48f0: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +001e4900: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ +001e4910: 6e64 2064 6576 6963 655f 6e61 6d65 2e73  nd device_name.s
│ │ │ +001e4920: 7464 6f75 745f 6c69 6e65 7320 6973 2064  tdout_lines is d
│ │ │ +001e4930: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ +001e4940: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ +001e4950: 206c 656e 6774 6820 2667 743b 2030 290a   length > 0).
│ │ │ +001e4960: 2020 7461 6773 3a0a 2020 2d20 636f 6e66    tags:.  - conf
│ │ │ +001e4970: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +001e4980: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ +001e4990: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ +001e49a0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ +001e49b0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ +001e49c0: 756e 745f 6f70 7469 6f6e 5f76 6172 5f74  unt_option_var_t
│ │ │ +001e49d0: 6d70 5f6e 6f65 7865 630a 2020 2d20 6e6f  mp_noexec.  - no
│ │ │ +001e49e0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +001e49f0: 2d20 6e61 6d65 3a20 2741 6464 206e 6f65  - name: 'Add noe
│ │ │ +001e4a00: 7865 6320 4f70 7469 6f6e 2074 6f20 2f76  xec Option to /v
│ │ │ +001e4a10: 6172 2f74 6d70 3a20 4966 202f 7661 722f  ar/tmp: If /var/
│ │ │ +001e4a20: 746d 7020 6e6f 7420 6d6f 756e 7465 642c  tmp not mounted,
│ │ │ +001e4a30: 2063 7261 6674 206d 6f75 6e74 5f69 6e66   craft mount_inf
│ │ │ +001e4a40: 6f0a 2020 2020 6d61 6e75 616c 6c79 270a  o.    manually'.
│ │ │ +001e4a50: 2020 7365 745f 6661 6374 3a0a 2020 2020    set_fact:.    
│ │ │ +001e4a60: 6d6f 756e 745f 696e 666f 3a20 277b 7b20  mount_info: '{{ 
│ │ │ +001e4a70: 6d6f 756e 745f 696e 666f 7c64 6566 6175  mount_info|defau
│ │ │ +001e4a80: 6c74 287b 7d29 7c63 6f6d 6269 6e65 287b  lt({})|combine({
│ │ │ +001e4a90: 6974 656d 2e30 3a20 6974 656d 2e31 7d29  item.0: item.1})
│ │ │ +001e4aa0: 207d 7d27 0a20 2077 6974 685f 746f 6765   }}'.  with_toge
│ │ │ +001e4ab0: 7468 6572 3a0a 2020 2d20 2d20 7461 7267  ther:.  - - targ
│ │ │ +001e4ac0: 6574 0a20 2020 202d 2073 6f75 7263 650a  et.    - source.
│ │ │ +001e4ad0: 2020 2020 2d20 6673 7479 7065 0a20 2020      - fstype.   
│ │ │ +001e4ae0: 202d 206f 7074 696f 6e73 0a20 202d 202d   - options.  - -
│ │ │ +001e4af0: 202f 7661 722f 746d 700a 2020 2020 2d20   /var/tmp.    - 
│ │ │ +001e4b00: 2727 0a20 2020 202d 2027 270a 2020 2020  ''.    - ''.    
│ │ │ +001e4b10: 2d20 6465 6661 756c 7473 0a20 2077 6865  - defaults.  whe
│ │ │ +001e4b20: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +001e4b30: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001e4b40: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001e4b50: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ +001e4b60: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ +001e4b70: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001e4b80: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ +001e4b90: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001e4ba0: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ +001e4bb0: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +001e4bc0: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ +001e4bd0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001e4be0: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ +001e4bf0: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ +001e4c00: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ +001e4c10: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ +001e4c20: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ +001e4c30: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ +001e4c40: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ +001e4c50: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ +001e4c60: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ +001e4c70: 2722 2f76 6172 2f74 6d70 2220 696e 2061  '"/var/tmp" in a
│ │ │ +001e4c80: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ +001e4c90: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ +001e4ca0: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ +001e4cb0: 202d 2028 222d 2d66 7374 6162 2220 7c20   - ("--fstab" | 
│ │ │ +001e4cc0: 6c65 6e67 7468 203d 3d20 3029 0a20 202d  length == 0).  -
│ │ │ +001e4cd0: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +001e4ce0: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ +001e4cf0: 6e64 2064 6576 6963 655f 6e61 6d65 2e73  nd device_name.s
│ │ │ +001e4d00: 7464 6f75 745f 6c69 6e65 7320 6973 2064  tdout_lines is d
│ │ │ +001e4d10: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ +001e4d20: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ +001e4d30: 206c 656e 6774 6820 3d3d 2030 290a 2020   length == 0).  
│ │ │ +001e4d40: 7461 6773 3a0a 2020 2d20 636f 6e66 6967  tags:.  - config
│ │ │ +001e4d50: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +001e4d60: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ +001e4d70: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001e4d80: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ +001e4d90: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ +001e4da0: 745f 6f70 7469 6f6e 5f76 6172 5f74 6d70  t_option_var_tmp
│ │ │ +001e4db0: 5f6e 6f65 7865 630a 2020 2d20 6e6f 5f72  _noexec.  - no_r
│ │ │ +001e4dc0: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +001e4dd0: 6e61 6d65 3a20 2741 6464 206e 6f65 7865  name: 'Add noexe
│ │ │ +001e4de0: 6320 4f70 7469 6f6e 2074 6f20 2f76 6172  c Option to /var
│ │ │ +001e4df0: 2f74 6d70 3a20 4d61 6b65 2073 7572 6520  /tmp: Make sure 
│ │ │ +001e4e00: 6e6f 6578 6563 206f 7074 696f 6e20 6973  noexec option is
│ │ │ +001e4e10: 2070 6172 7420 6f66 2074 6865 2074 6f0a   part of the to.
│ │ │ +001e4e20: 2020 2020 2f76 6172 2f74 6d70 206f 7074      /var/tmp opt
│ │ │ +001e4e30: 696f 6e73 270a 2020 7365 745f 6661 6374  ions'.  set_fact
│ │ │ +001e4e40: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ +001e4e50: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001e4e60: 207c 2063 6f6d 6269 6e65 2820 7b27 276f   | combine( {''o
│ │ │ +001e4e70: 7074 696f 6e73 2727 3a27 2727 277e 286d  ptions'':''''~(m
│ │ │ +001e4e80: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ +001e4e90: 7320 7c0a 2020 2020 2020 6465 6661 756c  s |.      defaul
│ │ │ +001e4ea0: 7428 2727 2727 2929 7e28 2727 2c27 2720  t(''''))~('','' 
│ │ │ +001e4eb0: 6966 2028 6d6f 756e 745f 696e 666f 2e6f  if (mount_info.o
│ │ │ +001e4ec0: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ +001e4ed0: 2827 2727 2729 2920 656c 7365 2027 2727  ('''')) else '''
│ │ │ +001e4ee0: 2729 7e27 276e 6f65 7865 6327 270a 2020  ')~''noexec''.  
│ │ │ +001e4ef0: 2020 2020 7d29 207d 7d27 0a20 2077 6865      }) }}'.  whe
│ │ │ +001e4f00: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +001e4f10: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001e4f20: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001e4f30: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ +001e4f40: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ +001e4f50: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001e4f60: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ +001e4f70: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001e4f80: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ +001e4f90: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +001e4fa0: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ +001e4fb0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001e4fc0: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ +001e4fd0: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ +001e4fe0: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ +001e4ff0: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ +001e5000: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ +001e5010: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ +001e5020: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ +001e5030: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ +001e5040: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ +001e5050: 2722 2f76 6172 2f74 6d70 2220 696e 2061  '"/var/tmp" in a
│ │ │ +001e5060: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ +001e5070: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ +001e5080: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ +001e5090: 202d 206d 6f75 6e74 5f69 6e66 6f20 6973   - mount_info is
│ │ │ +001e50a0: 2064 6566 696e 6564 2061 6e64 2022 6e6f   defined and "no
│ │ │ +001e50b0: 6578 6563 2220 6e6f 7420 696e 2028 6d6f  exec" not in (mo
│ │ │ +001e50c0: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ +001e50d0: 207c 2064 6566 6175 6c74 2827 2729 290a   | default('')).
│ │ │ +001e50e0: 2020 7461 6773 3a0a 2020 2d20 636f 6e66    tags:.  - conf
│ │ │ +001e50f0: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +001e5100: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ +001e5110: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ +001e5120: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ +001e5130: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ +001e5140: 756e 745f 6f70 7469 6f6e 5f76 6172 5f74  unt_option_var_t
│ │ │ +001e5150: 6d70 5f6e 6f65 7865 630a 2020 2d20 6e6f  mp_noexec.  - no
│ │ │ +001e5160: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +001e5170: 2d20 6e61 6d65 3a20 2741 6464 206e 6f65  - name: 'Add noe
│ │ │ +001e5180: 7865 6320 4f70 7469 6f6e 2074 6f20 2f76  xec Option to /v
│ │ │ +001e5190: 6172 2f74 6d70 3a20 456e 7375 7265 202f  ar/tmp: Ensure /
│ │ │ +001e51a0: 7661 722f 746d 7020 6973 206d 6f75 6e74  var/tmp is mount
│ │ │ +001e51b0: 6564 2077 6974 6820 6e6f 6578 6563 206f  ed with noexec o
│ │ │ +001e51c0: 7074 696f 6e27 0a20 2061 6e73 6962 6c65  ption'.  ansible
│ │ │ +001e51d0: 2e70 6f73 6978 2e6d 6f75 6e74 3a0a 2020  .posix.mount:.  
│ │ │ +001e51e0: 2020 7061 7468 3a20 2f76 6172 2f74 6d70    path: /var/tmp
│ │ │ +001e51f0: 0a20 2020 2073 7263 3a20 277b 7b20 6d6f  .    src: '{{ mo
│ │ │ +001e5200: 756e 745f 696e 666f 2e73 6f75 7263 6520  unt_info.source 
│ │ │ +001e5210: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ +001e5220: 7d7d 270a 2020 2020 6f70 7473 3a20 277b  }}'.    opts: '{
│ │ │ +001e5230: 7b20 6d6f 756e 745f 696e 666f 2e6f 7074  { mount_info.opt
│ │ │ +001e5240: 696f 6e73 207c 2064 6566 6175 6c74 2827  ions | default('
│ │ │ +001e5250: 2727 2729 207d 7d27 0a20 2020 2073 7461  ''') }}'.    sta
│ │ │ +001e5260: 7465 3a20 6d6f 756e 7465 640a 2020 2020  te: mounted.    
│ │ │ +001e5270: 6673 7479 7065 3a20 277b 7b20 6d6f 756e  fstype: '{{ moun
│ │ │ +001e5280: 745f 696e 666f 2e66 7374 7970 6520 7c20  t_info.fstype | 
│ │ │ +001e5290: 6465 6661 756c 7428 2727 2727 2920 7d7d  default('''') }}
│ │ │ +001e52a0: 270a 2020 7265 6769 7374 6572 3a20 6d6f  '.  register: mo
│ │ │ +001e52b0: 756e 745f 7265 7375 6c74 0a20 2066 6169  unt_result.  fai
│ │ │ +001e52c0: 6c65 645f 7768 656e 3a0a 2020 2d20 6d6f  led_when:.  - mo
│ │ │ +001e52d0: 756e 745f 7265 7375 6c74 2069 7320 6661  unt_result is fa
│ │ │ +001e52e0: 696c 6564 0a20 202d 2027 2727 7461 7267  iled.  - '''targ
│ │ │ +001e52f0: 6574 2069 7320 6275 7379 2727 206e 6f74  et is busy'' not
│ │ │ +001e5300: 2069 6e20 286d 6f75 6e74 5f72 6573 756c   in (mount_resul
│ │ │ +001e5310: 742e 6d73 6720 7c20 6465 6661 756c 7428  t.msg | default(
│ │ │ +001e5320: 2727 2727 2929 270a 2020 2d20 2727 2761  ''''))'.  - '''a
│ │ │ +001e5330: 6c72 6561 6479 206d 6f75 6e74 6564 2727  lready mounted''
│ │ │ +001e5340: 206e 6f74 2069 6e20 286d 6f75 6e74 5f72   not in (mount_r
│ │ │ +001e5350: 6573 756c 742e 6d73 6720 7c20 6465 6661  esult.msg | defa
│ │ │ +001e5360: 756c 7428 2727 2727 2929 270a 2020 7768  ult(''''))'.  wh
│ │ │ +001e5370: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ +001e5380: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +001e5390: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001e53a0: 6573 2061 6e64 2022 7270 6d2d 6f73 7472  es and "rpm-ostr
│ │ │ +001e53b0: 6565 2220 696e 2061 6e73 6962 6c65 5f66  ee" in ansible_f
│ │ │ +001e53c0: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001e53d0: 2020 616e 6420 2262 6f6f 7463 2220 696e    and "bootc" in
│ │ │ +001e53e0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001e53f0: 6163 6b61 6765 7320 616e 6420 6e6f 7420  ackages and not 
│ │ │ +001e5400: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +001e5410: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +001e5420: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001e5430: 2020 616e 6420 226f 7374 7265 6522 2069    and "ostree" i
│ │ │ +001e5440: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ +001e5450: 6d64 6c69 6e65 2029 2061 6e64 206e 6f74  mdline ) and not
│ │ │ +001e5460: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +001e5470: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +001e5480: 6e0a 2020 2020 5b22 646f 636b 6572 222c  n.    ["docker",
│ │ │ +001e5490: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ +001e54a0: 2c20 2270 6f64 6d61 6e22 2c20 2263 6f6e  , "podman", "con
│ │ │ +001e54b0: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ +001e54c0: 2027 222f 7661 722f 746d 7022 2069 6e20   '"/var/tmp" in 
│ │ │ +001e54d0: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ +001e54e0: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ +001e54f0: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ +001e5500: 2020 2d20 6d6f 756e 745f 696e 666f 2069    - mount_info i
│ │ │ +001e5510: 7320 6465 6669 6e65 640a 2020 2d20 2864  s defined.  - (d
│ │ │ +001e5520: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001e5530: 7420 6973 2064 6566 696e 6564 2061 6e64  t is defined and
│ │ │ +001e5540: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ +001e5550: 646f 7574 207c 206c 656e 6774 6820 2667  dout | length &g
│ │ │ +001e5560: 743b 2030 2929 206f 7220 2822 2d2d 6673  t; 0)) or ("--fs
│ │ │ +001e5570: 7461 6222 0a20 2020 207c 206c 656e 6774  tab".    | lengt
│ │ │ +001e5580: 6820 3d3d 2030 290a 2020 7461 6773 3a0a  h == 0).  tags:.
│ │ │ +001e5590: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +001e55a0: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +001e55b0: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +001e55c0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +001e55d0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001e55e0: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ +001e55f0: 6f6e 5f76 6172 5f74 6d70 5f6e 6f65 7865  on_var_tmp_noexe
│ │ │ +001e5600: 630a 2020 2d20 6e6f 5f72 6562 6f6f 745f  c.  - no_reboot_
│ │ │ +001e5610: 6e65 6564 6564 0a3c 2f63 6f64 653e 3c2f  needed.
Remediati │ │ │ +001e56d0: 6f6e 2053 6865 6c6c 2073 6372 6970 7420 on Shell script │ │ │ +001e56e0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Reboot:false< │ │ │ +001e5780: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
# Remedia
│ │ │ +001e57a0: 7469 6f6e 2069 7320 6170 706c 6963 6162  tion is applicab
│ │ │ +001e57b0: 6c65 206f 6e6c 7920 696e 2063 6572 7461  le only in certa
│ │ │ +001e57c0: 696e 2070 6c61 7466 6f72 6d73 0a69 6620  in platforms.if 
│ │ │ +001e57d0: 2820 2120 2820 7b20 7270 6d20 2d2d 7175  ( ! ( { rpm --qu
│ │ │ +001e57e0: 6965 7420 2d71 206b 6572 6e65 6c20 3b7d  iet -q kernel ;}
│ │ │ +001e57f0: 2026 616d 703b 2661 6d70 3b20 7b20 7270   && { rp
│ │ │ +001e5800: 6d20 2d2d 7175 6965 7420 2d71 2072 706d  m --quiet -q rpm
│ │ │ +001e5810: 2d6f 7374 7265 6520 3b7d 2026 616d 703b  -ostree ;} &
│ │ │ +001e5820: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ +001e5830: 6965 7420 2d71 2062 6f6f 7463 203b 7d20  iet -q bootc ;} 
│ │ │ +001e5840: 2661 6d70 3b26 616d 703b 207b 2021 2072  && { ! r
│ │ │ +001e5850: 706d 202d 2d71 7569 6574 202d 7120 6f70  pm --quiet -q op
│ │ │ +001e5860: 656e 7368 6966 742d 6b75 6265 6c65 7420  enshift-kubelet 
│ │ │ +001e5870: 3b7d 2026 616d 703b 2661 6d70 3b20 285b  ;} && ([
│ │ │ +001e5880: 202d 6620 2f72 756e 2f6f 7374 7265 652d   -f /run/ostree-
│ │ │ +001e5890: 626f 6f74 6564 205d 207c 7c20 5b20 2d4c  booted ] || [ -L
│ │ │ +001e58a0: 202f 6f73 7472 6565 205d 2920 2920 2661   /ostree ]) ) &a
│ │ │ +001e58b0: 6d70 3b26 616d 703b 2021 2028 205b 202d  mp;& ! ( [ -
│ │ │ +001e58c0: 6620 2f2e 646f 636b 6572 656e 7620 5d20  f /.dockerenv ] 
│ │ │ +001e58d0: 7c7c 205b 202d 6620 2f72 756e 2f2e 636f  || [ -f /run/.co
│ │ │ +001e58e0: 6e74 6169 6e65 7265 6e76 205d 2029 2029  ntainerenv ] ) )
│ │ │ +001e58f0: 2026 616d 703b 2661 6d70 3b20 7b20 2820   && { ( 
│ │ │ +001e5900: 6669 6e64 6d6e 7420 2d2d 6b65 726e 656c  findmnt --kernel
│ │ │ +001e5910: 2022 2f76 6172 2f74 6d70 2220 2667 743b   "/var/tmp" >
│ │ │ +001e5920: 202f 6465 762f 6e75 6c6c 207c 7c20 6669   /dev/null || fi
│ │ │ +001e5930: 6e64 6d6e 7420 2d2d 6673 7461 6220 222f  ndmnt --fstab "/
│ │ │ +001e5940: 7661 722f 746d 7022 2026 6774 3b20 2f64  var/tmp" > /d
│ │ │ +001e5950: 6576 2f6e 756c 6c20 293b 207d 3b20 7468  ev/null ); }; th
│ │ │ +001e5960: 656e 0a0a 6675 6e63 7469 6f6e 2070 6572  en..function per
│ │ │ +001e5970: 666f 726d 5f72 656d 6564 6961 7469 6f6e  form_remediation
│ │ │ +001e5980: 207b 0a0a 2020 2020 0a20 2020 2020 2020   {..    .       
│ │ │ +001e5990: 2023 2074 6865 206d 6f75 6e74 2070 6f69   # the mount poi
│ │ │ +001e59a0: 6e74 202f 7661 722f 746d 7020 6861 7320  nt /var/tmp has 
│ │ │ +001e59b0: 746f 2062 6520 6465 6669 6e65 6420 696e  to be defined in
│ │ │ +001e59c0: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ +001e59d0: 2020 2020 2320 6265 666f 7265 2074 6869      # before thi
│ │ │ +001e59e0: 7320 7265 6d65 6469 6174 696f 6e20 6361  s remediation ca
│ │ │ +001e59f0: 6e20 6265 2065 7865 6375 7465 642e 2049  n be executed. I
│ │ │ +001e5a00: 6e20 6361 7365 2069 7420 6973 206e 6f74  n case it is not
│ │ │ +001e5a10: 2064 6566 696e 6564 2c20 7468 650a 2020   defined, the.  
│ │ │ +001e5a20: 2020 2020 2020 2320 7265 6d65 6469 6174        # remediat
│ │ │ +001e5a30: 696f 6e20 6162 6f72 7473 2061 6e64 206e  ion aborts and n
│ │ │ +001e5a40: 6f20 6368 616e 6765 7320 7265 6761 7264  o changes regard
│ │ │ +001e5a50: 696e 6720 7468 6520 6d6f 756e 7420 706f  ing the mount po
│ │ │ +001e5a60: 696e 7420 6172 6520 646f 6e65 2e0a 2020  int are done..  
│ │ │ +001e5a70: 2020 2020 2020 6d6f 756e 745f 706f 696e        mount_poin
│ │ │ +001e5a80: 745f 6d61 7463 685f 7265 6765 7870 3d22  t_match_regexp="
│ │ │ +001e5a90: 2428 7072 696e 7466 2022 5e5b 5b3a 7370  $(printf "^[[:sp
│ │ │ +001e5aa0: 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a  ace:]]*[^#].*[[:
│ │ │ +001e5ab0: 7370 6163 653a 5d5d 2573 5b5b 3a73 7061  space:]]%s[[:spa
│ │ │ +001e5ac0: 6365 3a5d 5d22 2022 2f76 6172 2f74 6d70  ce:]]" "/var/tmp
│ │ │ +001e5ad0: 2229 220a 0a20 2020 2067 7265 7020 2224  ")"..    grep "$
│ │ │ +001e5ae0: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001e5af0: 685f 7265 6765 7870 2220 2d71 202f 6574  h_regexp" -q /et
│ │ │ +001e5b00: 632f 6673 7461 6220 5c0a 2020 2020 2020  c/fstab \.      
│ │ │ +001e5b10: 2020 7c7c 207b 2065 6368 6f20 2254 6865    || { echo "The
│ │ │ +001e5b20: 206d 6f75 6e74 2070 6f69 6e74 2027 2f76   mount point '/v
│ │ │ +001e5b30: 6172 2f74 6d70 2720 6973 206e 6f74 2065  ar/tmp' is not e
│ │ │ +001e5b40: 7665 6e20 696e 202f 6574 632f 6673 7461  ven in /etc/fsta
│ │ │ +001e5b50: 622c 2073 6f20 7765 2063 616e 2774 2073  b, so we can't s
│ │ │ +001e5b60: 6574 2075 7020 6d6f 756e 7420 6f70 7469  et up mount opti
│ │ │ +001e5b70: 6f6e 7322 2026 6774 3b26 616d 703b 323b  ons" >&2;
│ │ │ +001e5b80: 0a20 2020 2020 2020 2020 2020 2020 2020  .               
│ │ │ +001e5b90: 2065 6368 6f20 224e 6f74 2072 656d 6564   echo "Not remed
│ │ │ +001e5ba0: 6961 7469 6e67 2c20 6265 6361 7573 6520  iating, because 
│ │ │ +001e5bb0: 7468 6572 6520 6973 206e 6f20 7265 636f  there is no reco
│ │ │ +001e5bc0: 7264 206f 6620 2f76 6172 2f74 6d70 2069  rd of /var/tmp i
│ │ │ +001e5bd0: 6e20 2f65 7463 2f66 7374 6162 2220 2667  n /etc/fstab" &g
│ │ │ +001e5be0: 743b 2661 6d70 3b32 3b20 7265 7475 726e  t;&2; return
│ │ │ +001e5bf0: 2031 3b20 7d0a 2020 2020 0a0a 0a20 2020   1; }.    ...   
│ │ │ +001e5c00: 206d 6f75 6e74 5f70 6f69 6e74 5f6d 6174   mount_point_mat
│ │ │ +001e5c10: 6368 5f72 6567 6578 703d 2224 2870 7269  ch_regexp="$(pri
│ │ │ +001e5c20: 6e74 6620 225e 5b5b 3a73 7061 6365 3a5d  ntf "^[[:space:]
│ │ │ +001e5c30: 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061 6365  ]*[^#].*[[:space
│ │ │ +001e5c40: 3a5d 5d25 735b 5b3a 7370 6163 653a 5d5d  :]]%s[[:space:]]
│ │ │ +001e5c50: 2220 2f76 6172 2f74 6d70 2922 0a0a 2020  " /var/tmp)"..  
│ │ │ +001e5c60: 2020 2320 4966 2074 6865 206d 6f75 6e74    # If the mount
│ │ │ +001e5c70: 2070 6f69 6e74 2069 7320 6e6f 7420 696e   point is not in
│ │ │ +001e5c80: 202f 6574 632f 6673 7461 622c 2067 6574   /etc/fstab, get
│ │ │ +001e5c90: 2070 7265 7669 6f75 7320 6d6f 756e 7420   previous mount 
│ │ │ +001e5ca0: 6f70 7469 6f6e 7320 6672 6f6d 202f 6574  options from /et
│ │ │ +001e5cb0: 632f 6d74 6162 0a20 2020 2069 6620 2120  c/mtab.    if ! 
│ │ │ +001e5cc0: 6772 6570 202d 7120 2224 6d6f 756e 745f  grep -q "$mount_
│ │ │ +001e5cd0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001e5ce0: 7870 2220 2f65 7463 2f66 7374 6162 3b20  xp" /etc/fstab; 
│ │ │ +001e5cf0: 7468 656e 0a20 2020 2020 2020 2023 2072  then.        # r
│ │ │ +001e5d00: 756e 7469 6d65 206f 7074 7320 7769 7468  untime opts with
│ │ │ +001e5d10: 6f75 7420 736f 6d65 2061 7574 6f6d 6174  out some automat
│ │ │ +001e5d20: 6963 206b 6572 6e65 6c2f 7573 6572 7370  ic kernel/usersp
│ │ │ +001e5d30: 6163 652d 6164 6465 6420 6465 6661 756c  ace-added defaul
│ │ │ +001e5d40: 7473 0a20 2020 2020 2020 2070 7265 7669  ts.        previ
│ │ │ +001e5d50: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ +001e5d60: 2867 7265 7020 2224 6d6f 756e 745f 706f  (grep "$mount_po
│ │ │ +001e5d70: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001e5d80: 2220 2f65 7463 2f6d 7461 6220 7c20 6865  " /etc/mtab | he
│ │ │ +001e5d90: 6164 202d 3120 7c20 2061 776b 2027 7b70  ad -1 |  awk '{p
│ │ │ +001e5da0: 7269 6e74 2024 347d 2720 5c0a 2020 2020  rint $4}' \.    
│ │ │ +001e5db0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +001e5dc0: 7c20 7365 6420 2d45 2022 732f 2872 777c  | sed -E "s/(rw|
│ │ │ +001e5dd0: 6465 6661 756c 7473 7c73 6563 6c61 6265  defaults|seclabe
│ │ │ +001e5de0: 6c7c 6e6f 6578 6563 2928 2c7c 2429 2f2f  l|noexec)(,|$)//
│ │ │ +001e5df0: 673b 732f 2c24 2f2f 2229 0a20 2020 2020  g;s/,$//").     
│ │ │ +001e5e00: 2020 205b 2022 2470 7265 7669 6f75 735f     [ "$previous_
│ │ │ +001e5e10: 6d6f 756e 745f 6f70 7473 2220 5d20 2661  mount_opts" ] &a
│ │ │ +001e5e20: 6d70 3b26 616d 703b 2070 7265 7669 6f75  mp;& previou
│ │ │ +001e5e30: 735f 6d6f 756e 745f 6f70 7473 2b3d 222c  s_mount_opts+=",
│ │ │ +001e5e40: 220a 2020 2020 2020 2020 2320 496e 2069  ".        # In i
│ │ │ +001e5e50: 736f 3936 3630 2066 696c 6573 7973 7465  so9660 filesyste
│ │ │ +001e5e60: 6d73 206d 7461 6220 636f 756c 6420 6465  ms mtab could de
│ │ │ +001e5e70: 7363 7269 6265 2061 2022 626c 6f63 6b73  scribe a "blocks
│ │ │ +001e5e80: 697a 6522 2076 616c 7565 2c20 7468 6973  ize" value, this
│ │ │ +001e5e90: 2073 686f 756c 6420 6265 2072 6566 6c65   should be refle
│ │ │ +001e5ea0: 6374 6564 2069 6e0a 2020 2020 2020 2020  cted in.        
│ │ │ +001e5eb0: 2320 6673 7461 6220 6173 2022 626c 6f63  # fstab as "bloc
│ │ │ +001e5ec0: 6b22 2e20 2054 6865 206e 6578 7420 7661  k".  The next va
│ │ │ +001e5ed0: 7269 6162 6c65 2069 7320 746f 2073 6174  riable is to sat
│ │ │ +001e5ee0: 6973 6679 2073 6865 6c6c 6368 6563 6b20  isfy shellcheck 
│ │ │ +001e5ef0: 5343 3230 3530 2e0a 2020 2020 2020 2020  SC2050..        
│ │ │ +001e5f00: 6673 5f74 7970 653d 2222 0a20 2020 2020  fs_type="".     
│ │ │ +001e5f10: 2020 2069 6620 5b20 2022 2466 735f 7479     if [  "$fs_ty
│ │ │ +001e5f20: 7065 2220 3d3d 2022 6973 6f39 3636 3022  pe" == "iso9660"
│ │ │ +001e5f30: 205d 203b 2074 6865 6e0a 2020 2020 2020   ] ; then.      
│ │ │ +001e5f40: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ +001e5f50: 6f75 6e74 5f6f 7074 733d 2428 7365 6420  ount_opts=$(sed 
│ │ │ +001e5f60: 2773 2f62 6c6f 636b 7369 7a65 3d2f 626c  's/blocksize=/bl
│ │ │ +001e5f70: 6f63 6b3d 2f27 2026 6c74 3b26 6c74 3b26  ock=/' <<&
│ │ │ +001e5f80: 6c74 3b20 2224 7072 6576 696f 7573 5f6d  lt; "$previous_m
│ │ │ +001e5f90: 6f75 6e74 5f6f 7074 7322 290a 2020 2020  ount_opts").    
│ │ │ +001e5fa0: 2020 2020 6669 0a20 2020 2020 2020 2065      fi.        e
│ │ │ +001e5fb0: 6368 6f20 2220 2f76 6172 2f74 6d70 2020  cho " /var/tmp  
│ │ │ +001e5fc0: 6465 6661 756c 7473 2c24 7b70 7265 7669  defaults,${previ
│ │ │ +001e5fd0: 6f75 735f 6d6f 756e 745f 6f70 7473 7d6e  ous_mount_opts}n
│ │ │ +001e5fe0: 6f65 7865 6320 3020 3022 2026 6774 3b26  oexec 0 0" >&
│ │ │ +001e5ff0: 6774 3b20 2f65 7463 2f66 7374 6162 0a20  gt; /etc/fstab. 
│ │ │ +001e6000: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ +001e6010: 745f 6f70 7420 6f70 7469 6f6e 2069 7320  t_opt option is 
│ │ │ +001e6020: 6e6f 7420 616c 7265 6164 7920 696e 2074  not already in t
│ │ │ +001e6030: 6865 206d 6f75 6e74 2070 6f69 6e74 2773  he mount point's
│ │ │ +001e6040: 202f 6574 632f 6673 7461 6220 656e 7472   /etc/fstab entr
│ │ │ +001e6050: 792c 2061 6464 2069 740a 2020 2020 656c  y, add it.    el
│ │ │ +001e6060: 6966 2021 2067 7265 7020 2224 6d6f 756e  if ! grep "$moun
│ │ │ +001e6070: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001e6080: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ +001e6090: 207c 2067 7265 7020 2d71 2022 6e6f 6578   | grep -q "noex
│ │ │ +001e60a0: 6563 223b 2074 6865 6e0a 2020 2020 2020  ec"; then.      
│ │ │ +001e60b0: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ +001e60c0: 5f6f 7074 733d 2428 6772 6570 2022 246d  _opts=$(grep "$m
│ │ │ +001e60d0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001e60e0: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ +001e60f0: 7461 6220 7c20 6177 6b20 277b 7072 696e  tab | awk '{prin
│ │ │ +001e6100: 7420 2434 7d27 290a 2020 2020 2020 2020  t $4}').        
│ │ │ +001e6110: 7365 6420 2d69 2022 737c 5c28 247b 6d6f  sed -i "s|\(${mo
│ │ │ +001e6120: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001e6130: 7265 6765 7870 7d2e 2a24 7b70 7265 7669  regexp}.*${previ
│ │ │ +001e6140: 6f75 735f 6d6f 756e 745f 6f70 7473 7d5c  ous_mount_opts}\
│ │ │ +001e6150: 297c 5c31 2c6e 6f65 7865 637c 2220 2f65  )|\1,noexec|" /e
│ │ │ +001e6160: 7463 2f66 7374 6162 0a20 2020 2066 690a  tc/fstab.    fi.
│ │ │ +001e6170: 0a0a 2020 2020 6966 206d 6b64 6972 202d  ..    if mkdir -
│ │ │ +001e6180: 7020 222f 7661 722f 746d 7022 3b20 7468  p "/var/tmp"; th
│ │ │ +001e6190: 656e 0a20 2020 2020 2020 2069 6620 6d6f  en.        if mo
│ │ │ +001e61a0: 756e 7470 6f69 6e74 202d 7120 222f 7661  untpoint -q "/va
│ │ │ +001e61b0: 722f 746d 7022 3b20 7468 656e 0a20 2020  r/tmp"; then.   
│ │ │ +001e61c0: 2020 2020 2020 2020 206d 6f75 6e74 202d           mount -
│ │ │ +001e61d0: 6f20 7265 6d6f 756e 7420 2d2d 7461 7267  o remount --targ
│ │ │ +001e61e0: 6574 2022 2f76 6172 2f74 6d70 220a 2020  et "/var/tmp".  
│ │ │ +001e61f0: 2020 2020 2020 6669 0a20 2020 2066 690a        fi.    fi.
│ │ │ +001e6200: 7d0a 0a70 6572 666f 726d 5f72 656d 6564  }..perform_remed
│ │ │ +001e6210: 6961 7469 6f6e 0a0a 656c 7365 0a20 2020  iation..else.   
│ │ │ +001e6220: 2026 6774 3b26 616d 703b 3220 6563 686f   >&2 echo
│ │ │ +001e6230: 2027 5265 6d65 6469 6174 696f 6e20 6973   'Remediation is
│ │ │ +001e6240: 206e 6f74 2061 7070 6c69 6361 626c 652c   not applicable,
│ │ │ +001e6250: 206e 6f74 6869 6e67 2077 6173 2064 6f6e   nothing was don
│ │ │ +001e6260: 6527 0a66 690a 3c2f 636f 6465 3e3c 2f70  e'.fi.

Remediatio │ │ │ +001e6320: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ +001e6330: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +001e63b0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +001e63c0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +001e63d0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:highReboo │ │ │ +001e6410: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +001e6420: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ +001e6440: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ +001e6450: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.part /va
│ │ │ +001e6470: 722f 746d 7020 2d2d 6d6f 756e 746f 7074  r/tmp --mountopt
│ │ │ +001e6480: 696f 6e73 3d22 6e6f 6578 6563 220a 3c2f  ions="noexec".
R │ │ │ -001e6ec0: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ -001e6ed0: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ -001e6ee0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -001e6fb0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -001e6fc0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -001e7010: 0a70 6172 7420 2f76 6172 2f74 6d70 202d  .part /var/tmp -
│ │ │ -001e7020: 2d6d 6f75 6e74 6f70 7469 6f6e 733d 226e  -mountoptions="n
│ │ │ -001e7030: 6f73 7569 6422 0a3c 2f63 6f64 653e 3c2f  osuid".Remediati
│ │ │ -001e70f0: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070  on Ansible snipp
│ │ │ -001e7100: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...
│ │ │ -001e7180: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
Strategy: │ │ │ -001e7210: 3c74 643e 636f 6e66 6967 7572 653c 2f74
Complexity:low
Disrup │ │ │ -001e6f90: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6869 tion:hi │ │ │ -001e6fa0: 6768 3c2f 7464 3e3c 2f74 723e 3c74 723e gh
Reboot:false
Strat │ │ │ -001e6fe0: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -001e6ff0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexi │ │ │ -001e7190: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -001e71a0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:high
Reboo │ │ │ -001e71e0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -001e71f0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
configure
< │ │ │ -001e7230: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -001e7240: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -001e7250: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -001e7260: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -001e7270: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -001e7280: 7461 6773 3a0a 2020 2d20 636f 6e66 6967 tags:. - config │ │ │ -001e7290: 7572 655f 7374 7261 7465 6779 0a20 202d ure_strategy. - │ │ │ -001e72a0: 2068 6967 685f 6469 7372 7570 7469 6f6e high_disruption │ │ │ -001e72b0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ -001e72c0: 6974 790a 2020 2d20 6d65 6469 756d 5f73 ity. - medium_s │ │ │ -001e72d0: 6576 6572 6974 790a 2020 2d20 6d6f 756e everity. - moun │ │ │ -001e72e0: 745f 6f70 7469 6f6e 5f76 6172 5f74 6d70 t_option_var_tmp │ │ │ -001e72f0: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72 _nosuid. - no_r │ │ │ -001e7300: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20 eboot_needed..- │ │ │ -001e7310: 6e61 6d65 3a20 2741 6464 206e 6f73 7569 name: 'Add nosui │ │ │ -001e7320: 6420 4f70 7469 6f6e 2074 6f20 2f76 6172 d Option to /var │ │ │ -001e7330: 2f74 6d70 3a20 4368 6563 6b20 696e 666f /tmp: Check info │ │ │ -001e7340: 726d 6174 696f 6e20 6173 736f 6369 6174 rmation associat │ │ │ -001e7350: 6564 2074 6f20 6d6f 756e 7470 6f69 6e74 ed to mountpoint │ │ │ -001e7360: 270a 2020 616e 7369 626c 652e 6275 696c '. ansible.buil │ │ │ -001e7370: 7469 6e2e 636f 6d6d 616e 643a 2066 696e tin.command: fin │ │ │ -001e7380: 646d 6e74 202d 2d66 7374 6162 2027 2f76 dmnt --fstab '/v │ │ │ -001e7390: 6172 2f74 6d70 270a 2020 7265 6769 7374 ar/tmp'. regist │ │ │ -001e73a0: 6572 3a20 6465 7669 6365 5f6e 616d 650a er: device_name. │ │ │ -001e73b0: 2020 6661 696c 6564 5f77 6865 6e3a 2064 failed_when: d │ │ │ -001e73c0: 6576 6963 655f 6e61 6d65 2e72 6320 2667 evice_name.rc &g │ │ │ -001e73d0: 743b 2031 0a20 2063 6861 6e67 6564 5f77 t; 1. changed_w │ │ │ -001e73e0: 6865 6e3a 2066 616c 7365 0a20 2063 6865 hen: false. che │ │ │ -001e73f0: 636b 5f6d 6f64 653a 2066 616c 7365 0a20 ck_mode: false. │ │ │ -001e7400: 2077 6865 6e3a 0a20 202d 2028 206e 6f74 when:. - ( not │ │ │ -001e7410: 2028 2022 6b65 726e 656c 2220 696e 2061 ( "kernel" in a │ │ │ -001e7420: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ -001e7430: 6b61 6765 7320 616e 6420 2272 706d 2d6f kages and "rpm-o │ │ │ -001e7440: 7374 7265 6522 2069 6e20 616e 7369 626c stree" in ansibl │ │ │ -001e7450: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -001e7460: 0a20 2020 2061 6e64 2022 626f 6f74 6322 . and "bootc" │ │ │ -001e7470: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -001e7480: 732e 7061 636b 6167 6573 2061 6e64 206e s.packages and n │ │ │ -001e7490: 6f74 2022 6f70 656e 7368 6966 742d 6b75 ot "openshift-ku │ │ │ -001e74a0: 6265 6c65 7422 2069 6e20 616e 7369 626c belet" in ansibl │ │ │ -001e74b0: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -001e74c0: 0a20 2020 2061 6e64 2022 6f73 7472 6565 . and "ostree │ │ │ -001e74d0: 2220 696e 2061 6e73 6962 6c65 5f70 726f " in ansible_pro │ │ │ -001e74e0: 635f 636d 646c 696e 6520 2920 616e 6420 c_cmdline ) and │ │ │ -001e74f0: 6e6f 7420 2820 616e 7369 626c 655f 7669 not ( ansible_vi │ │ │ -001e7500: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970 rtualization_typ │ │ │ -001e7510: 6520 696e 0a20 2020 205b 2264 6f63 6b65 e in. ["docke │ │ │ -001e7520: 7222 2c20 226c 7863 222c 2022 6f70 656e r", "lxc", "open │ │ │ -001e7530: 767a 222c 2022 706f 646d 616e 222c 2022 vz", "podman", " │ │ │ -001e7540: 636f 6e74 6169 6e65 7222 5d20 2920 290a container"] ) ). │ │ │ -001e7550: 2020 2d20 2722 2f76 6172 2f74 6d70 2220 - '"/var/tmp" │ │ │ -001e7560: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74 in ansible_mount │ │ │ -001e7570: 7320 7c20 6d61 7028 6174 7472 6962 7574 s | map(attribut │ │ │ -001e7580: 653d 226d 6f75 6e74 2229 207c 206c 6973 e="mount") | lis │ │ │ -001e7590: 7427 0a20 2074 6167 733a 0a20 202d 2063 t'. tags:. - c │ │ │ -001e75a0: 6f6e 6669 6775 7265 5f73 7472 6174 6567 onfigure_strateg │ │ │ -001e75b0: 790a 2020 2d20 6869 6768 5f64 6973 7275 y. - high_disru │ │ │ -001e75c0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f ption. - low_co │ │ │ -001e75d0: 6d70 6c65 7869 7479 0a20 202d 206d 6564 mplexity. - med │ │ │ -001e75e0: 6975 6d5f 7365 7665 7269 7479 0a20 202d ium_severity. - │ │ │ -001e75f0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661 mount_option_va │ │ │ -001e7600: 725f 746d 705f 6e6f 7375 6964 0a20 202d r_tmp_nosuid. - │ │ │ -001e7610: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ -001e7620: 640a 0a2d 206e 616d 653a 2027 4164 6420 d..- name: 'Add │ │ │ -001e7630: 6e6f 7375 6964 204f 7074 696f 6e20 746f nosuid Option to │ │ │ -001e7640: 202f 7661 722f 746d 703a 2043 7265 6174 /var/tmp: Creat │ │ │ -001e7650: 6520 6d6f 756e 745f 696e 666f 2064 6963 e mount_info dic │ │ │ -001e7660: 7469 6f6e 6172 7920 7661 7269 6162 6c65 tionary variable │ │ │ -001e7670: 270a 2020 7365 745f 6661 6374 3a0a 2020 '. set_fact:. │ │ │ -001e7680: 2020 6d6f 756e 745f 696e 666f 3a20 277b mount_info: '{ │ │ │ -001e7690: 7b20 6d6f 756e 745f 696e 666f 7c64 6566 { mount_info|def │ │ │ -001e76a0: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65 ault({})|combine │ │ │ -001e76b0: 287b 6974 656d 2e30 3a20 6974 656d 2e31 ({item.0: item.1 │ │ │ -001e76c0: 7d29 207d 7d27 0a20 2077 6974 685f 746f }) }}'. with_to │ │ │ -001e76d0: 6765 7468 6572 3a0a 2020 2d20 277b 7b20 gether:. - '{{ │ │ │ -001e76e0: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ -001e76f0: 7574 5f6c 696e 6573 5b30 5d2e 7370 6c69 ut_lines[0].spli │ │ │ -001e7700: 7428 2920 7c20 6d61 7028 2727 6c6f 7765 t() | map(''lowe │ │ │ -001e7710: 7227 2729 207c 206c 6973 7420 7d7d 270a r'') | list }}'. │ │ │ -001e7720: 2020 2d20 277b 7b20 6465 7669 6365 5f6e - '{{ device_n │ │ │ -001e7730: 616d 652e 7374 646f 7574 5f6c 696e 6573 ame.stdout_lines │ │ │ -001e7740: 5b31 5d2e 7370 6c69 7428 2920 7c20 6c69 [1].split() | li │ │ │ -001e7750: 7374 207d 7d27 0a20 2077 6865 6e3a 0a20 st }}'. when:. │ │ │ -001e7760: 202d 2028 206e 6f74 2028 2022 6b65 726e - ( not ( "kern │ │ │ -001e7770: 656c 2220 696e 2061 6e73 6962 6c65 5f66 el" in ansible_f │ │ │ -001e7780: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ -001e7790: 6420 2272 706d 2d6f 7374 7265 6522 2069 d "rpm-ostree" i │ │ │ -001e77a0: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001e77b0: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ -001e77c0: 2022 626f 6f74 6322 2069 6e20 616e 7369 "bootc" in ansi │ │ │ -001e77d0: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -001e77e0: 6573 2061 6e64 206e 6f74 2022 6f70 656e es and not "open │ │ │ -001e77f0: 7368 6966 742d 6b75 6265 6c65 7422 2069 shift-kubelet" i │ │ │ -001e7800: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001e7810: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ -001e7820: 2022 6f73 7472 6565 2220 696e 2061 6e73 "ostree" in ans │ │ │ -001e7830: 6962 6c65 5f70 726f 635f 636d 646c 696e ible_proc_cmdlin │ │ │ -001e7840: 6520 2920 616e 6420 6e6f 7420 2820 616e e ) and not ( an │ │ │ -001e7850: 7369 626c 655f 7669 7274 7561 6c69 7a61 sible_virtualiza │ │ │ -001e7860: 7469 6f6e 5f74 7970 6520 696e 0a20 2020 tion_type in. │ │ │ -001e7870: 205b 2264 6f63 6b65 7222 2c20 226c 7863 ["docker", "lxc │ │ │ -001e7880: 222c 2022 6f70 656e 767a 222c 2022 706f ", "openvz", "po │ │ │ -001e7890: 646d 616e 222c 2022 636f 6e74 6169 6e65 dman", "containe │ │ │ -001e78a0: 7222 5d20 2920 290a 2020 2d20 2722 2f76 r"] ) ). - '"/v │ │ │ -001e78b0: 6172 2f74 6d70 2220 696e 2061 6e73 6962 ar/tmp" in ansib │ │ │ -001e78c0: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028 le_mounts | map( │ │ │ -001e78d0: 6174 7472 6962 7574 653d 226d 6f75 6e74 attribute="mount │ │ │ -001e78e0: 2229 207c 206c 6973 7427 0a20 202d 2064 ") | list'. - d │ │ │ -001e78f0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75 evice_name.stdou │ │ │ -001e7900: 7420 6973 2064 6566 696e 6564 2061 6e64 t is defined and │ │ │ -001e7910: 2064 6576 6963 655f 6e61 6d65 2e73 7464 device_name.std │ │ │ -001e7920: 6f75 745f 6c69 6e65 7320 6973 2064 6566 out_lines is def │ │ │ -001e7930: 696e 6564 0a20 202d 2028 6465 7669 6365 ined. - (device │ │ │ -001e7940: 5f6e 616d 652e 7374 646f 7574 207c 206c _name.stdout | l │ │ │ -001e7950: 656e 6774 6820 2667 743b 2030 290a 2020 ength > 0). │ │ │ -001e7960: 7461 6773 3a0a 2020 2d20 636f 6e66 6967 tags:. - config │ │ │ -001e7970: 7572 655f 7374 7261 7465 6779 0a20 202d ure_strategy. - │ │ │ -001e7980: 2068 6967 685f 6469 7372 7570 7469 6f6e high_disruption │ │ │ -001e7990: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ -001e79a0: 6974 790a 2020 2d20 6d65 6469 756d 5f73 ity. - medium_s │ │ │ -001e79b0: 6576 6572 6974 790a 2020 2d20 6d6f 756e everity. - moun │ │ │ -001e79c0: 745f 6f70 7469 6f6e 5f76 6172 5f74 6d70 t_option_var_tmp │ │ │ -001e79d0: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72 _nosuid. - no_r │ │ │ -001e79e0: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20 eboot_needed..- │ │ │ -001e79f0: 6e61 6d65 3a20 2741 6464 206e 6f73 7569 name: 'Add nosui │ │ │ -001e7a00: 6420 4f70 7469 6f6e 2074 6f20 2f76 6172 d Option to /var │ │ │ -001e7a10: 2f74 6d70 3a20 4966 202f 7661 722f 746d /tmp: If /var/tm │ │ │ -001e7a20: 7020 6e6f 7420 6d6f 756e 7465 642c 2063 p not mounted, c │ │ │ -001e7a30: 7261 6674 206d 6f75 6e74 5f69 6e66 6f0a raft mount_info. │ │ │ -001e7a40: 2020 2020 6d61 6e75 616c 6c79 270a 2020 manually'. │ │ │ -001e7a50: 7365 745f 6661 6374 3a0a 2020 2020 6d6f set_fact:. mo │ │ │ -001e7a60: 756e 745f 696e 666f 3a20 277b 7b20 6d6f unt_info: '{{ mo │ │ │ -001e7a70: 756e 745f 696e 666f 7c64 6566 6175 6c74 unt_info|default │ │ │ -001e7a80: 287b 7d29 7c63 6f6d 6269 6e65 287b 6974 ({})|combine({it │ │ │ -001e7a90: 656d 2e30 3a20 6974 656d 2e31 7d29 207d em.0: item.1}) } │ │ │ -001e7aa0: 7d27 0a20 2077 6974 685f 746f 6765 7468 }'. with_togeth │ │ │ -001e7ab0: 6572 3a0a 2020 2d20 2d20 7461 7267 6574 er:. - - target │ │ │ -001e7ac0: 0a20 2020 202d 2073 6f75 7263 650a 2020 . - source. │ │ │ -001e7ad0: 2020 2d20 6673 7479 7065 0a20 2020 202d - fstype. - │ │ │ -001e7ae0: 206f 7074 696f 6e73 0a20 202d 202d 202f options. - - / │ │ │ -001e7af0: 7661 722f 746d 700a 2020 2020 2d20 2727 var/tmp. - '' │ │ │ -001e7b00: 0a20 2020 202d 2027 270a 2020 2020 2d20 . - ''. - │ │ │ -001e7b10: 6465 6661 756c 7473 0a20 2077 6865 6e3a defaults. when: │ │ │ -001e7b20: 0a20 202d 2028 206e 6f74 2028 2022 6b65 . - ( not ( "ke │ │ │ -001e7b30: 726e 656c 2220 696e 2061 6e73 6962 6c65 rnel" in ansible │ │ │ -001e7b40: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ -001e7b50: 616e 6420 2272 706d 2d6f 7374 7265 6522 and "rpm-ostree" │ │ │ -001e7b60: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -001e7b70: 732e 7061 636b 6167 6573 0a20 2020 2061 s.packages. a │ │ │ -001e7b80: 6e64 2022 626f 6f74 6322 2069 6e20 616e nd "bootc" in an │ │ │ -001e7b90: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ -001e7ba0: 6167 6573 2061 6e64 206e 6f74 2022 6f70 ages and not "op │ │ │ -001e7bb0: 656e 7368 6966 742d 6b75 6265 6c65 7422 enshift-kubelet" │ │ │ -001e7bc0: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -001e7bd0: 732e 7061 636b 6167 6573 0a20 2020 2061 s.packages. a │ │ │ -001e7be0: 6e64 2022 6f73 7472 6565 2220 696e 2061 nd "ostree" in a │ │ │ -001e7bf0: 6e73 6962 6c65 5f70 726f 635f 636d 646c nsible_proc_cmdl │ │ │ -001e7c00: 696e 6520 2920 616e 6420 6e6f 7420 2820 ine ) and not ( │ │ │ -001e7c10: 616e 7369 626c 655f 7669 7274 7561 6c69 ansible_virtuali │ │ │ -001e7c20: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20 zation_type in. │ │ │ -001e7c30: 2020 205b 2264 6f63 6b65 7222 2c20 226c ["docker", "l │ │ │ -001e7c40: 7863 222c 2022 6f70 656e 767a 222c 2022 xc", "openvz", " │ │ │ -001e7c50: 706f 646d 616e 222c 2022 636f 6e74 6169 podman", "contai │ │ │ -001e7c60: 6e65 7222 5d20 2920 290a 2020 2d20 2722 ner"] ) ). - '" │ │ │ -001e7c70: 2f76 6172 2f74 6d70 2220 696e 2061 6e73 /var/tmp" in ans │ │ │ -001e7c80: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61 ible_mounts | ma │ │ │ -001e7c90: 7028 6174 7472 6962 7574 653d 226d 6f75 p(attribute="mou │ │ │ -001e7ca0: 6e74 2229 207c 206c 6973 7427 0a20 202d nt") | list'. - │ │ │ -001e7cb0: 2028 222d 2d66 7374 6162 2220 7c20 6c65 ("--fstab" | le │ │ │ -001e7cc0: 6e67 7468 203d 3d20 3029 0a20 202d 2064 ngth == 0). - d │ │ │ -001e7cd0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75 evice_name.stdou │ │ │ -001e7ce0: 7420 6973 2064 6566 696e 6564 2061 6e64 t is defined and │ │ │ -001e7cf0: 2064 6576 6963 655f 6e61 6d65 2e73 7464 device_name.std │ │ │ -001e7d00: 6f75 745f 6c69 6e65 7320 6973 2064 6566 out_lines is def │ │ │ -001e7d10: 696e 6564 0a20 202d 2028 6465 7669 6365 ined. - (device │ │ │ -001e7d20: 5f6e 616d 652e 7374 646f 7574 207c 206c _name.stdout | l │ │ │ -001e7d30: 656e 6774 6820 3d3d 2030 290a 2020 7461 ength == 0). ta │ │ │ -001e7d40: 6773 3a0a 2020 2d20 636f 6e66 6967 7572 gs:. - configur │ │ │ -001e7d50: 655f 7374 7261 7465 6779 0a20 202d 2068 e_strategy. - h │ │ │ -001e7d60: 6967 685f 6469 7372 7570 7469 6f6e 0a20 igh_disruption. │ │ │ -001e7d70: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ -001e7d80: 790a 2020 2d20 6d65 6469 756d 5f73 6576 y. - medium_sev │ │ │ -001e7d90: 6572 6974 790a 2020 2d20 6d6f 756e 745f erity. - mount_ │ │ │ -001e7da0: 6f70 7469 6f6e 5f76 6172 5f74 6d70 5f6e option_var_tmp_n │ │ │ -001e7db0: 6f73 7569 640a 2020 2d20 6e6f 5f72 6562 osuid. - no_reb │ │ │ -001e7dc0: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61 oot_needed..- na │ │ │ -001e7dd0: 6d65 3a20 2741 6464 206e 6f73 7569 6420 me: 'Add nosuid │ │ │ -001e7de0: 4f70 7469 6f6e 2074 6f20 2f76 6172 2f74 Option to /var/t │ │ │ -001e7df0: 6d70 3a20 4d61 6b65 2073 7572 6520 6e6f mp: Make sure no │ │ │ -001e7e00: 7375 6964 206f 7074 696f 6e20 6973 2070 suid option is p │ │ │ -001e7e10: 6172 7420 6f66 2074 6865 2074 6f0a 2020 art of the to. │ │ │ -001e7e20: 2020 2f76 6172 2f74 6d70 206f 7074 696f /var/tmp optio │ │ │ -001e7e30: 6e73 270a 2020 7365 745f 6661 6374 3a0a ns'. set_fact:. │ │ │ -001e7e40: 2020 2020 6d6f 756e 745f 696e 666f 3a20 mount_info: │ │ │ -001e7e50: 277b 7b20 6d6f 756e 745f 696e 666f 207c '{{ mount_info | │ │ │ -001e7e60: 2063 6f6d 6269 6e65 2820 7b27 276f 7074 combine( {''opt │ │ │ -001e7e70: 696f 6e73 2727 3a27 2727 277e 286d 6f75 ions'':''''~(mou │ │ │ -001e7e80: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320 nt_info.options │ │ │ -001e7e90: 7c0a 2020 2020 2020 6465 6661 756c 7428 |. default( │ │ │ -001e7ea0: 2727 2727 2929 7e28 2727 2c27 2720 6966 ''''))~('','' if │ │ │ -001e7eb0: 2028 6d6f 756e 745f 696e 666f 2e6f 7074 (mount_info.opt │ │ │ -001e7ec0: 696f 6e73 207c 2064 6566 6175 6c74 2827 ions | default(' │ │ │ -001e7ed0: 2727 2729 2920 656c 7365 2027 2727 2729 ''')) else '''') │ │ │ -001e7ee0: 7e27 276e 6f73 7569 6427 270a 2020 2020 ~''nosuid''. │ │ │ -001e7ef0: 2020 7d29 207d 7d27 0a20 2077 6865 6e3a }) }}'. when: │ │ │ -001e7f00: 0a20 202d 2028 206e 6f74 2028 2022 6b65 . - ( not ( "ke │ │ │ -001e7f10: 726e 656c 2220 696e 2061 6e73 6962 6c65 rnel" in ansible │ │ │ -001e7f20: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ -001e7f30: 616e 6420 2272 706d 2d6f 7374 7265 6522 and "rpm-ostree" │ │ │ -001e7f40: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -001e7f50: 732e 7061 636b 6167 6573 0a20 2020 2061 s.packages. a │ │ │ -001e7f60: 6e64 2022 626f 6f74 6322 2069 6e20 616e nd "bootc" in an │ │ │ -001e7f70: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ -001e7f80: 6167 6573 2061 6e64 206e 6f74 2022 6f70 ages and not "op │ │ │ -001e7f90: 656e 7368 6966 742d 6b75 6265 6c65 7422 enshift-kubelet" │ │ │ -001e7fa0: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -001e7fb0: 732e 7061 636b 6167 6573 0a20 2020 2061 s.packages. a │ │ │ -001e7fc0: 6e64 2022 6f73 7472 6565 2220 696e 2061 nd "ostree" in a │ │ │ -001e7fd0: 6e73 6962 6c65 5f70 726f 635f 636d 646c nsible_proc_cmdl │ │ │ -001e7fe0: 696e 6520 2920 616e 6420 6e6f 7420 2820 ine ) and not ( │ │ │ -001e7ff0: 616e 7369 626c 655f 7669 7274 7561 6c69 ansible_virtuali │ │ │ -001e8000: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20 zation_type in. │ │ │ -001e8010: 2020 205b 2264 6f63 6b65 7222 2c20 226c ["docker", "l │ │ │ -001e8020: 7863 222c 2022 6f70 656e 767a 222c 2022 xc", "openvz", " │ │ │ -001e8030: 706f 646d 616e 222c 2022 636f 6e74 6169 podman", "contai │ │ │ -001e8040: 6e65 7222 5d20 2920 290a 2020 2d20 2722 ner"] ) ). - '" │ │ │ -001e8050: 2f76 6172 2f74 6d70 2220 696e 2061 6e73 /var/tmp" in ans │ │ │ -001e8060: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61 ible_mounts | ma │ │ │ -001e8070: 7028 6174 7472 6962 7574 653d 226d 6f75 p(attribute="mou │ │ │ -001e8080: 6e74 2229 207c 206c 6973 7427 0a20 202d nt") | list'. - │ │ │ -001e8090: 206d 6f75 6e74 5f69 6e66 6f20 6973 2064 mount_info is d │ │ │ -001e80a0: 6566 696e 6564 2061 6e64 2022 6e6f 7375 efined and "nosu │ │ │ -001e80b0: 6964 2220 6e6f 7420 696e 2028 6d6f 756e id" not in (moun │ │ │ -001e80c0: 745f 696e 666f 2e6f 7074 696f 6e73 207c t_info.options | │ │ │ -001e80d0: 2064 6566 6175 6c74 2827 2729 290a 2020 default('')). │ │ │ -001e80e0: 7461 6773 3a0a 2020 2d20 636f 6e66 6967 tags:. - config │ │ │ -001e80f0: 7572 655f 7374 7261 7465 6779 0a20 202d ure_strategy. - │ │ │ -001e8100: 2068 6967 685f 6469 7372 7570 7469 6f6e high_disruption │ │ │ -001e8110: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ -001e8120: 6974 790a 2020 2d20 6d65 6469 756d 5f73 ity. - medium_s │ │ │ -001e8130: 6576 6572 6974 790a 2020 2d20 6d6f 756e everity. - moun │ │ │ -001e8140: 745f 6f70 7469 6f6e 5f76 6172 5f74 6d70 t_option_var_tmp │ │ │ -001e8150: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72 _nosuid. - no_r │ │ │ -001e8160: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20 eboot_needed..- │ │ │ -001e8170: 6e61 6d65 3a20 2741 6464 206e 6f73 7569 name: 'Add nosui │ │ │ -001e8180: 6420 4f70 7469 6f6e 2074 6f20 2f76 6172 d Option to /var │ │ │ -001e8190: 2f74 6d70 3a20 456e 7375 7265 202f 7661 /tmp: Ensure /va │ │ │ -001e81a0: 722f 746d 7020 6973 206d 6f75 6e74 6564 r/tmp is mounted │ │ │ -001e81b0: 2077 6974 6820 6e6f 7375 6964 206f 7074 with nosuid opt │ │ │ -001e81c0: 696f 6e27 0a20 2061 6e73 6962 6c65 2e70 ion'. ansible.p │ │ │ -001e81d0: 6f73 6978 2e6d 6f75 6e74 3a0a 2020 2020 osix.mount:. │ │ │ -001e81e0: 7061 7468 3a20 2f76 6172 2f74 6d70 0a20 path: /var/tmp. │ │ │ -001e81f0: 2020 2073 7263 3a20 277b 7b20 6d6f 756e src: '{{ moun │ │ │ -001e8200: 745f 696e 666f 2e73 6f75 7263 6520 7c20 t_info.source | │ │ │ -001e8210: 6465 6661 756c 7428 2727 2727 2920 7d7d default('''') }} │ │ │ -001e8220: 270a 2020 2020 6f70 7473 3a20 277b 7b20 '. opts: '{{ │ │ │ -001e8230: 6d6f 756e 745f 696e 666f 2e6f 7074 696f mount_info.optio │ │ │ -001e8240: 6e73 207c 2064 6566 6175 6c74 2827 2727 ns | default(''' │ │ │ -001e8250: 2729 207d 7d27 0a20 2020 2073 7461 7465 ') }}'. state │ │ │ -001e8260: 3a20 6d6f 756e 7465 640a 2020 2020 6673 : mounted. fs │ │ │ -001e8270: 7479 7065 3a20 277b 7b20 6d6f 756e 745f type: '{{ mount_ │ │ │ -001e8280: 696e 666f 2e66 7374 7970 6520 7c20 6465 info.fstype | de │ │ │ -001e8290: 6661 756c 7428 2727 2727 2920 7d7d 270a fault('''') }}'. │ │ │ -001e82a0: 2020 7265 6769 7374 6572 3a20 6d6f 756e register: moun │ │ │ -001e82b0: 745f 7265 7375 6c74 0a20 2066 6169 6c65 t_result. faile │ │ │ -001e82c0: 645f 7768 656e 3a0a 2020 2d20 6d6f 756e d_when:. - moun │ │ │ -001e82d0: 745f 7265 7375 6c74 2069 7320 6661 696c t_result is fail │ │ │ -001e82e0: 6564 0a20 202d 2027 2727 7461 7267 6574 ed. - '''target │ │ │ -001e82f0: 2069 7320 6275 7379 2727 206e 6f74 2069 is busy'' not i │ │ │ -001e8300: 6e20 286d 6f75 6e74 5f72 6573 756c 742e n (mount_result. │ │ │ -001e8310: 6d73 6720 7c20 6465 6661 756c 7428 2727 msg | default('' │ │ │ -001e8320: 2727 2929 270a 2020 2d20 2727 2761 6c72 ''))'. - '''alr │ │ │ -001e8330: 6561 6479 206d 6f75 6e74 6564 2727 206e eady mounted'' n │ │ │ -001e8340: 6f74 2069 6e20 286d 6f75 6e74 5f72 6573 ot in (mount_res │ │ │ -001e8350: 756c 742e 6d73 6720 7c20 6465 6661 756c ult.msg | defaul │ │ │ -001e8360: 7428 2727 2727 2929 270a 2020 7768 656e t(''''))'. when │ │ │ -001e8370: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b :. - ( not ( "k │ │ │ -001e8380: 6572 6e65 6c22 2069 6e20 616e 7369 626c ernel" in ansibl │ │ │ -001e8390: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -001e83a0: 2061 6e64 2022 7270 6d2d 6f73 7472 6565 and "rpm-ostree │ │ │ -001e83b0: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -001e83c0: 7473 2e70 6163 6b61 6765 730a 2020 2020 ts.packages. │ │ │ -001e83d0: 616e 6420 2262 6f6f 7463 2220 696e 2061 and "bootc" in a │ │ │ -001e83e0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ -001e83f0: 6b61 6765 7320 616e 6420 6e6f 7420 226f kages and not "o │ │ │ -001e8400: 7065 6e73 6869 6674 2d6b 7562 656c 6574 penshift-kubelet │ │ │ -001e8410: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -001e8420: 7473 2e70 6163 6b61 6765 730a 2020 2020 ts.packages. │ │ │ -001e8430: 616e 6420 226f 7374 7265 6522 2069 6e20 and "ostree" in │ │ │ -001e8440: 616e 7369 626c 655f 7072 6f63 5f63 6d64 ansible_proc_cmd │ │ │ -001e8450: 6c69 6e65 2029 2061 6e64 206e 6f74 2028 line ) and not ( │ │ │ -001e8460: 2061 6e73 6962 6c65 5f76 6972 7475 616c ansible_virtual │ │ │ -001e8470: 697a 6174 696f 6e5f 7479 7065 2069 6e0a ization_type in. │ │ │ -001e8480: 2020 2020 5b22 646f 636b 6572 222c 2022 ["docker", " │ │ │ -001e8490: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20 lxc", "openvz", │ │ │ -001e84a0: 2270 6f64 6d61 6e22 2c20 2263 6f6e 7461 "podman", "conta │ │ │ -001e84b0: 696e 6572 225d 2029 2029 0a20 202d 2027 iner"] ) ). - ' │ │ │ -001e84c0: 222f 7661 722f 746d 7022 2069 6e20 616e "/var/tmp" in an │ │ │ -001e84d0: 7369 626c 655f 6d6f 756e 7473 207c 206d sible_mounts | m │ │ │ -001e84e0: 6170 2861 7474 7269 6275 7465 3d22 6d6f ap(attribute="mo │ │ │ -001e84f0: 756e 7422 2920 7c20 6c69 7374 270a 2020 unt") | list'. │ │ │ -001e8500: 2d20 6d6f 756e 745f 696e 666f 2069 7320 - mount_info is │ │ │ -001e8510: 6465 6669 6e65 640a 2020 2d20 2864 6576 defined. - (dev │ │ │ -001e8520: 6963 655f 6e61 6d65 2e73 7464 6f75 7420 ice_name.stdout │ │ │ -001e8530: 6973 2064 6566 696e 6564 2061 6e64 2028 is defined and ( │ │ │ -001e8540: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ -001e8550: 7574 207c 206c 656e 6774 6820 2667 743b ut | length > │ │ │ -001e8560: 2030 2929 206f 7220 2822 2d2d 6673 7461 0)) or ("--fsta │ │ │ -001e8570: 6222 0a20 2020 207c 206c 656e 6774 6820 b". | length │ │ │ -001e8580: 3d3d 2030 290a 2020 7461 6773 3a0a 2020 == 0). tags:. │ │ │ -001e8590: 2d20 636f 6e66 6967 7572 655f 7374 7261 - configure_stra │ │ │ -001e85a0: 7465 6779 0a20 202d 2068 6967 685f 6469 tegy. - high_di │ │ │ -001e85b0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77 sruption. - low │ │ │ -001e85c0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ -001e85d0: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ -001e85e0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e - mount_option │ │ │ -001e85f0: 5f76 6172 5f74 6d70 5f6e 6f73 7569 640a _var_tmp_nosuid. │ │ │ -001e8600: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ -001e8610: 6564 6564 0a3c 2f63 6f64 653e 3c2f 7072 eded.
Remediation │ │ │ -001e86d0: 2053 6865 6c6c 2073 6372 6970 7420 e287 Shell script .. │ │ │ -001e86e0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -001e8760: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -001e8770: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
<
│ │ │ -001e8790: 636f 6465 3e23 2052 656d 6564 6961 7469  code># Remediati
│ │ │ -001e87a0: 6f6e 2069 7320 6170 706c 6963 6162 6c65  on is applicable
│ │ │ -001e87b0: 206f 6e6c 7920 696e 2063 6572 7461 696e   only in certain
│ │ │ -001e87c0: 2070 6c61 7466 6f72 6d73 0a69 6620 2820   platforms.if ( 
│ │ │ -001e87d0: 2120 2820 7b20 7270 6d20 2d2d 7175 6965  ! ( { rpm --quie
│ │ │ -001e87e0: 7420 2d71 206b 6572 6e65 6c20 3b7d 2026  t -q kernel ;} &
│ │ │ -001e87f0: 616d 703b 2661 6d70 3b20 7b20 7270 6d20  amp;& { rpm 
│ │ │ -001e8800: 2d2d 7175 6965 7420 2d71 2072 706d 2d6f  --quiet -q rpm-o
│ │ │ -001e8810: 7374 7265 6520 3b7d 2026 616d 703b 2661  stree ;} &&a
│ │ │ -001e8820: 6d70 3b20 7b20 7270 6d20 2d2d 7175 6965  mp; { rpm --quie
│ │ │ -001e8830: 7420 2d71 2062 6f6f 7463 203b 7d20 2661  t -q bootc ;} &a
│ │ │ -001e8840: 6d70 3b26 616d 703b 207b 2021 2072 706d  mp;& { ! rpm
│ │ │ -001e8850: 202d 2d71 7569 6574 202d 7120 6f70 656e   --quiet -q open
│ │ │ -001e8860: 7368 6966 742d 6b75 6265 6c65 7420 3b7d  shift-kubelet ;}
│ │ │ -001e8870: 2026 616d 703b 2661 6d70 3b20 285b 202d   && ([ -
│ │ │ -001e8880: 6620 2f72 756e 2f6f 7374 7265 652d 626f  f /run/ostree-bo
│ │ │ -001e8890: 6f74 6564 205d 207c 7c20 5b20 2d4c 202f  oted ] || [ -L /
│ │ │ -001e88a0: 6f73 7472 6565 205d 2920 2920 2661 6d70  ostree ]) ) &
│ │ │ -001e88b0: 3b26 616d 703b 2021 2028 205b 202d 6620  ;& ! ( [ -f 
│ │ │ -001e88c0: 2f2e 646f 636b 6572 656e 7620 5d20 7c7c  /.dockerenv ] ||
│ │ │ -001e88d0: 205b 202d 6620 2f72 756e 2f2e 636f 6e74   [ -f /run/.cont
│ │ │ -001e88e0: 6169 6e65 7265 6e76 205d 2029 2029 2026  ainerenv ] ) ) &
│ │ │ -001e88f0: 616d 703b 2661 6d70 3b20 7b20 2820 6669  amp;& { ( fi
│ │ │ -001e8900: 6e64 6d6e 7420 2d2d 6b65 726e 656c 2022  ndmnt --kernel "
│ │ │ -001e8910: 2f76 6172 2f74 6d70 2220 2667 743b 202f  /var/tmp" > /
│ │ │ -001e8920: 6465 762f 6e75 6c6c 207c 7c20 6669 6e64  dev/null || find
│ │ │ -001e8930: 6d6e 7420 2d2d 6673 7461 6220 222f 7661  mnt --fstab "/va
│ │ │ -001e8940: 722f 746d 7022 2026 6774 3b20 2f64 6576  r/tmp" > /dev
│ │ │ -001e8950: 2f6e 756c 6c20 293b 207d 3b20 7468 656e  /null ); }; then
│ │ │ -001e8960: 0a0a 6675 6e63 7469 6f6e 2070 6572 666f  ..function perfo
│ │ │ -001e8970: 726d 5f72 656d 6564 6961 7469 6f6e 207b  rm_remediation {
│ │ │ -001e8980: 0a0a 2020 2020 0a20 2020 2020 2020 2023  ..    .        #
│ │ │ -001e8990: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ -001e89a0: 202f 7661 722f 746d 7020 6861 7320 746f   /var/tmp has to
│ │ │ -001e89b0: 2062 6520 6465 6669 6e65 6420 696e 202f   be defined in /
│ │ │ -001e89c0: 6574 632f 6673 7461 620a 2020 2020 2020  etc/fstab.      
│ │ │ -001e89d0: 2020 2320 6265 666f 7265 2074 6869 7320    # before this 
│ │ │ -001e89e0: 7265 6d65 6469 6174 696f 6e20 6361 6e20  remediation can 
│ │ │ -001e89f0: 6265 2065 7865 6375 7465 642e 2049 6e20  be executed. In 
│ │ │ -001e8a00: 6361 7365 2069 7420 6973 206e 6f74 2064  case it is not d
│ │ │ -001e8a10: 6566 696e 6564 2c20 7468 650a 2020 2020  efined, the.    
│ │ │ -001e8a20: 2020 2020 2320 7265 6d65 6469 6174 696f      # remediatio
│ │ │ -001e8a30: 6e20 6162 6f72 7473 2061 6e64 206e 6f20  n aborts and no 
│ │ │ -001e8a40: 6368 616e 6765 7320 7265 6761 7264 696e  changes regardin
│ │ │ -001e8a50: 6720 7468 6520 6d6f 756e 7420 706f 696e  g the mount poin
│ │ │ -001e8a60: 7420 6172 6520 646f 6e65 2e0a 2020 2020  t are done..    
│ │ │ -001e8a70: 2020 2020 6d6f 756e 745f 706f 696e 745f      mount_point_
│ │ │ -001e8a80: 6d61 7463 685f 7265 6765 7870 3d22 2428  match_regexp="$(
│ │ │ -001e8a90: 7072 696e 7466 2022 5e5b 5b3a 7370 6163  printf "^[[:spac
│ │ │ -001e8aa0: 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370  e:]]*[^#].*[[:sp
│ │ │ -001e8ab0: 6163 653a 5d5d 2573 5b5b 3a73 7061 6365  ace:]]%s[[:space
│ │ │ -001e8ac0: 3a5d 5d22 2022 2f76 6172 2f74 6d70 2229  :]]" "/var/tmp")
│ │ │ -001e8ad0: 220a 0a20 2020 2067 7265 7020 2224 6d6f  "..    grep "$mo
│ │ │ -001e8ae0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001e8af0: 7265 6765 7870 2220 2d71 202f 6574 632f  regexp" -q /etc/
│ │ │ -001e8b00: 6673 7461 6220 5c0a 2020 2020 2020 2020  fstab \.        
│ │ │ -001e8b10: 7c7c 207b 2065 6368 6f20 2254 6865 206d  || { echo "The m
│ │ │ -001e8b20: 6f75 6e74 2070 6f69 6e74 2027 2f76 6172  ount point '/var
│ │ │ -001e8b30: 2f74 6d70 2720 6973 206e 6f74 2065 7665  /tmp' is not eve
│ │ │ -001e8b40: 6e20 696e 202f 6574 632f 6673 7461 622c  n in /etc/fstab,
│ │ │ -001e8b50: 2073 6f20 7765 2063 616e 2774 2073 6574   so we can't set
│ │ │ -001e8b60: 2075 7020 6d6f 756e 7420 6f70 7469 6f6e   up mount option
│ │ │ -001e8b70: 7322 2026 6774 3b26 616d 703b 323b 0a20  s" >&2;. 
│ │ │ -001e8b80: 2020 2020 2020 2020 2020 2020 2020 2065                 e
│ │ │ -001e8b90: 6368 6f20 224e 6f74 2072 656d 6564 6961  cho "Not remedia
│ │ │ -001e8ba0: 7469 6e67 2c20 6265 6361 7573 6520 7468  ting, because th
│ │ │ -001e8bb0: 6572 6520 6973 206e 6f20 7265 636f 7264  ere is no record
│ │ │ -001e8bc0: 206f 6620 2f76 6172 2f74 6d70 2069 6e20   of /var/tmp in 
│ │ │ -001e8bd0: 2f65 7463 2f66 7374 6162 2220 2667 743b  /etc/fstab" >
│ │ │ -001e8be0: 2661 6d70 3b32 3b20 7265 7475 726e 2031  &2; return 1
│ │ │ -001e8bf0: 3b20 7d0a 2020 2020 0a0a 0a20 2020 206d  ; }.    ...    m
│ │ │ -001e8c00: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001e8c10: 5f72 6567 6578 703d 2224 2870 7269 6e74  _regexp="$(print
│ │ │ -001e8c20: 6620 225e 5b5b 3a73 7061 6365 3a5d 5d2a  f "^[[:space:]]*
│ │ │ -001e8c30: 5b5e 235d 2e2a 5b5b 3a73 7061 6365 3a5d  [^#].*[[:space:]
│ │ │ -001e8c40: 5d25 735b 5b3a 7370 6163 653a 5d5d 2220  ]%s[[:space:]]" 
│ │ │ -001e8c50: 2f76 6172 2f74 6d70 2922 0a0a 2020 2020  /var/tmp)"..    
│ │ │ -001e8c60: 2320 4966 2074 6865 206d 6f75 6e74 2070  # If the mount p
│ │ │ -001e8c70: 6f69 6e74 2069 7320 6e6f 7420 696e 202f  oint is not in /
│ │ │ -001e8c80: 6574 632f 6673 7461 622c 2067 6574 2070  etc/fstab, get p
│ │ │ -001e8c90: 7265 7669 6f75 7320 6d6f 756e 7420 6f70  revious mount op
│ │ │ -001e8ca0: 7469 6f6e 7320 6672 6f6d 202f 6574 632f  tions from /etc/
│ │ │ -001e8cb0: 6d74 6162 0a20 2020 2069 6620 2120 6772  mtab.    if ! gr
│ │ │ -001e8cc0: 6570 202d 7120 2224 6d6f 756e 745f 706f  ep -q "$mount_po
│ │ │ -001e8cd0: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001e8ce0: 2220 2f65 7463 2f66 7374 6162 3b20 7468  " /etc/fstab; th
│ │ │ -001e8cf0: 656e 0a20 2020 2020 2020 2023 2072 756e  en.        # run
│ │ │ -001e8d00: 7469 6d65 206f 7074 7320 7769 7468 6f75  time opts withou
│ │ │ -001e8d10: 7420 736f 6d65 2061 7574 6f6d 6174 6963  t some automatic
│ │ │ -001e8d20: 206b 6572 6e65 6c2f 7573 6572 7370 6163   kernel/userspac
│ │ │ -001e8d30: 652d 6164 6465 6420 6465 6661 756c 7473  e-added defaults
│ │ │ -001e8d40: 0a20 2020 2020 2020 2070 7265 7669 6f75  .        previou
│ │ │ -001e8d50: 735f 6d6f 756e 745f 6f70 7473 3d24 2867  s_mount_opts=$(g
│ │ │ -001e8d60: 7265 7020 2224 6d6f 756e 745f 706f 696e  rep "$mount_poin
│ │ │ -001e8d70: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ -001e8d80: 2f65 7463 2f6d 7461 6220 7c20 6865 6164  /etc/mtab | head
│ │ │ -001e8d90: 202d 3120 7c20 2061 776b 2027 7b70 7269   -1 |  awk '{pri
│ │ │ -001e8da0: 6e74 2024 347d 2720 5c0a 2020 2020 2020  nt $4}' \.      
│ │ │ -001e8db0: 2020 2020 2020 2020 2020 2020 2020 7c20                | 
│ │ │ -001e8dc0: 7365 6420 2d45 2022 732f 2872 777c 6465  sed -E "s/(rw|de
│ │ │ -001e8dd0: 6661 756c 7473 7c73 6563 6c61 6265 6c7c  faults|seclabel|
│ │ │ -001e8de0: 6e6f 7375 6964 2928 2c7c 2429 2f2f 673b  nosuid)(,|$)//g;
│ │ │ -001e8df0: 732f 2c24 2f2f 2229 0a20 2020 2020 2020  s/,$//").       
│ │ │ -001e8e00: 205b 2022 2470 7265 7669 6f75 735f 6d6f   [ "$previous_mo
│ │ │ -001e8e10: 756e 745f 6f70 7473 2220 5d20 2661 6d70  unt_opts" ] &
│ │ │ -001e8e20: 3b26 616d 703b 2070 7265 7669 6f75 735f  ;& previous_
│ │ │ -001e8e30: 6d6f 756e 745f 6f70 7473 2b3d 222c 220a  mount_opts+=",".
│ │ │ -001e8e40: 2020 2020 2020 2020 2320 496e 2069 736f          # In iso
│ │ │ -001e8e50: 3936 3630 2066 696c 6573 7973 7465 6d73  9660 filesystems
│ │ │ -001e8e60: 206d 7461 6220 636f 756c 6420 6465 7363   mtab could desc
│ │ │ -001e8e70: 7269 6265 2061 2022 626c 6f63 6b73 697a  ribe a "blocksiz
│ │ │ -001e8e80: 6522 2076 616c 7565 2c20 7468 6973 2073  e" value, this s
│ │ │ -001e8e90: 686f 756c 6420 6265 2072 6566 6c65 6374  hould be reflect
│ │ │ -001e8ea0: 6564 2069 6e0a 2020 2020 2020 2020 2320  ed in.        # 
│ │ │ -001e8eb0: 6673 7461 6220 6173 2022 626c 6f63 6b22  fstab as "block"
│ │ │ -001e8ec0: 2e20 2054 6865 206e 6578 7420 7661 7269  .  The next vari
│ │ │ -001e8ed0: 6162 6c65 2069 7320 746f 2073 6174 6973  able is to satis
│ │ │ -001e8ee0: 6679 2073 6865 6c6c 6368 6563 6b20 5343  fy shellcheck SC
│ │ │ -001e8ef0: 3230 3530 2e0a 2020 2020 2020 2020 6673  2050..        fs
│ │ │ -001e8f00: 5f74 7970 653d 2222 0a20 2020 2020 2020  _type="".       
│ │ │ -001e8f10: 2069 6620 5b20 2022 2466 735f 7479 7065   if [  "$fs_type
│ │ │ -001e8f20: 2220 3d3d 2022 6973 6f39 3636 3022 205d  " == "iso9660" ]
│ │ │ -001e8f30: 203b 2074 6865 6e0a 2020 2020 2020 2020   ; then.        
│ │ │ -001e8f40: 2020 2020 7072 6576 696f 7573 5f6d 6f75      previous_mou
│ │ │ -001e8f50: 6e74 5f6f 7074 733d 2428 7365 6420 2773  nt_opts=$(sed 's
│ │ │ -001e8f60: 2f62 6c6f 636b 7369 7a65 3d2f 626c 6f63  /blocksize=/bloc
│ │ │ -001e8f70: 6b3d 2f27 2026 6c74 3b26 6c74 3b26 6c74  k=/' <<<
│ │ │ -001e8f80: 3b20 2224 7072 6576 696f 7573 5f6d 6f75  ; "$previous_mou
│ │ │ -001e8f90: 6e74 5f6f 7074 7322 290a 2020 2020 2020  nt_opts").      
│ │ │ -001e8fa0: 2020 6669 0a20 2020 2020 2020 2065 6368    fi.        ech
│ │ │ -001e8fb0: 6f20 2220 2f76 6172 2f74 6d70 2020 6465  o " /var/tmp  de
│ │ │ -001e8fc0: 6661 756c 7473 2c24 7b70 7265 7669 6f75  faults,${previou
│ │ │ -001e8fd0: 735f 6d6f 756e 745f 6f70 7473 7d6e 6f73  s_mount_opts}nos
│ │ │ -001e8fe0: 7569 6420 3020 3022 2026 6774 3b26 6774  uid 0 0" >>
│ │ │ -001e8ff0: 3b20 2f65 7463 2f66 7374 6162 0a20 2020  ; /etc/fstab.   
│ │ │ -001e9000: 2023 2049 6620 7468 6520 6d6f 756e 745f   # If the mount_
│ │ │ -001e9010: 6f70 7420 6f70 7469 6f6e 2069 7320 6e6f  opt option is no
│ │ │ -001e9020: 7420 616c 7265 6164 7920 696e 2074 6865  t already in the
│ │ │ -001e9030: 206d 6f75 6e74 2070 6f69 6e74 2773 202f   mount point's /
│ │ │ -001e9040: 6574 632f 6673 7461 6220 656e 7472 792c  etc/fstab entry,
│ │ │ -001e9050: 2061 6464 2069 740a 2020 2020 656c 6966   add it.    elif
│ │ │ -001e9060: 2021 2067 7265 7020 2224 6d6f 756e 745f   ! grep "$mount_
│ │ │ -001e9070: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001e9080: 7870 2220 2f65 7463 2f66 7374 6162 207c  xp" /etc/fstab |
│ │ │ -001e9090: 2067 7265 7020 2d71 2022 6e6f 7375 6964   grep -q "nosuid
│ │ │ -001e90a0: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ -001e90b0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001e90c0: 7074 733d 2428 6772 6570 2022 246d 6f75  pts=$(grep "$mou
│ │ │ -001e90d0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001e90e0: 6567 6578 7022 202f 6574 632f 6673 7461  egexp" /etc/fsta
│ │ │ -001e90f0: 6220 7c20 6177 6b20 277b 7072 696e 7420  b | awk '{print 
│ │ │ -001e9100: 2434 7d27 290a 2020 2020 2020 2020 7365  $4}').        se
│ │ │ -001e9110: 6420 2d69 2022 737c 5c28 247b 6d6f 756e  d -i "s|\(${moun
│ │ │ -001e9120: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001e9130: 6765 7870 7d2e 2a24 7b70 7265 7669 6f75  gexp}.*${previou
│ │ │ -001e9140: 735f 6d6f 756e 745f 6f70 7473 7d5c 297c  s_mount_opts}\)|
│ │ │ -001e9150: 5c31 2c6e 6f73 7569 647c 2220 2f65 7463  \1,nosuid|" /etc
│ │ │ -001e9160: 2f66 7374 6162 0a20 2020 2066 690a 0a0a  /fstab.    fi...
│ │ │ -001e9170: 2020 2020 6966 206d 6b64 6972 202d 7020      if mkdir -p 
│ │ │ -001e9180: 222f 7661 722f 746d 7022 3b20 7468 656e  "/var/tmp"; then
│ │ │ -001e9190: 0a20 2020 2020 2020 2069 6620 6d6f 756e  .        if moun
│ │ │ -001e91a0: 7470 6f69 6e74 202d 7120 222f 7661 722f  tpoint -q "/var/
│ │ │ -001e91b0: 746d 7022 3b20 7468 656e 0a20 2020 2020  tmp"; then.     
│ │ │ -001e91c0: 2020 2020 2020 206d 6f75 6e74 202d 6f20         mount -o 
│ │ │ -001e91d0: 7265 6d6f 756e 7420 2d2d 7461 7267 6574  remount --target
│ │ │ -001e91e0: 2022 2f76 6172 2f74 6d70 220a 2020 2020   "/var/tmp".    
│ │ │ -001e91f0: 2020 2020 6669 0a20 2020 2066 690a 7d0a      fi.    fi.}.
│ │ │ -001e9200: 0a70 6572 666f 726d 5f72 656d 6564 6961  .perform_remedia
│ │ │ -001e9210: 7469 6f6e 0a0a 656c 7365 0a20 2020 2026  tion..else.    &
│ │ │ -001e9220: 6774 3b26 616d 703b 3220 6563 686f 2027  gt;&2 echo '
│ │ │ -001e9230: 5265 6d65 6469 6174 696f 6e20 6973 206e  Remediation is n
│ │ │ -001e9240: 6f74 2061 7070 6c69 6361 626c 652c 206e  ot applicable, n
│ │ │ -001e9250: 6f74 6869 6e67 2077 6173 2064 6f6e 6527  othing was done'
│ │ │ -001e9260: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.

│ │ │ +001e6f70: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 < │ │ │ +001e6fb0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +001e6fc0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false< │ │ │ +001e7000: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ +001e7020: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ +001e7030: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ +001e7040: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ +001e7050: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ +001e7060: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001e7070: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001e7080: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001e7090: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001e70a0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001e70b0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001e70c0: 5f76 6172 5f74 6d70 5f6e 6f73 7569 640a  _var_tmp_nosuid.
│ │ │ +001e70d0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001e70e0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001e70f0: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ +001e7100: 2074 6f20 2f76 6172 2f74 6d70 3a20 4368   to /var/tmp: Ch
│ │ │ +001e7110: 6563 6b20 696e 666f 726d 6174 696f 6e20  eck information 
│ │ │ +001e7120: 6173 736f 6369 6174 6564 2074 6f20 6d6f  associated to mo
│ │ │ +001e7130: 756e 7470 6f69 6e74 270a 2020 616e 7369  untpoint'.  ansi
│ │ │ +001e7140: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ +001e7150: 616e 643a 2066 696e 646d 6e74 202d 2d66  and: findmnt --f
│ │ │ +001e7160: 7374 6162 2027 2f76 6172 2f74 6d70 270a  stab '/var/tmp'.
│ │ │ +001e7170: 2020 7265 6769 7374 6572 3a20 6465 7669    register: devi
│ │ │ +001e7180: 6365 5f6e 616d 650a 2020 6661 696c 6564  ce_name.  failed
│ │ │ +001e7190: 5f77 6865 6e3a 2064 6576 6963 655f 6e61  _when: device_na
│ │ │ +001e71a0: 6d65 2e72 6320 2667 743b 2031 0a20 2063  me.rc > 1.  c
│ │ │ +001e71b0: 6861 6e67 6564 5f77 6865 6e3a 2066 616c  hanged_when: fal
│ │ │ +001e71c0: 7365 0a20 2063 6865 636b 5f6d 6f64 653a  se.  check_mode:
│ │ │ +001e71d0: 2066 616c 7365 0a20 2077 6865 6e3a 0a20   false.  when:. 
│ │ │ +001e71e0: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ +001e71f0: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +001e7200: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001e7210: 6420 2272 706d 2d6f 7374 7265 6522 2069  d "rpm-ostree" i
│ │ │ +001e7220: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001e7230: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +001e7240: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ +001e7250: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001e7260: 6573 2061 6e64 206e 6f74 2022 6f70 656e  es and not "open
│ │ │ +001e7270: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ +001e7280: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001e7290: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +001e72a0: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ +001e72b0: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ +001e72c0: 6520 2920 616e 6420 6e6f 7420 2820 616e  e ) and not ( an
│ │ │ +001e72d0: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ +001e72e0: 7469 6f6e 5f74 7970 6520 696e 0a20 2020  tion_type in.   
│ │ │ +001e72f0: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ +001e7300: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ +001e7310: 646d 616e 222c 2022 636f 6e74 6169 6e65  dman", "containe
│ │ │ +001e7320: 7222 5d20 2920 290a 2020 2d20 2722 2f76  r"] ) ).  - '"/v
│ │ │ +001e7330: 6172 2f74 6d70 2220 696e 2061 6e73 6962  ar/tmp" in ansib
│ │ │ +001e7340: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ +001e7350: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ +001e7360: 2229 207c 206c 6973 7427 0a20 2074 6167  ") | list'.  tag
│ │ │ +001e7370: 733a 0a20 202d 2063 6f6e 6669 6775 7265  s:.  - configure
│ │ │ +001e7380: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +001e7390: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +001e73a0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +001e73b0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +001e73c0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ +001e73d0: 7074 696f 6e5f 7661 725f 746d 705f 6e6f  ption_var_tmp_no
│ │ │ +001e73e0: 7375 6964 0a20 202d 206e 6f5f 7265 626f  suid.  - no_rebo
│ │ │ +001e73f0: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +001e7400: 653a 2027 4164 6420 6e6f 7375 6964 204f  e: 'Add nosuid O
│ │ │ +001e7410: 7074 696f 6e20 746f 202f 7661 722f 746d  ption to /var/tm
│ │ │ +001e7420: 703a 2043 7265 6174 6520 6d6f 756e 745f  p: Create mount_
│ │ │ +001e7430: 696e 666f 2064 6963 7469 6f6e 6172 7920  info dictionary 
│ │ │ +001e7440: 7661 7269 6162 6c65 270a 2020 7365 745f  variable'.  set_
│ │ │ +001e7450: 6661 6374 3a0a 2020 2020 6d6f 756e 745f  fact:.    mount_
│ │ │ +001e7460: 696e 666f 3a20 277b 7b20 6d6f 756e 745f  info: '{{ mount_
│ │ │ +001e7470: 696e 666f 7c64 6566 6175 6c74 287b 7d29  info|default({})
│ │ │ +001e7480: 7c63 6f6d 6269 6e65 287b 6974 656d 2e30  |combine({item.0
│ │ │ +001e7490: 3a20 6974 656d 2e31 7d29 207d 7d27 0a20  : item.1}) }}'. 
│ │ │ +001e74a0: 2077 6974 685f 746f 6765 7468 6572 3a0a   with_together:.
│ │ │ +001e74b0: 2020 2d20 277b 7b20 6465 7669 6365 5f6e    - '{{ device_n
│ │ │ +001e74c0: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ +001e74d0: 5b30 5d2e 7370 6c69 7428 2920 7c20 6d61  [0].split() | ma
│ │ │ +001e74e0: 7028 2727 6c6f 7765 7227 2729 207c 206c  p(''lower'') | l
│ │ │ +001e74f0: 6973 7420 7d7d 270a 2020 2d20 277b 7b20  ist }}'.  - '{{ 
│ │ │ +001e7500: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001e7510: 7574 5f6c 696e 6573 5b31 5d2e 7370 6c69  ut_lines[1].spli
│ │ │ +001e7520: 7428 2920 7c20 6c69 7374 207d 7d27 0a20  t() | list }}'. 
│ │ │ +001e7530: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ +001e7540: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ +001e7550: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001e7560: 6b61 6765 7320 616e 6420 2272 706d 2d6f  kages and "rpm-o
│ │ │ +001e7570: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001e7580: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001e7590: 0a20 2020 2061 6e64 2022 626f 6f74 6322  .    and "bootc"
│ │ │ +001e75a0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001e75b0: 732e 7061 636b 6167 6573 2061 6e64 206e  s.packages and n
│ │ │ +001e75c0: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ +001e75d0: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ +001e75e0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001e75f0: 0a20 2020 2061 6e64 2022 6f73 7472 6565  .    and "ostree
│ │ │ +001e7600: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ +001e7610: 635f 636d 646c 696e 6520 2920 616e 6420  c_cmdline ) and 
│ │ │ +001e7620: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ +001e7630: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ +001e7640: 6520 696e 0a20 2020 205b 2264 6f63 6b65  e in.    ["docke
│ │ │ +001e7650: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ +001e7660: 767a 222c 2022 706f 646d 616e 222c 2022  vz", "podman", "
│ │ │ +001e7670: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ +001e7680: 2020 2d20 2722 2f76 6172 2f74 6d70 2220    - '"/var/tmp" 
│ │ │ +001e7690: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ +001e76a0: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ +001e76b0: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ +001e76c0: 7427 0a20 202d 2064 6576 6963 655f 6e61  t'.  - device_na
│ │ │ +001e76d0: 6d65 2e73 7464 6f75 7420 6973 2064 6566  me.stdout is def
│ │ │ +001e76e0: 696e 6564 2061 6e64 2064 6576 6963 655f  ined and device_
│ │ │ +001e76f0: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ +001e7700: 7320 6973 2064 6566 696e 6564 0a20 202d  s is defined.  -
│ │ │ +001e7710: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ +001e7720: 646f 7574 207c 206c 656e 6774 6820 2667  dout | length &g
│ │ │ +001e7730: 743b 2030 290a 2020 7461 6773 3a0a 2020  t; 0).  tags:.  
│ │ │ +001e7740: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001e7750: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001e7760: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001e7770: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001e7780: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001e7790: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001e77a0: 5f76 6172 5f74 6d70 5f6e 6f73 7569 640a  _var_tmp_nosuid.
│ │ │ +001e77b0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001e77c0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001e77d0: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ +001e77e0: 2074 6f20 2f76 6172 2f74 6d70 3a20 4966   to /var/tmp: If
│ │ │ +001e77f0: 202f 7661 722f 746d 7020 6e6f 7420 6d6f   /var/tmp not mo
│ │ │ +001e7800: 756e 7465 642c 2063 7261 6674 206d 6f75  unted, craft mou
│ │ │ +001e7810: 6e74 5f69 6e66 6f0a 2020 2020 6d61 6e75  nt_info.    manu
│ │ │ +001e7820: 616c 6c79 270a 2020 7365 745f 6661 6374  ally'.  set_fact
│ │ │ +001e7830: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ +001e7840: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001e7850: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d  |default({})|com
│ │ │ +001e7860: 6269 6e65 287b 6974 656d 2e30 3a20 6974  bine({item.0: it
│ │ │ +001e7870: 656d 2e31 7d29 207d 7d27 0a20 2077 6974  em.1}) }}'.  wit
│ │ │ +001e7880: 685f 746f 6765 7468 6572 3a0a 2020 2d20  h_together:.  - 
│ │ │ +001e7890: 2d20 7461 7267 6574 0a20 2020 202d 2073  - target.    - s
│ │ │ +001e78a0: 6f75 7263 650a 2020 2020 2d20 6673 7479  ource.    - fsty
│ │ │ +001e78b0: 7065 0a20 2020 202d 206f 7074 696f 6e73  pe.    - options
│ │ │ +001e78c0: 0a20 202d 202d 202f 7661 722f 746d 700a  .  - - /var/tmp.
│ │ │ +001e78d0: 2020 2020 2d20 2727 0a20 2020 202d 2027      - ''.    - '
│ │ │ +001e78e0: 270a 2020 2020 2d20 6465 6661 756c 7473  '.    - defaults
│ │ │ +001e78f0: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ +001e7900: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ +001e7910: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001e7920: 6163 6b61 6765 7320 616e 6420 2272 706d  ackages and "rpm
│ │ │ +001e7930: 2d6f 7374 7265 6522 2069 6e20 616e 7369  -ostree" in ansi
│ │ │ +001e7940: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001e7950: 6573 0a20 2020 2061 6e64 2022 626f 6f74  es.    and "boot
│ │ │ +001e7960: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ +001e7970: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001e7980: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ +001e7990: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ +001e79a0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001e79b0: 6573 0a20 2020 2061 6e64 2022 6f73 7472  es.    and "ostr
│ │ │ +001e79c0: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ +001e79d0: 726f 635f 636d 646c 696e 6520 2920 616e  roc_cmdline ) an
│ │ │ +001e79e0: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ +001e79f0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ +001e7a00: 7970 6520 696e 0a20 2020 205b 2264 6f63  ype in.    ["doc
│ │ │ +001e7a10: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ +001e7a20: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ +001e7a30: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ +001e7a40: 290a 2020 2d20 2722 2f76 6172 2f74 6d70  ).  - '"/var/tmp
│ │ │ +001e7a50: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ +001e7a60: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ +001e7a70: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ +001e7a80: 6973 7427 0a20 202d 2028 222d 2d66 7374  ist'.  - ("--fst
│ │ │ +001e7a90: 6162 2220 7c20 6c65 6e67 7468 203d 3d20  ab" | length == 
│ │ │ +001e7aa0: 3029 0a20 202d 2064 6576 6963 655f 6e61  0).  - device_na
│ │ │ +001e7ab0: 6d65 2e73 7464 6f75 7420 6973 2064 6566  me.stdout is def
│ │ │ +001e7ac0: 696e 6564 2061 6e64 2064 6576 6963 655f  ined and device_
│ │ │ +001e7ad0: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ +001e7ae0: 7320 6973 2064 6566 696e 6564 0a20 202d  s is defined.  -
│ │ │ +001e7af0: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ +001e7b00: 646f 7574 207c 206c 656e 6774 6820 3d3d  dout | length ==
│ │ │ +001e7b10: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ +001e7b20: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +001e7b30: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +001e7b40: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +001e7b50: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +001e7b60: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001e7b70: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76  - mount_option_v
│ │ │ +001e7b80: 6172 5f74 6d70 5f6e 6f73 7569 640a 2020  ar_tmp_nosuid.  
│ │ │ +001e7b90: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001e7ba0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ +001e7bb0: 206e 6f73 7569 6420 4f70 7469 6f6e 2074   nosuid Option t
│ │ │ +001e7bc0: 6f20 2f76 6172 2f74 6d70 3a20 4d61 6b65  o /var/tmp: Make
│ │ │ +001e7bd0: 2073 7572 6520 6e6f 7375 6964 206f 7074   sure nosuid opt
│ │ │ +001e7be0: 696f 6e20 6973 2070 6172 7420 6f66 2074  ion is part of t
│ │ │ +001e7bf0: 6865 2074 6f0a 2020 2020 2f76 6172 2f74  he to.    /var/t
│ │ │ +001e7c00: 6d70 206f 7074 696f 6e73 270a 2020 7365  mp options'.  se
│ │ │ +001e7c10: 745f 6661 6374 3a0a 2020 2020 6d6f 756e  t_fact:.    moun
│ │ │ +001e7c20: 745f 696e 666f 3a20 277b 7b20 6d6f 756e  t_info: '{{ moun
│ │ │ +001e7c30: 745f 696e 666f 207c 2063 6f6d 6269 6e65  t_info | combine
│ │ │ +001e7c40: 2820 7b27 276f 7074 696f 6e73 2727 3a27  ( {''options'':'
│ │ │ +001e7c50: 2727 277e 286d 6f75 6e74 5f69 6e66 6f2e  '''~(mount_info.
│ │ │ +001e7c60: 6f70 7469 6f6e 7320 7c0a 2020 2020 2020  options |.      
│ │ │ +001e7c70: 6465 6661 756c 7428 2727 2727 2929 7e28  default(''''))~(
│ │ │ +001e7c80: 2727 2c27 2720 6966 2028 6d6f 756e 745f  '','' if (mount_
│ │ │ +001e7c90: 696e 666f 2e6f 7074 696f 6e73 207c 2064  info.options | d
│ │ │ +001e7ca0: 6566 6175 6c74 2827 2727 2729 2920 656c  efault('''')) el
│ │ │ +001e7cb0: 7365 2027 2727 2729 7e27 276e 6f73 7569  se '''')~''nosui
│ │ │ +001e7cc0: 6427 270a 2020 2020 2020 7d29 207d 7d27  d''.      }) }}'
│ │ │ +001e7cd0: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ +001e7ce0: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ +001e7cf0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001e7d00: 6163 6b61 6765 7320 616e 6420 2272 706d  ackages and "rpm
│ │ │ +001e7d10: 2d6f 7374 7265 6522 2069 6e20 616e 7369  -ostree" in ansi
│ │ │ +001e7d20: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001e7d30: 6573 0a20 2020 2061 6e64 2022 626f 6f74  es.    and "boot
│ │ │ +001e7d40: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ +001e7d50: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001e7d60: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ +001e7d70: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ +001e7d80: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001e7d90: 6573 0a20 2020 2061 6e64 2022 6f73 7472  es.    and "ostr
│ │ │ +001e7da0: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ +001e7db0: 726f 635f 636d 646c 696e 6520 2920 616e  roc_cmdline ) an
│ │ │ +001e7dc0: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ +001e7dd0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ +001e7de0: 7970 6520 696e 0a20 2020 205b 2264 6f63  ype in.    ["doc
│ │ │ +001e7df0: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ +001e7e00: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ +001e7e10: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ +001e7e20: 290a 2020 2d20 2722 2f76 6172 2f74 6d70  ).  - '"/var/tmp
│ │ │ +001e7e30: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ +001e7e40: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ +001e7e50: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ +001e7e60: 6973 7427 0a20 202d 206d 6f75 6e74 5f69  ist'.  - mount_i
│ │ │ +001e7e70: 6e66 6f20 6973 2064 6566 696e 6564 2061  nfo is defined a
│ │ │ +001e7e80: 6e64 2022 6e6f 7375 6964 2220 6e6f 7420  nd "nosuid" not 
│ │ │ +001e7e90: 696e 2028 6d6f 756e 745f 696e 666f 2e6f  in (mount_info.o
│ │ │ +001e7ea0: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ +001e7eb0: 2827 2729 290a 2020 7461 6773 3a0a 2020  ('')).  tags:.  
│ │ │ +001e7ec0: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001e7ed0: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001e7ee0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001e7ef0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001e7f00: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001e7f10: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001e7f20: 5f76 6172 5f74 6d70 5f6e 6f73 7569 640a  _var_tmp_nosuid.
│ │ │ +001e7f30: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001e7f40: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001e7f50: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ +001e7f60: 2074 6f20 2f76 6172 2f74 6d70 3a20 456e   to /var/tmp: En
│ │ │ +001e7f70: 7375 7265 202f 7661 722f 746d 7020 6973  sure /var/tmp is
│ │ │ +001e7f80: 206d 6f75 6e74 6564 2077 6974 6820 6e6f   mounted with no
│ │ │ +001e7f90: 7375 6964 206f 7074 696f 6e27 0a20 2061  suid option'.  a
│ │ │ +001e7fa0: 6e73 6962 6c65 2e70 6f73 6978 2e6d 6f75  nsible.posix.mou
│ │ │ +001e7fb0: 6e74 3a0a 2020 2020 7061 7468 3a20 2f76  nt:.    path: /v
│ │ │ +001e7fc0: 6172 2f74 6d70 0a20 2020 2073 7263 3a20  ar/tmp.    src: 
│ │ │ +001e7fd0: 277b 7b20 6d6f 756e 745f 696e 666f 2e73  '{{ mount_info.s
│ │ │ +001e7fe0: 6f75 7263 6520 7c20 6465 6661 756c 7428  ource | default(
│ │ │ +001e7ff0: 2727 2727 2920 7d7d 270a 2020 2020 6f70  '''') }}'.    op
│ │ │ +001e8000: 7473 3a20 277b 7b20 6d6f 756e 745f 696e  ts: '{{ mount_in
│ │ │ +001e8010: 666f 2e6f 7074 696f 6e73 207c 2064 6566  fo.options | def
│ │ │ +001e8020: 6175 6c74 2827 2727 2729 207d 7d27 0a20  ault('''') }}'. 
│ │ │ +001e8030: 2020 2073 7461 7465 3a20 6d6f 756e 7465     state: mounte
│ │ │ +001e8040: 640a 2020 2020 6673 7479 7065 3a20 277b  d.    fstype: '{
│ │ │ +001e8050: 7b20 6d6f 756e 745f 696e 666f 2e66 7374  { mount_info.fst
│ │ │ +001e8060: 7970 6520 7c20 6465 6661 756c 7428 2727  ype | default(''
│ │ │ +001e8070: 2727 2920 7d7d 270a 2020 7265 6769 7374  '') }}'.  regist
│ │ │ +001e8080: 6572 3a20 6d6f 756e 745f 7265 7375 6c74  er: mount_result
│ │ │ +001e8090: 0a20 2066 6169 6c65 645f 7768 656e 3a0a  .  failed_when:.
│ │ │ +001e80a0: 2020 2d20 6d6f 756e 745f 7265 7375 6c74    - mount_result
│ │ │ +001e80b0: 2069 7320 6661 696c 6564 0a20 202d 2027   is failed.  - '
│ │ │ +001e80c0: 2727 7461 7267 6574 2069 7320 6275 7379  ''target is busy
│ │ │ +001e80d0: 2727 206e 6f74 2069 6e20 286d 6f75 6e74  '' not in (mount
│ │ │ +001e80e0: 5f72 6573 756c 742e 6d73 6720 7c20 6465  _result.msg | de
│ │ │ +001e80f0: 6661 756c 7428 2727 2727 2929 270a 2020  fault(''''))'.  
│ │ │ +001e8100: 2d20 2727 2761 6c72 6561 6479 206d 6f75  - '''already mou
│ │ │ +001e8110: 6e74 6564 2727 206e 6f74 2069 6e20 286d  nted'' not in (m
│ │ │ +001e8120: 6f75 6e74 5f72 6573 756c 742e 6d73 6720  ount_result.msg 
│ │ │ +001e8130: 7c20 6465 6661 756c 7428 2727 2727 2929  | default(''''))
│ │ │ +001e8140: 270a 2020 7768 656e 3a0a 2020 2d20 2820  '.  when:.  - ( 
│ │ │ +001e8150: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ +001e8160: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001e8170: 7061 636b 6167 6573 2061 6e64 2022 7270  packages and "rp
│ │ │ +001e8180: 6d2d 6f73 7472 6565 2220 696e 2061 6e73  m-ostree" in ans
│ │ │ +001e8190: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001e81a0: 6765 730a 2020 2020 616e 6420 2262 6f6f  ges.    and "boo
│ │ │ +001e81b0: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ +001e81c0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001e81d0: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ +001e81e0: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ +001e81f0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001e8200: 6765 730a 2020 2020 616e 6420 226f 7374  ges.    and "ost
│ │ │ +001e8210: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001e8220: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061  proc_cmdline ) a
│ │ │ +001e8230: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ +001e8240: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ +001e8250: 7479 7065 2069 6e0a 2020 2020 5b22 646f  type in.    ["do
│ │ │ +001e8260: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ +001e8270: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ +001e8280: 2c20 2263 6f6e 7461 696e 6572 225d 2029  , "container"] )
│ │ │ +001e8290: 2029 0a20 202d 2027 222f 7661 722f 746d   ).  - '"/var/tm
│ │ │ +001e82a0: 7022 2069 6e20 616e 7369 626c 655f 6d6f  p" in ansible_mo
│ │ │ +001e82b0: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ +001e82c0: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ +001e82d0: 6c69 7374 270a 2020 2d20 6d6f 756e 745f  list'.  - mount_
│ │ │ +001e82e0: 696e 666f 2069 7320 6465 6669 6e65 640a  info is defined.
│ │ │ +001e82f0: 2020 2d20 2864 6576 6963 655f 6e61 6d65    - (device_name
│ │ │ +001e8300: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ +001e8310: 6564 2061 6e64 2028 6465 7669 6365 5f6e  ed and (device_n
│ │ │ +001e8320: 616d 652e 7374 646f 7574 207c 206c 656e  ame.stdout | len
│ │ │ +001e8330: 6774 6820 2667 743b 2030 2929 206f 7220  gth > 0)) or 
│ │ │ +001e8340: 2822 2d2d 6673 7461 6222 0a20 2020 207c  ("--fstab".    |
│ │ │ +001e8350: 206c 656e 6774 6820 3d3d 2030 290a 2020   length == 0).  
│ │ │ +001e8360: 7461 6773 3a0a 2020 2d20 636f 6e66 6967  tags:.  - config
│ │ │ +001e8370: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +001e8380: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ +001e8390: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001e83a0: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ +001e83b0: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ +001e83c0: 745f 6f70 7469 6f6e 5f76 6172 5f74 6d70  t_option_var_tmp
│ │ │ +001e83d0: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ +001e83e0: 6562 6f6f 745f 6e65 6564 6564 0a3c 2f63  eboot_needed.
│ │ │ +001e8400: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +001e84a0: 6564 6961 7469 6f6e 2053 6865 6c6c 2073 ediation Shell s │ │ │ +001e84b0: 6372 6970 7420 e287 b23c 2f61 3e3c 6272 cript ...
│ │ │ +001e6f60: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +001e6f90: 696f 6e3a 3c2f 7468 3e3c 7464 3e68 6967 ion:hig │ │ │ +001e6fa0: 683c 2f74 643e 3c2f 7472 3e3c 7472 3e3c h
Strate │ │ │ +001e6fe0: 6779 3a3c 2f74 683e 3c74 643e 636f 6e66 gy:conf │ │ │ +001e6ff0: 6967 7572 653c 2f74 643e 3c2f 7472 3e3c igure
# R
│ │ │ +001e8570: 656d 6564 6961 7469 6f6e 2069 7320 6170  emediation is ap
│ │ │ +001e8580: 706c 6963 6162 6c65 206f 6e6c 7920 696e  plicable only in
│ │ │ +001e8590: 2063 6572 7461 696e 2070 6c61 7466 6f72   certain platfor
│ │ │ +001e85a0: 6d73 0a69 6620 2820 2120 2820 7b20 7270  ms.if ( ! ( { rp
│ │ │ +001e85b0: 6d20 2d2d 7175 6965 7420 2d71 206b 6572  m --quiet -q ker
│ │ │ +001e85c0: 6e65 6c20 3b7d 2026 616d 703b 2661 6d70  nel ;} &&
│ │ │ +001e85d0: 3b20 7b20 7270 6d20 2d2d 7175 6965 7420  ; { rpm --quiet 
│ │ │ +001e85e0: 2d71 2072 706d 2d6f 7374 7265 6520 3b7d  -q rpm-ostree ;}
│ │ │ +001e85f0: 2026 616d 703b 2661 6d70 3b20 7b20 7270   && { rp
│ │ │ +001e8600: 6d20 2d2d 7175 6965 7420 2d71 2062 6f6f  m --quiet -q boo
│ │ │ +001e8610: 7463 203b 7d20 2661 6d70 3b26 616d 703b  tc ;} &&
│ │ │ +001e8620: 207b 2021 2072 706d 202d 2d71 7569 6574   { ! rpm --quiet
│ │ │ +001e8630: 202d 7120 6f70 656e 7368 6966 742d 6b75   -q openshift-ku
│ │ │ +001e8640: 6265 6c65 7420 3b7d 2026 616d 703b 2661  belet ;} &&a
│ │ │ +001e8650: 6d70 3b20 285b 202d 6620 2f72 756e 2f6f  mp; ([ -f /run/o
│ │ │ +001e8660: 7374 7265 652d 626f 6f74 6564 205d 207c  stree-booted ] |
│ │ │ +001e8670: 7c20 5b20 2d4c 202f 6f73 7472 6565 205d  | [ -L /ostree ]
│ │ │ +001e8680: 2920 2920 2661 6d70 3b26 616d 703b 2021  ) ) && !
│ │ │ +001e8690: 2028 205b 202d 6620 2f2e 646f 636b 6572   ( [ -f /.docker
│ │ │ +001e86a0: 656e 7620 5d20 7c7c 205b 202d 6620 2f72  env ] || [ -f /r
│ │ │ +001e86b0: 756e 2f2e 636f 6e74 6169 6e65 7265 6e76  un/.containerenv
│ │ │ +001e86c0: 205d 2029 2029 2026 616d 703b 2661 6d70   ] ) ) &&
│ │ │ +001e86d0: 3b20 7b20 2820 6669 6e64 6d6e 7420 2d2d  ; { ( findmnt --
│ │ │ +001e86e0: 6b65 726e 656c 2022 2f76 6172 2f74 6d70  kernel "/var/tmp
│ │ │ +001e86f0: 2220 2667 743b 202f 6465 762f 6e75 6c6c  " > /dev/null
│ │ │ +001e8700: 207c 7c20 6669 6e64 6d6e 7420 2d2d 6673   || findmnt --fs
│ │ │ +001e8710: 7461 6220 222f 7661 722f 746d 7022 2026  tab "/var/tmp" &
│ │ │ +001e8720: 6774 3b20 2f64 6576 2f6e 756c 6c20 293b  gt; /dev/null );
│ │ │ +001e8730: 207d 3b20 7468 656e 0a0a 6675 6e63 7469   }; then..functi
│ │ │ +001e8740: 6f6e 2070 6572 666f 726d 5f72 656d 6564  on perform_remed
│ │ │ +001e8750: 6961 7469 6f6e 207b 0a0a 2020 2020 0a20  iation {..    . 
│ │ │ +001e8760: 2020 2020 2020 2023 2074 6865 206d 6f75         # the mou
│ │ │ +001e8770: 6e74 2070 6f69 6e74 202f 7661 722f 746d  nt point /var/tm
│ │ │ +001e8780: 7020 6861 7320 746f 2062 6520 6465 6669  p has to be defi
│ │ │ +001e8790: 6e65 6420 696e 202f 6574 632f 6673 7461  ned in /etc/fsta
│ │ │ +001e87a0: 620a 2020 2020 2020 2020 2320 6265 666f  b.        # befo
│ │ │ +001e87b0: 7265 2074 6869 7320 7265 6d65 6469 6174  re this remediat
│ │ │ +001e87c0: 696f 6e20 6361 6e20 6265 2065 7865 6375  ion can be execu
│ │ │ +001e87d0: 7465 642e 2049 6e20 6361 7365 2069 7420  ted. In case it 
│ │ │ +001e87e0: 6973 206e 6f74 2064 6566 696e 6564 2c20  is not defined, 
│ │ │ +001e87f0: 7468 650a 2020 2020 2020 2020 2320 7265  the.        # re
│ │ │ +001e8800: 6d65 6469 6174 696f 6e20 6162 6f72 7473  mediation aborts
│ │ │ +001e8810: 2061 6e64 206e 6f20 6368 616e 6765 7320   and no changes 
│ │ │ +001e8820: 7265 6761 7264 696e 6720 7468 6520 6d6f  regarding the mo
│ │ │ +001e8830: 756e 7420 706f 696e 7420 6172 6520 646f  unt point are do
│ │ │ +001e8840: 6e65 2e0a 2020 2020 2020 2020 6d6f 756e  ne..        moun
│ │ │ +001e8850: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001e8860: 6765 7870 3d22 2428 7072 696e 7466 2022  gexp="$(printf "
│ │ │ +001e8870: 5e5b 5b3a 7370 6163 653a 5d5d 2a5b 5e23  ^[[:space:]]*[^#
│ │ │ +001e8880: 5d2e 2a5b 5b3a 7370 6163 653a 5d5d 2573  ].*[[:space:]]%s
│ │ │ +001e8890: 5b5b 3a73 7061 6365 3a5d 5d22 2022 2f76  [[:space:]]" "/v
│ │ │ +001e88a0: 6172 2f74 6d70 2229 220a 0a20 2020 2067  ar/tmp")"..    g
│ │ │ +001e88b0: 7265 7020 2224 6d6f 756e 745f 706f 696e  rep "$mount_poin
│ │ │ +001e88c0: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ +001e88d0: 2d71 202f 6574 632f 6673 7461 6220 5c0a  -q /etc/fstab \.
│ │ │ +001e88e0: 2020 2020 2020 2020 7c7c 207b 2065 6368          || { ech
│ │ │ +001e88f0: 6f20 2254 6865 206d 6f75 6e74 2070 6f69  o "The mount poi
│ │ │ +001e8900: 6e74 2027 2f76 6172 2f74 6d70 2720 6973  nt '/var/tmp' is
│ │ │ +001e8910: 206e 6f74 2065 7665 6e20 696e 202f 6574   not even in /et
│ │ │ +001e8920: 632f 6673 7461 622c 2073 6f20 7765 2063  c/fstab, so we c
│ │ │ +001e8930: 616e 2774 2073 6574 2075 7020 6d6f 756e  an't set up moun
│ │ │ +001e8940: 7420 6f70 7469 6f6e 7322 2026 6774 3b26  t options" >&
│ │ │ +001e8950: 616d 703b 323b 0a20 2020 2020 2020 2020  amp;2;.         
│ │ │ +001e8960: 2020 2020 2020 2065 6368 6f20 224e 6f74         echo "Not
│ │ │ +001e8970: 2072 656d 6564 6961 7469 6e67 2c20 6265   remediating, be
│ │ │ +001e8980: 6361 7573 6520 7468 6572 6520 6973 206e  cause there is n
│ │ │ +001e8990: 6f20 7265 636f 7264 206f 6620 2f76 6172  o record of /var
│ │ │ +001e89a0: 2f74 6d70 2069 6e20 2f65 7463 2f66 7374  /tmp in /etc/fst
│ │ │ +001e89b0: 6162 2220 2667 743b 2661 6d70 3b32 3b20  ab" >&2; 
│ │ │ +001e89c0: 7265 7475 726e 2031 3b20 7d0a 2020 2020  return 1; }.    
│ │ │ +001e89d0: 0a0a 0a20 2020 206d 6f75 6e74 5f70 6f69  ...    mount_poi
│ │ │ +001e89e0: 6e74 5f6d 6174 6368 5f72 6567 6578 703d  nt_match_regexp=
│ │ │ +001e89f0: 2224 2870 7269 6e74 6620 225e 5b5b 3a73  "$(printf "^[[:s
│ │ │ +001e8a00: 7061 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b  pace:]]*[^#].*[[
│ │ │ +001e8a10: 3a73 7061 6365 3a5d 5d25 735b 5b3a 7370  :space:]]%s[[:sp
│ │ │ +001e8a20: 6163 653a 5d5d 2220 2f76 6172 2f74 6d70  ace:]]" /var/tmp
│ │ │ +001e8a30: 2922 0a0a 2020 2020 2320 4966 2074 6865  )"..    # If the
│ │ │ +001e8a40: 206d 6f75 6e74 2070 6f69 6e74 2069 7320   mount point is 
│ │ │ +001e8a50: 6e6f 7420 696e 202f 6574 632f 6673 7461  not in /etc/fsta
│ │ │ +001e8a60: 622c 2067 6574 2070 7265 7669 6f75 7320  b, get previous 
│ │ │ +001e8a70: 6d6f 756e 7420 6f70 7469 6f6e 7320 6672  mount options fr
│ │ │ +001e8a80: 6f6d 202f 6574 632f 6d74 6162 0a20 2020  om /etc/mtab.   
│ │ │ +001e8a90: 2069 6620 2120 6772 6570 202d 7120 2224   if ! grep -q "$
│ │ │ +001e8aa0: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001e8ab0: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ +001e8ac0: 7374 6162 3b20 7468 656e 0a20 2020 2020  stab; then.     
│ │ │ +001e8ad0: 2020 2023 2072 756e 7469 6d65 206f 7074     # runtime opt
│ │ │ +001e8ae0: 7320 7769 7468 6f75 7420 736f 6d65 2061  s without some a
│ │ │ +001e8af0: 7574 6f6d 6174 6963 206b 6572 6e65 6c2f  utomatic kernel/
│ │ │ +001e8b00: 7573 6572 7370 6163 652d 6164 6465 6420  userspace-added 
│ │ │ +001e8b10: 6465 6661 756c 7473 0a20 2020 2020 2020  defaults.       
│ │ │ +001e8b20: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ +001e8b30: 6f70 7473 3d24 2867 7265 7020 2224 6d6f  opts=$(grep "$mo
│ │ │ +001e8b40: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001e8b50: 7265 6765 7870 2220 2f65 7463 2f6d 7461  regexp" /etc/mta
│ │ │ +001e8b60: 6220 7c20 6865 6164 202d 3120 7c20 2061  b | head -1 |  a
│ │ │ +001e8b70: 776b 2027 7b70 7269 6e74 2024 347d 2720  wk '{print $4}' 
│ │ │ +001e8b80: 5c0a 2020 2020 2020 2020 2020 2020 2020  \.              
│ │ │ +001e8b90: 2020 2020 2020 7c20 7365 6420 2d45 2022        | sed -E "
│ │ │ +001e8ba0: 732f 2872 777c 6465 6661 756c 7473 7c73  s/(rw|defaults|s
│ │ │ +001e8bb0: 6563 6c61 6265 6c7c 6e6f 7375 6964 2928  eclabel|nosuid)(
│ │ │ +001e8bc0: 2c7c 2429 2f2f 673b 732f 2c24 2f2f 2229  ,|$)//g;s/,$//")
│ │ │ +001e8bd0: 0a20 2020 2020 2020 205b 2022 2470 7265  .        [ "$pre
│ │ │ +001e8be0: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001e8bf0: 2220 5d20 2661 6d70 3b26 616d 703b 2070  " ] && p
│ │ │ +001e8c00: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001e8c10: 7473 2b3d 222c 220a 2020 2020 2020 2020  ts+=",".        
│ │ │ +001e8c20: 2320 496e 2069 736f 3936 3630 2066 696c  # In iso9660 fil
│ │ │ +001e8c30: 6573 7973 7465 6d73 206d 7461 6220 636f  esystems mtab co
│ │ │ +001e8c40: 756c 6420 6465 7363 7269 6265 2061 2022  uld describe a "
│ │ │ +001e8c50: 626c 6f63 6b73 697a 6522 2076 616c 7565  blocksize" value
│ │ │ +001e8c60: 2c20 7468 6973 2073 686f 756c 6420 6265  , this should be
│ │ │ +001e8c70: 2072 6566 6c65 6374 6564 2069 6e0a 2020   reflected in.  
│ │ │ +001e8c80: 2020 2020 2020 2320 6673 7461 6220 6173        # fstab as
│ │ │ +001e8c90: 2022 626c 6f63 6b22 2e20 2054 6865 206e   "block".  The n
│ │ │ +001e8ca0: 6578 7420 7661 7269 6162 6c65 2069 7320  ext variable is 
│ │ │ +001e8cb0: 746f 2073 6174 6973 6679 2073 6865 6c6c  to satisfy shell
│ │ │ +001e8cc0: 6368 6563 6b20 5343 3230 3530 2e0a 2020  check SC2050..  
│ │ │ +001e8cd0: 2020 2020 2020 6673 5f74 7970 653d 2222        fs_type=""
│ │ │ +001e8ce0: 0a20 2020 2020 2020 2069 6620 5b20 2022  .        if [  "
│ │ │ +001e8cf0: 2466 735f 7479 7065 2220 3d3d 2022 6973  $fs_type" == "is
│ │ │ +001e8d00: 6f39 3636 3022 205d 203b 2074 6865 6e0a  o9660" ] ; then.
│ │ │ +001e8d10: 2020 2020 2020 2020 2020 2020 7072 6576              prev
│ │ │ +001e8d20: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d  ious_mount_opts=
│ │ │ +001e8d30: 2428 7365 6420 2773 2f62 6c6f 636b 7369  $(sed 's/blocksi
│ │ │ +001e8d40: 7a65 3d2f 626c 6f63 6b3d 2f27 2026 6c74  ze=/block=/' <
│ │ │ +001e8d50: 3b26 6c74 3b26 6c74 3b20 2224 7072 6576  ;<< "$prev
│ │ │ +001e8d60: 696f 7573 5f6d 6f75 6e74 5f6f 7074 7322  ious_mount_opts"
│ │ │ +001e8d70: 290a 2020 2020 2020 2020 6669 0a20 2020  ).        fi.   
│ │ │ +001e8d80: 2020 2020 2065 6368 6f20 2220 2f76 6172       echo " /var
│ │ │ +001e8d90: 2f74 6d70 2020 6465 6661 756c 7473 2c24  /tmp  defaults,$
│ │ │ +001e8da0: 7b70 7265 7669 6f75 735f 6d6f 756e 745f  {previous_mount_
│ │ │ +001e8db0: 6f70 7473 7d6e 6f73 7569 6420 3020 3022  opts}nosuid 0 0"
│ │ │ +001e8dc0: 2026 6774 3b26 6774 3b20 2f65 7463 2f66   >> /etc/f
│ │ │ +001e8dd0: 7374 6162 0a20 2020 2023 2049 6620 7468  stab.    # If th
│ │ │ +001e8de0: 6520 6d6f 756e 745f 6f70 7420 6f70 7469  e mount_opt opti
│ │ │ +001e8df0: 6f6e 2069 7320 6e6f 7420 616c 7265 6164  on is not alread
│ │ │ +001e8e00: 7920 696e 2074 6865 206d 6f75 6e74 2070  y in the mount p
│ │ │ +001e8e10: 6f69 6e74 2773 202f 6574 632f 6673 7461  oint's /etc/fsta
│ │ │ +001e8e20: 6220 656e 7472 792c 2061 6464 2069 740a  b entry, add it.
│ │ │ +001e8e30: 2020 2020 656c 6966 2021 2067 7265 7020      elif ! grep 
│ │ │ +001e8e40: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ +001e8e50: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ +001e8e60: 2f66 7374 6162 207c 2067 7265 7020 2d71  /fstab | grep -q
│ │ │ +001e8e70: 2022 6e6f 7375 6964 223b 2074 6865 6e0a   "nosuid"; then.
│ │ │ +001e8e80: 2020 2020 2020 2020 7072 6576 696f 7573          previous
│ │ │ +001e8e90: 5f6d 6f75 6e74 5f6f 7074 733d 2428 6772  _mount_opts=$(gr
│ │ │ +001e8ea0: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ +001e8eb0: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ +001e8ec0: 6574 632f 6673 7461 6220 7c20 6177 6b20  etc/fstab | awk 
│ │ │ +001e8ed0: 277b 7072 696e 7420 2434 7d27 290a 2020  '{print $4}').  
│ │ │ +001e8ee0: 2020 2020 2020 7365 6420 2d69 2022 737c        sed -i "s|
│ │ │ +001e8ef0: 5c28 247b 6d6f 756e 745f 706f 696e 745f  \(${mount_point_
│ │ │ +001e8f00: 6d61 7463 685f 7265 6765 7870 7d2e 2a24  match_regexp}.*$
│ │ │ +001e8f10: 7b70 7265 7669 6f75 735f 6d6f 756e 745f  {previous_mount_
│ │ │ +001e8f20: 6f70 7473 7d5c 297c 5c31 2c6e 6f73 7569  opts}\)|\1,nosui
│ │ │ +001e8f30: 647c 2220 2f65 7463 2f66 7374 6162 0a20  d|" /etc/fstab. 
│ │ │ +001e8f40: 2020 2066 690a 0a0a 2020 2020 6966 206d     fi...    if m
│ │ │ +001e8f50: 6b64 6972 202d 7020 222f 7661 722f 746d  kdir -p "/var/tm
│ │ │ +001e8f60: 7022 3b20 7468 656e 0a20 2020 2020 2020  p"; then.       
│ │ │ +001e8f70: 2069 6620 6d6f 756e 7470 6f69 6e74 202d   if mountpoint -
│ │ │ +001e8f80: 7120 222f 7661 722f 746d 7022 3b20 7468  q "/var/tmp"; th
│ │ │ +001e8f90: 656e 0a20 2020 2020 2020 2020 2020 206d  en.            m
│ │ │ +001e8fa0: 6f75 6e74 202d 6f20 7265 6d6f 756e 7420  ount -o remount 
│ │ │ +001e8fb0: 2d2d 7461 7267 6574 2022 2f76 6172 2f74  --target "/var/t
│ │ │ +001e8fc0: 6d70 220a 2020 2020 2020 2020 6669 0a20  mp".        fi. 
│ │ │ +001e8fd0: 2020 2066 690a 7d0a 0a70 6572 666f 726d     fi.}..perform
│ │ │ +001e8fe0: 5f72 656d 6564 6961 7469 6f6e 0a0a 656c  _remediation..el
│ │ │ +001e8ff0: 7365 0a20 2020 2026 6774 3b26 616d 703b  se.    >&
│ │ │ +001e9000: 3220 6563 686f 2027 5265 6d65 6469 6174  2 echo 'Remediat
│ │ │ +001e9010: 696f 6e20 6973 206e 6f74 2061 7070 6c69  ion is not appli
│ │ │ +001e9020: 6361 626c 652c 206e 6f74 6869 6e67 2077  cable, nothing w
│ │ │ +001e9030: 6173 2064 6f6e 6527 0a66 690a 3c2f 636f  as done'.fi.
< │ │ │ +001e9050: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +001e9060: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +001e9070: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +001e9080: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +001e9090: 6435 3631 2220 7461 6269 6e64 6578 3d22 d561" tabindex=" │ │ │ +001e90a0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +001e90b0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +001e90c0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +001e90d0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +001e90e0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +001e90f0: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ +001e9100: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +001e9110: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
Reboo │ │ │ +001e8540: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +001e8550: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
low< │ │ │ +001e91b0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr> │ │ │ +001e9200: 3c74 723e 3c74 683e 5374 7261 7465 6779
.pa
│ │ │ +001e9240: 7274 202f 7661 722f 746d 7020 2d2d 6d6f  rt /var/tmp --mo
│ │ │ +001e9250: 756e 746f 7074 696f 6e73 3d22 6e6f 7375  untoptions="nosu
│ │ │ +001e9260: 6964 220a 3c2f 636f 6465 3e3c 2f70 7265  id".
< │ │ │ 001e9290: 2f74 6162 6c65 3e3c 2f74 643e 3c2f 7472 /table>Re │ │ │ -001f4d60: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ -001f4d70: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ -001f4d80: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -001f4d90: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -001f4da0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -001f4db0: 7365 2220 6964 3d22 6964 3537 3522 3e3c se" id="id575">< │ │ │ -001f4dc0: 7072 653e 3c63 6f64 653e 0a5b 5b70 6163 pre>.[[pac │ │ │ -001f4dd0: 6b61 6765 735d 5d0a 6e61 6d65 203d 2022 kages]].name = " │ │ │ -001f4de0: 6c69 6273 656c 696e 7578 220a 7665 7273 libselinux".vers │ │ │ -001f4df0: 696f 6e20 3d20 222a 220a 3c2f 636f 6465 ion = "*".Remedi │ │ │ -001f4eb0: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ -001f4ec0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Co │ │ │ +001e9190: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +001e91c0: 6e3a 3c2f 7468 3e3c 7464 3e68 6967 683c n:high< │ │ │ +001e91d0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +001e9210: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +001e9220: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Comp │ │ │ -001f4f50: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -001f4f60: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -001f4f80: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -001f4fa0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -001f4fb0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -001f4ff0: 7072 653e 3c63 6f64 653e 0a70 6163 6b61 pre>.packa │ │ │ -001f5000: 6765 202d 2d61 6464 3d6c 6962 7365 6c69 ge --add=libseli │ │ │ -001f5010: 6e75 780a 3c2f 636f 6465 3e3c 2f70 7265 nux.
Remediation │ │ │ -001f50d0: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ -001f50e0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -001f5160: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -001f5180: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -001f51d0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ -001f5200: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
include instal
│ │ │ -001f5220: 6c5f 6c69 6273 656c 696e 7578 0a0a 636c  l_libselinux..cl
│ │ │ -001f5230: 6173 7320 696e 7374 616c 6c5f 6c69 6273  ass install_libs
│ │ │ -001f5240: 656c 696e 7578 207b 0a20 2070 6163 6b61  elinux {.  packa
│ │ │ -001f5250: 6765 207b 2027 6c69 6273 656c 696e 7578  ge { 'libselinux
│ │ │ -001f5260: 273a 0a20 2020 2065 6e73 7572 6520 3d26  ':.    ensure =&
│ │ │ -001f5270: 6774 3b20 2769 6e73 7461 6c6c 6564 272c  gt; 'installed',
│ │ │ -001f5280: 0a20 207d 0a7d 0a3c 2f63 6f64 653e 3c2f  .  }.}.Remediati
│ │ │ -001f5340: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070  on Ansible snipp
│ │ │ -001f5350: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...
│ │ │ -001f53d0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ -001f5460: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
Complexity:< │ │ │ -001f5170: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -001f5190: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -001f51e0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ -001f51f0: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
Complexi │ │ │ -001f53e0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -001f53f0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ -001f5430: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -001f5440: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
│ │ │ -001f5480: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -001f5490: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -001f54a0: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -001f54b0: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -001f54c0: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -001f54d0: 3a0a 2020 2d20 5043 492d 4453 5376 342d  :.  - PCI-DSSv4-
│ │ │ -001f54e0: 312e 320a 2020 2d20 5043 492d 4453 5376  1.2.  - PCI-DSSv
│ │ │ -001f54f0: 342d 312e 322e 360a 2020 2d20 656e 6162  4-1.2.6.  - enab
│ │ │ -001f5500: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ -001f5510: 6869 6768 5f73 6576 6572 6974 790a 2020  high_severity.  
│ │ │ -001f5520: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001f5530: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -001f5540: 696f 6e0a 2020 2d20 6e6f 5f72 6562 6f6f  ion.  - no_reboo
│ │ │ -001f5550: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ -001f5560: 6b61 6765 5f6c 6962 7365 6c69 6e75 785f  kage_libselinux_
│ │ │ -001f5570: 696e 7374 616c 6c65 640a 0a2d 206e 616d  installed..- nam
│ │ │ -001f5580: 653a 2045 6e73 7572 6520 6c69 6273 656c  e: Ensure libsel
│ │ │ -001f5590: 696e 7578 2069 7320 696e 7374 616c 6c65  inux is installe
│ │ │ -001f55a0: 640a 2020 616e 7369 626c 652e 6275 696c  d.  ansible.buil
│ │ │ -001f55b0: 7469 6e2e 7061 636b 6167 653a 0a20 2020  tin.package:.   
│ │ │ -001f55c0: 206e 616d 653a 206c 6962 7365 6c69 6e75   name: libselinu
│ │ │ -001f55d0: 780a 2020 2020 7374 6174 653a 2070 7265  x.    state: pre
│ │ │ -001f55e0: 7365 6e74 0a20 2077 6865 6e3a 2027 226b  sent.  when: '"k
│ │ │ -001f55f0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -001f5600: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001f5610: 270a 2020 7461 6773 3a0a 2020 2d20 5043  '.  tags:.  - PC
│ │ │ -001f5620: 492d 4453 5376 342d 312e 320a 2020 2d20  I-DSSv4-1.2.  - 
│ │ │ -001f5630: 5043 492d 4453 5376 342d 312e 322e 360a  PCI-DSSv4-1.2.6.
│ │ │ -001f5640: 2020 2d20 656e 6162 6c65 5f73 7472 6174    - enable_strat
│ │ │ -001f5650: 6567 790a 2020 2d20 6869 6768 5f73 6576  egy.  - high_sev
│ │ │ -001f5660: 6572 6974 790a 2020 2d20 6c6f 775f 636f  erity.  - low_co
│ │ │ -001f5670: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ -001f5680: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001f5690: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001f56a0: 0a20 202d 2070 6163 6b61 6765 5f6c 6962  .  - package_lib
│ │ │ -001f56b0: 7365 6c69 6e75 785f 696e 7374 616c 6c65  selinux_installe
│ │ │ -001f56c0: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ -001f56d0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Sh │ │ │ -001f5780: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
│ │ │ -001f5820: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
# 
│ │ │ -001f58c0: 5265 6d65 6469 6174 696f 6e20 6973 2061  Remediation is a
│ │ │ -001f58d0: 7070 6c69 6361 626c 6520 6f6e 6c79 2069  pplicable only i
│ │ │ -001f58e0: 6e20 6365 7274 6169 6e20 706c 6174 666f  n certain platfo
│ │ │ -001f58f0: 726d 730a 6966 2072 706d 202d 2d71 7569  rms.if rpm --qui
│ │ │ -001f5900: 6574 202d 7120 6b65 726e 656c 3b20 7468  et -q kernel; th
│ │ │ -001f5910: 656e 0a0a 6966 2021 2072 706d 202d 7120  en..if ! rpm -q 
│ │ │ -001f5920: 2d2d 7175 6965 7420 226c 6962 7365 6c69  --quiet "libseli
│ │ │ -001f5930: 6e75 7822 203b 2074 6865 6e0a 2020 2020  nux" ; then.    
│ │ │ -001f5940: 646e 6620 696e 7374 616c 6c20 2d79 2022  dnf install -y "
│ │ │ -001f5950: 6c69 6273 656c 696e 7578 220a 6669 0a0a  libselinux".fi..
│ │ │ -001f5960: 656c 7365 0a20 2020 2026 6774 3b26 616d  else.    >&am
│ │ │ -001f5970: 703b 3220 6563 686f 2027 5265 6d65 6469  p;2 echo 'Remedi
│ │ │ -001f5980: 6174 696f 6e20 6973 206e 6f74 2061 7070  ation is not app
│ │ │ -001f5990: 6c69 6361 626c 652c 206e 6f74 6869 6e67  licable, nothing
│ │ │ -001f59a0: 2077 6173 2064 6f6e 6527 0a66 690a 3c2f   was done'.fi.
│ │ │ -001f5810: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -001f5840: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -001f5850: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -001f5890: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -001f58a0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ +001f4e10: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +001f4e20: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +001f4e70: 3c74 723e 3c74 683e 5374 7261 7465 6779
- n
│ │ │ +001f4eb0: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ +001f4ec0: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ +001f4ed0: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ +001f4ee0: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ +001f4ef0: 0a20 2074 6167 733a 0a20 202d 2050 4349  .  tags:.  - PCI
│ │ │ +001f4f00: 2d44 5353 7634 2d31 2e32 0a20 202d 2050  -DSSv4-1.2.  - P
│ │ │ +001f4f10: 4349 2d44 5353 7634 2d31 2e32 2e36 0a20  CI-DSSv4-1.2.6. 
│ │ │ +001f4f20: 202d 2065 6e61 626c 655f 7374 7261 7465   - enable_strate
│ │ │ +001f4f30: 6779 0a20 202d 2068 6967 685f 7365 7665  gy.  - high_seve
│ │ │ +001f4f40: 7269 7479 0a20 202d 206c 6f77 5f63 6f6d  rity.  - low_com
│ │ │ +001f4f50: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +001f4f60: 6469 7372 7570 7469 6f6e 0a20 202d 206e  disruption.  - n
│ │ │ +001f4f70: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +001f4f80: 2020 2d20 7061 636b 6167 655f 6c69 6273    - package_libs
│ │ │ +001f4f90: 656c 696e 7578 5f69 6e73 7461 6c6c 6564  elinux_installed
│ │ │ +001f4fa0: 0a0a 2d20 6e61 6d65 3a20 456e 7375 7265  ..- name: Ensure
│ │ │ +001f4fb0: 206c 6962 7365 6c69 6e75 7820 6973 2069   libselinux is i
│ │ │ +001f4fc0: 6e73 7461 6c6c 6564 0a20 2061 6e73 6962  nstalled.  ansib
│ │ │ +001f4fd0: 6c65 2e62 7569 6c74 696e 2e70 6163 6b61  le.builtin.packa
│ │ │ +001f4fe0: 6765 3a0a 2020 2020 6e61 6d65 3a20 6c69  ge:.    name: li
│ │ │ +001f4ff0: 6273 656c 696e 7578 0a20 2020 2073 7461  bselinux.    sta
│ │ │ +001f5000: 7465 3a20 7072 6573 656e 740a 2020 7768  te: present.  wh
│ │ │ +001f5010: 656e 3a20 2722 6b65 726e 656c 2220 696e  en: '"kernel" in
│ │ │ +001f5020: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001f5030: 6163 6b61 6765 7327 0a20 2074 6167 733a  ackages'.  tags:
│ │ │ +001f5040: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ +001f5050: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ +001f5060: 2d31 2e32 2e36 0a20 202d 2065 6e61 626c  -1.2.6.  - enabl
│ │ │ +001f5070: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ +001f5080: 6967 685f 7365 7665 7269 7479 0a20 202d  igh_severity.  -
│ │ │ +001f5090: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +001f50a0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +001f50b0: 6f6e 0a20 202d 206e 6f5f 7265 626f 6f74  on.  - no_reboot
│ │ │ +001f50c0: 5f6e 6565 6465 640a 2020 2d20 7061 636b  _needed.  - pack
│ │ │ +001f50d0: 6167 655f 6c69 6273 656c 696e 7578 5f69  age_libselinux_i
│ │ │ +001f50e0: 6e73 7461 6c6c 6564 0a3c 2f63 6f64 653e  nstalled.
│ │ │ +001f50f0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +001f51a0: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ +001f51b0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +001f51c0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001f51d0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001f51e0: 7365 2220 6964 3d22 6964 3537 3622 3e3c se" id="id576">< │ │ │ +001f51f0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001f5200: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001f5210: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001f5220: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +001f5230: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:Strategy: │ │ │ +001f52c0: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c < │ │ │ +001f52d0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
C │ │ │ +001f4e00: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +001f4e30: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +001f4e40: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +001f4e80: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +001f4e90: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complex │ │ │ +001f5240: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +001f5250: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ +001f5290: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +001f52a0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
enable
include i
│ │ │ +001f52f0: 6e73 7461 6c6c 5f6c 6962 7365 6c69 6e75  nstall_libselinu
│ │ │ +001f5300: 780a 0a63 6c61 7373 2069 6e73 7461 6c6c  x..class install
│ │ │ +001f5310: 5f6c 6962 7365 6c69 6e75 7820 7b0a 2020  _libselinux {.  
│ │ │ +001f5320: 7061 636b 6167 6520 7b20 276c 6962 7365  package { 'libse
│ │ │ +001f5330: 6c69 6e75 7827 3a0a 2020 2020 656e 7375  linux':.    ensu
│ │ │ +001f5340: 7265 203d 2667 743b 2027 696e 7374 616c  re => 'instal
│ │ │ +001f5350: 6c65 6427 2c0a 2020 7d0a 7d0a 3c2f 636f  led',.  }.}.
< │ │ │ +001f5370: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +001f5380: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +001f5390: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +001f53a0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +001f53b0: 6435 3737 2220 7461 6269 6e64 6578 3d22 d577" tabindex=" │ │ │ +001f53c0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +001f53d0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +001f53e0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +001f53f0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +001f5400: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +001f5410: 6469 6174 696f 6e20 4f53 4275 696c 6420 diation OSBuild │ │ │ +001f5420: 426c 7565 7072 696e 7420 736e 6970 7065 Blueprint snippe │ │ │ +001f5430: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
.[[packa │ │ │ +001f5480: 6765 735d 5d0a 6e61 6d65 203d 2022 6c69 ges]].name = "li │ │ │ +001f5490: 6273 656c 696e 7578 220a 7665 7273 696f bselinux".versio │ │ │ +001f54a0: 6e20 3d20 222a 220a 3c2f 636f 6465 3e3c n = "*".< │ │ │ +001f54b0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>
Remediat │ │ │ +001f5560: 696f 6e20 5368 656c 6c20 7363 7269 7074 ion Shell script │ │ │ +001f5570: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ +001f5600: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +001f5620: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +001f5630: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +001f5640: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +001f5650: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +001f5670: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
# Remediatio
│ │ │ +001f56b0: 6e20 6973 2061 7070 6c69 6361 626c 6520  n is applicable 
│ │ │ +001f56c0: 6f6e 6c79 2069 6e20 6365 7274 6169 6e20  only in certain 
│ │ │ +001f56d0: 706c 6174 666f 726d 730a 6966 2072 706d  platforms.if rpm
│ │ │ +001f56e0: 202d 2d71 7569 6574 202d 7120 6b65 726e   --quiet -q kern
│ │ │ +001f56f0: 656c 3b20 7468 656e 0a0a 6966 2021 2072  el; then..if ! r
│ │ │ +001f5700: 706d 202d 7120 2d2d 7175 6965 7420 226c  pm -q --quiet "l
│ │ │ +001f5710: 6962 7365 6c69 6e75 7822 203b 2074 6865  ibselinux" ; the
│ │ │ +001f5720: 6e0a 2020 2020 646e 6620 696e 7374 616c  n.    dnf instal
│ │ │ +001f5730: 6c20 2d79 2022 6c69 6273 656c 696e 7578  l -y "libselinux
│ │ │ +001f5740: 220a 6669 0a0a 656c 7365 0a20 2020 2026  ".fi..else.    &
│ │ │ +001f5750: 6774 3b26 616d 703b 3220 6563 686f 2027  gt;&2 echo '
│ │ │ +001f5760: 5265 6d65 6469 6174 696f 6e20 6973 206e  Remediation is n
│ │ │ +001f5770: 6f74 2061 7070 6c69 6361 626c 652c 206e  ot applicable, n
│ │ │ +001f5780: 6f74 6869 6e67 2077 6173 2064 6f6e 6527  othing was done'
│ │ │ +001f5790: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.
Remediation │ │ │ +001f5850: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ +001f5860: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ +001f58f0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +001f5910: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +001f5920: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +001f5930: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +001f5940: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +001f5960: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
.package --a
│ │ │ +001f59a0: 6464 3d6c 6962 7365 6c69 6e75 780a 3c2f  dd=libselinux.
Remediation Ana │ │ │ -001f6270: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ -001f6280: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -001f6300: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -001f6320: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -001f6370: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -001f63a0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
..package --re
│ │ │ -001f63c0: 6d6f 7665 3d6d 6373 7472 616e 730a 3c2f  move=mcstrans.
Re │ │ │ -001f6480: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ -001f6490: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -001f64a0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low
Disr │ │ │ -001f6330: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -001f6340: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -001f6380: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -001f6390: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
low< │ │ │ -001f6540: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -001f6590: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.in
│ │ │ -001f65d0: 636c 7564 6520 7265 6d6f 7665 5f6d 6373  clude remove_mcs
│ │ │ -001f65e0: 7472 616e 730a 0a63 6c61 7373 2072 656d  trans..class rem
│ │ │ -001f65f0: 6f76 655f 6d63 7374 7261 6e73 207b 0a20  ove_mcstrans {. 
│ │ │ -001f6600: 2070 6163 6b61 6765 207b 2027 6d63 7374   package { 'mcst
│ │ │ -001f6610: 7261 6e73 273a 0a20 2020 2065 6e73 7572  rans':.    ensur
│ │ │ -001f6620: 6520 3d26 6774 3b20 2770 7572 6765 6427  e => 'purged'
│ │ │ -001f6630: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ -001f6640: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ -001f66f0: 696f 6e20 416e 7369 626c 6520 736e 6970  ion Ansible snip
│ │ │ -001f6700: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c  pet ...
< │ │ │ -001f6710: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -001f6720: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -001f6730: 7365 2220 6964 3d22 6964 3538 3322 3e3c se" id="id583">< │ │ │ -001f6740: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -001f6750: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -001f6760: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -001f6770: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -001f6780: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:Strategy: │ │ │ -001f6810: 3c74 643e 6469 7361 626c 653c 2f74 643e │ │ │ -001f6820: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Co │ │ │ -001f6520: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -001f6550: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -001f6570: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -001f6580: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -001f65a0: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -001f65b0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complex │ │ │ -001f6790: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -001f67a0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ -001f67e0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -001f67f0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
disable
- name: │ │ │ -001f6840: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ -001f6850: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ -001f6860: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ -001f6870: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ -001f6880: 6773 3a0a 2020 2d20 6469 7361 626c 655f gs:. - disable_ │ │ │ -001f6890: 7374 7261 7465 6779 0a20 202d 206c 6f77 strategy. - low │ │ │ -001f68a0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ -001f68b0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20 low_disruption. │ │ │ -001f68c0: 202d 206c 6f77 5f73 6576 6572 6974 790a - low_severity. │ │ │ -001f68d0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ -001f68e0: 6564 6564 0a20 202d 2070 6163 6b61 6765 eded. - package │ │ │ -001f68f0: 5f6d 6373 7472 616e 735f 7265 6d6f 7665 _mcstrans_remove │ │ │ -001f6900: 640a 0a2d 206e 616d 653a 2027 556e 696e d..- name: 'Unin │ │ │ -001f6910: 7374 616c 6c20 6d63 7374 7261 6e73 2050 stall mcstrans P │ │ │ -001f6920: 6163 6b61 6765 3a20 456e 7375 7265 206d ackage: Ensure m │ │ │ -001f6930: 6373 7472 616e 7320 6973 2072 656d 6f76 cstrans is remov │ │ │ -001f6940: 6564 270a 2020 616e 7369 626c 652e 6275 ed'. ansible.bu │ │ │ -001f6950: 696c 7469 6e2e 7061 636b 6167 653a 0a20 iltin.package:. │ │ │ -001f6960: 2020 206e 616d 653a 206d 6373 7472 616e name: mcstran │ │ │ -001f6970: 730a 2020 2020 7374 6174 653a 2061 6273 s. state: abs │ │ │ -001f6980: 656e 740a 2020 7768 656e 3a20 2722 6b65 ent. when: '"ke │ │ │ -001f6990: 726e 656c 2220 696e 2061 6e73 6962 6c65 rnel" in ansible │ │ │ -001f69a0: 5f66 6163 7473 2e70 6163 6b61 6765 7327 _facts.packages' │ │ │ -001f69b0: 0a20 2074 6167 733a 0a20 202d 2064 6973 . tags:. - dis │ │ │ -001f69c0: 6162 6c65 5f73 7472 6174 6567 790a 2020 able_strategy. │ │ │ -001f69d0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479 - low_complexity │ │ │ -001f69e0: 0a20 202d 206c 6f77 5f64 6973 7275 7074 . - low_disrupt │ │ │ -001f69f0: 696f 6e0a 2020 2d20 6c6f 775f 7365 7665 ion. - low_seve │ │ │ -001f6a00: 7269 7479 0a20 202d 206e 6f5f 7265 626f rity. - no_rebo │ │ │ -001f6a10: 6f74 5f6e 6565 6465 640a 2020 2d20 7061 ot_needed. - pa │ │ │ -001f6a20: 636b 6167 655f 6d63 7374 7261 6e73 5f72 ckage_mcstrans_r │ │ │ -001f6a30: 656d 6f76 6564 0a3c 2f63 6f64 653e 3c2f emoved.
Remediati │ │ │ -001f6af0: 6f6e 2053 6865 6c6c 2073 6372 6970 7420 on Shell script │ │ │ -001f6b00: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -001f6b90: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -001f6bb0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -001f6bd0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -001f6c00: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -001f6c10: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
# Remediatio
│ │ │ -001f6c40: 6e20 6973 2061 7070 6c69 6361 626c 6520  n is applicable 
│ │ │ -001f6c50: 6f6e 6c79 2069 6e20 6365 7274 6169 6e20  only in certain 
│ │ │ -001f6c60: 706c 6174 666f 726d 730a 6966 2072 706d  platforms.if rpm
│ │ │ -001f6c70: 202d 2d71 7569 6574 202d 7120 6b65 726e   --quiet -q kern
│ │ │ -001f6c80: 656c 3b20 7468 656e 0a0a 2320 4341 5554  el; then..# CAUT
│ │ │ -001f6c90: 494f 4e3a 2054 6869 7320 7265 6d65 6469  ION: This remedi
│ │ │ -001f6ca0: 6174 696f 6e20 7363 7269 7074 2077 696c  ation script wil
│ │ │ -001f6cb0: 6c20 7265 6d6f 7665 206d 6373 7472 616e  l remove mcstran
│ │ │ -001f6cc0: 730a 2320 6672 6f6d 2074 6865 2073 7973  s.# from the sys
│ │ │ -001f6cd0: 7465 6d2c 2061 6e64 206d 6179 2072 656d  tem, and may rem
│ │ │ -001f6ce0: 6f76 6520 616e 7920 7061 636b 6167 6573  ove any packages
│ │ │ -001f6cf0: 0a23 2074 6861 7420 6465 7065 6e64 206f  .# that depend o
│ │ │ -001f6d00: 6e20 6d63 7374 7261 6e73 2e20 4578 6563  n mcstrans. Exec
│ │ │ -001f6d10: 7574 6520 7468 6973 0a23 2072 656d 6564  ute this.# remed
│ │ │ -001f6d20: 6961 7469 6f6e 2041 4654 4552 2074 6573  iation AFTER tes
│ │ │ -001f6d30: 7469 6e67 206f 6e20 6120 6e6f 6e2d 7072  ting on a non-pr
│ │ │ -001f6d40: 6f64 7563 7469 6f6e 0a23 2073 7973 7465  oduction.# syste
│ │ │ -001f6d50: 6d21 0a0a 0a69 6620 7270 6d20 2d71 202d  m!...if rpm -q -
│ │ │ -001f6d60: 2d71 7569 6574 2022 6d63 7374 7261 6e73  -quiet "mcstrans
│ │ │ -001f6d70: 2220 3b20 7468 656e 0a64 6e66 2072 656d  " ; then.dnf rem
│ │ │ -001f6d80: 6f76 6520 2d79 202d 2d6e 6f61 7574 6f72  ove -y --noautor
│ │ │ -001f6d90: 656d 6f76 6520 226d 6373 7472 616e 7322  emove "mcstrans"
│ │ │ -001f6da0: 0a66 690a 0a65 6c73 650a 2020 2020 2667  .fi..else.    &g
│ │ │ -001f6db0: 743b 2661 6d70 3b32 2065 6368 6f20 2752  t;&2 echo 'R
│ │ │ -001f6dc0: 656d 6564 6961 7469 6f6e 2069 7320 6e6f  emediation is no
│ │ │ -001f6dd0: 7420 6170 706c 6963 6162 6c65 2c20 6e6f  t applicable, no
│ │ │ -001f6de0: 7468 696e 6720 7761 7320 646f 6e65 270a  thing was done'.
│ │ │ -001f6df0: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e  fi.
│ │ │ +001f6260: 3e52 656d 6564 6961 7469 6f6e 2041 6e73 >Remediation Ans │ │ │ +001f6270: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ +001f6280: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ +001f6350: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +001f6360: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
- name: Gather 
│ │ │ +001f63c0: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ +001f63d0: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ +001f63e0: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ +001f63f0: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ +001f6400: 2064 6973 6162 6c65 5f73 7472 6174 6567   disable_strateg
│ │ │ +001f6410: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ +001f6420: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ +001f6430: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ +001f6440: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ +001f6450: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ +001f6460: 2d20 7061 636b 6167 655f 6d63 7374 7261  - package_mcstra
│ │ │ +001f6470: 6e73 5f72 656d 6f76 6564 0a0a 2d20 6e61  ns_removed..- na
│ │ │ +001f6480: 6d65 3a20 2755 6e69 6e73 7461 6c6c 206d  me: 'Uninstall m
│ │ │ +001f6490: 6373 7472 616e 7320 5061 636b 6167 653a  cstrans Package:
│ │ │ +001f64a0: 2045 6e73 7572 6520 6d63 7374 7261 6e73   Ensure mcstrans
│ │ │ +001f64b0: 2069 7320 7265 6d6f 7665 6427 0a20 2061   is removed'.  a
│ │ │ +001f64c0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ +001f64d0: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ +001f64e0: 3a20 6d63 7374 7261 6e73 0a20 2020 2073  : mcstrans.    s
│ │ │ +001f64f0: 7461 7465 3a20 6162 7365 6e74 0a20 2077  tate: absent.  w
│ │ │ +001f6500: 6865 6e3a 2027 226b 6572 6e65 6c22 2069  hen: '"kernel" i
│ │ │ +001f6510: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001f6520: 7061 636b 6167 6573 270a 2020 7461 6773  packages'.  tags
│ │ │ +001f6530: 3a0a 2020 2d20 6469 7361 626c 655f 7374  :.  - disable_st
│ │ │ +001f6540: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ +001f6550: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ +001f6560: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +001f6570: 206c 6f77 5f73 6576 6572 6974 790a 2020   low_severity.  
│ │ │ +001f6580: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001f6590: 6564 0a20 202d 2070 6163 6b61 6765 5f6d  ed.  - package_m
│ │ │ +001f65a0: 6373 7472 616e 735f 7265 6d6f 7665 640a  cstrans_removed.
│ │ │ +001f65b0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +001f6660: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +001f6670: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
low
Disru │ │ │ +001f6330: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +001f6340: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +001f6380: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +001f6390: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ +001f6710: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ +001f67b0: 696e 636c 7564 6520 7265 6d6f 7665 5f6d  include remove_m
│ │ │ +001f67c0: 6373 7472 616e 730a 0a63 6c61 7373 2072  cstrans..class r
│ │ │ +001f67d0: 656d 6f76 655f 6d63 7374 7261 6e73 207b  emove_mcstrans {
│ │ │ +001f67e0: 0a20 2070 6163 6b61 6765 207b 2027 6d63  .  package { 'mc
│ │ │ +001f67f0: 7374 7261 6e73 273a 0a20 2020 2065 6e73  strans':.    ens
│ │ │ +001f6800: 7572 6520 3d26 6774 3b20 2770 7572 6765  ure => 'purge
│ │ │ +001f6810: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  d',.  }.}.
Remedi │ │ │ +001f68d0: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ +001f68e0: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
│ │ │ +001f6960: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 < │ │ │ +001f69f0: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +001f6a00: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
│ │ │ +001f6700: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +001f6730: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +001f6740: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +001f6780: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +001f6790: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexi │ │ │ +001f6970: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +001f6980: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +001f69c0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +001f69d0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
# Remedia
│ │ │ +001f6a20: 7469 6f6e 2069 7320 6170 706c 6963 6162  tion is applicab
│ │ │ +001f6a30: 6c65 206f 6e6c 7920 696e 2063 6572 7461  le only in certa
│ │ │ +001f6a40: 696e 2070 6c61 7466 6f72 6d73 0a69 6620  in platforms.if 
│ │ │ +001f6a50: 7270 6d20 2d2d 7175 6965 7420 2d71 206b  rpm --quiet -q k
│ │ │ +001f6a60: 6572 6e65 6c3b 2074 6865 6e0a 0a23 2043  ernel; then..# C
│ │ │ +001f6a70: 4155 5449 4f4e 3a20 5468 6973 2072 656d  AUTION: This rem
│ │ │ +001f6a80: 6564 6961 7469 6f6e 2073 6372 6970 7420  ediation script 
│ │ │ +001f6a90: 7769 6c6c 2072 656d 6f76 6520 6d63 7374  will remove mcst
│ │ │ +001f6aa0: 7261 6e73 0a23 2066 726f 6d20 7468 6520  rans.# from the 
│ │ │ +001f6ab0: 7379 7374 656d 2c20 616e 6420 6d61 7920  system, and may 
│ │ │ +001f6ac0: 7265 6d6f 7665 2061 6e79 2070 6163 6b61  remove any packa
│ │ │ +001f6ad0: 6765 730a 2320 7468 6174 2064 6570 656e  ges.# that depen
│ │ │ +001f6ae0: 6420 6f6e 206d 6373 7472 616e 732e 2045  d on mcstrans. E
│ │ │ +001f6af0: 7865 6375 7465 2074 6869 730a 2320 7265  xecute this.# re
│ │ │ +001f6b00: 6d65 6469 6174 696f 6e20 4146 5445 5220  mediation AFTER 
│ │ │ +001f6b10: 7465 7374 696e 6720 6f6e 2061 206e 6f6e  testing on a non
│ │ │ +001f6b20: 2d70 726f 6475 6374 696f 6e0a 2320 7379  -production.# sy
│ │ │ +001f6b30: 7374 656d 210a 0a0a 6966 2072 706d 202d  stem!...if rpm -
│ │ │ +001f6b40: 7120 2d2d 7175 6965 7420 226d 6373 7472  q --quiet "mcstr
│ │ │ +001f6b50: 616e 7322 203b 2074 6865 6e0a 646e 6620  ans" ; then.dnf 
│ │ │ +001f6b60: 7265 6d6f 7665 202d 7920 2d2d 6e6f 6175  remove -y --noau
│ │ │ +001f6b70: 746f 7265 6d6f 7665 2022 6d63 7374 7261  toremove "mcstra
│ │ │ +001f6b80: 6e73 220a 6669 0a0a 656c 7365 0a20 2020  ns".fi..else.   
│ │ │ +001f6b90: 2026 6774 3b26 616d 703b 3220 6563 686f   >&2 echo
│ │ │ +001f6ba0: 2027 5265 6d65 6469 6174 696f 6e20 6973   'Remediation is
│ │ │ +001f6bb0: 206e 6f74 2061 7070 6c69 6361 626c 652c   not applicable,
│ │ │ +001f6bc0: 206e 6f74 6869 6e67 2077 6173 2064 6f6e   nothing was don
│ │ │ +001f6bd0: 6527 0a66 690a 3c2f 636f 6465 3e3c 2f70  e'.fi.

Remediatio │ │ │ +001f6c90: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ +001f6ca0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +001f6d20: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +001f6d30: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +001f6d40: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +001f6d80: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +001f6d90: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +001f6db0: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +001f6dc0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
..package
│ │ │ +001f6de0: 202d 2d72 656d 6f76 653d 6d63 7374 7261   --remove=mcstra
│ │ │ +001f6df0: 6e73 0a3c 2f63 6f64 653e 3c2f 7072 653e  ns.
│ │ │ 001f6e00: 3c2f 6469 763e 3c2f 6469 763e 3c2f 7464
│ │ │ 001f6e30: 3c74 7220 6461 7461 2d74 742d 6964 3d22 Remediat │ │ │ -001f7750: 696f 6e20 416e 6163 6f6e 6461 2073 6e69 ion Anaconda sni │ │ │ -001f7760: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -001f7770: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -001f77a0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -001f7810: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -001f7830: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -001f7860: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -001f77f0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -001f7800: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -001f7840: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -001f7850: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

..packa │ │ │ -001f78a0: 6765 202d 2d72 656d 6f76 653d 7365 7472 ge --remove=setr │ │ │ -001f78b0: 6f75 626c 6573 686f 6f74 0a3c 2f63 6f64 oubleshoot.

Remed │ │ │ -001f7970: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ -001f7980: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -001f7a30: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -001f7a50: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -001f7a80: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -001f7a10: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -001f7a20: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -001f7a40: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -001f7a60: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -001f7a70: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -001f7ab0: 7072 653e 3c63 6f64 653e 0a69 6e63 6c75 pre>.inclu │ │ │ -001f7ac0: 6465 2072 656d 6f76 655f 7365 7472 6f75 de remove_setrou │ │ │ -001f7ad0: 626c 6573 686f 6f74 0a0a 636c 6173 7320 bleshoot..class │ │ │ -001f7ae0: 7265 6d6f 7665 5f73 6574 726f 7562 6c65 remove_setrouble │ │ │ -001f7af0: 7368 6f6f 7420 7b0a 2020 7061 636b 6167 shoot {. packag │ │ │ -001f7b00: 6520 7b20 2773 6574 726f 7562 6c65 7368 e { 'setroublesh │ │ │ -001f7b10: 6f6f 7427 3a0a 2020 2020 656e 7375 7265 oot':. ensure │ │ │ -001f7b20: 203d 2667 743b 2027 7075 7267 6564 272c => 'purged', │ │ │ -001f7b30: 0a20 207d 0a7d 0a3c 2f63 6f64 653e 3c2f . }.}.
Remediati │ │ │ -001f7bf0: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070 on Ansible snipp │ │ │ -001f7c00: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -001f7c80: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -001f7c90: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -001f7ca0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -001f7ce0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -001f7cf0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -001f7d10: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -001f7d20: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
- name: G
│ │ │ -001f7d40: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ -001f7d50: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ -001f7d60: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ -001f7d70: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ -001f7d80: 733a 0a20 202d 2064 6973 6162 6c65 5f73  s:.  - disable_s
│ │ │ -001f7d90: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ -001f7da0: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ -001f7db0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -001f7dc0: 2d20 6c6f 775f 7365 7665 7269 7479 0a20  - low_severity. 
│ │ │ -001f7dd0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -001f7de0: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ -001f7df0: 7365 7472 6f75 626c 6573 686f 6f74 5f72  setroubleshoot_r
│ │ │ -001f7e00: 656d 6f76 6564 0a0a 2d20 6e61 6d65 3a20  emoved..- name: 
│ │ │ -001f7e10: 2755 6e69 6e73 7461 6c6c 2073 6574 726f  'Uninstall setro
│ │ │ -001f7e20: 7562 6c65 7368 6f6f 7420 5061 636b 6167  ubleshoot Packag
│ │ │ -001f7e30: 653a 2045 6e73 7572 6520 7365 7472 6f75  e: Ensure setrou
│ │ │ -001f7e40: 626c 6573 686f 6f74 2069 7320 7265 6d6f  bleshoot is remo
│ │ │ -001f7e50: 7665 6427 0a20 2061 6e73 6962 6c65 2e62  ved'.  ansible.b
│ │ │ -001f7e60: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a  uiltin.package:.
│ │ │ -001f7e70: 2020 2020 6e61 6d65 3a20 7365 7472 6f75      name: setrou
│ │ │ -001f7e80: 626c 6573 686f 6f74 0a20 2020 2073 7461  bleshoot.    sta
│ │ │ -001f7e90: 7465 3a20 6162 7365 6e74 0a20 2077 6865  te: absent.  whe
│ │ │ -001f7ea0: 6e3a 2027 226b 6572 6e65 6c22 2069 6e20  n: '"kernel" in 
│ │ │ -001f7eb0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001f7ec0: 636b 6167 6573 270a 2020 7461 6773 3a0a  ckages'.  tags:.
│ │ │ -001f7ed0: 2020 2d20 6469 7361 626c 655f 7374 7261    - disable_stra
│ │ │ -001f7ee0: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ -001f7ef0: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ -001f7f00: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -001f7f10: 6f77 5f73 6576 6572 6974 790a 2020 2d20  ow_severity.  - 
│ │ │ -001f7f20: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001f7f30: 0a20 202d 2070 6163 6b61 6765 5f73 6574  .  - package_set
│ │ │ -001f7f40: 726f 7562 6c65 7368 6f6f 745f 7265 6d6f  roubleshoot_remo
│ │ │ -001f7f50: 7665 640a 3c2f 636f 6465 3e3c 2f70 7265  ved.
Remediation │ │ │ -001f8010: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ -001f8020: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -001f80f0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -001f8100: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
# Remediation i
│ │ │ -001f8160: 7320 6170 706c 6963 6162 6c65 206f 6e6c  s applicable onl
│ │ │ -001f8170: 7920 696e 2063 6572 7461 696e 2070 6c61  y in certain pla
│ │ │ -001f8180: 7466 6f72 6d73 0a69 6620 7270 6d20 2d2d  tforms.if rpm --
│ │ │ -001f8190: 7175 6965 7420 2d71 206b 6572 6e65 6c3b  quiet -q kernel;
│ │ │ -001f81a0: 2074 6865 6e0a 0a23 2043 4155 5449 4f4e   then..# CAUTION
│ │ │ -001f81b0: 3a20 5468 6973 2072 656d 6564 6961 7469  : This remediati
│ │ │ -001f81c0: 6f6e 2073 6372 6970 7420 7769 6c6c 2072  on script will r
│ │ │ -001f81d0: 656d 6f76 6520 7365 7472 6f75 626c 6573  emove setroubles
│ │ │ -001f81e0: 686f 6f74 0a23 2066 726f 6d20 7468 6520  hoot.# from the 
│ │ │ -001f81f0: 7379 7374 656d 2c20 616e 6420 6d61 7920  system, and may 
│ │ │ -001f8200: 7265 6d6f 7665 2061 6e79 2070 6163 6b61  remove any packa
│ │ │ -001f8210: 6765 730a 2320 7468 6174 2064 6570 656e  ges.# that depen
│ │ │ -001f8220: 6420 6f6e 2073 6574 726f 7562 6c65 7368  d on setroublesh
│ │ │ -001f8230: 6f6f 742e 2045 7865 6375 7465 2074 6869  oot. Execute thi
│ │ │ -001f8240: 730a 2320 7265 6d65 6469 6174 696f 6e20  s.# remediation 
│ │ │ -001f8250: 4146 5445 5220 7465 7374 696e 6720 6f6e  AFTER testing on
│ │ │ -001f8260: 2061 206e 6f6e 2d70 726f 6475 6374 696f   a non-productio
│ │ │ -001f8270: 6e0a 2320 7379 7374 656d 210a 0a0a 6966  n.# system!...if
│ │ │ -001f8280: 2072 706d 202d 7120 2d2d 7175 6965 7420   rpm -q --quiet 
│ │ │ -001f8290: 2273 6574 726f 7562 6c65 7368 6f6f 7422  "setroubleshoot"
│ │ │ -001f82a0: 203b 2074 6865 6e0a 646e 6620 7265 6d6f   ; then.dnf remo
│ │ │ -001f82b0: 7665 202d 7920 2d2d 6e6f 6175 746f 7265  ve -y --noautore
│ │ │ -001f82c0: 6d6f 7665 2022 7365 7472 6f75 626c 6573  move "setroubles
│ │ │ -001f82d0: 686f 6f74 220a 6669 0a0a 656c 7365 0a20  hoot".fi..else. 
│ │ │ -001f82e0: 2020 2026 6774 3b26 616d 703b 3220 6563     >&2 ec
│ │ │ -001f82f0: 686f 2027 5265 6d65 6469 6174 696f 6e20  ho 'Remediation 
│ │ │ -001f8300: 6973 206e 6f74 2061 7070 6c69 6361 626c  is not applicabl
│ │ │ -001f8310: 652c 206e 6f74 6869 6e67 2077 6173 2064  e, nothing was d
│ │ │ -001f8320: 6f6e 6527 0a66 690a 3c2f 636f 6465 3e3c  one'.fi.<
│ │ │ +001f7750: 696f 6e20 416e 7369 626c 6520 736e 6970  ion Ansible snip
│ │ │ +001f7760: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c  pet ...
< │ │ │ +001f7770: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001f7780: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001f7790: 7365 2220 6964 3d22 6964 3538 3622 3e3c se" id="id586">< │ │ │ +001f77a0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001f77b0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001f77c0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001f77d0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +001f77e0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:Strategy: │ │ │ +001f7870: 3c74 643e 6469 7361 626c 653c 2f74 643e │ │ │ +001f7880: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
low
Disru │ │ │ -001f80d0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -001f80e0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -001f8120: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -001f8130: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complex │ │ │ +001f77f0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +001f7800: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ +001f7840: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +001f7850: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
disable
- name: │ │ │ +001f78a0: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ +001f78b0: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ +001f78c0: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ +001f78d0: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ +001f78e0: 6773 3a0a 2020 2d20 6469 7361 626c 655f gs:. - disable_ │ │ │ +001f78f0: 7374 7261 7465 6779 0a20 202d 206c 6f77 strategy. - low │ │ │ +001f7900: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ +001f7910: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20 low_disruption. │ │ │ +001f7920: 202d 206c 6f77 5f73 6576 6572 6974 790a - low_severity. │ │ │ +001f7930: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ +001f7940: 6564 6564 0a20 202d 2070 6163 6b61 6765 eded. - package │ │ │ +001f7950: 5f73 6574 726f 7562 6c65 7368 6f6f 745f _setroubleshoot_ │ │ │ +001f7960: 7265 6d6f 7665 640a 0a2d 206e 616d 653a removed..- name: │ │ │ +001f7970: 2027 556e 696e 7374 616c 6c20 7365 7472 'Uninstall setr │ │ │ +001f7980: 6f75 626c 6573 686f 6f74 2050 6163 6b61 oubleshoot Packa │ │ │ +001f7990: 6765 3a20 456e 7375 7265 2073 6574 726f ge: Ensure setro │ │ │ +001f79a0: 7562 6c65 7368 6f6f 7420 6973 2072 656d ubleshoot is rem │ │ │ +001f79b0: 6f76 6564 270a 2020 616e 7369 626c 652e oved'. ansible. │ │ │ +001f79c0: 6275 696c 7469 6e2e 7061 636b 6167 653a builtin.package: │ │ │ +001f79d0: 0a20 2020 206e 616d 653a 2073 6574 726f . name: setro │ │ │ +001f79e0: 7562 6c65 7368 6f6f 740a 2020 2020 7374 ubleshoot. st │ │ │ +001f79f0: 6174 653a 2061 6273 656e 740a 2020 7768 ate: absent. wh │ │ │ +001f7a00: 656e 3a20 2722 6b65 726e 656c 2220 696e en: '"kernel" in │ │ │ +001f7a10: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ +001f7a20: 6163 6b61 6765 7327 0a20 2074 6167 733a ackages'. tags: │ │ │ +001f7a30: 0a20 202d 2064 6973 6162 6c65 5f73 7472 . - disable_str │ │ │ +001f7a40: 6174 6567 790a 2020 2d20 6c6f 775f 636f ategy. - low_co │ │ │ +001f7a50: 6d70 6c65 7869 7479 0a20 202d 206c 6f77 mplexity. - low │ │ │ +001f7a60: 5f64 6973 7275 7074 696f 6e0a 2020 2d20 _disruption. - │ │ │ +001f7a70: 6c6f 775f 7365 7665 7269 7479 0a20 202d low_severity. - │ │ │ +001f7a80: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ +001f7a90: 640a 2020 2d20 7061 636b 6167 655f 7365 d. - package_se │ │ │ +001f7aa0: 7472 6f75 626c 6573 686f 6f74 5f72 656d troubleshoot_rem │ │ │ +001f7ab0: 6f76 6564 0a3c 2f63 6f64 653e 3c2f 7072 oved.
Remediation │ │ │ +001f7b70: 2050 7570 7065 7420 736e 6970 7065 7420 Puppet snippet │ │ │ +001f7b80: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ +001f7c10: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +001f7c30: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +001f7c50: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +001f7c80: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +001f7c90: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
.include rem
│ │ │ +001f7cc0: 6f76 655f 7365 7472 6f75 626c 6573 686f  ove_setroublesho
│ │ │ +001f7cd0: 6f74 0a0a 636c 6173 7320 7265 6d6f 7665  ot..class remove
│ │ │ +001f7ce0: 5f73 6574 726f 7562 6c65 7368 6f6f 7420  _setroubleshoot 
│ │ │ +001f7cf0: 7b0a 2020 7061 636b 6167 6520 7b20 2773  {.  package { 's
│ │ │ +001f7d00: 6574 726f 7562 6c65 7368 6f6f 7427 3a0a  etroubleshoot':.
│ │ │ +001f7d10: 2020 2020 656e 7375 7265 203d 2667 743b      ensure =>
│ │ │ +001f7d20: 2027 7075 7267 6564 272c 0a20 207d 0a7d   'purged',.  }.}
│ │ │ +001f7d30: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation She │ │ │ +001f7df0: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...
< │ │ │ +001f7e90: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +001f7ea0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +001f7ef0: 3c74 723e 3c74 683e 5374 7261 7465 6779
# 
│ │ │ +001f7f30: 5265 6d65 6469 6174 696f 6e20 6973 2061  Remediation is a
│ │ │ +001f7f40: 7070 6c69 6361 626c 6520 6f6e 6c79 2069  pplicable only i
│ │ │ +001f7f50: 6e20 6365 7274 6169 6e20 706c 6174 666f  n certain platfo
│ │ │ +001f7f60: 726d 730a 6966 2072 706d 202d 2d71 7569  rms.if rpm --qui
│ │ │ +001f7f70: 6574 202d 7120 6b65 726e 656c 3b20 7468  et -q kernel; th
│ │ │ +001f7f80: 656e 0a0a 2320 4341 5554 494f 4e3a 2054  en..# CAUTION: T
│ │ │ +001f7f90: 6869 7320 7265 6d65 6469 6174 696f 6e20  his remediation 
│ │ │ +001f7fa0: 7363 7269 7074 2077 696c 6c20 7265 6d6f  script will remo
│ │ │ +001f7fb0: 7665 2073 6574 726f 7562 6c65 7368 6f6f  ve setroubleshoo
│ │ │ +001f7fc0: 740a 2320 6672 6f6d 2074 6865 2073 7973  t.# from the sys
│ │ │ +001f7fd0: 7465 6d2c 2061 6e64 206d 6179 2072 656d  tem, and may rem
│ │ │ +001f7fe0: 6f76 6520 616e 7920 7061 636b 6167 6573  ove any packages
│ │ │ +001f7ff0: 0a23 2074 6861 7420 6465 7065 6e64 206f  .# that depend o
│ │ │ +001f8000: 6e20 7365 7472 6f75 626c 6573 686f 6f74  n setroubleshoot
│ │ │ +001f8010: 2e20 4578 6563 7574 6520 7468 6973 0a23  . Execute this.#
│ │ │ +001f8020: 2072 656d 6564 6961 7469 6f6e 2041 4654   remediation AFT
│ │ │ +001f8030: 4552 2074 6573 7469 6e67 206f 6e20 6120  ER testing on a 
│ │ │ +001f8040: 6e6f 6e2d 7072 6f64 7563 7469 6f6e 0a23  non-production.#
│ │ │ +001f8050: 2073 7973 7465 6d21 0a0a 0a69 6620 7270   system!...if rp
│ │ │ +001f8060: 6d20 2d71 202d 2d71 7569 6574 2022 7365  m -q --quiet "se
│ │ │ +001f8070: 7472 6f75 626c 6573 686f 6f74 2220 3b20  troubleshoot" ; 
│ │ │ +001f8080: 7468 656e 0a64 6e66 2072 656d 6f76 6520  then.dnf remove 
│ │ │ +001f8090: 2d79 202d 2d6e 6f61 7574 6f72 656d 6f76  -y --noautoremov
│ │ │ +001f80a0: 6520 2273 6574 726f 7562 6c65 7368 6f6f  e "setroubleshoo
│ │ │ +001f80b0: 7422 0a66 690a 0a65 6c73 650a 2020 2020  t".fi..else.    
│ │ │ +001f80c0: 2667 743b 2661 6d70 3b32 2065 6368 6f20  >&2 echo 
│ │ │ +001f80d0: 2752 656d 6564 6961 7469 6f6e 2069 7320  'Remediation is 
│ │ │ +001f80e0: 6e6f 7420 6170 706c 6963 6162 6c65 2c20  not applicable, 
│ │ │ +001f80f0: 6e6f 7468 696e 6720 7761 7320 646f 6e65  nothing was done
│ │ │ +001f8100: 270a 6669 0a3c 2f63 6f64 653e 3c2f 7072  '.fi.Remediation
│ │ │ +001f81c0: 2041 6e61 636f 6e64 6120 736e 6970 7065   Anaconda snippe
│ │ │ +001f81d0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469  t ...
< │ │ │ +001f8250: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ +001f8290: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 disable
C │ │ │ +001f7e80: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +001f7eb0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +001f7ec0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +001f7f00: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ +001f7f10: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexit │ │ │ +001f8260: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ +001f8280: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ +001f82b0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ +001f82d0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
│ │ │ +001f8300: 3c63 6f64 653e 0a0a 7061 636b 6167 6520  ..package 
│ │ │ +001f8310: 2d2d 7265 6d6f 7665 3d73 6574 726f 7562  --remove=setroub
│ │ │ +001f8320: 6c65 7368 6f6f 740a 3c2f 636f 6465 3e3c  leshoot.<
│ │ │  001f8330: 2f70 7265 3e3c 2f64 6976 3e3c 2f64 6976  /pre>
│ │ │ 001f8360: 3c2f 7472 3e3c 7472 2064 6174 612d 7474 Remediati │ │ │ -00204220: 6f6e 2041 6e61 636f 6e64 6120 736e 6970 on Anaconda snip │ │ │ -00204230: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00204240: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00204250: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00204260: 7365 2220 6964 3d22 6964 3630 3422 3e3c se" id="id604">< │ │ │ -00204270: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -00204280: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -00204290: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -002042a0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -002042b0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -002042c0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -002042d0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -00204310: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -00204320: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -00204340: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ -00204350: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 ..packag │ │ │ -00204370: 6520 2d2d 7265 6d6f 7665 3d61 7661 6869 e --remove=avahi │ │ │ -00204380: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .Remediation Pup │ │ │ -00204440: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ -00204450: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -00204520: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00204530: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -00204580: 0a69 6e63 6c75 6465 2072 656d 6f76 655f  .include remove_
│ │ │ -00204590: 6176 6168 690a 0a63 6c61 7373 2072 656d  avahi..class rem
│ │ │ -002045a0: 6f76 655f 6176 6168 6920 7b0a 2020 7061  ove_avahi {.  pa
│ │ │ -002045b0: 636b 6167 6520 7b20 2761 7661 6869 273a  ckage { 'avahi':
│ │ │ -002045c0: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ -002045d0: 3b20 2770 7572 6765 6427 2c0a 2020 7d0a  ; 'purged',.  }.
│ │ │ -002045e0: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -002045f0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -002046a0: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -002046b0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
Complexity:low
Disrup │ │ │ -00204500: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00204510: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00204550: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -00204560: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ -00204730: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -00204750: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -002047a0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -002047d0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: 'Unins
│ │ │ -002047f0: 7461 6c6c 2061 7661 6869 2053 6572 7665  tall avahi Serve
│ │ │ -00204800: 7220 5061 636b 6167 653a 2045 6e73 7572  r Package: Ensur
│ │ │ -00204810: 6520 6176 6168 6920 6973 2072 656d 6f76  e avahi is remov
│ │ │ -00204820: 6564 270a 2020 616e 7369 626c 652e 6275  ed'.  ansible.bu
│ │ │ -00204830: 696c 7469 6e2e 7061 636b 6167 653a 0a20  iltin.package:. 
│ │ │ -00204840: 2020 206e 616d 653a 2061 7661 6869 0a20     name: avahi. 
│ │ │ -00204850: 2020 2073 7461 7465 3a20 6162 7365 6e74     state: absent
│ │ │ -00204860: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -00204870: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -00204880: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -00204890: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ -002048a0: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ -002048b0: 0a20 202d 2064 6973 6162 6c65 5f73 7472  .  - disable_str
│ │ │ -002048c0: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ -002048d0: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ -002048e0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -002048f0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -00204900: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -00204910: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ -00204920: 5f61 7661 6869 5f72 656d 6f76 6564 0a3c  _avahi_removed.<
│ │ │ -00204930: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -002049e0: 656d 6564 6961 7469 6f6e 2053 6865 6c6c emediation Shell │ │ │ -002049f0: 2073 6372 6970 7420 e287 b23c 2f61 3e3c script ...< │ │ │ -00204a00: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
low
Disr │ │ │ -00204760: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00204770: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -002047b0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -002047c0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Com │ │ │ -00204a80: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -00204ab0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -00204ad0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -00204ae0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -00204b00: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -00204b10: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.# C
│ │ │ -00204b30: 4155 5449 4f4e 3a20 5468 6973 2072 656d  AUTION: This rem
│ │ │ -00204b40: 6564 6961 7469 6f6e 2073 6372 6970 7420  ediation script 
│ │ │ -00204b50: 7769 6c6c 2072 656d 6f76 6520 6176 6168  will remove avah
│ │ │ -00204b60: 690a 2320 6672 6f6d 2074 6865 2073 7973  i.# from the sys
│ │ │ -00204b70: 7465 6d2c 2061 6e64 206d 6179 2072 656d  tem, and may rem
│ │ │ -00204b80: 6f76 6520 616e 7920 7061 636b 6167 6573  ove any packages
│ │ │ -00204b90: 0a23 2074 6861 7420 6465 7065 6e64 206f  .# that depend o
│ │ │ -00204ba0: 6e20 6176 6168 692e 2045 7865 6375 7465  n avahi. Execute
│ │ │ -00204bb0: 2074 6869 730a 2320 7265 6d65 6469 6174   this.# remediat
│ │ │ -00204bc0: 696f 6e20 4146 5445 5220 7465 7374 696e  ion AFTER testin
│ │ │ -00204bd0: 6720 6f6e 2061 206e 6f6e 2d70 726f 6475  g on a non-produ
│ │ │ -00204be0: 6374 696f 6e0a 2320 7379 7374 656d 210a  ction.# system!.
│ │ │ -00204bf0: 0a0a 6966 2072 706d 202d 7120 2d2d 7175  ..if rpm -q --qu
│ │ │ -00204c00: 6965 7420 2261 7661 6869 2220 3b20 7468  iet "avahi" ; th
│ │ │ -00204c10: 656e 0a64 6e66 2072 656d 6f76 6520 2d79  en.dnf remove -y
│ │ │ -00204c20: 202d 2d6e 6f61 7574 6f72 656d 6f76 6520   --noautoremove 
│ │ │ -00204c30: 2261 7661 6869 220a 6669 0a3c 2f63 6f64  "avahi".fi.
│ │ │ +002042b0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +002042c0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +002042d0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +00204310: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +00204320: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +00204340: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +00204350: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
- name: '
│ │ │ +00204370: 556e 696e 7374 616c 6c20 6176 6168 6920  Uninstall avahi 
│ │ │ +00204380: 5365 7276 6572 2050 6163 6b61 6765 3a20  Server Package: 
│ │ │ +00204390: 456e 7375 7265 2061 7661 6869 2069 7320  Ensure avahi is 
│ │ │ +002043a0: 7265 6d6f 7665 6427 0a20 2061 6e73 6962  removed'.  ansib
│ │ │ +002043b0: 6c65 2e62 7569 6c74 696e 2e70 6163 6b61  le.builtin.packa
│ │ │ +002043c0: 6765 3a0a 2020 2020 6e61 6d65 3a20 6176  ge:.    name: av
│ │ │ +002043d0: 6168 690a 2020 2020 7374 6174 653a 2061  ahi.    state: a
│ │ │ +002043e0: 6273 656e 740a 2020 7461 6773 3a0a 2020  bsent.  tags:.  
│ │ │ +002043f0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +00204400: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ +00204410: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ +00204420: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +00204430: 2d37 2862 290a 2020 2d20 6469 7361 626c  -7(b).  - disabl
│ │ │ +00204440: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ +00204450: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +00204460: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +00204470: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +00204480: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ +00204490: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ +002044a0: 636b 6167 655f 6176 6168 695f 7265 6d6f  ckage_avahi_remo
│ │ │ +002044b0: 7665 640a 3c2f 636f 6465 3e3c 2f70 7265  ved.
Remediation │ │ │ +00204570: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ +00204580: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +00204600: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +00204620: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +00204670: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +002046a0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +00204610: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00204630: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +00204680: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +00204690: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.include remo
│ │ │ +002046c0: 7665 5f61 7661 6869 0a0a 636c 6173 7320  ve_avahi..class 
│ │ │ +002046d0: 7265 6d6f 7665 5f61 7661 6869 207b 0a20  remove_avahi {. 
│ │ │ +002046e0: 2070 6163 6b61 6765 207b 2027 6176 6168   package { 'avah
│ │ │ +002046f0: 6927 3a0a 2020 2020 656e 7375 7265 203d  i':.    ensure =
│ │ │ +00204700: 2667 743b 2027 7075 7267 6564 272c 0a20  > 'purged',. 
│ │ │ +00204710: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.
Remediation │ │ │ +002047d0: 2053 6865 6c6c 2073 6372 6970 7420 e287 Shell script .. │ │ │ +002047e0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ +00204860: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +00204880: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +002048d0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ +00204900: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.# CAUTION: Th
│ │ │ +00204920: 6973 2072 656d 6564 6961 7469 6f6e 2073  is remediation s
│ │ │ +00204930: 6372 6970 7420 7769 6c6c 2072 656d 6f76  cript will remov
│ │ │ +00204940: 6520 6176 6168 690a 2320 6672 6f6d 2074  e avahi.# from t
│ │ │ +00204950: 6865 2073 7973 7465 6d2c 2061 6e64 206d  he system, and m
│ │ │ +00204960: 6179 2072 656d 6f76 6520 616e 7920 7061  ay remove any pa
│ │ │ +00204970: 636b 6167 6573 0a23 2074 6861 7420 6465  ckages.# that de
│ │ │ +00204980: 7065 6e64 206f 6e20 6176 6168 692e 2045  pend on avahi. E
│ │ │ +00204990: 7865 6375 7465 2074 6869 730a 2320 7265  xecute this.# re
│ │ │ +002049a0: 6d65 6469 6174 696f 6e20 4146 5445 5220  mediation AFTER 
│ │ │ +002049b0: 7465 7374 696e 6720 6f6e 2061 206e 6f6e  testing on a non
│ │ │ +002049c0: 2d70 726f 6475 6374 696f 6e0a 2320 7379  -production.# sy
│ │ │ +002049d0: 7374 656d 210a 0a0a 6966 2072 706d 202d  stem!...if rpm -
│ │ │ +002049e0: 7120 2d2d 7175 6965 7420 2261 7661 6869  q --quiet "avahi
│ │ │ +002049f0: 2220 3b20 7468 656e 0a64 6e66 2072 656d  " ; then.dnf rem
│ │ │ +00204a00: 6f76 6520 2d79 202d 2d6e 6f61 7574 6f72  ove -y --noautor
│ │ │ +00204a10: 656d 6f76 6520 2261 7661 6869 220a 6669  emove "avahi".fi
│ │ │ +00204a20: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Ana │ │ │ +00204ae0: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ +00204af0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
low
Disr │ │ │ +00204890: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +002048a0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +002048e0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ +002048f0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
< │ │ │ +00204b70: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +00204b90: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +00204be0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ +00204c10: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
..package --re
│ │ │ +00204c30: 6d6f 7665 3d61 7661 6869 0a3c 2f63 6f64  move=avahi.
low
Disr │ │ │ +00204ba0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +00204bb0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +00204bf0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ +00204c00: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Re │ │ │ -002111d0: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ -002111e0: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ -002111f0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00211200: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00211210: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00211220: 7365 2220 6964 3d22 6964 3633 3622 3e3c se" id="id636">< │ │ │ -00211230: 7072 653e 3c63 6f64 653e 0a5b 6375 7374 pre>.[cust │ │ │ -00211240: 6f6d 697a 6174 696f 6e73 2e73 6572 7669 omizations.servi │ │ │ -00211250: 6365 735d 0a65 6e61 626c 6564 203d 205b ces].enabled = [ │ │ │ -00211260: 2263 726f 6e64 225d 0a3c 2f63 6f64 653e "crond"]. │ │ │ -00211270: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063
Remedia │ │ │ -00211320: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ -00211330: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00211340: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00211350: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00211360: 7365 2220 6964 3d22 6964 3633 3722 3e3c se" id="id637">< │ │ │ -00211370: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -00211380: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -00211390: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -002113a0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -002113b0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -002113c0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -002113d0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -00211410: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -00211420: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -00211440: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ -00211450: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
include e
│ │ │ -00211470: 6e61 626c 655f 6372 6f6e 640a 0a63 6c61  nable_crond..cla
│ │ │ -00211480: 7373 2065 6e61 626c 655f 6372 6f6e 6420  ss enable_crond 
│ │ │ -00211490: 7b0a 2020 7365 7276 6963 6520 7b27 6372  {.  service {'cr
│ │ │ -002114a0: 6f6e 6427 3a0a 2020 2020 656e 6162 6c65  ond':.    enable
│ │ │ -002114b0: 203d 2667 743b 2074 7275 652c 0a20 2020   => true,.   
│ │ │ -002114c0: 2065 6e73 7572 6520 3d26 6774 3b20 2772   ensure => 'r
│ │ │ -002114d0: 756e 6e69 6e67 272c 0a20 207d 0a7d 0a3c  unning',.  }.}.<
│ │ │ -002114e0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -00211590: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -002115a0: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
│ │ │ -00211640: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
- 
│ │ │ -002116e0: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ -002116f0: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ -00211700: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ -00211710: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ -00211720: 6f0a 2020 7461 6773 3a0a 2020 2d20 4e49  o.  tags:.  - NI
│ │ │ -00211730: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -00211740: 290a 2020 2d20 656e 6162 6c65 5f73 7472  ).  - enable_str
│ │ │ -00211750: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ -00211760: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ -00211770: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -00211780: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -00211790: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -002117a0: 6564 6564 0a20 202d 2073 6572 7669 6365  eded.  - service
│ │ │ -002117b0: 5f63 726f 6e64 5f65 6e61 626c 6564 0a0a  _crond_enabled..
│ │ │ -002117c0: 2d20 6e61 6d65 3a20 456e 6162 6c65 2063  - name: Enable c
│ │ │ -002117d0: 726f 6e20 5365 7276 6963 6520 2d20 456e  ron Service - En
│ │ │ -002117e0: 6162 6c65 2073 6572 7669 6365 2063 726f  able service cro
│ │ │ -002117f0: 6e64 0a20 2062 6c6f 636b 3a0a 0a20 202d  nd.  block:..  -
│ │ │ -00211800: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ -00211810: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ -00211820: 2020 2020 616e 7369 626c 652e 6275 696c      ansible.buil
│ │ │ -00211830: 7469 6e2e 7061 636b 6167 655f 6661 6374  tin.package_fact
│ │ │ -00211840: 733a 0a20 2020 2020 206d 616e 6167 6572  s:.      manager
│ │ │ -00211850: 3a20 6175 746f 0a0a 2020 2d20 6e61 6d65  : auto..  - name
│ │ │ -00211860: 3a20 456e 6162 6c65 2063 726f 6e20 5365  : Enable cron Se
│ │ │ -00211870: 7276 6963 6520 2d20 456e 6162 6c65 2053  rvice - Enable S
│ │ │ -00211880: 6572 7669 6365 2063 726f 6e64 0a20 2020  ervice crond.   
│ │ │ -00211890: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -002118a0: 2e73 7973 7465 6d64 3a0a 2020 2020 2020  .systemd:.      
│ │ │ -002118b0: 6e61 6d65 3a20 6372 6f6e 640a 2020 2020  name: crond.    
│ │ │ -002118c0: 2020 656e 6162 6c65 643a 2074 7275 650a    enabled: true.
│ │ │ -002118d0: 2020 2020 2020 7374 6174 653a 2073 7461        state: sta
│ │ │ -002118e0: 7274 6564 0a20 2020 2020 206d 6173 6b65  rted.      maske
│ │ │ -002118f0: 643a 2066 616c 7365 0a20 2020 2077 6865  d: false.    whe
│ │ │ -00211900: 6e3a 0a20 2020 202d 2027 2263 726f 6e69  n:.    - '"croni
│ │ │ -00211910: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ -00211920: 6374 732e 7061 636b 6167 6573 270a 2020  cts.packages'.  
│ │ │ -00211930: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ -00211940: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ -00211950: 2d20 656e 6162 6c65 5f73 7472 6174 6567  - enable_strateg
│ │ │ -00211960: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -00211970: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -00211980: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ -00211990: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -002119a0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -002119b0: 0a20 202d 2073 6572 7669 6365 5f63 726f  .  - service_cro
│ │ │ -002119c0: 6e64 5f65 6e61 626c 6564 0a20 202d 2073  nd_enabled.  - s
│ │ │ -002119d0: 7065 6369 616c 5f73 6572 7669 6365 5f62  pecial_service_b
│ │ │ -002119e0: 6c6f 636b 0a20 2077 6865 6e3a 2027 226b  lock.  when: '"k
│ │ │ -002119f0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -00211a00: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -00211a10: 270a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  '.
< │ │ │ +002111d0: 6d65 6469 6174 696f 6e20 416e 7369 626c mediation Ansibl │ │ │ +002111e0: 6520 736e 6970 7065 7420 e287 b23c 2f61 e snippet ...
│ │ │ -00211630: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00211660: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00211670: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -002116b0: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -002116c0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ +00211280: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00211290: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +002112e0: 3c74 723e 3c74 683e 5374 7261 7465 6779
- n
│ │ │ +00211320: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ +00211330: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ +00211340: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ +00211350: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ +00211360: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +00211370: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +00211380: 0a20 202d 2065 6e61 626c 655f 7374 7261  .  - enable_stra
│ │ │ +00211390: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ +002113a0: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +002113b0: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ +002113c0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +002113d0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +002113e0: 6465 640a 2020 2d20 7365 7276 6963 655f  ded.  - service_
│ │ │ +002113f0: 6372 6f6e 645f 656e 6162 6c65 640a 0a2d  crond_enabled..-
│ │ │ +00211400: 206e 616d 653a 2045 6e61 626c 6520 6372   name: Enable cr
│ │ │ +00211410: 6f6e 2053 6572 7669 6365 202d 2045 6e61  on Service - Ena
│ │ │ +00211420: 626c 6520 7365 7276 6963 6520 6372 6f6e  ble service cron
│ │ │ +00211430: 640a 2020 626c 6f63 6b3a 0a0a 2020 2d20  d.  block:..  - 
│ │ │ +00211440: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ +00211450: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ +00211460: 2020 2061 6e73 6962 6c65 2e62 7569 6c74     ansible.built
│ │ │ +00211470: 696e 2e70 6163 6b61 6765 5f66 6163 7473  in.package_facts
│ │ │ +00211480: 3a0a 2020 2020 2020 6d61 6e61 6765 723a  :.      manager:
│ │ │ +00211490: 2061 7574 6f0a 0a20 202d 206e 616d 653a   auto..  - name:
│ │ │ +002114a0: 2045 6e61 626c 6520 6372 6f6e 2053 6572   Enable cron Ser
│ │ │ +002114b0: 7669 6365 202d 2045 6e61 626c 6520 5365  vice - Enable Se
│ │ │ +002114c0: 7276 6963 6520 6372 6f6e 640a 2020 2020  rvice crond.    
│ │ │ +002114d0: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +002114e0: 7379 7374 656d 643a 0a20 2020 2020 206e  systemd:.      n
│ │ │ +002114f0: 616d 653a 2063 726f 6e64 0a20 2020 2020  ame: crond.     
│ │ │ +00211500: 2065 6e61 626c 6564 3a20 7472 7565 0a20   enabled: true. 
│ │ │ +00211510: 2020 2020 2073 7461 7465 3a20 7374 6172       state: star
│ │ │ +00211520: 7465 640a 2020 2020 2020 6d61 736b 6564  ted.      masked
│ │ │ +00211530: 3a20 6661 6c73 650a 2020 2020 7768 656e  : false.    when
│ │ │ +00211540: 3a0a 2020 2020 2d20 2722 6372 6f6e 6965  :.    - '"cronie
│ │ │ +00211550: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +00211560: 7473 2e70 6163 6b61 6765 7327 0a20 2074  ts.packages'.  t
│ │ │ +00211570: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +00211580: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +00211590: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ +002115a0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +002115b0: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +002115c0: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +002115d0: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ +002115e0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +002115f0: 2020 2d20 7365 7276 6963 655f 6372 6f6e    - service_cron
│ │ │ +00211600: 645f 656e 6162 6c65 640a 2020 2d20 7370  d_enabled.  - sp
│ │ │ +00211610: 6563 6961 6c5f 7365 7276 6963 655f 626c  ecial_service_bl
│ │ │ +00211620: 6f63 6b0a 2020 7768 656e 3a20 2722 6b65  ock.  when: '"ke
│ │ │ +00211630: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +00211640: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ +00211650: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Pup │ │ │ +00211710: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ +00211720: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
C │ │ │ +00211270: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +002112a0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +002112b0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +002112f0: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +00211300: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ +002117f0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +00211800: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
i
│ │ │ +00211850: 6e63 6c75 6465 2065 6e61 626c 655f 6372  nclude enable_cr
│ │ │ +00211860: 6f6e 640a 0a63 6c61 7373 2065 6e61 626c  ond..class enabl
│ │ │ +00211870: 655f 6372 6f6e 6420 7b0a 2020 7365 7276  e_crond {.  serv
│ │ │ +00211880: 6963 6520 7b27 6372 6f6e 6427 3a0a 2020  ice {'crond':.  
│ │ │ +00211890: 2020 656e 6162 6c65 203d 2667 743b 2074    enable => t
│ │ │ +002118a0: 7275 652c 0a20 2020 2065 6e73 7572 6520  rue,.    ensure 
│ │ │ +002118b0: 3d26 6774 3b20 2772 756e 6e69 6e67 272c  => 'running',
│ │ │ +002118c0: 0a20 207d 0a7d 0a3c 2f63 6f64 653e 3c2f  .  }.}.Remediati
│ │ │ +00211980: 6f6e 204f 5342 7569 6c64 2042 6c75 6570  on OSBuild Bluep
│ │ │ +00211990: 7269 6e74 2073 6e69 7070 6574 20e2 87b2  rint snippet ...
│ │ │ +002119a0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
.[customizati
│ │ │ +002119f0: 6f6e 732e 7365 7276 6963 6573 5d0a 656e  ons.services].en
│ │ │ +00211a00: 6162 6c65 6420 3d20 5b22 6372 6f6e 6422  abled = ["crond"
│ │ │ +00211a10: 5d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  ].
< │ │ │ 00211a20: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation A │ │ │ -0022e1a0: 6e61 636f 6e64 6120 736e 6970 7065 7420 naconda snippet │ │ │ -0022e1b0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
low< │ │ │ -0022e280: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
Complexity:low
Disrup │ │ │ +002117d0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +002117e0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +00211820: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +00211830: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity: │ │ │ -0022e240: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ -0022e260: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:false
St │ │ │ -0022e2b0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -0022e2c0: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
..package --
│ │ │ -0022e2f0: 7265 6d6f 7665 3d64 6863 700a 3c2f 636f  remove=dhcp.
< │ │ │ -0022e310: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -0022e320: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -0022e330: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -0022e340: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -0022e350: 6436 3936 2220 7461 6269 6e64 6578 3d22 d696" tabindex=" │ │ │ -0022e360: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -0022e370: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -0022e380: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -0022e390: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -0022e3a0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -0022e3b0: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ -0022e3c0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -0022e450: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -0022e460: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -0022e480: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -0022e4a0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -0022e4b0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -0022e4f0: 3c70 7265 3e3c 636f 6465 3e0a 696e 636c
.incl
│ │ │ -0022e500: 7564 6520 7265 6d6f 7665 5f64 6863 700a  ude remove_dhcp.
│ │ │ -0022e510: 0a63 6c61 7373 2072 656d 6f76 655f 6468  .class remove_dh
│ │ │ -0022e520: 6370 207b 0a20 2070 6163 6b61 6765 207b  cp {.  package {
│ │ │ -0022e530: 2027 6468 6370 273a 0a20 2020 2065 6e73   'dhcp':.    ens
│ │ │ -0022e540: 7572 6520 3d26 6774 3b20 2770 7572 6765  ure => 'purge
│ │ │ -0022e550: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  d',.  }.}.
Remedi │ │ │ -0022e610: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -0022e620: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -0022e6d0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -0022e6f0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -0022e720: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -0022e6b0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -0022e6c0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -0022e6e0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -0022e700: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -0022e710: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -0022e750: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -0022e760: 3a20 2755 6e69 6e73 7461 6c6c 2044 4843 : 'Uninstall DHC │ │ │ -0022e770: 5020 5365 7276 6572 2050 6163 6b61 6765 P Server Package │ │ │ -0022e780: 3a20 456e 7375 7265 2064 6863 7020 6973 : Ensure dhcp is │ │ │ -0022e790: 2072 656d 6f76 6564 270a 2020 616e 7369 removed'. ansi │ │ │ -0022e7a0: 626c 652e 6275 696c 7469 6e2e 7061 636b ble.builtin.pack │ │ │ -0022e7b0: 6167 653a 0a20 2020 206e 616d 653a 2064 age:. name: d │ │ │ -0022e7c0: 6863 700a 2020 2020 7374 6174 653a 2061 hcp. state: a │ │ │ -0022e7d0: 6273 656e 740a 2020 7461 6773 3a0a 2020 bsent. tags:. │ │ │ -0022e7e0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -0022e7f0: 2d36 2861 290a 2020 2d20 4e49 5354 2d38 -6(a). - NIST-8 │ │ │ -0022e800: 3030 2d35 332d 434d 2d37 2861 290a 2020 00-53-CM-7(a). │ │ │ -0022e810: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -0022e820: 2d37 2862 290a 2020 2d20 5043 492d 4453 -7(b). - PCI-DS │ │ │ -0022e830: 5376 342d 322e 320a 2020 2d20 5043 492d Sv4-2.2. - PCI- │ │ │ -0022e840: 4453 5376 342d 322e 322e 340a 2020 2d20 DSSv4-2.2.4. - │ │ │ -0022e850: 6469 7361 626c 655f 7374 7261 7465 6779 disable_strategy │ │ │ -0022e860: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ -0022e870: 6974 790a 2020 2d20 6c6f 775f 6469 7372 ity. - low_disr │ │ │ -0022e880: 7570 7469 6f6e 0a20 202d 206d 6564 6975 uption. - mediu │ │ │ -0022e890: 6d5f 7365 7665 7269 7479 0a20 202d 206e m_severity. - n │ │ │ -0022e8a0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a o_reboot_needed. │ │ │ -0022e8b0: 2020 2d20 7061 636b 6167 655f 6468 6370 - package_dhcp │ │ │ -0022e8c0: 5f72 656d 6f76 6564 0a3c 2f63 6f64 653e _removed. │ │ │ -0022e8d0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063
Remedia │ │ │ -0022e980: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ -0022e990: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -0022ea10: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -0022ea20: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -0022ea40: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -0022ea50: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -0022ea70: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -0022ea90: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ -0022eac0: 3c63 6f64 653e 0a23 2043 4155 5449 4f4e  .# CAUTION
│ │ │ -0022ead0: 3a20 5468 6973 2072 656d 6564 6961 7469  : This remediati
│ │ │ -0022eae0: 6f6e 2073 6372 6970 7420 7769 6c6c 2072  on script will r
│ │ │ -0022eaf0: 656d 6f76 6520 6468 6370 0a23 2066 726f  emove dhcp.# fro
│ │ │ -0022eb00: 6d20 7468 6520 7379 7374 656d 2c20 616e  m the system, an
│ │ │ -0022eb10: 6420 6d61 7920 7265 6d6f 7665 2061 6e79  d may remove any
│ │ │ -0022eb20: 2070 6163 6b61 6765 730a 2320 7468 6174   packages.# that
│ │ │ -0022eb30: 2064 6570 656e 6420 6f6e 2064 6863 702e   depend on dhcp.
│ │ │ -0022eb40: 2045 7865 6375 7465 2074 6869 730a 2320   Execute this.# 
│ │ │ -0022eb50: 7265 6d65 6469 6174 696f 6e20 4146 5445  remediation AFTE
│ │ │ -0022eb60: 5220 7465 7374 696e 6720 6f6e 2061 206e  R testing on a n
│ │ │ -0022eb70: 6f6e 2d70 726f 6475 6374 696f 6e0a 2320  on-production.# 
│ │ │ -0022eb80: 7379 7374 656d 210a 0a0a 6966 2072 706d  system!...if rpm
│ │ │ -0022eb90: 202d 7120 2d2d 7175 6965 7420 2264 6863   -q --quiet "dhc
│ │ │ -0022eba0: 7022 203b 2074 6865 6e0a 646e 6620 7265  p" ; then.dnf re
│ │ │ -0022ebb0: 6d6f 7665 202d 7920 2d2d 6e6f 6175 746f  move -y --noauto
│ │ │ -0022ebc0: 7265 6d6f 7665 2022 6468 6370 220a 6669  remove "dhcp".fi
│ │ │ +0022e1a0: 6e73 6962 6c65 2073 6e69 7070 6574 20e2  nsible snippet .
│ │ │ +0022e1b0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063  ..
│ │ │ +0022e230: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +0022e250: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +0022e2a0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +0022e2d0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +0022e240: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +0022e260: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +0022e2b0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +0022e2c0: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
- name: 'Unin
│ │ │ +0022e2f0: 7374 616c 6c20 4448 4350 2053 6572 7665  stall DHCP Serve
│ │ │ +0022e300: 7220 5061 636b 6167 653a 2045 6e73 7572  r Package: Ensur
│ │ │ +0022e310: 6520 6468 6370 2069 7320 7265 6d6f 7665  e dhcp is remove
│ │ │ +0022e320: 6427 0a20 2061 6e73 6962 6c65 2e62 7569  d'.  ansible.bui
│ │ │ +0022e330: 6c74 696e 2e70 6163 6b61 6765 3a0a 2020  ltin.package:.  
│ │ │ +0022e340: 2020 6e61 6d65 3a20 6468 6370 0a20 2020    name: dhcp.   
│ │ │ +0022e350: 2073 7461 7465 3a20 6162 7365 6e74 0a20   state: absent. 
│ │ │ +0022e360: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +0022e370: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +0022e380: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +0022e390: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +0022e3a0: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +0022e3b0: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ +0022e3c0: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ +0022e3d0: 2e32 2e34 0a20 202d 2064 6973 6162 6c65  .2.4.  - disable
│ │ │ +0022e3e0: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ +0022e3f0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +0022e400: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +0022e410: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +0022e420: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ +0022e430: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ +0022e440: 6b61 6765 5f64 6863 705f 7265 6d6f 7665  kage_dhcp_remove
│ │ │ +0022e450: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ +0022e460: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ +0022e510: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ +0022e520: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ +0022e5f0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +0022e600: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.include remove
│ │ │ +0022e660: 5f64 6863 700a 0a63 6c61 7373 2072 656d  _dhcp..class rem
│ │ │ +0022e670: 6f76 655f 6468 6370 207b 0a20 2070 6163  ove_dhcp {.  pac
│ │ │ +0022e680: 6b61 6765 207b 2027 6468 6370 273a 0a20  kage { 'dhcp':. 
│ │ │ +0022e690: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ +0022e6a0: 2770 7572 6765 6427 2c0a 2020 7d0a 7d0a  'purged',.  }.}.
│ │ │ +0022e6b0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +0022e760: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ +0022e770: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ +0022e780: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low
Disru │ │ │ +0022e5d0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +0022e5e0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +0022e620: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +0022e630: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
low< │ │ │ +0022e820: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0022e870: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.# 
│ │ │ +0022e8b0: 4341 5554 494f 4e3a 2054 6869 7320 7265  CAUTION: This re
│ │ │ +0022e8c0: 6d65 6469 6174 696f 6e20 7363 7269 7074  mediation script
│ │ │ +0022e8d0: 2077 696c 6c20 7265 6d6f 7665 2064 6863   will remove dhc
│ │ │ +0022e8e0: 700a 2320 6672 6f6d 2074 6865 2073 7973  p.# from the sys
│ │ │ +0022e8f0: 7465 6d2c 2061 6e64 206d 6179 2072 656d  tem, and may rem
│ │ │ +0022e900: 6f76 6520 616e 7920 7061 636b 6167 6573  ove any packages
│ │ │ +0022e910: 0a23 2074 6861 7420 6465 7065 6e64 206f  .# that depend o
│ │ │ +0022e920: 6e20 6468 6370 2e20 4578 6563 7574 6520  n dhcp. Execute 
│ │ │ +0022e930: 7468 6973 0a23 2072 656d 6564 6961 7469  this.# remediati
│ │ │ +0022e940: 6f6e 2041 4654 4552 2074 6573 7469 6e67  on AFTER testing
│ │ │ +0022e950: 206f 6e20 6120 6e6f 6e2d 7072 6f64 7563   on a non-produc
│ │ │ +0022e960: 7469 6f6e 0a23 2073 7973 7465 6d21 0a0a  tion.# system!..
│ │ │ +0022e970: 0a69 6620 7270 6d20 2d71 202d 2d71 7569  .if rpm -q --qui
│ │ │ +0022e980: 6574 2022 6468 6370 2220 3b20 7468 656e  et "dhcp" ; then
│ │ │ +0022e990: 0a64 6e66 2072 656d 6f76 6520 2d79 202d  .dnf remove -y -
│ │ │ +0022e9a0: 2d6e 6f61 7574 6f72 656d 6f76 6520 2264  -noautoremove "d
│ │ │ +0022e9b0: 6863 7022 0a66 690a 3c2f 636f 6465 3e3c  hcp".fi.<
│ │ │ +0022e9c0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ +0022ea70: 696f 6e20 416e 6163 6f6e 6461 2073 6e69  ion Anaconda sni
│ │ │ +0022ea80: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e  ppet ...
│ │ │ +0022ea90: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +0022eac0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Co │ │ │ +0022e800: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0022e830: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0022e850: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0022e860: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0022e880: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +0022e890: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ +0022eb30: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +0022eb50: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +0022eb80: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +0022eb10: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +0022eb20: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +0022eb60: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +0022eb70: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

..packa │ │ │ +0022ebc0: 6765 202d 2d72 656d 6f76 653d 6468 6370 ge --remove=dhcp │ │ │ 0022ebd0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .

< │ │ │ 0022ebf0: 2f74 723e 3c2f 7462 6f64 793e 3c2f 7461 /tr>
Rem │ │ │ -00230180: 6564 6961 7469 6f6e 2041 6e61 636f 6e64 ediation Anacond │ │ │ -00230190: 6120 736e 6970 7065 7420 e287 b23c 2f61 a snippet ...
< │ │ │ -00230230: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00230240: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -00230290: 3c74 723e 3c74 683e 5374 7261 7465 6779
..
│ │ │ -002302d0: 7061 636b 6167 6520 2d2d 7265 6d6f 7665  package --remove
│ │ │ -002302e0: 3d62 696e 640a 3c2f 636f 6465 3e3c 2f70  =bind.

Remediatio │ │ │ -002303a0: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ -002303b0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
< │ │ │ -00230470: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00230480: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
C │ │ │ -00230220: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -00230250: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -00230260: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -002302a0: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ -002302b0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexity │ │ │ -00230440: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ -00230460: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ -00230490: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ -002304b0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -002304e0: 636f 6465 3e0a 696e 636c 7564 6520 7265  code>.include re
│ │ │ -002304f0: 6d6f 7665 5f62 696e 640a 0a63 6c61 7373  move_bind..class
│ │ │ -00230500: 2072 656d 6f76 655f 6269 6e64 207b 0a20   remove_bind {. 
│ │ │ -00230510: 2070 6163 6b61 6765 207b 2027 6269 6e64   package { 'bind
│ │ │ -00230520: 273a 0a20 2020 2065 6e73 7572 6520 3d26  ':.    ensure =&
│ │ │ -00230530: 6774 3b20 2770 7572 6765 6427 2c0a 2020  gt; 'purged',.  
│ │ │ -00230540: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Remediation │ │ │ -00230600: 416e 7369 626c 6520 736e 6970 7065 7420 Ansible snippet │ │ │ -00230610: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -002306a0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -002306c0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -002306e0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -00230710: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -00230720: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
- name: 'Uni
│ │ │ -00230750: 6e73 7461 6c6c 2062 696e 6420 5061 636b  nstall bind Pack
│ │ │ -00230760: 6167 653a 2045 6e73 7572 6520 6269 6e64  age: Ensure bind
│ │ │ -00230770: 2069 7320 7265 6d6f 7665 6427 0a20 2061   is removed'.  a
│ │ │ -00230780: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ -00230790: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ -002307a0: 3a20 6269 6e64 0a20 2020 2073 7461 7465  : bind.    state
│ │ │ -002307b0: 3a20 6162 7365 6e74 0a20 2074 6167 733a  : absent.  tags:
│ │ │ -002307c0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -002307d0: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ -002307e0: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ -002307f0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -00230800: 2d43 4d2d 3728 6229 0a20 202d 2064 6973  -CM-7(b).  - dis
│ │ │ -00230810: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ -00230820: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -00230830: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -00230840: 696f 6e0a 2020 2d20 6c6f 775f 7365 7665  ion.  - low_seve
│ │ │ -00230850: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -00230860: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ -00230870: 636b 6167 655f 6269 6e64 5f72 656d 6f76  ckage_bind_remov
│ │ │ -00230880: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e  ed.
│ │ │ -00230890: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation S │ │ │ -00230940: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ -00230950: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -00230a20: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00230a30: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -00230a80: 0a23 2043 4155 5449 4f4e 3a20 5468 6973  .# CAUTION: This
│ │ │ -00230a90: 2072 656d 6564 6961 7469 6f6e 2073 6372   remediation scr
│ │ │ -00230aa0: 6970 7420 7769 6c6c 2072 656d 6f76 6520  ipt will remove 
│ │ │ -00230ab0: 6269 6e64 0a23 2066 726f 6d20 7468 6520  bind.# from the 
│ │ │ -00230ac0: 7379 7374 656d 2c20 616e 6420 6d61 7920  system, and may 
│ │ │ -00230ad0: 7265 6d6f 7665 2061 6e79 2070 6163 6b61  remove any packa
│ │ │ -00230ae0: 6765 730a 2320 7468 6174 2064 6570 656e  ges.# that depen
│ │ │ -00230af0: 6420 6f6e 2062 696e 642e 2045 7865 6375  d on bind. Execu
│ │ │ -00230b00: 7465 2074 6869 730a 2320 7265 6d65 6469  te this.# remedi
│ │ │ -00230b10: 6174 696f 6e20 4146 5445 5220 7465 7374  ation AFTER test
│ │ │ -00230b20: 696e 6720 6f6e 2061 206e 6f6e 2d70 726f  ing on a non-pro
│ │ │ -00230b30: 6475 6374 696f 6e0a 2320 7379 7374 656d  duction.# system
│ │ │ -00230b40: 210a 0a0a 6966 2072 706d 202d 7120 2d2d  !...if rpm -q --
│ │ │ -00230b50: 7175 6965 7420 2262 696e 6422 203b 2074  quiet "bind" ; t
│ │ │ -00230b60: 6865 6e0a 646e 6620 7265 6d6f 7665 202d  hen.dnf remove -
│ │ │ -00230b70: 7920 2d2d 6e6f 6175 746f 7265 6d6f 7665  y --noautoremove
│ │ │ -00230b80: 2022 6269 6e64 220a 6669 0a3c 2f63 6f64   "bind".fi.
│ │ │ +002301a0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22  
Complexity:low
Disrup │ │ │ -00230a00: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00230a10: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00230a50: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -00230a60: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
low< │ │ │ +00230240: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +00230290: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
- n
│ │ │ +002302d0: 616d 653a 2027 556e 696e 7374 616c 6c20  ame: 'Uninstall 
│ │ │ +002302e0: 6269 6e64 2050 6163 6b61 6765 3a20 456e  bind Package: En
│ │ │ +002302f0: 7375 7265 2062 696e 6420 6973 2072 656d  sure bind is rem
│ │ │ +00230300: 6f76 6564 270a 2020 616e 7369 626c 652e  oved'.  ansible.
│ │ │ +00230310: 6275 696c 7469 6e2e 7061 636b 6167 653a  builtin.package:
│ │ │ +00230320: 0a20 2020 206e 616d 653a 2062 696e 640a  .    name: bind.
│ │ │ +00230330: 2020 2020 7374 6174 653a 2061 6273 656e      state: absen
│ │ │ +00230340: 740a 2020 7461 6773 3a0a 2020 2d20 4e49  t.  tags:.  - NI
│ │ │ +00230350: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +00230360: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +00230370: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +00230380: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +00230390: 290a 2020 2d20 6469 7361 626c 655f 7374  ).  - disable_st
│ │ │ +002303a0: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ +002303b0: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ +002303c0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +002303d0: 206c 6f77 5f73 6576 6572 6974 790a 2020   low_severity.  
│ │ │ +002303e0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +002303f0: 6564 0a20 202d 2070 6163 6b61 6765 5f62  ed.  - package_b
│ │ │ +00230400: 696e 645f 7265 6d6f 7665 640a 3c2f 636f  ind_removed.
< │ │ │ +00230420: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +00230430: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +00230440: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +00230450: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +00230460: 6437 3031 2220 7461 6269 6e64 6578 3d22 d701" tabindex=" │ │ │ +00230470: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +00230480: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +00230490: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +002304a0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +002304b0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +002304c0: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ +002304d0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Co │ │ │ +00230220: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +00230250: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +00230270: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +00230280: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +002302a0: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +002302b0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Comp │ │ │ +00230560: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +00230570: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +00230590: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +002305b0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +002305c0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +00230600: 3c70 7265 3e3c 636f 6465 3e0a 696e 636c
.incl
│ │ │ +00230610: 7564 6520 7265 6d6f 7665 5f62 696e 640a  ude remove_bind.
│ │ │ +00230620: 0a63 6c61 7373 2072 656d 6f76 655f 6269  .class remove_bi
│ │ │ +00230630: 6e64 207b 0a20 2070 6163 6b61 6765 207b  nd {.  package {
│ │ │ +00230640: 2027 6269 6e64 273a 0a20 2020 2065 6e73   'bind':.    ens
│ │ │ +00230650: 7572 6520 3d26 6774 3b20 2770 7572 6765  ure => 'purge
│ │ │ +00230660: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  d',.  }.}.
Remedi │ │ │ +00230720: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ +00230730: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
│ │ │ +002307b0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +002307c0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +002307d0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +00230810: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +00230820: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +00230840: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +00230850: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.# CAUTIO
│ │ │ +00230870: 4e3a 2054 6869 7320 7265 6d65 6469 6174  N: This remediat
│ │ │ +00230880: 696f 6e20 7363 7269 7074 2077 696c 6c20  ion script will 
│ │ │ +00230890: 7265 6d6f 7665 2062 696e 640a 2320 6672  remove bind.# fr
│ │ │ +002308a0: 6f6d 2074 6865 2073 7973 7465 6d2c 2061  om the system, a
│ │ │ +002308b0: 6e64 206d 6179 2072 656d 6f76 6520 616e  nd may remove an
│ │ │ +002308c0: 7920 7061 636b 6167 6573 0a23 2074 6861  y packages.# tha
│ │ │ +002308d0: 7420 6465 7065 6e64 206f 6e20 6269 6e64  t depend on bind
│ │ │ +002308e0: 2e20 4578 6563 7574 6520 7468 6973 0a23  . Execute this.#
│ │ │ +002308f0: 2072 656d 6564 6961 7469 6f6e 2041 4654   remediation AFT
│ │ │ +00230900: 4552 2074 6573 7469 6e67 206f 6e20 6120  ER testing on a 
│ │ │ +00230910: 6e6f 6e2d 7072 6f64 7563 7469 6f6e 0a23  non-production.#
│ │ │ +00230920: 2073 7973 7465 6d21 0a0a 0a69 6620 7270   system!...if rp
│ │ │ +00230930: 6d20 2d71 202d 2d71 7569 6574 2022 6269  m -q --quiet "bi
│ │ │ +00230940: 6e64 2220 3b20 7468 656e 0a64 6e66 2072  nd" ; then.dnf r
│ │ │ +00230950: 656d 6f76 6520 2d79 202d 2d6e 6f61 7574  emove -y --noaut
│ │ │ +00230960: 6f72 656d 6f76 6520 2262 696e 6422 0a66  oremove "bind".f
│ │ │ +00230970: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +00230980: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ +00230a30: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ +00230a40: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +00230ac0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +00230ae0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +00230b30: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +00230b60: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +00230ad0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00230af0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +00230b40: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +00230b50: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
..package --r
│ │ │ +00230b80: 656d 6f76 653d 6269 6e64 0a3c 2f63 6f64  emove=bind.
Remedi │ │ │ -00231430: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ -00231440: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -002314d0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -002314e0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -00231500: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -00231520: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -00231530: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -00231570: 3c70 7265 3e3c 636f 6465 3e0a 0a70 6163
..pac
│ │ │ -00231580: 6b61 6765 202d 2d72 656d 6f76 653d 646e  kage --remove=dn
│ │ │ -00231590: 736d 6173 710a 3c2f 636f 6465 3e3c 2f70  smasq.

Remediatio │ │ │ -00231650: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ -00231660: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -002316f0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -00231710: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -00231720: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00231730: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -00231740: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -00231760: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -00231790: 636f 6465 3e0a 696e 636c 7564 6520 7265  code>.include re
│ │ │ -002317a0: 6d6f 7665 5f64 6e73 6d61 7371 0a0a 636c  move_dnsmasq..cl
│ │ │ -002317b0: 6173 7320 7265 6d6f 7665 5f64 6e73 6d61  ass remove_dnsma
│ │ │ -002317c0: 7371 207b 0a20 2070 6163 6b61 6765 207b  sq {.  package {
│ │ │ -002317d0: 2027 646e 736d 6173 7127 3a0a 2020 2020   'dnsmasq':.    
│ │ │ -002317e0: 656e 7375 7265 203d 2667 743b 2027 7075  ensure => 'pu
│ │ │ -002317f0: 7267 6564 272c 0a20 207d 0a7d 0a3c 2f63  rged',.  }.}.
│ │ │ -00231810: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -002318b0: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -002318c0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -002318d0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -00231970: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -002319c0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
- n
│ │ │ -00231a00: 616d 653a 2027 556e 696e 7374 616c 6c20  ame: 'Uninstall 
│ │ │ -00231a10: 646e 736d 6173 7120 5061 636b 6167 653a  dnsmasq Package:
│ │ │ -00231a20: 2045 6e73 7572 6520 646e 736d 6173 7120   Ensure dnsmasq 
│ │ │ -00231a30: 6973 2072 656d 6f76 6564 270a 2020 616e  is removed'.  an
│ │ │ -00231a40: 7369 626c 652e 6275 696c 7469 6e2e 7061  sible.builtin.pa
│ │ │ -00231a50: 636b 6167 653a 0a20 2020 206e 616d 653a  ckage:.    name:
│ │ │ -00231a60: 2064 6e73 6d61 7371 0a20 2020 2073 7461   dnsmasq.    sta
│ │ │ -00231a70: 7465 3a20 6162 7365 6e74 0a20 2074 6167  te: absent.  tag
│ │ │ -00231a80: 733a 0a20 202d 2064 6973 6162 6c65 5f73  s:.  - disable_s
│ │ │ -00231a90: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ -00231aa0: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ -00231ab0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -00231ac0: 2d20 6c6f 775f 7365 7665 7269 7479 0a20  - low_severity. 
│ │ │ -00231ad0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -00231ae0: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ -00231af0: 646e 736d 6173 715f 7265 6d6f 7665 640a  dnsmasq_removed.
│ │ │ -00231b00: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -00231bb0: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ -00231bc0: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ -00231bd0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
Co │ │ │ -00231950: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -00231980: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -002319a0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -002319b0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -002319d0: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -002319e0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
low< │ │ │ -00231c70: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -00231cc0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.# 
│ │ │ -00231d00: 4341 5554 494f 4e3a 2054 6869 7320 7265  CAUTION: This re
│ │ │ -00231d10: 6d65 6469 6174 696f 6e20 7363 7269 7074  mediation script
│ │ │ -00231d20: 2077 696c 6c20 7265 6d6f 7665 2064 6e73   will remove dns
│ │ │ -00231d30: 6d61 7371 0a23 2066 726f 6d20 7468 6520  masq.# from the 
│ │ │ -00231d40: 7379 7374 656d 2c20 616e 6420 6d61 7920  system, and may 
│ │ │ -00231d50: 7265 6d6f 7665 2061 6e79 2070 6163 6b61  remove any packa
│ │ │ -00231d60: 6765 730a 2320 7468 6174 2064 6570 656e  ges.# that depen
│ │ │ -00231d70: 6420 6f6e 2064 6e73 6d61 7371 2e20 4578  d on dnsmasq. Ex
│ │ │ -00231d80: 6563 7574 6520 7468 6973 0a23 2072 656d  ecute this.# rem
│ │ │ -00231d90: 6564 6961 7469 6f6e 2041 4654 4552 2074  ediation AFTER t
│ │ │ -00231da0: 6573 7469 6e67 206f 6e20 6120 6e6f 6e2d  esting on a non-
│ │ │ -00231db0: 7072 6f64 7563 7469 6f6e 0a23 2073 7973  production.# sys
│ │ │ -00231dc0: 7465 6d21 0a0a 0a69 6620 7270 6d20 2d71  tem!...if rpm -q
│ │ │ -00231dd0: 202d 2d71 7569 6574 2022 646e 736d 6173   --quiet "dnsmas
│ │ │ -00231de0: 7122 203b 2074 6865 6e0a 646e 6620 7265  q" ; then.dnf re
│ │ │ -00231df0: 6d6f 7665 202d 7920 2d2d 6e6f 6175 746f  move -y --noauto
│ │ │ -00231e00: 7265 6d6f 7665 2022 646e 736d 6173 7122  remove "dnsmasq"
│ │ │ -00231e10: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.

Co │ │ │ -00231c50: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -00231c80: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -00231ca0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -00231cb0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -00231cd0: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -00231ce0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ +002314f0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +00231510: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +00231540: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +002314d0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +002314e0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +00231500: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +00231520: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +00231530: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ +00231570: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ +00231580: 3a20 2755 6e69 6e73 7461 6c6c 2064 6e73 : 'Uninstall dns │ │ │ +00231590: 6d61 7371 2050 6163 6b61 6765 3a20 456e masq Package: En │ │ │ +002315a0: 7375 7265 2064 6e73 6d61 7371 2069 7320 sure dnsmasq is │ │ │ +002315b0: 7265 6d6f 7665 6427 0a20 2061 6e73 6962 removed'. ansib │ │ │ +002315c0: 6c65 2e62 7569 6c74 696e 2e70 6163 6b61 le.builtin.packa │ │ │ +002315d0: 6765 3a0a 2020 2020 6e61 6d65 3a20 646e ge:. name: dn │ │ │ +002315e0: 736d 6173 710a 2020 2020 7374 6174 653a smasq. state: │ │ │ +002315f0: 2061 6273 656e 740a 2020 7461 6773 3a0a absent. tags:. │ │ │ +00231600: 2020 2d20 6469 7361 626c 655f 7374 7261 - disable_stra │ │ │ +00231610: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d tegy. - low_com │ │ │ +00231620: 706c 6578 6974 790a 2020 2d20 6c6f 775f plexity. - low_ │ │ │ +00231630: 6469 7372 7570 7469 6f6e 0a20 202d 206c disruption. - l │ │ │ +00231640: 6f77 5f73 6576 6572 6974 790a 2020 2d20 ow_severity. - │ │ │ +00231650: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564 no_reboot_needed │ │ │ +00231660: 0a20 202d 2070 6163 6b61 6765 5f64 6e73 . - package_dns │ │ │ +00231670: 6d61 7371 5f72 656d 6f76 6564 0a3c 2f63 masq_removed.
│ │ │ +00231690: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +00231730: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ +00231740: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +00231750: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ +002317d0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +00231800: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +00231820: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +00231830: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +00231850: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +00231860: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.inc
│ │ │ +00231880: 6c75 6465 2072 656d 6f76 655f 646e 736d  lude remove_dnsm
│ │ │ +00231890: 6173 710a 0a63 6c61 7373 2072 656d 6f76  asq..class remov
│ │ │ +002318a0: 655f 646e 736d 6173 7120 7b0a 2020 7061  e_dnsmasq {.  pa
│ │ │ +002318b0: 636b 6167 6520 7b20 2764 6e73 6d61 7371  ckage { 'dnsmasq
│ │ │ +002318c0: 273a 0a20 2020 2065 6e73 7572 6520 3d26  ':.    ensure =&
│ │ │ +002318d0: 6774 3b20 2770 7572 6765 6427 2c0a 2020  gt; 'purged',.  
│ │ │ +002318e0: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Remediation │ │ │ +002319a0: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ +002319b0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ +00231a80: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00231a90: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.# CAUTION: Thi
│ │ │ +00231af0: 7320 7265 6d65 6469 6174 696f 6e20 7363  s remediation sc
│ │ │ +00231b00: 7269 7074 2077 696c 6c20 7265 6d6f 7665  ript will remove
│ │ │ +00231b10: 2064 6e73 6d61 7371 0a23 2066 726f 6d20   dnsmasq.# from 
│ │ │ +00231b20: 7468 6520 7379 7374 656d 2c20 616e 6420  the system, and 
│ │ │ +00231b30: 6d61 7920 7265 6d6f 7665 2061 6e79 2070  may remove any p
│ │ │ +00231b40: 6163 6b61 6765 730a 2320 7468 6174 2064  ackages.# that d
│ │ │ +00231b50: 6570 656e 6420 6f6e 2064 6e73 6d61 7371  epend on dnsmasq
│ │ │ +00231b60: 2e20 4578 6563 7574 6520 7468 6973 0a23  . Execute this.#
│ │ │ +00231b70: 2072 656d 6564 6961 7469 6f6e 2041 4654   remediation AFT
│ │ │ +00231b80: 4552 2074 6573 7469 6e67 206f 6e20 6120  ER testing on a 
│ │ │ +00231b90: 6e6f 6e2d 7072 6f64 7563 7469 6f6e 0a23  non-production.#
│ │ │ +00231ba0: 2073 7973 7465 6d21 0a0a 0a69 6620 7270   system!...if rp
│ │ │ +00231bb0: 6d20 2d71 202d 2d71 7569 6574 2022 646e  m -q --quiet "dn
│ │ │ +00231bc0: 736d 6173 7122 203b 2074 6865 6e0a 646e  smasq" ; then.dn
│ │ │ +00231bd0: 6620 7265 6d6f 7665 202d 7920 2d2d 6e6f  f remove -y --no
│ │ │ +00231be0: 6175 746f 7265 6d6f 7665 2022 646e 736d  autoremove "dnsm
│ │ │ +00231bf0: 6173 7122 0a66 690a 3c2f 636f 6465 3e3c  asq".fi.<
│ │ │ +00231c00: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ +00231cb0: 696f 6e20 416e 6163 6f6e 6461 2073 6e69  ion Anaconda sni
│ │ │ +00231cc0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e  ppet ...
│ │ │ +00231cd0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +00231d00: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
low
Disru │ │ │ +00231a60: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00231a70: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00231ab0: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +00231ac0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ +00231d70: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +00231d90: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +00231dc0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +00231d50: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +00231d60: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +00231da0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +00231db0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

..packa │ │ │ +00231e00: 6765 202d 2d72 656d 6f76 653d 646e 736d ge --remove=dnsm │ │ │ +00231e10: 6173 710a 3c2f 636f 6465 3e3c 2f70 7265 asq.

< │ │ │ 00231e40: 2f74 6162 6c65 3e3c 2f74 643e 3c2f 7472 /table> │ │ │ -002334c0: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ -002334d0: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ -002334e0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -002335b0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -002335c0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
..package --rem
│ │ │ -00233620: 6f76 653d 7673 6674 7064 0a3c 2f63 6f64  ove=vsftpd.
Remed │ │ │ -002336e0: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ -002336f0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
low
Disru │ │ │ -00233590: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -002335a0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -002335e0: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -002335f0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ -002337a0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -002337c0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -002337f0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -00233780: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -00233790: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -002337b0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -002337d0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -002337e0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -00233820: 7072 653e 3c63 6f64 653e 0a69 6e63 6c75 pre>.inclu │ │ │ -00233830: 6465 2072 656d 6f76 655f 7673 6674 7064 de remove_vsftpd │ │ │ -00233840: 0a0a 636c 6173 7320 7265 6d6f 7665 5f76 ..class remove_v │ │ │ -00233850: 7366 7470 6420 7b0a 2020 7061 636b 6167 sftpd {. packag │ │ │ -00233860: 6520 7b20 2776 7366 7470 6427 3a0a 2020 e { 'vsftpd':. │ │ │ -00233870: 2020 656e 7375 7265 203d 2667 743b 2027 ensure => ' │ │ │ -00233880: 7075 7267 6564 272c 0a20 207d 0a7d 0a3c purged',. }.}.< │ │ │ -00233890: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469 /code>R │ │ │ -00233940: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -00233950: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
│ │ │ -002339f0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ -00233a90: 206e 616d 653a 2027 556e 696e 7374 616c   name: 'Uninstal
│ │ │ -00233aa0: 6c20 7673 6674 7064 2050 6163 6b61 6765  l vsftpd Package
│ │ │ -00233ab0: 3a20 456e 7375 7265 2076 7366 7470 6420  : Ensure vsftpd 
│ │ │ -00233ac0: 6973 2072 656d 6f76 6564 270a 2020 616e  is removed'.  an
│ │ │ -00233ad0: 7369 626c 652e 6275 696c 7469 6e2e 7061  sible.builtin.pa
│ │ │ -00233ae0: 636b 6167 653a 0a20 2020 206e 616d 653a  ckage:.    name:
│ │ │ -00233af0: 2076 7366 7470 640a 2020 2020 7374 6174   vsftpd.    stat
│ │ │ -00233b00: 653a 2061 6273 656e 740a 2020 7461 6773  e: absent.  tags
│ │ │ -00233b10: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -00233b20: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ -00233b30: 5354 2d38 3030 2d35 332d 434d 2d37 0a20  ST-800-53-CM-7. 
│ │ │ -00233b40: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -00233b50: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -00233b60: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -00233b70: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -00233b80: 4d2d 372e 3128 6969 290a 2020 2d20 4e49  M-7.1(ii).  - NI
│ │ │ -00233b90: 5354 2d38 3030 2d35 332d 4941 2d35 2831  ST-800-53-IA-5(1
│ │ │ -00233ba0: 2928 6329 0a20 202d 204e 4953 542d 3830  )(c).  - NIST-80
│ │ │ -00233bb0: 302d 3533 2d49 412d 3528 3129 2e31 2876  0-53-IA-5(1).1(v
│ │ │ -00233bc0: 290a 2020 2d20 6469 7361 626c 655f 7374  ).  - disable_st
│ │ │ -00233bd0: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ -00233be0: 7365 7665 7269 7479 0a20 202d 206c 6f77  severity.  - low
│ │ │ -00233bf0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -00233c00: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -00233c10: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -00233c20: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ -00233c30: 7673 6674 7064 5f72 656d 6f76 6564 0a3c  vsftpd_removed.<
│ │ │ -00233c40: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -00233cf0: 656d 6564 6961 7469 6f6e 2053 6865 6c6c emediation Shell │ │ │ -00233d00: 2073 6372 6970 7420 e287 b23c 2f61 3e3c script ...< │ │ │ -00233d10: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
│ │ │ -002339e0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00233a10: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00233a20: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00233a60: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -00233a70: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Com │ │ │ -00233d90: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -00233dc0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -00233de0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -00233df0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -00233e10: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -00233e20: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.# C
│ │ │ -00233e40: 4155 5449 4f4e 3a20 5468 6973 2072 656d  AUTION: This rem
│ │ │ -00233e50: 6564 6961 7469 6f6e 2073 6372 6970 7420  ediation script 
│ │ │ -00233e60: 7769 6c6c 2072 656d 6f76 6520 7673 6674  will remove vsft
│ │ │ -00233e70: 7064 0a23 2066 726f 6d20 7468 6520 7379  pd.# from the sy
│ │ │ -00233e80: 7374 656d 2c20 616e 6420 6d61 7920 7265  stem, and may re
│ │ │ -00233e90: 6d6f 7665 2061 6e79 2070 6163 6b61 6765  move any package
│ │ │ -00233ea0: 730a 2320 7468 6174 2064 6570 656e 6420  s.# that depend 
│ │ │ -00233eb0: 6f6e 2076 7366 7470 642e 2045 7865 6375  on vsftpd. Execu
│ │ │ -00233ec0: 7465 2074 6869 730a 2320 7265 6d65 6469  te this.# remedi
│ │ │ -00233ed0: 6174 696f 6e20 4146 5445 5220 7465 7374  ation AFTER test
│ │ │ -00233ee0: 696e 6720 6f6e 2061 206e 6f6e 2d70 726f  ing on a non-pro
│ │ │ -00233ef0: 6475 6374 696f 6e0a 2320 7379 7374 656d  duction.# system
│ │ │ -00233f00: 210a 0a0a 6966 2072 706d 202d 7120 2d2d  !...if rpm -q --
│ │ │ -00233f10: 7175 6965 7420 2276 7366 7470 6422 203b  quiet "vsftpd" ;
│ │ │ -00233f20: 2074 6865 6e0a 646e 6620 7265 6d6f 7665   then.dnf remove
│ │ │ -00233f30: 202d 7920 2d2d 6e6f 6175 746f 7265 6d6f   -y --noautoremo
│ │ │ -00233f40: 7665 2022 7673 6674 7064 220a 6669 0a3c  ve "vsftpd".fi.<
│ │ │ +002334c0: 5265 6d65 6469 6174 696f 6e20 416e 7369  Remediation Ansi
│ │ │ +002334d0: 626c 6520 736e 6970 7065 7420 e287 b23c  ble snippet ...<
│ │ │ +002334e0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173  /a>
< │ │ │ +002335b0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +002335c0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ +00233610: 2d20 6e61 6d65 3a20 2755 6e69 6e73 7461  - name: 'Uninsta
│ │ │ +00233620: 6c6c 2076 7366 7470 6420 5061 636b 6167  ll vsftpd Packag
│ │ │ +00233630: 653a 2045 6e73 7572 6520 7673 6674 7064  e: Ensure vsftpd
│ │ │ +00233640: 2069 7320 7265 6d6f 7665 6427 0a20 2061   is removed'.  a
│ │ │ +00233650: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ +00233660: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ +00233670: 3a20 7673 6674 7064 0a20 2020 2073 7461  : vsftpd.    sta
│ │ │ +00233680: 7465 3a20 6162 7365 6e74 0a20 2074 6167  te: absent.  tag
│ │ │ +00233690: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +002336a0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ +002336b0: 4953 542d 3830 302d 3533 2d43 4d2d 370a  IST-800-53-CM-7.
│ │ │ +002336c0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +002336d0: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +002336e0: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +002336f0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +00233700: 434d 2d37 2e31 2869 6929 0a20 202d 204e  CM-7.1(ii).  - N
│ │ │ +00233710: 4953 542d 3830 302d 3533 2d49 412d 3528  IST-800-53-IA-5(
│ │ │ +00233720: 3129 2863 290a 2020 2d20 4e49 5354 2d38  1)(c).  - NIST-8
│ │ │ +00233730: 3030 2d35 332d 4941 2d35 2831 292e 3128  00-53-IA-5(1).1(
│ │ │ +00233740: 7629 0a20 202d 2064 6973 6162 6c65 5f73  v).  - disable_s
│ │ │ +00233750: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +00233760: 5f73 6576 6572 6974 790a 2020 2d20 6c6f  _severity.  - lo
│ │ │ +00233770: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +00233780: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +00233790: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +002337a0: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ +002337b0: 5f76 7366 7470 645f 7265 6d6f 7665 640a  _vsftpd_removed.
│ │ │ +002337c0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +00233870: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +00233880: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
Complexity:low
Disrup │ │ │ +00233590: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +002335a0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +002335e0: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ +002335f0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
│ │ │ +00233920: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ +002339c0: 696e 636c 7564 6520 7265 6d6f 7665 5f76  include remove_v
│ │ │ +002339d0: 7366 7470 640a 0a63 6c61 7373 2072 656d  sftpd..class rem
│ │ │ +002339e0: 6f76 655f 7673 6674 7064 207b 0a20 2070  ove_vsftpd {.  p
│ │ │ +002339f0: 6163 6b61 6765 207b 2027 7673 6674 7064  ackage { 'vsftpd
│ │ │ +00233a00: 273a 0a20 2020 2065 6e73 7572 6520 3d26  ':.    ensure =&
│ │ │ +00233a10: 6774 3b20 2770 7572 6765 6427 2c0a 2020  gt; 'purged',.  
│ │ │ +00233a20: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Remediation │ │ │ +00233ae0: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ +00233af0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
│ │ │ +00233910: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00233940: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00233950: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00233990: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +002339a0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity: │ │ │ +00233bc0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00233bd0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.# CAUTION: Thi
│ │ │ +00233c30: 7320 7265 6d65 6469 6174 696f 6e20 7363  s remediation sc
│ │ │ +00233c40: 7269 7074 2077 696c 6c20 7265 6d6f 7665  ript will remove
│ │ │ +00233c50: 2076 7366 7470 640a 2320 6672 6f6d 2074   vsftpd.# from t
│ │ │ +00233c60: 6865 2073 7973 7465 6d2c 2061 6e64 206d  he system, and m
│ │ │ +00233c70: 6179 2072 656d 6f76 6520 616e 7920 7061  ay remove any pa
│ │ │ +00233c80: 636b 6167 6573 0a23 2074 6861 7420 6465  ckages.# that de
│ │ │ +00233c90: 7065 6e64 206f 6e20 7673 6674 7064 2e20  pend on vsftpd. 
│ │ │ +00233ca0: 4578 6563 7574 6520 7468 6973 0a23 2072  Execute this.# r
│ │ │ +00233cb0: 656d 6564 6961 7469 6f6e 2041 4654 4552  emediation AFTER
│ │ │ +00233cc0: 2074 6573 7469 6e67 206f 6e20 6120 6e6f   testing on a no
│ │ │ +00233cd0: 6e2d 7072 6f64 7563 7469 6f6e 0a23 2073  n-production.# s
│ │ │ +00233ce0: 7973 7465 6d21 0a0a 0a69 6620 7270 6d20  ystem!...if rpm 
│ │ │ +00233cf0: 2d71 202d 2d71 7569 6574 2022 7673 6674  -q --quiet "vsft
│ │ │ +00233d00: 7064 2220 3b20 7468 656e 0a64 6e66 2072  pd" ; then.dnf r
│ │ │ +00233d10: 656d 6f76 6520 2d79 202d 2d6e 6f61 7574  emove -y --noaut
│ │ │ +00233d20: 6f72 656d 6f76 6520 2276 7366 7470 6422  oremove "vsftpd"
│ │ │ +00233d30: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.
Remediation │ │ │ +00233df0: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ +00233e00: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
< │ │ │ +00233ec0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00233ed0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
low
Disru │ │ │ +00233ba0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00233bb0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00233bf0: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +00233c00: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexity │ │ │ +00233e90: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ +00233eb0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ +00233ee0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ +00233f00: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +00233f30: 636f 6465 3e0a 0a70 6163 6b61 6765 202d  code>..package -
│ │ │ +00233f40: 2d72 656d 6f76 653d 7673 6674 7064 0a3c  -remove=vsftpd.<
│ │ │  00233f50: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -00234950: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ -00234960: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ -00234970: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -00234a40: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00234a50: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -00234aa0: 0a0a 7061 636b 6167 6520 2d2d 7265 6d6f  ..package --remo
│ │ │ -00234ab0: 7665 3d66 7470 0a3c 2f63 6f64 653e 3c2f  ve=ftp.Remediati
│ │ │ -00234b70: 6f6e 2050 7570 7065 7420 736e 6970 7065  on Puppet snippe
│ │ │ -00234b80: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469  t ...
< │ │ │ -00234c00: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ -00234c40: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 disable
Complexity:low
Disrup │ │ │ -00234a20: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00234a30: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00234a70: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -00234a80: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexit │ │ │ -00234c10: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ -00234c30: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ -00234c60: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ -00234c80: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
│ │ │ -00234cb0: 3c63 6f64 653e 0a69 6e63 6c75 6465 2072  .include r
│ │ │ -00234cc0: 656d 6f76 655f 6674 700a 0a63 6c61 7373  emove_ftp..class
│ │ │ -00234cd0: 2072 656d 6f76 655f 6674 7020 7b0a 2020   remove_ftp {.  
│ │ │ -00234ce0: 7061 636b 6167 6520 7b20 2766 7470 273a  package { 'ftp':
│ │ │ -00234cf0: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ -00234d00: 3b20 2770 7572 6765 6427 2c0a 2020 7d0a  ; 'purged',.  }.
│ │ │ -00234d10: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -00234d20: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -00234dd0: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -00234de0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -00234e60: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -00234e80: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -00234ed0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -00234f00: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: 'Remov
│ │ │ -00234f20: 6520 6674 7020 5061 636b 6167 653a 2045  e ftp Package: E
│ │ │ -00234f30: 6e73 7572 6520 6674 7020 6973 2072 656d  nsure ftp is rem
│ │ │ -00234f40: 6f76 6564 270a 2020 616e 7369 626c 652e  oved'.  ansible.
│ │ │ -00234f50: 6275 696c 7469 6e2e 7061 636b 6167 653a  builtin.package:
│ │ │ -00234f60: 0a20 2020 206e 616d 653a 2066 7470 0a20  .    name: ftp. 
│ │ │ -00234f70: 2020 2073 7461 7465 3a20 6162 7365 6e74     state: absent
│ │ │ -00234f80: 0a20 2074 6167 733a 0a20 202d 2050 4349  .  tags:.  - PCI
│ │ │ -00234f90: 2d44 5353 7634 2d32 2e32 0a20 202d 2050  -DSSv4-2.2.  - P
│ │ │ -00234fa0: 4349 2d44 5353 7634 2d32 2e32 2e34 0a20  CI-DSSv4-2.2.4. 
│ │ │ -00234fb0: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ -00234fc0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ -00234fd0: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -00234fe0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -00234ff0: 775f 7365 7665 7269 7479 0a20 202d 206e  w_severity.  - n
│ │ │ -00235000: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -00235010: 2020 2d20 7061 636b 6167 655f 6674 705f    - package_ftp_
│ │ │ -00235020: 7265 6d6f 7665 640a 3c2f 636f 6465 3e3c  removed.<
│ │ │ -00235030: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ -002350e0: 696f 6e20 5368 656c 6c20 7363 7269 7074  ion Shell script
│ │ │ -002350f0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
< │ │ │ -002351b0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -002351c0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
low
Disr │ │ │ -00234e90: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00234ea0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -00234ee0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -00234ef0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Complexity │ │ │ -00235180: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ -002351a0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ -002351d0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ -002351f0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -00235220: 636f 6465 3e0a 2320 4341 5554 494f 4e3a  code>.# CAUTION:
│ │ │ -00235230: 2054 6869 7320 7265 6d65 6469 6174 696f   This remediatio
│ │ │ -00235240: 6e20 7363 7269 7074 2077 696c 6c20 7265  n script will re
│ │ │ -00235250: 6d6f 7665 2066 7470 0a23 2066 726f 6d20  move ftp.# from 
│ │ │ -00235260: 7468 6520 7379 7374 656d 2c20 616e 6420  the system, and 
│ │ │ -00235270: 6d61 7920 7265 6d6f 7665 2061 6e79 2070  may remove any p
│ │ │ -00235280: 6163 6b61 6765 730a 2320 7468 6174 2064  ackages.# that d
│ │ │ -00235290: 6570 656e 6420 6f6e 2066 7470 2e20 4578  epend on ftp. Ex
│ │ │ -002352a0: 6563 7574 6520 7468 6973 0a23 2072 656d  ecute this.# rem
│ │ │ -002352b0: 6564 6961 7469 6f6e 2041 4654 4552 2074  ediation AFTER t
│ │ │ -002352c0: 6573 7469 6e67 206f 6e20 6120 6e6f 6e2d  esting on a non-
│ │ │ -002352d0: 7072 6f64 7563 7469 6f6e 0a23 2073 7973  production.# sys
│ │ │ -002352e0: 7465 6d21 0a0a 0a69 6620 7270 6d20 2d71  tem!...if rpm -q
│ │ │ -002352f0: 202d 2d71 7569 6574 2022 6674 7022 203b   --quiet "ftp" ;
│ │ │ -00235300: 2074 6865 6e0a 646e 6620 7265 6d6f 7665   then.dnf remove
│ │ │ -00235310: 202d 7920 2d2d 6e6f 6175 746f 7265 6d6f   -y --noautoremo
│ │ │ -00235320: 7665 2022 6674 7022 0a66 690a 3c2f 636f  ve "ftp".fi.
│ │ │ +00234a00: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ +00234aa0: 206e 616d 653a 2027 5265 6d6f 7665 2066   name: 'Remove f
│ │ │ +00234ab0: 7470 2050 6163 6b61 6765 3a20 456e 7375  tp Package: Ensu
│ │ │ +00234ac0: 7265 2066 7470 2069 7320 7265 6d6f 7665  re ftp is remove
│ │ │ +00234ad0: 6427 0a20 2061 6e73 6962 6c65 2e62 7569  d'.  ansible.bui
│ │ │ +00234ae0: 6c74 696e 2e70 6163 6b61 6765 3a0a 2020  ltin.package:.  
│ │ │ +00234af0: 2020 6e61 6d65 3a20 6674 700a 2020 2020    name: ftp.    
│ │ │ +00234b00: 7374 6174 653a 2061 6273 656e 740a 2020  state: absent.  
│ │ │ +00234b10: 7461 6773 3a0a 2020 2d20 5043 492d 4453  tags:.  - PCI-DS
│ │ │ +00234b20: 5376 342d 322e 320a 2020 2d20 5043 492d  Sv4-2.2.  - PCI-
│ │ │ +00234b30: 4453 5376 342d 322e 322e 340a 2020 2d20  DSSv4-2.2.4.  - 
│ │ │ +00234b40: 6469 7361 626c 655f 7374 7261 7465 6779  disable_strategy
│ │ │ +00234b50: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +00234b60: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +00234b70: 7570 7469 6f6e 0a20 202d 206c 6f77 5f73  uption.  - low_s
│ │ │ +00234b80: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ +00234b90: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ +00234ba0: 2070 6163 6b61 6765 5f66 7470 5f72 656d   package_ftp_rem
│ │ │ +00234bb0: 6f76 6564 0a3c 2f63 6f64 653e 3c2f 7072  oved.Remediation
│ │ │ +00234c70: 2050 7570 7065 7420 736e 6970 7065 7420   Puppet snippet 
│ │ │ +00234c80: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620  ...
low< │ │ │ +00234d50: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
│ │ │ +002349f0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00234a20: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00234a30: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00234a70: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +00234a80: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity: │ │ │ +00234d10: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ +00234d30: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:false
St │ │ │ +00234d80: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +00234d90: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
.include rem
│ │ │ +00234dc0: 6f76 655f 6674 700a 0a63 6c61 7373 2072  ove_ftp..class r
│ │ │ +00234dd0: 656d 6f76 655f 6674 7020 7b0a 2020 7061  emove_ftp {.  pa
│ │ │ +00234de0: 636b 6167 6520 7b20 2766 7470 273a 0a20  ckage { 'ftp':. 
│ │ │ +00234df0: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ +00234e00: 2770 7572 6765 6427 2c0a 2020 7d0a 7d0a  'purged',.  }.}.
│ │ │ +00234e10: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +00234ec0: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ +00234ed0: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ +00234ee0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +00234f80: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +00234fd0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.# 
│ │ │ +00235010: 4341 5554 494f 4e3a 2054 6869 7320 7265  CAUTION: This re
│ │ │ +00235020: 6d65 6469 6174 696f 6e20 7363 7269 7074  mediation script
│ │ │ +00235030: 2077 696c 6c20 7265 6d6f 7665 2066 7470   will remove ftp
│ │ │ +00235040: 0a23 2066 726f 6d20 7468 6520 7379 7374  .# from the syst
│ │ │ +00235050: 656d 2c20 616e 6420 6d61 7920 7265 6d6f  em, and may remo
│ │ │ +00235060: 7665 2061 6e79 2070 6163 6b61 6765 730a  ve any packages.
│ │ │ +00235070: 2320 7468 6174 2064 6570 656e 6420 6f6e  # that depend on
│ │ │ +00235080: 2066 7470 2e20 4578 6563 7574 6520 7468   ftp. Execute th
│ │ │ +00235090: 6973 0a23 2072 656d 6564 6961 7469 6f6e  is.# remediation
│ │ │ +002350a0: 2041 4654 4552 2074 6573 7469 6e67 206f   AFTER testing o
│ │ │ +002350b0: 6e20 6120 6e6f 6e2d 7072 6f64 7563 7469  n a non-producti
│ │ │ +002350c0: 6f6e 0a23 2073 7973 7465 6d21 0a0a 0a69  on.# system!...i
│ │ │ +002350d0: 6620 7270 6d20 2d71 202d 2d71 7569 6574  f rpm -q --quiet
│ │ │ +002350e0: 2022 6674 7022 203b 2074 6865 6e0a 646e   "ftp" ; then.dn
│ │ │ +002350f0: 6620 7265 6d6f 7665 202d 7920 2d2d 6e6f  f remove -y --no
│ │ │ +00235100: 6175 746f 7265 6d6f 7665 2022 6674 7022  autoremove "ftp"
│ │ │ +00235110: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.
Remediation │ │ │ +002351d0: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ +002351e0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
< │ │ │ +002352a0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +002352b0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
Co │ │ │ +00234f60: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +00234f90: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +00234fb0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +00234fc0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +00234fe0: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +00234ff0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexity │ │ │ +00235270: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ +00235290: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ +002352c0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ +002352e0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +00235310: 636f 6465 3e0a 0a70 6163 6b61 6765 202d  code>..package -
│ │ │ +00235320: 2d72 656d 6f76 653d 6674 700a 3c2f 636f  -remove=ftp.
< │ │ │ 00235340: 2f64 6976 3e3c 2f74 643e 3c2f 7472 3e3c /div>< │ │ │ 00235350: 2f74 626f 6479 3e3c 2f74 6162 6c65 3e3c /tbody>< │ │ │ 00235360: 2f74 643e 3c2f 7472 3e3c 7472 2064 6174 /td>Remediation Ana │ │ │ -00236950: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ -00236960: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -002369e0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -00236a00: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -00236a50: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -00236a80: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
..package --re
│ │ │ -00236aa0: 6d6f 7665 3d68 7474 7064 0a3c 2f63 6f64  move=httpd.
Remed │ │ │ -00236b60: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ -00236b70: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
low
Disr │ │ │ -00236a10: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00236a20: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -00236a60: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -00236a70: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
│ │ │ -00236c20: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -00236c40: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -00236c70: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -00236c00: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -00236c10: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00236c30: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -00236c50: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -00236c60: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -00236ca0: 7072 653e 3c63 6f64 653e 0a69 6e63 6c75 pre>.inclu │ │ │ -00236cb0: 6465 2072 656d 6f76 655f 6874 7470 640a de remove_httpd. │ │ │ -00236cc0: 0a63 6c61 7373 2072 656d 6f76 655f 6874 .class remove_ht │ │ │ -00236cd0: 7470 6420 7b0a 2020 7061 636b 6167 6520 tpd {. package │ │ │ -00236ce0: 7b20 2768 7474 7064 273a 0a20 2020 2065 { 'httpd':. e │ │ │ -00236cf0: 6e73 7572 6520 3d26 6774 3b20 2770 7572 nsure => 'pur │ │ │ -00236d00: 6765 6427 2c0a 2020 7d0a 7d0a 3c2f 636f ged',. }.}.
< │ │ │ -00236d20: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -00236d30: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -00236d40: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -00236d50: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -00236d60: 6437 3232 2220 7461 6269 6e64 6578 3d22 d722" tabindex=" │ │ │ -00236d70: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -00236d80: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -00236d90: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -00236da0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -00236db0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -00236dc0: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ -00236dd0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -00236de0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -00236e60: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -00236e90: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -00236eb0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -00236ec0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -00236ee0: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -00236ef0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -00236f10: 6d65 3a20 2755 6e69 6e73 7461 6c6c 2068  me: 'Uninstall h
│ │ │ -00236f20: 7474 7064 2050 6163 6b61 6765 3a20 456e  ttpd Package: En
│ │ │ -00236f30: 7375 7265 2068 7474 7064 2069 7320 7265  sure httpd is re
│ │ │ -00236f40: 6d6f 7665 6427 0a20 2061 6e73 6962 6c65  moved'.  ansible
│ │ │ -00236f50: 2e62 7569 6c74 696e 2e70 6163 6b61 6765  .builtin.package
│ │ │ -00236f60: 3a0a 2020 2020 6e61 6d65 3a20 6874 7470  :.    name: http
│ │ │ -00236f70: 640a 2020 2020 7374 6174 653a 2061 6273  d.    state: abs
│ │ │ -00236f80: 656e 740a 2020 7461 6773 3a0a 2020 2d20  ent.  tags:.  - 
│ │ │ -00236f90: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -00236fa0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -00236fb0: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ -00236fc0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -00236fd0: 2862 290a 2020 2d20 6469 7361 626c 655f  (b).  - disable_
│ │ │ -00236fe0: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ -00236ff0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -00237000: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -00237010: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -00237020: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ -00237030: 6874 7470 645f 7265 6d6f 7665 640a 2020  httpd_removed.  
│ │ │ -00237040: 2d20 756e 6b6e 6f77 6e5f 7365 7665 7269  - unknown_severi
│ │ │ -00237050: 7479 0a3c 2f63 6f64 653e 3c2f 7072 653e  ty.
│ │ │ -00237060: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation S │ │ │ -00237110: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ -00237120: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -002371f0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00237200: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -00237250: 0a23 2043 4155 5449 4f4e 3a20 5468 6973  .# CAUTION: This
│ │ │ -00237260: 2072 656d 6564 6961 7469 6f6e 2073 6372   remediation scr
│ │ │ -00237270: 6970 7420 7769 6c6c 2072 656d 6f76 6520  ipt will remove 
│ │ │ -00237280: 6874 7470 640a 2320 6672 6f6d 2074 6865  httpd.# from the
│ │ │ -00237290: 2073 7973 7465 6d2c 2061 6e64 206d 6179   system, and may
│ │ │ -002372a0: 2072 656d 6f76 6520 616e 7920 7061 636b   remove any pack
│ │ │ -002372b0: 6167 6573 0a23 2074 6861 7420 6465 7065  ages.# that depe
│ │ │ -002372c0: 6e64 206f 6e20 6874 7470 642e 2045 7865  nd on httpd. Exe
│ │ │ -002372d0: 6375 7465 2074 6869 730a 2320 7265 6d65  cute this.# reme
│ │ │ -002372e0: 6469 6174 696f 6e20 4146 5445 5220 7465  diation AFTER te
│ │ │ -002372f0: 7374 696e 6720 6f6e 2061 206e 6f6e 2d70  sting on a non-p
│ │ │ -00237300: 726f 6475 6374 696f 6e0a 2320 7379 7374  roduction.# syst
│ │ │ -00237310: 656d 210a 0a0a 6966 2072 706d 202d 7120  em!...if rpm -q 
│ │ │ -00237320: 2d2d 7175 6965 7420 2268 7474 7064 2220  --quiet "httpd" 
│ │ │ -00237330: 3b20 7468 656e 0a64 6e66 2072 656d 6f76  ; then.dnf remov
│ │ │ -00237340: 6520 2d79 202d 2d6e 6f61 7574 6f72 656d  e -y --noautorem
│ │ │ -00237350: 6f76 6520 2268 7474 7064 220a 6669 0a3c  ove "httpd".fi.<
│ │ │ +00236940: 3e52 656d 6564 6961 7469 6f6e 2041 6e73  >Remediation Ans
│ │ │ +00236950: 6962 6c65 2073 6e69 7070 6574 20e2 87b2  ible snippet ...
│ │ │ +00236960: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
Complexity:low
Disrup │ │ │ -002371d0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -002371e0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00237220: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -00237230: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexity: │ │ │ +00236a30: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00236a40: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
- name: 'Uninst
│ │ │ +00236aa0: 616c 6c20 6874 7470 6420 5061 636b 6167  all httpd Packag
│ │ │ +00236ab0: 653a 2045 6e73 7572 6520 6874 7470 6420  e: Ensure httpd 
│ │ │ +00236ac0: 6973 2072 656d 6f76 6564 270a 2020 616e  is removed'.  an
│ │ │ +00236ad0: 7369 626c 652e 6275 696c 7469 6e2e 7061  sible.builtin.pa
│ │ │ +00236ae0: 636b 6167 653a 0a20 2020 206e 616d 653a  ckage:.    name:
│ │ │ +00236af0: 2068 7474 7064 0a20 2020 2073 7461 7465   httpd.    state
│ │ │ +00236b00: 3a20 6162 7365 6e74 0a20 2074 6167 733a  : absent.  tags:
│ │ │ +00236b10: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +00236b20: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ +00236b30: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ +00236b40: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +00236b50: 2d43 4d2d 3728 6229 0a20 202d 2064 6973  -CM-7(b).  - dis
│ │ │ +00236b60: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ +00236b70: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +00236b80: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +00236b90: 696f 6e0a 2020 2d20 6e6f 5f72 6562 6f6f  ion.  - no_reboo
│ │ │ +00236ba0: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ +00236bb0: 6b61 6765 5f68 7474 7064 5f72 656d 6f76  kage_httpd_remov
│ │ │ +00236bc0: 6564 0a20 202d 2075 6e6b 6e6f 776e 5f73  ed.  - unknown_s
│ │ │ +00236bd0: 6576 6572 6974 790a 3c2f 636f 6465 3e3c  everity.<
│ │ │ +00236be0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ +00236c90: 696f 6e20 5075 7070 6574 2073 6e69 7070  ion Puppet snipp
│ │ │ +00236ca0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...
│ │ │ +00236d20: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ +00236db0: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +00236dc0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
low
Disru │ │ │ +00236a10: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00236a20: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00236a60: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +00236a70: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexi │ │ │ +00236d30: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +00236d40: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +00236d80: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +00236d90: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
.include 
│ │ │ +00236de0: 7265 6d6f 7665 5f68 7474 7064 0a0a 636c  remove_httpd..cl
│ │ │ +00236df0: 6173 7320 7265 6d6f 7665 5f68 7474 7064  ass remove_httpd
│ │ │ +00236e00: 207b 0a20 2070 6163 6b61 6765 207b 2027   {.  package { '
│ │ │ +00236e10: 6874 7470 6427 3a0a 2020 2020 656e 7375  httpd':.    ensu
│ │ │ +00236e20: 7265 203d 2667 743b 2027 7075 7267 6564  re => 'purged
│ │ │ +00236e30: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e  ',.  }.}.
│ │ │ +00236e40: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +00236ef0: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ +00236f00: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +00236f80: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +00236f90: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +00236fb0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +00236fc0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +00236fe0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +00237000: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ +00237030: 3c63 6f64 653e 0a23 2043 4155 5449 4f4e  .# CAUTION
│ │ │ +00237040: 3a20 5468 6973 2072 656d 6564 6961 7469  : This remediati
│ │ │ +00237050: 6f6e 2073 6372 6970 7420 7769 6c6c 2072  on script will r
│ │ │ +00237060: 656d 6f76 6520 6874 7470 640a 2320 6672  emove httpd.# fr
│ │ │ +00237070: 6f6d 2074 6865 2073 7973 7465 6d2c 2061  om the system, a
│ │ │ +00237080: 6e64 206d 6179 2072 656d 6f76 6520 616e  nd may remove an
│ │ │ +00237090: 7920 7061 636b 6167 6573 0a23 2074 6861  y packages.# tha
│ │ │ +002370a0: 7420 6465 7065 6e64 206f 6e20 6874 7470  t depend on http
│ │ │ +002370b0: 642e 2045 7865 6375 7465 2074 6869 730a  d. Execute this.
│ │ │ +002370c0: 2320 7265 6d65 6469 6174 696f 6e20 4146  # remediation AF
│ │ │ +002370d0: 5445 5220 7465 7374 696e 6720 6f6e 2061  TER testing on a
│ │ │ +002370e0: 206e 6f6e 2d70 726f 6475 6374 696f 6e0a   non-production.
│ │ │ +002370f0: 2320 7379 7374 656d 210a 0a0a 6966 2072  # system!...if r
│ │ │ +00237100: 706d 202d 7120 2d2d 7175 6965 7420 2268  pm -q --quiet "h
│ │ │ +00237110: 7474 7064 2220 3b20 7468 656e 0a64 6e66  ttpd" ; then.dnf
│ │ │ +00237120: 2072 656d 6f76 6520 2d79 202d 2d6e 6f61   remove -y --noa
│ │ │ +00237130: 7574 6f72 656d 6f76 6520 2268 7474 7064  utoremove "httpd
│ │ │ +00237140: 220a 6669 0a3c 2f63 6f64 653e 3c2f 7072  ".fi.
Remediation │ │ │ +00237200: 2041 6e61 636f 6e64 6120 736e 6970 7065 Anaconda snippe │ │ │ +00237210: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +00237290: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +002372a0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +002372c0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +002372d0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +002372f0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +00237310: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ +00237340: 3c63 6f64 653e 0a0a 7061 636b 6167 6520  ..package 
│ │ │ +00237350: 2d2d 7265 6d6f 7665 3d68 7474 7064 0a3c  --remove=httpd.<
│ │ │  00237360: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Remediation An │ │ │ -00238400: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ -00238410: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -00238490: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -002384b0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -00238500: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -00238530: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -002384a0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -002384c0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -00238510: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -00238520: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
..package --r
│ │ │ -00238550: 656d 6f76 653d 6e67 696e 780a 3c2f 636f  emove=nginx.
< │ │ │ -00238570: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -00238580: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -00238590: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -002385a0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -002385b0: 6437 3236 2220 7461 6269 6e64 6578 3d22 d726" tabindex=" │ │ │ -002385c0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -002385d0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -002385e0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -002385f0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -00238600: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -00238610: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ -00238620: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -002386b0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -002386c0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -002386e0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -00238700: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -00238710: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -00238750: 3c70 7265 3e3c 636f 6465 3e0a 696e 636c
.incl
│ │ │ -00238760: 7564 6520 7265 6d6f 7665 5f6e 6769 6e78  ude remove_nginx
│ │ │ -00238770: 0a0a 636c 6173 7320 7265 6d6f 7665 5f6e  ..class remove_n
│ │ │ -00238780: 6769 6e78 207b 0a20 2070 6163 6b61 6765  ginx {.  package
│ │ │ -00238790: 207b 2027 6e67 696e 7827 3a0a 2020 2020   { 'nginx':.    
│ │ │ -002387a0: 656e 7375 7265 203d 2667 743b 2027 7075  ensure => 'pu
│ │ │ -002387b0: 7267 6564 272c 0a20 207d 0a7d 0a3c 2f63  rged',.  }.}.
│ │ │ -002387d0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -00238870: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -00238880: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -00238890: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -00238930: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -00238980: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
- n
│ │ │ -002389c0: 616d 653a 2027 556e 696e 7374 616c 6c20  ame: 'Uninstall 
│ │ │ -002389d0: 6e67 696e 7820 5061 636b 6167 653a 2045  nginx Package: E
│ │ │ -002389e0: 6e73 7572 6520 6e67 696e 7820 6973 2072  nsure nginx is r
│ │ │ -002389f0: 656d 6f76 6564 270a 2020 616e 7369 626c  emoved'.  ansibl
│ │ │ -00238a00: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ -00238a10: 653a 0a20 2020 206e 616d 653a 206e 6769  e:.    name: ngi
│ │ │ -00238a20: 6e78 0a20 2020 2073 7461 7465 3a20 6162  nx.    state: ab
│ │ │ -00238a30: 7365 6e74 0a20 2074 6167 733a 0a20 202d  sent.  tags:.  -
│ │ │ -00238a40: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -00238a50: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ -00238a60: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ -00238a70: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -00238a80: 3728 6229 0a20 202d 2064 6973 6162 6c65  7(b).  - disable
│ │ │ -00238a90: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ -00238aa0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -00238ab0: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -00238ac0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -00238ad0: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ -00238ae0: 5f6e 6769 6e78 5f72 656d 6f76 6564 0a20  _nginx_removed. 
│ │ │ -00238af0: 202d 2075 6e6b 6e6f 776e 5f73 6576 6572   - unknown_sever
│ │ │ -00238b00: 6974 790a 3c2f 636f 6465 3e3c 2f70 7265  ity.
Remediation │ │ │ -00238bc0: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ -00238bd0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Co │ │ │ -00238910: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -00238940: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -00238960: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -00238970: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -00238990: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -002389a0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexity: │ │ │ -00238ca0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -00238cb0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.# CAUTION: Thi
│ │ │ -00238d10: 7320 7265 6d65 6469 6174 696f 6e20 7363  s remediation sc
│ │ │ -00238d20: 7269 7074 2077 696c 6c20 7265 6d6f 7665  ript will remove
│ │ │ -00238d30: 206e 6769 6e78 0a23 2066 726f 6d20 7468   nginx.# from th
│ │ │ -00238d40: 6520 7379 7374 656d 2c20 616e 6420 6d61  e system, and ma
│ │ │ -00238d50: 7920 7265 6d6f 7665 2061 6e79 2070 6163  y remove any pac
│ │ │ -00238d60: 6b61 6765 730a 2320 7468 6174 2064 6570  kages.# that dep
│ │ │ -00238d70: 656e 6420 6f6e 206e 6769 6e78 2e20 4578  end on nginx. Ex
│ │ │ -00238d80: 6563 7574 6520 7468 6973 0a23 2072 656d  ecute this.# rem
│ │ │ -00238d90: 6564 6961 7469 6f6e 2041 4654 4552 2074  ediation AFTER t
│ │ │ -00238da0: 6573 7469 6e67 206f 6e20 6120 6e6f 6e2d  esting on a non-
│ │ │ -00238db0: 7072 6f64 7563 7469 6f6e 0a23 2073 7973  production.# sys
│ │ │ -00238dc0: 7465 6d21 0a0a 0a69 6620 7270 6d20 2d71  tem!...if rpm -q
│ │ │ -00238dd0: 202d 2d71 7569 6574 2022 6e67 696e 7822   --quiet "nginx"
│ │ │ -00238de0: 203b 2074 6865 6e0a 646e 6620 7265 6d6f   ; then.dnf remo
│ │ │ -00238df0: 7665 202d 7920 2d2d 6e6f 6175 746f 7265  ve -y --noautore
│ │ │ -00238e00: 6d6f 7665 2022 6e67 696e 7822 0a66 690a  move "nginx".fi.
│ │ │ +00238400: 7369 626c 6520 736e 6970 7065 7420 e287  sible snippet ..
│ │ │ +00238410: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
low
Disru │ │ │ -00238c80: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -00238c90: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -00238cd0: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -00238ce0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ +00238490: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +002384b0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +00238500: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ +00238530: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: 'Unins
│ │ │ +00238550: 7461 6c6c 206e 6769 6e78 2050 6163 6b61  tall nginx Packa
│ │ │ +00238560: 6765 3a20 456e 7375 7265 206e 6769 6e78  ge: Ensure nginx
│ │ │ +00238570: 2069 7320 7265 6d6f 7665 6427 0a20 2061   is removed'.  a
│ │ │ +00238580: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ +00238590: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ +002385a0: 3a20 6e67 696e 780a 2020 2020 7374 6174  : nginx.    stat
│ │ │ +002385b0: 653a 2061 6273 656e 740a 2020 7461 6773  e: absent.  tags
│ │ │ +002385c0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +002385d0: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +002385e0: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ +002385f0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +00238600: 332d 434d 2d37 2862 290a 2020 2d20 6469  3-CM-7(b).  - di
│ │ │ +00238610: 7361 626c 655f 7374 7261 7465 6779 0a20  sable_strategy. 
│ │ │ +00238620: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +00238630: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ +00238640: 7469 6f6e 0a20 202d 206e 6f5f 7265 626f  tion.  - no_rebo
│ │ │ +00238650: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ +00238660: 636b 6167 655f 6e67 696e 785f 7265 6d6f  ckage_nginx_remo
│ │ │ +00238670: 7665 640a 2020 2d20 756e 6b6e 6f77 6e5f  ved.  - unknown_
│ │ │ +00238680: 7365 7665 7269 7479 0a3c 2f63 6f64 653e  severity.
│ │ │ +00238690: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +00238740: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ +00238750: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +00238760: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +00238770: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +00238780: 7365 2220 6964 3d22 6964 3732 3622 3e3c se" id="id726">< │ │ │ +00238790: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +002387a0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +002387b0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +002387c0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +002387d0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Disruption:Strategy: │ │ │ +00238860: 3c74 643e 6469 7361 626c 653c 2f74 643e │ │ │ +00238870: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
low
Disr │ │ │ +002384c0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +002384d0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +00238510: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ +00238520: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Complex │ │ │ +002387e0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +002387f0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ +00238830: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +00238840: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
disable
.include │ │ │ +00238890: 2072 656d 6f76 655f 6e67 696e 780a 0a63 remove_nginx..c │ │ │ +002388a0: 6c61 7373 2072 656d 6f76 655f 6e67 696e lass remove_ngin │ │ │ +002388b0: 7820 7b0a 2020 7061 636b 6167 6520 7b20 x {. package { │ │ │ +002388c0: 276e 6769 6e78 273a 0a20 2020 2065 6e73 'nginx':. ens │ │ │ +002388d0: 7572 6520 3d26 6774 3b20 2770 7572 6765 ure => 'purge │ │ │ +002388e0: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 d',. }.}.
Remedi │ │ │ +002389a0: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ +002389b0: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
│ │ │ +00238a30: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +00238a40: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +00238a50: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +00238a90: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +00238aa0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +00238ac0: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +00238ad0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.# CAUTIO
│ │ │ +00238af0: 4e3a 2054 6869 7320 7265 6d65 6469 6174  N: This remediat
│ │ │ +00238b00: 696f 6e20 7363 7269 7074 2077 696c 6c20  ion script will 
│ │ │ +00238b10: 7265 6d6f 7665 206e 6769 6e78 0a23 2066  remove nginx.# f
│ │ │ +00238b20: 726f 6d20 7468 6520 7379 7374 656d 2c20  rom the system, 
│ │ │ +00238b30: 616e 6420 6d61 7920 7265 6d6f 7665 2061  and may remove a
│ │ │ +00238b40: 6e79 2070 6163 6b61 6765 730a 2320 7468  ny packages.# th
│ │ │ +00238b50: 6174 2064 6570 656e 6420 6f6e 206e 6769  at depend on ngi
│ │ │ +00238b60: 6e78 2e20 4578 6563 7574 6520 7468 6973  nx. Execute this
│ │ │ +00238b70: 0a23 2072 656d 6564 6961 7469 6f6e 2041  .# remediation A
│ │ │ +00238b80: 4654 4552 2074 6573 7469 6e67 206f 6e20  FTER testing on 
│ │ │ +00238b90: 6120 6e6f 6e2d 7072 6f64 7563 7469 6f6e  a non-production
│ │ │ +00238ba0: 0a23 2073 7973 7465 6d21 0a0a 0a69 6620  .# system!...if 
│ │ │ +00238bb0: 7270 6d20 2d71 202d 2d71 7569 6574 2022  rpm -q --quiet "
│ │ │ +00238bc0: 6e67 696e 7822 203b 2074 6865 6e0a 646e  nginx" ; then.dn
│ │ │ +00238bd0: 6620 7265 6d6f 7665 202d 7920 2d2d 6e6f  f remove -y --no
│ │ │ +00238be0: 6175 746f 7265 6d6f 7665 2022 6e67 696e  autoremove "ngin
│ │ │ +00238bf0: 7822 0a66 690a 3c2f 636f 6465 3e3c 2f70  x".fi.

Remediatio │ │ │ +00238cb0: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ +00238cc0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +00238d40: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +00238d50: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +00238d60: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +00238da0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +00238db0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +00238dd0: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +00238de0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
..package
│ │ │ +00238e00: 202d 2d72 656d 6f76 653d 6e67 696e 780a   --remove=nginx.
│ │ │  00238e10: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
Remediat │ │ │ -00239db0: 696f 6e20 416e 6163 6f6e 6461 2073 6e69 ion Anaconda sni │ │ │ -00239dc0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -00239dd0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -00239e00: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -00239e70: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -00239e90: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -00239ec0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -00239e50: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -00239e60: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -00239ea0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -00239eb0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

..packa │ │ │ -00239f00: 6765 202d 2d72 656d 6f76 653d 6379 7275 ge --remove=cyru │ │ │ -00239f10: 732d 696d 6170 640a 3c2f 636f 6465 3e3c s-imapd.< │ │ │ -00239f20: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>

Remediat │ │ │ -00239fd0: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ -00239fe0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -0023a060: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -0023a070: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -0023a080: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -0023a0c0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -0023a0d0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -0023a0f0: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -0023a100: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.include 
│ │ │ -0023a120: 7265 6d6f 7665 5f63 7972 7573 2d69 6d61  remove_cyrus-ima
│ │ │ -0023a130: 7064 0a0a 636c 6173 7320 7265 6d6f 7665  pd..class remove
│ │ │ -0023a140: 5f63 7972 7573 2d69 6d61 7064 207b 0a20  _cyrus-imapd {. 
│ │ │ -0023a150: 2070 6163 6b61 6765 207b 2027 6379 7275   package { 'cyru
│ │ │ -0023a160: 732d 696d 6170 6427 3a0a 2020 2020 656e  s-imapd':.    en
│ │ │ -0023a170: 7375 7265 203d 2667 743b 2027 7075 7267  sure => 'purg
│ │ │ -0023a180: 6564 272c 0a20 207d 0a7d 0a3c 2f63 6f64  ed',.  }.}.
Remed │ │ │ -0023a240: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ -0023a250: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -0023a2e0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -0023a2f0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -0023a310: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -0023a330: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -0023a340: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -0023a380: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ -0023a390: 653a 2027 556e 696e 7374 616c 6c20 6379  e: 'Uninstall cy
│ │ │ -0023a3a0: 7275 732d 696d 6170 6420 5061 636b 6167  rus-imapd Packag
│ │ │ -0023a3b0: 653a 2045 6e73 7572 6520 6379 7275 732d  e: Ensure cyrus-
│ │ │ -0023a3c0: 696d 6170 6420 6973 2072 656d 6f76 6564  imapd is removed
│ │ │ -0023a3d0: 270a 2020 616e 7369 626c 652e 6275 696c  '.  ansible.buil
│ │ │ -0023a3e0: 7469 6e2e 7061 636b 6167 653a 0a20 2020  tin.package:.   
│ │ │ -0023a3f0: 206e 616d 653a 2063 7972 7573 2d69 6d61   name: cyrus-ima
│ │ │ -0023a400: 7064 0a20 2020 2073 7461 7465 3a20 6162  pd.    state: ab
│ │ │ -0023a410: 7365 6e74 0a20 2074 6167 733a 0a20 202d  sent.  tags:.  -
│ │ │ -0023a420: 2064 6973 6162 6c65 5f73 7472 6174 6567   disable_strateg
│ │ │ -0023a430: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -0023a440: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -0023a450: 7275 7074 696f 6e0a 2020 2d20 6e6f 5f72  ruption.  - no_r
│ │ │ -0023a460: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ -0023a470: 2070 6163 6b61 6765 5f63 7972 7573 2d69   package_cyrus-i
│ │ │ -0023a480: 6d61 7064 5f72 656d 6f76 6564 0a20 202d  mapd_removed.  -
│ │ │ -0023a490: 2075 6e6b 6e6f 776e 5f73 6576 6572 6974   unknown_severit
│ │ │ -0023a4a0: 790a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  y.
< │ │ │ -0023a4b0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Sh │ │ │ -0023a560: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
│ │ │ -0023a600: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ -0023a6a0: 2320 4341 5554 494f 4e3a 2054 6869 7320  # CAUTION: This 
│ │ │ -0023a6b0: 7265 6d65 6469 6174 696f 6e20 7363 7269  remediation scri
│ │ │ -0023a6c0: 7074 2077 696c 6c20 7265 6d6f 7665 2063  pt will remove c
│ │ │ -0023a6d0: 7972 7573 2d69 6d61 7064 0a23 2066 726f  yrus-imapd.# fro
│ │ │ -0023a6e0: 6d20 7468 6520 7379 7374 656d 2c20 616e  m the system, an
│ │ │ -0023a6f0: 6420 6d61 7920 7265 6d6f 7665 2061 6e79  d may remove any
│ │ │ -0023a700: 2070 6163 6b61 6765 730a 2320 7468 6174   packages.# that
│ │ │ -0023a710: 2064 6570 656e 6420 6f6e 2063 7972 7573   depend on cyrus
│ │ │ -0023a720: 2d69 6d61 7064 2e20 4578 6563 7574 6520  -imapd. Execute 
│ │ │ -0023a730: 7468 6973 0a23 2072 656d 6564 6961 7469  this.# remediati
│ │ │ -0023a740: 6f6e 2041 4654 4552 2074 6573 7469 6e67  on AFTER testing
│ │ │ -0023a750: 206f 6e20 6120 6e6f 6e2d 7072 6f64 7563   on a non-produc
│ │ │ -0023a760: 7469 6f6e 0a23 2073 7973 7465 6d21 0a0a  tion.# system!..
│ │ │ -0023a770: 0a69 6620 7270 6d20 2d71 202d 2d71 7569  .if rpm -q --qui
│ │ │ -0023a780: 6574 2022 6379 7275 732d 696d 6170 6422  et "cyrus-imapd"
│ │ │ -0023a790: 203b 2074 6865 6e0a 646e 6620 7265 6d6f   ; then.dnf remo
│ │ │ -0023a7a0: 7665 202d 7920 2d2d 6e6f 6175 746f 7265  ve -y --noautore
│ │ │ -0023a7b0: 6d6f 7665 2022 6379 7275 732d 696d 6170  move "cyrus-imap
│ │ │ -0023a7c0: 6422 0a66 690a 3c2f 636f 6465 3e3c 2f70  d".fi.


< │ │ │ +00239dd0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +00239de0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +00239df0: 7365 2220 6964 3d22 6964 3733 3022 3e3c se" id="id730">< │ │ │ +00239e00: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +00239e10: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +00239e20: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +00239e30: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +00239e40: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:Strategy: │ │ │ +00239ed0: 3c74 643e 6469 7361 626c 653c 2f74 643e │ │ │ +00239ee0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
│ │ │ -0023a5f0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -0023a620: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -0023a630: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -0023a670: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -0023a680: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complex │ │ │ +00239e50: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +00239e60: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ +00239ea0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +00239eb0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
disable
- name: │ │ │ +00239f00: 2755 6e69 6e73 7461 6c6c 2063 7972 7573 'Uninstall cyrus │ │ │ +00239f10: 2d69 6d61 7064 2050 6163 6b61 6765 3a20 -imapd Package: │ │ │ +00239f20: 456e 7375 7265 2063 7972 7573 2d69 6d61 Ensure cyrus-ima │ │ │ +00239f30: 7064 2069 7320 7265 6d6f 7665 6427 0a20 pd is removed'. │ │ │ +00239f40: 2061 6e73 6962 6c65 2e62 7569 6c74 696e ansible.builtin │ │ │ +00239f50: 2e70 6163 6b61 6765 3a0a 2020 2020 6e61 .package:. na │ │ │ +00239f60: 6d65 3a20 6379 7275 732d 696d 6170 640a me: cyrus-imapd. │ │ │ +00239f70: 2020 2020 7374 6174 653a 2061 6273 656e state: absen │ │ │ +00239f80: 740a 2020 7461 6773 3a0a 2020 2d20 6469 t. tags:. - di │ │ │ +00239f90: 7361 626c 655f 7374 7261 7465 6779 0a20 sable_strategy. │ │ │ +00239fa0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ +00239fb0: 790a 2020 2d20 6c6f 775f 6469 7372 7570 y. - low_disrup │ │ │ +00239fc0: 7469 6f6e 0a20 202d 206e 6f5f 7265 626f tion. - no_rebo │ │ │ +00239fd0: 6f74 5f6e 6565 6465 640a 2020 2d20 7061 ot_needed. - pa │ │ │ +00239fe0: 636b 6167 655f 6379 7275 732d 696d 6170 ckage_cyrus-imap │ │ │ +00239ff0: 645f 7265 6d6f 7665 640a 2020 2d20 756e d_removed. - un │ │ │ +0023a000: 6b6e 6f77 6e5f 7365 7665 7269 7479 0a3c known_severity.< │ │ │ +0023a010: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469 /code>
R │ │ │ +0023a0c0: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ +0023a0d0: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
< │ │ │ +0023a170: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0023a180: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +0023a1d0: 3c74 723e 3c74 683e 5374 7261 7465 6779
.i
│ │ │ +0023a210: 6e63 6c75 6465 2072 656d 6f76 655f 6379  nclude remove_cy
│ │ │ +0023a220: 7275 732d 696d 6170 640a 0a63 6c61 7373  rus-imapd..class
│ │ │ +0023a230: 2072 656d 6f76 655f 6379 7275 732d 696d   remove_cyrus-im
│ │ │ +0023a240: 6170 6420 7b0a 2020 7061 636b 6167 6520  apd {.  package 
│ │ │ +0023a250: 7b20 2763 7972 7573 2d69 6d61 7064 273a  { 'cyrus-imapd':
│ │ │ +0023a260: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ +0023a270: 3b20 2770 7572 6765 6427 2c0a 2020 7d0a  ; 'purged',.  }.
│ │ │ +0023a280: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ +0023a290: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Sh │ │ │ +0023a340: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
C │ │ │ +0023a160: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +0023a190: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +0023a1a0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +0023a1e0: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ +0023a1f0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ +0023a3e0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ +0023a480: 2320 4341 5554 494f 4e3a 2054 6869 7320  # CAUTION: This 
│ │ │ +0023a490: 7265 6d65 6469 6174 696f 6e20 7363 7269  remediation scri
│ │ │ +0023a4a0: 7074 2077 696c 6c20 7265 6d6f 7665 2063  pt will remove c
│ │ │ +0023a4b0: 7972 7573 2d69 6d61 7064 0a23 2066 726f  yrus-imapd.# fro
│ │ │ +0023a4c0: 6d20 7468 6520 7379 7374 656d 2c20 616e  m the system, an
│ │ │ +0023a4d0: 6420 6d61 7920 7265 6d6f 7665 2061 6e79  d may remove any
│ │ │ +0023a4e0: 2070 6163 6b61 6765 730a 2320 7468 6174   packages.# that
│ │ │ +0023a4f0: 2064 6570 656e 6420 6f6e 2063 7972 7573   depend on cyrus
│ │ │ +0023a500: 2d69 6d61 7064 2e20 4578 6563 7574 6520  -imapd. Execute 
│ │ │ +0023a510: 7468 6973 0a23 2072 656d 6564 6961 7469  this.# remediati
│ │ │ +0023a520: 6f6e 2041 4654 4552 2074 6573 7469 6e67  on AFTER testing
│ │ │ +0023a530: 206f 6e20 6120 6e6f 6e2d 7072 6f64 7563   on a non-produc
│ │ │ +0023a540: 7469 6f6e 0a23 2073 7973 7465 6d21 0a0a  tion.# system!..
│ │ │ +0023a550: 0a69 6620 7270 6d20 2d71 202d 2d71 7569  .if rpm -q --qui
│ │ │ +0023a560: 6574 2022 6379 7275 732d 696d 6170 6422  et "cyrus-imapd"
│ │ │ +0023a570: 203b 2074 6865 6e0a 646e 6620 7265 6d6f   ; then.dnf remo
│ │ │ +0023a580: 7665 202d 7920 2d2d 6e6f 6175 746f 7265  ve -y --noautore
│ │ │ +0023a590: 6d6f 7665 2022 6379 7275 732d 696d 6170  move "cyrus-imap
│ │ │ +0023a5a0: 6422 0a66 690a 3c2f 636f 6465 3e3c 2f70  d".fi.

Remediatio │ │ │ +0023a660: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ +0023a670: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +0023a6f0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ +0023a780: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +0023a790: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
│ │ │ +0023a3d0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +0023a400: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +0023a410: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +0023a450: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +0023a460: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexi │ │ │ +0023a700: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +0023a710: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +0023a750: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +0023a760: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
..package
│ │ │ +0023a7b0: 202d 2d72 656d 6f76 653d 6379 7275 732d   --remove=cyrus-
│ │ │ +0023a7c0: 696d 6170 640a 3c2f 636f 6465 3e3c 2f70  imapd.

< │ │ │ 0023a7e0: 2f74 643e 3c2f 7472 3e3c 2f74 626f 6479 /td>Remedi │ │ │ -0023b350: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ -0023b360: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -0023b3f0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -0023b400: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -0023b420: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -0023b440: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -0023b450: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -0023b490: 3c70 7265 3e3c 636f 6465 3e0a 0a70 6163
..pac
│ │ │ -0023b4a0: 6b61 6765 202d 2d72 656d 6f76 653d 646f  kage --remove=do
│ │ │ -0023b4b0: 7665 636f 740a 3c2f 636f 6465 3e3c 2f70  vecot.

Remediatio │ │ │ -0023b570: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ -0023b580: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -0023b610: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -0023b630: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -0023b640: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0023b650: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -0023b660: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -0023b680: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -0023b6b0: 636f 6465 3e0a 696e 636c 7564 6520 7265  code>.include re
│ │ │ -0023b6c0: 6d6f 7665 5f64 6f76 6563 6f74 0a0a 636c  move_dovecot..cl
│ │ │ -0023b6d0: 6173 7320 7265 6d6f 7665 5f64 6f76 6563  ass remove_dovec
│ │ │ -0023b6e0: 6f74 207b 0a20 2070 6163 6b61 6765 207b  ot {.  package {
│ │ │ -0023b6f0: 2027 646f 7665 636f 7427 3a0a 2020 2020   'dovecot':.    
│ │ │ -0023b700: 656e 7375 7265 203d 2667 743b 2027 7075  ensure => 'pu
│ │ │ -0023b710: 7267 6564 272c 0a20 207d 0a7d 0a3c 2f63  rged',.  }.}.
│ │ │ -0023b730: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -0023b7d0: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -0023b7e0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -0023b7f0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -0023b890: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -0023b8e0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
- n
│ │ │ -0023b920: 616d 653a 2027 556e 696e 7374 616c 6c20  ame: 'Uninstall 
│ │ │ -0023b930: 646f 7665 636f 7420 5061 636b 6167 653a  dovecot Package:
│ │ │ -0023b940: 2045 6e73 7572 6520 646f 7665 636f 7420   Ensure dovecot 
│ │ │ -0023b950: 6973 2072 656d 6f76 6564 270a 2020 616e  is removed'.  an
│ │ │ -0023b960: 7369 626c 652e 6275 696c 7469 6e2e 7061  sible.builtin.pa
│ │ │ -0023b970: 636b 6167 653a 0a20 2020 206e 616d 653a  ckage:.    name:
│ │ │ -0023b980: 2064 6f76 6563 6f74 0a20 2020 2073 7461   dovecot.    sta
│ │ │ -0023b990: 7465 3a20 6162 7365 6e74 0a20 2074 6167  te: absent.  tag
│ │ │ -0023b9a0: 733a 0a20 202d 2064 6973 6162 6c65 5f73  s:.  - disable_s
│ │ │ -0023b9b0: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ -0023b9c0: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ -0023b9d0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -0023b9e0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -0023b9f0: 6564 0a20 202d 2070 6163 6b61 6765 5f64  ed.  - package_d
│ │ │ -0023ba00: 6f76 6563 6f74 5f72 656d 6f76 6564 0a20  ovecot_removed. 
│ │ │ -0023ba10: 202d 2075 6e6b 6e6f 776e 5f73 6576 6572   - unknown_sever
│ │ │ -0023ba20: 6974 790a 3c2f 636f 6465 3e3c 2f70 7265  ity.
Remediation │ │ │ -0023bae0: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ -0023baf0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Co │ │ │ -0023b870: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -0023b8a0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -0023b8c0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -0023b8d0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -0023b8f0: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -0023b900: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexity: │ │ │ -0023bbc0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -0023bbd0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.# CAUTION: Thi
│ │ │ -0023bc30: 7320 7265 6d65 6469 6174 696f 6e20 7363  s remediation sc
│ │ │ -0023bc40: 7269 7074 2077 696c 6c20 7265 6d6f 7665  ript will remove
│ │ │ -0023bc50: 2064 6f76 6563 6f74 0a23 2066 726f 6d20   dovecot.# from 
│ │ │ -0023bc60: 7468 6520 7379 7374 656d 2c20 616e 6420  the system, and 
│ │ │ -0023bc70: 6d61 7920 7265 6d6f 7665 2061 6e79 2070  may remove any p
│ │ │ -0023bc80: 6163 6b61 6765 730a 2320 7468 6174 2064  ackages.# that d
│ │ │ -0023bc90: 6570 656e 6420 6f6e 2064 6f76 6563 6f74  epend on dovecot
│ │ │ -0023bca0: 2e20 4578 6563 7574 6520 7468 6973 0a23  . Execute this.#
│ │ │ -0023bcb0: 2072 656d 6564 6961 7469 6f6e 2041 4654   remediation AFT
│ │ │ -0023bcc0: 4552 2074 6573 7469 6e67 206f 6e20 6120  ER testing on a 
│ │ │ -0023bcd0: 6e6f 6e2d 7072 6f64 7563 7469 6f6e 0a23  non-production.#
│ │ │ -0023bce0: 2073 7973 7465 6d21 0a0a 0a69 6620 7270   system!...if rp
│ │ │ -0023bcf0: 6d20 2d71 202d 2d71 7569 6574 2022 646f  m -q --quiet "do
│ │ │ -0023bd00: 7665 636f 7422 203b 2074 6865 6e0a 646e  vecot" ; then.dn
│ │ │ -0023bd10: 6620 7265 6d6f 7665 202d 7920 2d2d 6e6f  f remove -y --no
│ │ │ -0023bd20: 6175 746f 7265 6d6f 7665 2022 646f 7665  autoremove "dove
│ │ │ -0023bd30: 636f 7422 0a66 690a 3c2f 636f 6465 3e3c  cot".fi.<
│ │ │ +0023b350: 6174 696f 6e20 416e 7369 626c 6520 736e  ation Ansible sn
│ │ │ +0023b360: 6970 7065 7420 e287 b23c 2f61 3e3c 6272  ippet ...
low
Disru │ │ │ -0023bba0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -0023bbb0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -0023bbf0: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -0023bc00: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ +0023b410: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +0023b430: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +0023b460: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +0023b3f0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +0023b400: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +0023b420: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +0023b440: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +0023b450: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ +0023b490: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ +0023b4a0: 3a20 2755 6e69 6e73 7461 6c6c 2064 6f76 : 'Uninstall dov │ │ │ +0023b4b0: 6563 6f74 2050 6163 6b61 6765 3a20 456e ecot Package: En │ │ │ +0023b4c0: 7375 7265 2064 6f76 6563 6f74 2069 7320 sure dovecot is │ │ │ +0023b4d0: 7265 6d6f 7665 6427 0a20 2061 6e73 6962 removed'. ansib │ │ │ +0023b4e0: 6c65 2e62 7569 6c74 696e 2e70 6163 6b61 le.builtin.packa │ │ │ +0023b4f0: 6765 3a0a 2020 2020 6e61 6d65 3a20 646f ge:. name: do │ │ │ +0023b500: 7665 636f 740a 2020 2020 7374 6174 653a vecot. state: │ │ │ +0023b510: 2061 6273 656e 740a 2020 7461 6773 3a0a absent. tags:. │ │ │ +0023b520: 2020 2d20 6469 7361 626c 655f 7374 7261 - disable_stra │ │ │ +0023b530: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d tegy. - low_com │ │ │ +0023b540: 706c 6578 6974 790a 2020 2d20 6c6f 775f plexity. - low_ │ │ │ +0023b550: 6469 7372 7570 7469 6f6e 0a20 202d 206e disruption. - n │ │ │ +0023b560: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a o_reboot_needed. │ │ │ +0023b570: 2020 2d20 7061 636b 6167 655f 646f 7665 - package_dove │ │ │ +0023b580: 636f 745f 7265 6d6f 7665 640a 2020 2d20 cot_removed. - │ │ │ +0023b590: 756e 6b6e 6f77 6e5f 7365 7665 7269 7479 unknown_severity │ │ │ +0023b5a0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .Remediation Pup │ │ │ +0023b660: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ +0023b670: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ +0023b740: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +0023b750: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ +0023b7a0: 0a69 6e63 6c75 6465 2072 656d 6f76 655f  .include remove_
│ │ │ +0023b7b0: 646f 7665 636f 740a 0a63 6c61 7373 2072  dovecot..class r
│ │ │ +0023b7c0: 656d 6f76 655f 646f 7665 636f 7420 7b0a  emove_dovecot {.
│ │ │ +0023b7d0: 2020 7061 636b 6167 6520 7b20 2764 6f76    package { 'dov
│ │ │ +0023b7e0: 6563 6f74 273a 0a20 2020 2065 6e73 7572  ecot':.    ensur
│ │ │ +0023b7f0: 6520 3d26 6774 3b20 2770 7572 6765 6427  e => 'purged'
│ │ │ +0023b800: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ +0023b810: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ +0023b8c0: 696f 6e20 5368 656c 6c20 7363 7269 7074  ion Shell script
│ │ │ +0023b8d0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
< │ │ │ +0023b990: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0023b9a0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
Complexity:low
Disrup │ │ │ +0023b720: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +0023b730: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +0023b770: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ +0023b780: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexity │ │ │ +0023b960: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ +0023b980: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ +0023b9b0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ +0023b9d0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +0023ba00: 636f 6465 3e0a 2320 4341 5554 494f 4e3a  code>.# CAUTION:
│ │ │ +0023ba10: 2054 6869 7320 7265 6d65 6469 6174 696f   This remediatio
│ │ │ +0023ba20: 6e20 7363 7269 7074 2077 696c 6c20 7265  n script will re
│ │ │ +0023ba30: 6d6f 7665 2064 6f76 6563 6f74 0a23 2066  move dovecot.# f
│ │ │ +0023ba40: 726f 6d20 7468 6520 7379 7374 656d 2c20  rom the system, 
│ │ │ +0023ba50: 616e 6420 6d61 7920 7265 6d6f 7665 2061  and may remove a
│ │ │ +0023ba60: 6e79 2070 6163 6b61 6765 730a 2320 7468  ny packages.# th
│ │ │ +0023ba70: 6174 2064 6570 656e 6420 6f6e 2064 6f76  at depend on dov
│ │ │ +0023ba80: 6563 6f74 2e20 4578 6563 7574 6520 7468  ecot. Execute th
│ │ │ +0023ba90: 6973 0a23 2072 656d 6564 6961 7469 6f6e  is.# remediation
│ │ │ +0023baa0: 2041 4654 4552 2074 6573 7469 6e67 206f   AFTER testing o
│ │ │ +0023bab0: 6e20 6120 6e6f 6e2d 7072 6f64 7563 7469  n a non-producti
│ │ │ +0023bac0: 6f6e 0a23 2073 7973 7465 6d21 0a0a 0a69  on.# system!...i
│ │ │ +0023bad0: 6620 7270 6d20 2d71 202d 2d71 7569 6574  f rpm -q --quiet
│ │ │ +0023bae0: 2022 646f 7665 636f 7422 203b 2074 6865   "dovecot" ; the
│ │ │ +0023baf0: 6e0a 646e 6620 7265 6d6f 7665 202d 7920  n.dnf remove -y 
│ │ │ +0023bb00: 2d2d 6e6f 6175 746f 7265 6d6f 7665 2022  --noautoremove "
│ │ │ +0023bb10: 646f 7665 636f 7422 0a66 690a 3c2f 636f  dovecot".fi.
< │ │ │ +0023bb30: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +0023bb40: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +0023bb50: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +0023bb60: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +0023bb70: 6437 3338 2220 7461 6269 6e64 6578 3d22 d738" tabindex=" │ │ │ +0023bb80: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +0023bb90: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +0023bba0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +0023bbb0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +0023bbc0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +0023bbd0: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ +0023bbe0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +0023bbf0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +0023bc90: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0023bce0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
..p
│ │ │ +0023bd20: 6163 6b61 6765 202d 2d72 656d 6f76 653d  ackage --remove=
│ │ │ +0023bd30: 646f 7665 636f 740a 3c2f 636f 6465 3e3c  dovecot.<
│ │ │  0023bd40: 2f70 7265 3e3c 2f64 6976 3e3c 2f64 6976  /pre>
Co │ │ │ +0023bc70: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0023bca0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0023bcc0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0023bcd0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0023bcf0: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +0023bd00: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ 0023bd70: 3c2f 7472 3e3c 7472 2064 6174 612d 7474 Remedia │ │ │ -0023d0b0: 7469 6f6e 2041 6e61 636f 6e64 6120 736e tion Anaconda sn │ │ │ -0023d0c0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -0023d170: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -0023d190: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -0023d1c0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -0023d150: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -0023d160: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -0023d180: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -0023d1a0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -0023d1b0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -0023d1f0: 7072 653e 3c63 6f64 653e 0a0a 7061 636b pre>..pack │ │ │ -0023d200: 6167 6520 2d2d 7265 6d6f 7665 3d6f 7065 age --remove=ope │ │ │ -0023d210: 6e6c 6461 702d 636c 6965 6e74 730a 3c2f nldap-clients.
Re │ │ │ -0023d2d0: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ -0023d2e0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -0023d2f0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -0023d390: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -0023d3e0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.in
│ │ │ -0023d420: 636c 7564 6520 7265 6d6f 7665 5f6f 7065  clude remove_ope
│ │ │ -0023d430: 6e6c 6461 702d 636c 6965 6e74 730a 0a63  nldap-clients..c
│ │ │ -0023d440: 6c61 7373 2072 656d 6f76 655f 6f70 656e  lass remove_open
│ │ │ -0023d450: 6c64 6170 2d63 6c69 656e 7473 207b 0a20  ldap-clients {. 
│ │ │ -0023d460: 2070 6163 6b61 6765 207b 2027 6f70 656e   package { 'open
│ │ │ -0023d470: 6c64 6170 2d63 6c69 656e 7473 273a 0a20  ldap-clients':. 
│ │ │ -0023d480: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ -0023d490: 2770 7572 6765 6427 2c0a 2020 7d0a 7d0a  'purged',.  }.}.
│ │ │ -0023d4a0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -0023d550: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -0023d560: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -0023d570: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
Co │ │ │ -0023d370: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -0023d3a0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -0023d3c0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -0023d3d0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -0023d3f0: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -0023d400: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ -0023d640: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0023d650: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -0023d6a0: 2d20 6e61 6d65 3a20 2745 6e73 7572 6520  - name: 'Ensure 
│ │ │ -0023d6b0: 4c44 4150 2063 6c69 656e 7420 6973 206e  LDAP client is n
│ │ │ -0023d6c0: 6f74 2069 6e73 7461 6c6c 6564 3a20 456e  ot installed: En
│ │ │ -0023d6d0: 7375 7265 206f 7065 6e6c 6461 702d 636c  sure openldap-cl
│ │ │ -0023d6e0: 6965 6e74 7320 6973 2072 656d 6f76 6564  ients is removed
│ │ │ -0023d6f0: 270a 2020 616e 7369 626c 652e 6275 696c  '.  ansible.buil
│ │ │ -0023d700: 7469 6e2e 7061 636b 6167 653a 0a20 2020  tin.package:.   
│ │ │ -0023d710: 206e 616d 653a 206f 7065 6e6c 6461 702d   name: openldap-
│ │ │ -0023d720: 636c 6965 6e74 730a 2020 2020 7374 6174  clients.    stat
│ │ │ -0023d730: 653a 2061 6273 656e 740a 2020 7461 6773  e: absent.  tags
│ │ │ -0023d740: 3a0a 2020 2d20 6469 7361 626c 655f 7374  :.  - disable_st
│ │ │ -0023d750: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ -0023d760: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -0023d770: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -0023d780: 206c 6f77 5f73 6576 6572 6974 790a 2020   low_severity.  
│ │ │ -0023d790: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -0023d7a0: 6564 0a20 202d 2070 6163 6b61 6765 5f6f  ed.  - package_o
│ │ │ -0023d7b0: 7065 6e6c 6461 702d 636c 6965 6e74 735f  penldap-clients_
│ │ │ -0023d7c0: 7265 6d6f 7665 640a 3c2f 636f 6465 3e3c  removed.<
│ │ │ -0023d7d0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ -0023d880: 696f 6e20 5368 656c 6c20 7363 7269 7074  ion Shell script
│ │ │ -0023d890: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
< │ │ │ -0023d950: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0023d960: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
Complexity:low
Disrup │ │ │ -0023d620: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0023d630: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0023d670: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -0023d680: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexity │ │ │ -0023d920: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ -0023d940: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ -0023d970: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ -0023d990: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -0023d9c0: 636f 6465 3e0a 2320 4341 5554 494f 4e3a  code>.# CAUTION:
│ │ │ -0023d9d0: 2054 6869 7320 7265 6d65 6469 6174 696f   This remediatio
│ │ │ -0023d9e0: 6e20 7363 7269 7074 2077 696c 6c20 7265  n script will re
│ │ │ -0023d9f0: 6d6f 7665 206f 7065 6e6c 6461 702d 636c  move openldap-cl
│ │ │ -0023da00: 6965 6e74 730a 2320 6672 6f6d 2074 6865  ients.# from the
│ │ │ -0023da10: 2073 7973 7465 6d2c 2061 6e64 206d 6179   system, and may
│ │ │ -0023da20: 2072 656d 6f76 6520 616e 7920 7061 636b   remove any pack
│ │ │ -0023da30: 6167 6573 0a23 2074 6861 7420 6465 7065  ages.# that depe
│ │ │ -0023da40: 6e64 206f 6e20 6f70 656e 6c64 6170 2d63  nd on openldap-c
│ │ │ -0023da50: 6c69 656e 7473 2e20 4578 6563 7574 6520  lients. Execute 
│ │ │ -0023da60: 7468 6973 0a23 2072 656d 6564 6961 7469  this.# remediati
│ │ │ -0023da70: 6f6e 2041 4654 4552 2074 6573 7469 6e67  on AFTER testing
│ │ │ -0023da80: 206f 6e20 6120 6e6f 6e2d 7072 6f64 7563   on a non-produc
│ │ │ -0023da90: 7469 6f6e 0a23 2073 7973 7465 6d21 0a0a  tion.# system!..
│ │ │ -0023daa0: 0a69 6620 7270 6d20 2d71 202d 2d71 7569  .if rpm -q --qui
│ │ │ -0023dab0: 6574 2022 6f70 656e 6c64 6170 2d63 6c69  et "openldap-cli
│ │ │ -0023dac0: 656e 7473 2220 3b20 7468 656e 0a64 6e66  ents" ; then.dnf
│ │ │ -0023dad0: 2072 656d 6f76 6520 2d79 202d 2d6e 6f61   remove -y --noa
│ │ │ -0023dae0: 7574 6f72 656d 6f76 6520 226f 7065 6e6c  utoremove "openl
│ │ │ -0023daf0: 6461 702d 636c 6965 6e74 7322 0a66 690a  dap-clients".fi.
│ │ │ +0023d0b0: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69  tion Ansible sni
│ │ │ +0023d0c0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e  ppet ...
│ │ │ +0023d0d0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +0023d100: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +0023d170: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +0023d190: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +0023d1c0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +0023d150: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +0023d160: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +0023d1a0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +0023d1b0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

- name: │ │ │ +0023d200: 2027 456e 7375 7265 204c 4441 5020 636c 'Ensure LDAP cl │ │ │ +0023d210: 6965 6e74 2069 7320 6e6f 7420 696e 7374 ient is not inst │ │ │ +0023d220: 616c 6c65 643a 2045 6e73 7572 6520 6f70 alled: Ensure op │ │ │ +0023d230: 656e 6c64 6170 2d63 6c69 656e 7473 2069 enldap-clients i │ │ │ +0023d240: 7320 7265 6d6f 7665 6427 0a20 2061 6e73 s removed'. ans │ │ │ +0023d250: 6962 6c65 2e62 7569 6c74 696e 2e70 6163 ible.builtin.pac │ │ │ +0023d260: 6b61 6765 3a0a 2020 2020 6e61 6d65 3a20 kage:. name: │ │ │ +0023d270: 6f70 656e 6c64 6170 2d63 6c69 656e 7473 openldap-clients │ │ │ +0023d280: 0a20 2020 2073 7461 7465 3a20 6162 7365 . state: abse │ │ │ +0023d290: 6e74 0a20 2074 6167 733a 0a20 202d 2064 nt. tags:. - d │ │ │ +0023d2a0: 6973 6162 6c65 5f73 7472 6174 6567 790a isable_strategy. │ │ │ +0023d2b0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ +0023d2c0: 7479 0a20 202d 206c 6f77 5f64 6973 7275 ty. - low_disru │ │ │ +0023d2d0: 7074 696f 6e0a 2020 2d20 6c6f 775f 7365 ption. - low_se │ │ │ +0023d2e0: 7665 7269 7479 0a20 202d 206e 6f5f 7265 verity. - no_re │ │ │ +0023d2f0: 626f 6f74 5f6e 6565 6465 640a 2020 2d20 boot_needed. - │ │ │ +0023d300: 7061 636b 6167 655f 6f70 656e 6c64 6170 package_openldap │ │ │ +0023d310: 2d63 6c69 656e 7473 5f72 656d 6f76 6564 -clients_removed │ │ │ +0023d320: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .

Remediation Pup │ │ │ +0023d3e0: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ +0023d3f0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ +0023d4c0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +0023d4d0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ +0023d520: 0a69 6e63 6c75 6465 2072 656d 6f76 655f  .include remove_
│ │ │ +0023d530: 6f70 656e 6c64 6170 2d63 6c69 656e 7473  openldap-clients
│ │ │ +0023d540: 0a0a 636c 6173 7320 7265 6d6f 7665 5f6f  ..class remove_o
│ │ │ +0023d550: 7065 6e6c 6461 702d 636c 6965 6e74 7320  penldap-clients 
│ │ │ +0023d560: 7b0a 2020 7061 636b 6167 6520 7b20 276f  {.  package { 'o
│ │ │ +0023d570: 7065 6e6c 6461 702d 636c 6965 6e74 7327  penldap-clients'
│ │ │ +0023d580: 3a0a 2020 2020 656e 7375 7265 203d 2667  :.    ensure =&g
│ │ │ +0023d590: 743b 2027 7075 7267 6564 272c 0a20 207d  t; 'purged',.  }
│ │ │ +0023d5a0: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e  .}.
│ │ │ +0023d5b0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation S │ │ │ +0023d660: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ +0023d670: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
Complexity:low
Disrup │ │ │ +0023d4a0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +0023d4b0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +0023d4f0: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ +0023d500: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ +0023d740: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +0023d750: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ +0023d7a0: 0a23 2043 4155 5449 4f4e 3a20 5468 6973  .# CAUTION: This
│ │ │ +0023d7b0: 2072 656d 6564 6961 7469 6f6e 2073 6372   remediation scr
│ │ │ +0023d7c0: 6970 7420 7769 6c6c 2072 656d 6f76 6520  ipt will remove 
│ │ │ +0023d7d0: 6f70 656e 6c64 6170 2d63 6c69 656e 7473  openldap-clients
│ │ │ +0023d7e0: 0a23 2066 726f 6d20 7468 6520 7379 7374  .# from the syst
│ │ │ +0023d7f0: 656d 2c20 616e 6420 6d61 7920 7265 6d6f  em, and may remo
│ │ │ +0023d800: 7665 2061 6e79 2070 6163 6b61 6765 730a  ve any packages.
│ │ │ +0023d810: 2320 7468 6174 2064 6570 656e 6420 6f6e  # that depend on
│ │ │ +0023d820: 206f 7065 6e6c 6461 702d 636c 6965 6e74   openldap-client
│ │ │ +0023d830: 732e 2045 7865 6375 7465 2074 6869 730a  s. Execute this.
│ │ │ +0023d840: 2320 7265 6d65 6469 6174 696f 6e20 4146  # remediation AF
│ │ │ +0023d850: 5445 5220 7465 7374 696e 6720 6f6e 2061  TER testing on a
│ │ │ +0023d860: 206e 6f6e 2d70 726f 6475 6374 696f 6e0a   non-production.
│ │ │ +0023d870: 2320 7379 7374 656d 210a 0a0a 6966 2072  # system!...if r
│ │ │ +0023d880: 706d 202d 7120 2d2d 7175 6965 7420 226f  pm -q --quiet "o
│ │ │ +0023d890: 7065 6e6c 6461 702d 636c 6965 6e74 7322  penldap-clients"
│ │ │ +0023d8a0: 203b 2074 6865 6e0a 646e 6620 7265 6d6f   ; then.dnf remo
│ │ │ +0023d8b0: 7665 202d 7920 2d2d 6e6f 6175 746f 7265  ve -y --noautore
│ │ │ +0023d8c0: 6d6f 7665 2022 6f70 656e 6c64 6170 2d63  move "openldap-c
│ │ │ +0023d8d0: 6c69 656e 7473 220a 6669 0a3c 2f63 6f64  lients".fi.
Remed │ │ │ +0023d990: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ +0023d9a0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +0023d9b0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Complexity:low
Disrup │ │ │ +0023d720: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +0023d730: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +0023d770: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ +0023d780: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Com │ │ │ +0023da30: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +0023da60: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +0023da80: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +0023da90: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +0023dab0: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +0023dac0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
..pa
│ │ │ +0023dae0: 636b 6167 6520 2d2d 7265 6d6f 7665 3d6f  ckage --remove=o
│ │ │ +0023daf0: 7065 6e6c 6461 702d 636c 6965 6e74 730a  penldap-clients.
│ │ │  0023db00: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
Remediat │ │ │ -00242450: 696f 6e20 4f53 4275 696c 6420 426c 7565 ion OSBuild Blue │ │ │ -00242460: 7072 696e 7420 736e 6970 7065 7420 e287 print snippet .. │ │ │ -00242470: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
.[customizat
│ │ │ -002424c0: 696f 6e73 2e73 6572 7669 6365 735d 0a6d  ions.services].m
│ │ │ -002424d0: 6173 6b65 6420 3d20 5b22 7270 6362 696e  asked = ["rpcbin
│ │ │ -002424e0: 6422 5d0a 3c2f 636f 6465 3e3c 2f70 7265  d"].
Remediation │ │ │ -002425a0: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ -002425b0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -00242630: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -00242650: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -002426a0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ -002426d0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
include disabl
│ │ │ -002426f0: 655f 7270 6362 696e 640a 0a63 6c61 7373  e_rpcbind..class
│ │ │ -00242700: 2064 6973 6162 6c65 5f72 7063 6269 6e64   disable_rpcbind
│ │ │ -00242710: 207b 0a20 2073 6572 7669 6365 207b 2772   {.  service {'r
│ │ │ -00242720: 7063 6269 6e64 273a 0a20 2020 2065 6e61  pcbind':.    ena
│ │ │ -00242730: 626c 6520 3d26 6774 3b20 6661 6c73 652c  ble => false,
│ │ │ -00242740: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ -00242750: 3b20 2773 746f 7070 6564 272c 0a20 207d  ; 'stopped',.  }
│ │ │ -00242760: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e  .}.
│ │ │ -00242770: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation A │ │ │ -00242820: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ -00242830: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
Complexity:< │ │ │ -00242640: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -00242660: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -002426b0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ -002426c0: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
│ │ │ -002428b0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -002428d0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -00242920: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -00242950: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -002428c0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -002428e0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -00242930: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -00242940: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
- name: Gathe
│ │ │ -00242970: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ -00242980: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ -00242990: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ -002429a0: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ -002429b0: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ -002429c0: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ -002429d0: 2e32 2e34 0a20 202d 2064 6973 6162 6c65  .2.4.  - disable
│ │ │ -002429e0: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ -002429f0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -00242a00: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -00242a10: 2020 2d20 6c6f 775f 7365 7665 7269 7479    - low_severity
│ │ │ -00242a20: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -00242a30: 6565 6465 640a 2020 2d20 7365 7276 6963  eeded.  - servic
│ │ │ -00242a40: 655f 7270 6362 696e 645f 6469 7361 626c  e_rpcbind_disabl
│ │ │ -00242a50: 6564 0a0a 2d20 6e61 6d65 3a20 4469 7361  ed..- name: Disa
│ │ │ -00242a60: 626c 6520 7270 6362 696e 6420 5365 7276  ble rpcbind Serv
│ │ │ -00242a70: 6963 6520 2d20 4469 7361 626c 6520 7365  ice - Disable se
│ │ │ -00242a80: 7276 6963 6520 7270 6362 696e 640a 2020  rvice rpcbind.  
│ │ │ -00242a90: 626c 6f63 6b3a 0a0a 2020 2d20 6e61 6d65  block:..  - name
│ │ │ -00242aa0: 3a20 4469 7361 626c 6520 7270 6362 696e  : Disable rpcbin
│ │ │ -00242ab0: 6420 5365 7276 6963 6520 2d20 436f 6c6c  d Service - Coll
│ │ │ -00242ac0: 6563 7420 7379 7374 656d 6420 5365 7276  ect systemd Serv
│ │ │ -00242ad0: 6963 6573 2050 7265 7365 6e74 2069 6e20  ices Present in 
│ │ │ -00242ae0: 7468 6520 5379 7374 656d 0a20 2020 2061  the System.    a
│ │ │ -00242af0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ -00242b00: 6f6d 6d61 6e64 3a20 7379 7374 656d 6374  ommand: systemct
│ │ │ -00242b10: 6c20 2d71 206c 6973 742d 756e 6974 2d66  l -q list-unit-f
│ │ │ -00242b20: 696c 6573 202d 2d74 7970 6520 7365 7276  iles --type serv
│ │ │ -00242b30: 6963 650a 2020 2020 7265 6769 7374 6572  ice.    register
│ │ │ -00242b40: 3a20 7365 7276 6963 655f 6578 6973 7473  : service_exists
│ │ │ -00242b50: 0a20 2020 2063 6861 6e67 6564 5f77 6865  .    changed_whe
│ │ │ -00242b60: 6e3a 2066 616c 7365 0a20 2020 2066 6169  n: false.    fai
│ │ │ -00242b70: 6c65 645f 7768 656e 3a20 7365 7276 6963  led_when: servic
│ │ │ -00242b80: 655f 6578 6973 7473 2e72 6320 6e6f 7420  e_exists.rc not 
│ │ │ -00242b90: 696e 205b 302c 2031 5d0a 2020 2020 6368  in [0, 1].    ch
│ │ │ -00242ba0: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a  eck_mode: false.
│ │ │ -00242bb0: 0a20 202d 206e 616d 653a 2044 6973 6162  .  - name: Disab
│ │ │ -00242bc0: 6c65 2072 7063 6269 6e64 2053 6572 7669  le rpcbind Servi
│ │ │ -00242bd0: 6365 202d 2045 6e73 7572 6520 7270 6362  ce - Ensure rpcb
│ │ │ -00242be0: 696e 642e 7365 7276 6963 6520 6973 204d  ind.service is M
│ │ │ -00242bf0: 6173 6b65 640a 2020 2020 616e 7369 626c  asked.    ansibl
│ │ │ -00242c00: 652e 6275 696c 7469 6e2e 7379 7374 656d  e.builtin.system
│ │ │ -00242c10: 643a 0a20 2020 2020 206e 616d 653a 2072  d:.      name: r
│ │ │ -00242c20: 7063 6269 6e64 2e73 6572 7669 6365 0a20  pcbind.service. 
│ │ │ -00242c30: 2020 2020 2073 7461 7465 3a20 7374 6f70       state: stop
│ │ │ -00242c40: 7065 640a 2020 2020 2020 656e 6162 6c65  ped.      enable
│ │ │ -00242c50: 643a 2066 616c 7365 0a20 2020 2020 206d  d: false.      m
│ │ │ -00242c60: 6173 6b65 643a 2074 7275 650a 2020 2020  asked: true.    
│ │ │ -00242c70: 7768 656e 3a20 7365 7276 6963 655f 6578  when: service_ex
│ │ │ -00242c80: 6973 7473 2e73 7464 6f75 745f 6c69 6e65  ists.stdout_line
│ │ │ -00242c90: 7320 6973 2073 6561 7263 6828 2272 7063  s is search("rpc
│ │ │ -00242ca0: 6269 6e64 2e73 6572 7669 6365 222c 206d  bind.service", m
│ │ │ -00242cb0: 756c 7469 6c69 6e65 3d54 7275 6529 0a0a  ultiline=True)..
│ │ │ -00242cc0: 2020 2d20 6e61 6d65 3a20 556e 6974 2053    - name: Unit S
│ │ │ -00242cd0: 6f63 6b65 7420 4578 6973 7473 202d 2072  ocket Exists - r
│ │ │ -00242ce0: 7063 6269 6e64 2e73 6f63 6b65 740a 2020  pcbind.socket.  
│ │ │ -00242cf0: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -00242d00: 6e2e 636f 6d6d 616e 643a 2073 7973 7465  n.command: syste
│ │ │ -00242d10: 6d63 746c 202d 7120 6c69 7374 2d75 6e69  mctl -q list-uni
│ │ │ -00242d20: 742d 6669 6c65 7320 7270 6362 696e 642e  t-files rpcbind.
│ │ │ -00242d30: 736f 636b 6574 0a20 2020 2072 6567 6973  socket.    regis
│ │ │ -00242d40: 7465 723a 2073 6f63 6b65 745f 6669 6c65  ter: socket_file
│ │ │ -00242d50: 5f65 7869 7374 730a 2020 2020 6368 616e  _exists.    chan
│ │ │ -00242d60: 6765 645f 7768 656e 3a20 6661 6c73 650a  ged_when: false.
│ │ │ -00242d70: 2020 2020 6661 696c 6564 5f77 6865 6e3a      failed_when:
│ │ │ -00242d80: 2073 6f63 6b65 745f 6669 6c65 5f65 7869   socket_file_exi
│ │ │ -00242d90: 7374 732e 7263 206e 6f74 2069 6e20 5b30  sts.rc not in [0
│ │ │ -00242da0: 2c20 315d 0a20 2020 2063 6865 636b 5f6d  , 1].    check_m
│ │ │ -00242db0: 6f64 653a 2066 616c 7365 0a0a 2020 2d20  ode: false..  - 
│ │ │ -00242dc0: 6e61 6d65 3a20 4469 7361 626c 6520 7270  name: Disable rp
│ │ │ -00242dd0: 6362 696e 6420 5365 7276 6963 6520 2d20  cbind Service - 
│ │ │ -00242de0: 4469 7361 626c 6520 536f 636b 6574 2072  Disable Socket r
│ │ │ -00242df0: 7063 6269 6e64 0a20 2020 2061 6e73 6962  pcbind.    ansib
│ │ │ -00242e00: 6c65 2e62 7569 6c74 696e 2e73 7973 7465  le.builtin.syste
│ │ │ -00242e10: 6d64 3a0a 2020 2020 2020 6e61 6d65 3a20  md:.      name: 
│ │ │ -00242e20: 7270 6362 696e 642e 736f 636b 6574 0a20  rpcbind.socket. 
│ │ │ -00242e30: 2020 2020 2065 6e61 626c 6564 3a20 6661       enabled: fa
│ │ │ -00242e40: 6c73 650a 2020 2020 2020 7374 6174 653a  lse.      state:
│ │ │ -00242e50: 2073 746f 7070 6564 0a20 2020 2020 206d   stopped.      m
│ │ │ -00242e60: 6173 6b65 643a 2074 7275 650a 2020 2020  asked: true.    
│ │ │ -00242e70: 7768 656e 3a20 736f 636b 6574 5f66 696c  when: socket_fil
│ │ │ -00242e80: 655f 6578 6973 7473 2e73 7464 6f75 745f  e_exists.stdout_
│ │ │ -00242e90: 6c69 6e65 7320 6973 2073 6561 7263 6828  lines is search(
│ │ │ -00242ea0: 2272 7063 6269 6e64 2e73 6f63 6b65 7422  "rpcbind.socket"
│ │ │ -00242eb0: 2c20 6d75 6c74 696c 696e 653d 5472 7565  , multiline=True
│ │ │ -00242ec0: 290a 2020 7461 6773 3a0a 2020 2d20 5043  ).  tags:.  - PC
│ │ │ -00242ed0: 492d 4453 5376 342d 322e 320a 2020 2d20  I-DSSv4-2.2.  - 
│ │ │ -00242ee0: 5043 492d 4453 5376 342d 322e 322e 340a  PCI-DSSv4-2.2.4.
│ │ │ -00242ef0: 2020 2d20 6469 7361 626c 655f 7374 7261    - disable_stra
│ │ │ -00242f00: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ -00242f10: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ -00242f20: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -00242f30: 6f77 5f73 6576 6572 6974 790a 2020 2d20  ow_severity.  - 
│ │ │ -00242f40: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -00242f50: 0a20 202d 2073 6572 7669 6365 5f72 7063  .  - service_rpc
│ │ │ -00242f60: 6269 6e64 5f64 6973 6162 6c65 640a 2020  bind_disabled.  
│ │ │ -00242f70: 2d20 7370 6563 6961 6c5f 7365 7276 6963  - special_servic
│ │ │ -00242f80: 655f 626c 6f63 6b0a 2020 7768 656e 3a20  e_block.  when: 
│ │ │ -00242f90: 2722 6b65 726e 656c 2220 696e 2061 6e73  '"kernel" in ans
│ │ │ -00242fa0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -00242fb0: 6765 7327 0a3c 2f63 6f64 653e 3c2f 7072  ges'.
< │ │ │ +00242470: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +00242480: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +00242490: 7365 2220 6964 3d22 6964 3734 3922 3e3c se" id="id749">< │ │ │ +002424a0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +002424b0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +002424c0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +002424d0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +002424e0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +002424f0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +00242500: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ +00242540: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +00242550: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ +00242570: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ +00242580: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 - name: │ │ │ +002425a0: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ +002425b0: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ +002425c0: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ +002425d0: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ +002425e0: 6773 3a0a 2020 2d20 5043 492d 4453 5376 gs:. - PCI-DSSv │ │ │ +002425f0: 342d 322e 320a 2020 2d20 5043 492d 4453 4-2.2. - PCI-DS │ │ │ +00242600: 5376 342d 322e 322e 340a 2020 2d20 6469 Sv4-2.2.4. - di │ │ │ +00242610: 7361 626c 655f 7374 7261 7465 6779 0a20 sable_strategy. │ │ │ +00242620: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ +00242630: 790a 2020 2d20 6c6f 775f 6469 7372 7570 y. - low_disrup │ │ │ +00242640: 7469 6f6e 0a20 202d 206c 6f77 5f73 6576 tion. - low_sev │ │ │ +00242650: 6572 6974 790a 2020 2d20 6e6f 5f72 6562 erity. - no_reb │ │ │ +00242660: 6f6f 745f 6e65 6564 6564 0a20 202d 2073 oot_needed. - s │ │ │ +00242670: 6572 7669 6365 5f72 7063 6269 6e64 5f64 ervice_rpcbind_d │ │ │ +00242680: 6973 6162 6c65 640a 0a2d 206e 616d 653a isabled..- name: │ │ │ +00242690: 2044 6973 6162 6c65 2072 7063 6269 6e64 Disable rpcbind │ │ │ +002426a0: 2053 6572 7669 6365 202d 2044 6973 6162 Service - Disab │ │ │ +002426b0: 6c65 2073 6572 7669 6365 2072 7063 6269 le service rpcbi │ │ │ +002426c0: 6e64 0a20 2062 6c6f 636b 3a0a 0a20 202d nd. block:.. - │ │ │ +002426d0: 206e 616d 653a 2044 6973 6162 6c65 2072 name: Disable r │ │ │ +002426e0: 7063 6269 6e64 2053 6572 7669 6365 202d pcbind Service - │ │ │ +002426f0: 2043 6f6c 6c65 6374 2073 7973 7465 6d64 Collect systemd │ │ │ +00242700: 2053 6572 7669 6365 7320 5072 6573 656e Services Presen │ │ │ +00242710: 7420 696e 2074 6865 2053 7973 7465 6d0a t in the System. │ │ │ +00242720: 2020 2020 616e 7369 626c 652e 6275 696c ansible.buil │ │ │ +00242730: 7469 6e2e 636f 6d6d 616e 643a 2073 7973 tin.command: sys │ │ │ +00242740: 7465 6d63 746c 202d 7120 6c69 7374 2d75 temctl -q list-u │ │ │ +00242750: 6e69 742d 6669 6c65 7320 2d2d 7479 7065 nit-files --type │ │ │ +00242760: 2073 6572 7669 6365 0a20 2020 2072 6567 service. reg │ │ │ +00242770: 6973 7465 723a 2073 6572 7669 6365 5f65 ister: service_e │ │ │ +00242780: 7869 7374 730a 2020 2020 6368 616e 6765 xists. change │ │ │ +00242790: 645f 7768 656e 3a20 6661 6c73 650a 2020 d_when: false. │ │ │ +002427a0: 2020 6661 696c 6564 5f77 6865 6e3a 2073 failed_when: s │ │ │ +002427b0: 6572 7669 6365 5f65 7869 7374 732e 7263 ervice_exists.rc │ │ │ +002427c0: 206e 6f74 2069 6e20 5b30 2c20 315d 0a20 not in [0, 1]. │ │ │ +002427d0: 2020 2063 6865 636b 5f6d 6f64 653a 2066 check_mode: f │ │ │ +002427e0: 616c 7365 0a0a 2020 2d20 6e61 6d65 3a20 alse.. - name: │ │ │ +002427f0: 4469 7361 626c 6520 7270 6362 696e 6420 Disable rpcbind │ │ │ +00242800: 5365 7276 6963 6520 2d20 456e 7375 7265 Service - Ensure │ │ │ +00242810: 2072 7063 6269 6e64 2e73 6572 7669 6365 rpcbind.service │ │ │ +00242820: 2069 7320 4d61 736b 6564 0a20 2020 2061 is Masked. a │ │ │ +00242830: 6e73 6962 6c65 2e62 7569 6c74 696e 2e73 nsible.builtin.s │ │ │ +00242840: 7973 7465 6d64 3a0a 2020 2020 2020 6e61 ystemd:. na │ │ │ +00242850: 6d65 3a20 7270 6362 696e 642e 7365 7276 me: rpcbind.serv │ │ │ +00242860: 6963 650a 2020 2020 2020 7374 6174 653a ice. state: │ │ │ +00242870: 2073 746f 7070 6564 0a20 2020 2020 2065 stopped. e │ │ │ +00242880: 6e61 626c 6564 3a20 6661 6c73 650a 2020 nabled: false. │ │ │ +00242890: 2020 2020 6d61 736b 6564 3a20 7472 7565 masked: true │ │ │ +002428a0: 0a20 2020 2077 6865 6e3a 2073 6572 7669 . when: servi │ │ │ +002428b0: 6365 5f65 7869 7374 732e 7374 646f 7574 ce_exists.stdout │ │ │ +002428c0: 5f6c 696e 6573 2069 7320 7365 6172 6368 _lines is search │ │ │ +002428d0: 2822 7270 6362 696e 642e 7365 7276 6963 ("rpcbind.servic │ │ │ +002428e0: 6522 2c20 6d75 6c74 696c 696e 653d 5472 e", multiline=Tr │ │ │ +002428f0: 7565 290a 0a20 202d 206e 616d 653a 2055 ue).. - name: U │ │ │ +00242900: 6e69 7420 536f 636b 6574 2045 7869 7374 nit Socket Exist │ │ │ +00242910: 7320 2d20 7270 6362 696e 642e 736f 636b s - rpcbind.sock │ │ │ +00242920: 6574 0a20 2020 2061 6e73 6962 6c65 2e62 et. ansible.b │ │ │ +00242930: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20 uiltin.command: │ │ │ +00242940: 7379 7374 656d 6374 6c20 2d71 206c 6973 systemctl -q lis │ │ │ +00242950: 742d 756e 6974 2d66 696c 6573 2072 7063 t-unit-files rpc │ │ │ +00242960: 6269 6e64 2e73 6f63 6b65 740a 2020 2020 bind.socket. │ │ │ +00242970: 7265 6769 7374 6572 3a20 736f 636b 6574 register: socket │ │ │ +00242980: 5f66 696c 655f 6578 6973 7473 0a20 2020 _file_exists. │ │ │ +00242990: 2063 6861 6e67 6564 5f77 6865 6e3a 2066 changed_when: f │ │ │ +002429a0: 616c 7365 0a20 2020 2066 6169 6c65 645f alse. failed_ │ │ │ +002429b0: 7768 656e 3a20 736f 636b 6574 5f66 696c when: socket_fil │ │ │ +002429c0: 655f 6578 6973 7473 2e72 6320 6e6f 7420 e_exists.rc not │ │ │ +002429d0: 696e 205b 302c 2031 5d0a 2020 2020 6368 in [0, 1]. ch │ │ │ +002429e0: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a eck_mode: false. │ │ │ +002429f0: 0a20 202d 206e 616d 653a 2044 6973 6162 . - name: Disab │ │ │ +00242a00: 6c65 2072 7063 6269 6e64 2053 6572 7669 le rpcbind Servi │ │ │ +00242a10: 6365 202d 2044 6973 6162 6c65 2053 6f63 ce - Disable Soc │ │ │ +00242a20: 6b65 7420 7270 6362 696e 640a 2020 2020 ket rpcbind. │ │ │ +00242a30: 616e 7369 626c 652e 6275 696c 7469 6e2e ansible.builtin. │ │ │ +00242a40: 7379 7374 656d 643a 0a20 2020 2020 206e systemd:. n │ │ │ +00242a50: 616d 653a 2072 7063 6269 6e64 2e73 6f63 ame: rpcbind.soc │ │ │ +00242a60: 6b65 740a 2020 2020 2020 656e 6162 6c65 ket. enable │ │ │ +00242a70: 643a 2066 616c 7365 0a20 2020 2020 2073 d: false. s │ │ │ +00242a80: 7461 7465 3a20 7374 6f70 7065 640a 2020 tate: stopped. │ │ │ +00242a90: 2020 2020 6d61 736b 6564 3a20 7472 7565 masked: true │ │ │ +00242aa0: 0a20 2020 2077 6865 6e3a 2073 6f63 6b65 . when: socke │ │ │ +00242ab0: 745f 6669 6c65 5f65 7869 7374 732e 7374 t_file_exists.st │ │ │ +00242ac0: 646f 7574 5f6c 696e 6573 2069 7320 7365 dout_lines is se │ │ │ +00242ad0: 6172 6368 2822 7270 6362 696e 642e 736f arch("rpcbind.so │ │ │ +00242ae0: 636b 6574 222c 206d 756c 7469 6c69 6e65 cket", multiline │ │ │ +00242af0: 3d54 7275 6529 0a20 2074 6167 733a 0a20 =True). tags:. │ │ │ +00242b00: 202d 2050 4349 2d44 5353 7634 2d32 2e32 - PCI-DSSv4-2.2 │ │ │ +00242b10: 0a20 202d 2050 4349 2d44 5353 7634 2d32 . - PCI-DSSv4-2 │ │ │ +00242b20: 2e32 2e34 0a20 202d 2064 6973 6162 6c65 .2.4. - disable │ │ │ +00242b30: 5f73 7472 6174 6567 790a 2020 2d20 6c6f _strategy. - lo │ │ │ +00242b40: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ +00242b50: 206c 6f77 5f64 6973 7275 7074 696f 6e0a low_disruption. │ │ │ +00242b60: 2020 2d20 6c6f 775f 7365 7665 7269 7479 - low_severity │ │ │ +00242b70: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ +00242b80: 6565 6465 640a 2020 2d20 7365 7276 6963 eeded. - servic │ │ │ +00242b90: 655f 7270 6362 696e 645f 6469 7361 626c e_rpcbind_disabl │ │ │ +00242ba0: 6564 0a20 202d 2073 7065 6369 616c 5f73 ed. - special_s │ │ │ +00242bb0: 6572 7669 6365 5f62 6c6f 636b 0a20 2077 ervice_block. w │ │ │ +00242bc0: 6865 6e3a 2027 226b 6572 6e65 6c22 2069 hen: '"kernel" i │ │ │ +00242bd0: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +00242be0: 7061 636b 6167 6573 270a 3c2f 636f 6465 packages'.
Remedi │ │ │ +00242ca0: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ +00242cb0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +00242cc0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +00242cf0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +00242d60: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +00242d80: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +00242db0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ +00242dd0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ +00242d40: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +00242d50: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +00242d90: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +00242da0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
include │ │ │ +00242df0: 6469 7361 626c 655f 7270 6362 696e 640a disable_rpcbind. │ │ │ +00242e00: 0a63 6c61 7373 2064 6973 6162 6c65 5f72 .class disable_r │ │ │ +00242e10: 7063 6269 6e64 207b 0a20 2073 6572 7669 pcbind {. servi │ │ │ +00242e20: 6365 207b 2772 7063 6269 6e64 273a 0a20 ce {'rpcbind':. │ │ │ +00242e30: 2020 2065 6e61 626c 6520 3d26 6774 3b20 enable => │ │ │ +00242e40: 6661 6c73 652c 0a20 2020 2065 6e73 7572 false,. ensur │ │ │ +00242e50: 6520 3d26 6774 3b20 2773 746f 7070 6564 e => 'stopped │ │ │ +00242e60: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e ',. }.}. │ │ │ +00242e70: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063
Remedia │ │ │ +00242f20: 7469 6f6e 204f 5342 7569 6c64 2042 6c75 tion OSBuild Blu │ │ │ +00242f30: 6570 7269 6e74 2073 6e69 7070 6574 20e2 eprint snippet . │ │ │ +00242f40: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
<
│ │ │ +00242f80: 636f 6465 3e0a 5b63 7573 746f 6d69 7a61  code>.[customiza
│ │ │ +00242f90: 7469 6f6e 732e 7365 7276 6963 6573 5d0a  tions.services].
│ │ │ +00242fa0: 6d61 736b 6564 203d 205b 2272 7063 6269  masked = ["rpcbi
│ │ │ +00242fb0: 6e64 225d 0a3c 2f63 6f64 653e 3c2f 7072  nd"].
Reme │ │ │ -00244b60: 6469 6174 696f 6e20 4f53 4275 696c 6420 diation OSBuild │ │ │ -00244b70: 426c 7565 7072 696e 7420 736e 6970 7065 Blueprint snippe │ │ │ -00244b80: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
.[custom │ │ │ -00244bd0: 697a 6174 696f 6e73 2e73 6572 7669 6365 izations.service │ │ │ -00244be0: 735d 0a6d 6173 6b65 6420 3d20 5b22 6e66 s].masked = ["nf │ │ │ -00244bf0: 732d 7365 7276 6572 225d 0a3c 2f63 6f64 s-server"].
Remed │ │ │ -00244cb0: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ -00244cc0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -00244d70: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -00244d90: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -00244dc0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -00244d50: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -00244d60: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00244d80: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -00244da0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -00244db0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

include │ │ │ -00244e00: 2064 6973 6162 6c65 5f6e 6673 2d73 6572 disable_nfs-ser │ │ │ -00244e10: 7665 720a 0a63 6c61 7373 2064 6973 6162 ver..class disab │ │ │ -00244e20: 6c65 5f6e 6673 2d73 6572 7665 7220 7b0a le_nfs-server {. │ │ │ -00244e30: 2020 7365 7276 6963 6520 7b27 6e66 732d service {'nfs- │ │ │ -00244e40: 7365 7276 6572 273a 0a20 2020 2065 6e61 server':. ena │ │ │ -00244e50: 626c 6520 3d26 6774 3b20 6661 6c73 652c ble => false, │ │ │ -00244e60: 0a20 2020 2065 6e73 7572 6520 3d26 6774 . ensure => │ │ │ -00244e70: 3b20 2773 746f 7070 6564 272c 0a20 207d ; 'stopped',. } │ │ │ -00244e80: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e .}. │ │ │ -00244e90: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22

Remediation A │ │ │ -00244f40: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ -00244f50: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -00244fd0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -00244ff0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -00245040: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -00245070: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -00244fe0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -00245000: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -00245050: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -00245060: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
- name: Gathe
│ │ │ -00245090: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ -002450a0: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ -002450b0: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ -002450c0: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ -002450d0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -002450e0: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ -002450f0: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ -00245100: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -00245110: 4d2d 3728 6229 0a20 202d 2064 6973 6162  M-7(b).  - disab
│ │ │ -00245120: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ -00245130: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -00245140: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -00245150: 6e0a 2020 2d20 6e6f 5f72 6562 6f6f 745f  n.  - no_reboot_
│ │ │ -00245160: 6e65 6564 6564 0a20 202d 2073 6572 7669  needed.  - servi
│ │ │ -00245170: 6365 5f6e 6673 5f64 6973 6162 6c65 640a  ce_nfs_disabled.
│ │ │ -00245180: 2020 2d20 756e 6b6e 6f77 6e5f 7365 7665    - unknown_seve
│ │ │ -00245190: 7269 7479 0a0a 2d20 6e61 6d65 3a20 4469  rity..- name: Di
│ │ │ -002451a0: 7361 626c 6520 4e65 7477 6f72 6b20 4669  sable Network Fi
│ │ │ -002451b0: 6c65 2053 7973 7465 6d20 286e 6673 2920  le System (nfs) 
│ │ │ -002451c0: 2d20 4469 7361 626c 6520 7365 7276 6963  - Disable servic
│ │ │ -002451d0: 6520 6e66 732d 7365 7276 6572 0a20 2062  e nfs-server.  b
│ │ │ -002451e0: 6c6f 636b 3a0a 0a20 202d 206e 616d 653a  lock:..  - name:
│ │ │ -002451f0: 2044 6973 6162 6c65 204e 6574 776f 726b   Disable Network
│ │ │ -00245200: 2046 696c 6520 5379 7374 656d 2028 6e66   File System (nf
│ │ │ -00245210: 7329 202d 2043 6f6c 6c65 6374 2073 7973  s) - Collect sys
│ │ │ -00245220: 7465 6d64 2053 6572 7669 6365 7320 5072  temd Services Pr
│ │ │ -00245230: 6573 656e 7420 696e 0a20 2020 2020 2074  esent in.      t
│ │ │ -00245240: 6865 2053 7973 7465 6d0a 2020 2020 616e  he System.    an
│ │ │ -00245250: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ -00245260: 6d6d 616e 643a 2073 7973 7465 6d63 746c  mmand: systemctl
│ │ │ -00245270: 202d 7120 6c69 7374 2d75 6e69 742d 6669   -q list-unit-fi
│ │ │ -00245280: 6c65 7320 2d2d 7479 7065 2073 6572 7669  les --type servi
│ │ │ -00245290: 6365 0a20 2020 2072 6567 6973 7465 723a  ce.    register:
│ │ │ -002452a0: 2073 6572 7669 6365 5f65 7869 7374 730a   service_exists.
│ │ │ -002452b0: 2020 2020 6368 616e 6765 645f 7768 656e      changed_when
│ │ │ -002452c0: 3a20 6661 6c73 650a 2020 2020 6661 696c  : false.    fail
│ │ │ -002452d0: 6564 5f77 6865 6e3a 2073 6572 7669 6365  ed_when: service
│ │ │ -002452e0: 5f65 7869 7374 732e 7263 206e 6f74 2069  _exists.rc not i
│ │ │ -002452f0: 6e20 5b30 2c20 315d 0a20 2020 2063 6865  n [0, 1].    che
│ │ │ -00245300: 636b 5f6d 6f64 653a 2066 616c 7365 0a0a  ck_mode: false..
│ │ │ -00245310: 2020 2d20 6e61 6d65 3a20 4469 7361 626c    - name: Disabl
│ │ │ -00245320: 6520 4e65 7477 6f72 6b20 4669 6c65 2053  e Network File S
│ │ │ -00245330: 7973 7465 6d20 286e 6673 2920 2d20 456e  ystem (nfs) - En
│ │ │ -00245340: 7375 7265 206e 6673 2d73 6572 7665 722e  sure nfs-server.
│ │ │ -00245350: 7365 7276 6963 6520 6973 204d 6173 6b65  service is Maske
│ │ │ -00245360: 640a 2020 2020 616e 7369 626c 652e 6275  d.    ansible.bu
│ │ │ -00245370: 696c 7469 6e2e 7379 7374 656d 643a 0a20  iltin.systemd:. 
│ │ │ -00245380: 2020 2020 206e 616d 653a 206e 6673 2d73       name: nfs-s
│ │ │ -00245390: 6572 7665 722e 7365 7276 6963 650a 2020  erver.service.  
│ │ │ -002453a0: 2020 2020 7374 6174 653a 2073 746f 7070      state: stopp
│ │ │ -002453b0: 6564 0a20 2020 2020 2065 6e61 626c 6564  ed.      enabled
│ │ │ -002453c0: 3a20 6661 6c73 650a 2020 2020 2020 6d61  : false.      ma
│ │ │ -002453d0: 736b 6564 3a20 7472 7565 0a20 2020 2077  sked: true.    w
│ │ │ -002453e0: 6865 6e3a 2073 6572 7669 6365 5f65 7869  hen: service_exi
│ │ │ -002453f0: 7374 732e 7374 646f 7574 5f6c 696e 6573  sts.stdout_lines
│ │ │ -00245400: 2069 7320 7365 6172 6368 2822 6e66 732d   is search("nfs-
│ │ │ -00245410: 7365 7276 6572 2e73 6572 7669 6365 222c  server.service",
│ │ │ -00245420: 206d 756c 7469 6c69 6e65 3d54 7275 6529   multiline=True)
│ │ │ -00245430: 0a0a 2020 2d20 6e61 6d65 3a20 556e 6974  ..  - name: Unit
│ │ │ -00245440: 2053 6f63 6b65 7420 4578 6973 7473 202d   Socket Exists -
│ │ │ -00245450: 206e 6673 2d73 6572 7665 722e 736f 636b   nfs-server.sock
│ │ │ -00245460: 6574 0a20 2020 2061 6e73 6962 6c65 2e62  et.    ansible.b
│ │ │ -00245470: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ -00245480: 7379 7374 656d 6374 6c20 2d71 206c 6973  systemctl -q lis
│ │ │ -00245490: 742d 756e 6974 2d66 696c 6573 206e 6673  t-unit-files nfs
│ │ │ -002454a0: 2d73 6572 7665 722e 736f 636b 6574 0a20  -server.socket. 
│ │ │ -002454b0: 2020 2072 6567 6973 7465 723a 2073 6f63     register: soc
│ │ │ -002454c0: 6b65 745f 6669 6c65 5f65 7869 7374 730a  ket_file_exists.
│ │ │ -002454d0: 2020 2020 6368 616e 6765 645f 7768 656e      changed_when
│ │ │ -002454e0: 3a20 6661 6c73 650a 2020 2020 6661 696c  : false.    fail
│ │ │ -002454f0: 6564 5f77 6865 6e3a 2073 6f63 6b65 745f  ed_when: socket_
│ │ │ -00245500: 6669 6c65 5f65 7869 7374 732e 7263 206e  file_exists.rc n
│ │ │ -00245510: 6f74 2069 6e20 5b30 2c20 315d 0a20 2020  ot in [0, 1].   
│ │ │ -00245520: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ -00245530: 7365 0a0a 2020 2d20 6e61 6d65 3a20 4469  se..  - name: Di
│ │ │ -00245540: 7361 626c 6520 4e65 7477 6f72 6b20 4669  sable Network Fi
│ │ │ -00245550: 6c65 2053 7973 7465 6d20 286e 6673 2920  le System (nfs) 
│ │ │ -00245560: 2d20 4469 7361 626c 6520 536f 636b 6574  - Disable Socket
│ │ │ -00245570: 206e 6673 2d73 6572 7665 720a 2020 2020   nfs-server.    
│ │ │ -00245580: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -00245590: 7379 7374 656d 643a 0a20 2020 2020 206e  systemd:.      n
│ │ │ -002455a0: 616d 653a 206e 6673 2d73 6572 7665 722e  ame: nfs-server.
│ │ │ -002455b0: 736f 636b 6574 0a20 2020 2020 2065 6e61  socket.      ena
│ │ │ -002455c0: 626c 6564 3a20 6661 6c73 650a 2020 2020  bled: false.    
│ │ │ -002455d0: 2020 7374 6174 653a 2073 746f 7070 6564    state: stopped
│ │ │ -002455e0: 0a20 2020 2020 206d 6173 6b65 643a 2074  .      masked: t
│ │ │ -002455f0: 7275 650a 2020 2020 7768 656e 3a20 736f  rue.    when: so
│ │ │ -00245600: 636b 6574 5f66 696c 655f 6578 6973 7473  cket_file_exists
│ │ │ -00245610: 2e73 7464 6f75 745f 6c69 6e65 7320 6973  .stdout_lines is
│ │ │ -00245620: 2073 6561 7263 6828 226e 6673 2d73 6572   search("nfs-ser
│ │ │ -00245630: 7665 722e 736f 636b 6574 222c 206d 756c  ver.socket", mul
│ │ │ -00245640: 7469 6c69 6e65 3d54 7275 6529 0a20 2074  tiline=True).  t
│ │ │ -00245650: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -00245660: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -00245670: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -00245680: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -00245690: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ -002456a0: 2064 6973 6162 6c65 5f73 7472 6174 6567   disable_strateg
│ │ │ -002456b0: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -002456c0: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -002456d0: 7275 7074 696f 6e0a 2020 2d20 6e6f 5f72  ruption.  - no_r
│ │ │ -002456e0: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ -002456f0: 2073 6572 7669 6365 5f6e 6673 5f64 6973   service_nfs_dis
│ │ │ -00245700: 6162 6c65 640a 2020 2d20 7370 6563 6961  abled.  - specia
│ │ │ -00245710: 6c5f 7365 7276 6963 655f 626c 6f63 6b0a  l_service_block.
│ │ │ -00245720: 2020 2d20 756e 6b6e 6f77 6e5f 7365 7665    - unknown_seve
│ │ │ -00245730: 7269 7479 0a20 2077 6865 6e3a 2027 226b  rity.  when: '"k
│ │ │ -00245740: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -00245750: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -00245760: 270a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  '.
< │ │ │ +00244b60: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ +00244b70: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +00244b80: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ +00244c00: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +00244c30: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +00244c50: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +00244c60: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +00244c80: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +00244c90: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ +00244cb0: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ +00244cc0: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ +00244cd0: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ +00244ce0: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ +00244cf0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +00244d00: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +00244d10: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +00244d20: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +00244d30: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +00244d40: 2020 2d20 6469 7361 626c 655f 7374 7261    - disable_stra
│ │ │ +00244d50: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ +00244d60: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +00244d70: 6469 7372 7570 7469 6f6e 0a20 202d 206e  disruption.  - n
│ │ │ +00244d80: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +00244d90: 2020 2d20 7365 7276 6963 655f 6e66 735f    - service_nfs_
│ │ │ +00244da0: 6469 7361 626c 6564 0a20 202d 2075 6e6b  disabled.  - unk
│ │ │ +00244db0: 6e6f 776e 5f73 6576 6572 6974 790a 0a2d  nown_severity..-
│ │ │ +00244dc0: 206e 616d 653a 2044 6973 6162 6c65 204e   name: Disable N
│ │ │ +00244dd0: 6574 776f 726b 2046 696c 6520 5379 7374  etwork File Syst
│ │ │ +00244de0: 656d 2028 6e66 7329 202d 2044 6973 6162  em (nfs) - Disab
│ │ │ +00244df0: 6c65 2073 6572 7669 6365 206e 6673 2d73  le service nfs-s
│ │ │ +00244e00: 6572 7665 720a 2020 626c 6f63 6b3a 0a0a  erver.  block:..
│ │ │ +00244e10: 2020 2d20 6e61 6d65 3a20 4469 7361 626c    - name: Disabl
│ │ │ +00244e20: 6520 4e65 7477 6f72 6b20 4669 6c65 2053  e Network File S
│ │ │ +00244e30: 7973 7465 6d20 286e 6673 2920 2d20 436f  ystem (nfs) - Co
│ │ │ +00244e40: 6c6c 6563 7420 7379 7374 656d 6420 5365  llect systemd Se
│ │ │ +00244e50: 7276 6963 6573 2050 7265 7365 6e74 2069  rvices Present i
│ │ │ +00244e60: 6e0a 2020 2020 2020 7468 6520 5379 7374  n.      the Syst
│ │ │ +00244e70: 656d 0a20 2020 2061 6e73 6962 6c65 2e62  em.    ansible.b
│ │ │ +00244e80: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ +00244e90: 7379 7374 656d 6374 6c20 2d71 206c 6973  systemctl -q lis
│ │ │ +00244ea0: 742d 756e 6974 2d66 696c 6573 202d 2d74  t-unit-files --t
│ │ │ +00244eb0: 7970 6520 7365 7276 6963 650a 2020 2020  ype service.    
│ │ │ +00244ec0: 7265 6769 7374 6572 3a20 7365 7276 6963  register: servic
│ │ │ +00244ed0: 655f 6578 6973 7473 0a20 2020 2063 6861  e_exists.    cha
│ │ │ +00244ee0: 6e67 6564 5f77 6865 6e3a 2066 616c 7365  nged_when: false
│ │ │ +00244ef0: 0a20 2020 2066 6169 6c65 645f 7768 656e  .    failed_when
│ │ │ +00244f00: 3a20 7365 7276 6963 655f 6578 6973 7473  : service_exists
│ │ │ +00244f10: 2e72 6320 6e6f 7420 696e 205b 302c 2031  .rc not in [0, 1
│ │ │ +00244f20: 5d0a 2020 2020 6368 6563 6b5f 6d6f 6465  ].    check_mode
│ │ │ +00244f30: 3a20 6661 6c73 650a 0a20 202d 206e 616d  : false..  - nam
│ │ │ +00244f40: 653a 2044 6973 6162 6c65 204e 6574 776f  e: Disable Netwo
│ │ │ +00244f50: 726b 2046 696c 6520 5379 7374 656d 2028  rk File System (
│ │ │ +00244f60: 6e66 7329 202d 2045 6e73 7572 6520 6e66  nfs) - Ensure nf
│ │ │ +00244f70: 732d 7365 7276 6572 2e73 6572 7669 6365  s-server.service
│ │ │ +00244f80: 2069 7320 4d61 736b 6564 0a20 2020 2061   is Masked.    a
│ │ │ +00244f90: 6e73 6962 6c65 2e62 7569 6c74 696e 2e73  nsible.builtin.s
│ │ │ +00244fa0: 7973 7465 6d64 3a0a 2020 2020 2020 6e61  ystemd:.      na
│ │ │ +00244fb0: 6d65 3a20 6e66 732d 7365 7276 6572 2e73  me: nfs-server.s
│ │ │ +00244fc0: 6572 7669 6365 0a20 2020 2020 2073 7461  ervice.      sta
│ │ │ +00244fd0: 7465 3a20 7374 6f70 7065 640a 2020 2020  te: stopped.    
│ │ │ +00244fe0: 2020 656e 6162 6c65 643a 2066 616c 7365    enabled: false
│ │ │ +00244ff0: 0a20 2020 2020 206d 6173 6b65 643a 2074  .      masked: t
│ │ │ +00245000: 7275 650a 2020 2020 7768 656e 3a20 7365  rue.    when: se
│ │ │ +00245010: 7276 6963 655f 6578 6973 7473 2e73 7464  rvice_exists.std
│ │ │ +00245020: 6f75 745f 6c69 6e65 7320 6973 2073 6561  out_lines is sea
│ │ │ +00245030: 7263 6828 226e 6673 2d73 6572 7665 722e  rch("nfs-server.
│ │ │ +00245040: 7365 7276 6963 6522 2c20 6d75 6c74 696c  service", multil
│ │ │ +00245050: 696e 653d 5472 7565 290a 0a20 202d 206e  ine=True)..  - n
│ │ │ +00245060: 616d 653a 2055 6e69 7420 536f 636b 6574  ame: Unit Socket
│ │ │ +00245070: 2045 7869 7374 7320 2d20 6e66 732d 7365   Exists - nfs-se
│ │ │ +00245080: 7276 6572 2e73 6f63 6b65 740a 2020 2020  rver.socket.    
│ │ │ +00245090: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +002450a0: 636f 6d6d 616e 643a 2073 7973 7465 6d63  command: systemc
│ │ │ +002450b0: 746c 202d 7120 6c69 7374 2d75 6e69 742d  tl -q list-unit-
│ │ │ +002450c0: 6669 6c65 7320 6e66 732d 7365 7276 6572  files nfs-server
│ │ │ +002450d0: 2e73 6f63 6b65 740a 2020 2020 7265 6769  .socket.    regi
│ │ │ +002450e0: 7374 6572 3a20 736f 636b 6574 5f66 696c  ster: socket_fil
│ │ │ +002450f0: 655f 6578 6973 7473 0a20 2020 2063 6861  e_exists.    cha
│ │ │ +00245100: 6e67 6564 5f77 6865 6e3a 2066 616c 7365  nged_when: false
│ │ │ +00245110: 0a20 2020 2066 6169 6c65 645f 7768 656e  .    failed_when
│ │ │ +00245120: 3a20 736f 636b 6574 5f66 696c 655f 6578  : socket_file_ex
│ │ │ +00245130: 6973 7473 2e72 6320 6e6f 7420 696e 205b  ists.rc not in [
│ │ │ +00245140: 302c 2031 5d0a 2020 2020 6368 6563 6b5f  0, 1].    check_
│ │ │ +00245150: 6d6f 6465 3a20 6661 6c73 650a 0a20 202d  mode: false..  -
│ │ │ +00245160: 206e 616d 653a 2044 6973 6162 6c65 204e   name: Disable N
│ │ │ +00245170: 6574 776f 726b 2046 696c 6520 5379 7374  etwork File Syst
│ │ │ +00245180: 656d 2028 6e66 7329 202d 2044 6973 6162  em (nfs) - Disab
│ │ │ +00245190: 6c65 2053 6f63 6b65 7420 6e66 732d 7365  le Socket nfs-se
│ │ │ +002451a0: 7276 6572 0a20 2020 2061 6e73 6962 6c65  rver.    ansible
│ │ │ +002451b0: 2e62 7569 6c74 696e 2e73 7973 7465 6d64  .builtin.systemd
│ │ │ +002451c0: 3a0a 2020 2020 2020 6e61 6d65 3a20 6e66  :.      name: nf
│ │ │ +002451d0: 732d 7365 7276 6572 2e73 6f63 6b65 740a  s-server.socket.
│ │ │ +002451e0: 2020 2020 2020 656e 6162 6c65 643a 2066        enabled: f
│ │ │ +002451f0: 616c 7365 0a20 2020 2020 2073 7461 7465  alse.      state
│ │ │ +00245200: 3a20 7374 6f70 7065 640a 2020 2020 2020  : stopped.      
│ │ │ +00245210: 6d61 736b 6564 3a20 7472 7565 0a20 2020  masked: true.   
│ │ │ +00245220: 2077 6865 6e3a 2073 6f63 6b65 745f 6669   when: socket_fi
│ │ │ +00245230: 6c65 5f65 7869 7374 732e 7374 646f 7574  le_exists.stdout
│ │ │ +00245240: 5f6c 696e 6573 2069 7320 7365 6172 6368  _lines is search
│ │ │ +00245250: 2822 6e66 732d 7365 7276 6572 2e73 6f63  ("nfs-server.soc
│ │ │ +00245260: 6b65 7422 2c20 6d75 6c74 696c 696e 653d  ket", multiline=
│ │ │ +00245270: 5472 7565 290a 2020 7461 6773 3a0a 2020  True).  tags:.  
│ │ │ +00245280: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +00245290: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ +002452a0: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ +002452b0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +002452c0: 2d37 2862 290a 2020 2d20 6469 7361 626c  -7(b).  - disabl
│ │ │ +002452d0: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ +002452e0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +002452f0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +00245300: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +00245310: 6565 6465 640a 2020 2d20 7365 7276 6963  eeded.  - servic
│ │ │ +00245320: 655f 6e66 735f 6469 7361 626c 6564 0a20  e_nfs_disabled. 
│ │ │ +00245330: 202d 2073 7065 6369 616c 5f73 6572 7669   - special_servi
│ │ │ +00245340: 6365 5f62 6c6f 636b 0a20 202d 2075 6e6b  ce_block.  - unk
│ │ │ +00245350: 6e6f 776e 5f73 6576 6572 6974 790a 2020  nown_severity.  
│ │ │ +00245360: 7768 656e 3a20 2722 6b65 726e 656c 2220  when: '"kernel" 
│ │ │ +00245370: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +00245380: 2e70 6163 6b61 6765 7327 0a3c 2f63 6f64  .packages'.
Remed │ │ │ +00245440: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ +00245450: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ +00245500: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +00245520: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +00245550: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +002454e0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +002454f0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +00245510: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +00245530: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +00245540: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

include │ │ │ +00245590: 2064 6973 6162 6c65 5f6e 6673 2d73 6572 disable_nfs-ser │ │ │ +002455a0: 7665 720a 0a63 6c61 7373 2064 6973 6162 ver..class disab │ │ │ +002455b0: 6c65 5f6e 6673 2d73 6572 7665 7220 7b0a le_nfs-server {. │ │ │ +002455c0: 2020 7365 7276 6963 6520 7b27 6e66 732d service {'nfs- │ │ │ +002455d0: 7365 7276 6572 273a 0a20 2020 2065 6e61 server':. ena │ │ │ +002455e0: 626c 6520 3d26 6774 3b20 6661 6c73 652c ble => false, │ │ │ +002455f0: 0a20 2020 2065 6e73 7572 6520 3d26 6774 . ensure => │ │ │ +00245600: 3b20 2773 746f 7070 6564 272c 0a20 207d ; 'stopped',. } │ │ │ +00245610: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e .}. │ │ │ +00245620: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22

Remediation O │ │ │ +002456d0: 5342 7569 6c64 2042 6c75 6570 7269 6e74 SBuild Blueprint │ │ │ +002456e0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +002456f0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
.
│ │ │ +00245730: 5b63 7573 746f 6d69 7a61 7469 6f6e 732e  [customizations.
│ │ │ +00245740: 7365 7276 6963 6573 5d0a 6d61 736b 6564  services].masked
│ │ │ +00245750: 203d 205b 226e 6673 2d73 6572 7665 7222   = ["nfs-server"
│ │ │ +00245760: 5d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  ].
< │ │ │ 00245770: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediati │ │ │ -0024f840: 6f6e 2041 6e61 636f 6e64 6120 736e 6970 on Anaconda snip │ │ │ -0024f850: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -0024f860: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -0024f870: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -0024f880: 7365 2220 6964 3d22 6964 3736 3822 3e3c se" id="id768">< │ │ │ -0024f890: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -0024f8a0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -0024f8b0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -0024f8c0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -0024f8d0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -0024f8e0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -0024f8f0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -0024f930: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -0024f940: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -0024f960: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ -0024f970: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 ..packag │ │ │ -0024f990: 6520 2d2d 7265 6d6f 7665 3d74 656c 6e65 e --remove=telne │ │ │ -0024f9a0: 742d 7365 7276 6572 0a3c 2f63 6f64 653e t-server. │ │ │ -0024f9b0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063
Remedia │ │ │ -0024fa60: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ -0024fa70: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -0024fa80: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -0024fa90: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -0024faa0: 7365 2220 6964 3d22 6964 3736 3922 3e3c se" id="id769">< │ │ │ -0024fab0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -0024fac0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -0024fad0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -0024fae0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -0024faf0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -0024fb00: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -0024fb10: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -0024fb50: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -0024fb60: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -0024fb80: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ -0024fb90: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 .include │ │ │ -0024fbb0: 2072 656d 6f76 655f 7465 6c6e 6574 2d73 remove_telnet-s │ │ │ -0024fbc0: 6572 7665 720a 0a63 6c61 7373 2072 656d erver..class rem │ │ │ -0024fbd0: 6f76 655f 7465 6c6e 6574 2d73 6572 7665 ove_telnet-serve │ │ │ -0024fbe0: 7220 7b0a 2020 7061 636b 6167 6520 7b20 r {. package { │ │ │ -0024fbf0: 2774 656c 6e65 742d 7365 7276 6572 273a 'telnet-server': │ │ │ -0024fc00: 0a20 2020 2065 6e73 7572 6520 3d26 6774 . ensure => │ │ │ -0024fc10: 3b20 2770 7572 6765 6427 2c0a 2020 7d0a ; 'purged',. }. │ │ │ -0024fc20: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c }.< │ │ │ -0024fc30: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -0024fce0: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -0024fcf0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -0024fd70: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -0024fd90: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -0024fde0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -0024fe10: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: 'Unins
│ │ │ -0024fe30: 7461 6c6c 2074 656c 6e65 742d 7365 7276  tall telnet-serv
│ │ │ -0024fe40: 6572 2050 6163 6b61 6765 3a20 456e 7375  er Package: Ensu
│ │ │ -0024fe50: 7265 2074 656c 6e65 742d 7365 7276 6572  re telnet-server
│ │ │ -0024fe60: 2069 7320 7265 6d6f 7665 6427 0a20 2061   is removed'.  a
│ │ │ -0024fe70: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ -0024fe80: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ -0024fe90: 3a20 7465 6c6e 6574 2d73 6572 7665 720a  : telnet-server.
│ │ │ -0024fea0: 2020 2020 7374 6174 653a 2061 6273 656e      state: absen
│ │ │ -0024feb0: 740a 2020 7461 6773 3a0a 2020 2d20 4e49  t.  tags:.  - NI
│ │ │ -0024fec0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -0024fed0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -0024fee0: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ -0024fef0: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ -0024ff00: 290a 2020 2d20 5043 492d 4453 532d 5265  ).  - PCI-DSS-Re
│ │ │ -0024ff10: 712d 322e 322e 320a 2020 2d20 5043 492d  q-2.2.2.  - PCI-
│ │ │ -0024ff20: 4453 5376 342d 322e 320a 2020 2d20 5043  DSSv4-2.2.  - PC
│ │ │ -0024ff30: 492d 4453 5376 342d 322e 322e 340a 2020  I-DSSv4-2.2.4.  
│ │ │ -0024ff40: 2d20 6469 7361 626c 655f 7374 7261 7465  - disable_strate
│ │ │ -0024ff50: 6779 0a20 202d 2068 6967 685f 7365 7665  gy.  - high_seve
│ │ │ -0024ff60: 7269 7479 0a20 202d 206c 6f77 5f63 6f6d  rity.  - low_com
│ │ │ -0024ff70: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ -0024ff80: 6469 7372 7570 7469 6f6e 0a20 202d 206e  disruption.  - n
│ │ │ -0024ff90: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -0024ffa0: 2020 2d20 7061 636b 6167 655f 7465 6c6e    - package_teln
│ │ │ -0024ffb0: 6574 2d73 6572 7665 725f 7265 6d6f 7665  et-server_remove
│ │ │ -0024ffc0: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ -0024ffd0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Sh │ │ │ -00250080: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
low
Disr │ │ │ -0024fda0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -0024fdb0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -0024fdf0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -0024fe00: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
│ │ │ -00250120: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ -002501c0: 2320 4341 5554 494f 4e3a 2054 6869 7320  # CAUTION: This 
│ │ │ -002501d0: 7265 6d65 6469 6174 696f 6e20 7363 7269  remediation scri
│ │ │ -002501e0: 7074 2077 696c 6c20 7265 6d6f 7665 2074  pt will remove t
│ │ │ -002501f0: 656c 6e65 742d 7365 7276 6572 0a23 2066  elnet-server.# f
│ │ │ -00250200: 726f 6d20 7468 6520 7379 7374 656d 2c20  rom the system, 
│ │ │ -00250210: 616e 6420 6d61 7920 7265 6d6f 7665 2061  and may remove a
│ │ │ -00250220: 6e79 2070 6163 6b61 6765 730a 2320 7468  ny packages.# th
│ │ │ -00250230: 6174 2064 6570 656e 6420 6f6e 2074 656c  at depend on tel
│ │ │ -00250240: 6e65 742d 7365 7276 6572 2e20 4578 6563  net-server. Exec
│ │ │ -00250250: 7574 6520 7468 6973 0a23 2072 656d 6564  ute this.# remed
│ │ │ -00250260: 6961 7469 6f6e 2041 4654 4552 2074 6573  iation AFTER tes
│ │ │ -00250270: 7469 6e67 206f 6e20 6120 6e6f 6e2d 7072  ting on a non-pr
│ │ │ -00250280: 6f64 7563 7469 6f6e 0a23 2073 7973 7465  oduction.# syste
│ │ │ -00250290: 6d21 0a0a 0a69 6620 7270 6d20 2d71 202d  m!...if rpm -q -
│ │ │ -002502a0: 2d71 7569 6574 2022 7465 6c6e 6574 2d73  -quiet "telnet-s
│ │ │ -002502b0: 6572 7665 7222 203b 2074 6865 6e0a 646e  erver" ; then.dn
│ │ │ -002502c0: 6620 7265 6d6f 7665 202d 7920 2d2d 6e6f  f remove -y --no
│ │ │ -002502d0: 6175 746f 7265 6d6f 7665 2022 7465 6c6e  autoremove "teln
│ │ │ -002502e0: 6574 2d73 6572 7665 7222 0a66 690a 3c2f  et-server".fi.
│ │ │ +0024f8d0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ +0024f960: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +0024f970: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
│ │ │ -00250110: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00250140: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00250150: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00250190: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -002501a0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexi │ │ │ +0024f8e0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +0024f8f0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +0024f930: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +0024f940: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
- name: '
│ │ │ +0024f990: 556e 696e 7374 616c 6c20 7465 6c6e 6574  Uninstall telnet
│ │ │ +0024f9a0: 2d73 6572 7665 7220 5061 636b 6167 653a  -server Package:
│ │ │ +0024f9b0: 2045 6e73 7572 6520 7465 6c6e 6574 2d73   Ensure telnet-s
│ │ │ +0024f9c0: 6572 7665 7220 6973 2072 656d 6f76 6564  erver is removed
│ │ │ +0024f9d0: 270a 2020 616e 7369 626c 652e 6275 696c  '.  ansible.buil
│ │ │ +0024f9e0: 7469 6e2e 7061 636b 6167 653a 0a20 2020  tin.package:.   
│ │ │ +0024f9f0: 206e 616d 653a 2074 656c 6e65 742d 7365   name: telnet-se
│ │ │ +0024fa00: 7276 6572 0a20 2020 2073 7461 7465 3a20  rver.    state: 
│ │ │ +0024fa10: 6162 7365 6e74 0a20 2074 6167 733a 0a20  absent.  tags:. 
│ │ │ +0024fa20: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +0024fa30: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ +0024fa40: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ +0024fa50: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +0024fa60: 4d2d 3728 6229 0a20 202d 2050 4349 2d44  M-7(b).  - PCI-D
│ │ │ +0024fa70: 5353 2d52 6571 2d32 2e32 2e32 0a20 202d  SS-Req-2.2.2.  -
│ │ │ +0024fa80: 2050 4349 2d44 5353 7634 2d32 2e32 0a20   PCI-DSSv4-2.2. 
│ │ │ +0024fa90: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ +0024faa0: 2e34 0a20 202d 2064 6973 6162 6c65 5f73  .4.  - disable_s
│ │ │ +0024fab0: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +0024fac0: 5f73 6576 6572 6974 790a 2020 2d20 6c6f  _severity.  - lo
│ │ │ +0024fad0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +0024fae0: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +0024faf0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +0024fb00: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ +0024fb10: 5f74 656c 6e65 742d 7365 7276 6572 5f72  _telnet-server_r
│ │ │ +0024fb20: 656d 6f76 6564 0a3c 2f63 6f64 653e 3c2f  emoved.
Remediati │ │ │ +0024fbe0: 6f6e 2050 7570 7065 7420 736e 6970 7065 on Puppet snippe │ │ │ +0024fbf0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +0024fc70: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +0024fc80: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +0024fca0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +0024fcb0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +0024fcd0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +0024fcf0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ +0024fd20: 3c63 6f64 653e 0a69 6e63 6c75 6465 2072  .include r
│ │ │ +0024fd30: 656d 6f76 655f 7465 6c6e 6574 2d73 6572  emove_telnet-ser
│ │ │ +0024fd40: 7665 720a 0a63 6c61 7373 2072 656d 6f76  ver..class remov
│ │ │ +0024fd50: 655f 7465 6c6e 6574 2d73 6572 7665 7220  e_telnet-server 
│ │ │ +0024fd60: 7b0a 2020 7061 636b 6167 6520 7b20 2774  {.  package { 't
│ │ │ +0024fd70: 656c 6e65 742d 7365 7276 6572 273a 0a20  elnet-server':. 
│ │ │ +0024fd80: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ +0024fd90: 2770 7572 6765 6427 2c0a 2020 7d0a 7d0a  'purged',.  }.}.
│ │ │ +0024fda0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +0024fe50: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ +0024fe60: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ +0024fe70: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +0024ff10: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0024ff60: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.# 
│ │ │ +0024ffa0: 4341 5554 494f 4e3a 2054 6869 7320 7265  CAUTION: This re
│ │ │ +0024ffb0: 6d65 6469 6174 696f 6e20 7363 7269 7074  mediation script
│ │ │ +0024ffc0: 2077 696c 6c20 7265 6d6f 7665 2074 656c   will remove tel
│ │ │ +0024ffd0: 6e65 742d 7365 7276 6572 0a23 2066 726f  net-server.# fro
│ │ │ +0024ffe0: 6d20 7468 6520 7379 7374 656d 2c20 616e  m the system, an
│ │ │ +0024fff0: 6420 6d61 7920 7265 6d6f 7665 2061 6e79  d may remove any
│ │ │ +00250000: 2070 6163 6b61 6765 730a 2320 7468 6174   packages.# that
│ │ │ +00250010: 2064 6570 656e 6420 6f6e 2074 656c 6e65   depend on telne
│ │ │ +00250020: 742d 7365 7276 6572 2e20 4578 6563 7574  t-server. Execut
│ │ │ +00250030: 6520 7468 6973 0a23 2072 656d 6564 6961  e this.# remedia
│ │ │ +00250040: 7469 6f6e 2041 4654 4552 2074 6573 7469  tion AFTER testi
│ │ │ +00250050: 6e67 206f 6e20 6120 6e6f 6e2d 7072 6f64  ng on a non-prod
│ │ │ +00250060: 7563 7469 6f6e 0a23 2073 7973 7465 6d21  uction.# system!
│ │ │ +00250070: 0a0a 0a69 6620 7270 6d20 2d71 202d 2d71  ...if rpm -q --q
│ │ │ +00250080: 7569 6574 2022 7465 6c6e 6574 2d73 6572  uiet "telnet-ser
│ │ │ +00250090: 7665 7222 203b 2074 6865 6e0a 646e 6620  ver" ; then.dnf 
│ │ │ +002500a0: 7265 6d6f 7665 202d 7920 2d2d 6e6f 6175  remove -y --noau
│ │ │ +002500b0: 746f 7265 6d6f 7665 2022 7465 6c6e 6574  toremove "telnet
│ │ │ +002500c0: 2d73 6572 7665 7222 0a66 690a 3c2f 636f  -server".fi.
< │ │ │ +002500e0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +002500f0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +00250100: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +00250110: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +00250120: 6437 3731 2220 7461 6269 6e64 6578 3d22 d771" tabindex=" │ │ │ +00250130: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +00250140: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +00250150: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +00250160: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +00250170: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +00250180: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ +00250190: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +002501a0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
Co │ │ │ +0024fef0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0024ff20: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0024ff40: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0024ff50: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0024ff70: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +0024ff80: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
low< │ │ │ +00250240: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +00250290: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
..p
│ │ │ +002502d0: 6163 6b61 6765 202d 2d72 656d 6f76 653d  ackage --remove=
│ │ │ +002502e0: 7465 6c6e 6574 2d73 6572 7665 720a 3c2f  telnet-server.
Co │ │ │ +00250220: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +00250250: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +00250270: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +00250280: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +002502a0: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +002502b0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ -00250ec0: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ -00250ed0: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ -00250ee0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -00250fb0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -00250fc0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
..package --rem
│ │ │ -00251020: 6f76 653d 7465 6c6e 6574 0a3c 2f63 6f64  ove=telnet.
Remed │ │ │ -002510e0: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ -002510f0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
low
Disru │ │ │ -00250f90: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -00250fa0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -00250fe0: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -00250ff0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ -002511a0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -002511c0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -002511f0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -00251180: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -00251190: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -002511b0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -002511d0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -002511e0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -00251220: 7072 653e 3c63 6f64 653e 0a69 6e63 6c75 pre>.inclu │ │ │ -00251230: 6465 2072 656d 6f76 655f 7465 6c6e 6574 de remove_telnet │ │ │ -00251240: 0a0a 636c 6173 7320 7265 6d6f 7665 5f74 ..class remove_t │ │ │ -00251250: 656c 6e65 7420 7b0a 2020 7061 636b 6167 elnet {. packag │ │ │ -00251260: 6520 7b20 2774 656c 6e65 7427 3a0a 2020 e { 'telnet':. │ │ │ -00251270: 2020 656e 7375 7265 203d 2667 743b 2027 ensure => ' │ │ │ -00251280: 7075 7267 6564 272c 0a20 207d 0a7d 0a3c purged',. }.}.< │ │ │ -00251290: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469 /code>R │ │ │ -00251340: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -00251350: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
│ │ │ -002513f0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ -00251490: 206e 616d 653a 2027 5265 6d6f 7665 2074   name: 'Remove t
│ │ │ -002514a0: 656c 6e65 7420 436c 6965 6e74 733a 2045  elnet Clients: E
│ │ │ -002514b0: 6e73 7572 6520 7465 6c6e 6574 2069 7320  nsure telnet is 
│ │ │ -002514c0: 7265 6d6f 7665 6427 0a20 2061 6e73 6962  removed'.  ansib
│ │ │ -002514d0: 6c65 2e62 7569 6c74 696e 2e70 6163 6b61  le.builtin.packa
│ │ │ -002514e0: 6765 3a0a 2020 2020 6e61 6d65 3a20 7465  ge:.    name: te
│ │ │ -002514f0: 6c6e 6574 0a20 2020 2073 7461 7465 3a20  lnet.    state: 
│ │ │ -00251500: 6162 7365 6e74 0a20 2074 6167 733a 0a20  absent.  tags:. 
│ │ │ -00251510: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ -00251520: 332e 312e 3133 0a20 202d 2050 4349 2d44  3.1.13.  - PCI-D
│ │ │ -00251530: 5353 7634 2d32 2e32 0a20 202d 2050 4349  SSv4-2.2.  - PCI
│ │ │ -00251540: 2d44 5353 7634 2d32 2e32 2e34 0a20 202d  -DSSv4-2.2.4.  -
│ │ │ -00251550: 2064 6973 6162 6c65 5f73 7472 6174 6567   disable_strateg
│ │ │ -00251560: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -00251570: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -00251580: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -00251590: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ -002515a0: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ -002515b0: 2d20 7061 636b 6167 655f 7465 6c6e 6574  - package_telnet
│ │ │ -002515c0: 5f72 656d 6f76 6564 0a3c 2f63 6f64 653e  _removed.
│ │ │ -002515d0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -00251680: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ -00251690: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -00251710: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr> │ │ │ -00251750: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 disable
│ │ │ -002513e0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00251410: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00251420: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00251460: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -00251470: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexit │ │ │ -00251720: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ -00251740: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ -00251770: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ -00251790: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
│ │ │ -002517c0: 3c63 6f64 653e 0a23 2043 4155 5449 4f4e  .# CAUTION
│ │ │ -002517d0: 3a20 5468 6973 2072 656d 6564 6961 7469  : This remediati
│ │ │ -002517e0: 6f6e 2073 6372 6970 7420 7769 6c6c 2072  on script will r
│ │ │ -002517f0: 656d 6f76 6520 7465 6c6e 6574 0a23 2066  emove telnet.# f
│ │ │ -00251800: 726f 6d20 7468 6520 7379 7374 656d 2c20  rom the system, 
│ │ │ -00251810: 616e 6420 6d61 7920 7265 6d6f 7665 2061  and may remove a
│ │ │ -00251820: 6e79 2070 6163 6b61 6765 730a 2320 7468  ny packages.# th
│ │ │ -00251830: 6174 2064 6570 656e 6420 6f6e 2074 656c  at depend on tel
│ │ │ -00251840: 6e65 742e 2045 7865 6375 7465 2074 6869  net. Execute thi
│ │ │ -00251850: 730a 2320 7265 6d65 6469 6174 696f 6e20  s.# remediation 
│ │ │ -00251860: 4146 5445 5220 7465 7374 696e 6720 6f6e  AFTER testing on
│ │ │ -00251870: 2061 206e 6f6e 2d70 726f 6475 6374 696f   a non-productio
│ │ │ -00251880: 6e0a 2320 7379 7374 656d 210a 0a0a 6966  n.# system!...if
│ │ │ -00251890: 2072 706d 202d 7120 2d2d 7175 6965 7420   rpm -q --quiet 
│ │ │ -002518a0: 2274 656c 6e65 7422 203b 2074 6865 6e0a  "telnet" ; then.
│ │ │ -002518b0: 646e 6620 7265 6d6f 7665 202d 7920 2d2d  dnf remove -y --
│ │ │ -002518c0: 6e6f 6175 746f 7265 6d6f 7665 2022 7465  noautoremove "te
│ │ │ -002518d0: 6c6e 6574 220a 6669 0a3c 2f63 6f64 653e  lnet".fi.
│ │ │ +00250ec0: 5265 6d65 6469 6174 696f 6e20 416e 7369  Remediation Ansi
│ │ │ +00250ed0: 626c 6520 736e 6970 7065 7420 e287 b23c  ble snippet ...<
│ │ │ +00250ee0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173  /a>
< │ │ │ +00250fb0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +00250fc0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ +00251010: 2d20 6e61 6d65 3a20 2752 656d 6f76 6520  - name: 'Remove 
│ │ │ +00251020: 7465 6c6e 6574 2043 6c69 656e 7473 3a20  telnet Clients: 
│ │ │ +00251030: 456e 7375 7265 2074 656c 6e65 7420 6973  Ensure telnet is
│ │ │ +00251040: 2072 656d 6f76 6564 270a 2020 616e 7369   removed'.  ansi
│ │ │ +00251050: 626c 652e 6275 696c 7469 6e2e 7061 636b  ble.builtin.pack
│ │ │ +00251060: 6167 653a 0a20 2020 206e 616d 653a 2074  age:.    name: t
│ │ │ +00251070: 656c 6e65 740a 2020 2020 7374 6174 653a  elnet.    state:
│ │ │ +00251080: 2061 6273 656e 740a 2020 7461 6773 3a0a   absent.  tags:.
│ │ │ +00251090: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ +002510a0: 2d33 2e31 2e31 330a 2020 2d20 5043 492d  -3.1.13.  - PCI-
│ │ │ +002510b0: 4453 5376 342d 322e 320a 2020 2d20 5043  DSSv4-2.2.  - PC
│ │ │ +002510c0: 492d 4453 5376 342d 322e 322e 340a 2020  I-DSSv4-2.2.4.  
│ │ │ +002510d0: 2d20 6469 7361 626c 655f 7374 7261 7465  - disable_strate
│ │ │ +002510e0: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ +002510f0: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ +00251100: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +00251110: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ +00251120: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ +00251130: 202d 2070 6163 6b61 6765 5f74 656c 6e65   - package_telne
│ │ │ +00251140: 745f 7265 6d6f 7665 640a 3c2f 636f 6465  t_removed.
Remedi │ │ │ +00251200: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ +00251210: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +00251220: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +00251250: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Complexity:low
Disrup │ │ │ +00250f90: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +00250fa0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +00250fe0: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ +00250ff0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ +002512c0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +002512e0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +00251310: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +002512a0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +002512b0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +002512f0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +00251300: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

.includ │ │ │ +00251350: 6520 7265 6d6f 7665 5f74 656c 6e65 740a e remove_telnet. │ │ │ +00251360: 0a63 6c61 7373 2072 656d 6f76 655f 7465 .class remove_te │ │ │ +00251370: 6c6e 6574 207b 0a20 2070 6163 6b61 6765 lnet {. package │ │ │ +00251380: 207b 2027 7465 6c6e 6574 273a 0a20 2020 { 'telnet':. │ │ │ +00251390: 2065 6e73 7572 6520 3d26 6774 3b20 2770 ensure => 'p │ │ │ +002513a0: 7572 6765 6427 2c0a 2020 7d0a 7d0a 3c2f urged',. }.}.

Re │ │ │ +00251460: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ +00251470: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
Comp │ │ │ +00251500: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +00251510: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +00251530: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +00251550: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +00251560: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +002515a0: 3c70 7265 3e3c 636f 6465 3e0a 2320 4341
.# CA
│ │ │ +002515b0: 5554 494f 4e3a 2054 6869 7320 7265 6d65  UTION: This reme
│ │ │ +002515c0: 6469 6174 696f 6e20 7363 7269 7074 2077  diation script w
│ │ │ +002515d0: 696c 6c20 7265 6d6f 7665 2074 656c 6e65  ill remove telne
│ │ │ +002515e0: 740a 2320 6672 6f6d 2074 6865 2073 7973  t.# from the sys
│ │ │ +002515f0: 7465 6d2c 2061 6e64 206d 6179 2072 656d  tem, and may rem
│ │ │ +00251600: 6f76 6520 616e 7920 7061 636b 6167 6573  ove any packages
│ │ │ +00251610: 0a23 2074 6861 7420 6465 7065 6e64 206f  .# that depend o
│ │ │ +00251620: 6e20 7465 6c6e 6574 2e20 4578 6563 7574  n telnet. Execut
│ │ │ +00251630: 6520 7468 6973 0a23 2072 656d 6564 6961  e this.# remedia
│ │ │ +00251640: 7469 6f6e 2041 4654 4552 2074 6573 7469  tion AFTER testi
│ │ │ +00251650: 6e67 206f 6e20 6120 6e6f 6e2d 7072 6f64  ng on a non-prod
│ │ │ +00251660: 7563 7469 6f6e 0a23 2073 7973 7465 6d21  uction.# system!
│ │ │ +00251670: 0a0a 0a69 6620 7270 6d20 2d71 202d 2d71  ...if rpm -q --q
│ │ │ +00251680: 7569 6574 2022 7465 6c6e 6574 2220 3b20  uiet "telnet" ; 
│ │ │ +00251690: 7468 656e 0a64 6e66 2072 656d 6f76 6520  then.dnf remove 
│ │ │ +002516a0: 2d79 202d 2d6e 6f61 7574 6f72 656d 6f76  -y --noautoremov
│ │ │ +002516b0: 6520 2274 656c 6e65 7422 0a66 690a 3c2f  e "telnet".fi.
Re │ │ │ +00251770: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ +00251780: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
│ │ │ +00251820: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ +002518c0: 0a70 6163 6b61 6765 202d 2d72 656d 6f76  .package --remov
│ │ │ +002518d0: 653d 7465 6c6e 6574 0a3c 2f63 6f64 653e  e=telnet.
│ │ │  002518e0: 3c2f 7072 653e 3c2f 6469 763e 3c2f 6469  
│ │ │ +00251810: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00251840: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00251850: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00251890: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +002518a0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Remedi │ │ │ -00252e40: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ -00252e50: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -00252ee0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -00252ef0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -00252f10: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -00252f30: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -00252f40: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -00252f80: 3c70 7265 3e3c 636f 6465 3e0a 0a70 6163
..pac
│ │ │ -00252f90: 6b61 6765 202d 2d72 656d 6f76 653d 7466  kage --remove=tf
│ │ │ -00252fa0: 7470 2d73 6572 7665 720a 3c2f 636f 6465  tp-server.
Remedi │ │ │ -00253060: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ -00253070: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -00253080: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -002530b0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -00253120: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -00253140: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -00253170: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -00253100: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -00253110: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -00253150: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -00253160: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

.includ │ │ │ -002531b0: 6520 7265 6d6f 7665 5f74 6674 702d 7365 e remove_tftp-se │ │ │ -002531c0: 7276 6572 0a0a 636c 6173 7320 7265 6d6f rver..class remo │ │ │ -002531d0: 7665 5f74 6674 702d 7365 7276 6572 207b ve_tftp-server { │ │ │ -002531e0: 0a20 2070 6163 6b61 6765 207b 2027 7466 . package { 'tf │ │ │ -002531f0: 7470 2d73 6572 7665 7227 3a0a 2020 2020 tp-server':. │ │ │ -00253200: 656e 7375 7265 203d 2667 743b 2027 7075 ensure => 'pu │ │ │ -00253210: 7267 6564 272c 0a20 207d 0a7d 0a3c 2f63 rged',. }.}.

│ │ │ -00253230: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -002532d0: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -002532e0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -002532f0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -00253390: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -002533e0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
- n
│ │ │ -00253420: 616d 653a 2027 556e 696e 7374 616c 6c20  ame: 'Uninstall 
│ │ │ -00253430: 7466 7470 2d73 6572 7665 7220 5061 636b  tftp-server Pack
│ │ │ -00253440: 6167 653a 2045 6e73 7572 6520 7466 7470  age: Ensure tftp
│ │ │ -00253450: 2d73 6572 7665 7220 6973 2072 656d 6f76  -server is remov
│ │ │ -00253460: 6564 270a 2020 616e 7369 626c 652e 6275  ed'.  ansible.bu
│ │ │ -00253470: 696c 7469 6e2e 7061 636b 6167 653a 0a20  iltin.package:. 
│ │ │ -00253480: 2020 206e 616d 653a 2074 6674 702d 7365     name: tftp-se
│ │ │ -00253490: 7276 6572 0a20 2020 2073 7461 7465 3a20  rver.    state: 
│ │ │ -002534a0: 6162 7365 6e74 0a20 2074 6167 733a 0a20  absent.  tags:. 
│ │ │ -002534b0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -002534c0: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ -002534d0: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ -002534e0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -002534f0: 4d2d 3728 6229 0a20 202d 2050 4349 2d44  M-7(b).  - PCI-D
│ │ │ -00253500: 5353 7634 2d32 2e32 0a20 202d 2050 4349  SSv4-2.2.  - PCI
│ │ │ -00253510: 2d44 5353 7634 2d32 2e32 2e34 0a20 202d  -DSSv4-2.2.4.  -
│ │ │ -00253520: 2064 6973 6162 6c65 5f73 7472 6174 6567   disable_strateg
│ │ │ -00253530: 790a 2020 2d20 6869 6768 5f73 6576 6572  y.  - high_sever
│ │ │ -00253540: 6974 790a 2020 2d20 6c6f 775f 636f 6d70  ity.  - low_comp
│ │ │ -00253550: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -00253560: 6973 7275 7074 696f 6e0a 2020 2d20 6e6f  isruption.  - no
│ │ │ -00253570: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ -00253580: 202d 2070 6163 6b61 6765 5f74 6674 702d   - package_tftp-
│ │ │ -00253590: 7365 7276 6572 5f72 656d 6f76 6564 0a3c  server_removed.<
│ │ │ -002535a0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -00253650: 656d 6564 6961 7469 6f6e 2053 6865 6c6c emediation Shell │ │ │ -00253660: 2073 6372 6970 7420 e287 b23c 2f61 3e3c script ...< │ │ │ -00253670: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Co │ │ │ -00253370: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -002533a0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -002533c0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -002533d0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -002533f0: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -00253400: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Com │ │ │ -002536f0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -00253720: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -00253740: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -00253750: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -00253770: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -00253780: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.# C
│ │ │ -002537a0: 4155 5449 4f4e 3a20 5468 6973 2072 656d  AUTION: This rem
│ │ │ -002537b0: 6564 6961 7469 6f6e 2073 6372 6970 7420  ediation script 
│ │ │ -002537c0: 7769 6c6c 2072 656d 6f76 6520 7466 7470  will remove tftp
│ │ │ -002537d0: 2d73 6572 7665 720a 2320 6672 6f6d 2074  -server.# from t
│ │ │ -002537e0: 6865 2073 7973 7465 6d2c 2061 6e64 206d  he system, and m
│ │ │ -002537f0: 6179 2072 656d 6f76 6520 616e 7920 7061  ay remove any pa
│ │ │ -00253800: 636b 6167 6573 0a23 2074 6861 7420 6465  ckages.# that de
│ │ │ -00253810: 7065 6e64 206f 6e20 7466 7470 2d73 6572  pend on tftp-ser
│ │ │ -00253820: 7665 722e 2045 7865 6375 7465 2074 6869  ver. Execute thi
│ │ │ -00253830: 730a 2320 7265 6d65 6469 6174 696f 6e20  s.# remediation 
│ │ │ -00253840: 4146 5445 5220 7465 7374 696e 6720 6f6e  AFTER testing on
│ │ │ -00253850: 2061 206e 6f6e 2d70 726f 6475 6374 696f   a non-productio
│ │ │ -00253860: 6e0a 2320 7379 7374 656d 210a 0a0a 6966  n.# system!...if
│ │ │ -00253870: 2072 706d 202d 7120 2d2d 7175 6965 7420   rpm -q --quiet 
│ │ │ -00253880: 2274 6674 702d 7365 7276 6572 2220 3b20  "tftp-server" ; 
│ │ │ -00253890: 7468 656e 0a64 6e66 2072 656d 6f76 6520  then.dnf remove 
│ │ │ -002538a0: 2d79 202d 2d6e 6f61 7574 6f72 656d 6f76  -y --noautoremov
│ │ │ -002538b0: 6520 2274 6674 702d 7365 7276 6572 220a  e "tftp-server".
│ │ │ -002538c0: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e  fi.
│ │ │ +00252e40: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ +00252e50: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ +00252f00: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +00252f20: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +00252f50: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +00252ee0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +00252ef0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +00252f10: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +00252f30: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +00252f40: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ +00252f80: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ +00252f90: 3a20 2755 6e69 6e73 7461 6c6c 2074 6674 : 'Uninstall tft │ │ │ +00252fa0: 702d 7365 7276 6572 2050 6163 6b61 6765 p-server Package │ │ │ +00252fb0: 3a20 456e 7375 7265 2074 6674 702d 7365 : Ensure tftp-se │ │ │ +00252fc0: 7276 6572 2069 7320 7265 6d6f 7665 6427 rver is removed' │ │ │ +00252fd0: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74 . ansible.built │ │ │ +00252fe0: 696e 2e70 6163 6b61 6765 3a0a 2020 2020 in.package:. │ │ │ +00252ff0: 6e61 6d65 3a20 7466 7470 2d73 6572 7665 name: tftp-serve │ │ │ +00253000: 720a 2020 2020 7374 6174 653a 2061 6273 r. state: abs │ │ │ +00253010: 656e 740a 2020 7461 6773 3a0a 2020 2d20 ent. tags:. - │ │ │ +00253020: 4e49 5354 2d38 3030 2d35 332d 434d 2d36 NIST-800-53-CM-6 │ │ │ +00253030: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ +00253040: 2d35 332d 434d 2d37 2861 290a 2020 2d20 -53-CM-7(a). - │ │ │ +00253050: 4e49 5354 2d38 3030 2d35 332d 434d 2d37 NIST-800-53-CM-7 │ │ │ +00253060: 2862 290a 2020 2d20 5043 492d 4453 5376 (b). - PCI-DSSv │ │ │ +00253070: 342d 322e 320a 2020 2d20 5043 492d 4453 4-2.2. - PCI-DS │ │ │ +00253080: 5376 342d 322e 322e 340a 2020 2d20 6469 Sv4-2.2.4. - di │ │ │ +00253090: 7361 626c 655f 7374 7261 7465 6779 0a20 sable_strategy. │ │ │ +002530a0: 202d 2068 6967 685f 7365 7665 7269 7479 - high_severity │ │ │ +002530b0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ +002530c0: 6974 790a 2020 2d20 6c6f 775f 6469 7372 ity. - low_disr │ │ │ +002530d0: 7570 7469 6f6e 0a20 202d 206e 6f5f 7265 uption. - no_re │ │ │ +002530e0: 626f 6f74 5f6e 6565 6465 640a 2020 2d20 boot_needed. - │ │ │ +002530f0: 7061 636b 6167 655f 7466 7470 2d73 6572 package_tftp-ser │ │ │ +00253100: 7665 725f 7265 6d6f 7665 640a 3c2f 636f ver_removed.
< │ │ │ +00253120: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +00253130: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +00253140: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +00253150: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +00253160: 6437 3739 2220 7461 6269 6e64 6578 3d22 d779" tabindex=" │ │ │ +00253170: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +00253180: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +00253190: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +002531a0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +002531b0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +002531c0: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ +002531d0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +00253260: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +00253270: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +00253290: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +002532b0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +002532c0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +00253300: 3c70 7265 3e3c 636f 6465 3e0a 696e 636c
.incl
│ │ │ +00253310: 7564 6520 7265 6d6f 7665 5f74 6674 702d  ude remove_tftp-
│ │ │ +00253320: 7365 7276 6572 0a0a 636c 6173 7320 7265  server..class re
│ │ │ +00253330: 6d6f 7665 5f74 6674 702d 7365 7276 6572  move_tftp-server
│ │ │ +00253340: 207b 0a20 2070 6163 6b61 6765 207b 2027   {.  package { '
│ │ │ +00253350: 7466 7470 2d73 6572 7665 7227 3a0a 2020  tftp-server':.  
│ │ │ +00253360: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ +00253370: 7075 7267 6564 272c 0a20 207d 0a7d 0a3c  purged',.  }.}.<
│ │ │ +00253380: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +00253430: 656d 6564 6961 7469 6f6e 2053 6865 6c6c emediation Shell │ │ │ +00253440: 2073 6372 6970 7420 e287 b23c 2f61 3e3c script ...< │ │ │ +00253450: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ +002534d0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +00253500: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +00253520: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +00253530: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +00253550: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +00253560: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.# C
│ │ │ +00253580: 4155 5449 4f4e 3a20 5468 6973 2072 656d  AUTION: This rem
│ │ │ +00253590: 6564 6961 7469 6f6e 2073 6372 6970 7420  ediation script 
│ │ │ +002535a0: 7769 6c6c 2072 656d 6f76 6520 7466 7470  will remove tftp
│ │ │ +002535b0: 2d73 6572 7665 720a 2320 6672 6f6d 2074  -server.# from t
│ │ │ +002535c0: 6865 2073 7973 7465 6d2c 2061 6e64 206d  he system, and m
│ │ │ +002535d0: 6179 2072 656d 6f76 6520 616e 7920 7061  ay remove any pa
│ │ │ +002535e0: 636b 6167 6573 0a23 2074 6861 7420 6465  ckages.# that de
│ │ │ +002535f0: 7065 6e64 206f 6e20 7466 7470 2d73 6572  pend on tftp-ser
│ │ │ +00253600: 7665 722e 2045 7865 6375 7465 2074 6869  ver. Execute thi
│ │ │ +00253610: 730a 2320 7265 6d65 6469 6174 696f 6e20  s.# remediation 
│ │ │ +00253620: 4146 5445 5220 7465 7374 696e 6720 6f6e  AFTER testing on
│ │ │ +00253630: 2061 206e 6f6e 2d70 726f 6475 6374 696f   a non-productio
│ │ │ +00253640: 6e0a 2320 7379 7374 656d 210a 0a0a 6966  n.# system!...if
│ │ │ +00253650: 2072 706d 202d 7120 2d2d 7175 6965 7420   rpm -q --quiet 
│ │ │ +00253660: 2274 6674 702d 7365 7276 6572 2220 3b20  "tftp-server" ; 
│ │ │ +00253670: 7468 656e 0a64 6e66 2072 656d 6f76 6520  then.dnf remove 
│ │ │ +00253680: 2d79 202d 2d6e 6f61 7574 6f72 656d 6f76  -y --noautoremov
│ │ │ +00253690: 6520 2274 6674 702d 7365 7276 6572 220a  e "tftp-server".
│ │ │ +002536a0: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e  fi.
│ │ │ +002536b0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation A │ │ │ +00253760: 6e61 636f 6e64 6120 736e 6970 7065 7420 naconda snippet │ │ │ +00253770: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ +00253800: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +00253820: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +00253840: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +00253870: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +00253880: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
..package --
│ │ │ +002538b0: 7265 6d6f 7665 3d74 6674 702d 7365 7276  remove=tftp-serv
│ │ │ +002538c0: 6572 0a3c 2f63 6f64 653e 3c2f 7072 653e  er.
│ │ │ 002538d0: 3c2f 6469 763e 3c2f 6469 763e 3c2f 7464
│ │ │ 00253900: 3c74 7220 6461 7461 2d74 742d 6964 3d22 R │ │ │ -002540d0: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ -002540e0: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ -002540f0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -002541c0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -002541d0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -00254220: 0a0a 7061 636b 6167 6520 2d2d 7265 6d6f  ..package --remo
│ │ │ -00254230: 7665 3d72 7379 6e63 0a3c 2f63 6f64 653e  ve=rsync.
│ │ │ -00254240: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -002542f0: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ -00254300: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00254310: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00254320: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00254330: 7365 2220 6964 3d22 6964 3738 3422 3e3c se" id="id784">< │ │ │ -00254340: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -00254350: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -00254360: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -00254370: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -00254380: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Disruption:Strategy: │ │ │ -00254410: 3c74 643e 6469 7361 626c 653c 2f74 643e │ │ │ -00254420: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Complexity:low
Disrup │ │ │ -002541a0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -002541b0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -002541f0: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -00254200: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complex │ │ │ -00254390: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -002543a0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ -002543e0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -002543f0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
disable
.include │ │ │ -00254440: 2072 656d 6f76 655f 7273 796e 630a 0a63 remove_rsync..c │ │ │ -00254450: 6c61 7373 2072 656d 6f76 655f 7273 796e lass remove_rsyn │ │ │ -00254460: 6320 7b0a 2020 7061 636b 6167 6520 7b20 c {. package { │ │ │ -00254470: 2772 7379 6e63 273a 0a20 2020 2065 6e73 'rsync':. ens │ │ │ -00254480: 7572 6520 3d26 6774 3b20 2770 7572 6765 ure => 'purge │ │ │ -00254490: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 d',. }.}.
Remedi │ │ │ -00254550: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -00254560: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -00254610: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -00254630: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -00254660: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -002545f0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -00254600: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00254620: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -00254640: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -00254650: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -00254690: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -002546a0: 3a20 2755 6e69 6e73 7461 6c6c 2072 7379 : 'Uninstall rsy │ │ │ -002546b0: 6e63 2050 6163 6b61 6765 3a20 456e 7375 nc Package: Ensu │ │ │ -002546c0: 7265 2072 7379 6e63 2069 7320 7265 6d6f re rsync is remo │ │ │ -002546d0: 7665 6427 0a20 2061 6e73 6962 6c65 2e62 ved'. ansible.b │ │ │ -002546e0: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a uiltin.package:. │ │ │ -002546f0: 2020 2020 6e61 6d65 3a20 7273 796e 630a name: rsync. │ │ │ -00254700: 2020 2020 7374 6174 653a 2061 6273 656e state: absen │ │ │ -00254710: 740a 2020 7461 6773 3a0a 2020 2d20 6469 t. tags:. - di │ │ │ -00254720: 7361 626c 655f 7374 7261 7465 6779 0a20 sable_strategy. │ │ │ -00254730: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ -00254740: 790a 2020 2d20 6c6f 775f 6469 7372 7570 y. - low_disrup │ │ │ -00254750: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f tion. - medium_ │ │ │ -00254760: 7365 7665 7269 7479 0a20 202d 206e 6f5f severity. - no_ │ │ │ -00254770: 7265 626f 6f74 5f6e 6565 6465 640a 2020 reboot_needed. │ │ │ -00254780: 2d20 7061 636b 6167 655f 7273 796e 635f - package_rsync_ │ │ │ -00254790: 7265 6d6f 7665 640a 3c2f 636f 6465 3e3c removed.< │ │ │ -002547a0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>
Remediat │ │ │ -00254850: 696f 6e20 5368 656c 6c20 7363 7269 7074 ion Shell script │ │ │ -00254860: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -002548f0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -00254910: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -00254920: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00254930: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -00254940: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -00254960: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -00254990: 636f 6465 3e0a 2320 4341 5554 494f 4e3a  code>.# CAUTION:
│ │ │ -002549a0: 2054 6869 7320 7265 6d65 6469 6174 696f   This remediatio
│ │ │ -002549b0: 6e20 7363 7269 7074 2077 696c 6c20 7265  n script will re
│ │ │ -002549c0: 6d6f 7665 2072 7379 6e63 0a23 2066 726f  move rsync.# fro
│ │ │ -002549d0: 6d20 7468 6520 7379 7374 656d 2c20 616e  m the system, an
│ │ │ -002549e0: 6420 6d61 7920 7265 6d6f 7665 2061 6e79  d may remove any
│ │ │ -002549f0: 2070 6163 6b61 6765 730a 2320 7468 6174   packages.# that
│ │ │ -00254a00: 2064 6570 656e 6420 6f6e 2072 7379 6e63   depend on rsync
│ │ │ -00254a10: 2e20 4578 6563 7574 6520 7468 6973 0a23  . Execute this.#
│ │ │ -00254a20: 2072 656d 6564 6961 7469 6f6e 2041 4654   remediation AFT
│ │ │ -00254a30: 4552 2074 6573 7469 6e67 206f 6e20 6120  ER testing on a 
│ │ │ -00254a40: 6e6f 6e2d 7072 6f64 7563 7469 6f6e 0a23  non-production.#
│ │ │ -00254a50: 2073 7973 7465 6d21 0a0a 0a69 6620 7270   system!...if rp
│ │ │ -00254a60: 6d20 2d71 202d 2d71 7569 6574 2022 7273  m -q --quiet "rs
│ │ │ -00254a70: 796e 6322 203b 2074 6865 6e0a 646e 6620  ync" ; then.dnf 
│ │ │ -00254a80: 7265 6d6f 7665 202d 7920 2d2d 6e6f 6175  remove -y --noau
│ │ │ -00254a90: 746f 7265 6d6f 7665 2022 7273 796e 6322  toremove "rsync"
│ │ │ -00254aa0: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.

│ │ │ +00254180: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ +00254220: 206e 616d 653a 2027 556e 696e 7374 616c   name: 'Uninstal
│ │ │ +00254230: 6c20 7273 796e 6320 5061 636b 6167 653a  l rsync Package:
│ │ │ +00254240: 2045 6e73 7572 6520 7273 796e 6320 6973   Ensure rsync is
│ │ │ +00254250: 2072 656d 6f76 6564 270a 2020 616e 7369   removed'.  ansi
│ │ │ +00254260: 626c 652e 6275 696c 7469 6e2e 7061 636b  ble.builtin.pack
│ │ │ +00254270: 6167 653a 0a20 2020 206e 616d 653a 2072  age:.    name: r
│ │ │ +00254280: 7379 6e63 0a20 2020 2073 7461 7465 3a20  sync.    state: 
│ │ │ +00254290: 6162 7365 6e74 0a20 2074 6167 733a 0a20  absent.  tags:. 
│ │ │ +002542a0: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ +002542b0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +002542c0: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +002542d0: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +002542e0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +002542f0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +00254300: 6564 0a20 202d 2070 6163 6b61 6765 5f72  ed.  - package_r
│ │ │ +00254310: 7379 6e63 5f72 656d 6f76 6564 0a3c 2f63  sync_removed.
│ │ │ +00254330: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +002543d0: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ +002543e0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +002543f0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
│ │ │ +00254170: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +002541a0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +002541b0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +002541f0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +00254200: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Com │ │ │ +00254470: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +002544a0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +002544c0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +002544d0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +002544f0: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +00254500: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.inc
│ │ │ +00254520: 6c75 6465 2072 656d 6f76 655f 7273 796e  lude remove_rsyn
│ │ │ +00254530: 630a 0a63 6c61 7373 2072 656d 6f76 655f  c..class remove_
│ │ │ +00254540: 7273 796e 6320 7b0a 2020 7061 636b 6167  rsync {.  packag
│ │ │ +00254550: 6520 7b20 2772 7379 6e63 273a 0a20 2020  e { 'rsync':.   
│ │ │ +00254560: 2065 6e73 7572 6520 3d26 6774 3b20 2770   ensure => 'p
│ │ │ +00254570: 7572 6765 6427 2c0a 2020 7d0a 7d0a 3c2f  urged',.  }.}.
Re │ │ │ +00254630: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ +00254640: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
Comp │ │ │ +002546d0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +002546e0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +00254700: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +00254720: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +00254730: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +00254770: 3c70 7265 3e3c 636f 6465 3e0a 2320 4341
.# CA
│ │ │ +00254780: 5554 494f 4e3a 2054 6869 7320 7265 6d65  UTION: This reme
│ │ │ +00254790: 6469 6174 696f 6e20 7363 7269 7074 2077  diation script w
│ │ │ +002547a0: 696c 6c20 7265 6d6f 7665 2072 7379 6e63  ill remove rsync
│ │ │ +002547b0: 0a23 2066 726f 6d20 7468 6520 7379 7374  .# from the syst
│ │ │ +002547c0: 656d 2c20 616e 6420 6d61 7920 7265 6d6f  em, and may remo
│ │ │ +002547d0: 7665 2061 6e79 2070 6163 6b61 6765 730a  ve any packages.
│ │ │ +002547e0: 2320 7468 6174 2064 6570 656e 6420 6f6e  # that depend on
│ │ │ +002547f0: 2072 7379 6e63 2e20 4578 6563 7574 6520   rsync. Execute 
│ │ │ +00254800: 7468 6973 0a23 2072 656d 6564 6961 7469  this.# remediati
│ │ │ +00254810: 6f6e 2041 4654 4552 2074 6573 7469 6e67  on AFTER testing
│ │ │ +00254820: 206f 6e20 6120 6e6f 6e2d 7072 6f64 7563   on a non-produc
│ │ │ +00254830: 7469 6f6e 0a23 2073 7973 7465 6d21 0a0a  tion.# system!..
│ │ │ +00254840: 0a69 6620 7270 6d20 2d71 202d 2d71 7569  .if rpm -q --qui
│ │ │ +00254850: 6574 2022 7273 796e 6322 203b 2074 6865  et "rsync" ; the
│ │ │ +00254860: 6e0a 646e 6620 7265 6d6f 7665 202d 7920  n.dnf remove -y 
│ │ │ +00254870: 2d2d 6e6f 6175 746f 7265 6d6f 7665 2022  --noautoremove "
│ │ │ +00254880: 7273 796e 6322 0a66 690a 3c2f 636f 6465  rsync".fi.
Remedi │ │ │ +00254940: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ +00254950: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +002549e0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +002549f0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +00254a10: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +00254a30: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +00254a40: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +00254a80: 3c70 7265 3e3c 636f 6465 3e0a 0a70 6163
..pac
│ │ │ +00254a90: 6b61 6765 202d 2d72 656d 6f76 653d 7273  kage --remove=rs
│ │ │ +00254aa0: 796e 630a 3c2f 636f 6465 3e3c 2f70 7265  ync.
< │ │ │ 00254ad0: 2f74 6162 6c65 3e3c 2f74 643e 3c2f 7472 /table>Remedia │ │ │ -00255d10: 7469 6f6e 2041 6e61 636f 6e64 6120 736e tion Anaconda sn │ │ │ -00255d20: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -00255dd0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -00255df0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -00255e20: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -00255db0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -00255dc0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00255de0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -00255e00: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -00255e10: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -00255e50: 7072 653e 3c63 6f64 653e 0a0a 7061 636b pre>..pack │ │ │ -00255e60: 6167 6520 2d2d 7265 6d6f 7665 3d63 7570 age --remove=cup │ │ │ -00255e70: 730a 3c2f 636f 6465 3e3c 2f70 7265 3e3c s.< │ │ │ -00255e80: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ -00255f30: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ -00255f40: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -00256010: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -00256020: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.include remove
│ │ │ -00256080: 5f63 7570 730a 0a63 6c61 7373 2072 656d  _cups..class rem
│ │ │ -00256090: 6f76 655f 6375 7073 207b 0a20 2070 6163  ove_cups {.  pac
│ │ │ -002560a0: 6b61 6765 207b 2027 6375 7073 273a 0a20  kage { 'cups':. 
│ │ │ -002560b0: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ -002560c0: 2770 7572 6765 6427 2c0a 2020 7d0a 7d0a  'purged',.  }.}.
│ │ │ -002560d0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -00256180: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -00256190: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -002561a0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
low
Disru │ │ │ -00255ff0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -00256000: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -00256040: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -00256050: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ -00256270: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00256280: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -002562d0: 2d20 6e61 6d65 3a20 2755 6e69 6e73 7461  - name: 'Uninsta
│ │ │ -002562e0: 6c6c 2043 5550 5320 5061 636b 6167 653a  ll CUPS Package:
│ │ │ -002562f0: 2045 6e73 7572 6520 6375 7073 2069 7320   Ensure cups is 
│ │ │ -00256300: 7265 6d6f 7665 6427 0a20 2061 6e73 6962  removed'.  ansib
│ │ │ -00256310: 6c65 2e62 7569 6c74 696e 2e70 6163 6b61  le.builtin.packa
│ │ │ -00256320: 6765 3a0a 2020 2020 6e61 6d65 3a20 6375  ge:.    name: cu
│ │ │ -00256330: 7073 0a20 2020 2073 7461 7465 3a20 6162  ps.    state: ab
│ │ │ -00256340: 7365 6e74 0a20 2074 6167 733a 0a20 202d  sent.  tags:.  -
│ │ │ -00256350: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -00256360: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ -00256370: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ -00256380: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -00256390: 3728 6229 0a20 202d 2064 6973 6162 6c65  7(b).  - disable
│ │ │ -002563a0: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ -002563b0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -002563c0: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -002563d0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -002563e0: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ -002563f0: 5f63 7570 735f 7265 6d6f 7665 640a 2020  _cups_removed.  
│ │ │ -00256400: 2d20 756e 6b6e 6f77 6e5f 7365 7665 7269  - unknown_severi
│ │ │ -00256410: 7479 0a3c 2f63 6f64 653e 3c2f 7072 653e  ty.
│ │ │ -00256420: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation S │ │ │ -002564d0: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ -002564e0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
Complexity:low
Disrup │ │ │ -00256250: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00256260: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -002562a0: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -002562b0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ -002565b0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -002565c0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -00256610: 0a23 2043 4155 5449 4f4e 3a20 5468 6973  .# CAUTION: This
│ │ │ -00256620: 2072 656d 6564 6961 7469 6f6e 2073 6372   remediation scr
│ │ │ -00256630: 6970 7420 7769 6c6c 2072 656d 6f76 6520  ipt will remove 
│ │ │ -00256640: 6375 7073 0a23 2066 726f 6d20 7468 6520  cups.# from the 
│ │ │ -00256650: 7379 7374 656d 2c20 616e 6420 6d61 7920  system, and may 
│ │ │ -00256660: 7265 6d6f 7665 2061 6e79 2070 6163 6b61  remove any packa
│ │ │ -00256670: 6765 730a 2320 7468 6174 2064 6570 656e  ges.# that depen
│ │ │ -00256680: 6420 6f6e 2063 7570 732e 2045 7865 6375  d on cups. Execu
│ │ │ -00256690: 7465 2074 6869 730a 2320 7265 6d65 6469  te this.# remedi
│ │ │ -002566a0: 6174 696f 6e20 4146 5445 5220 7465 7374  ation AFTER test
│ │ │ -002566b0: 696e 6720 6f6e 2061 206e 6f6e 2d70 726f  ing on a non-pro
│ │ │ -002566c0: 6475 6374 696f 6e0a 2320 7379 7374 656d  duction.# system
│ │ │ -002566d0: 210a 0a0a 6966 2072 706d 202d 7120 2d2d  !...if rpm -q --
│ │ │ -002566e0: 7175 6965 7420 2263 7570 7322 203b 2074  quiet "cups" ; t
│ │ │ -002566f0: 6865 6e0a 646e 6620 7265 6d6f 7665 202d  hen.dnf remove -
│ │ │ -00256700: 7920 2d2d 6e6f 6175 746f 7265 6d6f 7665  y --noautoremove
│ │ │ -00256710: 2022 6375 7073 220a 6669 0a3c 2f63 6f64   "cups".fi.
│ │ │ +00255d30: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +00255d60: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Complexity:low
Disrup │ │ │ -00256590: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -002565a0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -002565e0: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -002565f0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ +00255dd0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +00255df0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +00255e20: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +00255db0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +00255dc0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +00255e00: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +00255e10: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

- name: │ │ │ +00255e60: 2027 556e 696e 7374 616c 6c20 4355 5053 'Uninstall CUPS │ │ │ +00255e70: 2050 6163 6b61 6765 3a20 456e 7375 7265 Package: Ensure │ │ │ +00255e80: 2063 7570 7320 6973 2072 656d 6f76 6564 cups is removed │ │ │ +00255e90: 270a 2020 616e 7369 626c 652e 6275 696c '. ansible.buil │ │ │ +00255ea0: 7469 6e2e 7061 636b 6167 653a 0a20 2020 tin.package:. │ │ │ +00255eb0: 206e 616d 653a 2063 7570 730a 2020 2020 name: cups. │ │ │ +00255ec0: 7374 6174 653a 2061 6273 656e 740a 2020 state: absent. │ │ │ +00255ed0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ +00255ee0: 3030 2d35 332d 434d 2d36 2861 290a 2020 00-53-CM-6(a). │ │ │ +00255ef0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ +00255f00: 2d37 2861 290a 2020 2d20 4e49 5354 2d38 -7(a). - NIST-8 │ │ │ +00255f10: 3030 2d35 332d 434d 2d37 2862 290a 2020 00-53-CM-7(b). │ │ │ +00255f20: 2d20 6469 7361 626c 655f 7374 7261 7465 - disable_strate │ │ │ +00255f30: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c gy. - low_compl │ │ │ +00255f40: 6578 6974 790a 2020 2d20 6c6f 775f 6469 exity. - low_di │ │ │ +00255f50: 7372 7570 7469 6f6e 0a20 202d 206e 6f5f sruption. - no_ │ │ │ +00255f60: 7265 626f 6f74 5f6e 6565 6465 640a 2020 reboot_needed. │ │ │ +00255f70: 2d20 7061 636b 6167 655f 6375 7073 5f72 - package_cups_r │ │ │ +00255f80: 656d 6f76 6564 0a20 202d 2075 6e6b 6e6f emoved. - unkno │ │ │ +00255f90: 776e 5f73 6576 6572 6974 790a 3c2f 636f wn_severity.

< │ │ │ +00255fb0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +00255fc0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +00255fd0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +00255fe0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +00255ff0: 6437 3839 2220 7461 6269 6e64 6578 3d22 d789" tabindex=" │ │ │ +00256000: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +00256010: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +00256020: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +00256030: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +00256040: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +00256050: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ +00256060: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +002560f0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +00256100: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +00256120: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +00256140: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +00256150: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +00256190: 3c70 7265 3e3c 636f 6465 3e0a 696e 636c
.incl
│ │ │ +002561a0: 7564 6520 7265 6d6f 7665 5f63 7570 730a  ude remove_cups.
│ │ │ +002561b0: 0a63 6c61 7373 2072 656d 6f76 655f 6375  .class remove_cu
│ │ │ +002561c0: 7073 207b 0a20 2070 6163 6b61 6765 207b  ps {.  package {
│ │ │ +002561d0: 2027 6375 7073 273a 0a20 2020 2065 6e73   'cups':.    ens
│ │ │ +002561e0: 7572 6520 3d26 6774 3b20 2770 7572 6765  ure => 'purge
│ │ │ +002561f0: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  d',.  }.}.
Remedi │ │ │ +002562b0: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ +002562c0: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
│ │ │ +00256340: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +00256350: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +00256360: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +002563a0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +002563b0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +002563d0: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +002563e0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.# CAUTIO
│ │ │ +00256400: 4e3a 2054 6869 7320 7265 6d65 6469 6174  N: This remediat
│ │ │ +00256410: 696f 6e20 7363 7269 7074 2077 696c 6c20  ion script will 
│ │ │ +00256420: 7265 6d6f 7665 2063 7570 730a 2320 6672  remove cups.# fr
│ │ │ +00256430: 6f6d 2074 6865 2073 7973 7465 6d2c 2061  om the system, a
│ │ │ +00256440: 6e64 206d 6179 2072 656d 6f76 6520 616e  nd may remove an
│ │ │ +00256450: 7920 7061 636b 6167 6573 0a23 2074 6861  y packages.# tha
│ │ │ +00256460: 7420 6465 7065 6e64 206f 6e20 6375 7073  t depend on cups
│ │ │ +00256470: 2e20 4578 6563 7574 6520 7468 6973 0a23  . Execute this.#
│ │ │ +00256480: 2072 656d 6564 6961 7469 6f6e 2041 4654   remediation AFT
│ │ │ +00256490: 4552 2074 6573 7469 6e67 206f 6e20 6120  ER testing on a 
│ │ │ +002564a0: 6e6f 6e2d 7072 6f64 7563 7469 6f6e 0a23  non-production.#
│ │ │ +002564b0: 2073 7973 7465 6d21 0a0a 0a69 6620 7270   system!...if rp
│ │ │ +002564c0: 6d20 2d71 202d 2d71 7569 6574 2022 6375  m -q --quiet "cu
│ │ │ +002564d0: 7073 2220 3b20 7468 656e 0a64 6e66 2072  ps" ; then.dnf r
│ │ │ +002564e0: 656d 6f76 6520 2d79 202d 2d6e 6f61 7574  emove -y --noaut
│ │ │ +002564f0: 6f72 656d 6f76 6520 2263 7570 7322 0a66  oremove "cups".f
│ │ │ +00256500: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +00256510: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ +002565c0: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ +002565d0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +00256650: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +00256670: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +002566c0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +002566f0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +00256660: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00256680: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +002566d0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +002566e0: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
..package --r
│ │ │ +00256710: 656d 6f76 653d 6375 7073 0a3c 2f63 6f64  emove=cups.
Re │ │ │ -002577a0: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ -002577b0: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
│ │ │ -00257850: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ -002578f0: 0a70 6163 6b61 6765 202d 2d72 656d 6f76  .package --remov
│ │ │ -00257900: 653d 7371 7569 640a 3c2f 636f 6465 3e3c  e=squid.<
│ │ │ -00257910: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ -002579c0: 696f 6e20 5075 7070 6574 2073 6e69 7070  ion Puppet snipp
│ │ │ -002579d0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...
│ │ │ -00257a50: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ -00257ae0: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -00257af0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
│ │ │ -00257840: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00257870: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00257880: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -002578c0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -002578d0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexi │ │ │ -00257a60: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -00257a70: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ -00257ab0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -00257ac0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
.include 
│ │ │ -00257b10: 7265 6d6f 7665 5f73 7175 6964 0a0a 636c  remove_squid..cl
│ │ │ -00257b20: 6173 7320 7265 6d6f 7665 5f73 7175 6964  ass remove_squid
│ │ │ -00257b30: 207b 0a20 2070 6163 6b61 6765 207b 2027   {.  package { '
│ │ │ -00257b40: 7371 7569 6427 3a0a 2020 2020 656e 7375  squid':.    ensu
│ │ │ -00257b50: 7265 203d 2667 743b 2027 7075 7267 6564  re => 'purged
│ │ │ -00257b60: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e  ',.  }.}.
│ │ │ -00257b70: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -00257c20: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -00257c30: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -00257c40: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -00257c70: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -00257ce0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -00257d00: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -00257d30: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -00257cc0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -00257cd0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -00257d10: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -00257d20: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

- name: │ │ │ -00257d70: 2027 556e 696e 7374 616c 6c20 7371 7569 'Uninstall squi │ │ │ -00257d80: 6420 5061 636b 6167 653a 2045 6e73 7572 d Package: Ensur │ │ │ -00257d90: 6520 7371 7569 6420 6973 2072 656d 6f76 e squid is remov │ │ │ -00257da0: 6564 270a 2020 616e 7369 626c 652e 6275 ed'. ansible.bu │ │ │ -00257db0: 696c 7469 6e2e 7061 636b 6167 653a 0a20 iltin.package:. │ │ │ -00257dc0: 2020 206e 616d 653a 2073 7175 6964 0a20 name: squid. │ │ │ -00257dd0: 2020 2073 7461 7465 3a20 6162 7365 6e74 state: absent │ │ │ -00257de0: 0a20 2074 6167 733a 0a20 202d 2064 6973 . tags:. - dis │ │ │ -00257df0: 6162 6c65 5f73 7472 6174 6567 790a 2020 able_strategy. │ │ │ -00257e00: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479 - low_complexity │ │ │ -00257e10: 0a20 202d 206c 6f77 5f64 6973 7275 7074 . - low_disrupt │ │ │ -00257e20: 696f 6e0a 2020 2d20 6e6f 5f72 6562 6f6f ion. - no_reboo │ │ │ -00257e30: 745f 6e65 6564 6564 0a20 202d 2070 6163 t_needed. - pac │ │ │ -00257e40: 6b61 6765 5f73 7175 6964 5f72 656d 6f76 kage_squid_remov │ │ │ -00257e50: 6564 0a20 202d 2075 6e6b 6e6f 776e 5f73 ed. - unknown_s │ │ │ -00257e60: 6576 6572 6974 790a 3c2f 636f 6465 3e3c everity.< │ │ │ -00257e70: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>

Remediat │ │ │ -00257f20: 696f 6e20 5368 656c 6c20 7363 7269 7074 ion Shell script │ │ │ -00257f30: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -00257fc0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -00257fe0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -00257ff0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00258000: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -00258010: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -00258030: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -00258060: 636f 6465 3e0a 2320 4341 5554 494f 4e3a  code>.# CAUTION:
│ │ │ -00258070: 2054 6869 7320 7265 6d65 6469 6174 696f   This remediatio
│ │ │ -00258080: 6e20 7363 7269 7074 2077 696c 6c20 7265  n script will re
│ │ │ -00258090: 6d6f 7665 2073 7175 6964 0a23 2066 726f  move squid.# fro
│ │ │ -002580a0: 6d20 7468 6520 7379 7374 656d 2c20 616e  m the system, an
│ │ │ -002580b0: 6420 6d61 7920 7265 6d6f 7665 2061 6e79  d may remove any
│ │ │ -002580c0: 2070 6163 6b61 6765 730a 2320 7468 6174   packages.# that
│ │ │ -002580d0: 2064 6570 656e 6420 6f6e 2073 7175 6964   depend on squid
│ │ │ -002580e0: 2e20 4578 6563 7574 6520 7468 6973 0a23  . Execute this.#
│ │ │ -002580f0: 2072 656d 6564 6961 7469 6f6e 2041 4654   remediation AFT
│ │ │ -00258100: 4552 2074 6573 7469 6e67 206f 6e20 6120  ER testing on a 
│ │ │ -00258110: 6e6f 6e2d 7072 6f64 7563 7469 6f6e 0a23  non-production.#
│ │ │ -00258120: 2073 7973 7465 6d21 0a0a 0a69 6620 7270   system!...if rp
│ │ │ -00258130: 6d20 2d71 202d 2d71 7569 6574 2022 7371  m -q --quiet "sq
│ │ │ -00258140: 7569 6422 203b 2074 6865 6e0a 646e 6620  uid" ; then.dnf 
│ │ │ -00258150: 7265 6d6f 7665 202d 7920 2d2d 6e6f 6175  remove -y --noau
│ │ │ -00258160: 746f 7265 6d6f 7665 2022 7371 7569 6422  toremove "squid"
│ │ │ -00258170: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.

< │ │ │ +00257850: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00257860: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +002578b0: 3c74 723e 3c74 683e 5374 7261 7465 6779
- 
│ │ │ +002578f0: 6e61 6d65 3a20 2755 6e69 6e73 7461 6c6c  name: 'Uninstall
│ │ │ +00257900: 2073 7175 6964 2050 6163 6b61 6765 3a20   squid Package: 
│ │ │ +00257910: 456e 7375 7265 2073 7175 6964 2069 7320  Ensure squid is 
│ │ │ +00257920: 7265 6d6f 7665 6427 0a20 2061 6e73 6962  removed'.  ansib
│ │ │ +00257930: 6c65 2e62 7569 6c74 696e 2e70 6163 6b61  le.builtin.packa
│ │ │ +00257940: 6765 3a0a 2020 2020 6e61 6d65 3a20 7371  ge:.    name: sq
│ │ │ +00257950: 7569 640a 2020 2020 7374 6174 653a 2061  uid.    state: a
│ │ │ +00257960: 6273 656e 740a 2020 7461 6773 3a0a 2020  bsent.  tags:.  
│ │ │ +00257970: 2d20 6469 7361 626c 655f 7374 7261 7465  - disable_strate
│ │ │ +00257980: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ +00257990: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ +002579a0: 7372 7570 7469 6f6e 0a20 202d 206e 6f5f  sruption.  - no_
│ │ │ +002579b0: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ +002579c0: 2d20 7061 636b 6167 655f 7371 7569 645f  - package_squid_
│ │ │ +002579d0: 7265 6d6f 7665 640a 2020 2d20 756e 6b6e  removed.  - unkn
│ │ │ +002579e0: 6f77 6e5f 7365 7665 7269 7479 0a3c 2f63  own_severity.
│ │ │ +00257a00: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +00257aa0: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ +00257ab0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +00257ac0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
C │ │ │ +00257840: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +00257870: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +00257880: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +002578c0: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ +002578d0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Com │ │ │ +00257b40: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +00257b70: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +00257b90: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +00257ba0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +00257bc0: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +00257bd0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.inc
│ │ │ +00257bf0: 6c75 6465 2072 656d 6f76 655f 7371 7569  lude remove_squi
│ │ │ +00257c00: 640a 0a63 6c61 7373 2072 656d 6f76 655f  d..class remove_
│ │ │ +00257c10: 7371 7569 6420 7b0a 2020 7061 636b 6167  squid {.  packag
│ │ │ +00257c20: 6520 7b20 2773 7175 6964 273a 0a20 2020  e { 'squid':.   
│ │ │ +00257c30: 2065 6e73 7572 6520 3d26 6774 3b20 2770   ensure => 'p
│ │ │ +00257c40: 7572 6765 6427 2c0a 2020 7d0a 7d0a 3c2f  urged',.  }.}.
Re │ │ │ +00257d00: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ +00257d10: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
Comp │ │ │ +00257da0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +00257db0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +00257dd0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +00257df0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +00257e00: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +00257e40: 3c70 7265 3e3c 636f 6465 3e0a 2320 4341
.# CA
│ │ │ +00257e50: 5554 494f 4e3a 2054 6869 7320 7265 6d65  UTION: This reme
│ │ │ +00257e60: 6469 6174 696f 6e20 7363 7269 7074 2077  diation script w
│ │ │ +00257e70: 696c 6c20 7265 6d6f 7665 2073 7175 6964  ill remove squid
│ │ │ +00257e80: 0a23 2066 726f 6d20 7468 6520 7379 7374  .# from the syst
│ │ │ +00257e90: 656d 2c20 616e 6420 6d61 7920 7265 6d6f  em, and may remo
│ │ │ +00257ea0: 7665 2061 6e79 2070 6163 6b61 6765 730a  ve any packages.
│ │ │ +00257eb0: 2320 7468 6174 2064 6570 656e 6420 6f6e  # that depend on
│ │ │ +00257ec0: 2073 7175 6964 2e20 4578 6563 7574 6520   squid. Execute 
│ │ │ +00257ed0: 7468 6973 0a23 2072 656d 6564 6961 7469  this.# remediati
│ │ │ +00257ee0: 6f6e 2041 4654 4552 2074 6573 7469 6e67  on AFTER testing
│ │ │ +00257ef0: 206f 6e20 6120 6e6f 6e2d 7072 6f64 7563   on a non-produc
│ │ │ +00257f00: 7469 6f6e 0a23 2073 7973 7465 6d21 0a0a  tion.# system!..
│ │ │ +00257f10: 0a69 6620 7270 6d20 2d71 202d 2d71 7569  .if rpm -q --qui
│ │ │ +00257f20: 6574 2022 7371 7569 6422 203b 2074 6865  et "squid" ; the
│ │ │ +00257f30: 6e0a 646e 6620 7265 6d6f 7665 202d 7920  n.dnf remove -y 
│ │ │ +00257f40: 2d2d 6e6f 6175 746f 7265 6d6f 7665 2022  --noautoremove "
│ │ │ +00257f50: 7371 7569 6422 0a66 690a 3c2f 636f 6465  squid".fi.
Remedi │ │ │ +00258010: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ +00258020: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +002580b0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +002580c0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +002580e0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +00258100: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +00258110: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +00258150: 3c70 7265 3e3c 636f 6465 3e0a 0a70 6163
..pac
│ │ │ +00258160: 6b61 6765 202d 2d72 656d 6f76 653d 7371  kage --remove=sq
│ │ │ +00258170: 7569 640a 3c2f 636f 6465 3e3c 2f70 7265  uid.
< │ │ │ 002581a0: 2f74 6162 6c65 3e3c 2f74 643e 3c2f 7472 /table>Remedia │ │ │ -002592b0: 7469 6f6e 2041 6e61 636f 6e64 6120 736e tion Anaconda sn │ │ │ -002592c0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -00259370: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -00259390: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -002593c0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -00259350: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -00259360: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00259380: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -002593a0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -002593b0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -002593f0: 7072 653e 3c63 6f64 653e 0a0a 7061 636b pre>..pack │ │ │ -00259400: 6167 6520 2d2d 7265 6d6f 7665 3d73 616d age --remove=sam │ │ │ -00259410: 6261 0a3c 2f63 6f64 653e 3c2f 7072 653e ba. │ │ │ -00259420: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation P │ │ │ -002594d0: 7570 7065 7420 736e 6970 7065 7420 e287 uppet snippet .. │ │ │ -002594e0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -00259560: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -00259580: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -002595d0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -00259600: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.include remov
│ │ │ -00259620: 655f 7361 6d62 610a 0a63 6c61 7373 2072  e_samba..class r
│ │ │ -00259630: 656d 6f76 655f 7361 6d62 6120 7b0a 2020  emove_samba {.  
│ │ │ -00259640: 7061 636b 6167 6520 7b20 2773 616d 6261  package { 'samba
│ │ │ -00259650: 273a 0a20 2020 2065 6e73 7572 6520 3d26  ':.    ensure =&
│ │ │ -00259660: 6774 3b20 2770 7572 6765 6427 2c0a 2020  gt; 'purged',.  
│ │ │ -00259670: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Remediation │ │ │ -00259730: 416e 7369 626c 6520 736e 6970 7065 7420 Ansible snippet │ │ │ -00259740: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
low< │ │ │ -00259810: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
low
Disr │ │ │ -00259590: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -002595a0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -002595e0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -002595f0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Complexity: │ │ │ -002597d0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ -002597f0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:false
St │ │ │ -00259840: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -00259850: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
- name: 'Uni
│ │ │ -00259880: 6e73 7461 6c6c 2053 616d 6261 2050 6163  nstall Samba Pac
│ │ │ -00259890: 6b61 6765 3a20 456e 7375 7265 2073 616d  kage: Ensure sam
│ │ │ -002598a0: 6261 2069 7320 7265 6d6f 7665 6427 0a20  ba is removed'. 
│ │ │ -002598b0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -002598c0: 2e70 6163 6b61 6765 3a0a 2020 2020 6e61  .package:.    na
│ │ │ -002598d0: 6d65 3a20 7361 6d62 610a 2020 2020 7374  me: samba.    st
│ │ │ -002598e0: 6174 653a 2061 6273 656e 740a 2020 7461  ate: absent.  ta
│ │ │ -002598f0: 6773 3a0a 2020 2d20 6469 7361 626c 655f  gs:.  - disable_
│ │ │ -00259900: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ -00259910: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -00259920: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -00259930: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -00259940: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ -00259950: 7361 6d62 615f 7265 6d6f 7665 640a 2020  samba_removed.  
│ │ │ -00259960: 2d20 756e 6b6e 6f77 6e5f 7365 7665 7269  - unknown_severi
│ │ │ -00259970: 7479 0a3c 2f63 6f64 653e 3c2f 7072 653e  ty.
│ │ │ -00259980: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation S │ │ │ -00259a30: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ -00259a40: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -00259b10: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00259b20: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -00259b70: 0a23 2043 4155 5449 4f4e 3a20 5468 6973  .# CAUTION: This
│ │ │ -00259b80: 2072 656d 6564 6961 7469 6f6e 2073 6372   remediation scr
│ │ │ -00259b90: 6970 7420 7769 6c6c 2072 656d 6f76 6520  ipt will remove 
│ │ │ -00259ba0: 7361 6d62 610a 2320 6672 6f6d 2074 6865  samba.# from the
│ │ │ -00259bb0: 2073 7973 7465 6d2c 2061 6e64 206d 6179   system, and may
│ │ │ -00259bc0: 2072 656d 6f76 6520 616e 7920 7061 636b   remove any pack
│ │ │ -00259bd0: 6167 6573 0a23 2074 6861 7420 6465 7065  ages.# that depe
│ │ │ -00259be0: 6e64 206f 6e20 7361 6d62 612e 2045 7865  nd on samba. Exe
│ │ │ -00259bf0: 6375 7465 2074 6869 730a 2320 7265 6d65  cute this.# reme
│ │ │ -00259c00: 6469 6174 696f 6e20 4146 5445 5220 7465  diation AFTER te
│ │ │ -00259c10: 7374 696e 6720 6f6e 2061 206e 6f6e 2d70  sting on a non-p
│ │ │ -00259c20: 726f 6475 6374 696f 6e0a 2320 7379 7374  roduction.# syst
│ │ │ -00259c30: 656d 210a 0a0a 6966 2072 706d 202d 7120  em!...if rpm -q 
│ │ │ -00259c40: 2d2d 7175 6965 7420 2273 616d 6261 2220  --quiet "samba" 
│ │ │ -00259c50: 3b20 7468 656e 0a64 6e66 2072 656d 6f76  ; then.dnf remov
│ │ │ -00259c60: 6520 2d79 202d 2d6e 6f61 7574 6f72 656d  e -y --noautorem
│ │ │ -00259c70: 6f76 6520 2273 616d 6261 220a 6669 0a3c  ove "samba".fi.<
│ │ │ +002592b0: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69  tion Ansible sni
│ │ │ +002592c0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e  ppet ...
│ │ │ +002592d0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +00259300: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Complexity:low
Disrup │ │ │ -00259af0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00259b00: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00259b40: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -00259b50: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ +00259370: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +00259390: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +002593c0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +00259350: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +00259360: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +002593a0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +002593b0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

- name: │ │ │ +00259400: 2027 556e 696e 7374 616c 6c20 5361 6d62 'Uninstall Samb │ │ │ +00259410: 6120 5061 636b 6167 653a 2045 6e73 7572 a Package: Ensur │ │ │ +00259420: 6520 7361 6d62 6120 6973 2072 656d 6f76 e samba is remov │ │ │ +00259430: 6564 270a 2020 616e 7369 626c 652e 6275 ed'. ansible.bu │ │ │ +00259440: 696c 7469 6e2e 7061 636b 6167 653a 0a20 iltin.package:. │ │ │ +00259450: 2020 206e 616d 653a 2073 616d 6261 0a20 name: samba. │ │ │ +00259460: 2020 2073 7461 7465 3a20 6162 7365 6e74 state: absent │ │ │ +00259470: 0a20 2074 6167 733a 0a20 202d 2064 6973 . tags:. - dis │ │ │ +00259480: 6162 6c65 5f73 7472 6174 6567 790a 2020 able_strategy. │ │ │ +00259490: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479 - low_complexity │ │ │ +002594a0: 0a20 202d 206c 6f77 5f64 6973 7275 7074 . - low_disrupt │ │ │ +002594b0: 696f 6e0a 2020 2d20 6e6f 5f72 6562 6f6f ion. - no_reboo │ │ │ +002594c0: 745f 6e65 6564 6564 0a20 202d 2070 6163 t_needed. - pac │ │ │ +002594d0: 6b61 6765 5f73 616d 6261 5f72 656d 6f76 kage_samba_remov │ │ │ +002594e0: 6564 0a20 202d 2075 6e6b 6e6f 776e 5f73 ed. - unknown_s │ │ │ +002594f0: 6576 6572 6974 790a 3c2f 636f 6465 3e3c everity.< │ │ │ +00259500: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>

Remediat │ │ │ +002595b0: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ +002595c0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +00259640: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +00259650: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +00259660: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +002596a0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +002596b0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +002596d0: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +002596e0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.include 
│ │ │ +00259700: 7265 6d6f 7665 5f73 616d 6261 0a0a 636c  remove_samba..cl
│ │ │ +00259710: 6173 7320 7265 6d6f 7665 5f73 616d 6261  ass remove_samba
│ │ │ +00259720: 207b 0a20 2070 6163 6b61 6765 207b 2027   {.  package { '
│ │ │ +00259730: 7361 6d62 6127 3a0a 2020 2020 656e 7375  samba':.    ensu
│ │ │ +00259740: 7265 203d 2667 743b 2027 7075 7267 6564  re => 'purged
│ │ │ +00259750: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e  ',.  }.}.
│ │ │ +00259760: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +00259810: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ +00259820: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +002598a0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +002598b0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +002598d0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +002598e0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +00259900: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +00259920: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ +00259950: 3c63 6f64 653e 0a23 2043 4155 5449 4f4e  .# CAUTION
│ │ │ +00259960: 3a20 5468 6973 2072 656d 6564 6961 7469  : This remediati
│ │ │ +00259970: 6f6e 2073 6372 6970 7420 7769 6c6c 2072  on script will r
│ │ │ +00259980: 656d 6f76 6520 7361 6d62 610a 2320 6672  emove samba.# fr
│ │ │ +00259990: 6f6d 2074 6865 2073 7973 7465 6d2c 2061  om the system, a
│ │ │ +002599a0: 6e64 206d 6179 2072 656d 6f76 6520 616e  nd may remove an
│ │ │ +002599b0: 7920 7061 636b 6167 6573 0a23 2074 6861  y packages.# tha
│ │ │ +002599c0: 7420 6465 7065 6e64 206f 6e20 7361 6d62  t depend on samb
│ │ │ +002599d0: 612e 2045 7865 6375 7465 2074 6869 730a  a. Execute this.
│ │ │ +002599e0: 2320 7265 6d65 6469 6174 696f 6e20 4146  # remediation AF
│ │ │ +002599f0: 5445 5220 7465 7374 696e 6720 6f6e 2061  TER testing on a
│ │ │ +00259a00: 206e 6f6e 2d70 726f 6475 6374 696f 6e0a   non-production.
│ │ │ +00259a10: 2320 7379 7374 656d 210a 0a0a 6966 2072  # system!...if r
│ │ │ +00259a20: 706d 202d 7120 2d2d 7175 6965 7420 2273  pm -q --quiet "s
│ │ │ +00259a30: 616d 6261 2220 3b20 7468 656e 0a64 6e66  amba" ; then.dnf
│ │ │ +00259a40: 2072 656d 6f76 6520 2d79 202d 2d6e 6f61   remove -y --noa
│ │ │ +00259a50: 7574 6f72 656d 6f76 6520 2273 616d 6261  utoremove "samba
│ │ │ +00259a60: 220a 6669 0a3c 2f63 6f64 653e 3c2f 7072  ".fi.
Remediation │ │ │ +00259b20: 2041 6e61 636f 6e64 6120 736e 6970 7065 Anaconda snippe │ │ │ +00259b30: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +00259bb0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +00259bc0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +00259be0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +00259bf0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +00259c10: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +00259c30: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ +00259c60: 3c63 6f64 653e 0a0a 7061 636b 6167 6520  ..package 
│ │ │ +00259c70: 2d2d 7265 6d6f 7665 3d73 616d 6261 0a3c  --remove=samba.<
│ │ │  00259c80: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Remediation │ │ │ -0025ada0: 2041 6e61 636f 6e64 6120 736e 6970 7065 Anaconda snippe │ │ │ -0025adb0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -0025ae30: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -0025ae40: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -0025ae60: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -0025ae70: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -0025ae90: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -0025aeb0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ -0025aee0: 3c63 6f64 653e 0a0a 7061 636b 6167 6520  ..package 
│ │ │ -0025aef0: 2d2d 7265 6d6f 7665 3d6e 6574 2d73 6e6d  --remove=net-snm
│ │ │ -0025af00: 700a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  p.
< │ │ │ -0025af10: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ -0025afc0: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ -0025afd0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -0025b0a0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -0025b0b0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.include remove
│ │ │ -0025b110: 5f6e 6574 2d73 6e6d 700a 0a63 6c61 7373  _net-snmp..class
│ │ │ -0025b120: 2072 656d 6f76 655f 6e65 742d 736e 6d70   remove_net-snmp
│ │ │ -0025b130: 207b 0a20 2070 6163 6b61 6765 207b 2027   {.  package { '
│ │ │ -0025b140: 6e65 742d 736e 6d70 273a 0a20 2020 2065  net-snmp':.    e
│ │ │ -0025b150: 6e73 7572 6520 3d26 6774 3b20 2770 7572  nsure => 'pur
│ │ │ -0025b160: 6765 6427 2c0a 2020 7d0a 7d0a 3c2f 636f  ged',.  }.}.
< │ │ │ -0025b180: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -0025b190: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -0025b1a0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -0025b1b0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -0025b1c0: 6438 3035 2220 7461 6269 6e64 6578 3d22 d805" tabindex=" │ │ │ -0025b1d0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -0025b1e0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -0025b1f0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -0025b200: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -0025b210: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -0025b220: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ -0025b230: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -0025b240: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
low
Disru │ │ │ -0025b080: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -0025b090: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -0025b0d0: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -0025b0e0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Com │ │ │ -0025b2c0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -0025b2f0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -0025b310: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -0025b320: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -0025b340: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -0025b350: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -0025b370: 6d65 3a20 2755 6e69 6e73 7461 6c6c 206e  me: 'Uninstall n
│ │ │ -0025b380: 6574 2d73 6e6d 7020 5061 636b 6167 653a  et-snmp Package:
│ │ │ -0025b390: 2045 6e73 7572 6520 6e65 742d 736e 6d70   Ensure net-snmp
│ │ │ -0025b3a0: 2069 7320 7265 6d6f 7665 6427 0a20 2061   is removed'.  a
│ │ │ -0025b3b0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ -0025b3c0: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ -0025b3d0: 3a20 6e65 742d 736e 6d70 0a20 2020 2073  : net-snmp.    s
│ │ │ -0025b3e0: 7461 7465 3a20 6162 7365 6e74 0a20 2074  tate: absent.  t
│ │ │ -0025b3f0: 6167 733a 0a20 202d 2050 4349 2d44 5353  ags:.  - PCI-DSS
│ │ │ -0025b400: 7634 2d32 2e32 0a20 202d 2050 4349 2d44  v4-2.2.  - PCI-D
│ │ │ -0025b410: 5353 7634 2d32 2e32 2e34 0a20 202d 2064  SSv4-2.2.4.  - d
│ │ │ -0025b420: 6973 6162 6c65 5f73 7472 6174 6567 790a  isable_strategy.
│ │ │ -0025b430: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -0025b440: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ -0025b450: 7074 696f 6e0a 2020 2d20 6e6f 5f72 6562  ption.  - no_reb
│ │ │ -0025b460: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ -0025b470: 6163 6b61 6765 5f6e 6574 2d73 6e6d 705f  ackage_net-snmp_
│ │ │ -0025b480: 7265 6d6f 7665 640a 2020 2d20 756e 6b6e  removed.  - unkn
│ │ │ -0025b490: 6f77 6e5f 7365 7665 7269 7479 0a3c 2f63  own_severity.
│ │ │ -0025b4b0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -0025b550: 6564 6961 7469 6f6e 2053 6865 6c6c 2073 ediation Shell s │ │ │ -0025b560: 6372 6970 7420 e287 b23c 2f61 3e3c 6272 cript ...
│ │ │ -0025b610: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -0025b630: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -0025b660: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -0025b5f0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -0025b600: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -0025b620: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -0025b640: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -0025b650: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -0025b690: 7072 653e 3c63 6f64 653e 0a23 2043 4155 pre>.# CAU │ │ │ -0025b6a0: 5449 4f4e 3a20 5468 6973 2072 656d 6564 TION: This remed │ │ │ -0025b6b0: 6961 7469 6f6e 2073 6372 6970 7420 7769 iation script wi │ │ │ -0025b6c0: 6c6c 2072 656d 6f76 6520 6e65 742d 736e ll remove net-sn │ │ │ -0025b6d0: 6d70 0a23 2066 726f 6d20 7468 6520 7379 mp.# from the sy │ │ │ -0025b6e0: 7374 656d 2c20 616e 6420 6d61 7920 7265 stem, and may re │ │ │ -0025b6f0: 6d6f 7665 2061 6e79 2070 6163 6b61 6765 move any package │ │ │ -0025b700: 730a 2320 7468 6174 2064 6570 656e 6420 s.# that depend │ │ │ -0025b710: 6f6e 206e 6574 2d73 6e6d 702e 2045 7865 on net-snmp. Exe │ │ │ -0025b720: 6375 7465 2074 6869 730a 2320 7265 6d65 cute this.# reme │ │ │ -0025b730: 6469 6174 696f 6e20 4146 5445 5220 7465 diation AFTER te │ │ │ -0025b740: 7374 696e 6720 6f6e 2061 206e 6f6e 2d70 sting on a non-p │ │ │ -0025b750: 726f 6475 6374 696f 6e0a 2320 7379 7374 roduction.# syst │ │ │ -0025b760: 656d 210a 0a0a 6966 2072 706d 202d 7120 em!...if rpm -q │ │ │ -0025b770: 2d2d 7175 6965 7420 226e 6574 2d73 6e6d --quiet "net-snm │ │ │ -0025b780: 7022 203b 2074 6865 6e0a 646e 6620 7265 p" ; then.dnf re │ │ │ -0025b790: 6d6f 7665 202d 7920 2d2d 6e6f 6175 746f move -y --noauto │ │ │ -0025b7a0: 7265 6d6f 7665 2022 6e65 742d 736e 6d70 remove "net-snmp │ │ │ -0025b7b0: 220a 6669 0a3c 2f63 6f64 653e 3c2f 7072 ".fi.
Complexity │ │ │ +0025ae40: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +0025ae60: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +0025ae70: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0025ae80: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +0025ae90: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +0025aeb0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +0025aee0: 636f 6465 3e2d 206e 616d 653a 2027 556e  code>- name: 'Un
│ │ │ +0025aef0: 696e 7374 616c 6c20 6e65 742d 736e 6d70  install net-snmp
│ │ │ +0025af00: 2050 6163 6b61 6765 3a20 456e 7375 7265   Package: Ensure
│ │ │ +0025af10: 206e 6574 2d73 6e6d 7020 6973 2072 656d   net-snmp is rem
│ │ │ +0025af20: 6f76 6564 270a 2020 616e 7369 626c 652e  oved'.  ansible.
│ │ │ +0025af30: 6275 696c 7469 6e2e 7061 636b 6167 653a  builtin.package:
│ │ │ +0025af40: 0a20 2020 206e 616d 653a 206e 6574 2d73  .    name: net-s
│ │ │ +0025af50: 6e6d 700a 2020 2020 7374 6174 653a 2061  nmp.    state: a
│ │ │ +0025af60: 6273 656e 740a 2020 7461 6773 3a0a 2020  bsent.  tags:.  
│ │ │ +0025af70: 2d20 5043 492d 4453 5376 342d 322e 320a  - PCI-DSSv4-2.2.
│ │ │ +0025af80: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ +0025af90: 322e 340a 2020 2d20 6469 7361 626c 655f  2.4.  - disable_
│ │ │ +0025afa0: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ +0025afb0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +0025afc0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +0025afd0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +0025afe0: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ +0025aff0: 6e65 742d 736e 6d70 5f72 656d 6f76 6564  net-snmp_removed
│ │ │ +0025b000: 0a20 202d 2075 6e6b 6e6f 776e 5f73 6576  .  - unknown_sev
│ │ │ +0025b010: 6572 6974 790a 3c2f 636f 6465 3e3c 2f70  erity.

Remediatio │ │ │ +0025b0d0: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ +0025b0e0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ +0025b170: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +0025b190: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +0025b1a0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0025b1b0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +0025b1c0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +0025b1e0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +0025b210: 636f 6465 3e0a 696e 636c 7564 6520 7265  code>.include re
│ │ │ +0025b220: 6d6f 7665 5f6e 6574 2d73 6e6d 700a 0a63  move_net-snmp..c
│ │ │ +0025b230: 6c61 7373 2072 656d 6f76 655f 6e65 742d  lass remove_net-
│ │ │ +0025b240: 736e 6d70 207b 0a20 2070 6163 6b61 6765  snmp {.  package
│ │ │ +0025b250: 207b 2027 6e65 742d 736e 6d70 273a 0a20   { 'net-snmp':. 
│ │ │ +0025b260: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ +0025b270: 2770 7572 6765 6427 2c0a 2020 7d0a 7d0a  'purged',.  }.}.
│ │ │ +0025b280: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +0025b330: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ +0025b340: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ +0025b350: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +0025b3f0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0025b440: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.# 
│ │ │ +0025b480: 4341 5554 494f 4e3a 2054 6869 7320 7265  CAUTION: This re
│ │ │ +0025b490: 6d65 6469 6174 696f 6e20 7363 7269 7074  mediation script
│ │ │ +0025b4a0: 2077 696c 6c20 7265 6d6f 7665 206e 6574   will remove net
│ │ │ +0025b4b0: 2d73 6e6d 700a 2320 6672 6f6d 2074 6865  -snmp.# from the
│ │ │ +0025b4c0: 2073 7973 7465 6d2c 2061 6e64 206d 6179   system, and may
│ │ │ +0025b4d0: 2072 656d 6f76 6520 616e 7920 7061 636b   remove any pack
│ │ │ +0025b4e0: 6167 6573 0a23 2074 6861 7420 6465 7065  ages.# that depe
│ │ │ +0025b4f0: 6e64 206f 6e20 6e65 742d 736e 6d70 2e20  nd on net-snmp. 
│ │ │ +0025b500: 4578 6563 7574 6520 7468 6973 0a23 2072  Execute this.# r
│ │ │ +0025b510: 656d 6564 6961 7469 6f6e 2041 4654 4552  emediation AFTER
│ │ │ +0025b520: 2074 6573 7469 6e67 206f 6e20 6120 6e6f   testing on a no
│ │ │ +0025b530: 6e2d 7072 6f64 7563 7469 6f6e 0a23 2073  n-production.# s
│ │ │ +0025b540: 7973 7465 6d21 0a0a 0a69 6620 7270 6d20  ystem!...if rpm 
│ │ │ +0025b550: 2d71 202d 2d71 7569 6574 2022 6e65 742d  -q --quiet "net-
│ │ │ +0025b560: 736e 6d70 2220 3b20 7468 656e 0a64 6e66  snmp" ; then.dnf
│ │ │ +0025b570: 2072 656d 6f76 6520 2d79 202d 2d6e 6f61   remove -y --noa
│ │ │ +0025b580: 7574 6f72 656d 6f76 6520 226e 6574 2d73  utoremove "net-s
│ │ │ +0025b590: 6e6d 7022 0a66 690a 3c2f 636f 6465 3e3c  nmp".fi.<
│ │ │ +0025b5a0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ +0025b650: 696f 6e20 416e 6163 6f6e 6461 2073 6e69  ion Anaconda sni
│ │ │ +0025b660: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e  ppet ...
│ │ │ +0025b670: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +0025b6a0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Co │ │ │ +0025b3d0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0025b400: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0025b420: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0025b430: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0025b450: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +0025b460: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ +0025b710: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +0025b730: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +0025b760: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +0025b6f0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +0025b700: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +0025b740: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +0025b750: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

..packa │ │ │ +0025b7a0: 6765 202d 2d72 656d 6f76 653d 6e65 742d ge --remove=net- │ │ │ +0025b7b0: 736e 6d70 0a3c 2f63 6f64 653e 3c2f 7072 snmp.

│ │ │ 0025b7e0: 3c2f 7461 626c 653e 3c2f 7464 3e3c 2f74 Remediation │ │ │ -0025c000: 204f 5342 7569 6c64 2042 6c75 6570 7269 OSBuild Bluepri │ │ │ -0025c010: 6e74 2073 6e69 7070 6574 20e2 87b2 3c2f nt snippet ...
.[customization
│ │ │ -0025c070: 732e 7365 7276 6963 6573 5d0a 6d61 736b  s.services].mask
│ │ │ -0025c080: 6564 203d 205b 2273 6e6d 7064 225d 0a3c  ed = ["snmpd"].<
│ │ │ -0025c090: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -0025c140: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ -0025c150: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
< │ │ │ -0025c1f0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0025c200: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -0025c250: 3c74 723e 3c74 683e 5374 7261 7465 6779
inc
│ │ │ -0025c290: 6c75 6465 2064 6973 6162 6c65 5f73 6e6d  lude disable_snm
│ │ │ -0025c2a0: 7064 0a0a 636c 6173 7320 6469 7361 626c  pd..class disabl
│ │ │ -0025c2b0: 655f 736e 6d70 6420 7b0a 2020 7365 7276  e_snmpd {.  serv
│ │ │ -0025c2c0: 6963 6520 7b27 736e 6d70 6427 3a0a 2020  ice {'snmpd':.  
│ │ │ -0025c2d0: 2020 656e 6162 6c65 203d 2667 743b 2066    enable => f
│ │ │ -0025c2e0: 616c 7365 2c0a 2020 2020 656e 7375 7265  alse,.    ensure
│ │ │ -0025c2f0: 203d 2667 743b 2027 7374 6f70 7065 6427   => 'stopped'
│ │ │ -0025c300: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ -0025c310: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ -0025c3c0: 696f 6e20 416e 7369 626c 6520 736e 6970  ion Ansible snip
│ │ │ -0025c3d0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c  pet ...
< │ │ │ -0025c3e0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -0025c3f0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -0025c400: 7365 2220 6964 3d22 6964 3831 3022 3e3c se" id="id810">< │ │ │ -0025c410: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -0025c420: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -0025c430: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -0025c440: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -0025c450: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:Strategy: │ │ │ -0025c4e0: 3c74 643e 6469 7361 626c 653c 2f74 643e │ │ │ -0025c4f0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
C │ │ │ -0025c1e0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -0025c210: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -0025c220: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -0025c260: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -0025c270: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complex │ │ │ -0025c460: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -0025c470: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ -0025c4b0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -0025c4c0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
disable
- name: │ │ │ -0025c510: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ -0025c520: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ -0025c530: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ -0025c540: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ -0025c550: 6773 3a0a 2020 2d20 6469 7361 626c 655f gs:. - disable_ │ │ │ -0025c560: 7374 7261 7465 6779 0a20 202d 206c 6f77 strategy. - low │ │ │ -0025c570: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ -0025c580: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20 low_disruption. │ │ │ -0025c590: 202d 206c 6f77 5f73 6576 6572 6974 790a - low_severity. │ │ │ -0025c5a0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ -0025c5b0: 6564 6564 0a20 202d 2073 6572 7669 6365 eded. - service │ │ │ -0025c5c0: 5f73 6e6d 7064 5f64 6973 6162 6c65 640a _snmpd_disabled. │ │ │ -0025c5d0: 0a2d 206e 616d 653a 2044 6973 6162 6c65 .- name: Disable │ │ │ -0025c5e0: 2073 6e6d 7064 2053 6572 7669 6365 202d snmpd Service - │ │ │ -0025c5f0: 2044 6973 6162 6c65 2073 6572 7669 6365 Disable service │ │ │ -0025c600: 2073 6e6d 7064 0a20 2062 6c6f 636b 3a0a snmpd. block:. │ │ │ -0025c610: 0a20 202d 206e 616d 653a 2044 6973 6162 . - name: Disab │ │ │ -0025c620: 6c65 2073 6e6d 7064 2053 6572 7669 6365 le snmpd Service │ │ │ -0025c630: 202d 2043 6f6c 6c65 6374 2073 7973 7465 - Collect syste │ │ │ -0025c640: 6d64 2053 6572 7669 6365 7320 5072 6573 md Services Pres │ │ │ -0025c650: 656e 7420 696e 2074 6865 2053 7973 7465 ent in the Syste │ │ │ -0025c660: 6d0a 2020 2020 616e 7369 626c 652e 6275 m. ansible.bu │ │ │ -0025c670: 696c 7469 6e2e 636f 6d6d 616e 643a 2073 iltin.command: s │ │ │ -0025c680: 7973 7465 6d63 746c 202d 7120 6c69 7374 ystemctl -q list │ │ │ -0025c690: 2d75 6e69 742d 6669 6c65 7320 2d2d 7479 -unit-files --ty │ │ │ -0025c6a0: 7065 2073 6572 7669 6365 0a20 2020 2072 pe service. r │ │ │ -0025c6b0: 6567 6973 7465 723a 2073 6572 7669 6365 egister: service │ │ │ -0025c6c0: 5f65 7869 7374 730a 2020 2020 6368 616e _exists. chan │ │ │ -0025c6d0: 6765 645f 7768 656e 3a20 6661 6c73 650a ged_when: false. │ │ │ -0025c6e0: 2020 2020 6661 696c 6564 5f77 6865 6e3a failed_when: │ │ │ -0025c6f0: 2073 6572 7669 6365 5f65 7869 7374 732e service_exists. │ │ │ -0025c700: 7263 206e 6f74 2069 6e20 5b30 2c20 315d rc not in [0, 1] │ │ │ -0025c710: 0a20 2020 2063 6865 636b 5f6d 6f64 653a . check_mode: │ │ │ -0025c720: 2066 616c 7365 0a0a 2020 2d20 6e61 6d65 false.. - name │ │ │ -0025c730: 3a20 4469 7361 626c 6520 736e 6d70 6420 : Disable snmpd │ │ │ -0025c740: 5365 7276 6963 6520 2d20 456e 7375 7265 Service - Ensure │ │ │ -0025c750: 2073 6e6d 7064 2e73 6572 7669 6365 2069 snmpd.service i │ │ │ -0025c760: 7320 4d61 736b 6564 0a20 2020 2061 6e73 s Masked. ans │ │ │ -0025c770: 6962 6c65 2e62 7569 6c74 696e 2e73 7973 ible.builtin.sys │ │ │ -0025c780: 7465 6d64 3a0a 2020 2020 2020 6e61 6d65 temd:. name │ │ │ -0025c790: 3a20 736e 6d70 642e 7365 7276 6963 650a : snmpd.service. │ │ │ -0025c7a0: 2020 2020 2020 7374 6174 653a 2073 746f state: sto │ │ │ -0025c7b0: 7070 6564 0a20 2020 2020 2065 6e61 626c pped. enabl │ │ │ -0025c7c0: 6564 3a20 6661 6c73 650a 2020 2020 2020 ed: false. │ │ │ -0025c7d0: 6d61 736b 6564 3a20 7472 7565 0a20 2020 masked: true. │ │ │ -0025c7e0: 2077 6865 6e3a 2073 6572 7669 6365 5f65 when: service_e │ │ │ -0025c7f0: 7869 7374 732e 7374 646f 7574 5f6c 696e xists.stdout_lin │ │ │ -0025c800: 6573 2069 7320 7365 6172 6368 2822 736e es is search("sn │ │ │ -0025c810: 6d70 642e 7365 7276 6963 6522 2c20 6d75 mpd.service", mu │ │ │ -0025c820: 6c74 696c 696e 653d 5472 7565 290a 0a20 ltiline=True).. │ │ │ -0025c830: 202d 206e 616d 653a 2055 6e69 7420 536f - name: Unit So │ │ │ -0025c840: 636b 6574 2045 7869 7374 7320 2d20 736e cket Exists - sn │ │ │ -0025c850: 6d70 642e 736f 636b 6574 0a20 2020 2061 mpd.socket. a │ │ │ -0025c860: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63 nsible.builtin.c │ │ │ -0025c870: 6f6d 6d61 6e64 3a20 7379 7374 656d 6374 ommand: systemct │ │ │ -0025c880: 6c20 2d71 206c 6973 742d 756e 6974 2d66 l -q list-unit-f │ │ │ -0025c890: 696c 6573 2073 6e6d 7064 2e73 6f63 6b65 iles snmpd.socke │ │ │ -0025c8a0: 740a 2020 2020 7265 6769 7374 6572 3a20 t. register: │ │ │ -0025c8b0: 736f 636b 6574 5f66 696c 655f 6578 6973 socket_file_exis │ │ │ -0025c8c0: 7473 0a20 2020 2063 6861 6e67 6564 5f77 ts. changed_w │ │ │ -0025c8d0: 6865 6e3a 2066 616c 7365 0a20 2020 2066 hen: false. f │ │ │ -0025c8e0: 6169 6c65 645f 7768 656e 3a20 736f 636b ailed_when: sock │ │ │ -0025c8f0: 6574 5f66 696c 655f 6578 6973 7473 2e72 et_file_exists.r │ │ │ -0025c900: 6320 6e6f 7420 696e 205b 302c 2031 5d0a c not in [0, 1]. │ │ │ -0025c910: 2020 2020 6368 6563 6b5f 6d6f 6465 3a20 check_mode: │ │ │ -0025c920: 6661 6c73 650a 0a20 202d 206e 616d 653a false.. - name: │ │ │ -0025c930: 2044 6973 6162 6c65 2073 6e6d 7064 2053 Disable snmpd S │ │ │ -0025c940: 6572 7669 6365 202d 2044 6973 6162 6c65 ervice - Disable │ │ │ -0025c950: 2053 6f63 6b65 7420 736e 6d70 640a 2020 Socket snmpd. │ │ │ -0025c960: 2020 616e 7369 626c 652e 6275 696c 7469 ansible.builti │ │ │ -0025c970: 6e2e 7379 7374 656d 643a 0a20 2020 2020 n.systemd:. │ │ │ -0025c980: 206e 616d 653a 2073 6e6d 7064 2e73 6f63 name: snmpd.soc │ │ │ -0025c990: 6b65 740a 2020 2020 2020 656e 6162 6c65 ket. enable │ │ │ -0025c9a0: 643a 2066 616c 7365 0a20 2020 2020 2073 d: false. s │ │ │ -0025c9b0: 7461 7465 3a20 7374 6f70 7065 640a 2020 tate: stopped. │ │ │ -0025c9c0: 2020 2020 6d61 736b 6564 3a20 7472 7565 masked: true │ │ │ -0025c9d0: 0a20 2020 2077 6865 6e3a 2073 6f63 6b65 . when: socke │ │ │ -0025c9e0: 745f 6669 6c65 5f65 7869 7374 732e 7374 t_file_exists.st │ │ │ -0025c9f0: 646f 7574 5f6c 696e 6573 2069 7320 7365 dout_lines is se │ │ │ -0025ca00: 6172 6368 2822 736e 6d70 642e 736f 636b arch("snmpd.sock │ │ │ -0025ca10: 6574 222c 206d 756c 7469 6c69 6e65 3d54 et", multiline=T │ │ │ -0025ca20: 7275 6529 0a20 2074 6167 733a 0a20 202d rue). tags:. - │ │ │ -0025ca30: 2064 6973 6162 6c65 5f73 7472 6174 6567 disable_strateg │ │ │ -0025ca40: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65 y. - low_comple │ │ │ -0025ca50: 7869 7479 0a20 202d 206c 6f77 5f64 6973 xity. - low_dis │ │ │ -0025ca60: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f ruption. - low_ │ │ │ -0025ca70: 7365 7665 7269 7479 0a20 202d 206e 6f5f severity. - no_ │ │ │ -0025ca80: 7265 626f 6f74 5f6e 6565 6465 640a 2020 reboot_needed. │ │ │ -0025ca90: 2d20 7365 7276 6963 655f 736e 6d70 645f - service_snmpd_ │ │ │ -0025caa0: 6469 7361 626c 6564 0a20 202d 2073 7065 disabled. - spe │ │ │ -0025cab0: 6369 616c 5f73 6572 7669 6365 5f62 6c6f cial_service_blo │ │ │ -0025cac0: 636b 0a20 2077 6865 6e3a 2028 2022 6e65 ck. when: ( "ne │ │ │ -0025cad0: 742d 736e 6d70 2220 696e 2061 6e73 6962 t-snmp" in ansib │ │ │ -0025cae0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -0025caf0: 7320 616e 6420 226b 6572 6e65 6c22 2069 s and "kernel" i │ │ │ -0025cb00: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -0025cb10: 7061 636b 6167 6573 0a20 2020 2029 0a3c packages. ).< │ │ │ +0025c000: 2041 6e73 6962 6c65 2073 6e69 7070 6574 Ansible snippet │ │ │ +0025c010: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ +0025c0a0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +0025c0c0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +0025c0d0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0025c0e0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +0025c0f0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +0025c110: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +0025c140: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ +0025c150: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ +0025c160: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ +0025c170: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ +0025c180: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ +0025c190: 0a20 202d 2064 6973 6162 6c65 5f73 7472  .  - disable_str
│ │ │ +0025c1a0: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ +0025c1b0: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ +0025c1c0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +0025c1d0: 6c6f 775f 7365 7665 7269 7479 0a20 202d  low_severity.  -
│ │ │ +0025c1e0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +0025c1f0: 640a 2020 2d20 7365 7276 6963 655f 736e  d.  - service_sn
│ │ │ +0025c200: 6d70 645f 6469 7361 626c 6564 0a0a 2d20  mpd_disabled..- 
│ │ │ +0025c210: 6e61 6d65 3a20 4469 7361 626c 6520 736e  name: Disable sn
│ │ │ +0025c220: 6d70 6420 5365 7276 6963 6520 2d20 4469  mpd Service - Di
│ │ │ +0025c230: 7361 626c 6520 7365 7276 6963 6520 736e  sable service sn
│ │ │ +0025c240: 6d70 640a 2020 626c 6f63 6b3a 0a0a 2020  mpd.  block:..  
│ │ │ +0025c250: 2d20 6e61 6d65 3a20 4469 7361 626c 6520  - name: Disable 
│ │ │ +0025c260: 736e 6d70 6420 5365 7276 6963 6520 2d20  snmpd Service - 
│ │ │ +0025c270: 436f 6c6c 6563 7420 7379 7374 656d 6420  Collect systemd 
│ │ │ +0025c280: 5365 7276 6963 6573 2050 7265 7365 6e74  Services Present
│ │ │ +0025c290: 2069 6e20 7468 6520 5379 7374 656d 0a20   in the System. 
│ │ │ +0025c2a0: 2020 2061 6e73 6962 6c65 2e62 7569 6c74     ansible.built
│ │ │ +0025c2b0: 696e 2e63 6f6d 6d61 6e64 3a20 7379 7374  in.command: syst
│ │ │ +0025c2c0: 656d 6374 6c20 2d71 206c 6973 742d 756e  emctl -q list-un
│ │ │ +0025c2d0: 6974 2d66 696c 6573 202d 2d74 7970 6520  it-files --type 
│ │ │ +0025c2e0: 7365 7276 6963 650a 2020 2020 7265 6769  service.    regi
│ │ │ +0025c2f0: 7374 6572 3a20 7365 7276 6963 655f 6578  ster: service_ex
│ │ │ +0025c300: 6973 7473 0a20 2020 2063 6861 6e67 6564  ists.    changed
│ │ │ +0025c310: 5f77 6865 6e3a 2066 616c 7365 0a20 2020  _when: false.   
│ │ │ +0025c320: 2066 6169 6c65 645f 7768 656e 3a20 7365   failed_when: se
│ │ │ +0025c330: 7276 6963 655f 6578 6973 7473 2e72 6320  rvice_exists.rc 
│ │ │ +0025c340: 6e6f 7420 696e 205b 302c 2031 5d0a 2020  not in [0, 1].  
│ │ │ +0025c350: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661    check_mode: fa
│ │ │ +0025c360: 6c73 650a 0a20 202d 206e 616d 653a 2044  lse..  - name: D
│ │ │ +0025c370: 6973 6162 6c65 2073 6e6d 7064 2053 6572  isable snmpd Ser
│ │ │ +0025c380: 7669 6365 202d 2045 6e73 7572 6520 736e  vice - Ensure sn
│ │ │ +0025c390: 6d70 642e 7365 7276 6963 6520 6973 204d  mpd.service is M
│ │ │ +0025c3a0: 6173 6b65 640a 2020 2020 616e 7369 626c  asked.    ansibl
│ │ │ +0025c3b0: 652e 6275 696c 7469 6e2e 7379 7374 656d  e.builtin.system
│ │ │ +0025c3c0: 643a 0a20 2020 2020 206e 616d 653a 2073  d:.      name: s
│ │ │ +0025c3d0: 6e6d 7064 2e73 6572 7669 6365 0a20 2020  nmpd.service.   
│ │ │ +0025c3e0: 2020 2073 7461 7465 3a20 7374 6f70 7065     state: stoppe
│ │ │ +0025c3f0: 640a 2020 2020 2020 656e 6162 6c65 643a  d.      enabled:
│ │ │ +0025c400: 2066 616c 7365 0a20 2020 2020 206d 6173   false.      mas
│ │ │ +0025c410: 6b65 643a 2074 7275 650a 2020 2020 7768  ked: true.    wh
│ │ │ +0025c420: 656e 3a20 7365 7276 6963 655f 6578 6973  en: service_exis
│ │ │ +0025c430: 7473 2e73 7464 6f75 745f 6c69 6e65 7320  ts.stdout_lines 
│ │ │ +0025c440: 6973 2073 6561 7263 6828 2273 6e6d 7064  is search("snmpd
│ │ │ +0025c450: 2e73 6572 7669 6365 222c 206d 756c 7469  .service", multi
│ │ │ +0025c460: 6c69 6e65 3d54 7275 6529 0a0a 2020 2d20  line=True)..  - 
│ │ │ +0025c470: 6e61 6d65 3a20 556e 6974 2053 6f63 6b65  name: Unit Socke
│ │ │ +0025c480: 7420 4578 6973 7473 202d 2073 6e6d 7064  t Exists - snmpd
│ │ │ +0025c490: 2e73 6f63 6b65 740a 2020 2020 616e 7369  .socket.    ansi
│ │ │ +0025c4a0: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ +0025c4b0: 616e 643a 2073 7973 7465 6d63 746c 202d  and: systemctl -
│ │ │ +0025c4c0: 7120 6c69 7374 2d75 6e69 742d 6669 6c65  q list-unit-file
│ │ │ +0025c4d0: 7320 736e 6d70 642e 736f 636b 6574 0a20  s snmpd.socket. 
│ │ │ +0025c4e0: 2020 2072 6567 6973 7465 723a 2073 6f63     register: soc
│ │ │ +0025c4f0: 6b65 745f 6669 6c65 5f65 7869 7374 730a  ket_file_exists.
│ │ │ +0025c500: 2020 2020 6368 616e 6765 645f 7768 656e      changed_when
│ │ │ +0025c510: 3a20 6661 6c73 650a 2020 2020 6661 696c  : false.    fail
│ │ │ +0025c520: 6564 5f77 6865 6e3a 2073 6f63 6b65 745f  ed_when: socket_
│ │ │ +0025c530: 6669 6c65 5f65 7869 7374 732e 7263 206e  file_exists.rc n
│ │ │ +0025c540: 6f74 2069 6e20 5b30 2c20 315d 0a20 2020  ot in [0, 1].   
│ │ │ +0025c550: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ +0025c560: 7365 0a0a 2020 2d20 6e61 6d65 3a20 4469  se..  - name: Di
│ │ │ +0025c570: 7361 626c 6520 736e 6d70 6420 5365 7276  sable snmpd Serv
│ │ │ +0025c580: 6963 6520 2d20 4469 7361 626c 6520 536f  ice - Disable So
│ │ │ +0025c590: 636b 6574 2073 6e6d 7064 0a20 2020 2061  cket snmpd.    a
│ │ │ +0025c5a0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e73  nsible.builtin.s
│ │ │ +0025c5b0: 7973 7465 6d64 3a0a 2020 2020 2020 6e61  ystemd:.      na
│ │ │ +0025c5c0: 6d65 3a20 736e 6d70 642e 736f 636b 6574  me: snmpd.socket
│ │ │ +0025c5d0: 0a20 2020 2020 2065 6e61 626c 6564 3a20  .      enabled: 
│ │ │ +0025c5e0: 6661 6c73 650a 2020 2020 2020 7374 6174  false.      stat
│ │ │ +0025c5f0: 653a 2073 746f 7070 6564 0a20 2020 2020  e: stopped.     
│ │ │ +0025c600: 206d 6173 6b65 643a 2074 7275 650a 2020   masked: true.  
│ │ │ +0025c610: 2020 7768 656e 3a20 736f 636b 6574 5f66    when: socket_f
│ │ │ +0025c620: 696c 655f 6578 6973 7473 2e73 7464 6f75  ile_exists.stdou
│ │ │ +0025c630: 745f 6c69 6e65 7320 6973 2073 6561 7263  t_lines is searc
│ │ │ +0025c640: 6828 2273 6e6d 7064 2e73 6f63 6b65 7422  h("snmpd.socket"
│ │ │ +0025c650: 2c20 6d75 6c74 696c 696e 653d 5472 7565  , multiline=True
│ │ │ +0025c660: 290a 2020 7461 6773 3a0a 2020 2d20 6469  ).  tags:.  - di
│ │ │ +0025c670: 7361 626c 655f 7374 7261 7465 6779 0a20  sable_strategy. 
│ │ │ +0025c680: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +0025c690: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ +0025c6a0: 7469 6f6e 0a20 202d 206c 6f77 5f73 6576  tion.  - low_sev
│ │ │ +0025c6b0: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ +0025c6c0: 6f6f 745f 6e65 6564 6564 0a20 202d 2073  oot_needed.  - s
│ │ │ +0025c6d0: 6572 7669 6365 5f73 6e6d 7064 5f64 6973  ervice_snmpd_dis
│ │ │ +0025c6e0: 6162 6c65 640a 2020 2d20 7370 6563 6961  abled.  - specia
│ │ │ +0025c6f0: 6c5f 7365 7276 6963 655f 626c 6f63 6b0a  l_service_block.
│ │ │ +0025c700: 2020 7768 656e 3a20 2820 226e 6574 2d73    when: ( "net-s
│ │ │ +0025c710: 6e6d 7022 2069 6e20 616e 7369 626c 655f  nmp" in ansible_
│ │ │ +0025c720: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +0025c730: 6e64 2022 6b65 726e 656c 2220 696e 2061  nd "kernel" in a
│ │ │ +0025c740: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +0025c750: 6b61 6765 730a 2020 2020 290a 3c2f 636f  kages.    ).
< │ │ │ +0025c770: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +0025c780: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +0025c790: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +0025c7a0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +0025c7b0: 6438 3039 2220 7461 6269 6e64 6578 3d22 d809" tabindex=" │ │ │ +0025c7c0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +0025c7d0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +0025c7e0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +0025c7f0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +0025c800: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +0025c810: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ +0025c820: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +0025c8b0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +0025c8c0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +0025c8e0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +0025c900: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +0025c910: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ +0025c950: 7072 653e 3c63 6f64 653e 696e 636c 7564 pre>includ │ │ │ +0025c960: 6520 6469 7361 626c 655f 736e 6d70 640a e disable_snmpd. │ │ │ +0025c970: 0a63 6c61 7373 2064 6973 6162 6c65 5f73 .class disable_s │ │ │ +0025c980: 6e6d 7064 207b 0a20 2073 6572 7669 6365 nmpd {. service │ │ │ +0025c990: 207b 2773 6e6d 7064 273a 0a20 2020 2065 {'snmpd':. e │ │ │ +0025c9a0: 6e61 626c 6520 3d26 6774 3b20 6661 6c73 nable => fals │ │ │ +0025c9b0: 652c 0a20 2020 2065 6e73 7572 6520 3d26 e,. ensure =& │ │ │ +0025c9c0: 6774 3b20 2773 746f 7070 6564 272c 0a20 gt; 'stopped',. │ │ │ +0025c9d0: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 }.}.
Remediation │ │ │ +0025ca90: 204f 5342 7569 6c64 2042 6c75 6570 7269 OSBuild Bluepri │ │ │ +0025caa0: 6e74 2073 6e69 7070 6574 20e2 87b2 3c2f nt snippet ...
.[customization
│ │ │ +0025cb00: 732e 7365 7276 6963 6573 5d0a 6d61 736b  s.services].mask
│ │ │ +0025cb10: 6564 203d 205b 2273 6e6d 7064 225d 0a3c  ed = ["snmpd"].<
│ │ │  0025cb20: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -002938f0: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ -00293900: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...

│ │ │ -00293950: 696e 636c 7564 6520 7373 685f 7072 6976  include ssh_priv
│ │ │ -00293960: 6174 655f 6b65 795f 7065 726d 730a 0a63  ate_key_perms..c
│ │ │ -00293970: 6c61 7373 2073 7368 5f70 7269 7661 7465  lass ssh_private
│ │ │ -00293980: 5f6b 6579 5f70 6572 6d73 207b 0a20 2065  _key_perms {.  e
│ │ │ -00293990: 7865 6320 7b20 2773 7368 645f 7072 6976  xec { 'sshd_priv
│ │ │ -002939a0: 5f6b 6579 273a 0a20 2020 2063 6f6d 6d61  _key':.    comma
│ │ │ -002939b0: 6e64 203d 2667 743b 2022 6368 6d6f 6420  nd => "chmod 
│ │ │ -002939c0: 3036 3430 202f 6574 632f 7373 682f 2a5f  0640 /etc/ssh/*_
│ │ │ -002939d0: 6b65 7922 2c0a 2020 2020 7061 7468 2020  key",.    path  
│ │ │ -002939e0: 2020 3d26 6774 3b20 272f 6269 6e3a 2f75    => '/bin:/u
│ │ │ -002939f0: 7372 2f62 696e 270a 2020 7d0a 7d0a 3c2f  sr/bin'.  }.}.
Re │ │ │ -00293ab0: 6d65 6469 6174 696f 6e20 416e 7369 626c mediation Ansibl │ │ │ -00293ac0: 6520 736e 6970 7065 7420 e287 b23c 2f61 e snippet ...
< │ │ │ -00293b60: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00293b70: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -00293bc0: 3c74 723e 3c74 683e 5374 7261 7465 6779

│ │ │ -00293c00: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ -00293c10: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ -00293c20: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ -00293c30: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ -00293c40: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ -00293c50: 4e49 5354 2d38 3030 2d31 3731 2d33 2e31  NIST-800-171-3.1
│ │ │ -00293c60: 2e31 330a 2020 2d20 4e49 5354 2d38 3030  .13.  - NIST-800
│ │ │ -00293c70: 2d31 3731 2d33 2e31 332e 3130 0a20 202d  -171-3.13.10.  -
│ │ │ -00293c80: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -00293c90: 3137 2861 290a 2020 2d20 4e49 5354 2d38  17(a).  - NIST-8
│ │ │ -00293ca0: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ -00293cb0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -00293cc0: 2d36 2861 290a 2020 2d20 5043 492d 4453  -6(a).  - PCI-DS
│ │ │ -00293cd0: 532d 5265 712d 322e 322e 340a 2020 2d20  S-Req-2.2.4.  - 
│ │ │ -00293ce0: 5043 492d 4453 5376 342d 322e 320a 2020  PCI-DSSv4-2.2.  
│ │ │ -00293cf0: 2d20 5043 492d 4453 5376 342d 322e 322e  - PCI-DSSv4-2.2.
│ │ │ -00293d00: 360a 2020 2d20 636f 6e66 6967 7572 655f  6.  - configure_
│ │ │ -00293d10: 7374 7261 7465 6779 0a20 202d 2066 696c  strategy.  - fil
│ │ │ -00293d20: 655f 7065 726d 6973 7369 6f6e 735f 7373  e_permissions_ss
│ │ │ -00293d30: 6864 5f70 7269 7661 7465 5f6b 6579 0a20  hd_private_key. 
│ │ │ -00293d40: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -00293d50: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -00293d60: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ -00293d70: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ -00293d80: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -00293d90: 206e 616d 653a 2046 696e 6420 726f 6f74   name: Find root
│ │ │ -00293da0: 3a72 6f6f 742d 6f77 6e65 6420 6b65 7973  :root-owned keys
│ │ │ -00293db0: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -00293dc0: 696e 2e63 6f6d 6d61 6e64 3a20 6669 6e64  in.command: find
│ │ │ -00293dd0: 202d 4820 2f65 7463 2f73 7368 2f20 2d6d   -H /etc/ssh/ -m
│ │ │ -00293de0: 6178 6465 7074 6820 3120 2d75 7365 7220  axdepth 1 -user 
│ │ │ -00293df0: 726f 6f74 202d 7265 6765 7820 222e 2a5f  root -regex ".*_
│ │ │ -00293e00: 6b65 7924 220a 2020 2020 2d74 7970 6520  key$".    -type 
│ │ │ -00293e10: 6620 2d67 726f 7570 2072 6f6f 7420 2d70  f -group root -p
│ │ │ -00293e20: 6572 6d20 2f75 2b78 732c 672b 7877 7273  erm /u+xs,g+xwrs
│ │ │ -00293e30: 2c6f 2b78 7772 740a 2020 7265 6769 7374  ,o+xwrt.  regist
│ │ │ -00293e40: 6572 3a20 726f 6f74 5f6f 776e 6564 5f6b  er: root_owned_k
│ │ │ -00293e50: 6579 730a 2020 6368 616e 6765 645f 7768  eys.  changed_wh
│ │ │ -00293e60: 656e 3a20 6661 6c73 650a 2020 6661 696c  en: false.  fail
│ │ │ -00293e70: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ -00293e80: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ -00293e90: 7365 0a20 2077 6865 6e3a 2027 226b 6572  se.  when: '"ker
│ │ │ -00293ea0: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -00293eb0: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ -00293ec0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -00293ed0: 2d38 3030 2d31 3731 2d33 2e31 2e31 330a  -800-171-3.1.13.
│ │ │ -00293ee0: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ -00293ef0: 2d33 2e31 332e 3130 0a20 202d 204e 4953  -3.13.10.  - NIS
│ │ │ -00293f00: 542d 3830 302d 3533 2d41 432d 3137 2861  T-800-53-AC-17(a
│ │ │ -00293f10: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -00293f20: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ -00293f30: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -00293f40: 290a 2020 2d20 5043 492d 4453 532d 5265  ).  - PCI-DSS-Re
│ │ │ -00293f50: 712d 322e 322e 340a 2020 2d20 5043 492d  q-2.2.4.  - PCI-
│ │ │ -00293f60: 4453 5376 342d 322e 320a 2020 2d20 5043  DSSv4-2.2.  - PC
│ │ │ -00293f70: 492d 4453 5376 342d 322e 322e 360a 2020  I-DSSv4-2.2.6.  
│ │ │ -00293f80: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -00293f90: 7465 6779 0a20 202d 2066 696c 655f 7065  tegy.  - file_pe
│ │ │ -00293fa0: 726d 6973 7369 6f6e 735f 7373 6864 5f70  rmissions_sshd_p
│ │ │ -00293fb0: 7269 7661 7465 5f6b 6579 0a20 202d 206c  rivate_key.  - l
│ │ │ -00293fc0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -00293fd0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -00293fe0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -00293ff0: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -00294000: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -00294010: 653a 2053 6574 2070 6572 6d69 7373 696f  e: Set permissio
│ │ │ -00294020: 6e73 2066 6f72 2072 6f6f 743a 726f 6f74  ns for root:root
│ │ │ -00294030: 2d6f 776e 6564 206b 6579 730a 2020 616e  -owned keys.  an
│ │ │ -00294040: 7369 626c 652e 6275 696c 7469 6e2e 6669  sible.builtin.fi
│ │ │ -00294050: 6c65 3a0a 2020 2020 7061 7468 3a20 277b  le:.    path: '{
│ │ │ -00294060: 7b20 6974 656d 207d 7d27 0a20 2020 206d  { item }}'.    m
│ │ │ -00294070: 6f64 653a 2075 2d78 732c 672d 7877 7273  ode: u-xs,g-xwrs
│ │ │ -00294080: 2c6f 2d78 7772 740a 2020 2020 7374 6174  ,o-xwrt.    stat
│ │ │ -00294090: 653a 2066 696c 650a 2020 7769 7468 5f69  e: file.  with_i
│ │ │ -002940a0: 7465 6d73 3a0a 2020 2d20 277b 7b20 726f  tems:.  - '{{ ro
│ │ │ -002940b0: 6f74 5f6f 776e 6564 5f6b 6579 732e 7374  ot_owned_keys.st
│ │ │ -002940c0: 646f 7574 5f6c 696e 6573 207d 7d27 0a20  dout_lines }}'. 
│ │ │ -002940d0: 2077 6865 6e3a 2027 226b 6572 6e65 6c22   when: '"kernel"
│ │ │ -002940e0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -002940f0: 732e 7061 636b 6167 6573 270a 2020 7461  s.packages'.  ta
│ │ │ -00294100: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -00294110: 2d31 3731 2d33 2e31 2e31 330a 2020 2d20  -171-3.1.13.  - 
│ │ │ -00294120: 4e49 5354 2d38 3030 2d31 3731 2d33 2e31  NIST-800-171-3.1
│ │ │ -00294130: 332e 3130 0a20 202d 204e 4953 542d 3830  3.10.  - NIST-80
│ │ │ -00294140: 302d 3533 2d41 432d 3137 2861 290a 2020  0-53-AC-17(a).  
│ │ │ -00294150: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -00294160: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ -00294170: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ -00294180: 2d20 5043 492d 4453 532d 5265 712d 322e  - PCI-DSS-Req-2.
│ │ │ -00294190: 322e 340a 2020 2d20 5043 492d 4453 5376  2.4.  - PCI-DSSv
│ │ │ -002941a0: 342d 322e 320a 2020 2d20 5043 492d 4453  4-2.2.  - PCI-DS
│ │ │ -002941b0: 5376 342d 322e 322e 360a 2020 2d20 636f  Sv4-2.2.6.  - co
│ │ │ -002941c0: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -002941d0: 0a20 202d 2066 696c 655f 7065 726d 6973  .  - file_permis
│ │ │ -002941e0: 7369 6f6e 735f 7373 6864 5f70 7269 7661  sions_sshd_priva
│ │ │ -002941f0: 7465 5f6b 6579 0a20 202d 206c 6f77 5f63  te_key.  - low_c
│ │ │ -00294200: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -00294210: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -00294220: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -00294230: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -00294240: 6565 6465 640a 0a2d 206e 616d 653a 2046  eeded..- name: F
│ │ │ -00294250: 696e 6420 726f 6f74 3a73 7368 5f6b 6579  ind root:ssh_key
│ │ │ -00294260: 732d 6f77 6e65 6420 6b65 7973 0a20 2061  s-owned keys.  a
│ │ │ -00294270: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ -00294280: 6f6d 6d61 6e64 3a20 6669 6e64 202d 4820  ommand: find -H 
│ │ │ -00294290: 2f65 7463 2f73 7368 2f20 2d6d 6178 6465  /etc/ssh/ -maxde
│ │ │ -002942a0: 7074 6820 3120 2d75 7365 7220 726f 6f74  pth 1 -user root
│ │ │ -002942b0: 202d 7265 6765 7820 222e 2a5f 6b65 7924   -regex ".*_key$
│ │ │ -002942c0: 220a 2020 2020 2d74 7970 6520 6620 2d67  ".    -type f -g
│ │ │ -002942d0: 726f 7570 2073 7368 5f6b 6579 7320 2d70  roup ssh_keys -p
│ │ │ -002942e0: 6572 6d20 2f75 2b78 732c 672b 7877 732c  erm /u+xs,g+xws,
│ │ │ -002942f0: 6f2b 7877 7274 0a20 2072 6567 6973 7465  o+xwrt.  registe
│ │ │ -00294300: 723a 2064 6564 6963 6174 6564 5f67 726f  r: dedicated_gro
│ │ │ -00294310: 7570 5f6f 776e 6564 5f6b 6579 730a 2020  up_owned_keys.  
│ │ │ -00294320: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ -00294330: 6c73 650a 2020 6661 696c 6564 5f77 6865  lse.  failed_whe
│ │ │ -00294340: 6e3a 2066 616c 7365 0a20 2063 6865 636b  n: false.  check
│ │ │ -00294350: 5f6d 6f64 653a 2066 616c 7365 0a20 2077  _mode: false.  w
│ │ │ -00294360: 6865 6e3a 2027 226b 6572 6e65 6c22 2069  hen: '"kernel" i
│ │ │ -00294370: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -00294380: 7061 636b 6167 6573 270a 2020 7461 6773  packages'.  tags
│ │ │ -00294390: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d31  :.  - NIST-800-1
│ │ │ -002943a0: 3731 2d33 2e31 2e31 330a 2020 2d20 4e49  71-3.1.13.  - NI
│ │ │ -002943b0: 5354 2d38 3030 2d31 3731 2d33 2e31 332e  ST-800-171-3.13.
│ │ │ -002943c0: 3130 0a20 202d 204e 4953 542d 3830 302d  10.  - NIST-800-
│ │ │ -002943d0: 3533 2d41 432d 3137 2861 290a 2020 2d20  53-AC-17(a).  - 
│ │ │ -002943e0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -002943f0: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ -00294400: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -00294410: 5043 492d 4453 532d 5265 712d 322e 322e  PCI-DSS-Req-2.2.
│ │ │ -00294420: 340a 2020 2d20 5043 492d 4453 5376 342d  4.  - PCI-DSSv4-
│ │ │ -00294430: 322e 320a 2020 2d20 5043 492d 4453 5376  2.2.  - PCI-DSSv
│ │ │ -00294440: 342d 322e 322e 360a 2020 2d20 636f 6e66  4-2.2.6.  - conf
│ │ │ -00294450: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -00294460: 202d 2066 696c 655f 7065 726d 6973 7369   - file_permissi
│ │ │ -00294470: 6f6e 735f 7373 6864 5f70 7269 7661 7465  ons_sshd_private
│ │ │ -00294480: 5f6b 6579 0a20 202d 206c 6f77 5f63 6f6d  _key.  - low_com
│ │ │ -00294490: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ -002944a0: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -002944b0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -002944c0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -002944d0: 6465 640a 0a2d 206e 616d 653a 2053 6574  ded..- name: Set
│ │ │ -002944e0: 2070 6572 6d69 7373 696f 6e73 2066 6f72   permissions for
│ │ │ -002944f0: 2072 6f6f 743a 7373 685f 6b65 7973 2d6f   root:ssh_keys-o
│ │ │ -00294500: 776e 6564 206b 6579 730a 2020 616e 7369  wned keys.  ansi
│ │ │ -00294510: 626c 652e 6275 696c 7469 6e2e 6669 6c65  ble.builtin.file
│ │ │ -00294520: 3a0a 2020 2020 7061 7468 3a20 277b 7b20  :.    path: '{{ 
│ │ │ -00294530: 6974 656d 207d 7d27 0a20 2020 206d 6f64  item }}'.    mod
│ │ │ -00294540: 653a 2075 2d78 732c 672d 7877 732c 6f2d  e: u-xs,g-xws,o-
│ │ │ -00294550: 7877 7274 0a20 2020 2073 7461 7465 3a20  xwrt.    state: 
│ │ │ -00294560: 6669 6c65 0a20 2077 6974 685f 6974 656d  file.  with_item
│ │ │ -00294570: 733a 0a20 202d 2027 7b7b 2064 6564 6963  s:.  - '{{ dedic
│ │ │ -00294580: 6174 6564 5f67 726f 7570 5f6f 776e 6564  ated_group_owned
│ │ │ -00294590: 5f6b 6579 732e 7374 646f 7574 5f6c 696e  _keys.stdout_lin
│ │ │ -002945a0: 6573 207d 7d27 0a20 2077 6865 6e3a 2027  es }}'.  when: '
│ │ │ -002945b0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -002945c0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -002945d0: 6573 270a 2020 7461 6773 3a0a 2020 2d20  es'.  tags:.  - 
│ │ │ -002945e0: 4e49 5354 2d38 3030 2d31 3731 2d33 2e31  NIST-800-171-3.1
│ │ │ -002945f0: 2e31 330a 2020 2d20 4e49 5354 2d38 3030  .13.  - NIST-800
│ │ │ -00294600: 2d31 3731 2d33 2e31 332e 3130 0a20 202d  -171-3.13.10.  -
│ │ │ -00294610: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -00294620: 3137 2861 290a 2020 2d20 4e49 5354 2d38  17(a).  - NIST-8
│ │ │ -00294630: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ -00294640: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -00294650: 2d36 2861 290a 2020 2d20 5043 492d 4453  -6(a).  - PCI-DS
│ │ │ -00294660: 532d 5265 712d 322e 322e 340a 2020 2d20  S-Req-2.2.4.  - 
│ │ │ -00294670: 5043 492d 4453 5376 342d 322e 320a 2020  PCI-DSSv4-2.2.  
│ │ │ -00294680: 2d20 5043 492d 4453 5376 342d 322e 322e  - PCI-DSSv4-2.2.
│ │ │ -00294690: 360a 2020 2d20 636f 6e66 6967 7572 655f  6.  - configure_
│ │ │ -002946a0: 7374 7261 7465 6779 0a20 202d 2066 696c  strategy.  - fil
│ │ │ -002946b0: 655f 7065 726d 6973 7369 6f6e 735f 7373  e_permissions_ss
│ │ │ -002946c0: 6864 5f70 7269 7661 7465 5f6b 6579 0a20  hd_private_key. 
│ │ │ -002946d0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -002946e0: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -002946f0: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ -00294700: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ -00294710: 7265 626f 6f74 5f6e 6565 6465 640a 3c2f  reboot_needed.
C │ │ │ -00293b50: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -00293b80: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -00293b90: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -00293bd0: 3a3c 2f74 683e 3c74 643e 636f 6e66 6967 :config │ │ │ -00293be0: 7572 653c 2f74 643e 3c2f 7472 3e3c 2f74 ure
│ │ │ +002939a0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
- name: Gather 
│ │ │ +00293a50: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ +00293a60: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ +00293a70: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ +00293a80: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ +00293a90: 204e 4953 542d 3830 302d 3137 312d 332e   NIST-800-171-3.
│ │ │ +00293aa0: 312e 3133 0a20 202d 204e 4953 542d 3830  1.13.  - NIST-80
│ │ │ +00293ab0: 302d 3137 312d 332e 3133 2e31 300a 2020  0-171-3.13.10.  
│ │ │ +00293ac0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +00293ad0: 2d31 3728 6129 0a20 202d 204e 4953 542d  -17(a).  - NIST-
│ │ │ +00293ae0: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ +00293af0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +00293b00: 4d2d 3628 6129 0a20 202d 2050 4349 2d44  M-6(a).  - PCI-D
│ │ │ +00293b10: 5353 2d52 6571 2d32 2e32 2e34 0a20 202d  SS-Req-2.2.4.  -
│ │ │ +00293b20: 2050 4349 2d44 5353 7634 2d32 2e32 0a20   PCI-DSSv4-2.2. 
│ │ │ +00293b30: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ +00293b40: 2e36 0a20 202d 2063 6f6e 6669 6775 7265  .6.  - configure
│ │ │ +00293b50: 5f73 7472 6174 6567 790a 2020 2d20 6669  _strategy.  - fi
│ │ │ +00293b60: 6c65 5f70 6572 6d69 7373 696f 6e73 5f73  le_permissions_s
│ │ │ +00293b70: 7368 645f 7072 6976 6174 655f 6b65 790a  shd_private_key.
│ │ │ +00293b80: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +00293b90: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ +00293ba0: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ +00293bb0: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ +00293bc0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +00293bd0: 2d20 6e61 6d65 3a20 4669 6e64 2072 6f6f  - name: Find roo
│ │ │ +00293be0: 743a 726f 6f74 2d6f 776e 6564 206b 6579  t:root-owned key
│ │ │ +00293bf0: 730a 2020 616e 7369 626c 652e 6275 696c  s.  ansible.buil
│ │ │ +00293c00: 7469 6e2e 636f 6d6d 616e 643a 2066 696e  tin.command: fin
│ │ │ +00293c10: 6420 2d48 202f 6574 632f 7373 682f 202d  d -H /etc/ssh/ -
│ │ │ +00293c20: 6d61 7864 6570 7468 2031 202d 7573 6572  maxdepth 1 -user
│ │ │ +00293c30: 2072 6f6f 7420 2d72 6567 6578 2022 2e2a   root -regex ".*
│ │ │ +00293c40: 5f6b 6579 2422 0a20 2020 202d 7479 7065  _key$".    -type
│ │ │ +00293c50: 2066 202d 6772 6f75 7020 726f 6f74 202d   f -group root -
│ │ │ +00293c60: 7065 726d 202f 752b 7873 2c67 2b78 7772  perm /u+xs,g+xwr
│ │ │ +00293c70: 732c 6f2b 7877 7274 0a20 2072 6567 6973  s,o+xwrt.  regis
│ │ │ +00293c80: 7465 723a 2072 6f6f 745f 6f77 6e65 645f  ter: root_owned_
│ │ │ +00293c90: 6b65 7973 0a20 2063 6861 6e67 6564 5f77  keys.  changed_w
│ │ │ +00293ca0: 6865 6e3a 2066 616c 7365 0a20 2066 6169  hen: false.  fai
│ │ │ +00293cb0: 6c65 645f 7768 656e 3a20 6661 6c73 650a  led_when: false.
│ │ │ +00293cc0: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661    check_mode: fa
│ │ │ +00293cd0: 6c73 650a 2020 7768 656e 3a20 2722 6b65  lse.  when: '"ke
│ │ │ +00293ce0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +00293cf0: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ +00293d00: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +00293d10: 542d 3830 302d 3137 312d 332e 312e 3133  T-800-171-3.1.13
│ │ │ +00293d20: 0a20 202d 204e 4953 542d 3830 302d 3137  .  - NIST-800-17
│ │ │ +00293d30: 312d 332e 3133 2e31 300a 2020 2d20 4e49  1-3.13.10.  - NI
│ │ │ +00293d40: 5354 2d38 3030 2d35 332d 4143 2d31 3728  ST-800-53-AC-17(
│ │ │ +00293d50: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +00293d60: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ +00293d70: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +00293d80: 6129 0a20 202d 2050 4349 2d44 5353 2d52  a).  - PCI-DSS-R
│ │ │ +00293d90: 6571 2d32 2e32 2e34 0a20 202d 2050 4349  eq-2.2.4.  - PCI
│ │ │ +00293da0: 2d44 5353 7634 2d32 2e32 0a20 202d 2050  -DSSv4-2.2.  - P
│ │ │ +00293db0: 4349 2d44 5353 7634 2d32 2e32 2e36 0a20  CI-DSSv4-2.2.6. 
│ │ │ +00293dc0: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ +00293dd0: 6174 6567 790a 2020 2d20 6669 6c65 5f70  ategy.  - file_p
│ │ │ +00293de0: 6572 6d69 7373 696f 6e73 5f73 7368 645f  ermissions_sshd_
│ │ │ +00293df0: 7072 6976 6174 655f 6b65 790a 2020 2d20  private_key.  - 
│ │ │ +00293e00: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +00293e10: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +00293e20: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ +00293e30: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ +00293e40: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61  oot_needed..- na
│ │ │ +00293e50: 6d65 3a20 5365 7420 7065 726d 6973 7369  me: Set permissi
│ │ │ +00293e60: 6f6e 7320 666f 7220 726f 6f74 3a72 6f6f  ons for root:roo
│ │ │ +00293e70: 742d 6f77 6e65 6420 6b65 7973 0a20 2061  t-owned keys.  a
│ │ │ +00293e80: 6e73 6962 6c65 2e62 7569 6c74 696e 2e66  nsible.builtin.f
│ │ │ +00293e90: 696c 653a 0a20 2020 2070 6174 683a 2027  ile:.    path: '
│ │ │ +00293ea0: 7b7b 2069 7465 6d20 7d7d 270a 2020 2020  {{ item }}'.    
│ │ │ +00293eb0: 6d6f 6465 3a20 752d 7873 2c67 2d78 7772  mode: u-xs,g-xwr
│ │ │ +00293ec0: 732c 6f2d 7877 7274 0a20 2020 2073 7461  s,o-xwrt.    sta
│ │ │ +00293ed0: 7465 3a20 6669 6c65 0a20 2077 6974 685f  te: file.  with_
│ │ │ +00293ee0: 6974 656d 733a 0a20 202d 2027 7b7b 2072  items:.  - '{{ r
│ │ │ +00293ef0: 6f6f 745f 6f77 6e65 645f 6b65 7973 2e73  oot_owned_keys.s
│ │ │ +00293f00: 7464 6f75 745f 6c69 6e65 7320 7d7d 270a  tdout_lines }}'.
│ │ │ +00293f10: 2020 7768 656e 3a20 2722 6b65 726e 656c    when: '"kernel
│ │ │ +00293f20: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +00293f30: 7473 2e70 6163 6b61 6765 7327 0a20 2074  ts.packages'.  t
│ │ │ +00293f40: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +00293f50: 302d 3137 312d 332e 312e 3133 0a20 202d  0-171-3.1.13.  -
│ │ │ +00293f60: 204e 4953 542d 3830 302d 3137 312d 332e   NIST-800-171-3.
│ │ │ +00293f70: 3133 2e31 300a 2020 2d20 4e49 5354 2d38  13.10.  - NIST-8
│ │ │ +00293f80: 3030 2d35 332d 4143 2d31 3728 6129 0a20  00-53-AC-17(a). 
│ │ │ +00293f90: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +00293fa0: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ +00293fb0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +00293fc0: 202d 2050 4349 2d44 5353 2d52 6571 2d32   - PCI-DSS-Req-2
│ │ │ +00293fd0: 2e32 2e34 0a20 202d 2050 4349 2d44 5353  .2.4.  - PCI-DSS
│ │ │ +00293fe0: 7634 2d32 2e32 0a20 202d 2050 4349 2d44  v4-2.2.  - PCI-D
│ │ │ +00293ff0: 5353 7634 2d32 2e32 2e36 0a20 202d 2063  SSv4-2.2.6.  - c
│ │ │ +00294000: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +00294010: 790a 2020 2d20 6669 6c65 5f70 6572 6d69  y.  - file_permi
│ │ │ +00294020: 7373 696f 6e73 5f73 7368 645f 7072 6976  ssions_sshd_priv
│ │ │ +00294030: 6174 655f 6b65 790a 2020 2d20 6c6f 775f  ate_key.  - low_
│ │ │ +00294040: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +00294050: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +00294060: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +00294070: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +00294080: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ +00294090: 4669 6e64 2072 6f6f 743a 7373 685f 6b65  Find root:ssh_ke
│ │ │ +002940a0: 7973 2d6f 776e 6564 206b 6579 730a 2020  ys-owned keys.  
│ │ │ +002940b0: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +002940c0: 636f 6d6d 616e 643a 2066 696e 6420 2d48  command: find -H
│ │ │ +002940d0: 202f 6574 632f 7373 682f 202d 6d61 7864   /etc/ssh/ -maxd
│ │ │ +002940e0: 6570 7468 2031 202d 7573 6572 2072 6f6f  epth 1 -user roo
│ │ │ +002940f0: 7420 2d72 6567 6578 2022 2e2a 5f6b 6579  t -regex ".*_key
│ │ │ +00294100: 2422 0a20 2020 202d 7479 7065 2066 202d  $".    -type f -
│ │ │ +00294110: 6772 6f75 7020 7373 685f 6b65 7973 202d  group ssh_keys -
│ │ │ +00294120: 7065 726d 202f 752b 7873 2c67 2b78 7773  perm /u+xs,g+xws
│ │ │ +00294130: 2c6f 2b78 7772 740a 2020 7265 6769 7374  ,o+xwrt.  regist
│ │ │ +00294140: 6572 3a20 6465 6469 6361 7465 645f 6772  er: dedicated_gr
│ │ │ +00294150: 6f75 705f 6f77 6e65 645f 6b65 7973 0a20  oup_owned_keys. 
│ │ │ +00294160: 2063 6861 6e67 6564 5f77 6865 6e3a 2066   changed_when: f
│ │ │ +00294170: 616c 7365 0a20 2066 6169 6c65 645f 7768  alse.  failed_wh
│ │ │ +00294180: 656e 3a20 6661 6c73 650a 2020 6368 6563  en: false.  chec
│ │ │ +00294190: 6b5f 6d6f 6465 3a20 6661 6c73 650a 2020  k_mode: false.  
│ │ │ +002941a0: 7768 656e 3a20 2722 6b65 726e 656c 2220  when: '"kernel" 
│ │ │ +002941b0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +002941c0: 2e70 6163 6b61 6765 7327 0a20 2074 6167  .packages'.  tag
│ │ │ +002941d0: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +002941e0: 3137 312d 332e 312e 3133 0a20 202d 204e  171-3.1.13.  - N
│ │ │ +002941f0: 4953 542d 3830 302d 3137 312d 332e 3133  IST-800-171-3.13
│ │ │ +00294200: 2e31 300a 2020 2d20 4e49 5354 2d38 3030  .10.  - NIST-800
│ │ │ +00294210: 2d35 332d 4143 2d31 3728 6129 0a20 202d  -53-AC-17(a).  -
│ │ │ +00294220: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +00294230: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ +00294240: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +00294250: 2050 4349 2d44 5353 2d52 6571 2d32 2e32   PCI-DSS-Req-2.2
│ │ │ +00294260: 2e34 0a20 202d 2050 4349 2d44 5353 7634  .4.  - PCI-DSSv4
│ │ │ +00294270: 2d32 2e32 0a20 202d 2050 4349 2d44 5353  -2.2.  - PCI-DSS
│ │ │ +00294280: 7634 2d32 2e32 2e36 0a20 202d 2063 6f6e  v4-2.2.6.  - con
│ │ │ +00294290: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +002942a0: 2020 2d20 6669 6c65 5f70 6572 6d69 7373    - file_permiss
│ │ │ +002942b0: 696f 6e73 5f73 7368 645f 7072 6976 6174  ions_sshd_privat
│ │ │ +002942c0: 655f 6b65 790a 2020 2d20 6c6f 775f 636f  e_key.  - low_co
│ │ │ +002942d0: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ +002942e0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +002942f0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +00294300: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +00294310: 6564 6564 0a0a 2d20 6e61 6d65 3a20 5365  eded..- name: Se
│ │ │ +00294320: 7420 7065 726d 6973 7369 6f6e 7320 666f  t permissions fo
│ │ │ +00294330: 7220 726f 6f74 3a73 7368 5f6b 6579 732d  r root:ssh_keys-
│ │ │ +00294340: 6f77 6e65 6420 6b65 7973 0a20 2061 6e73  owned keys.  ans
│ │ │ +00294350: 6962 6c65 2e62 7569 6c74 696e 2e66 696c  ible.builtin.fil
│ │ │ +00294360: 653a 0a20 2020 2070 6174 683a 2027 7b7b  e:.    path: '{{
│ │ │ +00294370: 2069 7465 6d20 7d7d 270a 2020 2020 6d6f   item }}'.    mo
│ │ │ +00294380: 6465 3a20 752d 7873 2c67 2d78 7773 2c6f  de: u-xs,g-xws,o
│ │ │ +00294390: 2d78 7772 740a 2020 2020 7374 6174 653a  -xwrt.    state:
│ │ │ +002943a0: 2066 696c 650a 2020 7769 7468 5f69 7465   file.  with_ite
│ │ │ +002943b0: 6d73 3a0a 2020 2d20 277b 7b20 6465 6469  ms:.  - '{{ dedi
│ │ │ +002943c0: 6361 7465 645f 6772 6f75 705f 6f77 6e65  cated_group_owne
│ │ │ +002943d0: 645f 6b65 7973 2e73 7464 6f75 745f 6c69  d_keys.stdout_li
│ │ │ +002943e0: 6e65 7320 7d7d 270a 2020 7768 656e 3a20  nes }}'.  when: 
│ │ │ +002943f0: 2722 6b65 726e 656c 2220 696e 2061 6e73  '"kernel" in ans
│ │ │ +00294400: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +00294410: 6765 7327 0a20 2074 6167 733a 0a20 202d  ges'.  tags:.  -
│ │ │ +00294420: 204e 4953 542d 3830 302d 3137 312d 332e   NIST-800-171-3.
│ │ │ +00294430: 312e 3133 0a20 202d 204e 4953 542d 3830  1.13.  - NIST-80
│ │ │ +00294440: 302d 3137 312d 332e 3133 2e31 300a 2020  0-171-3.13.10.  
│ │ │ +00294450: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +00294460: 2d31 3728 6129 0a20 202d 204e 4953 542d  -17(a).  - NIST-
│ │ │ +00294470: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ +00294480: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +00294490: 4d2d 3628 6129 0a20 202d 2050 4349 2d44  M-6(a).  - PCI-D
│ │ │ +002944a0: 5353 2d52 6571 2d32 2e32 2e34 0a20 202d  SS-Req-2.2.4.  -
│ │ │ +002944b0: 2050 4349 2d44 5353 7634 2d32 2e32 0a20   PCI-DSSv4-2.2. 
│ │ │ +002944c0: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ +002944d0: 2e36 0a20 202d 2063 6f6e 6669 6775 7265  .6.  - configure
│ │ │ +002944e0: 5f73 7472 6174 6567 790a 2020 2d20 6669  _strategy.  - fi
│ │ │ +002944f0: 6c65 5f70 6572 6d69 7373 696f 6e73 5f73  le_permissions_s
│ │ │ +00294500: 7368 645f 7072 6976 6174 655f 6b65 790a  shd_private_key.
│ │ │ +00294510: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +00294520: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ +00294530: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ +00294540: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ +00294550: 5f72 6562 6f6f 745f 6e65 6564 6564 0a3c  _reboot_needed.<
│ │ │ +00294560: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +00294610: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ +00294620: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...

│ │ │ +00294670: 696e 636c 7564 6520 7373 685f 7072 6976  include ssh_priv
│ │ │ +00294680: 6174 655f 6b65 795f 7065 726d 730a 0a63  ate_key_perms..c
│ │ │ +00294690: 6c61 7373 2073 7368 5f70 7269 7661 7465  lass ssh_private
│ │ │ +002946a0: 5f6b 6579 5f70 6572 6d73 207b 0a20 2065  _key_perms {.  e
│ │ │ +002946b0: 7865 6320 7b20 2773 7368 645f 7072 6976  xec { 'sshd_priv
│ │ │ +002946c0: 5f6b 6579 273a 0a20 2020 2063 6f6d 6d61  _key':.    comma
│ │ │ +002946d0: 6e64 203d 2667 743b 2022 6368 6d6f 6420  nd => "chmod 
│ │ │ +002946e0: 3036 3430 202f 6574 632f 7373 682f 2a5f  0640 /etc/ssh/*_
│ │ │ +002946f0: 6b65 7922 2c0a 2020 2020 7061 7468 2020  key",.    path  
│ │ │ +00294700: 2020 3d26 6774 3b20 272f 6269 6e3a 2f75    => '/bin:/u
│ │ │ +00294710: 7372 2f62 696e 270a 2020 7d0a 7d0a 3c2f  sr/bin'.  }.}.
Re │ │ │ -00295b90: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ -00295ba0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -00295bb0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
i
│ │ │ -00295bf0: 6e63 6c75 6465 2073 7368 5f70 7562 6c69  nclude ssh_publi
│ │ │ -00295c00: 635f 6b65 795f 7065 726d 730a 0a63 6c61  c_key_perms..cla
│ │ │ -00295c10: 7373 2073 7368 5f70 7562 6c69 635f 6b65  ss ssh_public_ke
│ │ │ -00295c20: 795f 7065 726d 7320 7b0a 2020 6578 6563  y_perms {.  exec
│ │ │ -00295c30: 207b 2027 7373 6864 5f70 7562 5f6b 6579   { 'sshd_pub_key
│ │ │ -00295c40: 273a 0a20 2020 2063 6f6d 6d61 6e64 203d  ':.    command =
│ │ │ -00295c50: 2667 743b 2022 6368 6d6f 6420 3036 3434  > "chmod 0644
│ │ │ -00295c60: 202f 6574 632f 7373 682f 2a2e 7075 6222   /etc/ssh/*.pub"
│ │ │ -00295c70: 2c0a 2020 2020 7061 7468 2020 2020 3d26  ,.    path    =&
│ │ │ -00295c80: 6774 3b20 272f 6269 6e3a 2f75 7372 2f62  gt; '/bin:/usr/b
│ │ │ -00295c90: 696e 270a 2020 7d0a 7d0a 3c2f 636f 6465  in'.  }.}.
Remedi │ │ │ -00295d50: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -00295d60: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ +00293990: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +002939c0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +002939d0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00293a10: 793a 3c2f 7468 3e3c 7464 3e63 6f6e 6669 y:confi │ │ │ +00293a20: 6775 7265 3c2f 7464 3e3c 2f74 723e 3c2f gure
│ │ │ -00295e10: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -00295e30: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -00295e60: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -00295df0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -00295e00: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00295e20: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -00295e40: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -00295e50: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:configure< │ │ │ -00295e80: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -00295ea0: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ -00295eb0: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ -00295ec0: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ -00295ed0: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ -00295ee0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -00295ef0: 2d38 3030 2d31 3731 2d33 2e31 2e31 330a  -800-171-3.1.13.
│ │ │ -00295f00: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ -00295f10: 2d33 2e31 332e 3130 0a20 202d 204e 4953  -3.13.10.  - NIS
│ │ │ -00295f20: 542d 3830 302d 3533 2d41 432d 3137 2861  T-800-53-AC-17(a
│ │ │ -00295f30: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -00295f40: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ -00295f50: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -00295f60: 290a 2020 2d20 5043 492d 4453 532d 5265  ).  - PCI-DSS-Re
│ │ │ -00295f70: 712d 322e 322e 340a 2020 2d20 5043 492d  q-2.2.4.  - PCI-
│ │ │ -00295f80: 4453 5376 342d 322e 320a 2020 2d20 5043  DSSv4-2.2.  - PC
│ │ │ -00295f90: 492d 4453 5376 342d 322e 322e 360a 2020  I-DSSv4-2.2.6.  
│ │ │ -00295fa0: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -00295fb0: 7465 6779 0a20 202d 2066 696c 655f 7065  tegy.  - file_pe
│ │ │ -00295fc0: 726d 6973 7369 6f6e 735f 7373 6864 5f70  rmissions_sshd_p
│ │ │ -00295fd0: 7562 5f6b 6579 0a20 202d 206c 6f77 5f63  ub_key.  - low_c
│ │ │ -00295fe0: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -00295ff0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -00296000: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -00296010: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -00296020: 6565 6465 640a 0a2d 206e 616d 653a 2046  eeded..- name: F
│ │ │ -00296030: 696e 6420 2f65 7463 2f73 7368 2f20 6669  ind /etc/ssh/ fi
│ │ │ -00296040: 6c65 2873 290a 2020 616e 7369 626c 652e  le(s).  ansible.
│ │ │ -00296050: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ -00296060: 2066 696e 6420 2d50 202f 6574 632f 7373   find -P /etc/ss
│ │ │ -00296070: 682f 202d 6d61 7864 6570 7468 2031 202d  h/ -maxdepth 1 -
│ │ │ -00296080: 7065 726d 202f 752b 7873 2c67 2b78 7773  perm /u+xs,g+xws
│ │ │ -00296090: 2c6f 2b78 7774 2020 2d74 7970 650a 2020  ,o+xwt  -type.  
│ │ │ -002960a0: 2020 6620 2d72 6567 6578 7479 7065 2070    f -regextype p
│ │ │ -002960b0: 6f73 6978 2d65 7874 656e 6465 6420 2d72  osix-extended -r
│ │ │ -002960c0: 6567 6578 2022 5e2e 2a5c 2e70 7562 2422  egex "^.*\.pub$"
│ │ │ -002960d0: 0a20 2072 6567 6973 7465 723a 2066 696c  .  register: fil
│ │ │ -002960e0: 6573 5f66 6f75 6e64 0a20 2063 6861 6e67  es_found.  chang
│ │ │ -002960f0: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ -00296100: 2066 6169 6c65 645f 7768 656e 3a20 6661   failed_when: fa
│ │ │ -00296110: 6c73 650a 2020 6368 6563 6b5f 6d6f 6465  lse.  check_mode
│ │ │ -00296120: 3a20 6661 6c73 650a 2020 7768 656e 3a20  : false.  when: 
│ │ │ -00296130: 2722 6b65 726e 656c 2220 696e 2061 6e73  '"kernel" in ans
│ │ │ -00296140: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -00296150: 6765 7327 0a20 2074 6167 733a 0a20 202d  ges'.  tags:.  -
│ │ │ -00296160: 204e 4953 542d 3830 302d 3137 312d 332e   NIST-800-171-3.
│ │ │ -00296170: 312e 3133 0a20 202d 204e 4953 542d 3830  1.13.  - NIST-80
│ │ │ -00296180: 302d 3137 312d 332e 3133 2e31 300a 2020  0-171-3.13.10.  
│ │ │ -00296190: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -002961a0: 2d31 3728 6129 0a20 202d 204e 4953 542d  -17(a).  - NIST-
│ │ │ -002961b0: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ -002961c0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -002961d0: 4d2d 3628 6129 0a20 202d 2050 4349 2d44  M-6(a).  - PCI-D
│ │ │ -002961e0: 5353 2d52 6571 2d32 2e32 2e34 0a20 202d  SS-Req-2.2.4.  -
│ │ │ -002961f0: 2050 4349 2d44 5353 7634 2d32 2e32 0a20   PCI-DSSv4-2.2. 
│ │ │ -00296200: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ -00296210: 2e36 0a20 202d 2063 6f6e 6669 6775 7265  .6.  - configure
│ │ │ -00296220: 5f73 7472 6174 6567 790a 2020 2d20 6669  _strategy.  - fi
│ │ │ -00296230: 6c65 5f70 6572 6d69 7373 696f 6e73 5f73  le_permissions_s
│ │ │ -00296240: 7368 645f 7075 625f 6b65 790a 2020 2d20  shd_pub_key.  - 
│ │ │ -00296250: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -00296260: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -00296270: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ -00296280: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ -00296290: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61  oot_needed..- na
│ │ │ -002962a0: 6d65 3a20 5365 7420 7065 726d 6973 7369  me: Set permissi
│ │ │ -002962b0: 6f6e 7320 666f 7220 2f65 7463 2f73 7368  ons for /etc/ssh
│ │ │ -002962c0: 2f20 6669 6c65 2873 290a 2020 616e 7369  / file(s).  ansi
│ │ │ -002962d0: 626c 652e 6275 696c 7469 6e2e 6669 6c65  ble.builtin.file
│ │ │ -002962e0: 3a0a 2020 2020 7061 7468 3a20 277b 7b20  :.    path: '{{ 
│ │ │ -002962f0: 6974 656d 207d 7d27 0a20 2020 206d 6f64  item }}'.    mod
│ │ │ -00296300: 653a 2075 2d78 732c 672d 7877 732c 6f2d  e: u-xs,g-xws,o-
│ │ │ -00296310: 7877 740a 2020 2020 7374 6174 653a 2066  xwt.    state: f
│ │ │ -00296320: 696c 650a 2020 7769 7468 5f69 7465 6d73  ile.  with_items
│ │ │ -00296330: 3a0a 2020 2d20 277b 7b20 6669 6c65 735f  :.  - '{{ files_
│ │ │ -00296340: 666f 756e 642e 7374 646f 7574 5f6c 696e  found.stdout_lin
│ │ │ -00296350: 6573 207d 7d27 0a20 2077 6865 6e3a 2027  es }}'.  when: '
│ │ │ -00296360: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -00296370: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -00296380: 6573 270a 2020 7461 6773 3a0a 2020 2d20  es'.  tags:.  - 
│ │ │ -00296390: 4e49 5354 2d38 3030 2d31 3731 2d33 2e31  NIST-800-171-3.1
│ │ │ -002963a0: 2e31 330a 2020 2d20 4e49 5354 2d38 3030  .13.  - NIST-800
│ │ │ -002963b0: 2d31 3731 2d33 2e31 332e 3130 0a20 202d  -171-3.13.10.  -
│ │ │ -002963c0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -002963d0: 3137 2861 290a 2020 2d20 4e49 5354 2d38  17(a).  - NIST-8
│ │ │ -002963e0: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ -002963f0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -00296400: 2d36 2861 290a 2020 2d20 5043 492d 4453  -6(a).  - PCI-DS
│ │ │ -00296410: 532d 5265 712d 322e 322e 340a 2020 2d20  S-Req-2.2.4.  - 
│ │ │ -00296420: 5043 492d 4453 5376 342d 322e 320a 2020  PCI-DSSv4-2.2.  
│ │ │ -00296430: 2d20 5043 492d 4453 5376 342d 322e 322e  - PCI-DSSv4-2.2.
│ │ │ -00296440: 360a 2020 2d20 636f 6e66 6967 7572 655f  6.  - configure_
│ │ │ -00296450: 7374 7261 7465 6779 0a20 202d 2066 696c  strategy.  - fil
│ │ │ -00296460: 655f 7065 726d 6973 7369 6f6e 735f 7373  e_permissions_ss
│ │ │ -00296470: 6864 5f70 7562 5f6b 6579 0a20 202d 206c  hd_pub_key.  - l
│ │ │ -00296480: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -00296490: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -002964a0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -002964b0: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -002964c0: 6f74 5f6e 6565 6465 640a 3c2f 636f 6465  ot_needed.
< │ │ │ +00295c40: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00295c50: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +00295ca0: 3c74 723e 3c74 683e 5374 7261 7465 6779

│ │ │ +00295ce0: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ +00295cf0: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ +00295d00: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ +00295d10: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ +00295d20: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ +00295d30: 4e49 5354 2d38 3030 2d31 3731 2d33 2e31  NIST-800-171-3.1
│ │ │ +00295d40: 2e31 330a 2020 2d20 4e49 5354 2d38 3030  .13.  - NIST-800
│ │ │ +00295d50: 2d31 3731 2d33 2e31 332e 3130 0a20 202d  -171-3.13.10.  -
│ │ │ +00295d60: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +00295d70: 3137 2861 290a 2020 2d20 4e49 5354 2d38  17(a).  - NIST-8
│ │ │ +00295d80: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ +00295d90: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +00295da0: 2d36 2861 290a 2020 2d20 5043 492d 4453  -6(a).  - PCI-DS
│ │ │ +00295db0: 532d 5265 712d 322e 322e 340a 2020 2d20  S-Req-2.2.4.  - 
│ │ │ +00295dc0: 5043 492d 4453 5376 342d 322e 320a 2020  PCI-DSSv4-2.2.  
│ │ │ +00295dd0: 2d20 5043 492d 4453 5376 342d 322e 322e  - PCI-DSSv4-2.2.
│ │ │ +00295de0: 360a 2020 2d20 636f 6e66 6967 7572 655f  6.  - configure_
│ │ │ +00295df0: 7374 7261 7465 6779 0a20 202d 2066 696c  strategy.  - fil
│ │ │ +00295e00: 655f 7065 726d 6973 7369 6f6e 735f 7373  e_permissions_ss
│ │ │ +00295e10: 6864 5f70 7562 5f6b 6579 0a20 202d 206c  hd_pub_key.  - l
│ │ │ +00295e20: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +00295e30: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +00295e40: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +00295e50: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ +00295e60: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +00295e70: 653a 2046 696e 6420 2f65 7463 2f73 7368  e: Find /etc/ssh
│ │ │ +00295e80: 2f20 6669 6c65 2873 290a 2020 616e 7369  / file(s).  ansi
│ │ │ +00295e90: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ +00295ea0: 616e 643a 2066 696e 6420 2d50 202f 6574  and: find -P /et
│ │ │ +00295eb0: 632f 7373 682f 202d 6d61 7864 6570 7468  c/ssh/ -maxdepth
│ │ │ +00295ec0: 2031 202d 7065 726d 202f 752b 7873 2c67   1 -perm /u+xs,g
│ │ │ +00295ed0: 2b78 7773 2c6f 2b78 7774 2020 2d74 7970  +xws,o+xwt  -typ
│ │ │ +00295ee0: 650a 2020 2020 6620 2d72 6567 6578 7479  e.    f -regexty
│ │ │ +00295ef0: 7065 2070 6f73 6978 2d65 7874 656e 6465  pe posix-extende
│ │ │ +00295f00: 6420 2d72 6567 6578 2022 5e2e 2a5c 2e70  d -regex "^.*\.p
│ │ │ +00295f10: 7562 2422 0a20 2072 6567 6973 7465 723a  ub$".  register:
│ │ │ +00295f20: 2066 696c 6573 5f66 6f75 6e64 0a20 2063   files_found.  c
│ │ │ +00295f30: 6861 6e67 6564 5f77 6865 6e3a 2066 616c  hanged_when: fal
│ │ │ +00295f40: 7365 0a20 2066 6169 6c65 645f 7768 656e  se.  failed_when
│ │ │ +00295f50: 3a20 6661 6c73 650a 2020 6368 6563 6b5f  : false.  check_
│ │ │ +00295f60: 6d6f 6465 3a20 6661 6c73 650a 2020 7768  mode: false.  wh
│ │ │ +00295f70: 656e 3a20 2722 6b65 726e 656c 2220 696e  en: '"kernel" in
│ │ │ +00295f80: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +00295f90: 6163 6b61 6765 7327 0a20 2074 6167 733a  ackages'.  tags:
│ │ │ +00295fa0: 0a20 202d 204e 4953 542d 3830 302d 3137  .  - NIST-800-17
│ │ │ +00295fb0: 312d 332e 312e 3133 0a20 202d 204e 4953  1-3.1.13.  - NIS
│ │ │ +00295fc0: 542d 3830 302d 3137 312d 332e 3133 2e31  T-800-171-3.13.1
│ │ │ +00295fd0: 300a 2020 2d20 4e49 5354 2d38 3030 2d35  0.  - NIST-800-5
│ │ │ +00295fe0: 332d 4143 2d31 3728 6129 0a20 202d 204e  3-AC-17(a).  - N
│ │ │ +00295ff0: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ +00296000: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ +00296010: 3533 2d43 4d2d 3628 6129 0a20 202d 2050  53-CM-6(a).  - P
│ │ │ +00296020: 4349 2d44 5353 2d52 6571 2d32 2e32 2e34  CI-DSS-Req-2.2.4
│ │ │ +00296030: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ +00296040: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ +00296050: 2d32 2e32 2e36 0a20 202d 2063 6f6e 6669  -2.2.6.  - confi
│ │ │ +00296060: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +00296070: 2d20 6669 6c65 5f70 6572 6d69 7373 696f  - file_permissio
│ │ │ +00296080: 6e73 5f73 7368 645f 7075 625f 6b65 790a  ns_sshd_pub_key.
│ │ │ +00296090: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +002960a0: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ +002960b0: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ +002960c0: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ +002960d0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +002960e0: 2d20 6e61 6d65 3a20 5365 7420 7065 726d  - name: Set perm
│ │ │ +002960f0: 6973 7369 6f6e 7320 666f 7220 2f65 7463  issions for /etc
│ │ │ +00296100: 2f73 7368 2f20 6669 6c65 2873 290a 2020  /ssh/ file(s).  
│ │ │ +00296110: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +00296120: 6669 6c65 3a0a 2020 2020 7061 7468 3a20  file:.    path: 
│ │ │ +00296130: 277b 7b20 6974 656d 207d 7d27 0a20 2020  '{{ item }}'.   
│ │ │ +00296140: 206d 6f64 653a 2075 2d78 732c 672d 7877   mode: u-xs,g-xw
│ │ │ +00296150: 732c 6f2d 7877 740a 2020 2020 7374 6174  s,o-xwt.    stat
│ │ │ +00296160: 653a 2066 696c 650a 2020 7769 7468 5f69  e: file.  with_i
│ │ │ +00296170: 7465 6d73 3a0a 2020 2d20 277b 7b20 6669  tems:.  - '{{ fi
│ │ │ +00296180: 6c65 735f 666f 756e 642e 7374 646f 7574  les_found.stdout
│ │ │ +00296190: 5f6c 696e 6573 207d 7d27 0a20 2077 6865  _lines }}'.  whe
│ │ │ +002961a0: 6e3a 2027 226b 6572 6e65 6c22 2069 6e20  n: '"kernel" in 
│ │ │ +002961b0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +002961c0: 636b 6167 6573 270a 2020 7461 6773 3a0a  ckages'.  tags:.
│ │ │ +002961d0: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ +002961e0: 2d33 2e31 2e31 330a 2020 2d20 4e49 5354  -3.1.13.  - NIST
│ │ │ +002961f0: 2d38 3030 2d31 3731 2d33 2e31 332e 3130  -800-171-3.13.10
│ │ │ +00296200: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +00296210: 2d41 432d 3137 2861 290a 2020 2d20 4e49  -AC-17(a).  - NI
│ │ │ +00296220: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ +00296230: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +00296240: 332d 434d 2d36 2861 290a 2020 2d20 5043  3-CM-6(a).  - PC
│ │ │ +00296250: 492d 4453 532d 5265 712d 322e 322e 340a  I-DSS-Req-2.2.4.
│ │ │ +00296260: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ +00296270: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ +00296280: 322e 322e 360a 2020 2d20 636f 6e66 6967  2.2.6.  - config
│ │ │ +00296290: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +002962a0: 2066 696c 655f 7065 726d 6973 7369 6f6e   file_permission
│ │ │ +002962b0: 735f 7373 6864 5f70 7562 5f6b 6579 0a20  s_sshd_pub_key. 
│ │ │ +002962c0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +002962d0: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ +002962e0: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ +002962f0: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ +00296300: 7265 626f 6f74 5f6e 6565 6465 640a 3c2f  reboot_needed.
Re │ │ │ +002963c0: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ +002963d0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +002963e0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
i
│ │ │ +00296420: 6e63 6c75 6465 2073 7368 5f70 7562 6c69  nclude ssh_publi
│ │ │ +00296430: 635f 6b65 795f 7065 726d 730a 0a63 6c61  c_key_perms..cla
│ │ │ +00296440: 7373 2073 7368 5f70 7562 6c69 635f 6b65  ss ssh_public_ke
│ │ │ +00296450: 795f 7065 726d 7320 7b0a 2020 6578 6563  y_perms {.  exec
│ │ │ +00296460: 207b 2027 7373 6864 5f70 7562 5f6b 6579   { 'sshd_pub_key
│ │ │ +00296470: 273a 0a20 2020 2063 6f6d 6d61 6e64 203d  ':.    command =
│ │ │ +00296480: 2667 743b 2022 6368 6d6f 6420 3036 3434  > "chmod 0644
│ │ │ +00296490: 202f 6574 632f 7373 682f 2a2e 7075 6222   /etc/ssh/*.pub"
│ │ │ +002964a0: 2c0a 2020 2020 7061 7468 2020 2020 3d26  ,.    path    =&
│ │ │ +002964b0: 6774 3b20 272f 6269 6e3a 2f75 7372 2f62  gt; '/bin:/usr/b
│ │ │ +002964c0: 696e 270a 2020 7d0a 7d0a 3c2f 636f 6465  in'.  }.}.
Remediati │ │ │ -00298140: 6f6e 2041 6e61 636f 6e64 6120 736e 6970 on Anaconda snip │ │ │ -00298150: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00298160: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00298170: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00298180: 7365 2220 6964 3d22 6964 3839 3122 3e3c se" id="id891">< │ │ │ -00298190: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -002981a0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -002981b0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -002981c0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -002981d0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:Strategy: │ │ │ -00298260: 3c74 643e 6469 7361 626c 653c 2f74 643e │ │ │ -00298270: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
C │ │ │ +00295c30: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +00295c60: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +00295c70: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +00295cb0: 3a3c 2f74 683e 3c74 643e 636f 6e66 6967 :config │ │ │ +00295cc0: 7572 653c 2f74 643e 3c2f 7472 3e3c 2f74 ure
Complex │ │ │ -002981e0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -002981f0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ -00298230: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -00298240: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
disable
..packag │ │ │ -00298290: 6520 2d2d 7265 6d6f 7665 3d78 6f72 672d e --remove=xorg- │ │ │ -002982a0: 7831 312d 7365 7276 6572 2d63 6f6d 6d6f x11-server-commo │ │ │ -002982b0: 6e0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c n.
< │ │ │ -002982c0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ -00298370: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ -00298380: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -00298450: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -00298460: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.include remove
│ │ │ -002984c0: 5f78 6f72 672d 7831 312d 7365 7276 6572  _xorg-x11-server
│ │ │ -002984d0: 2d63 6f6d 6d6f 6e0a 0a63 6c61 7373 2072  -common..class r
│ │ │ -002984e0: 656d 6f76 655f 786f 7267 2d78 3131 2d73  emove_xorg-x11-s
│ │ │ -002984f0: 6572 7665 722d 636f 6d6d 6f6e 207b 0a20  erver-common {. 
│ │ │ -00298500: 2070 6163 6b61 6765 207b 2027 786f 7267   package { 'xorg
│ │ │ -00298510: 2d78 3131 2d73 6572 7665 722d 636f 6d6d  -x11-server-comm
│ │ │ -00298520: 6f6e 273a 0a20 2020 2065 6e73 7572 6520  on':.    ensure 
│ │ │ -00298530: 3d26 6774 3b20 2770 7572 6765 6427 2c0a  => 'purged',.
│ │ │ -00298540: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediatio │ │ │ -00298600: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ -00298610: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -00298690: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ -002986d0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 disable
low
Disru │ │ │ -00298430: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -00298440: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -00298480: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -00298490: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexit │ │ │ -002986a0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ -002986c0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ -002986f0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ -00298710: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
│ │ │ -00298740: 3c63 6f64 653e 2d20 6e61 6d65 3a20 2752  - name: 'R
│ │ │ -00298750: 656d 6f76 6520 7468 6520 5820 5769 6e64  emove the X Wind
│ │ │ -00298760: 6f77 7320 5061 636b 6167 6520 4772 6f75  ows Package Grou
│ │ │ -00298770: 703a 2045 6e73 7572 6520 786f 7267 2d78  p: Ensure xorg-x
│ │ │ -00298780: 3131 2d73 6572 7665 722d 636f 6d6d 6f6e  11-server-common
│ │ │ -00298790: 2069 7320 7265 6d6f 7665 6427 0a20 2061   is removed'.  a
│ │ │ -002987a0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ -002987b0: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ -002987c0: 3a20 786f 7267 2d78 3131 2d73 6572 7665  : xorg-x11-serve
│ │ │ -002987d0: 722d 636f 6d6d 6f6e 0a20 2020 2073 7461  r-common.    sta
│ │ │ -002987e0: 7465 3a20 6162 7365 6e74 0a20 2074 6167  te: absent.  tag
│ │ │ -002987f0: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ -00298800: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ -00298810: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -00298820: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -00298830: 3533 2d43 4d2d 3728 6229 0a20 202d 2064  53-CM-7(b).  - d
│ │ │ -00298840: 6973 6162 6c65 5f73 7472 6174 6567 790a  isable_strategy.
│ │ │ -00298850: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -00298860: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ -00298870: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ -00298880: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ -00298890: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ -002988a0: 202d 2070 6163 6b61 6765 5f78 6f72 672d   - package_xorg-
│ │ │ -002988b0: 7831 312d 7365 7276 6572 2d63 6f6d 6d6f  x11-server-commo
│ │ │ -002988c0: 6e5f 7265 6d6f 7665 640a 3c2f 636f 6465  n_removed.
Remedi │ │ │ -00298980: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ -00298990: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
│ │ │ -00298a10: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -00298a20: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -00298a30: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -00298a70: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -00298a80: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -00298aa0: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -00298ab0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.# CAUTIO
│ │ │ -00298ad0: 4e3a 2054 6869 7320 7265 6d65 6469 6174  N: This remediat
│ │ │ -00298ae0: 696f 6e20 7363 7269 7074 2077 696c 6c20  ion script will 
│ │ │ -00298af0: 7265 6d6f 7665 2078 6f72 672d 7831 312d  remove xorg-x11-
│ │ │ -00298b00: 7365 7276 6572 2d63 6f6d 6d6f 6e0a 2320  server-common.# 
│ │ │ -00298b10: 6672 6f6d 2074 6865 2073 7973 7465 6d2c  from the system,
│ │ │ -00298b20: 2061 6e64 206d 6179 2072 656d 6f76 6520   and may remove 
│ │ │ -00298b30: 616e 7920 7061 636b 6167 6573 0a23 2074  any packages.# t
│ │ │ -00298b40: 6861 7420 6465 7065 6e64 206f 6e20 786f  hat depend on xo
│ │ │ -00298b50: 7267 2d78 3131 2d73 6572 7665 722d 636f  rg-x11-server-co
│ │ │ -00298b60: 6d6d 6f6e 2e20 4578 6563 7574 6520 7468  mmon. Execute th
│ │ │ -00298b70: 6973 0a23 2072 656d 6564 6961 7469 6f6e  is.# remediation
│ │ │ -00298b80: 2041 4654 4552 2074 6573 7469 6e67 206f   AFTER testing o
│ │ │ -00298b90: 6e20 6120 6e6f 6e2d 7072 6f64 7563 7469  n a non-producti
│ │ │ -00298ba0: 6f6e 0a23 2073 7973 7465 6d21 0a0a 0a69  on.# system!...i
│ │ │ -00298bb0: 6620 7270 6d20 2d71 202d 2d71 7569 6574  f rpm -q --quiet
│ │ │ -00298bc0: 2022 786f 7267 2d78 3131 2d73 6572 7665   "xorg-x11-serve
│ │ │ -00298bd0: 722d 636f 6d6d 6f6e 2220 3b20 7468 656e  r-common" ; then
│ │ │ -00298be0: 0a64 6e66 2072 656d 6f76 6520 2d79 202d  .dnf remove -y -
│ │ │ -00298bf0: 2d6e 6f61 7574 6f72 656d 6f76 6520 2278  -noautoremove "x
│ │ │ -00298c00: 6f72 672d 7831 312d 7365 7276 6572 2d63  org-x11-server-c
│ │ │ -00298c10: 6f6d 6d6f 6e22 0a66 690a 3c2f 636f 6465  ommon".fi.
│ │ │ +002981d0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +002981e0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +002981f0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +00298230: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +00298240: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +00298260: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +00298270: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
- name: '
│ │ │ +00298290: 5265 6d6f 7665 2074 6865 2058 2057 696e  Remove the X Win
│ │ │ +002982a0: 646f 7773 2050 6163 6b61 6765 2047 726f  dows Package Gro
│ │ │ +002982b0: 7570 3a20 456e 7375 7265 2078 6f72 672d  up: Ensure xorg-
│ │ │ +002982c0: 7831 312d 7365 7276 6572 2d63 6f6d 6d6f  x11-server-commo
│ │ │ +002982d0: 6e20 6973 2072 656d 6f76 6564 270a 2020  n is removed'.  
│ │ │ +002982e0: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +002982f0: 7061 636b 6167 653a 0a20 2020 206e 616d  package:.    nam
│ │ │ +00298300: 653a 2078 6f72 672d 7831 312d 7365 7276  e: xorg-x11-serv
│ │ │ +00298310: 6572 2d63 6f6d 6d6f 6e0a 2020 2020 7374  er-common.    st
│ │ │ +00298320: 6174 653a 2061 6273 656e 740a 2020 7461  ate: absent.  ta
│ │ │ +00298330: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +00298340: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +00298350: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +00298360: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +00298370: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ +00298380: 6469 7361 626c 655f 7374 7261 7465 6779  disable_strategy
│ │ │ +00298390: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +002983a0: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +002983b0: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +002983c0: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ +002983d0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +002983e0: 2020 2d20 7061 636b 6167 655f 786f 7267    - package_xorg
│ │ │ +002983f0: 2d78 3131 2d73 6572 7665 722d 636f 6d6d  -x11-server-comm
│ │ │ +00298400: 6f6e 5f72 656d 6f76 6564 0a3c 2f63 6f64  on_removed.
Remed │ │ │ +002984c0: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ +002984d0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ +00298580: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +002985a0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +002985d0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +00298560: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +00298570: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +00298590: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +002985b0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +002985c0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ +00298600: 7072 653e 3c63 6f64 653e 0a69 6e63 6c75 pre>.inclu │ │ │ +00298610: 6465 2072 656d 6f76 655f 786f 7267 2d78 de remove_xorg-x │ │ │ +00298620: 3131 2d73 6572 7665 722d 636f 6d6d 6f6e 11-server-common │ │ │ +00298630: 0a0a 636c 6173 7320 7265 6d6f 7665 5f78 ..class remove_x │ │ │ +00298640: 6f72 672d 7831 312d 7365 7276 6572 2d63 org-x11-server-c │ │ │ +00298650: 6f6d 6d6f 6e20 7b0a 2020 7061 636b 6167 ommon {. packag │ │ │ +00298660: 6520 7b20 2778 6f72 672d 7831 312d 7365 e { 'xorg-x11-se │ │ │ +00298670: 7276 6572 2d63 6f6d 6d6f 6e27 3a0a 2020 rver-common':. │ │ │ +00298680: 2020 656e 7375 7265 203d 2667 743b 2027 ensure => ' │ │ │ +00298690: 7075 7267 6564 272c 0a20 207d 0a7d 0a3c purged',. }.}.< │ │ │ +002986a0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469 /code>R │ │ │ +00298750: 656d 6564 6961 7469 6f6e 2053 6865 6c6c emediation Shell │ │ │ +00298760: 2073 6372 6970 7420 e287 b23c 2f61 3e3c script ...< │ │ │ +00298770: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ +002987f0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +00298820: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +00298840: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +00298850: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +00298870: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +00298880: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.# C
│ │ │ +002988a0: 4155 5449 4f4e 3a20 5468 6973 2072 656d  AUTION: This rem
│ │ │ +002988b0: 6564 6961 7469 6f6e 2073 6372 6970 7420  ediation script 
│ │ │ +002988c0: 7769 6c6c 2072 656d 6f76 6520 786f 7267  will remove xorg
│ │ │ +002988d0: 2d78 3131 2d73 6572 7665 722d 636f 6d6d  -x11-server-comm
│ │ │ +002988e0: 6f6e 0a23 2066 726f 6d20 7468 6520 7379  on.# from the sy
│ │ │ +002988f0: 7374 656d 2c20 616e 6420 6d61 7920 7265  stem, and may re
│ │ │ +00298900: 6d6f 7665 2061 6e79 2070 6163 6b61 6765  move any package
│ │ │ +00298910: 730a 2320 7468 6174 2064 6570 656e 6420  s.# that depend 
│ │ │ +00298920: 6f6e 2078 6f72 672d 7831 312d 7365 7276  on xorg-x11-serv
│ │ │ +00298930: 6572 2d63 6f6d 6d6f 6e2e 2045 7865 6375  er-common. Execu
│ │ │ +00298940: 7465 2074 6869 730a 2320 7265 6d65 6469  te this.# remedi
│ │ │ +00298950: 6174 696f 6e20 4146 5445 5220 7465 7374  ation AFTER test
│ │ │ +00298960: 696e 6720 6f6e 2061 206e 6f6e 2d70 726f  ing on a non-pro
│ │ │ +00298970: 6475 6374 696f 6e0a 2320 7379 7374 656d  duction.# system
│ │ │ +00298980: 210a 0a0a 6966 2072 706d 202d 7120 2d2d  !...if rpm -q --
│ │ │ +00298990: 7175 6965 7420 2278 6f72 672d 7831 312d  quiet "xorg-x11-
│ │ │ +002989a0: 7365 7276 6572 2d63 6f6d 6d6f 6e22 203b  server-common" ;
│ │ │ +002989b0: 2074 6865 6e0a 646e 6620 7265 6d6f 7665   then.dnf remove
│ │ │ +002989c0: 202d 7920 2d2d 6e6f 6175 746f 7265 6d6f   -y --noautoremo
│ │ │ +002989d0: 7665 2022 786f 7267 2d78 3131 2d73 6572  ve "xorg-x11-ser
│ │ │ +002989e0: 7665 722d 636f 6d6d 6f6e 220a 6669 0a3c  ver-common".fi.<
│ │ │ +002989f0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +00298aa0: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ +00298ab0: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ +00298ac0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ +00298b90: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +00298ba0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ +00298bf0: 0a0a 7061 636b 6167 6520 2d2d 7265 6d6f  ..package --remo
│ │ │ +00298c00: 7665 3d78 6f72 672d 7831 312d 7365 7276  ve=xorg-x11-serv
│ │ │ +00298c10: 6572 2d63 6f6d 6d6f 6e0a 3c2f 636f 6465  er-common.
Complexity:low
Disrup │ │ │ +00298b70: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +00298b80: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +00298bc0: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ +00298bd0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
│ │ │ -00460cc0: 5265 6d65 6469 6174 696f 6e20 4f53 4275 Remediation OSBu │ │ │ -00460cd0: 696c 6420 426c 7565 7072 696e 7420 736e ild Blueprint sn │ │ │ -00460ce0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...

.[[
│ │ │ -00460d30: 7061 636b 6167 6573 5d5d 0a6e 616d 6520  packages]].name 
│ │ │ -00460d40: 3d20 2261 7564 6974 220a 7665 7273 696f  = "audit".versio
│ │ │ -00460d50: 6e20 3d20 222a 220a 3c2f 636f 6465 3e3c  n = "*".<
│ │ │ -00460d60: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remedia │ │ │ -00460e10: 7469 6f6e 2041 6e61 636f 6e64 6120 736e tion Anaconda sn │ │ │ -00460e20: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
Comp │ │ │ -00460eb0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -00460ec0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -00460ee0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -00460f00: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -00460f10: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -00460f50: 7072 653e 3c63 6f64 653e 0a70 6163 6b61 pre>.packa │ │ │ -00460f60: 6765 202d 2d61 6464 3d61 7564 6974 0a3c ge --add=audit.< │ │ │ -00460f70: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469 /code> │ │ │ -00461020: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ -00461030: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
< │ │ │ -00461110: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00461120: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
i
│ │ │ -00461170: 6e63 6c75 6465 2069 6e73 7461 6c6c 5f61  nclude install_a
│ │ │ -00461180: 7564 6974 0a0a 636c 6173 7320 696e 7374  udit..class inst
│ │ │ -00461190: 616c 6c5f 6175 6469 7420 7b0a 2020 7061  all_audit {.  pa
│ │ │ -004611a0: 636b 6167 6520 7b20 2761 7564 6974 273a  ckage { 'audit':
│ │ │ -004611b0: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ -004611c0: 3b20 2769 6e73 7461 6c6c 6564 272c 0a20  ; 'installed',. 
│ │ │ -004611d0: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.Remediatio
│ │ │ -00461290: 6e20 416e 7369 626c 6520 736e 6970 7065  n Ansible snippe
│ │ │ -004612a0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469  t ...
│ │ │ -00461320: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ -004613b0: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
Complexity:low
Disrup │ │ │ -004610f0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00461100: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00461140: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -00461150: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexi │ │ │ -00461330: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -00461340: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ -00461380: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -00461390: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
│ │ │ -004613d0: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -004613e0: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -004613f0: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -00461400: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -00461410: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -00461420: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -00461430: 332d 4143 2d37 2861 290a 2020 2d20 4e49  3-AC-7(a).  - NI
│ │ │ -00461440: 5354 2d38 3030 2d35 332d 4155 2d31 3228  ST-800-53-AU-12(
│ │ │ -00461450: 3229 0a20 202d 204e 4953 542d 3830 302d  2).  - NIST-800-
│ │ │ -00461460: 3533 2d41 552d 3134 0a20 202d 204e 4953  53-AU-14.  - NIS
│ │ │ -00461470: 542d 3830 302d 3533 2d41 552d 3228 6129  T-800-53-AU-2(a)
│ │ │ -00461480: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -00461490: 2d41 552d 3728 3129 0a20 202d 204e 4953  -AU-7(1).  - NIS
│ │ │ -004614a0: 542d 3830 302d 3533 2d41 552d 3728 3229  T-800-53-AU-7(2)
│ │ │ -004614b0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -004614c0: 2d43 4d2d 3628 6129 0a20 202d 2050 4349  -CM-6(a).  - PCI
│ │ │ -004614d0: 2d44 5353 2d52 6571 2d31 302e 310a 2020  -DSS-Req-10.1.  
│ │ │ -004614e0: 2d20 5043 492d 4453 5376 342d 3130 2e32  - PCI-DSSv4-10.2
│ │ │ -004614f0: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ -00461500: 302e 322e 310a 2020 2d20 656e 6162 6c65  0.2.1.  - enable
│ │ │ -00461510: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ -00461520: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -00461530: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -00461540: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -00461550: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ -00461560: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ -00461570: 6b61 6765 5f61 7564 6974 5f69 6e73 7461  kage_audit_insta
│ │ │ -00461580: 6c6c 6564 0a0a 2d20 6e61 6d65 3a20 456e  lled..- name: En
│ │ │ -00461590: 7375 7265 2061 7564 6974 2069 7320 696e  sure audit is in
│ │ │ -004615a0: 7374 616c 6c65 640a 2020 616e 7369 626c  stalled.  ansibl
│ │ │ -004615b0: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ -004615c0: 653a 0a20 2020 206e 616d 653a 2061 7564  e:.    name: aud
│ │ │ -004615d0: 6974 0a20 2020 2073 7461 7465 3a20 7072  it.    state: pr
│ │ │ -004615e0: 6573 656e 740a 2020 7768 656e 3a20 2722  esent.  when: '"
│ │ │ -004615f0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -00461600: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -00461610: 7327 0a20 2074 6167 733a 0a20 202d 204e  s'.  tags:.  - N
│ │ │ -00461620: 4953 542d 3830 302d 3533 2d41 432d 3728  IST-800-53-AC-7(
│ │ │ -00461630: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -00461640: 3533 2d41 552d 3132 2832 290a 2020 2d20  53-AU-12(2).  - 
│ │ │ -00461650: 4e49 5354 2d38 3030 2d35 332d 4155 2d31  NIST-800-53-AU-1
│ │ │ -00461660: 340a 2020 2d20 4e49 5354 2d38 3030 2d35  4.  - NIST-800-5
│ │ │ -00461670: 332d 4155 2d32 2861 290a 2020 2d20 4e49  3-AU-2(a).  - NI
│ │ │ -00461680: 5354 2d38 3030 2d35 332d 4155 2d37 2831  ST-800-53-AU-7(1
│ │ │ -00461690: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -004616a0: 332d 4155 2d37 2832 290a 2020 2d20 4e49  3-AU-7(2).  - NI
│ │ │ -004616b0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -004616c0: 290a 2020 2d20 5043 492d 4453 532d 5265  ).  - PCI-DSS-Re
│ │ │ -004616d0: 712d 3130 2e31 0a20 202d 2050 4349 2d44  q-10.1.  - PCI-D
│ │ │ -004616e0: 5353 7634 2d31 302e 320a 2020 2d20 5043  SSv4-10.2.  - PC
│ │ │ -004616f0: 492d 4453 5376 342d 3130 2e32 2e31 0a20  I-DSSv4-10.2.1. 
│ │ │ -00461700: 202d 2065 6e61 626c 655f 7374 7261 7465   - enable_strate
│ │ │ -00461710: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ -00461720: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ -00461730: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ -00461740: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -00461750: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -00461760: 640a 2020 2d20 7061 636b 6167 655f 6175  d.  - package_au
│ │ │ -00461770: 6469 745f 696e 7374 616c 6c65 640a 3c2f  dit_installed.
R │ │ │ -00461830: 656d 6564 6961 7469 6f6e 2053 6865 6c6c emediation Shell │ │ │ -00461840: 2073 6372 6970 7420 e287 b23c 2f61 3e3c script ...< │ │ │ -00461850: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
low< │ │ │ -004618f0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -00461940: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ -004618d0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -00461900: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -00461920: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -00461930: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -00461950: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -00461960: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
# Re
│ │ │ -00461980: 6d65 6469 6174 696f 6e20 6973 2061 7070  mediation is app
│ │ │ -00461990: 6c69 6361 626c 6520 6f6e 6c79 2069 6e20  licable only in 
│ │ │ -004619a0: 6365 7274 6169 6e20 706c 6174 666f 726d  certain platform
│ │ │ -004619b0: 730a 6966 2072 706d 202d 2d71 7569 6574  s.if rpm --quiet
│ │ │ -004619c0: 202d 7120 6b65 726e 656c 3b20 7468 656e   -q kernel; then
│ │ │ -004619d0: 0a0a 6966 2021 2072 706d 202d 7120 2d2d  ..if ! rpm -q --
│ │ │ -004619e0: 7175 6965 7420 2261 7564 6974 2220 3b20  quiet "audit" ; 
│ │ │ -004619f0: 7468 656e 0a20 2020 2064 6e66 2069 6e73  then.    dnf ins
│ │ │ -00461a00: 7461 6c6c 202d 7920 2261 7564 6974 220a  tall -y "audit".
│ │ │ -00461a10: 6669 0a0a 656c 7365 0a20 2020 2026 6774  fi..else.    >
│ │ │ -00461a20: 3b26 616d 703b 3220 6563 686f 2027 5265  ;&2 echo 'Re
│ │ │ -00461a30: 6d65 6469 6174 696f 6e20 6973 206e 6f74  mediation is not
│ │ │ -00461a40: 2061 7070 6c69 6361 626c 652c 206e 6f74   applicable, not
│ │ │ -00461a50: 6869 6e67 2077 6173 2064 6f6e 6527 0a66  hing was done'.f
│ │ │ -00461a60: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +00460cc0: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ +00460cd0: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ +00460ce0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
Complexity: │ │ │ +00460db0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00460dc0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +00460e10: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ +00460e20: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ +00460e30: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ +00460e40: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ +00460e50: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ +00460e60: 4e49 5354 2d38 3030 2d35 332d 4143 2d37  NIST-800-53-AC-7
│ │ │ +00460e70: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +00460e80: 2d35 332d 4155 2d31 3228 3229 0a20 202d  -53-AU-12(2).  -
│ │ │ +00460e90: 204e 4953 542d 3830 302d 3533 2d41 552d   NIST-800-53-AU-
│ │ │ +00460ea0: 3134 0a20 202d 204e 4953 542d 3830 302d  14.  - NIST-800-
│ │ │ +00460eb0: 3533 2d41 552d 3228 6129 0a20 202d 204e  53-AU-2(a).  - N
│ │ │ +00460ec0: 4953 542d 3830 302d 3533 2d41 552d 3728  IST-800-53-AU-7(
│ │ │ +00460ed0: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ +00460ee0: 3533 2d41 552d 3728 3229 0a20 202d 204e  53-AU-7(2).  - N
│ │ │ +00460ef0: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +00460f00: 6129 0a20 202d 2050 4349 2d44 5353 2d52  a).  - PCI-DSS-R
│ │ │ +00460f10: 6571 2d31 302e 310a 2020 2d20 5043 492d  eq-10.1.  - PCI-
│ │ │ +00460f20: 4453 5376 342d 3130 2e32 0a20 202d 2050  DSSv4-10.2.  - P
│ │ │ +00460f30: 4349 2d44 5353 7634 2d31 302e 322e 310a  CI-DSSv4-10.2.1.
│ │ │ +00460f40: 2020 2d20 656e 6162 6c65 5f73 7472 6174    - enable_strat
│ │ │ +00460f50: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +00460f60: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +00460f70: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +00460f80: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +00460f90: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +00460fa0: 6564 0a20 202d 2070 6163 6b61 6765 5f61  ed.  - package_a
│ │ │ +00460fb0: 7564 6974 5f69 6e73 7461 6c6c 6564 0a0a  udit_installed..
│ │ │ +00460fc0: 2d20 6e61 6d65 3a20 456e 7375 7265 2061  - name: Ensure a
│ │ │ +00460fd0: 7564 6974 2069 7320 696e 7374 616c 6c65  udit is installe
│ │ │ +00460fe0: 640a 2020 616e 7369 626c 652e 6275 696c  d.  ansible.buil
│ │ │ +00460ff0: 7469 6e2e 7061 636b 6167 653a 0a20 2020  tin.package:.   
│ │ │ +00461000: 206e 616d 653a 2061 7564 6974 0a20 2020   name: audit.   
│ │ │ +00461010: 2073 7461 7465 3a20 7072 6573 656e 740a   state: present.
│ │ │ +00461020: 2020 7768 656e 3a20 2722 6b65 726e 656c    when: '"kernel
│ │ │ +00461030: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +00461040: 7473 2e70 6163 6b61 6765 7327 0a20 2074  ts.packages'.  t
│ │ │ +00461050: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +00461060: 302d 3533 2d41 432d 3728 6129 0a20 202d  0-53-AC-7(a).  -
│ │ │ +00461070: 204e 4953 542d 3830 302d 3533 2d41 552d   NIST-800-53-AU-
│ │ │ +00461080: 3132 2832 290a 2020 2d20 4e49 5354 2d38  12(2).  - NIST-8
│ │ │ +00461090: 3030 2d35 332d 4155 2d31 340a 2020 2d20  00-53-AU-14.  - 
│ │ │ +004610a0: 4e49 5354 2d38 3030 2d35 332d 4155 2d32  NIST-800-53-AU-2
│ │ │ +004610b0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +004610c0: 2d35 332d 4155 2d37 2831 290a 2020 2d20  -53-AU-7(1).  - 
│ │ │ +004610d0: 4e49 5354 2d38 3030 2d35 332d 4155 2d37  NIST-800-53-AU-7
│ │ │ +004610e0: 2832 290a 2020 2d20 4e49 5354 2d38 3030  (2).  - NIST-800
│ │ │ +004610f0: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +00461100: 5043 492d 4453 532d 5265 712d 3130 2e31  PCI-DSS-Req-10.1
│ │ │ +00461110: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ +00461120: 302e 320a 2020 2d20 5043 492d 4453 5376  0.2.  - PCI-DSSv
│ │ │ +00461130: 342d 3130 2e32 2e31 0a20 202d 2065 6e61  4-10.2.1.  - ena
│ │ │ +00461140: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ +00461150: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +00461160: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +00461170: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ +00461180: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ +00461190: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ +004611a0: 7061 636b 6167 655f 6175 6469 745f 696e  package_audit_in
│ │ │ +004611b0: 7374 616c 6c65 640a 3c2f 636f 6465 3e3c  stalled.<
│ │ │ +004611c0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remedia
│ │ │ +00461270: 7469 6f6e 2050 7570 7065 7420 736e 6970  tion Puppet snip
│ │ │ +00461280: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c  pet ...
< │ │ │ +00461290: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +004612a0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +004612b0: 7365 2220 6964 3d22 6964 3131 3033 223e se" id="id1103"> │ │ │ +004612c0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
low
Disru │ │ │ +00460d90: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00460da0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00460de0: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +00460df0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ +00461330: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +00461350: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +00461380: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ +004613a0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ +00461310: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +00461320: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +00461360: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +00461370: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
include │ │ │ +004613c0: 696e 7374 616c 6c5f 6175 6469 740a 0a63 install_audit..c │ │ │ +004613d0: 6c61 7373 2069 6e73 7461 6c6c 5f61 7564 lass install_aud │ │ │ +004613e0: 6974 207b 0a20 2070 6163 6b61 6765 207b it {. package { │ │ │ +004613f0: 2027 6175 6469 7427 3a0a 2020 2020 656e 'audit':. en │ │ │ +00461400: 7375 7265 203d 2667 743b 2027 696e 7374 sure => 'inst │ │ │ +00461410: 616c 6c65 6427 2c0a 2020 7d0a 7d0a 3c2f alled',. }.}.
R │ │ │ +004614d0: 656d 6564 6961 7469 6f6e 204f 5342 7569 emediation OSBui │ │ │ +004614e0: 6c64 2042 6c75 6570 7269 6e74 2073 6e69 ld Blueprint sni │ │ │ +004614f0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +00461500: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
.[[p
│ │ │ +00461540: 6163 6b61 6765 735d 5d0a 6e61 6d65 203d  ackages]].name =
│ │ │ +00461550: 2022 6175 6469 7422 0a76 6572 7369 6f6e   "audit".version
│ │ │ +00461560: 203d 2022 2a22 0a3c 2f63 6f64 653e 3c2f   = "*".
Remediat │ │ │ +00461620: 696f 6e20 5368 656c 6c20 7363 7269 7074 ion Shell script │ │ │ +00461630: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
< │ │ │ +004616b0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +004616c0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +004616e0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +004616f0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +00461710: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +00461730: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ +00461760: 636f 6465 3e23 2052 656d 6564 6961 7469  code># Remediati
│ │ │ +00461770: 6f6e 2069 7320 6170 706c 6963 6162 6c65  on is applicable
│ │ │ +00461780: 206f 6e6c 7920 696e 2063 6572 7461 696e   only in certain
│ │ │ +00461790: 2070 6c61 7466 6f72 6d73 0a69 6620 7270   platforms.if rp
│ │ │ +004617a0: 6d20 2d2d 7175 6965 7420 2d71 206b 6572  m --quiet -q ker
│ │ │ +004617b0: 6e65 6c3b 2074 6865 6e0a 0a69 6620 2120  nel; then..if ! 
│ │ │ +004617c0: 7270 6d20 2d71 202d 2d71 7569 6574 2022  rpm -q --quiet "
│ │ │ +004617d0: 6175 6469 7422 203b 2074 6865 6e0a 2020  audit" ; then.  
│ │ │ +004617e0: 2020 646e 6620 696e 7374 616c 6c20 2d79    dnf install -y
│ │ │ +004617f0: 2022 6175 6469 7422 0a66 690a 0a65 6c73   "audit".fi..els
│ │ │ +00461800: 650a 2020 2020 2667 743b 2661 6d70 3b32  e.    >&2
│ │ │ +00461810: 2065 6368 6f20 2752 656d 6564 6961 7469   echo 'Remediati
│ │ │ +00461820: 6f6e 2069 7320 6e6f 7420 6170 706c 6963  on is not applic
│ │ │ +00461830: 6162 6c65 2c20 6e6f 7468 696e 6720 7761  able, nothing wa
│ │ │ +00461840: 7320 646f 6e65 270a 6669 0a3c 2f63 6f64  s done'.fi.
Reme │ │ │ +00461900: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ +00461910: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +00461920: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
< │ │ │ +004619b0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +004619c0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +00461a10: 3c74 723e 3c74 683e 5374 7261 7465 6779
.pa
│ │ │ +00461a50: 636b 6167 6520 2d2d 6164 643d 6175 6469  ckage --add=audi
│ │ │ +00461a60: 740a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  t.
< │ │ │ 00461a70: 2f64 6976 3e3c 2f64 6976 3e3c 2f74 643e /div> │ │ │ 00461a80: 3c2f 7472 3e3c 2f74 626f 6479 3e3c 2f74 < │ │ │ 00461aa0: 7472 2064 6174 612d 7474 2d69 643d 2278 tr data-tt-id="x │ │ │ 00461ab0: 6363 6466 5f6f 7267 2e73 7367 7072 6f6a ccdf_org.ssgproj │ │ │ 00461ac0: 6563 742e 636f 6e74 656e 745f 7275 6c65 ect.content_rule │ │ │ 00461ad0: 5f73 6572 7669 6365 5f61 7564 6974 645f _service_auditd_ │ │ │ @@ -287541,223 +287541,223 @@ │ │ │ 00463340: 6170 7365 2220 6461 7461 2d74 6172 6765 apse" data-targe │ │ │ 00463350: 743d 2223 6964 3131 3038 2220 7461 6269 t="#id1108" tabi │ │ │ 00463360: 6e64 6578 3d22 3022 2072 6f6c 653d 2262 ndex="0" role="b │ │ │ 00463370: 7574 746f 6e22 2061 7269 612d 6578 7061 utton" aria-expa │ │ │ 00463380: 6e64 6564 3d22 6661 6c73 6522 2074 6974 nded="false" tit │ │ │ 00463390: 6c65 3d22 4163 7469 7661 7465 2074 6f20 le="Activate to │ │ │ 004633a0: 7265 7665 616c 2220 6872 6566 3d22 2321 reveal" href="#! │ │ │ -004633b0: 223e 5265 6d65 6469 6174 696f 6e20 4f53 ">Remediation OS │ │ │ -004633c0: 4275 696c 6420 426c 7565 7072 696e 7420 Build Blueprint │ │ │ -004633d0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -004633e0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
.
│ │ │ -00463420: 5b63 7573 746f 6d69 7a61 7469 6f6e 732e  [customizations.
│ │ │ -00463430: 7365 7276 6963 6573 5d0a 656e 6162 6c65  services].enable
│ │ │ -00463440: 6420 3d20 5b22 6175 6469 7464 225d 0a3c  d = ["auditd"].<
│ │ │ -00463450: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
│ │ │ -00463500: 5265 6d65 6469 6174 696f 6e20 4b75 6265 Remediation Kube │ │ │ -00463510: 726e 6574 6573 2073 6e69 7070 6574 20e2 rnetes snippet . │ │ │ -00463520: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -00463560: 3c63 6f64 653e 2d2d 2d0a 6170 6956 6572  ---.apiVer
│ │ │ -00463570: 7369 6f6e 3a20 6d61 6368 696e 6563 6f6e  sion: machinecon
│ │ │ -00463580: 6669 6775 7261 7469 6f6e 2e6f 7065 6e73  figuration.opens
│ │ │ -00463590: 6869 6674 2e69 6f2f 7631 0a6b 696e 643a  hift.io/v1.kind:
│ │ │ -004635a0: 204d 6163 6869 6e65 436f 6e66 6967 0a73   MachineConfig.s
│ │ │ -004635b0: 7065 633a 0a20 2063 6f6e 6669 673a 0a20  pec:.  config:. 
│ │ │ -004635c0: 2020 2069 676e 6974 696f 6e3a 0a20 2020     ignition:.   
│ │ │ -004635d0: 2020 2076 6572 7369 6f6e 3a20 332e 312e     version: 3.1.
│ │ │ -004635e0: 300a 2020 2020 7379 7374 656d 643a 0a20  0.    systemd:. 
│ │ │ -004635f0: 2020 2020 2075 6e69 7473 3a0a 2020 2020       units:.    
│ │ │ -00463600: 2020 2d20 6e61 6d65 3a20 6175 6469 7464    - name: auditd
│ │ │ -00463610: 2e73 6572 7669 6365 0a20 2020 2020 2020  .service.       
│ │ │ -00463620: 2065 6e61 626c 6564 3a20 7472 7565 0a3c   enabled: true.<
│ │ │ -00463630: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
│ │ │ -004636e0: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ -004636f0: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
C │ │ │ +004619a0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +004619d0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +004619e0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +00461a20: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +00461a30: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ -004637d0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -004637e0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
i
│ │ │ -00463830: 6e63 6c75 6465 2065 6e61 626c 655f 6175  nclude enable_au
│ │ │ -00463840: 6469 7464 0a0a 636c 6173 7320 656e 6162  ditd..class enab
│ │ │ -00463850: 6c65 5f61 7564 6974 6420 7b0a 2020 7365  le_auditd {.  se
│ │ │ -00463860: 7276 6963 6520 7b27 6175 6469 7464 273a  rvice {'auditd':
│ │ │ -00463870: 0a20 2020 2065 6e61 626c 6520 3d26 6774  .    enable =>
│ │ │ -00463880: 3b20 7472 7565 2c0a 2020 2020 656e 7375  ; true,.    ensu
│ │ │ -00463890: 7265 203d 2667 743b 2027 7275 6e6e 696e  re => 'runnin
│ │ │ -004638a0: 6727 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  g',.  }.}.
Remed │ │ │ -00463960: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ -00463970: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Complexity:low
Disrup │ │ │ -004637b0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -004637c0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00463800: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -00463810: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Com │ │ │ -00463a00: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -00463a30: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -00463a50: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -00463a60: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -00463a80: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -00463aa0: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ -00463ab0: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ -00463ac0: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ -00463ad0: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ -00463ae0: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ -00463af0: 2074 6167 733a 0a20 202d 2043 4a49 532d   tags:.  - CJIS-
│ │ │ -00463b00: 352e 342e 312e 310a 2020 2d20 4e49 5354  5.4.1.1.  - NIST
│ │ │ -00463b10: 2d38 3030 2d31 3731 2d33 2e33 2e31 0a20  -800-171-3.3.1. 
│ │ │ -00463b20: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ -00463b30: 332e 332e 320a 2020 2d20 4e49 5354 2d38  3.3.2.  - NIST-8
│ │ │ -00463b40: 3030 2d31 3731 2d33 2e33 2e36 0a20 202d  00-171-3.3.6.  -
│ │ │ -00463b50: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -00463b60: 3228 6729 0a20 202d 204e 4953 542d 3830  2(g).  - NIST-80
│ │ │ -00463b70: 302d 3533 2d41 432d 3628 3929 0a20 202d  0-53-AC-6(9).  -
│ │ │ -00463b80: 204e 4953 542d 3830 302d 3533 2d41 552d   NIST-800-53-AU-
│ │ │ -00463b90: 3130 0a20 202d 204e 4953 542d 3830 302d  10.  - NIST-800-
│ │ │ -00463ba0: 3533 2d41 552d 3132 2863 290a 2020 2d20  53-AU-12(c).  - 
│ │ │ -00463bb0: 4e49 5354 2d38 3030 2d35 332d 4155 2d31  NIST-800-53-AU-1
│ │ │ -00463bc0: 3428 3129 0a20 202d 204e 4953 542d 3830  4(1).  - NIST-80
│ │ │ -00463bd0: 302d 3533 2d41 552d 3228 6429 0a20 202d  0-53-AU-2(d).  -
│ │ │ -00463be0: 204e 4953 542d 3830 302d 3533 2d41 552d   NIST-800-53-AU-
│ │ │ -00463bf0: 330a 2020 2d20 4e49 5354 2d38 3030 2d35  3.  - NIST-800-5
│ │ │ -00463c00: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ -00463c10: 5354 2d38 3030 2d35 332d 5349 2d34 2832  ST-800-53-SI-4(2
│ │ │ -00463c20: 3329 0a20 202d 2050 4349 2d44 5353 2d52  3).  - PCI-DSS-R
│ │ │ -00463c30: 6571 2d31 302e 310a 2020 2d20 5043 492d  eq-10.1.  - PCI-
│ │ │ -00463c40: 4453 5376 342d 3130 2e32 0a20 202d 2050  DSSv4-10.2.  - P
│ │ │ -00463c50: 4349 2d44 5353 7634 2d31 302e 322e 310a  CI-DSSv4-10.2.1.
│ │ │ -00463c60: 2020 2d20 656e 6162 6c65 5f73 7472 6174    - enable_strat
│ │ │ -00463c70: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ -00463c80: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -00463c90: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -00463ca0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -00463cb0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -00463cc0: 6564 0a20 202d 2073 6572 7669 6365 5f61  ed.  - service_a
│ │ │ -00463cd0: 7564 6974 645f 656e 6162 6c65 640a 0a2d  uditd_enabled..-
│ │ │ -00463ce0: 206e 616d 653a 2045 6e61 626c 6520 6175   name: Enable au
│ │ │ -00463cf0: 6469 7464 2053 6572 7669 6365 202d 2045  ditd Service - E
│ │ │ -00463d00: 6e61 626c 6520 7365 7276 6963 6520 6175  nable service au
│ │ │ -00463d10: 6469 7464 0a20 2062 6c6f 636b 3a0a 0a20  ditd.  block:.. 
│ │ │ -00463d20: 202d 206e 616d 653a 2047 6174 6865 7220   - name: Gather 
│ │ │ -00463d30: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -00463d40: 730a 2020 2020 616e 7369 626c 652e 6275  s.    ansible.bu
│ │ │ -00463d50: 696c 7469 6e2e 7061 636b 6167 655f 6661  iltin.package_fa
│ │ │ -00463d60: 6374 733a 0a20 2020 2020 206d 616e 6167  cts:.      manag
│ │ │ -00463d70: 6572 3a20 6175 746f 0a0a 2020 2d20 6e61  er: auto..  - na
│ │ │ -00463d80: 6d65 3a20 456e 6162 6c65 2061 7564 6974  me: Enable audit
│ │ │ -00463d90: 6420 5365 7276 6963 6520 2d20 456e 6162  d Service - Enab
│ │ │ -00463da0: 6c65 2053 6572 7669 6365 2061 7564 6974  le Service audit
│ │ │ -00463db0: 640a 2020 2020 616e 7369 626c 652e 6275  d.    ansible.bu
│ │ │ -00463dc0: 696c 7469 6e2e 7379 7374 656d 643a 0a20  iltin.systemd:. 
│ │ │ -00463dd0: 2020 2020 206e 616d 653a 2061 7564 6974       name: audit
│ │ │ -00463de0: 640a 2020 2020 2020 656e 6162 6c65 643a  d.      enabled:
│ │ │ -00463df0: 2074 7275 650a 2020 2020 2020 7374 6174   true.      stat
│ │ │ -00463e00: 653a 2073 7461 7274 6564 0a20 2020 2020  e: started.     
│ │ │ -00463e10: 206d 6173 6b65 643a 2066 616c 7365 0a20   masked: false. 
│ │ │ -00463e20: 2020 2077 6865 6e3a 0a20 2020 202d 2027     when:.    - '
│ │ │ -00463e30: 2261 7564 6974 2220 696e 2061 6e73 6962  "audit" in ansib
│ │ │ -00463e40: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -00463e50: 7327 0a20 2074 6167 733a 0a20 202d 2043  s'.  tags:.  - C
│ │ │ -00463e60: 4a49 532d 352e 342e 312e 310a 2020 2d20  JIS-5.4.1.1.  - 
│ │ │ -00463e70: 4e49 5354 2d38 3030 2d31 3731 2d33 2e33  NIST-800-171-3.3
│ │ │ -00463e80: 2e31 0a20 202d 204e 4953 542d 3830 302d  .1.  - NIST-800-
│ │ │ -00463e90: 3137 312d 332e 332e 320a 2020 2d20 4e49  171-3.3.2.  - NI
│ │ │ -00463ea0: 5354 2d38 3030 2d31 3731 2d33 2e33 2e36  ST-800-171-3.3.6
│ │ │ -00463eb0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -00463ec0: 2d41 432d 3228 6729 0a20 202d 204e 4953  -AC-2(g).  - NIS
│ │ │ -00463ed0: 542d 3830 302d 3533 2d41 432d 3628 3929  T-800-53-AC-6(9)
│ │ │ -00463ee0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -00463ef0: 2d41 552d 3130 0a20 202d 204e 4953 542d  -AU-10.  - NIST-
│ │ │ -00463f00: 3830 302d 3533 2d41 552d 3132 2863 290a  800-53-AU-12(c).
│ │ │ -00463f10: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -00463f20: 4155 2d31 3428 3129 0a20 202d 204e 4953  AU-14(1).  - NIS
│ │ │ -00463f30: 542d 3830 302d 3533 2d41 552d 3228 6429  T-800-53-AU-2(d)
│ │ │ -00463f40: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -00463f50: 2d41 552d 330a 2020 2d20 4e49 5354 2d38  -AU-3.  - NIST-8
│ │ │ -00463f60: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ -00463f70: 2d20 4e49 5354 2d38 3030 2d35 332d 5349  - NIST-800-53-SI
│ │ │ -00463f80: 2d34 2832 3329 0a20 202d 2050 4349 2d44  -4(23).  - PCI-D
│ │ │ -00463f90: 5353 2d52 6571 2d31 302e 310a 2020 2d20  SS-Req-10.1.  - 
│ │ │ -00463fa0: 5043 492d 4453 5376 342d 3130 2e32 0a20  PCI-DSSv4-10.2. 
│ │ │ -00463fb0: 202d 2050 4349 2d44 5353 7634 2d31 302e   - PCI-DSSv4-10.
│ │ │ -00463fc0: 322e 310a 2020 2d20 656e 6162 6c65 5f73  2.1.  - enable_s
│ │ │ -00463fd0: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ -00463fe0: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ -00463ff0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -00464000: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -00464010: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ -00464020: 6e65 6564 6564 0a20 202d 2073 6572 7669  needed.  - servi
│ │ │ -00464030: 6365 5f61 7564 6974 645f 656e 6162 6c65  ce_auditd_enable
│ │ │ -00464040: 640a 2020 2d20 7370 6563 6961 6c5f 7365  d.  - special_se
│ │ │ -00464050: 7276 6963 655f 626c 6f63 6b0a 2020 7768  rvice_block.  wh
│ │ │ -00464060: 656e 3a0a 2020 2d20 2722 6b65 726e 656c  en:.  - '"kernel
│ │ │ -00464070: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -00464080: 7473 2e70 6163 6b61 6765 7327 0a20 202d  ts.packages'.  -
│ │ │ -00464090: 2027 2261 7564 6974 2220 696e 2061 6e73   '"audit" in ans
│ │ │ -004640a0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -004640b0: 6765 7327 0a3c 2f63 6f64 653e 3c2f 7072  ges'.Remediation An
│ │ │ +004633c0: 7369 626c 6520 736e 6970 7065 7420 e287  sible snippet ..
│ │ │ +004633d0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
│ │ │ +00463450: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +00463470: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +004634c0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ +004634f0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ +00463510: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ +00463520: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ +00463530: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ +00463540: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ +00463550: 2d20 434a 4953 2d35 2e34 2e31 2e31 0a20  - CJIS-5.4.1.1. 
│ │ │ +00463560: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ +00463570: 332e 332e 310a 2020 2d20 4e49 5354 2d38  3.3.1.  - NIST-8
│ │ │ +00463580: 3030 2d31 3731 2d33 2e33 2e32 0a20 202d  00-171-3.3.2.  -
│ │ │ +00463590: 204e 4953 542d 3830 302d 3137 312d 332e   NIST-800-171-3.
│ │ │ +004635a0: 332e 360a 2020 2d20 4e49 5354 2d38 3030  3.6.  - NIST-800
│ │ │ +004635b0: 2d35 332d 4143 2d32 2867 290a 2020 2d20  -53-AC-2(g).  - 
│ │ │ +004635c0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +004635d0: 2839 290a 2020 2d20 4e49 5354 2d38 3030  (9).  - NIST-800
│ │ │ +004635e0: 2d35 332d 4155 2d31 300a 2020 2d20 4e49  -53-AU-10.  - NI
│ │ │ +004635f0: 5354 2d38 3030 2d35 332d 4155 2d31 3228  ST-800-53-AU-12(
│ │ │ +00463600: 6329 0a20 202d 204e 4953 542d 3830 302d  c).  - NIST-800-
│ │ │ +00463610: 3533 2d41 552d 3134 2831 290a 2020 2d20  53-AU-14(1).  - 
│ │ │ +00463620: 4e49 5354 2d38 3030 2d35 332d 4155 2d32  NIST-800-53-AU-2
│ │ │ +00463630: 2864 290a 2020 2d20 4e49 5354 2d38 3030  (d).  - NIST-800
│ │ │ +00463640: 2d35 332d 4155 2d33 0a20 202d 204e 4953  -53-AU-3.  - NIS
│ │ │ +00463650: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +00463660: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +00463670: 2d53 492d 3428 3233 290a 2020 2d20 5043  -SI-4(23).  - PC
│ │ │ +00463680: 492d 4453 532d 5265 712d 3130 2e31 0a20  I-DSS-Req-10.1. 
│ │ │ +00463690: 202d 2050 4349 2d44 5353 7634 2d31 302e   - PCI-DSSv4-10.
│ │ │ +004636a0: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ +004636b0: 3130 2e32 2e31 0a20 202d 2065 6e61 626c  10.2.1.  - enabl
│ │ │ +004636c0: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ +004636d0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +004636e0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +004636f0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +00463700: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ +00463710: 6f74 5f6e 6565 6465 640a 2020 2d20 7365  ot_needed.  - se
│ │ │ +00463720: 7276 6963 655f 6175 6469 7464 5f65 6e61  rvice_auditd_ena
│ │ │ +00463730: 626c 6564 0a0a 2d20 6e61 6d65 3a20 456e  bled..- name: En
│ │ │ +00463740: 6162 6c65 2061 7564 6974 6420 5365 7276  able auditd Serv
│ │ │ +00463750: 6963 6520 2d20 456e 6162 6c65 2073 6572  ice - Enable ser
│ │ │ +00463760: 7669 6365 2061 7564 6974 640a 2020 626c  vice auditd.  bl
│ │ │ +00463770: 6f63 6b3a 0a0a 2020 2d20 6e61 6d65 3a20  ock:..  - name: 
│ │ │ +00463780: 4761 7468 6572 2074 6865 2070 6163 6b61  Gather the packa
│ │ │ +00463790: 6765 2066 6163 7473 0a20 2020 2061 6e73  ge facts.    ans
│ │ │ +004637a0: 6962 6c65 2e62 7569 6c74 696e 2e70 6163  ible.builtin.pac
│ │ │ +004637b0: 6b61 6765 5f66 6163 7473 3a0a 2020 2020  kage_facts:.    
│ │ │ +004637c0: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ +004637d0: 0a20 202d 206e 616d 653a 2045 6e61 626c  .  - name: Enabl
│ │ │ +004637e0: 6520 6175 6469 7464 2053 6572 7669 6365  e auditd Service
│ │ │ +004637f0: 202d 2045 6e61 626c 6520 5365 7276 6963   - Enable Servic
│ │ │ +00463800: 6520 6175 6469 7464 0a20 2020 2061 6e73  e auditd.    ans
│ │ │ +00463810: 6962 6c65 2e62 7569 6c74 696e 2e73 7973  ible.builtin.sys
│ │ │ +00463820: 7465 6d64 3a0a 2020 2020 2020 6e61 6d65  temd:.      name
│ │ │ +00463830: 3a20 6175 6469 7464 0a20 2020 2020 2065  : auditd.      e
│ │ │ +00463840: 6e61 626c 6564 3a20 7472 7565 0a20 2020  nabled: true.   
│ │ │ +00463850: 2020 2073 7461 7465 3a20 7374 6172 7465     state: starte
│ │ │ +00463860: 640a 2020 2020 2020 6d61 736b 6564 3a20  d.      masked: 
│ │ │ +00463870: 6661 6c73 650a 2020 2020 7768 656e 3a0a  false.    when:.
│ │ │ +00463880: 2020 2020 2d20 2722 6175 6469 7422 2069      - '"audit" i
│ │ │ +00463890: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +004638a0: 7061 636b 6167 6573 270a 2020 7461 6773  packages'.  tags
│ │ │ +004638b0: 3a0a 2020 2d20 434a 4953 2d35 2e34 2e31  :.  - CJIS-5.4.1
│ │ │ +004638c0: 2e31 0a20 202d 204e 4953 542d 3830 302d  .1.  - NIST-800-
│ │ │ +004638d0: 3137 312d 332e 332e 310a 2020 2d20 4e49  171-3.3.1.  - NI
│ │ │ +004638e0: 5354 2d38 3030 2d31 3731 2d33 2e33 2e32  ST-800-171-3.3.2
│ │ │ +004638f0: 0a20 202d 204e 4953 542d 3830 302d 3137  .  - NIST-800-17
│ │ │ +00463900: 312d 332e 332e 360a 2020 2d20 4e49 5354  1-3.3.6.  - NIST
│ │ │ +00463910: 2d38 3030 2d35 332d 4143 2d32 2867 290a  -800-53-AC-2(g).
│ │ │ +00463920: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +00463930: 4143 2d36 2839 290a 2020 2d20 4e49 5354  AC-6(9).  - NIST
│ │ │ +00463940: 2d38 3030 2d35 332d 4155 2d31 300a 2020  -800-53-AU-10.  
│ │ │ +00463950: 2d20 4e49 5354 2d38 3030 2d35 332d 4155  - NIST-800-53-AU
│ │ │ +00463960: 2d31 3228 6329 0a20 202d 204e 4953 542d  -12(c).  - NIST-
│ │ │ +00463970: 3830 302d 3533 2d41 552d 3134 2831 290a  800-53-AU-14(1).
│ │ │ +00463980: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +00463990: 4155 2d32 2864 290a 2020 2d20 4e49 5354  AU-2(d).  - NIST
│ │ │ +004639a0: 2d38 3030 2d35 332d 4155 2d33 0a20 202d  -800-53-AU-3.  -
│ │ │ +004639b0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +004639c0: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ +004639d0: 302d 3533 2d53 492d 3428 3233 290a 2020  0-53-SI-4(23).  
│ │ │ +004639e0: 2d20 5043 492d 4453 532d 5265 712d 3130  - PCI-DSS-Req-10
│ │ │ +004639f0: 2e31 0a20 202d 2050 4349 2d44 5353 7634  .1.  - PCI-DSSv4
│ │ │ +00463a00: 2d31 302e 320a 2020 2d20 5043 492d 4453  -10.2.  - PCI-DS
│ │ │ +00463a10: 5376 342d 3130 2e32 2e31 0a20 202d 2065  Sv4-10.2.1.  - e
│ │ │ +00463a20: 6e61 626c 655f 7374 7261 7465 6779 0a20  nable_strategy. 
│ │ │ +00463a30: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +00463a40: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ +00463a50: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ +00463a60: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ +00463a70: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ +00463a80: 2d20 7365 7276 6963 655f 6175 6469 7464  - service_auditd
│ │ │ +00463a90: 5f65 6e61 626c 6564 0a20 202d 2073 7065  _enabled.  - spe
│ │ │ +00463aa0: 6369 616c 5f73 6572 7669 6365 5f62 6c6f  cial_service_blo
│ │ │ +00463ab0: 636b 0a20 2077 6865 6e3a 0a20 202d 2027  ck.  when:.  - '
│ │ │ +00463ac0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +00463ad0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +00463ae0: 6573 270a 2020 2d20 2722 6175 6469 7422  es'.  - '"audit"
│ │ │ +00463af0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +00463b00: 732e 7061 636b 6167 6573 270a 3c2f 636f  s.packages'.
< │ │ │ +00463b20: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +00463b30: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +00463b40: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +00463b50: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +00463b60: 6431 3130 3922 2074 6162 696e 6465 783d d1109" tabindex= │ │ │ +00463b70: 2230 2220 726f 6c65 3d22 6275 7474 6f6e "0" role="button │ │ │ +00463b80: 2220 6172 6961 2d65 7870 616e 6465 643d " aria-expanded= │ │ │ +00463b90: 2266 616c 7365 2220 7469 746c 653d 2241 "false" title="A │ │ │ +00463ba0: 6374 6976 6174 6520 746f 2072 6576 6561 ctivate to revea │ │ │ +00463bb0: 6c22 2068 7265 663d 2223 2122 3e52 656d l" href="#!">Rem │ │ │ +00463bc0: 6564 6961 7469 6f6e 204b 7562 6572 6e65 ediation Kuberne │ │ │ +00463bd0: 7465 7320 736e 6970 7065 7420 e287 b23c tes snippet ...< │ │ │ +00463be0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
---.apiVersio
│ │ │ +00463c30: 6e3a 206d 6163 6869 6e65 636f 6e66 6967  n: machineconfig
│ │ │ +00463c40: 7572 6174 696f 6e2e 6f70 656e 7368 6966  uration.openshif
│ │ │ +00463c50: 742e 696f 2f76 310a 6b69 6e64 3a20 4d61  t.io/v1.kind: Ma
│ │ │ +00463c60: 6368 696e 6543 6f6e 6669 670a 7370 6563  chineConfig.spec
│ │ │ +00463c70: 3a0a 2020 636f 6e66 6967 3a0a 2020 2020  :.  config:.    
│ │ │ +00463c80: 6967 6e69 7469 6f6e 3a0a 2020 2020 2020  ignition:.      
│ │ │ +00463c90: 7665 7273 696f 6e3a 2033 2e31 2e30 0a20  version: 3.1.0. 
│ │ │ +00463ca0: 2020 2073 7973 7465 6d64 3a0a 2020 2020     systemd:.    
│ │ │ +00463cb0: 2020 756e 6974 733a 0a20 2020 2020 202d    units:.      -
│ │ │ +00463cc0: 206e 616d 653a 2061 7564 6974 642e 7365   name: auditd.se
│ │ │ +00463cd0: 7276 6963 650a 2020 2020 2020 2020 656e  rvice.        en
│ │ │ +00463ce0: 6162 6c65 643a 2074 7275 650a 3c2f 636f  abled: true.
< │ │ │ +00463d00: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +00463d10: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +00463d20: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +00463d30: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +00463d40: 6431 3131 3022 2074 6162 696e 6465 783d d1110" tabindex= │ │ │ +00463d50: 2230 2220 726f 6c65 3d22 6275 7474 6f6e "0" role="button │ │ │ +00463d60: 2220 6172 6961 2d65 7870 616e 6465 643d " aria-expanded= │ │ │ +00463d70: 2266 616c 7365 2220 7469 746c 653d 2241 "false" title="A │ │ │ +00463d80: 6374 6976 6174 6520 746f 2072 6576 6561 ctivate to revea │ │ │ +00463d90: 6c22 2068 7265 663d 2223 2122 3e52 656d l" href="#!">Rem │ │ │ +00463da0: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ +00463db0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +00463dc0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Complexity:< │ │ │ +00463460: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00463480: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +004634d0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ +004634e0: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
low< │ │ │ +00463e60: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +00463eb0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +00463e40: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +00463e70: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +00463e90: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +00463ea0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +00463ec0: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +00463ed0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
incl
│ │ │ +00463ef0: 7564 6520 656e 6162 6c65 5f61 7564 6974  ude enable_audit
│ │ │ +00463f00: 640a 0a63 6c61 7373 2065 6e61 626c 655f  d..class enable_
│ │ │ +00463f10: 6175 6469 7464 207b 0a20 2073 6572 7669  auditd {.  servi
│ │ │ +00463f20: 6365 207b 2761 7564 6974 6427 3a0a 2020  ce {'auditd':.  
│ │ │ +00463f30: 2020 656e 6162 6c65 203d 2667 743b 2074    enable => t
│ │ │ +00463f40: 7275 652c 0a20 2020 2065 6e73 7572 6520  rue,.    ensure 
│ │ │ +00463f50: 3d26 6774 3b20 2772 756e 6e69 6e67 272c  => 'running',
│ │ │ +00463f60: 0a20 207d 0a7d 0a3c 2f63 6f64 653e 3c2f  .  }.}.
Remediat │ │ │ +00464020: 696f 6e20 4f53 4275 696c 6420 426c 7565 ion OSBuild Blue │ │ │ +00464030: 7072 696e 7420 736e 6970 7065 7420 e287 print snippet .. │ │ │ +00464040: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
<
│ │ │ +00464080: 636f 6465 3e0a 5b63 7573 746f 6d69 7a61  code>.[customiza
│ │ │ +00464090: 7469 6f6e 732e 7365 7276 6963 6573 5d0a  tions.services].
│ │ │ +004640a0: 656e 6162 6c65 6420 3d20 5b22 6175 6469  enabled = ["audi
│ │ │ +004640b0: 7464 225d 0a3c 2f63 6f64 653e 3c2f 7072  td"].
Remediat │ │ │ -004658f0: 696f 6e20 4f53 4275 696c 6420 426c 7565 ion OSBuild Blue │ │ │ -00465900: 7072 696e 7420 736e 6970 7065 7420 e287 print snippet .. │ │ │ -00465910: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
<
│ │ │ -00465950: 636f 6465 3e5b 6375 7374 6f6d 697a 6174  code>[customizat
│ │ │ -00465960: 696f 6e73 2e6b 6572 6e65 6c5d 0a61 7070  ions.kernel].app
│ │ │ -00465970: 656e 6420 3d20 2261 7564 6974 3d31 220a  end = "audit=1".
│ │ │ -00465980: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
Remediation Ans │ │ │ -00465a40: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ -00465a50: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
< │ │ │ -00465ad0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -00465b10: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00465b20: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
medium
D │ │ │ -00465b00: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ -00465b30: 2f74 683e 3c74 643e 7472 7565 3c2f 7464 /th>true
St │ │ │ -00465b50: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -00465b60: 7265 7374 7269 6374 3c2f 7464 3e3c 2f74 restrict
<
│ │ │ -00465b80: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ -00465b90: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ -00465ba0: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ -00465bb0: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ -00465bc0: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ -00465bd0: 0a20 202d 2043 4a49 532d 352e 342e 312e  .  - CJIS-5.4.1.
│ │ │ -00465be0: 310a 2020 2d20 4e49 5354 2d38 3030 2d31  1.  - NIST-800-1
│ │ │ -00465bf0: 3731 2d33 2e33 2e31 0a20 202d 204e 4953  71-3.3.1.  - NIS
│ │ │ -00465c00: 542d 3830 302d 3533 2d41 432d 3137 2831  T-800-53-AC-17(1
│ │ │ -00465c10: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -00465c20: 332d 4155 2d31 300a 2020 2d20 4e49 5354  3-AU-10.  - NIST
│ │ │ -00465c30: 2d38 3030 2d35 332d 4155 2d31 3428 3129  -800-53-AU-14(1)
│ │ │ -00465c40: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -00465c50: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ -00465c60: 542d 3830 302d 3533 2d49 522d 3528 3129  T-800-53-IR-5(1)
│ │ │ -00465c70: 0a20 202d 2050 4349 2d44 5353 2d52 6571  .  - PCI-DSS-Req
│ │ │ -00465c80: 2d31 302e 330a 2020 2d20 5043 492d 4453  -10.3.  - PCI-DS
│ │ │ -00465c90: 5376 342d 3130 2e37 0a20 202d 2050 4349  Sv4-10.7.  - PCI
│ │ │ -00465ca0: 2d44 5353 7634 2d31 302e 372e 320a 2020  -DSSv4-10.7.2.  
│ │ │ -00465cb0: 2d20 6772 7562 325f 6175 6469 745f 6172  - grub2_audit_ar
│ │ │ -00465cc0: 6775 6d65 6e74 0a20 202d 206c 6f77 5f64  gument.  - low_d
│ │ │ -00465cd0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -00465ce0: 775f 7365 7665 7269 7479 0a20 202d 206d  w_severity.  - m
│ │ │ -00465cf0: 6564 6975 6d5f 636f 6d70 6c65 7869 7479  edium_complexity
│ │ │ -00465d00: 0a20 202d 2072 6562 6f6f 745f 7265 7175  .  - reboot_requ
│ │ │ -00465d10: 6972 6564 0a20 202d 2072 6573 7472 6963  ired.  - restric
│ │ │ -00465d20: 745f 7374 7261 7465 6779 0a0a 2d20 6e61  t_strategy..- na
│ │ │ -00465d30: 6d65 3a20 4368 6563 6b20 6966 2061 7564  me: Check if aud
│ │ │ -00465d40: 6974 2061 7267 756d 656e 7420 6973 2061  it argument is a
│ │ │ -00465d50: 6c72 6561 6479 2070 7265 7365 6e74 2069  lready present i
│ │ │ -00465d60: 6e20 2f65 7463 2f64 6566 6175 6c74 2f67  n /etc/default/g
│ │ │ -00465d70: 7275 620a 2020 616e 7369 626c 652e 6275  rub.  ansible.bu
│ │ │ -00465d80: 696c 7469 6e2e 736c 7572 703a 0a20 2020  iltin.slurp:.   
│ │ │ -00465d90: 2073 7263 3a20 2f65 7463 2f64 6566 6175   src: /etc/defau
│ │ │ -00465da0: 6c74 2f67 7275 620a 2020 7265 6769 7374  lt/grub.  regist
│ │ │ -00465db0: 6572 3a20 6574 635f 6465 6661 756c 745f  er: etc_default_
│ │ │ -00465dc0: 6772 7562 0a20 2077 6865 6e3a 0a20 202d  grub.  when:.  -
│ │ │ -00465dd0: 2027 226b 6572 6e65 6c22 2069 6e20 616e   '"kernel" in an
│ │ │ -00465de0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -00465df0: 6167 6573 270a 2020 2d20 2722 6772 7562  ages'.  - '"grub
│ │ │ -00465e00: 322d 636f 6d6d 6f6e 2220 696e 2061 6e73  2-common" in ans
│ │ │ -00465e10: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -00465e20: 6765 7327 0a20 2074 6167 733a 0a20 202d  ges'.  tags:.  -
│ │ │ -00465e30: 2043 4a49 532d 352e 342e 312e 310a 2020   CJIS-5.4.1.1.  
│ │ │ -00465e40: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33  - NIST-800-171-3
│ │ │ -00465e50: 2e33 2e31 0a20 202d 204e 4953 542d 3830  .3.1.  - NIST-80
│ │ │ -00465e60: 302d 3533 2d41 432d 3137 2831 290a 2020  0-53-AC-17(1).  
│ │ │ -00465e70: 2d20 4e49 5354 2d38 3030 2d35 332d 4155  - NIST-800-53-AU
│ │ │ -00465e80: 2d31 300a 2020 2d20 4e49 5354 2d38 3030  -10.  - NIST-800
│ │ │ -00465e90: 2d35 332d 4155 2d31 3428 3129 0a20 202d  -53-AU-14(1).  -
│ │ │ -00465ea0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -00465eb0: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ -00465ec0: 302d 3533 2d49 522d 3528 3129 0a20 202d  0-53-IR-5(1).  -
│ │ │ -00465ed0: 2050 4349 2d44 5353 2d52 6571 2d31 302e   PCI-DSS-Req-10.
│ │ │ -00465ee0: 330a 2020 2d20 5043 492d 4453 5376 342d  3.  - PCI-DSSv4-
│ │ │ -00465ef0: 3130 2e37 0a20 202d 2050 4349 2d44 5353  10.7.  - PCI-DSS
│ │ │ -00465f00: 7634 2d31 302e 372e 320a 2020 2d20 6772  v4-10.7.2.  - gr
│ │ │ -00465f10: 7562 325f 6175 6469 745f 6172 6775 6d65  ub2_audit_argume
│ │ │ -00465f20: 6e74 0a20 202d 206c 6f77 5f64 6973 7275  nt.  - low_disru
│ │ │ -00465f30: 7074 696f 6e0a 2020 2d20 6c6f 775f 7365  ption.  - low_se
│ │ │ -00465f40: 7665 7269 7479 0a20 202d 206d 6564 6975  verity.  - mediu
│ │ │ -00465f50: 6d5f 636f 6d70 6c65 7869 7479 0a20 202d  m_complexity.  -
│ │ │ -00465f60: 2072 6562 6f6f 745f 7265 7175 6972 6564   reboot_required
│ │ │ -00465f70: 0a20 202d 2072 6573 7472 6963 745f 7374  .  - restrict_st
│ │ │ -00465f80: 7261 7465 6779 0a0a 2d20 6e61 6d65 3a20  rategy..- name: 
│ │ │ -00465f90: 4368 6563 6b20 6966 2061 7564 6974 2061  Check if audit a
│ │ │ -00465fa0: 7267 756d 656e 7420 6973 2061 6c72 6561  rgument is alrea
│ │ │ -00465fb0: 6479 2070 7265 7365 6e74 0a20 2061 6e73  dy present.  ans
│ │ │ -00465fc0: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d  ible.builtin.com
│ │ │ -00465fd0: 6d61 6e64 3a20 2f73 6269 6e2f 6772 7562  mand: /sbin/grub
│ │ │ -00465fe0: 6279 202d 2d69 6e66 6f3d 414c 4c0a 2020  by --info=ALL.  
│ │ │ -00465ff0: 7265 6769 7374 6572 3a20 6772 7562 6279  register: grubby
│ │ │ -00466000: 5f69 6e66 6f0a 2020 6368 6563 6b5f 6d6f  _info.  check_mo
│ │ │ -00466010: 6465 3a20 6661 6c73 650a 2020 6368 616e  de: false.  chan
│ │ │ -00466020: 6765 645f 7768 656e 3a20 6661 6c73 650a  ged_when: false.
│ │ │ -00466030: 2020 6661 696c 6564 5f77 6865 6e3a 2066    failed_when: f
│ │ │ -00466040: 616c 7365 0a20 2077 6865 6e3a 0a20 202d  alse.  when:.  -
│ │ │ -00466050: 2027 226b 6572 6e65 6c22 2069 6e20 616e   '"kernel" in an
│ │ │ -00466060: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -00466070: 6167 6573 270a 2020 2d20 2722 6772 7562  ages'.  - '"grub
│ │ │ -00466080: 322d 636f 6d6d 6f6e 2220 696e 2061 6e73  2-common" in ans
│ │ │ -00466090: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -004660a0: 6765 7327 0a20 2074 6167 733a 0a20 202d  ges'.  tags:.  -
│ │ │ -004660b0: 2043 4a49 532d 352e 342e 312e 310a 2020   CJIS-5.4.1.1.  
│ │ │ -004660c0: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33  - NIST-800-171-3
│ │ │ -004660d0: 2e33 2e31 0a20 202d 204e 4953 542d 3830  .3.1.  - NIST-80
│ │ │ -004660e0: 302d 3533 2d41 432d 3137 2831 290a 2020  0-53-AC-17(1).  
│ │ │ -004660f0: 2d20 4e49 5354 2d38 3030 2d35 332d 4155  - NIST-800-53-AU
│ │ │ -00466100: 2d31 300a 2020 2d20 4e49 5354 2d38 3030  -10.  - NIST-800
│ │ │ -00466110: 2d35 332d 4155 2d31 3428 3129 0a20 202d  -53-AU-14(1).  -
│ │ │ -00466120: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -00466130: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ -00466140: 302d 3533 2d49 522d 3528 3129 0a20 202d  0-53-IR-5(1).  -
│ │ │ -00466150: 2050 4349 2d44 5353 2d52 6571 2d31 302e   PCI-DSS-Req-10.
│ │ │ -00466160: 330a 2020 2d20 5043 492d 4453 5376 342d  3.  - PCI-DSSv4-
│ │ │ -00466170: 3130 2e37 0a20 202d 2050 4349 2d44 5353  10.7.  - PCI-DSS
│ │ │ -00466180: 7634 2d31 302e 372e 320a 2020 2d20 6772  v4-10.7.2.  - gr
│ │ │ -00466190: 7562 325f 6175 6469 745f 6172 6775 6d65  ub2_audit_argume
│ │ │ -004661a0: 6e74 0a20 202d 206c 6f77 5f64 6973 7275  nt.  - low_disru
│ │ │ -004661b0: 7074 696f 6e0a 2020 2d20 6c6f 775f 7365  ption.  - low_se
│ │ │ -004661c0: 7665 7269 7479 0a20 202d 206d 6564 6975  verity.  - mediu
│ │ │ -004661d0: 6d5f 636f 6d70 6c65 7869 7479 0a20 202d  m_complexity.  -
│ │ │ -004661e0: 2072 6562 6f6f 745f 7265 7175 6972 6564   reboot_required
│ │ │ -004661f0: 0a20 202d 2072 6573 7472 6963 745f 7374  .  - restrict_st
│ │ │ -00466200: 7261 7465 6779 0a0a 2d20 6e61 6d65 3a20  rategy..- name: 
│ │ │ -00466210: 5570 6461 7465 2067 7275 6220 6465 6661  Update grub defa
│ │ │ -00466220: 756c 7473 2061 6e64 2074 6865 2062 6f6f  ults and the boo
│ │ │ -00466230: 746c 6f61 6465 7220 6d65 6e75 0a20 2061  tloader menu.  a
│ │ │ -00466240: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ -00466250: 6f6d 6d61 6e64 3a20 2f73 6269 6e2f 6772  ommand: /sbin/gr
│ │ │ -00466260: 7562 6279 202d 2d75 7064 6174 652d 6b65  ubby --update-ke
│ │ │ -00466270: 726e 656c 3d41 4c4c 202d 2d61 7267 733d  rnel=ALL --args=
│ │ │ -00466280: 2261 7564 6974 3d31 220a 2020 7768 656e  "audit=1".  when
│ │ │ -00466290: 3a0a 2020 2d20 2722 6b65 726e 656c 2220  :.  - '"kernel" 
│ │ │ -004662a0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -004662b0: 2e70 6163 6b61 6765 7327 0a20 202d 2027  .packages'.  - '
│ │ │ -004662c0: 2267 7275 6232 2d63 6f6d 6d6f 6e22 2069  "grub2-common" i
│ │ │ -004662d0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -004662e0: 7061 636b 6167 6573 270a 2020 2d20 2867  packages'.  - (g
│ │ │ -004662f0: 7275 6262 795f 696e 666f 2e73 7464 6f75  rubby_info.stdou
│ │ │ -00466300: 7420 6973 206e 6f74 2073 6561 7263 6828  t is not search(
│ │ │ -00466310: 2761 7564 6974 3d31 2729 2920 6f72 2028  'audit=1')) or (
│ │ │ -00466320: 2865 7463 5f64 6566 6175 6c74 5f67 7275  (etc_default_gru
│ │ │ -00466330: 625b 2763 6f6e 7465 6e74 275d 0a20 2020  b['content'].   
│ │ │ -00466340: 207c 2062 3634 6465 636f 6465 2920 6973   | b64decode) is
│ │ │ -00466350: 206e 6f74 2073 6561 7263 6828 2761 7564   not search('aud
│ │ │ -00466360: 6974 3d31 2729 290a 2020 7461 6773 3a0a  it=1')).  tags:.
│ │ │ -00466370: 2020 2d20 434a 4953 2d35 2e34 2e31 2e31    - CJIS-5.4.1.1
│ │ │ -00466380: 0a20 202d 204e 4953 542d 3830 302d 3137  .  - NIST-800-17
│ │ │ -00466390: 312d 332e 332e 310a 2020 2d20 4e49 5354  1-3.3.1.  - NIST
│ │ │ -004663a0: 2d38 3030 2d35 332d 4143 2d31 3728 3129  -800-53-AC-17(1)
│ │ │ -004663b0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -004663c0: 2d41 552d 3130 0a20 202d 204e 4953 542d  -AU-10.  - NIST-
│ │ │ -004663d0: 3830 302d 3533 2d41 552d 3134 2831 290a  800-53-AU-14(1).
│ │ │ -004663e0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -004663f0: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ -00466400: 2d38 3030 2d35 332d 4952 2d35 2831 290a  -800-53-IR-5(1).
│ │ │ -00466410: 2020 2d20 5043 492d 4453 532d 5265 712d    - PCI-DSS-Req-
│ │ │ -00466420: 3130 2e33 0a20 202d 2050 4349 2d44 5353  10.3.  - PCI-DSS
│ │ │ -00466430: 7634 2d31 302e 370a 2020 2d20 5043 492d  v4-10.7.  - PCI-
│ │ │ -00466440: 4453 5376 342d 3130 2e37 2e32 0a20 202d  DSSv4-10.7.2.  -
│ │ │ -00466450: 2067 7275 6232 5f61 7564 6974 5f61 7267   grub2_audit_arg
│ │ │ -00466460: 756d 656e 740a 2020 2d20 6c6f 775f 6469  ument.  - low_di
│ │ │ -00466470: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -00466480: 5f73 6576 6572 6974 790a 2020 2d20 6d65  _severity.  - me
│ │ │ -00466490: 6469 756d 5f63 6f6d 706c 6578 6974 790a  dium_complexity.
│ │ │ -004664a0: 2020 2d20 7265 626f 6f74 5f72 6571 7569    - reboot_requi
│ │ │ -004664b0: 7265 640a 2020 2d20 7265 7374 7269 6374  red.  - restrict
│ │ │ -004664c0: 5f73 7472 6174 6567 790a 3c2f 636f 6465  _strategy.
< │ │ │ +00465910: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +00465920: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +00465930: 7365 2220 6964 3d22 6964 3131 3134 223e se" id="id1114"> │ │ │ +00465940: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Comple │ │ │ +00465990: 7869 7479 3a3c 2f74 683e 3c74 643e 6d65 xity:me │ │ │ +004659a0: 6469 756d 3c2f 7464 3e3c 2f74 723e 3c74 dium
Disruption │ │ │ +004659c0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +004659e0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e74 eboot:t │ │ │ +004659f0: 7275 653c 2f74 643e 3c2f 7472 3e3c 7472 rue
Strategy:restrict< │ │ │ +00465a20: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ +00465a40: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ +00465a50: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ +00465a60: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ +00465a70: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ +00465a80: 2020 7461 6773 3a0a 2020 2d20 434a 4953    tags:.  - CJIS
│ │ │ +00465a90: 2d35 2e34 2e31 2e31 0a20 202d 204e 4953  -5.4.1.1.  - NIS
│ │ │ +00465aa0: 542d 3830 302d 3137 312d 332e 332e 310a  T-800-171-3.3.1.
│ │ │ +00465ab0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +00465ac0: 4143 2d31 3728 3129 0a20 202d 204e 4953  AC-17(1).  - NIS
│ │ │ +00465ad0: 542d 3830 302d 3533 2d41 552d 3130 0a20  T-800-53-AU-10. 
│ │ │ +00465ae0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +00465af0: 552d 3134 2831 290a 2020 2d20 4e49 5354  U-14(1).  - NIST
│ │ │ +00465b00: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +00465b10: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +00465b20: 4952 2d35 2831 290a 2020 2d20 5043 492d  IR-5(1).  - PCI-
│ │ │ +00465b30: 4453 532d 5265 712d 3130 2e33 0a20 202d  DSS-Req-10.3.  -
│ │ │ +00465b40: 2050 4349 2d44 5353 7634 2d31 302e 370a   PCI-DSSv4-10.7.
│ │ │ +00465b50: 2020 2d20 5043 492d 4453 5376 342d 3130    - PCI-DSSv4-10
│ │ │ +00465b60: 2e37 2e32 0a20 202d 2067 7275 6232 5f61  .7.2.  - grub2_a
│ │ │ +00465b70: 7564 6974 5f61 7267 756d 656e 740a 2020  udit_argument.  
│ │ │ +00465b80: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +00465b90: 0a20 202d 206c 6f77 5f73 6576 6572 6974  .  - low_severit
│ │ │ +00465ba0: 790a 2020 2d20 6d65 6469 756d 5f63 6f6d  y.  - medium_com
│ │ │ +00465bb0: 706c 6578 6974 790a 2020 2d20 7265 626f  plexity.  - rebo
│ │ │ +00465bc0: 6f74 5f72 6571 7569 7265 640a 2020 2d20  ot_required.  - 
│ │ │ +00465bd0: 7265 7374 7269 6374 5f73 7472 6174 6567  restrict_strateg
│ │ │ +00465be0: 790a 0a2d 206e 616d 653a 2043 6865 636b  y..- name: Check
│ │ │ +00465bf0: 2069 6620 6175 6469 7420 6172 6775 6d65   if audit argume
│ │ │ +00465c00: 6e74 2069 7320 616c 7265 6164 7920 7072  nt is already pr
│ │ │ +00465c10: 6573 656e 7420 696e 202f 6574 632f 6465  esent in /etc/de
│ │ │ +00465c20: 6661 756c 742f 6772 7562 0a20 2061 6e73  fault/grub.  ans
│ │ │ +00465c30: 6962 6c65 2e62 7569 6c74 696e 2e73 6c75  ible.builtin.slu
│ │ │ +00465c40: 7270 3a0a 2020 2020 7372 633a 202f 6574  rp:.    src: /et
│ │ │ +00465c50: 632f 6465 6661 756c 742f 6772 7562 0a20  c/default/grub. 
│ │ │ +00465c60: 2072 6567 6973 7465 723a 2065 7463 5f64   register: etc_d
│ │ │ +00465c70: 6566 6175 6c74 5f67 7275 620a 2020 7768  efault_grub.  wh
│ │ │ +00465c80: 656e 3a0a 2020 2d20 2722 6b65 726e 656c  en:.  - '"kernel
│ │ │ +00465c90: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +00465ca0: 7473 2e70 6163 6b61 6765 7327 0a20 202d  ts.packages'.  -
│ │ │ +00465cb0: 2027 2267 7275 6232 2d63 6f6d 6d6f 6e22   '"grub2-common"
│ │ │ +00465cc0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +00465cd0: 732e 7061 636b 6167 6573 270a 2020 7461  s.packages'.  ta
│ │ │ +00465ce0: 6773 3a0a 2020 2d20 434a 4953 2d35 2e34  gs:.  - CJIS-5.4
│ │ │ +00465cf0: 2e31 2e31 0a20 202d 204e 4953 542d 3830  .1.1.  - NIST-80
│ │ │ +00465d00: 302d 3137 312d 332e 332e 310a 2020 2d20  0-171-3.3.1.  - 
│ │ │ +00465d10: 4e49 5354 2d38 3030 2d35 332d 4143 2d31  NIST-800-53-AC-1
│ │ │ +00465d20: 3728 3129 0a20 202d 204e 4953 542d 3830  7(1).  - NIST-80
│ │ │ +00465d30: 302d 3533 2d41 552d 3130 0a20 202d 204e  0-53-AU-10.  - N
│ │ │ +00465d40: 4953 542d 3830 302d 3533 2d41 552d 3134  IST-800-53-AU-14
│ │ │ +00465d50: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ +00465d60: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +00465d70: 4e49 5354 2d38 3030 2d35 332d 4952 2d35  NIST-800-53-IR-5
│ │ │ +00465d80: 2831 290a 2020 2d20 5043 492d 4453 532d  (1).  - PCI-DSS-
│ │ │ +00465d90: 5265 712d 3130 2e33 0a20 202d 2050 4349  Req-10.3.  - PCI
│ │ │ +00465da0: 2d44 5353 7634 2d31 302e 370a 2020 2d20  -DSSv4-10.7.  - 
│ │ │ +00465db0: 5043 492d 4453 5376 342d 3130 2e37 2e32  PCI-DSSv4-10.7.2
│ │ │ +00465dc0: 0a20 202d 2067 7275 6232 5f61 7564 6974  .  - grub2_audit
│ │ │ +00465dd0: 5f61 7267 756d 656e 740a 2020 2d20 6c6f  _argument.  - lo
│ │ │ +00465de0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +00465df0: 206c 6f77 5f73 6576 6572 6974 790a 2020   low_severity.  
│ │ │ +00465e00: 2d20 6d65 6469 756d 5f63 6f6d 706c 6578  - medium_complex
│ │ │ +00465e10: 6974 790a 2020 2d20 7265 626f 6f74 5f72  ity.  - reboot_r
│ │ │ +00465e20: 6571 7569 7265 640a 2020 2d20 7265 7374  equired.  - rest
│ │ │ +00465e30: 7269 6374 5f73 7472 6174 6567 790a 0a2d  rict_strategy..-
│ │ │ +00465e40: 206e 616d 653a 2043 6865 636b 2069 6620   name: Check if 
│ │ │ +00465e50: 6175 6469 7420 6172 6775 6d65 6e74 2069  audit argument i
│ │ │ +00465e60: 7320 616c 7265 6164 7920 7072 6573 656e  s already presen
│ │ │ +00465e70: 740a 2020 616e 7369 626c 652e 6275 696c  t.  ansible.buil
│ │ │ +00465e80: 7469 6e2e 636f 6d6d 616e 643a 202f 7362  tin.command: /sb
│ │ │ +00465e90: 696e 2f67 7275 6262 7920 2d2d 696e 666f  in/grubby --info
│ │ │ +00465ea0: 3d41 4c4c 0a20 2072 6567 6973 7465 723a  =ALL.  register:
│ │ │ +00465eb0: 2067 7275 6262 795f 696e 666f 0a20 2063   grubby_info.  c
│ │ │ +00465ec0: 6865 636b 5f6d 6f64 653a 2066 616c 7365  heck_mode: false
│ │ │ +00465ed0: 0a20 2063 6861 6e67 6564 5f77 6865 6e3a  .  changed_when:
│ │ │ +00465ee0: 2066 616c 7365 0a20 2066 6169 6c65 645f   false.  failed_
│ │ │ +00465ef0: 7768 656e 3a20 6661 6c73 650a 2020 7768  when: false.  wh
│ │ │ +00465f00: 656e 3a0a 2020 2d20 2722 6b65 726e 656c  en:.  - '"kernel
│ │ │ +00465f10: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +00465f20: 7473 2e70 6163 6b61 6765 7327 0a20 202d  ts.packages'.  -
│ │ │ +00465f30: 2027 2267 7275 6232 2d63 6f6d 6d6f 6e22   '"grub2-common"
│ │ │ +00465f40: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +00465f50: 732e 7061 636b 6167 6573 270a 2020 7461  s.packages'.  ta
│ │ │ +00465f60: 6773 3a0a 2020 2d20 434a 4953 2d35 2e34  gs:.  - CJIS-5.4
│ │ │ +00465f70: 2e31 2e31 0a20 202d 204e 4953 542d 3830  .1.1.  - NIST-80
│ │ │ +00465f80: 302d 3137 312d 332e 332e 310a 2020 2d20  0-171-3.3.1.  - 
│ │ │ +00465f90: 4e49 5354 2d38 3030 2d35 332d 4143 2d31  NIST-800-53-AC-1
│ │ │ +00465fa0: 3728 3129 0a20 202d 204e 4953 542d 3830  7(1).  - NIST-80
│ │ │ +00465fb0: 302d 3533 2d41 552d 3130 0a20 202d 204e  0-53-AU-10.  - N
│ │ │ +00465fc0: 4953 542d 3830 302d 3533 2d41 552d 3134  IST-800-53-AU-14
│ │ │ +00465fd0: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ +00465fe0: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +00465ff0: 4e49 5354 2d38 3030 2d35 332d 4952 2d35  NIST-800-53-IR-5
│ │ │ +00466000: 2831 290a 2020 2d20 5043 492d 4453 532d  (1).  - PCI-DSS-
│ │ │ +00466010: 5265 712d 3130 2e33 0a20 202d 2050 4349  Req-10.3.  - PCI
│ │ │ +00466020: 2d44 5353 7634 2d31 302e 370a 2020 2d20  -DSSv4-10.7.  - 
│ │ │ +00466030: 5043 492d 4453 5376 342d 3130 2e37 2e32  PCI-DSSv4-10.7.2
│ │ │ +00466040: 0a20 202d 2067 7275 6232 5f61 7564 6974  .  - grub2_audit
│ │ │ +00466050: 5f61 7267 756d 656e 740a 2020 2d20 6c6f  _argument.  - lo
│ │ │ +00466060: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +00466070: 206c 6f77 5f73 6576 6572 6974 790a 2020   low_severity.  
│ │ │ +00466080: 2d20 6d65 6469 756d 5f63 6f6d 706c 6578  - medium_complex
│ │ │ +00466090: 6974 790a 2020 2d20 7265 626f 6f74 5f72  ity.  - reboot_r
│ │ │ +004660a0: 6571 7569 7265 640a 2020 2d20 7265 7374  equired.  - rest
│ │ │ +004660b0: 7269 6374 5f73 7472 6174 6567 790a 0a2d  rict_strategy..-
│ │ │ +004660c0: 206e 616d 653a 2055 7064 6174 6520 6772   name: Update gr
│ │ │ +004660d0: 7562 2064 6566 6175 6c74 7320 616e 6420  ub defaults and 
│ │ │ +004660e0: 7468 6520 626f 6f74 6c6f 6164 6572 206d  the bootloader m
│ │ │ +004660f0: 656e 750a 2020 616e 7369 626c 652e 6275  enu.  ansible.bu
│ │ │ +00466100: 696c 7469 6e2e 636f 6d6d 616e 643a 202f  iltin.command: /
│ │ │ +00466110: 7362 696e 2f67 7275 6262 7920 2d2d 7570  sbin/grubby --up
│ │ │ +00466120: 6461 7465 2d6b 6572 6e65 6c3d 414c 4c20  date-kernel=ALL 
│ │ │ +00466130: 2d2d 6172 6773 3d22 6175 6469 743d 3122  --args="audit=1"
│ │ │ +00466140: 0a20 2077 6865 6e3a 0a20 202d 2027 226b  .  when:.  - '"k
│ │ │ +00466150: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +00466160: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +00466170: 270a 2020 2d20 2722 6772 7562 322d 636f  '.  - '"grub2-co
│ │ │ +00466180: 6d6d 6f6e 2220 696e 2061 6e73 6962 6c65  mmon" in ansible
│ │ │ +00466190: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ +004661a0: 0a20 202d 2028 6772 7562 6279 5f69 6e66  .  - (grubby_inf
│ │ │ +004661b0: 6f2e 7374 646f 7574 2069 7320 6e6f 7420  o.stdout is not 
│ │ │ +004661c0: 7365 6172 6368 2827 6175 6469 743d 3127  search('audit=1'
│ │ │ +004661d0: 2929 206f 7220 2828 6574 635f 6465 6661  )) or ((etc_defa
│ │ │ +004661e0: 756c 745f 6772 7562 5b27 636f 6e74 656e  ult_grub['conten
│ │ │ +004661f0: 7427 5d0a 2020 2020 7c20 6236 3464 6563  t'].    | b64dec
│ │ │ +00466200: 6f64 6529 2069 7320 6e6f 7420 7365 6172  ode) is not sear
│ │ │ +00466210: 6368 2827 6175 6469 743d 3127 2929 0a20  ch('audit=1')). 
│ │ │ +00466220: 2074 6167 733a 0a20 202d 2043 4a49 532d   tags:.  - CJIS-
│ │ │ +00466230: 352e 342e 312e 310a 2020 2d20 4e49 5354  5.4.1.1.  - NIST
│ │ │ +00466240: 2d38 3030 2d31 3731 2d33 2e33 2e31 0a20  -800-171-3.3.1. 
│ │ │ +00466250: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +00466260: 432d 3137 2831 290a 2020 2d20 4e49 5354  C-17(1).  - NIST
│ │ │ +00466270: 2d38 3030 2d35 332d 4155 2d31 300a 2020  -800-53-AU-10.  
│ │ │ +00466280: 2d20 4e49 5354 2d38 3030 2d35 332d 4155  - NIST-800-53-AU
│ │ │ +00466290: 2d31 3428 3129 0a20 202d 204e 4953 542d  -14(1).  - NIST-
│ │ │ +004662a0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +004662b0: 202d 204e 4953 542d 3830 302d 3533 2d49   - NIST-800-53-I
│ │ │ +004662c0: 522d 3528 3129 0a20 202d 2050 4349 2d44  R-5(1).  - PCI-D
│ │ │ +004662d0: 5353 2d52 6571 2d31 302e 330a 2020 2d20  SS-Req-10.3.  - 
│ │ │ +004662e0: 5043 492d 4453 5376 342d 3130 2e37 0a20  PCI-DSSv4-10.7. 
│ │ │ +004662f0: 202d 2050 4349 2d44 5353 7634 2d31 302e   - PCI-DSSv4-10.
│ │ │ +00466300: 372e 320a 2020 2d20 6772 7562 325f 6175  7.2.  - grub2_au
│ │ │ +00466310: 6469 745f 6172 6775 6d65 6e74 0a20 202d  dit_argument.  -
│ │ │ +00466320: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +00466330: 2020 2d20 6c6f 775f 7365 7665 7269 7479    - low_severity
│ │ │ +00466340: 0a20 202d 206d 6564 6975 6d5f 636f 6d70  .  - medium_comp
│ │ │ +00466350: 6c65 7869 7479 0a20 202d 2072 6562 6f6f  lexity.  - reboo
│ │ │ +00466360: 745f 7265 7175 6972 6564 0a20 202d 2072  t_required.  - r
│ │ │ +00466370: 6573 7472 6963 745f 7374 7261 7465 6779  estrict_strategy
│ │ │ +00466380: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation OS │ │ │ +00466440: 4275 696c 6420 426c 7565 7072 696e 7420 Build Blueprint │ │ │ +00466450: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +00466460: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
[
│ │ │ +004664a0: 6375 7374 6f6d 697a 6174 696f 6e73 2e6b  customizations.k
│ │ │ +004664b0: 6572 6e65 6c5d 0a61 7070 656e 6420 3d20  ernel].append = 
│ │ │ +004664c0: 2261 7564 6974 3d31 220a 3c2f 636f 6465  "audit=1".
Remediat │ │ │ -004676d0: 696f 6e20 4f53 4275 696c 6420 426c 7565 ion OSBuild Blue │ │ │ -004676e0: 7072 696e 7420 736e 6970 7065 7420 e287 print snippet .. │ │ │ -004676f0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
<
│ │ │ -00467730: 636f 6465 3e5b 6375 7374 6f6d 697a 6174  code>[customizat
│ │ │ -00467740: 696f 6e73 2e6b 6572 6e65 6c5d 0a61 7070  ions.kernel].app
│ │ │ -00467750: 656e 6420 3d20 2261 7564 6974 5f62 6163  end = "audit_bac
│ │ │ -00467760: 6b6c 6f67 5f6c 696d 6974 3d3c 6162 6272  klog_limit=8
│ │ │ -004677d0: 3139 323c 2f61 6262 723e 220a 3c2f 636f  192".
< │ │ │ -004677f0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -00467800: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -00467810: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -00467820: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -00467830: 6431 3131 3922 2074 6162 696e 6465 783d d1119" tabindex= │ │ │ -00467840: 2230 2220 726f 6c65 3d22 6275 7474 6f6e "0" role="button │ │ │ -00467850: 2220 6172 6961 2d65 7870 616e 6465 643d " aria-expanded= │ │ │ -00467860: 2266 616c 7365 2220 7469 746c 653d 2241 "false" title="A │ │ │ -00467870: 6374 6976 6174 6520 746f 2072 6576 6561 ctivate to revea │ │ │ -00467880: 6c22 2068 7265 663d 2223 2122 3e52 656d l" href="#!">Rem │ │ │ -00467890: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -004678a0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -004678b0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
< │ │ │ -00467940: 7464 3e6d 6564 6975 6d3c 2f74 643e 3c2f td>medium │ │ │ -00467980: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -00467990: 3c74 643e 7472 7565 3c2f 7464 3e3c 2f74
- name: Gather 
│ │ │ -004679f0: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -00467a00: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -00467a10: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -00467a20: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -00467a30: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -00467a40: 3628 6129 0a20 202d 2050 4349 2d44 5353  6(a).  - PCI-DSS
│ │ │ -00467a50: 7634 2d31 302e 370a 2020 2d20 5043 492d  v4-10.7.  - PCI-
│ │ │ -00467a60: 4453 5376 342d 3130 2e37 2e32 0a20 202d  DSSv4-10.7.2.  -
│ │ │ -00467a70: 2067 7275 6232 5f61 7564 6974 5f62 6163   grub2_audit_bac
│ │ │ -00467a80: 6b6c 6f67 5f6c 696d 6974 5f61 7267 756d  klog_limit_argum
│ │ │ -00467a90: 656e 740a 2020 2d20 6c6f 775f 6469 7372  ent.  - low_disr
│ │ │ -00467aa0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f73  uption.  - low_s
│ │ │ -00467ab0: 6576 6572 6974 790a 2020 2d20 6d65 6469  everity.  - medi
│ │ │ -00467ac0: 756d 5f63 6f6d 706c 6578 6974 790a 2020  um_complexity.  
│ │ │ -00467ad0: 2d20 7265 626f 6f74 5f72 6571 7569 7265  - reboot_require
│ │ │ -00467ae0: 640a 2020 2d20 7265 7374 7269 6374 5f73  d.  - restrict_s
│ │ │ -00467af0: 7472 6174 6567 790a 2d20 6e61 6d65 3a20  trategy.- name: 
│ │ │ -00467b00: 5843 4344 4620 5661 6c75 6520 7661 725f  XCCDF Value var_
│ │ │ -00467b10: 6175 6469 745f 6261 636b 6c6f 675f 6c69  audit_backlog_li
│ │ │ -00467b20: 6d69 7420 2320 7072 6f6d 6f74 6520 746f  mit # promote to
│ │ │ -00467b30: 2076 6172 6961 626c 650a 2020 7365 745f   variable.  set_
│ │ │ -00467b40: 6661 6374 3a0a 2020 2020 7661 725f 6175  fact:.    var_au
│ │ │ -00467b50: 6469 745f 6261 636b 6c6f 675f 6c69 6d69  dit_backlog_limi
│ │ │ -00467b60: 743a 2021 2173 7472 203c 6162 6272 2074  t: !!str 819
│ │ │ -00467bd0: 323c 2f61 6262 723e 0a20 2074 6167 733a  2.  tags:
│ │ │ -00467be0: 0a20 2020 202d 2061 6c77 6179 730a 0a2d  .    - always..-
│ │ │ -00467bf0: 206e 616d 653a 2043 6865 636b 2069 6620   name: Check if 
│ │ │ -00467c00: 6175 6469 745f 6261 636b 6c6f 675f 6c69  audit_backlog_li
│ │ │ -00467c10: 6d69 7420 6172 6775 6d65 6e74 2069 7320  mit argument is 
│ │ │ -00467c20: 616c 7265 6164 7920 7072 6573 656e 7420  already present 
│ │ │ -00467c30: 696e 202f 6574 632f 6465 6661 756c 742f  in /etc/default/
│ │ │ -00467c40: 6772 7562 0a20 2061 6e73 6962 6c65 2e62  grub.  ansible.b
│ │ │ -00467c50: 7569 6c74 696e 2e73 6c75 7270 3a0a 2020  uiltin.slurp:.  
│ │ │ -00467c60: 2020 7372 633a 202f 6574 632f 6465 6661    src: /etc/defa
│ │ │ -00467c70: 756c 742f 6772 7562 0a20 2072 6567 6973  ult/grub.  regis
│ │ │ -00467c80: 7465 723a 2065 7463 5f64 6566 6175 6c74  ter: etc_default
│ │ │ -00467c90: 5f67 7275 620a 2020 7768 656e 3a0a 2020  _grub.  when:.  
│ │ │ -00467ca0: 2d20 2722 6b65 726e 656c 2220 696e 2061  - '"kernel" in a
│ │ │ -00467cb0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -00467cc0: 6b61 6765 7327 0a20 202d 2027 2267 7275  kages'.  - '"gru
│ │ │ -00467cd0: 6232 2d63 6f6d 6d6f 6e22 2069 6e20 616e  b2-common" in an
│ │ │ -00467ce0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -00467cf0: 6167 6573 270a 2020 7461 6773 3a0a 2020  ages'.  tags:.  
│ │ │ -00467d00: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -00467d10: 2d36 2861 290a 2020 2d20 5043 492d 4453  -6(a).  - PCI-DS
│ │ │ -00467d20: 5376 342d 3130 2e37 0a20 202d 2050 4349  Sv4-10.7.  - PCI
│ │ │ -00467d30: 2d44 5353 7634 2d31 302e 372e 320a 2020  -DSSv4-10.7.2.  
│ │ │ -00467d40: 2d20 6772 7562 325f 6175 6469 745f 6261  - grub2_audit_ba
│ │ │ -00467d50: 636b 6c6f 675f 6c69 6d69 745f 6172 6775  cklog_limit_argu
│ │ │ -00467d60: 6d65 6e74 0a20 202d 206c 6f77 5f64 6973  ment.  - low_dis
│ │ │ -00467d70: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -00467d80: 7365 7665 7269 7479 0a20 202d 206d 6564  severity.  - med
│ │ │ -00467d90: 6975 6d5f 636f 6d70 6c65 7869 7479 0a20  ium_complexity. 
│ │ │ -00467da0: 202d 2072 6562 6f6f 745f 7265 7175 6972   - reboot_requir
│ │ │ -00467db0: 6564 0a20 202d 2072 6573 7472 6963 745f  ed.  - restrict_
│ │ │ -00467dc0: 7374 7261 7465 6779 0a0a 2d20 6e61 6d65  strategy..- name
│ │ │ -00467dd0: 3a20 4368 6563 6b20 6966 2061 7564 6974  : Check if audit
│ │ │ -00467de0: 5f62 6163 6b6c 6f67 5f6c 696d 6974 2061  _backlog_limit a
│ │ │ -00467df0: 7267 756d 656e 7420 6973 2061 6c72 6561  rgument is alrea
│ │ │ -00467e00: 6479 2070 7265 7365 6e74 0a20 2061 6e73  dy present.  ans
│ │ │ -00467e10: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d  ible.builtin.com
│ │ │ -00467e20: 6d61 6e64 3a20 2f73 6269 6e2f 6772 7562  mand: /sbin/grub
│ │ │ -00467e30: 6279 202d 2d69 6e66 6f3d 414c 4c0a 2020  by --info=ALL.  
│ │ │ -00467e40: 7265 6769 7374 6572 3a20 6772 7562 6279  register: grubby
│ │ │ -00467e50: 5f69 6e66 6f0a 2020 6368 6563 6b5f 6d6f  _info.  check_mo
│ │ │ -00467e60: 6465 3a20 6661 6c73 650a 2020 6368 616e  de: false.  chan
│ │ │ -00467e70: 6765 645f 7768 656e 3a20 6661 6c73 650a  ged_when: false.
│ │ │ -00467e80: 2020 6661 696c 6564 5f77 6865 6e3a 2066    failed_when: f
│ │ │ -00467e90: 616c 7365 0a20 2077 6865 6e3a 0a20 202d  alse.  when:.  -
│ │ │ -00467ea0: 2027 226b 6572 6e65 6c22 2069 6e20 616e   '"kernel" in an
│ │ │ -00467eb0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -00467ec0: 6167 6573 270a 2020 2d20 2722 6772 7562  ages'.  - '"grub
│ │ │ -00467ed0: 322d 636f 6d6d 6f6e 2220 696e 2061 6e73  2-common" in ans
│ │ │ -00467ee0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -00467ef0: 6765 7327 0a20 2074 6167 733a 0a20 202d  ges'.  tags:.  -
│ │ │ -00467f00: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -00467f10: 3628 6129 0a20 202d 2050 4349 2d44 5353  6(a).  - PCI-DSS
│ │ │ -00467f20: 7634 2d31 302e 370a 2020 2d20 5043 492d  v4-10.7.  - PCI-
│ │ │ -00467f30: 4453 5376 342d 3130 2e37 2e32 0a20 202d  DSSv4-10.7.2.  -
│ │ │ -00467f40: 2067 7275 6232 5f61 7564 6974 5f62 6163   grub2_audit_bac
│ │ │ -00467f50: 6b6c 6f67 5f6c 696d 6974 5f61 7267 756d  klog_limit_argum
│ │ │ -00467f60: 656e 740a 2020 2d20 6c6f 775f 6469 7372  ent.  - low_disr
│ │ │ -00467f70: 7570 7469 6f6e 0a20 202d 206c 6f77 5f73  uption.  - low_s
│ │ │ -00467f80: 6576 6572 6974 790a 2020 2d20 6d65 6469  everity.  - medi
│ │ │ -00467f90: 756d 5f63 6f6d 706c 6578 6974 790a 2020  um_complexity.  
│ │ │ -00467fa0: 2d20 7265 626f 6f74 5f72 6571 7569 7265  - reboot_require
│ │ │ -00467fb0: 640a 2020 2d20 7265 7374 7269 6374 5f73  d.  - restrict_s
│ │ │ -00467fc0: 7472 6174 6567 790a 0a2d 206e 616d 653a  trategy..- name:
│ │ │ -00467fd0: 2055 7064 6174 6520 6772 7562 2064 6566   Update grub def
│ │ │ -00467fe0: 6175 6c74 7320 616e 6420 7468 6520 626f  aults and the bo
│ │ │ -00467ff0: 6f74 6c6f 6164 6572 206d 656e 750a 2020  otloader menu.  
│ │ │ -00468000: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -00468010: 636f 6d6d 616e 643a 202f 7362 696e 2f67  command: /sbin/g
│ │ │ -00468020: 7275 6262 7920 2d2d 7570 6461 7465 2d6b  rubby --update-k
│ │ │ -00468030: 6572 6e65 6c3d 414c 4c20 2d2d 6172 6773  ernel=ALL --args
│ │ │ -00468040: 3d22 6175 6469 745f 6261 636b 6c6f 675f  ="audit_backlog_
│ │ │ -00468050: 6c69 6d69 743d 7b7b 0a20 2020 2076 6172  limit={{.    var
│ │ │ -00468060: 5f61 7564 6974 5f62 6163 6b6c 6f67 5f6c  _audit_backlog_l
│ │ │ -00468070: 696d 6974 207d 7d22 0a20 2077 6865 6e3a  imit }}".  when:
│ │ │ -00468080: 0a20 202d 2027 226b 6572 6e65 6c22 2069  .  - '"kernel" i
│ │ │ -00468090: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -004680a0: 7061 636b 6167 6573 270a 2020 2d20 2722  packages'.  - '"
│ │ │ -004680b0: 6772 7562 322d 636f 6d6d 6f6e 2220 696e  grub2-common" in
│ │ │ -004680c0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -004680d0: 6163 6b61 6765 7327 0a20 202d 2028 6772  ackages'.  - (gr
│ │ │ -004680e0: 7562 6279 5f69 6e66 6f2e 7374 646f 7574  ubby_info.stdout
│ │ │ -004680f0: 2069 7320 6e6f 7420 7365 6172 6368 2827   is not search('
│ │ │ -00468100: 6175 6469 745f 6261 636b 6c6f 675f 6c69  audit_backlog_li
│ │ │ -00468110: 6d69 743d 2720 7e20 7661 725f 6175 6469  mit=' ~ var_audi
│ │ │ -00468120: 745f 6261 636b 6c6f 675f 6c69 6d69 7429  t_backlog_limit)
│ │ │ -00468130: 290a 2020 2020 6f72 2028 2865 7463 5f64  ).    or ((etc_d
│ │ │ -00468140: 6566 6175 6c74 5f67 7275 625b 2763 6f6e  efault_grub['con
│ │ │ -00468150: 7465 6e74 275d 207c 2062 3634 6465 636f  tent'] | b64deco
│ │ │ -00468160: 6465 2920 6973 206e 6f74 2073 6561 7263  de) is not searc
│ │ │ -00468170: 6828 2761 7564 6974 5f62 6163 6b6c 6f67  h('audit_backlog
│ │ │ -00468180: 5f6c 696d 6974 3d27 0a20 2020 207e 2076  _limit='.    ~ v
│ │ │ -00468190: 6172 5f61 7564 6974 5f62 6163 6b6c 6f67  ar_audit_backlog
│ │ │ -004681a0: 5f6c 696d 6974 2929 0a20 2074 6167 733a  _limit)).  tags:
│ │ │ -004681b0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -004681c0: 2d43 4d2d 3628 6129 0a20 202d 2050 4349  -CM-6(a).  - PCI
│ │ │ -004681d0: 2d44 5353 7634 2d31 302e 370a 2020 2d20  -DSSv4-10.7.  - 
│ │ │ -004681e0: 5043 492d 4453 5376 342d 3130 2e37 2e32  PCI-DSSv4-10.7.2
│ │ │ -004681f0: 0a20 202d 2067 7275 6232 5f61 7564 6974  .  - grub2_audit
│ │ │ -00468200: 5f62 6163 6b6c 6f67 5f6c 696d 6974 5f61  _backlog_limit_a
│ │ │ -00468210: 7267 756d 656e 740a 2020 2d20 6c6f 775f  rgument.  - low_
│ │ │ -00468220: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -00468230: 6f77 5f73 6576 6572 6974 790a 2020 2d20  ow_severity.  - 
│ │ │ -00468240: 6d65 6469 756d 5f63 6f6d 706c 6578 6974  medium_complexit
│ │ │ -00468250: 790a 2020 2d20 7265 626f 6f74 5f72 6571  y.  - reboot_req
│ │ │ -00468260: 7569 7265 640a 2020 2d20 7265 7374 7269  uired.  - restri
│ │ │ -00468270: 6374 5f73 7472 6174 6567 790a 3c2f 636f  ct_strategy.
< │ │ │ +004676f0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +00467700: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +00467710: 7365 2220 6964 3d22 6964 3131 3138 223e se" id="id1118"> │ │ │ +00467720: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
C │ │ │ -00467930: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disru │ │ │ -00467960: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -00467970: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:true
Strate │ │ │ -004679b0: 6779 3a3c 2f74 683e 3c74 643e 7265 7374 gy:rest │ │ │ -004679c0: 7269 6374 3c2f 7464 3e3c 2f74 723e 3c2f rict
Comple │ │ │ +00467770: 7869 7479 3a3c 2f74 683e 3c74 643e 6d65 xity:me │ │ │ +00467780: 6469 756d 3c2f 7464 3e3c 2f74 723e 3c74 dium
Disruption │ │ │ +004677a0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +004677c0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e74 eboot:t │ │ │ +004677d0: 7275 653c 2f74 643e 3c2f 7472 3e3c 7472 rue
Strategy:restrict< │ │ │ +00467800: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ +00467820: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ +00467830: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ +00467840: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ +00467850: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ +00467860: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +00467870: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +00467880: 2020 2d20 5043 492d 4453 5376 342d 3130    - PCI-DSSv4-10
│ │ │ +00467890: 2e37 0a20 202d 2050 4349 2d44 5353 7634  .7.  - PCI-DSSv4
│ │ │ +004678a0: 2d31 302e 372e 320a 2020 2d20 6772 7562  -10.7.2.  - grub
│ │ │ +004678b0: 325f 6175 6469 745f 6261 636b 6c6f 675f  2_audit_backlog_
│ │ │ +004678c0: 6c69 6d69 745f 6172 6775 6d65 6e74 0a20  limit_argument. 
│ │ │ +004678d0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +004678e0: 6e0a 2020 2d20 6c6f 775f 7365 7665 7269  n.  - low_severi
│ │ │ +004678f0: 7479 0a20 202d 206d 6564 6975 6d5f 636f  ty.  - medium_co
│ │ │ +00467900: 6d70 6c65 7869 7479 0a20 202d 2072 6562  mplexity.  - reb
│ │ │ +00467910: 6f6f 745f 7265 7175 6972 6564 0a20 202d  oot_required.  -
│ │ │ +00467920: 2072 6573 7472 6963 745f 7374 7261 7465   restrict_strate
│ │ │ +00467930: 6779 0a2d 206e 616d 653a 2058 4343 4446  gy.- name: XCCDF
│ │ │ +00467940: 2056 616c 7565 2076 6172 5f61 7564 6974   Value var_audit
│ │ │ +00467950: 5f62 6163 6b6c 6f67 5f6c 696d 6974 2023  _backlog_limit #
│ │ │ +00467960: 2070 726f 6d6f 7465 2074 6f20 7661 7269   promote to vari
│ │ │ +00467970: 6162 6c65 0a20 2073 6574 5f66 6163 743a  able.  set_fact:
│ │ │ +00467980: 0a20 2020 2076 6172 5f61 7564 6974 5f62  .    var_audit_b
│ │ │ +00467990: 6163 6b6c 6f67 5f6c 696d 6974 3a20 2121  acklog_limit: !!
│ │ │ +004679a0: 7374 7220 3c61 6262 7220 7469 746c 653d  str 8192.  tags:.    
│ │ │ +00467a20: 2d20 616c 7761 7973 0a0a 2d20 6e61 6d65  - always..- name
│ │ │ +00467a30: 3a20 4368 6563 6b20 6966 2061 7564 6974  : Check if audit
│ │ │ +00467a40: 5f62 6163 6b6c 6f67 5f6c 696d 6974 2061  _backlog_limit a
│ │ │ +00467a50: 7267 756d 656e 7420 6973 2061 6c72 6561  rgument is alrea
│ │ │ +00467a60: 6479 2070 7265 7365 6e74 2069 6e20 2f65  dy present in /e
│ │ │ +00467a70: 7463 2f64 6566 6175 6c74 2f67 7275 620a  tc/default/grub.
│ │ │ +00467a80: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +00467a90: 6e2e 736c 7572 703a 0a20 2020 2073 7263  n.slurp:.    src
│ │ │ +00467aa0: 3a20 2f65 7463 2f64 6566 6175 6c74 2f67  : /etc/default/g
│ │ │ +00467ab0: 7275 620a 2020 7265 6769 7374 6572 3a20  rub.  register: 
│ │ │ +00467ac0: 6574 635f 6465 6661 756c 745f 6772 7562  etc_default_grub
│ │ │ +00467ad0: 0a20 2077 6865 6e3a 0a20 202d 2027 226b  .  when:.  - '"k
│ │ │ +00467ae0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +00467af0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +00467b00: 270a 2020 2d20 2722 6772 7562 322d 636f  '.  - '"grub2-co
│ │ │ +00467b10: 6d6d 6f6e 2220 696e 2061 6e73 6962 6c65  mmon" in ansible
│ │ │ +00467b20: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ +00467b30: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +00467b40: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +00467b50: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ +00467b60: 302e 370a 2020 2d20 5043 492d 4453 5376  0.7.  - PCI-DSSv
│ │ │ +00467b70: 342d 3130 2e37 2e32 0a20 202d 2067 7275  4-10.7.2.  - gru
│ │ │ +00467b80: 6232 5f61 7564 6974 5f62 6163 6b6c 6f67  b2_audit_backlog
│ │ │ +00467b90: 5f6c 696d 6974 5f61 7267 756d 656e 740a  _limit_argument.
│ │ │ +00467ba0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +00467bb0: 6f6e 0a20 202d 206c 6f77 5f73 6576 6572  on.  - low_sever
│ │ │ +00467bc0: 6974 790a 2020 2d20 6d65 6469 756d 5f63  ity.  - medium_c
│ │ │ +00467bd0: 6f6d 706c 6578 6974 790a 2020 2d20 7265  omplexity.  - re
│ │ │ +00467be0: 626f 6f74 5f72 6571 7569 7265 640a 2020  boot_required.  
│ │ │ +00467bf0: 2d20 7265 7374 7269 6374 5f73 7472 6174  - restrict_strat
│ │ │ +00467c00: 6567 790a 0a2d 206e 616d 653a 2043 6865  egy..- name: Che
│ │ │ +00467c10: 636b 2069 6620 6175 6469 745f 6261 636b  ck if audit_back
│ │ │ +00467c20: 6c6f 675f 6c69 6d69 7420 6172 6775 6d65  log_limit argume
│ │ │ +00467c30: 6e74 2069 7320 616c 7265 6164 7920 7072  nt is already pr
│ │ │ +00467c40: 6573 656e 740a 2020 616e 7369 626c 652e  esent.  ansible.
│ │ │ +00467c50: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ +00467c60: 202f 7362 696e 2f67 7275 6262 7920 2d2d   /sbin/grubby --
│ │ │ +00467c70: 696e 666f 3d41 4c4c 0a20 2072 6567 6973  info=ALL.  regis
│ │ │ +00467c80: 7465 723a 2067 7275 6262 795f 696e 666f  ter: grubby_info
│ │ │ +00467c90: 0a20 2063 6865 636b 5f6d 6f64 653a 2066  .  check_mode: f
│ │ │ +00467ca0: 616c 7365 0a20 2063 6861 6e67 6564 5f77  alse.  changed_w
│ │ │ +00467cb0: 6865 6e3a 2066 616c 7365 0a20 2066 6169  hen: false.  fai
│ │ │ +00467cc0: 6c65 645f 7768 656e 3a20 6661 6c73 650a  led_when: false.
│ │ │ +00467cd0: 2020 7768 656e 3a0a 2020 2d20 2722 6b65    when:.  - '"ke
│ │ │ +00467ce0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +00467cf0: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ +00467d00: 0a20 202d 2027 2267 7275 6232 2d63 6f6d  .  - '"grub2-com
│ │ │ +00467d10: 6d6f 6e22 2069 6e20 616e 7369 626c 655f  mon" in ansible_
│ │ │ +00467d20: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ +00467d30: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +00467d40: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +00467d50: 2020 2d20 5043 492d 4453 5376 342d 3130    - PCI-DSSv4-10
│ │ │ +00467d60: 2e37 0a20 202d 2050 4349 2d44 5353 7634  .7.  - PCI-DSSv4
│ │ │ +00467d70: 2d31 302e 372e 320a 2020 2d20 6772 7562  -10.7.2.  - grub
│ │ │ +00467d80: 325f 6175 6469 745f 6261 636b 6c6f 675f  2_audit_backlog_
│ │ │ +00467d90: 6c69 6d69 745f 6172 6775 6d65 6e74 0a20  limit_argument. 
│ │ │ +00467da0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +00467db0: 6e0a 2020 2d20 6c6f 775f 7365 7665 7269  n.  - low_severi
│ │ │ +00467dc0: 7479 0a20 202d 206d 6564 6975 6d5f 636f  ty.  - medium_co
│ │ │ +00467dd0: 6d70 6c65 7869 7479 0a20 202d 2072 6562  mplexity.  - reb
│ │ │ +00467de0: 6f6f 745f 7265 7175 6972 6564 0a20 202d  oot_required.  -
│ │ │ +00467df0: 2072 6573 7472 6963 745f 7374 7261 7465   restrict_strate
│ │ │ +00467e00: 6779 0a0a 2d20 6e61 6d65 3a20 5570 6461  gy..- name: Upda
│ │ │ +00467e10: 7465 2067 7275 6220 6465 6661 756c 7473  te grub defaults
│ │ │ +00467e20: 2061 6e64 2074 6865 2062 6f6f 746c 6f61   and the bootloa
│ │ │ +00467e30: 6465 7220 6d65 6e75 0a20 2061 6e73 6962  der menu.  ansib
│ │ │ +00467e40: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61  le.builtin.comma
│ │ │ +00467e50: 6e64 3a20 2f73 6269 6e2f 6772 7562 6279  nd: /sbin/grubby
│ │ │ +00467e60: 202d 2d75 7064 6174 652d 6b65 726e 656c   --update-kernel
│ │ │ +00467e70: 3d41 4c4c 202d 2d61 7267 733d 2261 7564  =ALL --args="aud
│ │ │ +00467e80: 6974 5f62 6163 6b6c 6f67 5f6c 696d 6974  it_backlog_limit
│ │ │ +00467e90: 3d7b 7b0a 2020 2020 7661 725f 6175 6469  ={{.    var_audi
│ │ │ +00467ea0: 745f 6261 636b 6c6f 675f 6c69 6d69 7420  t_backlog_limit 
│ │ │ +00467eb0: 7d7d 220a 2020 7768 656e 3a0a 2020 2d20  }}".  when:.  - 
│ │ │ +00467ec0: 2722 6b65 726e 656c 2220 696e 2061 6e73  '"kernel" in ans
│ │ │ +00467ed0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +00467ee0: 6765 7327 0a20 202d 2027 2267 7275 6232  ges'.  - '"grub2
│ │ │ +00467ef0: 2d63 6f6d 6d6f 6e22 2069 6e20 616e 7369  -common" in ansi
│ │ │ +00467f00: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +00467f10: 6573 270a 2020 2d20 2867 7275 6262 795f  es'.  - (grubby_
│ │ │ +00467f20: 696e 666f 2e73 7464 6f75 7420 6973 206e  info.stdout is n
│ │ │ +00467f30: 6f74 2073 6561 7263 6828 2761 7564 6974  ot search('audit
│ │ │ +00467f40: 5f62 6163 6b6c 6f67 5f6c 696d 6974 3d27  _backlog_limit='
│ │ │ +00467f50: 207e 2076 6172 5f61 7564 6974 5f62 6163   ~ var_audit_bac
│ │ │ +00467f60: 6b6c 6f67 5f6c 696d 6974 2929 0a20 2020  klog_limit)).   
│ │ │ +00467f70: 206f 7220 2828 6574 635f 6465 6661 756c   or ((etc_defaul
│ │ │ +00467f80: 745f 6772 7562 5b27 636f 6e74 656e 7427  t_grub['content'
│ │ │ +00467f90: 5d20 7c20 6236 3464 6563 6f64 6529 2069  ] | b64decode) i
│ │ │ +00467fa0: 7320 6e6f 7420 7365 6172 6368 2827 6175  s not search('au
│ │ │ +00467fb0: 6469 745f 6261 636b 6c6f 675f 6c69 6d69  dit_backlog_limi
│ │ │ +00467fc0: 743d 270a 2020 2020 7e20 7661 725f 6175  t='.    ~ var_au
│ │ │ +00467fd0: 6469 745f 6261 636b 6c6f 675f 6c69 6d69  dit_backlog_limi
│ │ │ +00467fe0: 7429 290a 2020 7461 6773 3a0a 2020 2d20  t)).  tags:.  - 
│ │ │ +00467ff0: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +00468000: 2861 290a 2020 2d20 5043 492d 4453 5376  (a).  - PCI-DSSv
│ │ │ +00468010: 342d 3130 2e37 0a20 202d 2050 4349 2d44  4-10.7.  - PCI-D
│ │ │ +00468020: 5353 7634 2d31 302e 372e 320a 2020 2d20  SSv4-10.7.2.  - 
│ │ │ +00468030: 6772 7562 325f 6175 6469 745f 6261 636b  grub2_audit_back
│ │ │ +00468040: 6c6f 675f 6c69 6d69 745f 6172 6775 6d65  log_limit_argume
│ │ │ +00468050: 6e74 0a20 202d 206c 6f77 5f64 6973 7275  nt.  - low_disru
│ │ │ +00468060: 7074 696f 6e0a 2020 2d20 6c6f 775f 7365  ption.  - low_se
│ │ │ +00468070: 7665 7269 7479 0a20 202d 206d 6564 6975  verity.  - mediu
│ │ │ +00468080: 6d5f 636f 6d70 6c65 7869 7479 0a20 202d  m_complexity.  -
│ │ │ +00468090: 2072 6562 6f6f 745f 7265 7175 6972 6564   reboot_required
│ │ │ +004680a0: 0a20 202d 2072 6573 7472 6963 745f 7374  .  - restrict_st
│ │ │ +004680b0: 7261 7465 6779 0a3c 2f63 6f64 653e 3c2f  rategy.
Remediat │ │ │ +00468170: 696f 6e20 4f53 4275 696c 6420 426c 7565 ion OSBuild Blue │ │ │ +00468180: 7072 696e 7420 736e 6970 7065 7420 e287 print snippet .. │ │ │ +00468190: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
<
│ │ │ +004681d0: 636f 6465 3e5b 6375 7374 6f6d 697a 6174  code>[customizat
│ │ │ +004681e0: 696f 6e73 2e6b 6572 6e65 6c5d 0a61 7070  ions.kernel].app
│ │ │ +004681f0: 656e 6420 3d20 2261 7564 6974 5f62 6163  end = "audit_bac
│ │ │ +00468200: 6b6c 6f67 5f6c 696d 6974 3d3c 6162 6272  klog_limit=8
│ │ │ +00468270: 3139 323c 2f61 6262 723e 220a 3c2f 636f  192".
< │ │ │ 00468290: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ 004682a0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ 004682b0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ 004682c0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ 004682d0: 6431 3132 3022 2074 6162 696e 6465 783d d1120" tabindex= │ │ │ 004682e0: 2230 2220 726f 6c65 3d22 6275 7474 6f6e "0" role="button │ │ │ ├── html2text {} │ │ │ │ @@ -122,38 +122,14 @@ │ │ │ │ _n_i_s_t_-_c_s_f DE.CM-1, DE.CM-7, PR.DS-1, PR.DS-6, PR.DS-8, PR.IP-1, PR.IP-3 │ │ │ │ _p_c_i_d_s_s Req-11.5 │ │ │ │ _o_s_-_s_r_g SRG-OS-000445-GPOS-00199 │ │ │ │ _a_n_s_s_i R76, R79 │ │ │ │ _c_i_s 1.3.1 │ │ │ │ _i_s_m 1034, 1288, 1341, 1417 │ │ │ │ _p_c_i_d_s_s_4 11.5.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "aide" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -package --add=aide │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_aide │ │ │ │ - │ │ │ │ -class install_aide { │ │ │ │ - package { 'aide': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -182,14 +158,31 @@ │ │ │ │ - PCI-DSSv4-11.5.2 │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_aide_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_aide │ │ │ │ + │ │ │ │ +class install_aide { │ │ │ │ + package { 'aide': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "aide" │ │ │ │ +version = "*" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -197,14 +190,21 @@ │ │ │ │ if ! rpm -q --quiet "aide" ; then │ │ │ │ dnf install -y "aide" │ │ │ │ fi │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +package --add=aide │ │ │ │ ****** RRuullee? ?  BBuuiilldd aanndd TTeesstt AAIIDDEE DDaattaabbaassee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ Run the following command to generate a new database: │ │ │ │ $ sudo /usr/sbin/aide --init │ │ │ │ By default, the database will be written to the file /var/lib/aide/aide.db.new.gz. Storing the database, │ │ │ │ the configuration file /etc/aide.conf, and the binary /usr/sbin/aide (or hashes of these files), in a │ │ │ │ secure location (such as on read-only media) provides additional assurance about their integrity. The │ │ │ │ newly-generated database can be installed as follows: │ │ │ │ @@ -1208,38 +1208,14 @@ │ │ │ │ _n_i_s_t CM-6(a) │ │ │ │ _o_s_p_p FMT_MOF_EXT.1 │ │ │ │ _o_s_-_s_r_g SRG-OS-000324-GPOS-00125 │ │ │ │ References: _a_n_s_s_i R33 │ │ │ │ _c_i_s 4.3.1 │ │ │ │ _i_s_m 1386 │ │ │ │ _p_c_i_d_s_s_4 2.2.6, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "sudo" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -package --add=sudo │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_sudo │ │ │ │ - │ │ │ │ -class install_sudo { │ │ │ │ - package { 'sudo': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -1266,14 +1242,31 @@ │ │ │ │ - PCI-DSSv4-2.2.6 │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_sudo_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_sudo │ │ │ │ + │ │ │ │ +class install_sudo { │ │ │ │ + package { 'sudo': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "sudo" │ │ │ │ +version = "*" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -1281,14 +1274,21 @@ │ │ │ │ if ! rpm -q --quiet "sudo" ; then │ │ │ │ dnf install -y "sudo" │ │ │ │ fi │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +package --add=sudo │ │ │ │ ****** RRuullee? ?  EEnnssuurree OOnnllyy UUsseerrss LLooggggeedd IInn TToo RReeaall ttttyy CCaann EExxeeccuuttee SSuuddoo -- ssuuddoo uussee__ppttyy ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The sudo use_pty tag, when specified, will only execute sudo commands from users logged in to a real tty. │ │ │ │ This should be enabled by making sure that the use_pty tag exists in /etc/sudoers configuration file or any │ │ │ │ sudo configuration snippets in /etc/sudoers.d/. │ │ │ │ Rationale: Requiring that sudo commands be run in a pseudo-terminal can prevent an attacker from retaining │ │ │ │ access to the user's terminal after the main program has finished executing. │ │ │ │ Severity:  medium │ │ │ │ @@ -14653,31 +14653,14 @@ │ │ │ │ Rationale: determine cause of failure and any information necessary to return to operations with least │ │ │ │ disruption to system processes. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_service_systemd-journald_enabled │ │ │ │ _n_i_s_t SC-24 │ │ │ │ References: _o_s_-_s_r_g SRG-OS-000269-GPOS-00103 │ │ │ │ _c_i_s 5.1.2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -enabled = ["systemd-journald"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include enable_systemd-journald │ │ │ │ - │ │ │ │ -class enable_systemd-journald { │ │ │ │ - service {'systemd-journald': │ │ │ │ - enable => true, │ │ │ │ - ensure => 'running', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -14712,14 +14695,31 @@ │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_systemd-journald_enabled │ │ │ │ - special_service_block │ │ │ │ when: '"kernel" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include enable_systemd-journald │ │ │ │ + │ │ │ │ +class enable_systemd-journald { │ │ │ │ + service {'systemd-journald': │ │ │ │ + enable => true, │ │ │ │ + ensure => 'running', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +enabled = ["systemd-journald"] │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -15571,38 +15571,14 @@ │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 SR 2.10, SR 2.11, SR 2.12, SR 2.8, SR 2.9 │ │ │ │ References: _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.4.1, A.12.4.2, A.12.4.3, A.12.4.4, A.12.7.1 │ │ │ │ _n_i_s_t CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.PT-1 │ │ │ │ _o_s_-_s_r_g SRG-OS-000479-GPOS-00224, SRG-OS-000051-GPOS-00024, SRG-OS-000480-GPOS-00227 │ │ │ │ _c_i_s 5.1.1.1 │ │ │ │ _i_s_m 1409 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "rsyslog" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -package --add=rsyslog │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_rsyslog │ │ │ │ - │ │ │ │ -class install_rsyslog { │ │ │ │ - package { 'rsyslog': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -15625,14 +15601,31 @@ │ │ │ │ - NIST-800-53-CM-6(a) │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_rsyslog_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_rsyslog │ │ │ │ + │ │ │ │ +class install_rsyslog { │ │ │ │ + package { 'rsyslog': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "rsyslog" │ │ │ │ +version = "*" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -15640,14 +15633,21 @@ │ │ │ │ if ! rpm -q --quiet "rsyslog" ; then │ │ │ │ dnf install -y "rsyslog" │ │ │ │ fi │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +package --add=rsyslog │ │ │ │ ****** RRuullee? ?  EEnnssuurree rrssyysslloogg DDeeffaauulltt FFiillee PPeerrmmiissssiioonnss CCoonnffiigguurreedd ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ rsyslog will create logfiles that do not already exist on the system. This settings controls what │ │ │ │ permissions will be applied to these newly created files. │ │ │ │ Rationale: It is important to ensure that log files have the correct permissions to ensure that sensitive │ │ │ │ data is archived and protected. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_rsyslog_filecreatemode │ │ │ │ @@ -15899,38 +15899,14 @@ │ │ │ │ _n_i_s_t CM-6(a) │ │ │ │ _o_s_p_p FMT_SMF_EXT.1 │ │ │ │ _o_s_-_s_r_g SRG-OS-000096-GPOS-00050, SRG-OS-000297-GPOS-00115, SRG-OS-000298-GPOS-00116, SRG-OS- │ │ │ │ References: 000480-GPOS-00227, SRG-OS-000480-GPOS-00232 │ │ │ │ _c_i_s 3.4.1.2 │ │ │ │ _i_s_m 1409 │ │ │ │ _p_c_i_d_s_s_4 1.2.1, 1.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "firewalld" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -package --add=firewalld │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_firewalld │ │ │ │ - │ │ │ │ -class install_firewalld { │ │ │ │ - package { 'firewalld': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -15957,14 +15933,31 @@ │ │ │ │ - PCI-DSSv4-1.2.1 │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_firewalld_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_firewalld │ │ │ │ + │ │ │ │ +class install_firewalld { │ │ │ │ + package { 'firewalld': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "firewalld" │ │ │ │ +version = "*" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -15972,14 +15965,21 @@ │ │ │ │ if ! rpm -q --quiet "firewalld" ; then │ │ │ │ dnf install -y "firewalld" │ │ │ │ fi │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +package --add=firewalld │ │ │ │ ****** RRuullee? ?  VVeerriiffyy ffiirreewwaalllldd EEnnaabblleedd ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The firewalld service can be enabled with the following command: │ │ │ │ $ sudo systemctl enable firewalld.service │ │ │ │ Access control methods provide the ability to enhance system security posture by restricting │ │ │ │ Rationale: services and known good IP addresses and address ranges. This prevents connections from unknown │ │ │ │ hosts and protocols. │ │ │ │ Severity:  medium │ │ │ │ @@ -15996,31 +15996,14 @@ │ │ │ │ _o_s_p_p FMT_SMF_EXT.1 │ │ │ │ _o_s_-_s_r_g SRG-OS-000096-GPOS-00050, SRG-OS-000297-GPOS-00115, SRG-OS-000480-GPOS-00227, │ │ │ │ SRG-OS-000480-GPOS-00231, SRG-OS-000480-GPOS-00232 │ │ │ │ _b_s_i SYS.1.6.A5, SYS.1.6.A21 │ │ │ │ _c_i_s 3.4.1.2 │ │ │ │ _i_s_m 1409 │ │ │ │ _p_c_i_d_s_s_4 1.2.1, 1.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -enabled = ["firewalld"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include enable_firewalld │ │ │ │ - │ │ │ │ -class enable_firewalld { │ │ │ │ - service {'firewalld': │ │ │ │ - enable => true, │ │ │ │ - ensure => 'running', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -16073,14 +16056,31 @@ │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_firewalld_enabled │ │ │ │ - special_service_block │ │ │ │ when: │ │ │ │ - '"kernel" in ansible_facts.packages' │ │ │ │ - '"firewalld" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include enable_firewalld │ │ │ │ + │ │ │ │ +class enable_firewalld { │ │ │ │ + service {'firewalld': │ │ │ │ + enable => true, │ │ │ │ + ensure => 'running', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +enabled = ["firewalld"] │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel && { rpm --quiet -q firewalld; }; then │ │ │ │ @@ -22392,38 +22392,14 @@ │ │ │ │ nftables is a subsystem of the Linux kernel that can protect against threats originating from │ │ │ │ Rationale: within a corporate network to include malicious mobile code and poorly configured software on a │ │ │ │ host. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_nftables_installed │ │ │ │ References: _c_i_s 3.4.1.1 │ │ │ │ _p_c_i_d_s_s_4 1.2.1, 1.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "nftables" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -package --add=nftables │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_nftables │ │ │ │ - │ │ │ │ -class install_nftables { │ │ │ │ - package { 'nftables': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -22448,14 +22424,31 @@ │ │ │ │ - PCI-DSSv4-1.2.1 │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_nftables_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_nftables │ │ │ │ + │ │ │ │ +class install_nftables { │ │ │ │ + package { 'nftables': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "nftables" │ │ │ │ +version = "*" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if ( ( ! (systemctl is-active iptables &>/dev/null) && ! (systemctl is-active ufw &>/dev/null) && rpm -- │ │ │ │ @@ -22464,42 +22457,32 @@ │ │ │ │ if ! rpm -q --quiet "nftables" ; then │ │ │ │ dnf install -y "nftables" │ │ │ │ fi │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +package --add=nftables │ │ │ │ ****** RRuullee? ?  VVeerriiffyy nnffttaabblleess SSeerrvviiccee iiss DDiissaabblleedd ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ nftables is a subsystem of the Linux kernel providing filtering and classification of network packets/ │ │ │ │ datagrams/frames and is the successor to iptables. The nftables service can be disabled with the following │ │ │ │ command: │ │ │ │ systemctl disable nftables │ │ │ │ Rationale: Running both firewalld and nftables may lead to conflict. nftables is actually one of the │ │ │ │ backends for firewalld management tools. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_service_nftables_disabled │ │ │ │ References: _c_i_s 3.4.1.2 │ │ │ │ _p_c_i_d_s_s_4 1.2.1, 1.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -masked = ["nftables"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include disable_nftables │ │ │ │ - │ │ │ │ -class disable_nftables { │ │ │ │ - service {'nftables': │ │ │ │ - enable => false, │ │ │ │ - ensure => 'stopped', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -22555,14 +22538,31 @@ │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_nftables_disabled │ │ │ │ - special_service_block │ │ │ │ when: ( "firewalld" in ansible_facts.packages and "nftables" in ansible_facts.packages │ │ │ │ and "kernel" in ansible_facts.packages ) │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include disable_nftables │ │ │ │ + │ │ │ │ +class disable_nftables { │ │ │ │ + service {'nftables': │ │ │ │ + enable => false, │ │ │ │ + ensure => 'stopped', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +masked = ["nftables"] │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if ( ( rpm --quiet -q firewalld && rpm --quiet -q nftables && rpm --quiet -q kernel ) ); then │ │ │ │ @@ -26860,21 +26860,14 @@ │ │ │ │ which controls mounting of /home. │ │ │ │ Rationale: The only legitimate location for device files is the /dev directory located on the root │ │ │ │ partition. The only exception to this is chroot jails. │ │ │ │ Severity:  unknown │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_mount_option_home_nodev │ │ │ │ References: _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ _c_i_s 1.1.7.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /home --mountoptions="nodev" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -27060,14 +27053,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /home --mountoptions="nodev" │ │ │ │ ****** RRuullee? ?  AAdddd nnoossuuiidd OOppttiioonn ttoo //hhoommee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nosuid mount option can be used to prevent execution of setuid programs in /home. The SUID and SGID │ │ │ │ permissions should not be required in these user data directories. Add the nosuid option to the fourth │ │ │ │ column of /etc/fstab for the line which controls mounting of /home. │ │ │ │ Rationale: The presence of SUID and SGID executables should be tightly controlled. Users should not be │ │ │ │ able to execute SUID or SGID binaries from user home directory partitions. │ │ │ │ Severity:  medium │ │ │ │ @@ -27087,21 +27087,14 @@ │ │ │ │ _n_e_r_c_-_c_i_p CIP-003-8 R5.1.1, CIP-003-8 R5.3, CIP-004-6 R2.3, CIP-007-3 R2.1, CIP-007- │ │ │ │ 3 R2.2, CIP-007-3 R2.3, CIP-007-3 R5.1, CIP-007-3 R5.1.1, CIP-007-3 R5.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a), AC-6, AC-6(1), MP-7 │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-2, PR.PT-3 │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154, SRG-OS-000480-GPOS-00227 │ │ │ │ _a_n_s_s_i R28 │ │ │ │ _c_i_s 1.1.7.3 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /home --mountoptions="nosuid" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -27323,14 +27316,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /home --mountoptions="nosuid" │ │ │ │ ****** RRuullee? ?  AAdddd nnooddeevv OOppttiioonn ttoo //ttmmpp ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nodev mount option can be used to prevent device files from being created in /tmp. Legitimate │ │ │ │ character and block devices should not exist within temporary directories like /tmp. Add the nodev option │ │ │ │ to the fourth column of /etc/fstab for the line which controls mounting of /tmp. │ │ │ │ Rationale: The only legitimate location for device files is the /dev directory located on the root │ │ │ │ partition. The only exception to this is chroot jails. │ │ │ │ Severity:  medium │ │ │ │ @@ -27349,21 +27349,14 @@ │ │ │ │ A.8.2.2, A.8.2.3, A.8.3.1, A.8.3.3, A.9.1.2 │ │ │ │ _n_e_r_c_-_c_i_p CIP-003-8 R5.1.1, CIP-003-8 R5.3, CIP-004-6 R2.3, CIP-007-3 R2.1, CIP-007- │ │ │ │ 3 R2.2, CIP-007-3 R2.3, CIP-007-3 R5.1, CIP-007-3 R5.1.1, CIP-007-3 R5.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a), AC-6, AC-6(1), MP-7 │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-2, PR.PT-3 │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ _c_i_s 1.1.2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /tmp --mountoptions="nodev" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -27584,14 +27577,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /tmp --mountoptions="nodev" │ │ │ │ ****** RRuullee? ?  AAdddd nnooeexxeecc OOppttiioonn ttoo //ttmmpp ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The noexec mount option can be used to prevent binaries from being executed out of /tmp. Add the noexec │ │ │ │ option to the fourth column of /etc/fstab for the line which controls mounting of /tmp. │ │ │ │ Rationale: Allowing users to execute binaries from world-writable directories such as /tmp should never be │ │ │ │ necessary in normal operation and can expose the system to potential compromise. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_mount_option_tmp_noexec │ │ │ │ @@ -27610,21 +27610,14 @@ │ │ │ │ _n_e_r_c_-_c_i_p CIP-003-8 R5.1.1, CIP-003-8 R5.3, CIP-004-6 R2.3, CIP-007-3 R2.1, CIP-007- │ │ │ │ 3 R2.2, CIP-007-3 R2.3, CIP-007-3 R5.1, CIP-007-3 R5.1.1, CIP-007-3 R5.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a), AC-6, AC-6(1), MP-7 │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-2, PR.PT-3 │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ _a_n_s_s_i R28 │ │ │ │ _c_i_s 1.1.2.3 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /tmp --mountoptions="noexec" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -27845,14 +27838,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /tmp --mountoptions="noexec" │ │ │ │ ****** RRuullee? ?  AAdddd nnoossuuiidd OOppttiioonn ttoo //ttmmpp ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nosuid mount option can be used to prevent execution of setuid programs in /tmp. The SUID and SGID │ │ │ │ permissions should not be required in these world-writable directories. Add the nosuid option to the │ │ │ │ fourth column of /etc/fstab for the line which controls mounting of /tmp. │ │ │ │ Rationale: The presence of SUID and SGID executables should be tightly controlled. Users should not be │ │ │ │ able to execute SUID or SGID binaries from temporary storage partitions. │ │ │ │ Severity:  medium │ │ │ │ @@ -27872,21 +27872,14 @@ │ │ │ │ _n_e_r_c_-_c_i_p CIP-003-8 R5.1.1, CIP-003-8 R5.3, CIP-004-6 R2.3, CIP-007-3 R2.1, CIP-007- │ │ │ │ 3 R2.2, CIP-007-3 R2.3, CIP-007-3 R5.1, CIP-007-3 R5.1.1, CIP-007-3 R5.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a), AC-6, AC-6(1), MP-7 │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-2, PR.PT-3 │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ _a_n_s_s_i R28 │ │ │ │ _c_i_s 1.1.2.4 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /tmp --mountoptions="nosuid" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -28108,14 +28101,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /tmp --mountoptions="nosuid" │ │ │ │ ****** RRuullee? ?  AAdddd nnooddeevv OOppttiioonn ttoo //vvaarr//lloogg//aauuddiitt ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nodev mount option can be used to prevent device files from being created in /var/log/audit. Legitimate │ │ │ │ character and block devices should exist only in the /dev directory on the root partition or within chroot │ │ │ │ jails built for system services. Add the nodev option to the fourth column of /etc/fstab for the line which │ │ │ │ controls mounting of /var/log/audit. │ │ │ │ Rationale: The only legitimate location for device files is the /dev directory located on the root │ │ │ │ partition. The only exception to this is chroot jails. │ │ │ │ @@ -28124,21 +28124,14 @@ │ │ │ │ _n_e_r_c_-_c_i_p CIP-003-8 R5.1.1, CIP-003-8 R5.3, CIP-004-6 R2.3, CIP-007-3 R2.1, CIP-007-3 R2.2, CIP- │ │ │ │ 007-3 R2.3, CIP-007-3 R5.1, CIP-007-3 R5.1.1, CIP-007-3 R5.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a), AC-6, AC-6(1), MP-7 │ │ │ │ References: _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-2, PR.PT-3 │ │ │ │ _o_s_p_p FMT_SMF_EXT.1 │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ _c_i_s 1.1.6.3 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /var/log/audit --mountoptions="nodev" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -28363,14 +28356,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /var/log/audit --mountoptions="nodev" │ │ │ │ ****** RRuullee? ?  AAdddd nnooeexxeecc OOppttiioonn ttoo //vvaarr//lloogg//aauuddiitt ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The noexec mount option can be used to prevent binaries from being executed out of /var/log/audit. Add the │ │ │ │ noexec option to the fourth column of /etc/fstab for the line which controls mounting of /var/log/audit. │ │ │ │ Allowing users to execute binaries from directories containing audit log files such as /var/ │ │ │ │ Rationale: log/audit should never be necessary in normal operation and can expose the system to potential │ │ │ │ compromise. │ │ │ │ Severity:  medium │ │ │ │ @@ -28378,21 +28378,14 @@ │ │ │ │ _n_e_r_c_-_c_i_p CIP-003-8 R5.1.1, CIP-003-8 R5.3, CIP-004-6 R2.3, CIP-007-3 R2.1, CIP-007-3 R2.2, CIP- │ │ │ │ 007-3 R2.3, CIP-007-3 R5.1, CIP-007-3 R5.1.1, CIP-007-3 R5.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a), AC-6, AC-6(1), MP-7 │ │ │ │ References: _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-2, PR.PT-3 │ │ │ │ _o_s_p_p FMT_SMF_EXT.1 │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ _c_i_s 1.1.6.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /var/log/audit --mountoptions="noexec" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -28617,14 +28610,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /var/log/audit --mountoptions="noexec" │ │ │ │ ****** RRuullee? ?  AAdddd nnoossuuiidd OOppttiioonn ttoo //vvaarr//lloogg//aauuddiitt ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nosuid mount option can be used to prevent execution of setuid programs in /var/log/audit. The SUID and │ │ │ │ SGID permissions should not be required in directories containing audit log files. Add the nosuid option to │ │ │ │ the fourth column of /etc/fstab for the line which controls mounting of /var/log/audit. │ │ │ │ Rationale: The presence of SUID and SGID executables should be tightly controlled. Users should not be │ │ │ │ able to execute SUID or SGID binaries from partitions designated for audit log files. │ │ │ │ Severity:  medium │ │ │ │ @@ -28632,21 +28632,14 @@ │ │ │ │ _n_e_r_c_-_c_i_p CIP-003-8 R5.1.1, CIP-003-8 R5.3, CIP-004-6 R2.3, CIP-007-3 R2.1, CIP-007-3 R2.2, CIP- │ │ │ │ 007-3 R2.3, CIP-007-3 R5.1, CIP-007-3 R5.1.1, CIP-007-3 R5.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a), AC-6, AC-6(1), MP-7 │ │ │ │ References: _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-2, PR.PT-3 │ │ │ │ _o_s_p_p FMT_SMF_EXT.1 │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ _c_i_s 1.1.6.4 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /var/log/audit --mountoptions="nosuid" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -28871,14 +28864,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /var/log/audit --mountoptions="nosuid" │ │ │ │ ****** RRuullee? ?  AAdddd nnooddeevv OOppttiioonn ttoo //vvaarr//lloogg ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nodev mount option can be used to prevent device files from being created in /var/log. Legitimate │ │ │ │ character and block devices should exist only in the /dev directory on the root partition or within chroot │ │ │ │ jails built for system services. Add the nodev option to the fourth column of /etc/fstab for the line which │ │ │ │ controls mounting of /var/log. │ │ │ │ Rationale: The only legitimate location for device files is the /dev directory located on the root │ │ │ │ partition. The only exception to this is chroot jails. │ │ │ │ @@ -28886,21 +28886,14 @@ │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_mount_option_var_log_nodev │ │ │ │ _n_e_r_c_-_c_i_p CIP-003-8 R5.1.1, CIP-003-8 R5.3, CIP-004-6 R2.3, CIP-007-3 R2.1, CIP-007-3 R2.2, CIP- │ │ │ │ 007-3 R2.3, CIP-007-3 R5.1, CIP-007-3 R5.1.1, CIP-007-3 R5.1.2 │ │ │ │ References: _n_i_s_t CM-7(a), CM-7(b), CM-6(a), AC-6, AC-6(1), MP-7 │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-2, PR.PT-3 │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ _c_i_s 1.1.5.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /var/log --mountoptions="nodev" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -29123,14 +29116,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /var/log --mountoptions="nodev" │ │ │ │ ****** RRuullee? ?  AAdddd nnooeexxeecc OOppttiioonn ttoo //vvaarr//lloogg ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The noexec mount option can be used to prevent binaries from being executed out of /var/log. Add the noexec │ │ │ │ option to the fourth column of /etc/fstab for the line which controls mounting of /var/log. │ │ │ │ Allowing users to execute binaries from directories containing log files such as /var/log │ │ │ │ Rationale: should never be necessary in normal operation and can expose the system to potential │ │ │ │ compromise. │ │ │ │ Severity:  medium │ │ │ │ @@ -29138,21 +29138,14 @@ │ │ │ │ _n_e_r_c_-_c_i_p CIP-003-8 R5.1.1, CIP-003-8 R5.3, CIP-004-6 R2.3, CIP-007-3 R2.1, CIP-007-3 R2.2, CIP- │ │ │ │ 007-3 R2.3, CIP-007-3 R5.1, CIP-007-3 R5.1.1, CIP-007-3 R5.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a), AC-6, AC-6(1), MP-7 │ │ │ │ References: _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-2, PR.PT-3 │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ _a_n_s_s_i R28 │ │ │ │ _c_i_s 1.1.5.3 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /var/log --mountoptions="noexec" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -29376,14 +29369,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /var/log --mountoptions="noexec" │ │ │ │ ****** RRuullee? ?  AAdddd nnoossuuiidd OOppttiioonn ttoo //vvaarr//lloogg ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nosuid mount option can be used to prevent execution of setuid programs in /var/log. The SUID and SGID │ │ │ │ permissions should not be required in directories containing log files. Add the nosuid option to the fourth │ │ │ │ column of /etc/fstab for the line which controls mounting of /var/log. │ │ │ │ Rationale: The presence of SUID and SGID executables should be tightly controlled. Users should not be │ │ │ │ able to execute SUID or SGID binaries from partitions designated for log files. │ │ │ │ Severity:  medium │ │ │ │ @@ -29391,21 +29391,14 @@ │ │ │ │ _n_e_r_c_-_c_i_p CIP-003-8 R5.1.1, CIP-003-8 R5.3, CIP-004-6 R2.3, CIP-007-3 R2.1, CIP-007-3 R2.2, CIP- │ │ │ │ 007-3 R2.3, CIP-007-3 R5.1, CIP-007-3 R5.1.1, CIP-007-3 R5.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a), AC-6, AC-6(1), MP-7 │ │ │ │ References: _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-2, PR.PT-3 │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ _a_n_s_s_i R28 │ │ │ │ _c_i_s 1.1.5.4 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /var/log --mountoptions="nosuid" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -29629,14 +29622,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /var/log --mountoptions="nosuid" │ │ │ │ ****** RRuullee? ?  AAdddd nnooddeevv OOppttiioonn ttoo //vvaarr ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nodev mount option can be used to prevent device files from being created in /var. Legitimate character │ │ │ │ and block devices should exist only in the /dev directory on the root partition or within chroot jails │ │ │ │ built for system services. Add the nodev option to the fourth column of /etc/fstab for the line which │ │ │ │ controls mounting of /var. │ │ │ │ Rationale: The only legitimate location for device files is the /dev directory located on the root │ │ │ │ partition. The only exception to this is chroot jails. │ │ │ │ @@ -29644,21 +29644,14 @@ │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_mount_option_var_nodev │ │ │ │ _n_e_r_c_-_c_i_p CIP-003-8 R5.1.1, CIP-003-8 R5.3, CIP-004-6 R2.3, CIP-007-3 R2.1, CIP-007-3 R2.2, CIP- │ │ │ │ 007-3 R2.3, CIP-007-3 R5.1, CIP-007-3 R5.1.1, CIP-007-3 R5.1.2 │ │ │ │ References: _n_i_s_t CM-7(a), CM-7(b), CM-6(a), AC-6, AC-6(1), MP-7 │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-2, PR.PT-3 │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ _c_i_s 1.1.3.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /var --mountoptions="nodev" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -29878,30 +29871,30 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /var --mountoptions="nodev" │ │ │ │ ****** RRuullee? ?  AAdddd nnoossuuiidd OOppttiioonn ttoo //vvaarr ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nosuid mount option can be used to prevent execution of setuid programs in /var. The SUID and SGID │ │ │ │ permissions should not be required for this directory. Add the nosuid option to the fourth column of /etc/ │ │ │ │ fstab for the line which controls mounting of /var. │ │ │ │ Rationale: The presence of SUID and SGID executables should be tightly controlled. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_mount_option_var_nosuid │ │ │ │ References: _a_n_s_s_i R28 │ │ │ │ _c_i_s 1.1.3.3 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /var --mountoptions="nosuid" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -30087,31 +30080,31 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /var --mountoptions="nosuid" │ │ │ │ ****** RRuullee? ?  AAdddd nnooddeevv OOppttiioonn ttoo //vvaarr//ttmmpp ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nodev mount option can be used to prevent device files from being created in /var/tmp. Legitimate │ │ │ │ character and block devices should not exist within temporary directories like /var/tmp. Add the nodev │ │ │ │ option to the fourth column of /etc/fstab for the line which controls mounting of /var/tmp. │ │ │ │ Rationale: The only legitimate location for device files is the /dev directory located on the root │ │ │ │ partition. The only exception to this is chroot jails. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_mount_option_var_tmp_nodev │ │ │ │ References: _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ _c_i_s 1.1.4.4 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /var/tmp --mountoptions="nodev" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -30298,31 +30291,31 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /var/tmp --mountoptions="nodev" │ │ │ │ ****** RRuullee? ?  AAdddd nnooeexxeecc OOppttiioonn ttoo //vvaarr//ttmmpp ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The noexec mount option can be used to prevent binaries from being executed out of /var/tmp. Add the │ │ │ │ noexec option to the fourth column of /etc/fstab for the line which controls mounting of /var/tmp. │ │ │ │ Rationale: Allowing users to execute binaries from world-writable directories such as /var/tmp should │ │ │ │ never be necessary in normal operation and can expose the system to potential compromise. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_mount_option_var_tmp_noexec │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ References: _a_n_s_s_i R28 │ │ │ │ _c_i_s 1.1.4.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /var/tmp --mountoptions="noexec" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -30510,32 +30503,32 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /var/tmp --mountoptions="noexec" │ │ │ │ ****** RRuullee? ?  AAdddd nnoossuuiidd OOppttiioonn ttoo //vvaarr//ttmmpp ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nosuid mount option can be used to prevent execution of setuid programs in /var/tmp. The SUID and SGID │ │ │ │ permissions should not be required in these world-writable directories. Add the nosuid option to the │ │ │ │ fourth column of /etc/fstab for the line which controls mounting of /var/tmp. │ │ │ │ Rationale: The presence of SUID and SGID executables should be tightly controlled. Users should not be │ │ │ │ able to execute SUID or SGID binaries from temporary storage partitions. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_mount_option_var_tmp_nosuid │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ References: _a_n_s_s_i R28 │ │ │ │ _c_i_s 1.1.4.3 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /var/tmp --mountoptions="nosuid" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -30723,14 +30716,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /var/tmp --mountoptions="nosuid" │ │ │ │ Group   Restrict Programs from Dangerous Execution Patterns   Group contains 2 groups and 4 rules │ │ │ │ _[_r_e_f_]   The recommendations in this section are designed to ensure that the system's features to protect │ │ │ │ against potentially dangerous program execution are activated. These protections are applied at the system │ │ │ │ initialization or kernel level, and defend against certain types of badly-configured or compromised │ │ │ │ programs. │ │ │ │ Group   Disable Core Dumps   Group contains 2 rules │ │ │ │ _[_r_e_f_]   A core dump file is the memory image of an executable program when it was terminated by the │ │ │ │ @@ -31602,38 +31602,14 @@ │ │ │ │ Security-enhanced Linux is a feature of the Linux kernel and a number of utilities with │ │ │ │ Rationale: enhanced security functionality designed to add mandatory access controls to Linux. The │ │ │ │ libselinux package contains the core library of the Security-enhanced Linux system. │ │ │ │ Severity:  high │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_libselinux_installed │ │ │ │ References: _c_i_s 1.6.1.1 │ │ │ │ _p_c_i_d_s_s_4 1.2.6, 1.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "libselinux" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -package --add=libselinux │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_libselinux │ │ │ │ - │ │ │ │ -class install_libselinux { │ │ │ │ - package { 'libselinux': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -31658,14 +31634,31 @@ │ │ │ │ - PCI-DSSv4-1.2.6 │ │ │ │ - enable_strategy │ │ │ │ - high_severity │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - package_libselinux_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_libselinux │ │ │ │ + │ │ │ │ +class install_libselinux { │ │ │ │ + package { 'libselinux': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "libselinux" │ │ │ │ +version = "*" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -31673,45 +31666,31 @@ │ │ │ │ if ! rpm -q --quiet "libselinux" ; then │ │ │ │ dnf install -y "libselinux" │ │ │ │ fi │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +package --add=libselinux │ │ │ │ ****** RRuullee? ?  UUnniinnssttaallll mmccssttrraannss PPaacckkaaggee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The mcstransd daemon provides category label information to client processes requesting information. The │ │ │ │ label translations are defined in /etc/selinux/targeted/setrans.conf. The mcstrans package can be removed │ │ │ │ with the following command: │ │ │ │ $ sudo dnf remove mcstrans │ │ │ │ Rationale: Since this service is not used very often, disable it to reduce the amount of potentially │ │ │ │ vulnerable code running on the system. │ │ │ │ Severity:  low │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_mcstrans_removed │ │ │ │ References: _c_i_s 1.6.1.8 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=mcstrans │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_mcstrans │ │ │ │ - │ │ │ │ -class remove_mcstrans { │ │ │ │ - package { 'mcstrans': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -31732,14 +31711,27 @@ │ │ │ │ tags: │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_mcstrans_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_mcstrans │ │ │ │ + │ │ │ │ +class remove_mcstrans { │ │ │ │ + package { 'mcstrans': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -31754,46 +31746,33 @@ │ │ │ │ if rpm -q --quiet "mcstrans" ; then │ │ │ │ dnf remove -y --noautoremove "mcstrans" │ │ │ │ fi │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=mcstrans │ │ │ │ ****** RRuullee? ?  UUnniinnssttaallll sseettrroouubblleesshhoooott PPaacckkaaggee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The SETroubleshoot service notifies desktop users of SELinux denials. The service provides information │ │ │ │ around configuration errors, unauthorized intrusions, and other potential errors. The setroubleshoot │ │ │ │ package can be removed with the following command: │ │ │ │ $ sudo dnf remove setroubleshoot │ │ │ │ Rationale: The SETroubleshoot service is an unnecessary daemon to have running on a server, especially if │ │ │ │ X Windows is removed or disabled. │ │ │ │ Severity:  low │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_setroubleshoot_removed │ │ │ │ References: _a_n_s_s_i R49 │ │ │ │ _c_i_s 1.6.1.7 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=setroubleshoot │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_setroubleshoot │ │ │ │ - │ │ │ │ -class remove_setroubleshoot { │ │ │ │ - package { 'setroubleshoot': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -31814,14 +31793,27 @@ │ │ │ │ tags: │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_setroubleshoot_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_setroubleshoot │ │ │ │ + │ │ │ │ +class remove_setroubleshoot { │ │ │ │ + package { 'setroubleshoot': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -31836,14 +31828,22 @@ │ │ │ │ if rpm -q --quiet "setroubleshoot" ; then │ │ │ │ dnf remove -y --noautoremove "setroubleshoot" │ │ │ │ fi │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=setroubleshoot │ │ │ │ ****** RRuullee? ?  EEnnssuurree SSEELLiinnuuxx NNoott DDiissaabblleedd iinn //eettcc//ddeeffaauulltt//ggrruubb ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ SELinux can be disabled at boot time by an argument in /etc/default/grub. Remove any instances of │ │ │ │ selinux=0 from the kernel arguments in that file to prevent SELinux from being disabled at boot. │ │ │ │ Disabling a major host protection feature, such as SELinux, at boot time prevents it from │ │ │ │ Rationale: confining system services at boot time. Further, it increases the chances that it will remain │ │ │ │ off during system operation. │ │ │ │ Severity:  medium │ │ │ │ @@ -32590,35 +32590,14 @@ │ │ │ │ References: SR 1.1, SR 1.10, SR 1.11, SR 1.12, SR 1.13, SR 1.2, SR 1.3, SR 1.4, SR 1.5, SR │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 1.6, SR 1.7, SR 1.8, SR 1.9, SR 2.1, SR 2.2, SR 2.3, SR 2.4, SR 2.5, SR 2.6, SR │ │ │ │ 2.7, SR 7.6 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.1.2, A.12.5.1, A.12.6.2, A.14.2.2, A.14.2.3, A.14.2.4, A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-3 │ │ │ │ _c_i_s 2.2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=avahi │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_avahi │ │ │ │ - │ │ │ │ -class remove_avahi { │ │ │ │ - package { 'avahi': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall avahi Server Package: Ensure avahi is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -32630,14 +32609,27 @@ │ │ │ │ - NIST-800-53-CM-7(b) │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_avahi_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_avahi │ │ │ │ + │ │ │ │ +class remove_avahi { │ │ │ │ + package { 'avahi': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove avahi │ │ │ │ @@ -32646,14 +32638,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "avahi" ; then │ │ │ │ dnf remove -y --noautoremove "avahi" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=avahi │ │ │ │ Group   Cron and At Daemons   Group contains 1 group and 28 rules │ │ │ │ _[_r_e_f_]   The cron and at services are used to allow commands to be executed at a later time. The cron │ │ │ │ service is required by almost all systems to perform necessary maintenance tasks, while at may or may not │ │ │ │ be required on a given system. Both daemons should be configured defensively. │ │ │ │ Group   Restrict at and cron to Authorized Users if Necessary   Group contains 9 rules │ │ │ │ _[_r_e_f_]   The /etc/cron.allow and /etc/at.allow files contain lists of users who are allowed to use cron and │ │ │ │ at to delay execution of processes. If these files exist and if the corresponding files /etc/cron.deny and │ │ │ │ @@ -33432,31 +33432,14 @@ │ │ │ │ SR 1.1, SR 1.10, SR 1.11, SR 1.12, SR 1.13, SR 1.2, SR 1.3, SR 1.4, SR 1.5, SR │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 1.6, SR 1.7, SR 1.8, SR 1.9, SR 2.1, SR 2.2, SR 2.3, SR 2.4, SR 2.5, SR 2.6, SR │ │ │ │ 2.7, SR 7.6 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.1.2, A.12.5.1, A.12.6.2, A.14.2.2, A.14.2.3, A.14.2.4, A.9.1.2 │ │ │ │ _n_i_s_t CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-3 │ │ │ │ _c_i_s 4.1.1 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -enabled = ["crond"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include enable_crond │ │ │ │ - │ │ │ │ -class enable_crond { │ │ │ │ - service {'crond': │ │ │ │ - enable => true, │ │ │ │ - ensure => 'running', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -33491,14 +33474,31 @@ │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_crond_enabled │ │ │ │ - special_service_block │ │ │ │ when: '"kernel" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include enable_crond │ │ │ │ + │ │ │ │ +class enable_crond { │ │ │ │ + service {'crond': │ │ │ │ + enable => true, │ │ │ │ + ensure => 'running', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +enabled = ["crond"] │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -35296,35 +35296,14 @@ │ │ │ │ 2.7, SR 7.6 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.1.2, A.12.5.1, A.12.6.2, A.14.2.2, A.14.2.3, A.14.2.4, A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-3 │ │ │ │ _a_n_s_s_i R62 │ │ │ │ _c_i_s 2.2.4 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=dhcp │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_dhcp │ │ │ │ - │ │ │ │ -class remove_dhcp { │ │ │ │ - package { 'dhcp': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall DHCP Server Package: Ensure dhcp is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -35338,14 +35317,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_dhcp_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_dhcp │ │ │ │ + │ │ │ │ +class remove_dhcp { │ │ │ │ + package { 'dhcp': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove dhcp │ │ │ │ @@ -35354,14 +35346,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "dhcp" ; then │ │ │ │ dnf remove -y --noautoremove "dhcp" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=dhcp │ │ │ │ Group   DNS Server   Group contains 1 group and 2 rules │ │ │ │ _[_r_e_f_]   Most organizations have an operational need to run at least one nameserver. However, there are many │ │ │ │ common attacks involving DNS server software, and this server software should be disabled on any system on │ │ │ │ which it is not needed. │ │ │ │ Group   Disable DNS Server   Group contains 1 rule │ │ │ │ _[_r_e_f_]   DNS software should be disabled on any systems which does not need to be a nameserver. Note that │ │ │ │ the BIND DNS server software is not installed on Amazon Linux 2023 by default. The remainder of this │ │ │ │ @@ -35383,35 +35383,14 @@ │ │ │ │ References: SR 1.1, SR 1.10, SR 1.11, SR 1.12, SR 1.13, SR 1.2, SR 1.3, SR 1.4, SR 1.5, SR │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 1.6, SR 1.7, SR 1.8, SR 1.9, SR 2.1, SR 2.2, SR 2.3, SR 2.4, SR 2.5, SR 2.6, SR │ │ │ │ 2.7, SR 7.6 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.1.2, A.12.5.1, A.12.6.2, A.14.2.2, A.14.2.3, A.14.2.4, A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-3 │ │ │ │ _c_i_s 2.2.5 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=bind │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_bind │ │ │ │ - │ │ │ │ -class remove_bind { │ │ │ │ - package { 'bind': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall bind Package: Ensure bind is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -35423,14 +35402,27 @@ │ │ │ │ - NIST-800-53-CM-7(b) │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_bind_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_bind │ │ │ │ + │ │ │ │ +class remove_bind { │ │ │ │ + package { 'bind': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove bind │ │ │ │ @@ -35439,61 +35431,61 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "bind" ; then │ │ │ │ dnf remove -y --noautoremove "bind" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=bind │ │ │ │ ****** RRuullee? ?  UUnniinnssttaallll ddnnssmmaassqq PPaacckkaaggee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ dnsmasq is a lightweight tool that provides DNS caching, DNS forwarding and DHCP (Dynamic Host │ │ │ │ Configuration Protocol) services. │ │ │ │ The dnsmasq package can be removed with the following command: │ │ │ │ $ sudo dnf remove dnsmasq │ │ │ │ Rationale: Unless a system is specifically designated to act as a DNS caching, DNS forwarding and/or DHCP │ │ │ │ server, it is recommended that the package be removed to reduce the potential attack surface. │ │ │ │ Severity:  low │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_dnsmasq_removed │ │ │ │ References: _c_i_s 2.2.14 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=dnsmasq │ │ │ │ +- name: 'Uninstall dnsmasq Package: Ensure dnsmasq is removed' │ │ │ │ + ansible.builtin.package: │ │ │ │ + name: dnsmasq │ │ │ │ + state: absent │ │ │ │ + tags: │ │ │ │ + - disable_strategy │ │ │ │ + - low_complexity │ │ │ │ + - low_disruption │ │ │ │ + - low_severity │ │ │ │ + - no_reboot_needed │ │ │ │ + - package_dnsmasq_removed │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ include remove_dnsmasq │ │ │ │ │ │ │ │ class remove_dnsmasq { │ │ │ │ package { 'dnsmasq': │ │ │ │ ensure => 'purged', │ │ │ │ } │ │ │ │ } │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ -- name: 'Uninstall dnsmasq Package: Ensure dnsmasq is removed' │ │ │ │ - ansible.builtin.package: │ │ │ │ - name: dnsmasq │ │ │ │ - state: absent │ │ │ │ - tags: │ │ │ │ - - disable_strategy │ │ │ │ - - low_complexity │ │ │ │ - - low_disruption │ │ │ │ - - low_severity │ │ │ │ - - no_reboot_needed │ │ │ │ - - package_dnsmasq_removed │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove dnsmasq │ │ │ │ @@ -35502,14 +35494,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "dnsmasq" ; then │ │ │ │ dnf remove -y --noautoremove "dnsmasq" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=dnsmasq │ │ │ │ Group   FTP Server   Group contains 1 group and 2 rules │ │ │ │ _[_r_e_f_]   FTP is a common method for allowing remote access to files. Like telnet, the FTP protocol is │ │ │ │ unencrypted, which means that passwords and other data transmitted during the session can be captured and │ │ │ │ that the session is vulnerable to hijacking. Therefore, running the FTP server software is not recommended. │ │ │ │ │ │ │ │ │ │ │ │ However, there are some FTP server configurations which may be appropriate for some environments, │ │ │ │ @@ -35533,35 +35533,14 @@ │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 1.6, SR 1.7, SR 1.8, SR 1.9, SR 2.1, SR 2.2, SR 2.3, SR 2.4, SR 2.5, SR 2.6, SR │ │ │ │ 2.7, SR 7.6 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.1.2, A.12.5.1, A.12.6.2, A.14.2.2, A.14.2.3, A.14.2.4, A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a), IA-5(1)(c), IA-5(1).1(v), CM-7, CM-7.1(ii) │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-3 │ │ │ │ _o_s_-_s_r_g SRG-OS-000074-GPOS-00042, SRG-OS-000095-GPOS-00049, SRG-OS-000480-GPOS-00227 │ │ │ │ _c_i_s 2.2.6 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=vsftpd │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_vsftpd │ │ │ │ - │ │ │ │ -class remove_vsftpd { │ │ │ │ - package { 'vsftpd': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall vsftpd Package: Ensure vsftpd is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -35577,14 +35556,27 @@ │ │ │ │ - NIST-800-53-IA-5(1).1(v) │ │ │ │ - disable_strategy │ │ │ │ - high_severity │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - package_vsftpd_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_vsftpd │ │ │ │ + │ │ │ │ +class remove_vsftpd { │ │ │ │ + package { 'vsftpd': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove vsftpd │ │ │ │ @@ -35593,49 +35585,36 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "vsftpd" ; then │ │ │ │ dnf remove -y --noautoremove "vsftpd" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=vsftpd │ │ │ │ ****** RRuullee? ?  RReemmoovvee ffttpp PPaacckkaaggee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ FTP (File Transfer Protocol) is a traditional and widely used standard tool for transferring files between │ │ │ │ a server and clients over a network, especially where no authentication is necessary (permits anonymous │ │ │ │ users to connect to a server). │ │ │ │ The ftp package can be removed with the following command: │ │ │ │ $ sudo dnf remove ftp │ │ │ │ FTP does not protect the confidentiality of data or authentication credentials. It is │ │ │ │ Rationale: recommended SFTP be used if file transfer is required. Unless there is a need to run the system │ │ │ │ as a FTP server (for example, to allow anonymous downloads), it is recommended that the package │ │ │ │ be removed to reduce the potential attack surface. │ │ │ │ Severity:  low │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_ftp_removed │ │ │ │ References: _c_i_s 2.3.3 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=ftp │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_ftp │ │ │ │ - │ │ │ │ -class remove_ftp { │ │ │ │ - package { 'ftp': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Remove ftp Package: Ensure ftp is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -35646,14 +35625,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_ftp_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_ftp │ │ │ │ + │ │ │ │ +class remove_ftp { │ │ │ │ + package { 'ftp': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove ftp │ │ │ │ @@ -35662,14 +35654,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "ftp" ; then │ │ │ │ dnf remove -y --noautoremove "ftp" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=ftp │ │ │ │ Group   Web Server   Group contains 2 groups and 2 rules │ │ │ │ _[_r_e_f_]   The web server is responsible for providing access to content via the HTTP protocol. Web servers │ │ │ │ represent a significant security risk because: │ │ │ │ │ │ │ │ * The HTTP port is commonly probed by malicious sources │ │ │ │ * Web server software is very complex, and includes a long history of vulnerabilities │ │ │ │ * The HTTP protocol is unencrypted and vulnerable to passive monitoring │ │ │ │ @@ -35695,35 +35695,14 @@ │ │ │ │ References: SR 1.1, SR 1.10, SR 1.11, SR 1.12, SR 1.13, SR 1.2, SR 1.3, SR 1.4, SR 1.5, SR │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 1.6, SR 1.7, SR 1.8, SR 1.9, SR 2.1, SR 2.2, SR 2.3, SR 2.4, SR 2.5, SR 2.6, SR │ │ │ │ 2.7, SR 7.6 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.1.2, A.12.5.1, A.12.6.2, A.14.2.2, A.14.2.3, A.14.2.4, A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-3 │ │ │ │ _c_i_s 2.2.8 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=httpd │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_httpd │ │ │ │ - │ │ │ │ -class remove_httpd { │ │ │ │ - package { 'httpd': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall httpd Package: Ensure httpd is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -35735,14 +35714,27 @@ │ │ │ │ - NIST-800-53-CM-7(b) │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - package_httpd_removed │ │ │ │ - unknown_severity │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_httpd │ │ │ │ + │ │ │ │ +class remove_httpd { │ │ │ │ + package { 'httpd': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove httpd │ │ │ │ @@ -35751,14 +35743,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "httpd" ; then │ │ │ │ dnf remove -y --noautoremove "httpd" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=httpd │ │ │ │ Group   Disable NGINX if Possible   Group contains 1 rule │ │ │ │ _[_r_e_f_]   If NGINX was installed and activated, but the system does not need to act as a web server, then it │ │ │ │ should be removed from the system. │ │ │ │ ****** RRuullee? ?  UUnniinnssttaallll nnggiinnxx PPaacckkaaggee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nginx package can be removed with the following command: │ │ │ │ $ sudo dnf remove nginx │ │ │ │ Rationale: If there is no need to make the web server software available, removing it provides a safeguard │ │ │ │ @@ -35773,35 +35773,14 @@ │ │ │ │ References: SR 1.1, SR 1.10, SR 1.11, SR 1.12, SR 1.13, SR 1.2, SR 1.3, SR 1.4, SR 1.5, SR │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 1.6, SR 1.7, SR 1.8, SR 1.9, SR 2.1, SR 2.2, SR 2.3, SR 2.4, SR 2.5, SR 2.6, SR │ │ │ │ 2.7, SR 7.6 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.1.2, A.12.5.1, A.12.6.2, A.14.2.2, A.14.2.3, A.14.2.4, A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-3 │ │ │ │ _c_i_s 2.2.8 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=nginx │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_nginx │ │ │ │ - │ │ │ │ -class remove_nginx { │ │ │ │ - package { 'nginx': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall nginx Package: Ensure nginx is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -35813,14 +35792,27 @@ │ │ │ │ - NIST-800-53-CM-7(b) │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - package_nginx_removed │ │ │ │ - unknown_severity │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_nginx │ │ │ │ + │ │ │ │ +class remove_nginx { │ │ │ │ + package { 'nginx': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove nginx │ │ │ │ @@ -35829,65 +35821,65 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "nginx" ; then │ │ │ │ dnf remove -y --noautoremove "nginx" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=nginx │ │ │ │ Group   IMAP and POP3 Server   Group contains 2 groups and 2 rules │ │ │ │ _[_r_e_f_]   Dovecot provides IMAP and POP3 services. It is not installed by default. The project page at _h_t_t_p_:_/ │ │ │ │ _/_w_w_w_._d_o_v_e_c_o_t_._o_r_g contains more detailed information about Dovecot configuration. │ │ │ │ Group   Disable Cyrus IMAP   Group contains 1 rule │ │ │ │ _[_r_e_f_]   If the system does not need to operate as an IMAP or POP3 server, the Cyrus IMAP software should be │ │ │ │ removed. │ │ │ │ ****** RRuullee? ?  UUnniinnssttaallll ccyyrruuss--iimmaappdd PPaacckkaaggee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The cyrus-imapd package can be removed with the following command: │ │ │ │ $ sudo dnf remove cyrus-imapd │ │ │ │ Rationale: If there is no need to make the cyrus-imapd software available, removing it provides a │ │ │ │ safeguard against its activation. │ │ │ │ Severity:  unknown │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_cyrus-imapd_removed │ │ │ │ References: _c_i_s 2.2.9 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=cyrus-imapd │ │ │ │ +- name: 'Uninstall cyrus-imapd Package: Ensure cyrus-imapd is removed' │ │ │ │ + ansible.builtin.package: │ │ │ │ + name: cyrus-imapd │ │ │ │ + state: absent │ │ │ │ + tags: │ │ │ │ + - disable_strategy │ │ │ │ + - low_complexity │ │ │ │ + - low_disruption │ │ │ │ + - no_reboot_needed │ │ │ │ + - package_cyrus-imapd_removed │ │ │ │ + - unknown_severity │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ include remove_cyrus-imapd │ │ │ │ │ │ │ │ class remove_cyrus-imapd { │ │ │ │ package { 'cyrus-imapd': │ │ │ │ ensure => 'purged', │ │ │ │ } │ │ │ │ } │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ -- name: 'Uninstall cyrus-imapd Package: Ensure cyrus-imapd is removed' │ │ │ │ - ansible.builtin.package: │ │ │ │ - name: cyrus-imapd │ │ │ │ - state: absent │ │ │ │ - tags: │ │ │ │ - - disable_strategy │ │ │ │ - - low_complexity │ │ │ │ - - low_disruption │ │ │ │ - - no_reboot_needed │ │ │ │ - - package_cyrus-imapd_removed │ │ │ │ - - unknown_severity │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove cyrus-imapd │ │ │ │ @@ -35896,62 +35888,62 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "cyrus-imapd" ; then │ │ │ │ dnf remove -y --noautoremove "cyrus-imapd" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=cyrus-imapd │ │ │ │ Group   Disable Dovecot   Group contains 1 rule │ │ │ │ _[_r_e_f_]   If the system does not need to operate as an IMAP or POP3 server, the dovecot software should be │ │ │ │ disabled and removed. │ │ │ │ ****** RRuullee? ?  UUnniinnssttaallll ddoovveeccoott PPaacckkaaggee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The dovecot package can be removed with the following command: │ │ │ │ $ sudo dnf remove dovecot │ │ │ │ Rationale: If there is no need to make the Dovecot software available, removing it provides a safeguard │ │ │ │ against its activation. │ │ │ │ Severity:  unknown │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_dovecot_removed │ │ │ │ References: _c_i_s 2.2.9 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=dovecot │ │ │ │ +- name: 'Uninstall dovecot Package: Ensure dovecot is removed' │ │ │ │ + ansible.builtin.package: │ │ │ │ + name: dovecot │ │ │ │ + state: absent │ │ │ │ + tags: │ │ │ │ + - disable_strategy │ │ │ │ + - low_complexity │ │ │ │ + - low_disruption │ │ │ │ + - no_reboot_needed │ │ │ │ + - package_dovecot_removed │ │ │ │ + - unknown_severity │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ include remove_dovecot │ │ │ │ │ │ │ │ class remove_dovecot { │ │ │ │ package { 'dovecot': │ │ │ │ ensure => 'purged', │ │ │ │ } │ │ │ │ } │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ -- name: 'Uninstall dovecot Package: Ensure dovecot is removed' │ │ │ │ - ansible.builtin.package: │ │ │ │ - name: dovecot │ │ │ │ - state: absent │ │ │ │ - tags: │ │ │ │ - - disable_strategy │ │ │ │ - - low_complexity │ │ │ │ - - low_disruption │ │ │ │ - - no_reboot_needed │ │ │ │ - - package_dovecot_removed │ │ │ │ - - unknown_severity │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove dovecot │ │ │ │ @@ -35960,14 +35952,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "dovecot" ; then │ │ │ │ dnf remove -y --noautoremove "dovecot" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=dovecot │ │ │ │ Group   LDAP   Group contains 1 group and 1 rule │ │ │ │ _[_r_e_f_]   LDAP is a popular directory service, that is, a standardized way of looking up information from a │ │ │ │ central database. Amazon Linux 2023 includes software that enables a system to act as both an LDAP client │ │ │ │ and server. │ │ │ │ Group   Configure OpenLDAP Clients   Group contains 1 rule │ │ │ │ _[_r_e_f_]   This section provides information on which security settings are important to configure in OpenLDAP │ │ │ │ clients by manually editing the appropriate configuration files. Amazon Linux 2023 provides an automated │ │ │ │ @@ -35984,51 +35984,43 @@ │ │ │ │ command: │ │ │ │ $ sudo dnf remove openldap-clients │ │ │ │ Rationale: If the system does not need to act as an LDAP client, it is recommended that the software is │ │ │ │ removed to reduce the potential attack surface. │ │ │ │ Severity:  low │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_openldap-clients_removed │ │ │ │ References: _c_i_s 2.3.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=openldap-clients │ │ │ │ +- name: 'Ensure LDAP client is not installed: Ensure openldap-clients is removed' │ │ │ │ + ansible.builtin.package: │ │ │ │ + name: openldap-clients │ │ │ │ + state: absent │ │ │ │ + tags: │ │ │ │ + - disable_strategy │ │ │ │ + - low_complexity │ │ │ │ + - low_disruption │ │ │ │ + - low_severity │ │ │ │ + - no_reboot_needed │ │ │ │ + - package_openldap-clients_removed │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ include remove_openldap-clients │ │ │ │ │ │ │ │ class remove_openldap-clients { │ │ │ │ package { 'openldap-clients': │ │ │ │ ensure => 'purged', │ │ │ │ } │ │ │ │ } │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ -- name: 'Ensure LDAP client is not installed: Ensure openldap-clients is removed' │ │ │ │ - ansible.builtin.package: │ │ │ │ - name: openldap-clients │ │ │ │ - state: absent │ │ │ │ - tags: │ │ │ │ - - disable_strategy │ │ │ │ - - low_complexity │ │ │ │ - - low_disruption │ │ │ │ - - low_severity │ │ │ │ - - no_reboot_needed │ │ │ │ - - package_openldap-clients_removed │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove openldap-clients │ │ │ │ @@ -36037,14 +36029,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "openldap-clients" ; then │ │ │ │ dnf remove -y --noautoremove "openldap-clients" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=openldap-clients │ │ │ │ Group   Mail Server Software   Group contains 1 group and 2 rules │ │ │ │ _[_r_e_f_]   Mail servers are used to send and receive email over the network. Mail is a very common service, │ │ │ │ and Mail Transfer Agents (MTAs) are obvious targets of network attack. Ensure that systems are not running │ │ │ │ MTAs unnecessarily, and configure needed MTAs as defensively as possible. │ │ │ │ │ │ │ │ Very few systems at any site should be configured to directly receive email over the network. Users should │ │ │ │ instead use mail client programs to retrieve email from a central server that supports protocols such as │ │ │ │ @@ -36212,31 +36212,14 @@ │ │ │ │ $ sudo systemctl mask --now rpcbind.service │ │ │ │ Rationale: If the system does not require rpc based services, it is recommended that rpcbind be disabled │ │ │ │ to reduce the attack surface. │ │ │ │ Severity:  low │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_service_rpcbind_disabled │ │ │ │ References: _c_i_s 2.2.17 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -masked = ["rpcbind"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include disable_rpcbind │ │ │ │ - │ │ │ │ -class disable_rpcbind { │ │ │ │ - service {'rpcbind': │ │ │ │ - enable => false, │ │ │ │ - ensure => 'stopped', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -36290,14 +36273,31 @@ │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_rpcbind_disabled │ │ │ │ - special_service_block │ │ │ │ when: '"kernel" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include disable_rpcbind │ │ │ │ + │ │ │ │ +class disable_rpcbind { │ │ │ │ + service {'rpcbind': │ │ │ │ + enable => false, │ │ │ │ + ensure => 'stopped', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +masked = ["rpcbind"] │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -36345,31 +36345,14 @@ │ │ │ │ References: SR 1.1, SR 1.10, SR 1.11, SR 1.12, SR 1.13, SR 1.2, SR 1.3, SR 1.4, SR 1.5, SR │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 1.6, SR 1.7, SR 1.8, SR 1.9, SR 2.1, SR 2.2, SR 2.3, SR 2.4, SR 2.5, SR 2.6, SR │ │ │ │ 2.7 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.6.1.2, A.7.1.1, A.9.1.2, A.9.2.1, A.9.2.3, A.9.4.1, A.9.4.4, A.9.4.5 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-4, PR.AC-6, PR.PT-3 │ │ │ │ _c_i_s 2.2.16 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -masked = ["nfs-server"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include disable_nfs-server │ │ │ │ - │ │ │ │ -class disable_nfs-server { │ │ │ │ - service {'nfs-server': │ │ │ │ - enable => false, │ │ │ │ - ensure => 'stopped', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -36426,14 +36409,31 @@ │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - service_nfs_disabled │ │ │ │ - special_service_block │ │ │ │ - unknown_severity │ │ │ │ when: '"kernel" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include disable_nfs-server │ │ │ │ + │ │ │ │ +class disable_nfs-server { │ │ │ │ + service {'nfs-server': │ │ │ │ + enable => false, │ │ │ │ + ensure => 'stopped', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +masked = ["nfs-server"] │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -37146,35 +37146,14 @@ │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-3, PR.IP-1, PR.PT-3, PR.PT-4 │ │ │ │ _p_c_i_d_s_s Req-2.2.2 │ │ │ │ _o_s_-_s_r_g SRG-OS-000095-GPOS-00049 │ │ │ │ _a_n_s_s_i R62 │ │ │ │ _c_i_s 2.2.13 │ │ │ │ _i_s_m 1409 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=telnet-server │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_telnet-server │ │ │ │ - │ │ │ │ -class remove_telnet-server { │ │ │ │ - package { 'telnet-server': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall telnet-server Package: Ensure telnet-server is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -37189,14 +37168,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - high_severity │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - package_telnet-server_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_telnet-server │ │ │ │ + │ │ │ │ +class remove_telnet-server { │ │ │ │ + package { 'telnet-server': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove telnet-server │ │ │ │ @@ -37205,14 +37197,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "telnet-server" ; then │ │ │ │ dnf remove -y --noautoremove "telnet-server" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=telnet-server │ │ │ │ ****** RRuullee? ?  RReemmoovvee tteellnneett CClliieennttss ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The telnet client allows users to start connections to other systems via the telnet protocol. │ │ │ │ The telnet protocol is insecure and unencrypted. The use of an unencrypted transmission medium │ │ │ │ Rationale: could allow an unauthorized user to steal credentials. The ssh package provides an encrypted │ │ │ │ session and stronger security and is included in Amazon Linux 2023. │ │ │ │ Severity:  low │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_telnet_removed │ │ │ │ @@ -37220,35 +37220,14 @@ │ │ │ │ _h_i_p_a_a 164.308(a)(4)(i), 164.308(b)(1), 164.308(b)(3), 164.310(b), 164.312(e)(1), │ │ │ │ 164.312(e)(2)(ii) │ │ │ │ References: _i_s_o_2_7_0_0_1_-_2_0_1_3 A.8.2.3, A.13.1.1, A.13.2.1, A.13.2.3, A.14.1.2, A.14.1.3 │ │ │ │ _a_n_s_s_i R62 │ │ │ │ _c_i_s 2.3.1 │ │ │ │ _i_s_m 1409 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=telnet │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_telnet │ │ │ │ - │ │ │ │ -class remove_telnet { │ │ │ │ - package { 'telnet': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Remove telnet Clients: Ensure telnet is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -37260,14 +37239,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_telnet_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_telnet │ │ │ │ + │ │ │ │ +class remove_telnet { │ │ │ │ + package { 'telnet': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove telnet │ │ │ │ @@ -37276,14 +37268,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "telnet" ; then │ │ │ │ dnf remove -y --noautoremove "telnet" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=telnet │ │ │ │ Group   TFTP Server   Group contains 1 rule │ │ │ │ _[_r_e_f_]   TFTP is a lightweight version of the FTP protocol which has traditionally been used to configure │ │ │ │ networking equipment. However, TFTP provides little security, and modern versions of networking operating │ │ │ │ systems frequently support configuration via SSH or other more secure protocols. A TFTP server should be │ │ │ │ run only if no more secure method of supporting existing equipment can be found. │ │ │ │ ****** RRuullee? ?  UUnniinnssttaallll ttffttpp--sseerrvveerr PPaacckkaaggee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The tftp-server package can be removed with the following command: │ │ │ │ @@ -37311,35 +37311,14 @@ │ │ │ │ A.14.2.3, A.14.2.4, A.6.2.1, A.6.2.2, A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-3, PR.IP-1, PR.PT-3, PR.PT-4 │ │ │ │ _o_s_-_s_r_g SRG-OS-000480-GPOS-00227 │ │ │ │ _a_n_s_s_i R62 │ │ │ │ _c_i_s 2.2.7 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=tftp-server │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_tftp-server │ │ │ │ - │ │ │ │ -class remove_tftp-server { │ │ │ │ - package { 'tftp-server': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall tftp-server Package: Ensure tftp-server is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -37353,14 +37332,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - high_severity │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - package_tftp-server_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_tftp-server │ │ │ │ + │ │ │ │ +class remove_tftp-server { │ │ │ │ + package { 'tftp-server': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove tftp-server │ │ │ │ @@ -37369,59 +37361,59 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "tftp-server" ; then │ │ │ │ dnf remove -y --noautoremove "tftp-server" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=tftp-server │ │ │ │ ****** RRuullee? ?  UUnniinnssttaallll rrssyynncc PPaacckkaaggee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The rsyncd service can be used to synchronize files between systems over network links. The rsync package │ │ │ │ can be removed with the following command: │ │ │ │ $ sudo dnf remove rsync │ │ │ │ Rationale: The rsyncd service presents a security risk as it uses unencrypted protocols for communication. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_rsync_removed │ │ │ │ References: _c_i_s 2.2.18 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=rsync │ │ │ │ +- name: 'Uninstall rsync Package: Ensure rsync is removed' │ │ │ │ + ansible.builtin.package: │ │ │ │ + name: rsync │ │ │ │ + state: absent │ │ │ │ + tags: │ │ │ │ + - disable_strategy │ │ │ │ + - low_complexity │ │ │ │ + - low_disruption │ │ │ │ + - medium_severity │ │ │ │ + - no_reboot_needed │ │ │ │ + - package_rsync_removed │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ include remove_rsync │ │ │ │ │ │ │ │ class remove_rsync { │ │ │ │ package { 'rsync': │ │ │ │ ensure => 'purged', │ │ │ │ } │ │ │ │ } │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ -- name: 'Uninstall rsync Package: Ensure rsync is removed' │ │ │ │ - ansible.builtin.package: │ │ │ │ - name: rsync │ │ │ │ - state: absent │ │ │ │ - tags: │ │ │ │ - - disable_strategy │ │ │ │ - - low_complexity │ │ │ │ - - low_disruption │ │ │ │ - - medium_severity │ │ │ │ - - no_reboot_needed │ │ │ │ - - package_rsync_removed │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove rsync │ │ │ │ @@ -37430,14 +37422,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "rsync" ; then │ │ │ │ dnf remove -y --noautoremove "rsync" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=rsync │ │ │ │ Group   Print Support   Group contains 1 rule │ │ │ │ _[_r_e_f_]   The Common Unix Printing System (CUPS) service provides both local and network printing support. A │ │ │ │ system running the CUPS service can accept print jobs from other systems, process them, and send them to │ │ │ │ the appropriate printer. It also provides an interface for remote administration through a web browser. The │ │ │ │ CUPS service is installed and activated by default. The project homepage and more detailed documentation │ │ │ │ are available at _h_t_t_p_:_/_/_w_w_w_._c_u_p_s_._o_r_g. │ │ │ │ │ │ │ │ @@ -37457,35 +37457,14 @@ │ │ │ │ References: SR 1.1, SR 1.10, SR 1.11, SR 1.12, SR 1.13, SR 1.2, SR 1.3, SR 1.4, SR 1.5, SR │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 1.6, SR 1.7, SR 1.8, SR 1.9, SR 2.1, SR 2.2, SR 2.3, SR 2.4, SR 2.5, SR 2.6, SR │ │ │ │ 2.7, SR 7.6 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.1.2, A.12.5.1, A.12.6.2, A.14.2.2, A.14.2.3, A.14.2.4, A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-3 │ │ │ │ _c_i_s 2.2.3 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=cups │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_cups │ │ │ │ - │ │ │ │ -class remove_cups { │ │ │ │ - package { 'cups': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall CUPS Package: Ensure cups is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -37497,14 +37476,27 @@ │ │ │ │ - NIST-800-53-CM-7(b) │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - package_cups_removed │ │ │ │ - unknown_severity │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_cups │ │ │ │ + │ │ │ │ +class remove_cups { │ │ │ │ + package { 'cups': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove cups │ │ │ │ @@ -37513,14 +37505,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "cups" ; then │ │ │ │ dnf remove -y --noautoremove "cups" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=cups │ │ │ │ Group   Proxy Server   Group contains 1 group and 1 rule │ │ │ │ _[_r_e_f_]   A proxy server is a very desirable target for a potential adversary because much (or all) sensitive │ │ │ │ data for a given infrastructure may flow through it. Therefore, if one is required, the system acting as a │ │ │ │ proxy server should be dedicated to that purpose alone and be stored in a physically secure location. The │ │ │ │ system's default proxy server software is Squid, and provided in an RPM package of the same name. │ │ │ │ Group   Disable Squid if Possible   Group contains 1 rule │ │ │ │ _[_r_e_f_]   If Squid was installed and activated, but the system does not need to act as a proxy server, then │ │ │ │ @@ -37530,51 +37530,43 @@ │ │ │ │ $ sudo dnf remove squid │ │ │ │ Rationale: If there is no need to make the proxy server software available, removing it provides a │ │ │ │ safeguard against its activation. │ │ │ │ Severity:  unknown │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_squid_removed │ │ │ │ References: _c_i_s 2.2.11 │ │ │ │ _i_s_m 1409 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=squid │ │ │ │ +- name: 'Uninstall squid Package: Ensure squid is removed' │ │ │ │ + ansible.builtin.package: │ │ │ │ + name: squid │ │ │ │ + state: absent │ │ │ │ + tags: │ │ │ │ + - disable_strategy │ │ │ │ + - low_complexity │ │ │ │ + - low_disruption │ │ │ │ + - no_reboot_needed │ │ │ │ + - package_squid_removed │ │ │ │ + - unknown_severity │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ include remove_squid │ │ │ │ │ │ │ │ class remove_squid { │ │ │ │ package { 'squid': │ │ │ │ ensure => 'purged', │ │ │ │ } │ │ │ │ } │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ -- name: 'Uninstall squid Package: Ensure squid is removed' │ │ │ │ - ansible.builtin.package: │ │ │ │ - name: squid │ │ │ │ - state: absent │ │ │ │ - tags: │ │ │ │ - - disable_strategy │ │ │ │ - - low_complexity │ │ │ │ - - low_disruption │ │ │ │ - - no_reboot_needed │ │ │ │ - - package_squid_removed │ │ │ │ - - unknown_severity │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove squid │ │ │ │ @@ -37583,14 +37575,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "squid" ; then │ │ │ │ dnf remove -y --noautoremove "squid" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=squid │ │ │ │ Group   Samba(SMB) Microsoft Windows File Sharing Server   Group contains 1 group and 1 rule │ │ │ │ _[_r_e_f_]   When properly configured, the Samba service allows Linux systems to provide file and print sharing │ │ │ │ to Microsoft Windows systems. There are two software packages that provide Samba support. The first, samba- │ │ │ │ client, provides a series of command line tools that enable a client system to access Samba shares. The │ │ │ │ second, simply labeled samba, provides the Samba service. It is this second package that allows a Linux │ │ │ │ system to act as an Active Directory server, a domain controller, or as a domain member. Only the samba- │ │ │ │ client package is installed by default. │ │ │ │ @@ -37602,51 +37602,43 @@ │ │ │ │ The samba package can be removed with the following command: │ │ │ │ $ sudo dnf remove samba │ │ │ │ Rationale: If there is no need to make the Samba software available, removing it provides a safeguard │ │ │ │ against its activation. │ │ │ │ Severity:  unknown │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_samba_removed │ │ │ │ References: _c_i_s 2.2.10 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=samba │ │ │ │ +- name: 'Uninstall Samba Package: Ensure samba is removed' │ │ │ │ + ansible.builtin.package: │ │ │ │ + name: samba │ │ │ │ + state: absent │ │ │ │ + tags: │ │ │ │ + - disable_strategy │ │ │ │ + - low_complexity │ │ │ │ + - low_disruption │ │ │ │ + - no_reboot_needed │ │ │ │ + - package_samba_removed │ │ │ │ + - unknown_severity │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ include remove_samba │ │ │ │ │ │ │ │ class remove_samba { │ │ │ │ package { 'samba': │ │ │ │ ensure => 'purged', │ │ │ │ } │ │ │ │ } │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ -- name: 'Uninstall Samba Package: Ensure samba is removed' │ │ │ │ - ansible.builtin.package: │ │ │ │ - name: samba │ │ │ │ - state: absent │ │ │ │ - tags: │ │ │ │ - - disable_strategy │ │ │ │ - - low_complexity │ │ │ │ - - low_disruption │ │ │ │ - - no_reboot_needed │ │ │ │ - - package_samba_removed │ │ │ │ - - unknown_severity │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove samba │ │ │ │ @@ -37655,14 +37647,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "samba" ; then │ │ │ │ dnf remove -y --noautoremove "samba" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=samba │ │ │ │ Group   SNMP Server   Group contains 1 group and 2 rules │ │ │ │ _[_r_e_f_]   The Simple Network Management Protocol allows administrators to monitor the state of network │ │ │ │ devices, including computers. Older versions of SNMP were well-known for weak security, such as plaintext │ │ │ │ transmission of the community string (used for authentication) and usage of easily-guessable choices for │ │ │ │ the community string. │ │ │ │ Group   Disable SNMP Server if Possible   Group contains 2 rules │ │ │ │ _[_r_e_f_]   The system includes an SNMP daemon that allows for its remote monitoring, though it not installed │ │ │ │ @@ -37674,35 +37674,14 @@ │ │ │ │ $ sudo dnf remove net-snmp │ │ │ │ Rationale: If there is no need to run SNMP server software, removing the package provides a safeguard │ │ │ │ against its activation. │ │ │ │ Severity:  unknown │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_net-snmp_removed │ │ │ │ References: _c_i_s 2.2.12 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=net-snmp │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_net-snmp │ │ │ │ - │ │ │ │ -class remove_net-snmp { │ │ │ │ - package { 'net-snmp': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall net-snmp Package: Ensure net-snmp is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -37713,14 +37692,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - package_net-snmp_removed │ │ │ │ - unknown_severity │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_net-snmp │ │ │ │ + │ │ │ │ +class remove_net-snmp { │ │ │ │ + package { 'net-snmp': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove net-snmp │ │ │ │ @@ -37729,40 +37721,31 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "net-snmp" ; then │ │ │ │ dnf remove -y --noautoremove "net-snmp" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=net-snmp │ │ │ │ ****** RRuullee? ?  DDiissaabbllee ssnnmmppdd SSeerrvviiccee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The snmpd service can be disabled with the following command: │ │ │ │ $ sudo systemctl mask --now snmpd.service │ │ │ │ Rationale: Running SNMP software provides a network-based avenue of attack, and should be disabled if not │ │ │ │ needed. │ │ │ │ Severity:  low │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_service_snmpd_disabled │ │ │ │ References: _c_i_s 2.2.12 │ │ │ │ _i_s_m 1311 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -masked = ["snmpd"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include disable_snmpd │ │ │ │ - │ │ │ │ -class disable_snmpd { │ │ │ │ - service {'snmpd': │ │ │ │ - enable => false, │ │ │ │ - ensure => 'stopped', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -37813,14 +37796,31 @@ │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_snmpd_disabled │ │ │ │ - special_service_block │ │ │ │ when: ( "net-snmp" in ansible_facts.packages and "kernel" in ansible_facts.packages │ │ │ │ ) │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include disable_snmpd │ │ │ │ + │ │ │ │ +class disable_snmpd { │ │ │ │ + service {'snmpd': │ │ │ │ + enable => false, │ │ │ │ + ensure => 'stopped', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +masked = ["snmpd"] │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if ( ( rpm --quiet -q net-snmp && rpm --quiet -q kernel ) ); then │ │ │ │ @@ -42053,23 +42053,14 @@ │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-4, PR.DS-5 │ │ │ │ _p_c_i_d_s_s Req-2.2.4 │ │ │ │ _o_s_-_s_r_g SRG-OS-000480-GPOS-00227 │ │ │ │ _a_n_s_s_i R50 │ │ │ │ _c_i_s 4.2.2 │ │ │ │ _i_s_m 1449 │ │ │ │ _p_c_i_d_s_s_4 2.2.6, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -include ssh_private_key_perms │ │ │ │ - │ │ │ │ -class ssh_private_key_perms { │ │ │ │ - exec { 'sshd_priv_key': │ │ │ │ - command => "chmod 0640 /etc/ssh/*_key", │ │ │ │ - path => '/bin:/usr/bin' │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -42181,14 +42172,23 @@ │ │ │ │ - PCI-DSSv4-2.2.6 │ │ │ │ - configure_strategy │ │ │ │ - file_permissions_sshd_private_key │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +include ssh_private_key_perms │ │ │ │ + │ │ │ │ +class ssh_private_key_perms { │ │ │ │ + exec { 'sshd_priv_key': │ │ │ │ + command => "chmod 0640 /etc/ssh/*_key", │ │ │ │ + path => '/bin:/usr/bin' │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ │ │ │ │ for keyfile in /etc/ssh/*_key; do │ │ │ │ test -f "$keyfile" || continue │ │ │ │ if test root:root = "$(stat -c "%U:%G" "$keyfile")"; then │ │ │ │ @@ -42227,23 +42227,14 @@ │ │ │ │ _n_i_s_t AC-17(a), CM-6(a), AC-6(1) │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-4, PR.DS-5 │ │ │ │ _p_c_i_d_s_s Req-2.2.4 │ │ │ │ _o_s_-_s_r_g SRG-OS-000480-GPOS-00227 │ │ │ │ _a_n_s_s_i R50 │ │ │ │ _c_i_s 4.2.3 │ │ │ │ _p_c_i_d_s_s_4 2.2.6, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -include ssh_public_key_perms │ │ │ │ - │ │ │ │ -class ssh_public_key_perms { │ │ │ │ - exec { 'sshd_pub_key': │ │ │ │ - command => "chmod 0644 /etc/ssh/*.pub", │ │ │ │ - path => '/bin:/usr/bin' │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -42307,14 +42298,23 @@ │ │ │ │ - PCI-DSSv4-2.2.6 │ │ │ │ - configure_strategy │ │ │ │ - file_permissions_sshd_pub_key │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +include ssh_public_key_perms │ │ │ │ + │ │ │ │ +class ssh_public_key_perms { │ │ │ │ + exec { 'sshd_pub_key': │ │ │ │ + command => "chmod 0644 /etc/ssh/*.pub", │ │ │ │ + path => '/bin:/usr/bin' │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -42355,35 +42355,14 @@ │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 SR 1.13, SR 2.6, SR 3.1, SR 3.5, SR 3.8, SR 4.1, SR 4.3, SR 5.1, SR 5.2, SR 5.3, │ │ │ │ References: SR 7.1, SR 7.6 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.11.2.6, A.13.1.1, A.13.2.1, A.14.1.3, A.6.2.1, A.6.2.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-3, PR.PT-4 │ │ │ │ _o_s_-_s_r_g SRG-OS-000480-GPOS-00227 │ │ │ │ _c_i_s 2.2.1 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=xorg-x11-server-common │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_xorg-x11-server-common │ │ │ │ - │ │ │ │ -class remove_xorg-x11-server-common { │ │ │ │ - package { 'xorg-x11-server-common': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Remove the X Windows Package Group: Ensure xorg-x11-server-common is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -42395,14 +42374,27 @@ │ │ │ │ - NIST-800-53-CM-7(b) │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_xorg-x11-server-common_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_xorg-x11-server-common │ │ │ │ + │ │ │ │ +class remove_xorg-x11-server-common { │ │ │ │ + package { 'xorg-x11-server-common': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove xorg-x11-server-common │ │ │ │ @@ -42411,14 +42403,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "xorg-x11-server-common" ; then │ │ │ │ dnf remove -y --noautoremove "xorg-x11-server-common" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=xorg-x11-server-common │ │ │ │ Group   System Accounting with auditd   Group contains 12 groups and 74 rules │ │ │ │ _[_r_e_f_]   The audit service provides substantial capabilities for recording system activities. By default, │ │ │ │ the service audits about SELinux AVC denials and certain types of security-relevant events such as system │ │ │ │ logins, account modifications, and authentication events performed by programs such as sudo. Under its │ │ │ │ default configuration, auditd has modest disk space requirements, and should not noticeably impact system │ │ │ │ performance. │ │ │ │ │ │ │ │ @@ -84168,38 +84168,14 @@ │ │ │ │ 000351-GPOS-00139, SRG-OS-000352-GPOS-00140, SRG-OS-000353-GPOS-00141, SRG-OS-000354- │ │ │ │ GPOS-00142, SRG-OS-000358-GPOS-00145, SRG-OS-000365-GPOS-00152, SRG-OS-000392-GPOS- │ │ │ │ 00172, SRG-OS-000475-GPOS-00220 │ │ │ │ _a_n_s_s_i R33, R73 │ │ │ │ _c_i_s 5.2.1.1 │ │ │ │ _i_s_m 0582, 0846 │ │ │ │ _p_c_i_d_s_s_4 10.2.1, 10.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "audit" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -package --add=audit │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_audit │ │ │ │ - │ │ │ │ -class install_audit { │ │ │ │ - package { 'audit': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -84240,14 +84216,31 @@ │ │ │ │ - PCI-DSSv4-10.2.1 │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_audit_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_audit │ │ │ │ + │ │ │ │ +class install_audit { │ │ │ │ + package { 'audit': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "audit" │ │ │ │ +version = "*" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -84255,14 +84248,21 @@ │ │ │ │ if ! rpm -q --quiet "audit" ; then │ │ │ │ dnf install -y "audit" │ │ │ │ fi │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +package --add=audit │ │ │ │ ****** RRuullee? ?  EEnnaabbllee aauuddiittdd SSeerrvviiccee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The auditd service is an essential userspace component of the Linux Auditing System, as it is responsible │ │ │ │ for writing audit records to disk. The auditd service can be enabled with the following command: │ │ │ │ $ sudo systemctl enable auditd.service │ │ │ │ Without establishing what type of events occurred, it would be difficult to establish, │ │ │ │ correlate, and investigate the events leading up to an outage or attack. Ensuring the auditd │ │ │ │ Rationale: service is active ensures audit records generated by the kernel are appropriately recorded. │ │ │ │ @@ -84303,43 +84303,14 @@ │ │ │ │ SRG-OS-000365-GPOS-00152, SRG-OS-000392-GPOS-00172, SRG-OS-000475-GPOS-00220 │ │ │ │ _a_p_p_-_s_r_g_-_c_t_r SRG-APP-000095-CTR-000170, SRG-APP-000409-CTR-000990, SRG-APP-000508-CTR-001300, │ │ │ │ SRG-APP-000510-CTR-001310 │ │ │ │ _a_n_s_s_i R33, R73 │ │ │ │ _c_i_s 5.2.1.4 │ │ │ │ _i_s_m 1409 │ │ │ │ _p_c_i_d_s_s_4 10.2.1, 10.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -enabled = ["auditd"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _K_u_b_e_r_n_e_t_e_s_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ ---- │ │ │ │ -apiVersion: machineconfiguration.openshift.io/v1 │ │ │ │ -kind: MachineConfig │ │ │ │ -spec: │ │ │ │ - config: │ │ │ │ - ignition: │ │ │ │ - version: 3.1.0 │ │ │ │ - systemd: │ │ │ │ - units: │ │ │ │ - - name: auditd.service │ │ │ │ - enabled: true │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include enable_auditd │ │ │ │ - │ │ │ │ -class enable_auditd { │ │ │ │ - service {'auditd': │ │ │ │ - enable => true, │ │ │ │ - ensure => 'running', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -84406,14 +84377,43 @@ │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_auditd_enabled │ │ │ │ - special_service_block │ │ │ │ when: │ │ │ │ - '"kernel" in ansible_facts.packages' │ │ │ │ - '"audit" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _K_u_b_e_r_n_e_t_e_s_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +--- │ │ │ │ +apiVersion: machineconfiguration.openshift.io/v1 │ │ │ │ +kind: MachineConfig │ │ │ │ +spec: │ │ │ │ + config: │ │ │ │ + ignition: │ │ │ │ + version: 3.1.0 │ │ │ │ + systemd: │ │ │ │ + units: │ │ │ │ + - name: auditd.service │ │ │ │ + enabled: true │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include enable_auditd │ │ │ │ + │ │ │ │ +class enable_auditd { │ │ │ │ + service {'auditd': │ │ │ │ + enable => true, │ │ │ │ + ensure => 'running', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +enabled = ["auditd"] │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel && { rpm --quiet -q audit; }; then │ │ │ │ @@ -84457,17 +84457,14 @@ │ │ │ │ _o_s_p_p FAU_GEN.1 │ │ │ │ _p_c_i_d_s_s Req-10.3 │ │ │ │ SRG-OS-000037-GPOS-00015, SRG-OS-000042-GPOS-00020, SRG-OS-000062-GPOS-00031, │ │ │ │ _o_s_-_s_r_g SRG-OS-000392-GPOS-00172, SRG-OS-000462-GPOS-00206, SRG-OS-000471-GPOS-00215, │ │ │ │ SRG-OS-000473-GPOS-00218, SRG-OS-000254-GPOS-00095 │ │ │ │ _c_i_s 5.2.1.2 │ │ │ │ _p_c_i_d_s_s_4 10.7.2, 10.7 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -[customizations.kernel] │ │ │ │ -append = "audit=1" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: medium │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: true │ │ │ │ SSttrraatteeggyy:: restrict │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -84562,14 +84559,17 @@ │ │ │ │ - PCI-DSSv4-10.7.2 │ │ │ │ - grub2_audit_argument │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - medium_complexity │ │ │ │ - reboot_required │ │ │ │ - restrict_strategy │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +[customizations.kernel] │ │ │ │ +append = "audit=1" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel && { rpm --quiet -q grub2-common; }; then │ │ │ │ │ │ │ │ if { rpm --quiet -q kernel rpm-ostree bootc && ! rpm --quiet -q openshift-kubelet && { [ -f "/ │ │ │ │ run/.containerenv" ] || [ -f "/.containerenv" ]; }; } ; then │ │ │ │ KARGS_DIR="/usr/lib/bootc/kargs.d/" │ │ │ │ @@ -84601,17 +84601,14 @@ │ │ │ │ _n_i_s_t CM-6(a) │ │ │ │ _o_s_p_p FAU_STG.1, FAU_STG.3 │ │ │ │ SRG-OS-000037-GPOS-00015, SRG-OS-000042-GPOS-00020, SRG-OS-000062-GPOS-00031, SRG-OS- │ │ │ │ References: _o_s_-_s_r_g 000254-GPOS-00095, SRG-OS-000341-GPOS-00132, SRG-OS-000392-GPOS-00172, SRG-OS-000462- │ │ │ │ GPOS-00206, SRG-OS-000471-GPOS-00215 │ │ │ │ _c_i_s 5.2.1.3 │ │ │ │ _p_c_i_d_s_s_4 10.7.2, 10.7 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -[customizations.kernel] │ │ │ │ -append = "audit_backlog_limit=8192" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: medium │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: true │ │ │ │ SSttrraatteeggyy:: restrict │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -84685,14 +84682,17 @@ │ │ │ │ - PCI-DSSv4-10.7.2 │ │ │ │ - grub2_audit_backlog_limit_argument │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - medium_complexity │ │ │ │ - reboot_required │ │ │ │ - restrict_strategy │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +[customizations.kernel] │ │ │ │ +append = "audit_backlog_limit=8192" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel && { rpm --quiet -q grub2-common; }; then │ │ │ │ │ │ │ │ var_audit_backlog_limit='8192' │ │ ├── ./usr/share/doc/ssg-nondebian/ssg-al2023-guide-cis_server_l1.html │ │ │ @@ -15067,212 +15067,212 @@ │ │ │ 0003ada0: 6c61 7073 6522 2064 6174 612d 7461 7267 lapse" data-targ │ │ │ 0003adb0: 6574 3d22 2369 6434 2220 7461 6269 6e64 et="#id4" tabind │ │ │ 0003adc0: 6578 3d22 3022 2072 6f6c 653d 2262 7574 ex="0" role="but │ │ │ 0003add0: 746f 6e22 2061 7269 612d 6578 7061 6e64 ton" aria-expand │ │ │ 0003ade0: 6564 3d22 6661 6c73 6522 2074 6974 6c65 ed="false" title │ │ │ 0003adf0: 3d22 4163 7469 7661 7465 2074 6f20 7265 ="Activate to re │ │ │ 0003ae00: 7665 616c 2220 6872 6566 3d22 2321 223e veal" href="#!"> │ │ │ -0003ae10: 5265 6d65 6469 6174 696f 6e20 4f53 4275 Remediation OSBu │ │ │ -0003ae20: 696c 6420 426c 7565 7072 696e 7420 736e ild Blueprint sn │ │ │ -0003ae30: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
< │ │ │ -0003ae70: 7072 653e 3c63 6f64 653e 0a5b 5b70 6163 pre>.[[pac │ │ │ -0003ae80: 6b61 6765 735d 5d0a 6e61 6d65 203d 2022 kages]].name = " │ │ │ -0003ae90: 6169 6465 220a 7665 7273 696f 6e20 3d20 aide".version = │ │ │ -0003aea0: 222a 220a 3c2f 636f 6465 3e3c 2f70 7265 "*".
Remediation An │ │ │ -0003af60: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ -0003af70: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
Complexity: │ │ │ -0003b040: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -0003b050: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -0003b0a0: 0a70 6163 6b61 6765 202d 2d61 6464 3d61  .package --add=a
│ │ │ -0003b0b0: 6964 650a 3c2f 636f 6465 3e3c 2f70 7265  ide.
Remediation Pu │ │ │ -0003b170: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ -0003b180: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
low
Disru │ │ │ -0003b020: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -0003b030: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -0003b070: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -0003b080: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
│ │ │ -0003b210: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
in
│ │ │ -0003b2b0: 636c 7564 6520 696e 7374 616c 6c5f 6169  clude install_ai
│ │ │ -0003b2c0: 6465 0a0a 636c 6173 7320 696e 7374 616c  de..class instal
│ │ │ -0003b2d0: 6c5f 6169 6465 207b 0a20 2070 6163 6b61  l_aide {.  packa
│ │ │ -0003b2e0: 6765 207b 2027 6169 6465 273a 0a20 2020  ge { 'aide':.   
│ │ │ -0003b2f0: 2065 6e73 7572 6520 3d26 6774 3b20 2769   ensure => 'i
│ │ │ -0003b300: 6e73 7461 6c6c 6564 272c 0a20 207d 0a7d  nstalled',.  }.}
│ │ │ -0003b310: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
R │ │ │ -0003b3c0: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -0003b3d0: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
│ │ │ -0003b200: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -0003b230: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -0003b240: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -0003b280: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -0003b290: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
low< │ │ │ -0003b480: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -0003b4d0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ -0003b460: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -0003b490: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -0003b4b0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -0003b4c0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -0003b4e0: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -0003b4f0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -0003b510: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ -0003b520: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ -0003b530: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ -0003b540: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ -0003b550: 2020 7461 6773 3a0a 2020 2d20 434a 4953    tags:.  - CJIS
│ │ │ -0003b560: 2d35 2e31 302e 312e 330a 2020 2d20 4e49  -5.10.1.3.  - NI
│ │ │ -0003b570: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -0003b580: 290a 2020 2d20 5043 492d 4453 532d 5265  ).  - PCI-DSS-Re
│ │ │ -0003b590: 712d 3131 2e35 0a20 202d 2050 4349 2d44  q-11.5.  - PCI-D
│ │ │ -0003b5a0: 5353 7634 2d31 312e 352e 320a 2020 2d20  SSv4-11.5.2.  - 
│ │ │ -0003b5b0: 656e 6162 6c65 5f73 7472 6174 6567 790a  enable_strategy.
│ │ │ -0003b5c0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -0003b5d0: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ -0003b5e0: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ -0003b5f0: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ -0003b600: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ -0003b610: 202d 2070 6163 6b61 6765 5f61 6964 655f   - package_aide_
│ │ │ -0003b620: 696e 7374 616c 6c65 640a 0a2d 206e 616d  installed..- nam
│ │ │ -0003b630: 653a 2045 6e73 7572 6520 6169 6465 2069  e: Ensure aide i
│ │ │ -0003b640: 7320 696e 7374 616c 6c65 640a 2020 616e  s installed.  an
│ │ │ -0003b650: 7369 626c 652e 6275 696c 7469 6e2e 7061  sible.builtin.pa
│ │ │ -0003b660: 636b 6167 653a 0a20 2020 206e 616d 653a  ckage:.    name:
│ │ │ -0003b670: 2061 6964 650a 2020 2020 7374 6174 653a   aide.    state:
│ │ │ -0003b680: 2070 7265 7365 6e74 0a20 2077 6865 6e3a   present.  when:
│ │ │ -0003b690: 2027 226b 6572 6e65 6c22 2069 6e20 616e   '"kernel" in an
│ │ │ -0003b6a0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -0003b6b0: 6167 6573 270a 2020 7461 6773 3a0a 2020  ages'.  tags:.  
│ │ │ -0003b6c0: 2d20 434a 4953 2d35 2e31 302e 312e 330a  - CJIS-5.10.1.3.
│ │ │ -0003b6d0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -0003b6e0: 434d 2d36 2861 290a 2020 2d20 5043 492d  CM-6(a).  - PCI-
│ │ │ -0003b6f0: 4453 532d 5265 712d 3131 2e35 0a20 202d  DSS-Req-11.5.  -
│ │ │ -0003b700: 2050 4349 2d44 5353 7634 2d31 312e 352e   PCI-DSSv4-11.5.
│ │ │ -0003b710: 320a 2020 2d20 656e 6162 6c65 5f73 7472  2.  - enable_str
│ │ │ -0003b720: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ -0003b730: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ -0003b740: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -0003b750: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -0003b760: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -0003b770: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ -0003b780: 5f61 6964 655f 696e 7374 616c 6c65 640a  _aide_installed.
│ │ │ -0003b790: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
Re │ │ │ -0003b840: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ -0003b850: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
│ │ │ -0003b890: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -0003b900: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -0003b920: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -0003b950: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ -0003b970: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ -0003b8e0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -0003b8f0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -0003b930: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -0003b940: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
# Remedi │ │ │ -0003b990: 6174 696f 6e20 6973 2061 7070 6c69 6361 ation is applica │ │ │ -0003b9a0: 626c 6520 6f6e 6c79 2069 6e20 6365 7274 ble only in cert │ │ │ -0003b9b0: 6169 6e20 706c 6174 666f 726d 730a 6966 ain platforms.if │ │ │ -0003b9c0: 2072 706d 202d 2d71 7569 6574 202d 7120 rpm --quiet -q │ │ │ -0003b9d0: 6b65 726e 656c 3b20 7468 656e 0a0a 6966 kernel; then..if │ │ │ -0003b9e0: 2021 2072 706d 202d 7120 2d2d 7175 6965 ! rpm -q --quie │ │ │ -0003b9f0: 7420 2261 6964 6522 203b 2074 6865 6e0a t "aide" ; then. │ │ │ -0003ba00: 2020 2020 646e 6620 696e 7374 616c 6c20 dnf install │ │ │ -0003ba10: 2d79 2022 6169 6465 220a 6669 0a0a 656c -y "aide".fi..el │ │ │ -0003ba20: 7365 0a20 2020 2026 6774 3b26 616d 703b se. >& │ │ │ -0003ba30: 3220 6563 686f 2027 5265 6d65 6469 6174 2 echo 'Remediat │ │ │ -0003ba40: 696f 6e20 6973 206e 6f74 2061 7070 6c69 ion is not appli │ │ │ -0003ba50: 6361 626c 652c 206e 6f74 6869 6e67 2077 cable, nothing w │ │ │ -0003ba60: 6173 2064 6f6e 6527 0a66 690a 3c2f 636f as done'.fi.
< │ │ │ +0003aec0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0003aed0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +0003af20: 3c74 723e 3c74 683e 5374 7261 7465 6779
- n
│ │ │ +0003af60: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ +0003af70: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ +0003af80: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ +0003af90: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ +0003afa0: 0a20 2074 6167 733a 0a20 202d 2043 4a49  .  tags:.  - CJI
│ │ │ +0003afb0: 532d 352e 3130 2e31 2e33 0a20 202d 204e  S-5.10.1.3.  - N
│ │ │ +0003afc0: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +0003afd0: 6129 0a20 202d 2050 4349 2d44 5353 2d52  a).  - PCI-DSS-R
│ │ │ +0003afe0: 6571 2d31 312e 350a 2020 2d20 5043 492d  eq-11.5.  - PCI-
│ │ │ +0003aff0: 4453 5376 342d 3131 2e35 2e32 0a20 202d  DSSv4-11.5.2.  -
│ │ │ +0003b000: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ +0003b010: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +0003b020: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +0003b030: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +0003b040: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ +0003b050: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +0003b060: 2020 2d20 7061 636b 6167 655f 6169 6465    - package_aide
│ │ │ +0003b070: 5f69 6e73 7461 6c6c 6564 0a0a 2d20 6e61  _installed..- na
│ │ │ +0003b080: 6d65 3a20 456e 7375 7265 2061 6964 6520  me: Ensure aide 
│ │ │ +0003b090: 6973 2069 6e73 7461 6c6c 6564 0a20 2061  is installed.  a
│ │ │ +0003b0a0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ +0003b0b0: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ +0003b0c0: 3a20 6169 6465 0a20 2020 2073 7461 7465  : aide.    state
│ │ │ +0003b0d0: 3a20 7072 6573 656e 740a 2020 7768 656e  : present.  when
│ │ │ +0003b0e0: 3a20 2722 6b65 726e 656c 2220 696e 2061  : '"kernel" in a
│ │ │ +0003b0f0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +0003b100: 6b61 6765 7327 0a20 2074 6167 733a 0a20  kages'.  tags:. 
│ │ │ +0003b110: 202d 2043 4a49 532d 352e 3130 2e31 2e33   - CJIS-5.10.1.3
│ │ │ +0003b120: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +0003b130: 2d43 4d2d 3628 6129 0a20 202d 2050 4349  -CM-6(a).  - PCI
│ │ │ +0003b140: 2d44 5353 2d52 6571 2d31 312e 350a 2020  -DSS-Req-11.5.  
│ │ │ +0003b150: 2d20 5043 492d 4453 5376 342d 3131 2e35  - PCI-DSSv4-11.5
│ │ │ +0003b160: 2e32 0a20 202d 2065 6e61 626c 655f 7374  .2.  - enable_st
│ │ │ +0003b170: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ +0003b180: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ +0003b190: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +0003b1a0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +0003b1b0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +0003b1c0: 6565 6465 640a 2020 2d20 7061 636b 6167  eeded.  - packag
│ │ │ +0003b1d0: 655f 6169 6465 5f69 6e73 7461 6c6c 6564  e_aide_installed
│ │ │ +0003b1e0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
R │ │ │ +0003b290: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ +0003b2a0: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
C │ │ │ +0003aeb0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +0003aee0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +0003aef0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +0003af30: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +0003af40: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Com │ │ │ +0003b330: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +0003b360: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +0003b380: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +0003b390: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +0003b3b0: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ +0003b3d0: 3c70 7265 3e3c 636f 6465 3e69 6e63 6c75
inclu
│ │ │ +0003b3e0: 6465 2069 6e73 7461 6c6c 5f61 6964 650a  de install_aide.
│ │ │ +0003b3f0: 0a63 6c61 7373 2069 6e73 7461 6c6c 5f61  .class install_a
│ │ │ +0003b400: 6964 6520 7b0a 2020 7061 636b 6167 6520  ide {.  package 
│ │ │ +0003b410: 7b20 2761 6964 6527 3a0a 2020 2020 656e  { 'aide':.    en
│ │ │ +0003b420: 7375 7265 203d 2667 743b 2027 696e 7374  sure => 'inst
│ │ │ +0003b430: 616c 6c65 6427 2c0a 2020 7d0a 7d0a 3c2f  alled',.  }.}.
Reme │ │ │ +0003b4f0: 6469 6174 696f 6e20 4f53 4275 696c 6420 diation OSBuild │ │ │ +0003b500: 426c 7565 7072 696e 7420 736e 6970 7065 Blueprint snippe │ │ │ +0003b510: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
│ │ │ +0003b550: 3c63 6f64 653e 0a5b 5b70 6163 6b61 6765  .[[package
│ │ │ +0003b560: 735d 5d0a 6e61 6d65 203d 2022 6169 6465  s]].name = "aide
│ │ │ +0003b570: 220a 7665 7273 696f 6e20 3d20 222a 220a  ".version = "*".
│ │ │ +0003b580: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
Re │ │ │ +0003b630: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ +0003b640: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
│ │ │ +0003b680: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +0003b6f0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +0003b710: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +0003b740: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ +0003b760: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ +0003b6d0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +0003b6e0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +0003b720: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +0003b730: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
# Remedi │ │ │ +0003b780: 6174 696f 6e20 6973 2061 7070 6c69 6361 ation is applica │ │ │ +0003b790: 626c 6520 6f6e 6c79 2069 6e20 6365 7274 ble only in cert │ │ │ +0003b7a0: 6169 6e20 706c 6174 666f 726d 730a 6966 ain platforms.if │ │ │ +0003b7b0: 2072 706d 202d 2d71 7569 6574 202d 7120 rpm --quiet -q │ │ │ +0003b7c0: 6b65 726e 656c 3b20 7468 656e 0a0a 6966 kernel; then..if │ │ │ +0003b7d0: 2021 2072 706d 202d 7120 2d2d 7175 6965 ! rpm -q --quie │ │ │ +0003b7e0: 7420 2261 6964 6522 203b 2074 6865 6e0a t "aide" ; then. │ │ │ +0003b7f0: 2020 2020 646e 6620 696e 7374 616c 6c20 dnf install │ │ │ +0003b800: 2d79 2022 6169 6465 220a 6669 0a0a 656c -y "aide".fi..el │ │ │ +0003b810: 7365 0a20 2020 2026 6774 3b26 616d 703b se. >& │ │ │ +0003b820: 3220 6563 686f 2027 5265 6d65 6469 6174 2 echo 'Remediat │ │ │ +0003b830: 696f 6e20 6973 206e 6f74 2061 7070 6c69 ion is not appli │ │ │ +0003b840: 6361 626c 652c 206e 6f74 6869 6e67 2077 cable, nothing w │ │ │ +0003b850: 6173 2064 6f6e 6527 0a66 690a 3c2f 636f as done'.fi.
< │ │ │ +0003b870: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +0003b880: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +0003b890: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +0003b8a0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +0003b8b0: 6438 2220 7461 6269 6e64 6578 3d22 3022 d8" tabindex="0" │ │ │ +0003b8c0: 2072 6f6c 653d 2262 7574 746f 6e22 2061 role="button" a │ │ │ +0003b8d0: 7269 612d 6578 7061 6e64 6564 3d22 6661 ria-expanded="fa │ │ │ +0003b8e0: 6c73 6522 2074 6974 6c65 3d22 4163 7469 lse" title="Acti │ │ │ +0003b8f0: 7661 7465 2074 6f20 7265 7665 616c 2220 vate to reveal" │ │ │ +0003b900: 6872 6566 3d22 2321 223e 5265 6d65 6469 href="#!">Remedi │ │ │ +0003b910: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ +0003b920: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
│ │ │ +0003b960: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +0003b9d0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +0003b9f0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +0003ba20: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ +0003ba40: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ +0003b9b0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +0003b9c0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +0003ba00: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +0003ba10: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
.package │ │ │ +0003ba60: 202d 2d61 6464 3d61 6964 650a 3c2f 636f --add=aide.
< │ │ │ 0003ba80: 2f64 6976 3e3c 2f74 643e 3c2f 7472 3e3c /div>< │ │ │ 0003ba90: 2f74 626f 6479 3e3c 2f74 6162 6c65 3e3c /tbody>< │ │ │ 0003baa0: 2f74 643e 3c2f 7472 3e3c 7472 2064 6174 /td>Remed │ │ │ -000496a0: 6961 7469 6f6e 204f 5342 7569 6c64 2042 iation OSBuild B │ │ │ -000496b0: 6c75 6570 7269 6e74 2073 6e69 7070 6574 lueprint snippet │ │ │ -000496c0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
│ │ │ -00049700: 3c63 6f64 653e 0a5b 5b70 6163 6b61 6765  .[[package
│ │ │ -00049710: 735d 5d0a 6e61 6d65 203d 2022 7375 646f  s]].name = "sudo
│ │ │ -00049720: 220a 7665 7273 696f 6e20 3d20 222a 220a  ".version = "*".
│ │ │ -00049730: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
R │ │ │ -000497e0: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ -000497f0: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ -00049800: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -00049890: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.p
│ │ │ -00049930: 6163 6b61 6765 202d 2d61 6464 3d73 7564  ackage --add=sud
│ │ │ -00049940: 6f0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  o.
< │ │ │ -00049950: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pup │ │ │ -00049a00: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ -00049a10: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -00049880: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -000498b0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -000498c0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00049900: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -00049910: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ -00049aa0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
in
│ │ │ -00049b40: 636c 7564 6520 696e 7374 616c 6c5f 7375  clude install_su
│ │ │ -00049b50: 646f 0a0a 636c 6173 7320 696e 7374 616c  do..class instal
│ │ │ -00049b60: 6c5f 7375 646f 207b 0a20 2070 6163 6b61  l_sudo {.  packa
│ │ │ -00049b70: 6765 207b 2027 7375 646f 273a 0a20 2020  ge { 'sudo':.   
│ │ │ -00049b80: 2065 6e73 7572 6520 3d26 6774 3b20 2769   ensure => 'i
│ │ │ -00049b90: 6e73 7461 6c6c 6564 272c 0a20 207d 0a7d  nstalled',.  }.}
│ │ │ -00049ba0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
│ │ │ -00049c50: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -00049c60: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -00049c70: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -00049a90: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00049ac0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00049ad0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00049b10: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -00049b20: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ -00049d00: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
- 
│ │ │ -00049da0: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ -00049db0: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ -00049dc0: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ -00049dd0: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ -00049de0: 6f0a 2020 7461 6773 3a0a 2020 2d20 4e49  o.  tags:.  - NI
│ │ │ -00049df0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -00049e00: 290a 2020 2d20 5043 492d 4453 5376 342d  ).  - PCI-DSSv4-
│ │ │ -00049e10: 322e 320a 2020 2d20 5043 492d 4453 5376  2.2.  - PCI-DSSv
│ │ │ -00049e20: 342d 322e 322e 360a 2020 2d20 656e 6162  4-2.2.6.  - enab
│ │ │ -00049e30: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ -00049e40: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -00049e50: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -00049e60: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ -00049e70: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ -00049e80: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ -00049e90: 6163 6b61 6765 5f73 7564 6f5f 696e 7374  ackage_sudo_inst
│ │ │ -00049ea0: 616c 6c65 640a 0a2d 206e 616d 653a 2045  alled..- name: E
│ │ │ -00049eb0: 6e73 7572 6520 7375 646f 2069 7320 696e  nsure sudo is in
│ │ │ -00049ec0: 7374 616c 6c65 640a 2020 616e 7369 626c  stalled.  ansibl
│ │ │ -00049ed0: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ -00049ee0: 653a 0a20 2020 206e 616d 653a 2073 7564  e:.    name: sud
│ │ │ -00049ef0: 6f0a 2020 2020 7374 6174 653a 2070 7265  o.    state: pre
│ │ │ -00049f00: 7365 6e74 0a20 2077 6865 6e3a 2027 226b  sent.  when: '"k
│ │ │ -00049f10: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -00049f20: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -00049f30: 270a 2020 7461 6773 3a0a 2020 2d20 4e49  '.  tags:.  - NI
│ │ │ -00049f40: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -00049f50: 290a 2020 2d20 5043 492d 4453 5376 342d  ).  - PCI-DSSv4-
│ │ │ -00049f60: 322e 320a 2020 2d20 5043 492d 4453 5376  2.2.  - PCI-DSSv
│ │ │ -00049f70: 342d 322e 322e 360a 2020 2d20 656e 6162  4-2.2.6.  - enab
│ │ │ -00049f80: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ -00049f90: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -00049fa0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -00049fb0: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ -00049fc0: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ -00049fd0: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ -00049fe0: 6163 6b61 6765 5f73 7564 6f5f 696e 7374  ackage_sudo_inst
│ │ │ -00049ff0: 616c 6c65 640a 3c2f 636f 6465 3e3c 2f70  alled.

Remediation │ │ │ -0004a0b0: 2053 6865 6c6c 2073 6372 6970 7420 e287 Shell script .. │ │ │ -0004a0c0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
│ │ │ -00049cf0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00049d20: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00049d30: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00049d70: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -00049d80: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexity: │ │ │ -0004a190: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -0004a1a0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -0004a1f0: 2320 5265 6d65 6469 6174 696f 6e20 6973  # Remediation is
│ │ │ -0004a200: 2061 7070 6c69 6361 626c 6520 6f6e 6c79   applicable only
│ │ │ -0004a210: 2069 6e20 6365 7274 6169 6e20 706c 6174   in certain plat
│ │ │ -0004a220: 666f 726d 730a 6966 2072 706d 202d 2d71  forms.if rpm --q
│ │ │ -0004a230: 7569 6574 202d 7120 6b65 726e 656c 3b20  uiet -q kernel; 
│ │ │ -0004a240: 7468 656e 0a0a 6966 2021 2072 706d 202d  then..if ! rpm -
│ │ │ -0004a250: 7120 2d2d 7175 6965 7420 2273 7564 6f22  q --quiet "sudo"
│ │ │ -0004a260: 203b 2074 6865 6e0a 2020 2020 646e 6620   ; then.    dnf 
│ │ │ -0004a270: 696e 7374 616c 6c20 2d79 2022 7375 646f  install -y "sudo
│ │ │ -0004a280: 220a 6669 0a0a 656c 7365 0a20 2020 2026  ".fi..else.    &
│ │ │ -0004a290: 6774 3b26 616d 703b 3220 6563 686f 2027  gt;&2 echo '
│ │ │ -0004a2a0: 5265 6d65 6469 6174 696f 6e20 6973 206e  Remediation is n
│ │ │ -0004a2b0: 6f74 2061 7070 6c69 6361 626c 652c 206e  ot applicable, n
│ │ │ -0004a2c0: 6f74 6869 6e67 2077 6173 2064 6f6e 6527  othing was done'
│ │ │ -0004a2d0: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.
low
Disru │ │ │ -0004a170: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -0004a180: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -0004a1c0: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -0004a1d0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
│ │ │ +00049760: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +00049780: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +000497b0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +00049740: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +00049750: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +00049770: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +00049790: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +000497a0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

- name: │ │ │ +000497f0: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ +00049800: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ +00049810: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ +00049820: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ +00049830: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ +00049840: 302d 3533 2d43 4d2d 3628 6129 0a20 202d 0-53-CM-6(a). - │ │ │ +00049850: 2050 4349 2d44 5353 7634 2d32 2e32 0a20 PCI-DSSv4-2.2. │ │ │ +00049860: 202d 2050 4349 2d44 5353 7634 2d32 2e32 - PCI-DSSv4-2.2 │ │ │ +00049870: 2e36 0a20 202d 2065 6e61 626c 655f 7374 .6. - enable_st │ │ │ +00049880: 7261 7465 6779 0a20 202d 206c 6f77 5f63 rategy. - low_c │ │ │ +00049890: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f omplexity. - lo │ │ │ +000498a0: 775f 6469 7372 7570 7469 6f6e 0a20 202d w_disruption. - │ │ │ +000498b0: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ +000498c0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ +000498d0: 6565 6465 640a 2020 2d20 7061 636b 6167 eeded. - packag │ │ │ +000498e0: 655f 7375 646f 5f69 6e73 7461 6c6c 6564 e_sudo_installed │ │ │ +000498f0: 0a0a 2d20 6e61 6d65 3a20 456e 7375 7265 ..- name: Ensure │ │ │ +00049900: 2073 7564 6f20 6973 2069 6e73 7461 6c6c sudo is install │ │ │ +00049910: 6564 0a20 2061 6e73 6962 6c65 2e62 7569 ed. ansible.bui │ │ │ +00049920: 6c74 696e 2e70 6163 6b61 6765 3a0a 2020 ltin.package:. │ │ │ +00049930: 2020 6e61 6d65 3a20 7375 646f 0a20 2020 name: sudo. │ │ │ +00049940: 2073 7461 7465 3a20 7072 6573 656e 740a state: present. │ │ │ +00049950: 2020 7768 656e 3a20 2722 6b65 726e 656c when: '"kernel │ │ │ +00049960: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ +00049970: 7473 2e70 6163 6b61 6765 7327 0a20 2074 ts.packages'. t │ │ │ +00049980: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ +00049990: 302d 3533 2d43 4d2d 3628 6129 0a20 202d 0-53-CM-6(a). - │ │ │ +000499a0: 2050 4349 2d44 5353 7634 2d32 2e32 0a20 PCI-DSSv4-2.2. │ │ │ +000499b0: 202d 2050 4349 2d44 5353 7634 2d32 2e32 - PCI-DSSv4-2.2 │ │ │ +000499c0: 2e36 0a20 202d 2065 6e61 626c 655f 7374 .6. - enable_st │ │ │ +000499d0: 7261 7465 6779 0a20 202d 206c 6f77 5f63 rategy. - low_c │ │ │ +000499e0: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f omplexity. - lo │ │ │ +000499f0: 775f 6469 7372 7570 7469 6f6e 0a20 202d w_disruption. - │ │ │ +00049a00: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ +00049a10: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ +00049a20: 6565 6465 640a 2020 2d20 7061 636b 6167 eeded. - packag │ │ │ +00049a30: 655f 7375 646f 5f69 6e73 7461 6c6c 6564 e_sudo_installed │ │ │ +00049a40: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f . │ │ │ +00049af0: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +00049b00: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...

< │ │ │ +00049ba0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00049bb0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +00049c00: 3c74 723e 3c74 683e 5374 7261 7465 6779
inc
│ │ │ +00049c40: 6c75 6465 2069 6e73 7461 6c6c 5f73 7564  lude install_sud
│ │ │ +00049c50: 6f0a 0a63 6c61 7373 2069 6e73 7461 6c6c  o..class install
│ │ │ +00049c60: 5f73 7564 6f20 7b0a 2020 7061 636b 6167  _sudo {.  packag
│ │ │ +00049c70: 6520 7b20 2773 7564 6f27 3a0a 2020 2020  e { 'sudo':.    
│ │ │ +00049c80: 656e 7375 7265 203d 2667 743b 2027 696e  ensure => 'in
│ │ │ +00049c90: 7374 616c 6c65 6427 2c0a 2020 7d0a 7d0a  stalled',.  }.}.
│ │ │ +00049ca0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
R │ │ │ +00049d50: 656d 6564 6961 7469 6f6e 204f 5342 7569 emediation OSBui │ │ │ +00049d60: 6c64 2042 6c75 6570 7269 6e74 2073 6e69 ld Blueprint sni │ │ │ +00049d70: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +00049d80: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
< │ │ │ +00049db0: 7072 653e 3c63 6f64 653e 0a5b 5b70 6163 pre>.[[pac │ │ │ +00049dc0: 6b61 6765 735d 5d0a 6e61 6d65 203d 2022 kages]].name = " │ │ │ +00049dd0: 7375 646f 220a 7665 7273 696f 6e20 3d20 sudo".version = │ │ │ +00049de0: 222a 220a 3c2f 636f 6465 3e3c 2f70 7265 "*".
Remediation S │ │ │ +00049ea0: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ +00049eb0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
C │ │ │ +00049b90: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +00049bc0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +00049bd0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +00049c10: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +00049c20: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ +00049f40: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
# 
│ │ │ +00049fe0: 5265 6d65 6469 6174 696f 6e20 6973 2061  Remediation is a
│ │ │ +00049ff0: 7070 6c69 6361 626c 6520 6f6e 6c79 2069  pplicable only i
│ │ │ +0004a000: 6e20 6365 7274 6169 6e20 706c 6174 666f  n certain platfo
│ │ │ +0004a010: 726d 730a 6966 2072 706d 202d 2d71 7569  rms.if rpm --qui
│ │ │ +0004a020: 6574 202d 7120 6b65 726e 656c 3b20 7468  et -q kernel; th
│ │ │ +0004a030: 656e 0a0a 6966 2021 2072 706d 202d 7120  en..if ! rpm -q 
│ │ │ +0004a040: 2d2d 7175 6965 7420 2273 7564 6f22 203b  --quiet "sudo" ;
│ │ │ +0004a050: 2074 6865 6e0a 2020 2020 646e 6620 696e   then.    dnf in
│ │ │ +0004a060: 7374 616c 6c20 2d79 2022 7375 646f 220a  stall -y "sudo".
│ │ │ +0004a070: 6669 0a0a 656c 7365 0a20 2020 2026 6774  fi..else.    >
│ │ │ +0004a080: 3b26 616d 703b 3220 6563 686f 2027 5265  ;&2 echo 'Re
│ │ │ +0004a090: 6d65 6469 6174 696f 6e20 6973 206e 6f74  mediation is not
│ │ │ +0004a0a0: 2061 7070 6c69 6361 626c 652c 206e 6f74   applicable, not
│ │ │ +0004a0b0: 6869 6e67 2077 6173 2064 6f6e 6527 0a66  hing was done'.f
│ │ │ +0004a0c0: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +0004a0d0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Ana │ │ │ +0004a180: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ +0004a190: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
│ │ │ +00049f30: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00049f60: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00049f70: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00049fb0: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ +00049fc0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexity: │ │ │ +0004a260: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +0004a270: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +0004a2c0: 0a70 6163 6b61 6765 202d 2d61 6464 3d73  .package --add=s
│ │ │ +0004a2d0: 7564 6f0a 3c2f 636f 6465 3e3c 2f70 7265  udo.
< │ │ │ 0004a300: 2f74 6162 6c65 3e3c 2f74 643e 3c2f 7472 /table> │ │ │ -00101910: 5265 6d65 6469 6174 696f 6e20 4f53 4275 Remediation OSBu │ │ │ -00101920: 696c 6420 426c 7565 7072 696e 7420 736e ild Blueprint sn │ │ │ -00101930: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
.[cu
│ │ │ -00101980: 7374 6f6d 697a 6174 696f 6e73 2e73 6572  stomizations.ser
│ │ │ -00101990: 7669 6365 735d 0a65 6e61 626c 6564 203d  vices].enabled =
│ │ │ -001019a0: 205b 2273 7973 7465 6d64 2d6a 6f75 726e   ["systemd-journ
│ │ │ -001019b0: 616c 6422 5d0a 3c2f 636f 6465 3e3c 2f70  ald"].

Remediatio │ │ │ -00101a70: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ -00101a80: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
< │ │ │ -00101b40: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00101b50: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
low
Disru │ │ │ +0004a240: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +0004a250: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +0004a290: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +0004a2a0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexity │ │ │ -00101b10: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ -00101b30: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ -00101b60: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ -00101b80: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
include enab
│ │ │ -00101bc0: 6c65 5f73 7973 7465 6d64 2d6a 6f75 726e  le_systemd-journ
│ │ │ -00101bd0: 616c 640a 0a63 6c61 7373 2065 6e61 626c  ald..class enabl
│ │ │ -00101be0: 655f 7379 7374 656d 642d 6a6f 7572 6e61  e_systemd-journa
│ │ │ -00101bf0: 6c64 207b 0a20 2073 6572 7669 6365 207b  ld {.  service {
│ │ │ -00101c00: 2773 7973 7465 6d64 2d6a 6f75 726e 616c  'systemd-journal
│ │ │ -00101c10: 6427 3a0a 2020 2020 656e 6162 6c65 203d  d':.    enable =
│ │ │ -00101c20: 2667 743b 2074 7275 652c 0a20 2020 2065  > true,.    e
│ │ │ -00101c30: 6e73 7572 6520 3d26 6774 3b20 2772 756e  nsure => 'run
│ │ │ -00101c40: 6e69 6e67 272c 0a20 207d 0a7d 0a3c 2f63  ning',.  }.}.
│ │ │ -00101c60: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -00101d00: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -00101d10: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -00101d20: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -00101dc0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -00101e10: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ -00101da0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -00101dd0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -00101df0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -00101e00: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -00101e20: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -00101e30: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -00101e50: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ -00101e60: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ -00101e70: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ -00101e80: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ -00101e90: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -00101ea0: 2d38 3030 2d35 332d 5343 2d32 340a 2020  -800-53-SC-24.  
│ │ │ -00101eb0: 2d20 656e 6162 6c65 5f73 7472 6174 6567  - enable_strateg
│ │ │ -00101ec0: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -00101ed0: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -00101ee0: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ -00101ef0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -00101f00: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -00101f10: 0a20 202d 2073 6572 7669 6365 5f73 7973  .  - service_sys
│ │ │ -00101f20: 7465 6d64 2d6a 6f75 726e 616c 645f 656e  temd-journald_en
│ │ │ -00101f30: 6162 6c65 640a 0a2d 206e 616d 653a 2045  abled..- name: E
│ │ │ -00101f40: 6e61 626c 6520 7379 7374 656d 642d 6a6f  nable systemd-jo
│ │ │ -00101f50: 7572 6e61 6c64 2053 6572 7669 6365 202d  urnald Service -
│ │ │ -00101f60: 2045 6e61 626c 6520 7365 7276 6963 6520   Enable service 
│ │ │ -00101f70: 7379 7374 656d 642d 6a6f 7572 6e61 6c64  systemd-journald
│ │ │ -00101f80: 0a20 2062 6c6f 636b 3a0a 0a20 202d 206e  .  block:..  - n
│ │ │ -00101f90: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ -00101fa0: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ -00101fb0: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -00101fc0: 6e2e 7061 636b 6167 655f 6661 6374 733a  n.package_facts:
│ │ │ -00101fd0: 0a20 2020 2020 206d 616e 6167 6572 3a20  .      manager: 
│ │ │ -00101fe0: 6175 746f 0a0a 2020 2d20 6e61 6d65 3a20  auto..  - name: 
│ │ │ -00101ff0: 456e 6162 6c65 2073 7973 7465 6d64 2d6a  Enable systemd-j
│ │ │ -00102000: 6f75 726e 616c 6420 5365 7276 6963 6520  ournald Service 
│ │ │ -00102010: 2d20 456e 6162 6c65 2053 6572 7669 6365  - Enable Service
│ │ │ -00102020: 2073 7973 7465 6d64 2d6a 6f75 726e 616c   systemd-journal
│ │ │ -00102030: 640a 2020 2020 616e 7369 626c 652e 6275  d.    ansible.bu
│ │ │ -00102040: 696c 7469 6e2e 7379 7374 656d 643a 0a20  iltin.systemd:. 
│ │ │ -00102050: 2020 2020 206e 616d 653a 2073 7973 7465       name: syste
│ │ │ -00102060: 6d64 2d6a 6f75 726e 616c 640a 2020 2020  md-journald.    
│ │ │ -00102070: 2020 656e 6162 6c65 643a 2074 7275 650a    enabled: true.
│ │ │ -00102080: 2020 2020 2020 7374 6174 653a 2073 7461        state: sta
│ │ │ -00102090: 7274 6564 0a20 2020 2020 206d 6173 6b65  rted.      maske
│ │ │ -001020a0: 643a 2066 616c 7365 0a20 2020 2077 6865  d: false.    whe
│ │ │ -001020b0: 6e3a 0a20 2020 202d 2027 2273 7973 7465  n:.    - '"syste
│ │ │ -001020c0: 6d64 2220 696e 2061 6e73 6962 6c65 5f66  md" in ansible_f
│ │ │ -001020d0: 6163 7473 2e70 6163 6b61 6765 7327 0a20  acts.packages'. 
│ │ │ -001020e0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -001020f0: 3830 302d 3533 2d53 432d 3234 0a20 202d  800-53-SC-24.  -
│ │ │ -00102100: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ -00102110: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -00102120: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ -00102130: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ -00102140: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ -00102150: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -00102160: 2020 2d20 7365 7276 6963 655f 7379 7374    - service_syst
│ │ │ -00102170: 656d 642d 6a6f 7572 6e61 6c64 5f65 6e61  emd-journald_ena
│ │ │ -00102180: 626c 6564 0a20 202d 2073 7065 6369 616c  bled.  - special
│ │ │ -00102190: 5f73 6572 7669 6365 5f62 6c6f 636b 0a20  _service_block. 
│ │ │ -001021a0: 2077 6865 6e3a 2027 226b 6572 6e65 6c22   when: '"kernel"
│ │ │ -001021b0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001021c0: 732e 7061 636b 6167 6573 270a 3c2f 636f  s.packages'.
< │ │ │ +00101a00: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +00101a10: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
-
│ │ │ +00101a60: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +00101a70: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +00101a80: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ +00101a90: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ +00101aa0: 746f 0a20 2074 6167 733a 0a20 202d 204e  to.  tags:.  - N
│ │ │ +00101ab0: 4953 542d 3830 302d 3533 2d53 432d 3234  IST-800-53-SC-24
│ │ │ +00101ac0: 0a20 202d 2065 6e61 626c 655f 7374 7261  .  - enable_stra
│ │ │ +00101ad0: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ +00101ae0: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +00101af0: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ +00101b00: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +00101b10: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +00101b20: 6465 640a 2020 2d20 7365 7276 6963 655f  ded.  - service_
│ │ │ +00101b30: 7379 7374 656d 642d 6a6f 7572 6e61 6c64  systemd-journald
│ │ │ +00101b40: 5f65 6e61 626c 6564 0a0a 2d20 6e61 6d65  _enabled..- name
│ │ │ +00101b50: 3a20 456e 6162 6c65 2073 7973 7465 6d64  : Enable systemd
│ │ │ +00101b60: 2d6a 6f75 726e 616c 6420 5365 7276 6963  -journald Servic
│ │ │ +00101b70: 6520 2d20 456e 6162 6c65 2073 6572 7669  e - Enable servi
│ │ │ +00101b80: 6365 2073 7973 7465 6d64 2d6a 6f75 726e  ce systemd-journ
│ │ │ +00101b90: 616c 640a 2020 626c 6f63 6b3a 0a0a 2020  ald.  block:..  
│ │ │ +00101ba0: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ +00101bb0: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ +00101bc0: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ +00101bd0: 6c74 696e 2e70 6163 6b61 6765 5f66 6163  ltin.package_fac
│ │ │ +00101be0: 7473 3a0a 2020 2020 2020 6d61 6e61 6765  ts:.      manage
│ │ │ +00101bf0: 723a 2061 7574 6f0a 0a20 202d 206e 616d  r: auto..  - nam
│ │ │ +00101c00: 653a 2045 6e61 626c 6520 7379 7374 656d  e: Enable system
│ │ │ +00101c10: 642d 6a6f 7572 6e61 6c64 2053 6572 7669  d-journald Servi
│ │ │ +00101c20: 6365 202d 2045 6e61 626c 6520 5365 7276  ce - Enable Serv
│ │ │ +00101c30: 6963 6520 7379 7374 656d 642d 6a6f 7572  ice systemd-jour
│ │ │ +00101c40: 6e61 6c64 0a20 2020 2061 6e73 6962 6c65  nald.    ansible
│ │ │ +00101c50: 2e62 7569 6c74 696e 2e73 7973 7465 6d64  .builtin.systemd
│ │ │ +00101c60: 3a0a 2020 2020 2020 6e61 6d65 3a20 7379  :.      name: sy
│ │ │ +00101c70: 7374 656d 642d 6a6f 7572 6e61 6c64 0a20  stemd-journald. 
│ │ │ +00101c80: 2020 2020 2065 6e61 626c 6564 3a20 7472       enabled: tr
│ │ │ +00101c90: 7565 0a20 2020 2020 2073 7461 7465 3a20  ue.      state: 
│ │ │ +00101ca0: 7374 6172 7465 640a 2020 2020 2020 6d61  started.      ma
│ │ │ +00101cb0: 736b 6564 3a20 6661 6c73 650a 2020 2020  sked: false.    
│ │ │ +00101cc0: 7768 656e 3a0a 2020 2020 2d20 2722 7379  when:.    - '"sy
│ │ │ +00101cd0: 7374 656d 6422 2069 6e20 616e 7369 626c  stemd" in ansibl
│ │ │ +00101ce0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +00101cf0: 270a 2020 7461 6773 3a0a 2020 2d20 4e49  '.  tags:.  - NI
│ │ │ +00101d00: 5354 2d38 3030 2d35 332d 5343 2d32 340a  ST-800-53-SC-24.
│ │ │ +00101d10: 2020 2d20 656e 6162 6c65 5f73 7472 6174    - enable_strat
│ │ │ +00101d20: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +00101d30: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +00101d40: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +00101d50: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +00101d60: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +00101d70: 6564 0a20 202d 2073 6572 7669 6365 5f73  ed.  - service_s
│ │ │ +00101d80: 7973 7465 6d64 2d6a 6f75 726e 616c 645f  ystemd-journald_
│ │ │ +00101d90: 656e 6162 6c65 640a 2020 2d20 7370 6563  enabled.  - spec
│ │ │ +00101da0: 6961 6c5f 7365 7276 6963 655f 626c 6f63  ial_service_bloc
│ │ │ +00101db0: 6b0a 2020 7768 656e 3a20 2722 6b65 726e  k.  when: '"kern
│ │ │ +00101dc0: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +00101dd0: 6163 7473 2e70 6163 6b61 6765 7327 0a3c  acts.packages'.<
│ │ │ +00101de0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +00101e90: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ +00101ea0: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
Complexity:low
Disrup │ │ │ +001019e0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +001019f0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +00101a30: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +00101a40: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ +00101f40: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00101f50: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +00101fa0: 3c74 723e 3c74 683e 5374 7261 7465 6779
inc
│ │ │ +00101fe0: 6c75 6465 2065 6e61 626c 655f 7379 7374  lude enable_syst
│ │ │ +00101ff0: 656d 642d 6a6f 7572 6e61 6c64 0a0a 636c  emd-journald..cl
│ │ │ +00102000: 6173 7320 656e 6162 6c65 5f73 7973 7465  ass enable_syste
│ │ │ +00102010: 6d64 2d6a 6f75 726e 616c 6420 7b0a 2020  md-journald {.  
│ │ │ +00102020: 7365 7276 6963 6520 7b27 7379 7374 656d  service {'system
│ │ │ +00102030: 642d 6a6f 7572 6e61 6c64 273a 0a20 2020  d-journald':.   
│ │ │ +00102040: 2065 6e61 626c 6520 3d26 6774 3b20 7472   enable => tr
│ │ │ +00102050: 7565 2c0a 2020 2020 656e 7375 7265 203d  ue,.    ensure =
│ │ │ +00102060: 2667 743b 2027 7275 6e6e 696e 6727 2c0a  > 'running',.
│ │ │ +00102070: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediatio │ │ │ +00102130: 6e20 4f53 4275 696c 6420 426c 7565 7072 n OSBuild Bluepr │ │ │ +00102140: 696e 7420 736e 6970 7065 7420 e287 b23c int snippet ...< │ │ │ +00102150: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
.[customizatio
│ │ │ +001021a0: 6e73 2e73 6572 7669 6365 735d 0a65 6e61  ns.services].ena
│ │ │ +001021b0: 626c 6564 203d 205b 2273 7973 7465 6d64  bled = ["systemd
│ │ │ +001021c0: 2d6a 6f75 726e 616c 6422 5d0a 3c2f 636f  -journald"].
< │ │ │ 001021e0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ 001021f0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ 00102200: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ 00102210: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ 00102220: 6432 3335 2220 7461 6269 6e64 6578 3d22 d235" tabindex=" │ │ │ 00102230: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ @@ -69354,208 +69354,208 @@ │ │ │ 0010ee90: 2220 6461 7461 2d74 6172 6765 743d 2223 " data-target="# │ │ │ 0010eea0: 6964 3235 3522 2074 6162 696e 6465 783d id255" tabindex= │ │ │ 0010eeb0: 2230 2220 726f 6c65 3d22 6275 7474 6f6e "0" role="button │ │ │ 0010eec0: 2220 6172 6961 2d65 7870 616e 6465 643d " aria-expanded= │ │ │ 0010eed0: 2266 616c 7365 2220 7469 746c 653d 2241 "false" title="A │ │ │ 0010eee0: 6374 6976 6174 6520 746f 2072 6576 6561 ctivate to revea │ │ │ 0010eef0: 6c22 2068 7265 663d 2223 2122 3e52 656d l" href="#!">Rem │ │ │ -0010ef00: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ -0010ef10: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ -0010ef20: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...

.[[pack │ │ │ -0010ef70: 6167 6573 5d5d 0a6e 616d 6520 3d20 2272 ages]].name = "r │ │ │ -0010ef80: 7379 736c 6f67 220a 7665 7273 696f 6e20 syslog".version │ │ │ -0010ef90: 3d20 222a 220a 3c2f 636f 6465 3e3c 2f70 = "*".

Remediatio │ │ │ -0010f050: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ -0010f060: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -0010f0e0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ -0010f170: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
C │ │ │ +00101f30: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +00101f60: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +00101f70: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +00101fb0: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +00101fc0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexi │ │ │ -0010f0f0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -0010f100: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ -0010f140: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -0010f150: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
│ │ │ -0010f190: 3c63 6f64 653e 0a70 6163 6b61 6765 202d  .package -
│ │ │ -0010f1a0: 2d61 6464 3d72 7379 736c 6f67 0a3c 2f63  -add=rsyslog.
│ │ │ -0010f1c0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -0010f260: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ -0010f270: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -0010f280: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -0010f300: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -0010f330: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -0010f350: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -0010f360: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -0010f380: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -0010f3a0: 3c70 7265 3e3c 636f 6465 3e69 6e63 6c75
inclu
│ │ │ -0010f3b0: 6465 2069 6e73 7461 6c6c 5f72 7379 736c  de install_rsysl
│ │ │ -0010f3c0: 6f67 0a0a 636c 6173 7320 696e 7374 616c  og..class instal
│ │ │ -0010f3d0: 6c5f 7273 7973 6c6f 6720 7b0a 2020 7061  l_rsyslog {.  pa
│ │ │ -0010f3e0: 636b 6167 6520 7b20 2772 7379 736c 6f67  ckage { 'rsyslog
│ │ │ -0010f3f0: 273a 0a20 2020 2065 6e73 7572 6520 3d26  ':.    ensure =&
│ │ │ -0010f400: 6774 3b20 2769 6e73 7461 6c6c 6564 272c  gt; 'installed',
│ │ │ -0010f410: 0a20 207d 0a7d 0a3c 2f63 6f64 653e 3c2f  .  }.}.
Remediati │ │ │ -0010f4d0: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070 on Ansible snipp │ │ │ -0010f4e0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -0010f560: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -0010f570: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -0010f580: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -0010f5c0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -0010f5d0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -0010f5f0: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ -0010f610: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -0010f620: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -0010f630: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -0010f640: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -0010f650: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -0010f660: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -0010f670: 332d 434d 2d36 2861 290a 2020 2d20 656e  3-CM-6(a).  - en
│ │ │ -0010f680: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ -0010f690: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -0010f6a0: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -0010f6b0: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ -0010f6c0: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ -0010f6d0: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ -0010f6e0: 2070 6163 6b61 6765 5f72 7379 736c 6f67   package_rsyslog
│ │ │ -0010f6f0: 5f69 6e73 7461 6c6c 6564 0a0a 2d20 6e61  _installed..- na
│ │ │ -0010f700: 6d65 3a20 456e 7375 7265 2072 7379 736c  me: Ensure rsysl
│ │ │ -0010f710: 6f67 2069 7320 696e 7374 616c 6c65 640a  og is installed.
│ │ │ -0010f720: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -0010f730: 6e2e 7061 636b 6167 653a 0a20 2020 206e  n.package:.    n
│ │ │ -0010f740: 616d 653a 2072 7379 736c 6f67 0a20 2020  ame: rsyslog.   
│ │ │ -0010f750: 2073 7461 7465 3a20 7072 6573 656e 740a   state: present.
│ │ │ -0010f760: 2020 7768 656e 3a20 2722 6b65 726e 656c    when: '"kernel
│ │ │ -0010f770: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -0010f780: 7473 2e70 6163 6b61 6765 7327 0a20 2074  ts.packages'.  t
│ │ │ -0010f790: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -0010f7a0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -0010f7b0: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ -0010f7c0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -0010f7d0: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ -0010f7e0: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ -0010f7f0: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ -0010f800: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -0010f810: 2020 2d20 7061 636b 6167 655f 7273 7973    - package_rsys
│ │ │ -0010f820: 6c6f 675f 696e 7374 616c 6c65 640a 3c2f  log_installed.
Re │ │ │ -0010f8e0: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ -0010f8f0: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
Comp │ │ │ -0010f980: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -0010f990: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -0010f9b0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -0010f9d0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -0010f9e0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -0010fa20: 7072 653e 3c63 6f64 653e 2320 5265 6d65 pre># Reme │ │ │ -0010fa30: 6469 6174 696f 6e20 6973 2061 7070 6c69 diation is appli │ │ │ -0010fa40: 6361 626c 6520 6f6e 6c79 2069 6e20 6365 cable only in ce │ │ │ -0010fa50: 7274 6169 6e20 706c 6174 666f 726d 730a rtain platforms. │ │ │ -0010fa60: 6966 2072 706d 202d 2d71 7569 6574 202d if rpm --quiet - │ │ │ -0010fa70: 7120 6b65 726e 656c 3b20 7468 656e 0a0a q kernel; then.. │ │ │ -0010fa80: 6966 2021 2072 706d 202d 7120 2d2d 7175 if ! rpm -q --qu │ │ │ -0010fa90: 6965 7420 2272 7379 736c 6f67 2220 3b20 iet "rsyslog" ; │ │ │ -0010faa0: 7468 656e 0a20 2020 2064 6e66 2069 6e73 then. dnf ins │ │ │ -0010fab0: 7461 6c6c 202d 7920 2272 7379 736c 6f67 tall -y "rsyslog │ │ │ -0010fac0: 220a 6669 0a0a 656c 7365 0a20 2020 2026 ".fi..else. & │ │ │ -0010fad0: 6774 3b26 616d 703b 3220 6563 686f 2027 gt;&2 echo ' │ │ │ -0010fae0: 5265 6d65 6469 6174 696f 6e20 6973 206e Remediation is n │ │ │ -0010faf0: 6f74 2061 7070 6c69 6361 626c 652c 206e ot applicable, n │ │ │ -0010fb00: 6f74 6869 6e67 2077 6173 2064 6f6e 6527 othing was done' │ │ │ -0010fb10: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265 .fi. │ │ │ +0010ef20: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +0010efc0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0010f010: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +0010efa0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0010efd0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0010eff0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0010f000: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0010f020: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +0010f030: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ +0010f050: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ +0010f060: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ +0010f070: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ +0010f080: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ +0010f090: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +0010f0a0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +0010f0b0: 2020 2d20 656e 6162 6c65 5f73 7472 6174    - enable_strat
│ │ │ +0010f0c0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +0010f0d0: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +0010f0e0: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +0010f0f0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +0010f100: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +0010f110: 6564 0a20 202d 2070 6163 6b61 6765 5f72  ed.  - package_r
│ │ │ +0010f120: 7379 736c 6f67 5f69 6e73 7461 6c6c 6564  syslog_installed
│ │ │ +0010f130: 0a0a 2d20 6e61 6d65 3a20 456e 7375 7265  ..- name: Ensure
│ │ │ +0010f140: 2072 7379 736c 6f67 2069 7320 696e 7374   rsyslog is inst
│ │ │ +0010f150: 616c 6c65 640a 2020 616e 7369 626c 652e  alled.  ansible.
│ │ │ +0010f160: 6275 696c 7469 6e2e 7061 636b 6167 653a  builtin.package:
│ │ │ +0010f170: 0a20 2020 206e 616d 653a 2072 7379 736c  .    name: rsysl
│ │ │ +0010f180: 6f67 0a20 2020 2073 7461 7465 3a20 7072  og.    state: pr
│ │ │ +0010f190: 6573 656e 740a 2020 7768 656e 3a20 2722  esent.  when: '"
│ │ │ +0010f1a0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +0010f1b0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +0010f1c0: 7327 0a20 2074 6167 733a 0a20 202d 204e  s'.  tags:.  - N
│ │ │ +0010f1d0: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +0010f1e0: 6129 0a20 202d 2065 6e61 626c 655f 7374  a).  - enable_st
│ │ │ +0010f1f0: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ +0010f200: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ +0010f210: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +0010f220: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +0010f230: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +0010f240: 6565 6465 640a 2020 2d20 7061 636b 6167  eeded.  - packag
│ │ │ +0010f250: 655f 7273 7973 6c6f 675f 696e 7374 616c  e_rsyslog_instal
│ │ │ +0010f260: 6c65 640a 3c2f 636f 6465 3e3c 2f70 7265  led.
Remediation │ │ │ +0010f320: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ +0010f330: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +0010f3b0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +0010f3d0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +0010f420: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ +0010f450: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
include instal
│ │ │ +0010f470: 6c5f 7273 7973 6c6f 670a 0a63 6c61 7373  l_rsyslog..class
│ │ │ +0010f480: 2069 6e73 7461 6c6c 5f72 7379 736c 6f67   install_rsyslog
│ │ │ +0010f490: 207b 0a20 2070 6163 6b61 6765 207b 2027   {.  package { '
│ │ │ +0010f4a0: 7273 7973 6c6f 6727 3a0a 2020 2020 656e  rsyslog':.    en
│ │ │ +0010f4b0: 7375 7265 203d 2667 743b 2027 696e 7374  sure => 'inst
│ │ │ +0010f4c0: 616c 6c65 6427 2c0a 2020 7d0a 7d0a 3c2f  alled',.  }.}.
Re │ │ │ +0010f580: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ +0010f590: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ +0010f5a0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +0010f5b0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +0010f5c0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +0010f5d0: 7365 2220 6964 3d22 6964 3235 3722 3e3c se" id="id257">< │ │ │ +0010f5e0: 7072 653e 3c63 6f64 653e 0a5b 5b70 6163 pre>.[[pac │ │ │ +0010f5f0: 6b61 6765 735d 5d0a 6e61 6d65 203d 2022 kages]].name = " │ │ │ +0010f600: 7273 7973 6c6f 6722 0a76 6572 7369 6f6e rsyslog".version │ │ │ +0010f610: 203d 2022 2a22 0a3c 2f63 6f64 653e 3c2f = "*".Remediati │ │ │ +0010f6d0: 6f6e 2053 6865 6c6c 2073 6372 6970 7420 on Shell script │ │ │ +0010f6e0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
low< │ │ │ +0010f7b0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ +0010f800: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +0010f3c0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +0010f3e0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +0010f430: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ +0010f440: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
Complexity: │ │ │ +0010f770: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ +0010f790: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:false
St │ │ │ +0010f7e0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +0010f7f0: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable
# Remediation
│ │ │ +0010f820: 2069 7320 6170 706c 6963 6162 6c65 206f   is applicable o
│ │ │ +0010f830: 6e6c 7920 696e 2063 6572 7461 696e 2070  nly in certain p
│ │ │ +0010f840: 6c61 7466 6f72 6d73 0a69 6620 7270 6d20  latforms.if rpm 
│ │ │ +0010f850: 2d2d 7175 6965 7420 2d71 206b 6572 6e65  --quiet -q kerne
│ │ │ +0010f860: 6c3b 2074 6865 6e0a 0a69 6620 2120 7270  l; then..if ! rp
│ │ │ +0010f870: 6d20 2d71 202d 2d71 7569 6574 2022 7273  m -q --quiet "rs
│ │ │ +0010f880: 7973 6c6f 6722 203b 2074 6865 6e0a 2020  yslog" ; then.  
│ │ │ +0010f890: 2020 646e 6620 696e 7374 616c 6c20 2d79    dnf install -y
│ │ │ +0010f8a0: 2022 7273 7973 6c6f 6722 0a66 690a 0a65   "rsyslog".fi..e
│ │ │ +0010f8b0: 6c73 650a 2020 2020 2667 743b 2661 6d70  lse.    >&
│ │ │ +0010f8c0: 3b32 2065 6368 6f20 2752 656d 6564 6961  ;2 echo 'Remedia
│ │ │ +0010f8d0: 7469 6f6e 2069 7320 6e6f 7420 6170 706c  tion is not appl
│ │ │ +0010f8e0: 6963 6162 6c65 2c20 6e6f 7468 696e 6720  icable, nothing 
│ │ │ +0010f8f0: 7761 7320 646f 6e65 270a 6669 0a3c 2f63  was done'.fi.
│ │ │ +0010f910: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +0010f9b0: 6564 6961 7469 6f6e 2041 6e61 636f 6e64 ediation Anacond │ │ │ +0010f9c0: 6120 736e 6970 7065 7420 e287 b23c 2f61 a snippet ...
< │ │ │ +0010fa60: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0010fa70: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +0010fac0: 3c74 723e 3c74 683e 5374 7261 7465 6779
.pa
│ │ │ +0010fb00: 636b 6167 6520 2d2d 6164 643d 7273 7973  ckage --add=rsys
│ │ │ +0010fb10: 6c6f 670a 3c2f 636f 6465 3e3c 2f70 7265  log.
< │ │ │ 0010fb40: 2f74 6162 6c65 3e3c 2f74 643e 3c2f 7472 /table>Remediatio │ │ │ -001988f0: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ -00198900: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -00198980: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Strategy: │ │ │ -00198a10: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c < │ │ │ -00198a20: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
C │ │ │ +0010fa50: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +0010fa80: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +0010fa90: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +0010fad0: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +0010fae0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexi │ │ │ -00198990: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -001989a0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:high
Reboo │ │ │ -001989e0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -001989f0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
enable
.part /ho
│ │ │ -00198a40: 6d65 202d 2d6d 6f75 6e74 6f70 7469 6f6e  me --mountoption
│ │ │ -00198a50: 733d 226e 6f64 6576 220a 3c2f 636f 6465  s="nodev".
Remedi │ │ │ -00198b10: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -00198b20: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -00198bd0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c
- n
│ │ │ -00198c60: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ -00198c70: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ -00198c80: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -00198c90: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ -00198ca0: 0a20 2074 6167 733a 0a20 202d 2063 6f6e  .  tags:.  - con
│ │ │ -00198cb0: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -00198cc0: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -00198cd0: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -00198ce0: 6c65 7869 7479 0a20 202d 206d 6f75 6e74  lexity.  - mount
│ │ │ -00198cf0: 5f6f 7074 696f 6e5f 686f 6d65 5f6e 6f64  _option_home_nod
│ │ │ -00198d00: 6576 0a20 202d 206e 6f5f 7265 626f 6f74  ev.  - no_reboot
│ │ │ -00198d10: 5f6e 6565 6465 640a 2020 2d20 756e 6b6e  _needed.  - unkn
│ │ │ -00198d20: 6f77 6e5f 7365 7665 7269 7479 0a0a 2d20  own_severity..- 
│ │ │ -00198d30: 6e61 6d65 3a20 2741 6464 206e 6f64 6576  name: 'Add nodev
│ │ │ -00198d40: 204f 7074 696f 6e20 746f 202f 686f 6d65   Option to /home
│ │ │ -00198d50: 3a20 4368 6563 6b20 696e 666f 726d 6174  : Check informat
│ │ │ -00198d60: 696f 6e20 6173 736f 6369 6174 6564 2074  ion associated t
│ │ │ -00198d70: 6f20 6d6f 756e 7470 6f69 6e74 270a 2020  o mountpoint'.  
│ │ │ -00198d80: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -00198d90: 636f 6d6d 616e 643a 2066 696e 646d 6e74  command: findmnt
│ │ │ -00198da0: 202d 2d66 7374 6162 2027 2f68 6f6d 6527   --fstab '/home'
│ │ │ -00198db0: 0a20 2072 6567 6973 7465 723a 2064 6576  .  register: dev
│ │ │ -00198dc0: 6963 655f 6e61 6d65 0a20 2066 6169 6c65  ice_name.  faile
│ │ │ -00198dd0: 645f 7768 656e 3a20 6465 7669 6365 5f6e  d_when: device_n
│ │ │ -00198de0: 616d 652e 7263 2026 6774 3b20 310a 2020  ame.rc > 1.  
│ │ │ -00198df0: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ -00198e00: 6c73 650a 2020 6368 6563 6b5f 6d6f 6465  lse.  check_mode
│ │ │ -00198e10: 3a20 6661 6c73 650a 2020 7768 656e 3a0a  : false.  when:.
│ │ │ -00198e20: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ -00198e30: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -00198e40: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -00198e50: 6e64 2022 7270 6d2d 6f73 7472 6565 2220  nd "rpm-ostree" 
│ │ │ -00198e60: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -00198e70: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -00198e80: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ -00198e90: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -00198ea0: 6765 7320 616e 6420 6e6f 7420 226f 7065  ges and not "ope
│ │ │ -00198eb0: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ -00198ec0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -00198ed0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -00198ee0: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ -00198ef0: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ -00198f00: 6e65 2029 2061 6e64 206e 6f74 2028 2061  ne ) and not ( a
│ │ │ -00198f10: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ -00198f20: 6174 696f 6e5f 7479 7065 2069 6e0a 2020  ation_type in.  
│ │ │ -00198f30: 2020 5b22 646f 636b 6572 222c 2022 6c78    ["docker", "lx
│ │ │ -00198f40: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ -00198f50: 6f64 6d61 6e22 2c20 2263 6f6e 7461 696e  odman", "contain
│ │ │ -00198f60: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ -00198f70: 686f 6d65 2220 696e 2061 6e73 6962 6c65  home" in ansible
│ │ │ -00198f80: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ -00198f90: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ -00198fa0: 207c 206c 6973 7427 0a20 2074 6167 733a   | list'.  tags:
│ │ │ -00198fb0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -00198fc0: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -00198fd0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -00198fe0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -00198ff0: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ -00199000: 686f 6d65 5f6e 6f64 6576 0a20 202d 206e  home_nodev.  - n
│ │ │ -00199010: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -00199020: 2020 2d20 756e 6b6e 6f77 6e5f 7365 7665    - unknown_seve
│ │ │ -00199030: 7269 7479 0a0a 2d20 6e61 6d65 3a20 2741  rity..- name: 'A
│ │ │ -00199040: 6464 206e 6f64 6576 204f 7074 696f 6e20  dd nodev Option 
│ │ │ -00199050: 746f 202f 686f 6d65 3a20 4372 6561 7465  to /home: Create
│ │ │ -00199060: 206d 6f75 6e74 5f69 6e66 6f20 6469 6374   mount_info dict
│ │ │ -00199070: 696f 6e61 7279 2076 6172 6961 626c 6527  ionary variable'
│ │ │ -00199080: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ -00199090: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b   mount_info: '{{
│ │ │ -001990a0: 206d 6f75 6e74 5f69 6e66 6f7c 6465 6661   mount_info|defa
│ │ │ -001990b0: 756c 7428 7b7d 297c 636f 6d62 696e 6528  ult({})|combine(
│ │ │ -001990c0: 7b69 7465 6d2e 303a 2069 7465 6d2e 317d  {item.0: item.1}
│ │ │ -001990d0: 2920 7d7d 270a 2020 7769 7468 5f74 6f67  ) }}'.  with_tog
│ │ │ -001990e0: 6574 6865 723a 0a20 202d 2027 7b7b 2064  ether:.  - '{{ d
│ │ │ -001990f0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -00199100: 745f 6c69 6e65 735b 305d 2e73 706c 6974  t_lines[0].split
│ │ │ -00199110: 2829 207c 206d 6170 2827 276c 6f77 6572  () | map(''lower
│ │ │ -00199120: 2727 2920 7c20 6c69 7374 207d 7d27 0a20  '') | list }}'. 
│ │ │ -00199130: 202d 2027 7b7b 2064 6576 6963 655f 6e61   - '{{ device_na
│ │ │ -00199140: 6d65 2e73 7464 6f75 745f 6c69 6e65 735b  me.stdout_lines[
│ │ │ -00199150: 315d 2e73 706c 6974 2829 207c 206c 6973  1].split() | lis
│ │ │ -00199160: 7420 7d7d 270a 2020 7768 656e 3a0a 2020  t }}'.  when:.  
│ │ │ -00199170: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ -00199180: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -00199190: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001991a0: 2022 7270 6d2d 6f73 7472 6565 2220 696e   "rpm-ostree" in
│ │ │ -001991b0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001991c0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001991d0: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ -001991e0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001991f0: 7320 616e 6420 6e6f 7420 226f 7065 6e73  s and not "opens
│ │ │ -00199200: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ -00199210: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -00199220: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -00199230: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ -00199240: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ -00199250: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ -00199260: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ -00199270: 696f 6e5f 7479 7065 2069 6e0a 2020 2020  ion_type in.    
│ │ │ -00199280: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ -00199290: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ -001992a0: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572  man", "container
│ │ │ -001992b0: 225d 2029 2029 0a20 202d 2027 222f 686f  "] ) ).  - '"/ho
│ │ │ -001992c0: 6d65 2220 696e 2061 6e73 6962 6c65 5f6d  me" in ansible_m
│ │ │ -001992d0: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ -001992e0: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ -001992f0: 206c 6973 7427 0a20 202d 2064 6576 6963   list'.  - devic
│ │ │ -00199300: 655f 6e61 6d65 2e73 7464 6f75 7420 6973  e_name.stdout is
│ │ │ -00199310: 2064 6566 696e 6564 2061 6e64 2064 6576   defined and dev
│ │ │ -00199320: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ -00199330: 6c69 6e65 7320 6973 2064 6566 696e 6564  lines is defined
│ │ │ -00199340: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ -00199350: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ -00199360: 6820 2667 743b 2030 290a 2020 7461 6773  h > 0).  tags
│ │ │ -00199370: 3a0a 2020 2d20 636f 6e66 6967 7572 655f  :.  - configure_
│ │ │ -00199380: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -00199390: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001993a0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001993b0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ -001993c0: 5f68 6f6d 655f 6e6f 6465 760a 2020 2d20  _home_nodev.  - 
│ │ │ -001993d0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001993e0: 0a20 202d 2075 6e6b 6e6f 776e 5f73 6576  .  - unknown_sev
│ │ │ -001993f0: 6572 6974 790a 0a2d 206e 616d 653a 2027  erity..- name: '
│ │ │ -00199400: 4164 6420 6e6f 6465 7620 4f70 7469 6f6e  Add nodev Option
│ │ │ -00199410: 2074 6f20 2f68 6f6d 653a 2049 6620 2f68   to /home: If /h
│ │ │ -00199420: 6f6d 6520 6e6f 7420 6d6f 756e 7465 642c  ome not mounted,
│ │ │ -00199430: 2063 7261 6674 206d 6f75 6e74 5f69 6e66   craft mount_inf
│ │ │ -00199440: 6f20 6d61 6e75 616c 6c79 270a 2020 7365  o manually'.  se
│ │ │ -00199450: 745f 6661 6374 3a0a 2020 2020 6d6f 756e  t_fact:.    moun
│ │ │ -00199460: 745f 696e 666f 3a20 277b 7b20 6d6f 756e  t_info: '{{ moun
│ │ │ -00199470: 745f 696e 666f 7c64 6566 6175 6c74 287b  t_info|default({
│ │ │ -00199480: 7d29 7c63 6f6d 6269 6e65 287b 6974 656d  })|combine({item
│ │ │ -00199490: 2e30 3a20 6974 656d 2e31 7d29 207d 7d27  .0: item.1}) }}'
│ │ │ -001994a0: 0a20 2077 6974 685f 746f 6765 7468 6572  .  with_together
│ │ │ -001994b0: 3a0a 2020 2d20 2d20 7461 7267 6574 0a20  :.  - - target. 
│ │ │ -001994c0: 2020 202d 2073 6f75 7263 650a 2020 2020     - source.    
│ │ │ -001994d0: 2d20 6673 7479 7065 0a20 2020 202d 206f  - fstype.    - o
│ │ │ -001994e0: 7074 696f 6e73 0a20 202d 202d 202f 686f  ptions.  - - /ho
│ │ │ -001994f0: 6d65 0a20 2020 202d 2027 270a 2020 2020  me.    - ''.    
│ │ │ -00199500: 2d20 2727 0a20 2020 202d 2064 6566 6175  - ''.    - defau
│ │ │ -00199510: 6c74 730a 2020 7768 656e 3a0a 2020 2d20  lts.  when:.  - 
│ │ │ -00199520: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -00199530: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -00199540: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -00199550: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ -00199560: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -00199570: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ -00199580: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -00199590: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001995a0: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001995b0: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001995c0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001995d0: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ -001995e0: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001995f0: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ -00199600: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -00199610: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -00199620: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ -00199630: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -00199640: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -00199650: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ -00199660: 2029 2029 0a20 202d 2027 222f 686f 6d65   ) ).  - '"/home
│ │ │ -00199670: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ -00199680: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ -00199690: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ -001996a0: 6973 7427 0a20 202d 2028 222d 2d66 7374  ist'.  - ("--fst
│ │ │ -001996b0: 6162 2220 7c20 6c65 6e67 7468 203d 3d20  ab" | length == 
│ │ │ -001996c0: 3029 0a20 202d 2064 6576 6963 655f 6e61  0).  - device_na
│ │ │ -001996d0: 6d65 2e73 7464 6f75 7420 6973 2064 6566  me.stdout is def
│ │ │ -001996e0: 696e 6564 2061 6e64 2064 6576 6963 655f  ined and device_
│ │ │ -001996f0: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ -00199700: 7320 6973 2064 6566 696e 6564 0a20 202d  s is defined.  -
│ │ │ -00199710: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ -00199720: 646f 7574 207c 206c 656e 6774 6820 3d3d  dout | length ==
│ │ │ -00199730: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ -00199740: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ -00199750: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ -00199760: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ -00199770: 6f6d 706c 6578 6974 790a 2020 2d20 6d6f  omplexity.  - mo
│ │ │ -00199780: 756e 745f 6f70 7469 6f6e 5f68 6f6d 655f  unt_option_home_
│ │ │ -00199790: 6e6f 6465 760a 2020 2d20 6e6f 5f72 6562  nodev.  - no_reb
│ │ │ -001997a0: 6f6f 745f 6e65 6564 6564 0a20 202d 2075  oot_needed.  - u
│ │ │ -001997b0: 6e6b 6e6f 776e 5f73 6576 6572 6974 790a  nknown_severity.
│ │ │ -001997c0: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ -001997d0: 6465 7620 4f70 7469 6f6e 2074 6f20 2f68  dev Option to /h
│ │ │ -001997e0: 6f6d 653a 204d 616b 6520 7375 7265 206e  ome: Make sure n
│ │ │ -001997f0: 6f64 6576 206f 7074 696f 6e20 6973 2070  odev option is p
│ │ │ -00199800: 6172 7420 6f66 2074 6865 2074 6f20 2f68  art of the to /h
│ │ │ -00199810: 6f6d 650a 2020 2020 6f70 7469 6f6e 7327  ome.    options'
│ │ │ -00199820: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ -00199830: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b   mount_info: '{{
│ │ │ -00199840: 206d 6f75 6e74 5f69 6e66 6f20 7c20 636f   mount_info | co
│ │ │ -00199850: 6d62 696e 6528 207b 2727 6f70 7469 6f6e  mbine( {''option
│ │ │ -00199860: 7327 273a 2727 2727 7e28 6d6f 756e 745f  s'':''''~(mount_
│ │ │ -00199870: 696e 666f 2e6f 7074 696f 6e73 207c 0a20  info.options |. 
│ │ │ -00199880: 2020 2020 2064 6566 6175 6c74 2827 2727       default('''
│ │ │ -00199890: 2729 297e 2827 272c 2727 2069 6620 286d  '))~('','' if (m
│ │ │ -001998a0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -001998b0: 7320 7c20 6465 6661 756c 7428 2727 2727  s | default(''''
│ │ │ -001998c0: 2929 2065 6c73 6520 2727 2727 297e 2727  )) else '''')~''
│ │ │ -001998d0: 6e6f 6465 7627 270a 2020 2020 2020 7d29  nodev''.      })
│ │ │ -001998e0: 207d 7d27 0a20 2077 6865 6e3a 0a20 202d   }}'.  when:.  -
│ │ │ -001998f0: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ -00199900: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -00199910: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -00199920: 2272 706d 2d6f 7374 7265 6522 2069 6e20  "rpm-ostree" in 
│ │ │ -00199930: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -00199940: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -00199950: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -00199960: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -00199970: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ -00199980: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ -00199990: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001999a0: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001999b0: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001999c0: 6c65 5f70 726f 635f 636d 646c 696e 6520  le_proc_cmdline 
│ │ │ -001999d0: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ -001999e0: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ -001999f0: 6f6e 5f74 7970 6520 696e 0a20 2020 205b  on_type in.    [
│ │ │ -00199a00: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -00199a10: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -00199a20: 616e 222c 2022 636f 6e74 6169 6e65 7222  an", "container"
│ │ │ -00199a30: 5d20 2920 290a 2020 2d20 2722 2f68 6f6d  ] ) ).  - '"/hom
│ │ │ -00199a40: 6522 2069 6e20 616e 7369 626c 655f 6d6f  e" in ansible_mo
│ │ │ -00199a50: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ -00199a60: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ -00199a70: 6c69 7374 270a 2020 2d20 6d6f 756e 745f  list'.  - mount_
│ │ │ -00199a80: 696e 666f 2069 7320 6465 6669 6e65 6420  info is defined 
│ │ │ -00199a90: 616e 6420 226e 6f64 6576 2220 6e6f 7420  and "nodev" not 
│ │ │ -00199aa0: 696e 2028 6d6f 756e 745f 696e 666f 2e6f  in (mount_info.o
│ │ │ -00199ab0: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ -00199ac0: 2827 2729 290a 2020 7461 6773 3a0a 2020  ('')).  tags:.  
│ │ │ -00199ad0: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -00199ae0: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ -00199af0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -00199b00: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -00199b10: 6d6f 756e 745f 6f70 7469 6f6e 5f68 6f6d  mount_option_hom
│ │ │ -00199b20: 655f 6e6f 6465 760a 2020 2d20 6e6f 5f72  e_nodev.  - no_r
│ │ │ -00199b30: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ -00199b40: 2075 6e6b 6e6f 776e 5f73 6576 6572 6974   unknown_severit
│ │ │ -00199b50: 790a 0a2d 206e 616d 653a 2027 4164 6420  y..- name: 'Add 
│ │ │ -00199b60: 6e6f 6465 7620 4f70 7469 6f6e 2074 6f20  nodev Option to 
│ │ │ -00199b70: 2f68 6f6d 653a 2045 6e73 7572 6520 2f68  /home: Ensure /h
│ │ │ -00199b80: 6f6d 6520 6973 206d 6f75 6e74 6564 2077  ome is mounted w
│ │ │ -00199b90: 6974 6820 6e6f 6465 7620 6f70 7469 6f6e  ith nodev option
│ │ │ -00199ba0: 270a 2020 616e 7369 626c 652e 706f 7369  '.  ansible.posi
│ │ │ -00199bb0: 782e 6d6f 756e 743a 0a20 2020 2070 6174  x.mount:.    pat
│ │ │ -00199bc0: 683a 202f 686f 6d65 0a20 2020 2073 7263  h: /home.    src
│ │ │ -00199bd0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -00199be0: 2e73 6f75 7263 6520 7c20 6465 6661 756c  .source | defaul
│ │ │ -00199bf0: 7428 2727 2727 2920 7d7d 270a 2020 2020  t('''') }}'.    
│ │ │ -00199c00: 6f70 7473 3a20 277b 7b20 6d6f 756e 745f  opts: '{{ mount_
│ │ │ -00199c10: 696e 666f 2e6f 7074 696f 6e73 207c 2064  info.options | d
│ │ │ -00199c20: 6566 6175 6c74 2827 2727 2729 207d 7d27  efault('''') }}'
│ │ │ -00199c30: 0a20 2020 2073 7461 7465 3a20 6d6f 756e  .    state: moun
│ │ │ -00199c40: 7465 640a 2020 2020 6673 7479 7065 3a20  ted.    fstype: 
│ │ │ -00199c50: 277b 7b20 6d6f 756e 745f 696e 666f 2e66  '{{ mount_info.f
│ │ │ -00199c60: 7374 7970 6520 7c20 6465 6661 756c 7428  stype | default(
│ │ │ -00199c70: 2727 2727 2920 7d7d 270a 2020 7265 6769  '''') }}'.  regi
│ │ │ -00199c80: 7374 6572 3a20 6d6f 756e 745f 7265 7375  ster: mount_resu
│ │ │ -00199c90: 6c74 0a20 2066 6169 6c65 645f 7768 656e  lt.  failed_when
│ │ │ -00199ca0: 3a0a 2020 2d20 6d6f 756e 745f 7265 7375  :.  - mount_resu
│ │ │ -00199cb0: 6c74 2069 7320 6661 696c 6564 0a20 202d  lt is failed.  -
│ │ │ -00199cc0: 2027 2727 7461 7267 6574 2069 7320 6275   '''target is bu
│ │ │ -00199cd0: 7379 2727 206e 6f74 2069 6e20 286d 6f75  sy'' not in (mou
│ │ │ -00199ce0: 6e74 5f72 6573 756c 742e 6d73 6720 7c20  nt_result.msg | 
│ │ │ -00199cf0: 6465 6661 756c 7428 2727 2727 2929 270a  default(''''))'.
│ │ │ -00199d00: 2020 2d20 2727 2761 6c72 6561 6479 206d    - '''already m
│ │ │ -00199d10: 6f75 6e74 6564 2727 206e 6f74 2069 6e20  ounted'' not in 
│ │ │ -00199d20: 286d 6f75 6e74 5f72 6573 756c 742e 6d73  (mount_result.ms
│ │ │ -00199d30: 6720 7c20 6465 6661 756c 7428 2727 2727  g | default(''''
│ │ │ -00199d40: 2929 270a 2020 7768 656e 3a0a 2020 2d20  ))'.  when:.  - 
│ │ │ -00199d50: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -00199d60: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -00199d70: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -00199d80: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ -00199d90: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -00199da0: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ -00199db0: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -00199dc0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -00199dd0: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -00199de0: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -00199df0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -00199e00: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ -00199e10: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -00199e20: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ -00199e30: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -00199e40: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -00199e50: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ -00199e60: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -00199e70: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -00199e80: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ -00199e90: 2029 2029 0a20 202d 2027 222f 686f 6d65   ) ).  - '"/home
│ │ │ -00199ea0: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ -00199eb0: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ -00199ec0: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ -00199ed0: 6973 7427 0a20 202d 206d 6f75 6e74 5f69  ist'.  - mount_i
│ │ │ -00199ee0: 6e66 6f20 6973 2064 6566 696e 6564 0a20  nfo is defined. 
│ │ │ -00199ef0: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ -00199f00: 7374 646f 7574 2069 7320 6465 6669 6e65  stdout is define
│ │ │ -00199f10: 6420 616e 6420 2864 6576 6963 655f 6e61  d and (device_na
│ │ │ -00199f20: 6d65 2e73 7464 6f75 7420 7c20 6c65 6e67  me.stdout | leng
│ │ │ -00199f30: 7468 2026 6774 3b20 3029 2920 6f72 2028  th > 0)) or (
│ │ │ -00199f40: 222d 2d66 7374 6162 220a 2020 2020 7c20  "--fstab".    | 
│ │ │ -00199f50: 6c65 6e67 7468 203d 3d20 3029 0a20 2074  length == 0).  t
│ │ │ -00199f60: 6167 733a 0a20 202d 2063 6f6e 6669 6775  ags:.  - configu
│ │ │ -00199f70: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ -00199f80: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ -00199f90: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -00199fa0: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -00199fb0: 696f 6e5f 686f 6d65 5f6e 6f64 6576 0a20  ion_home_nodev. 
│ │ │ -00199fc0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -00199fd0: 6465 640a 2020 2d20 756e 6b6e 6f77 6e5f  ded.  - unknown_
│ │ │ -00199fe0: 7365 7665 7269 7479 0a3c 2f63 6f64 653e  severity.
│ │ │ -00199ff0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -0019a0a0: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ -0019a0b0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -0019a130: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
Compl │ │ │ -00198bb0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -00198bc0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00198be0: 2f74 683e 3c74 643e 6869 6768 3c2f 7464 /th>high
Re │ │ │ -00198c00: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -00198c10: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:configure │ │ │ -00198c40: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Reboot:false

# Remed │ │ │ -0019a170: 6961 7469 6f6e 2069 7320 6170 706c 6963 iation is applic │ │ │ -0019a180: 6162 6c65 206f 6e6c 7920 696e 2063 6572 able only in cer │ │ │ -0019a190: 7461 696e 2070 6c61 7466 6f72 6d73 0a69 tain platforms.i │ │ │ -0019a1a0: 6620 2820 2120 2820 7b20 7270 6d20 2d2d f ( ! ( { rpm -- │ │ │ -0019a1b0: 7175 6965 7420 2d71 206b 6572 6e65 6c20 quiet -q kernel │ │ │ -0019a1c0: 3b7d 2026 616d 703b 2661 6d70 3b20 7b20 ;} && { │ │ │ -0019a1d0: 7270 6d20 2d2d 7175 6965 7420 2d71 2072 rpm --quiet -q r │ │ │ -0019a1e0: 706d 2d6f 7374 7265 6520 3b7d 2026 616d pm-ostree ;} &am │ │ │ -0019a1f0: 703b 2661 6d70 3b20 7b20 7270 6d20 2d2d p;& { rpm -- │ │ │ -0019a200: 7175 6965 7420 2d71 2062 6f6f 7463 203b quiet -q bootc ; │ │ │ -0019a210: 7d20 2661 6d70 3b26 616d 703b 207b 2021 } && { ! │ │ │ -0019a220: 2072 706d 202d 2d71 7569 6574 202d 7120 rpm --quiet -q │ │ │ -0019a230: 6f70 656e 7368 6966 742d 6b75 6265 6c65 openshift-kubele │ │ │ -0019a240: 7420 3b7d 2026 616d 703b 2661 6d70 3b20 t ;} && │ │ │ -0019a250: 285b 202d 6620 2f72 756e 2f6f 7374 7265 ([ -f /run/ostre │ │ │ -0019a260: 652d 626f 6f74 6564 205d 207c 7c20 5b20 e-booted ] || [ │ │ │ -0019a270: 2d4c 202f 6f73 7472 6565 205d 2920 2920 -L /ostree ]) ) │ │ │ -0019a280: 2661 6d70 3b26 616d 703b 2021 2028 205b && ! ( [ │ │ │ -0019a290: 202d 6620 2f2e 646f 636b 6572 656e 7620 -f /.dockerenv │ │ │ -0019a2a0: 5d20 7c7c 205b 202d 6620 2f72 756e 2f2e ] || [ -f /run/. │ │ │ -0019a2b0: 636f 6e74 6169 6e65 7265 6e76 205d 2029 containerenv ] ) │ │ │ -0019a2c0: 2029 2026 616d 703b 2661 6d70 3b20 7b20 ) && { │ │ │ -0019a2d0: 2820 6669 6e64 6d6e 7420 2d2d 6b65 726e ( findmnt --kern │ │ │ -0019a2e0: 656c 2022 2f68 6f6d 6522 2026 6774 3b20 el "/home" > │ │ │ -0019a2f0: 2f64 6576 2f6e 756c 6c20 7c7c 2066 696e /dev/null || fin │ │ │ -0019a300: 646d 6e74 202d 2d66 7374 6162 2022 2f68 dmnt --fstab "/h │ │ │ -0019a310: 6f6d 6522 2026 6774 3b20 2f64 6576 2f6e ome" > /dev/n │ │ │ -0019a320: 756c 6c20 293b 207d 3b20 7468 656e 0a0a ull ); }; then.. │ │ │ -0019a330: 6675 6e63 7469 6f6e 2070 6572 666f 726d function perform │ │ │ -0019a340: 5f72 656d 6564 6961 7469 6f6e 207b 0a0a _remediation {.. │ │ │ -0019a350: 2020 2020 0a20 2020 2020 2020 2023 2074 . # t │ │ │ -0019a360: 6865 206d 6f75 6e74 2070 6f69 6e74 202f he mount point / │ │ │ -0019a370: 686f 6d65 2068 6173 2074 6f20 6265 2064 home has to be d │ │ │ -0019a380: 6566 696e 6564 2069 6e20 2f65 7463 2f66 efined in /etc/f │ │ │ -0019a390: 7374 6162 0a20 2020 2020 2020 2023 2062 stab. # b │ │ │ -0019a3a0: 6566 6f72 6520 7468 6973 2072 656d 6564 efore this remed │ │ │ -0019a3b0: 6961 7469 6f6e 2063 616e 2062 6520 6578 iation can be ex │ │ │ -0019a3c0: 6563 7574 6564 2e20 496e 2063 6173 6520 ecuted. In case │ │ │ -0019a3d0: 6974 2069 7320 6e6f 7420 6465 6669 6e65 it is not define │ │ │ -0019a3e0: 642c 2074 6865 0a20 2020 2020 2020 2023 d, the. # │ │ │ -0019a3f0: 2072 656d 6564 6961 7469 6f6e 2061 626f remediation abo │ │ │ -0019a400: 7274 7320 616e 6420 6e6f 2063 6861 6e67 rts and no chang │ │ │ -0019a410: 6573 2072 6567 6172 6469 6e67 2074 6865 es regarding the │ │ │ -0019a420: 206d 6f75 6e74 2070 6f69 6e74 2061 7265 mount point are │ │ │ -0019a430: 2064 6f6e 652e 0a20 2020 2020 2020 206d done.. m │ │ │ -0019a440: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368 ount_point_match │ │ │ -0019a450: 5f72 6567 6578 703d 2224 2870 7269 6e74 _regexp="$(print │ │ │ -0019a460: 6620 225e 5b5b 3a73 7061 6365 3a5d 5d2a f "^[[:space:]]* │ │ │ -0019a470: 5b5e 235d 2e2a 5b5b 3a73 7061 6365 3a5d [^#].*[[:space:] │ │ │ -0019a480: 5d25 735b 5b3a 7370 6163 653a 5d5d 2220 ]%s[[:space:]]" │ │ │ -0019a490: 222f 686f 6d65 2229 220a 0a20 2020 2067 "/home")".. g │ │ │ -0019a4a0: 7265 7020 2224 6d6f 756e 745f 706f 696e rep "$mount_poin │ │ │ -0019a4b0: 745f 6d61 7463 685f 7265 6765 7870 2220 t_match_regexp" │ │ │ -0019a4c0: 2d71 202f 6574 632f 6673 7461 6220 5c0a -q /etc/fstab \. │ │ │ -0019a4d0: 2020 2020 2020 2020 7c7c 207b 2065 6368 || { ech │ │ │ -0019a4e0: 6f20 2254 6865 206d 6f75 6e74 2070 6f69 o "The mount poi │ │ │ -0019a4f0: 6e74 2027 2f68 6f6d 6527 2069 7320 6e6f nt '/home' is no │ │ │ -0019a500: 7420 6576 656e 2069 6e20 2f65 7463 2f66 t even in /etc/f │ │ │ -0019a510: 7374 6162 2c20 736f 2077 6520 6361 6e27 stab, so we can' │ │ │ -0019a520: 7420 7365 7420 7570 206d 6f75 6e74 206f t set up mount o │ │ │ -0019a530: 7074 696f 6e73 2220 2667 743b 2661 6d70 ptions" >& │ │ │ -0019a540: 3b32 3b0a 2020 2020 2020 2020 2020 2020 ;2;. │ │ │ -0019a550: 2020 2020 6563 686f 2022 4e6f 7420 7265 echo "Not re │ │ │ -0019a560: 6d65 6469 6174 696e 672c 2062 6563 6175 mediating, becau │ │ │ -0019a570: 7365 2074 6865 7265 2069 7320 6e6f 2072 se there is no r │ │ │ -0019a580: 6563 6f72 6420 6f66 202f 686f 6d65 2069 ecord of /home i │ │ │ -0019a590: 6e20 2f65 7463 2f66 7374 6162 2220 2667 n /etc/fstab" &g │ │ │ -0019a5a0: 743b 2661 6d70 3b32 3b20 7265 7475 726e t;&2; return │ │ │ -0019a5b0: 2031 3b20 7d0a 2020 2020 0a0a 0a20 2020 1; }. ... │ │ │ -0019a5c0: 206d 6f75 6e74 5f70 6f69 6e74 5f6d 6174 mount_point_mat │ │ │ -0019a5d0: 6368 5f72 6567 6578 703d 2224 2870 7269 ch_regexp="$(pri │ │ │ -0019a5e0: 6e74 6620 225e 5b5b 3a73 7061 6365 3a5d ntf "^[[:space:] │ │ │ -0019a5f0: 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061 6365 ]*[^#].*[[:space │ │ │ -0019a600: 3a5d 5d25 735b 5b3a 7370 6163 653a 5d5d :]]%s[[:space:]] │ │ │ -0019a610: 2220 2f68 6f6d 6529 220a 0a20 2020 2023 " /home)".. # │ │ │ -0019a620: 2049 6620 7468 6520 6d6f 756e 7420 706f If the mount po │ │ │ -0019a630: 696e 7420 6973 206e 6f74 2069 6e20 2f65 int is not in /e │ │ │ -0019a640: 7463 2f66 7374 6162 2c20 6765 7420 7072 tc/fstab, get pr │ │ │ -0019a650: 6576 696f 7573 206d 6f75 6e74 206f 7074 evious mount opt │ │ │ -0019a660: 696f 6e73 2066 726f 6d20 2f65 7463 2f6d ions from /etc/m │ │ │ -0019a670: 7461 620a 2020 2020 6966 2021 2067 7265 tab. if ! gre │ │ │ -0019a680: 7020 2d71 2022 246d 6f75 6e74 5f70 6f69 p -q "$mount_poi │ │ │ -0019a690: 6e74 5f6d 6174 6368 5f72 6567 6578 7022 nt_match_regexp" │ │ │ -0019a6a0: 202f 6574 632f 6673 7461 623b 2074 6865 /etc/fstab; the │ │ │ -0019a6b0: 6e0a 2020 2020 2020 2020 2320 7275 6e74 n. # runt │ │ │ -0019a6c0: 696d 6520 6f70 7473 2077 6974 686f 7574 ime opts without │ │ │ -0019a6d0: 2073 6f6d 6520 6175 746f 6d61 7469 6320 some automatic │ │ │ -0019a6e0: 6b65 726e 656c 2f75 7365 7273 7061 6365 kernel/userspace │ │ │ -0019a6f0: 2d61 6464 6564 2064 6566 6175 6c74 730a -added defaults. │ │ │ -0019a700: 2020 2020 2020 2020 7072 6576 696f 7573 previous │ │ │ -0019a710: 5f6d 6f75 6e74 5f6f 7074 733d 2428 6772 _mount_opts=$(gr │ │ │ -0019a720: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74 ep "$mount_point │ │ │ -0019a730: 5f6d 6174 6368 5f72 6567 6578 7022 202f _match_regexp" / │ │ │ -0019a740: 6574 632f 6d74 6162 207c 2068 6561 6420 etc/mtab | head │ │ │ -0019a750: 2d31 207c 2020 6177 6b20 277b 7072 696e -1 | awk '{prin │ │ │ -0019a760: 7420 2434 7d27 205c 0a20 2020 2020 2020 t $4}' \. │ │ │ -0019a770: 2020 2020 2020 2020 2020 2020 207c 2073 | s │ │ │ -0019a780: 6564 202d 4520 2273 2f28 7277 7c64 6566 ed -E "s/(rw|def │ │ │ -0019a790: 6175 6c74 737c 7365 636c 6162 656c 7c6e aults|seclabel|n │ │ │ -0019a7a0: 6f64 6576 2928 2c7c 2429 2f2f 673b 732f odev)(,|$)//g;s/ │ │ │ -0019a7b0: 2c24 2f2f 2229 0a20 2020 2020 2020 205b ,$//"). [ │ │ │ -0019a7c0: 2022 2470 7265 7669 6f75 735f 6d6f 756e "$previous_moun │ │ │ -0019a7d0: 745f 6f70 7473 2220 5d20 2661 6d70 3b26 t_opts" ] && │ │ │ -0019a7e0: 616d 703b 2070 7265 7669 6f75 735f 6d6f amp; previous_mo │ │ │ -0019a7f0: 756e 745f 6f70 7473 2b3d 222c 220a 2020 unt_opts+=",". │ │ │ -0019a800: 2020 2020 2020 2320 496e 2069 736f 3936 # In iso96 │ │ │ -0019a810: 3630 2066 696c 6573 7973 7465 6d73 206d 60 filesystems m │ │ │ -0019a820: 7461 6220 636f 756c 6420 6465 7363 7269 tab could descri │ │ │ -0019a830: 6265 2061 2022 626c 6f63 6b73 697a 6522 be a "blocksize" │ │ │ -0019a840: 2076 616c 7565 2c20 7468 6973 2073 686f value, this sho │ │ │ -0019a850: 756c 6420 6265 2072 6566 6c65 6374 6564 uld be reflected │ │ │ -0019a860: 2069 6e0a 2020 2020 2020 2020 2320 6673 in. # fs │ │ │ -0019a870: 7461 6220 6173 2022 626c 6f63 6b22 2e20 tab as "block". │ │ │ -0019a880: 2054 6865 206e 6578 7420 7661 7269 6162 The next variab │ │ │ -0019a890: 6c65 2069 7320 746f 2073 6174 6973 6679 le is to satisfy │ │ │ -0019a8a0: 2073 6865 6c6c 6368 6563 6b20 5343 3230 shellcheck SC20 │ │ │ -0019a8b0: 3530 2e0a 2020 2020 2020 2020 6673 5f74 50.. fs_t │ │ │ -0019a8c0: 7970 653d 2222 0a20 2020 2020 2020 2069 ype="". i │ │ │ -0019a8d0: 6620 5b20 2022 2466 735f 7479 7065 2220 f [ "$fs_type" │ │ │ -0019a8e0: 3d3d 2022 6973 6f39 3636 3022 205d 203b == "iso9660" ] ; │ │ │ -0019a8f0: 2074 6865 6e0a 2020 2020 2020 2020 2020 then. │ │ │ -0019a900: 2020 7072 6576 696f 7573 5f6d 6f75 6e74 previous_mount │ │ │ -0019a910: 5f6f 7074 733d 2428 7365 6420 2773 2f62 _opts=$(sed 's/b │ │ │ -0019a920: 6c6f 636b 7369 7a65 3d2f 626c 6f63 6b3d locksize=/block= │ │ │ -0019a930: 2f27 2026 6c74 3b26 6c74 3b26 6c74 3b20 /' <<< │ │ │ -0019a940: 2224 7072 6576 696f 7573 5f6d 6f75 6e74 "$previous_mount │ │ │ -0019a950: 5f6f 7074 7322 290a 2020 2020 2020 2020 _opts"). │ │ │ -0019a960: 6669 0a20 2020 2020 2020 2065 6368 6f20 fi. echo │ │ │ -0019a970: 2220 2f68 6f6d 6520 2064 6566 6175 6c74 " /home default │ │ │ -0019a980: 732c 247b 7072 6576 696f 7573 5f6d 6f75 s,${previous_mou │ │ │ -0019a990: 6e74 5f6f 7074 737d 6e6f 6465 7620 3020 nt_opts}nodev 0 │ │ │ -0019a9a0: 3022 2026 6774 3b26 6774 3b20 2f65 7463 0" >> /etc │ │ │ -0019a9b0: 2f66 7374 6162 0a20 2020 2023 2049 6620 /fstab. # If │ │ │ -0019a9c0: 7468 6520 6d6f 756e 745f 6f70 7420 6f70 the mount_opt op │ │ │ -0019a9d0: 7469 6f6e 2069 7320 6e6f 7420 616c 7265 tion is not alre │ │ │ -0019a9e0: 6164 7920 696e 2074 6865 206d 6f75 6e74 ady in the mount │ │ │ -0019a9f0: 2070 6f69 6e74 2773 202f 6574 632f 6673 point's /etc/fs │ │ │ -0019aa00: 7461 6220 656e 7472 792c 2061 6464 2069 tab entry, add i │ │ │ -0019aa10: 740a 2020 2020 656c 6966 2021 2067 7265 t. elif ! gre │ │ │ -0019aa20: 7020 2224 6d6f 756e 745f 706f 696e 745f p "$mount_point_ │ │ │ -0019aa30: 6d61 7463 685f 7265 6765 7870 2220 2f65 match_regexp" /e │ │ │ -0019aa40: 7463 2f66 7374 6162 207c 2067 7265 7020 tc/fstab | grep │ │ │ -0019aa50: 2d71 2022 6e6f 6465 7622 3b20 7468 656e -q "nodev"; then │ │ │ -0019aa60: 0a20 2020 2020 2020 2070 7265 7669 6f75 . previou │ │ │ -0019aa70: 735f 6d6f 756e 745f 6f70 7473 3d24 2867 s_mount_opts=$(g │ │ │ -0019aa80: 7265 7020 2224 6d6f 756e 745f 706f 696e rep "$mount_poin │ │ │ -0019aa90: 745f 6d61 7463 685f 7265 6765 7870 2220 t_match_regexp" │ │ │ -0019aaa0: 2f65 7463 2f66 7374 6162 207c 2061 776b /etc/fstab | awk │ │ │ -0019aab0: 2027 7b70 7269 6e74 2024 347d 2729 0a20 '{print $4}'). │ │ │ -0019aac0: 2020 2020 2020 2073 6564 202d 6920 2273 sed -i "s │ │ │ -0019aad0: 7c5c 2824 7b6d 6f75 6e74 5f70 6f69 6e74 |\(${mount_point │ │ │ -0019aae0: 5f6d 6174 6368 5f72 6567 6578 707d 2e2a _match_regexp}.* │ │ │ -0019aaf0: 247b 7072 6576 696f 7573 5f6d 6f75 6e74 ${previous_mount │ │ │ -0019ab00: 5f6f 7074 737d 5c29 7c5c 312c 6e6f 6465 _opts}\)|\1,node │ │ │ -0019ab10: 767c 2220 2f65 7463 2f66 7374 6162 0a20 v|" /etc/fstab. │ │ │ -0019ab20: 2020 2066 690a 0a0a 2020 2020 6966 206d fi... if m │ │ │ -0019ab30: 6b64 6972 202d 7020 222f 686f 6d65 223b kdir -p "/home"; │ │ │ -0019ab40: 2074 6865 6e0a 2020 2020 2020 2020 6966 then. if │ │ │ -0019ab50: 206d 6f75 6e74 706f 696e 7420 2d71 2022 mountpoint -q " │ │ │ -0019ab60: 2f68 6f6d 6522 3b20 7468 656e 0a20 2020 /home"; then. │ │ │ -0019ab70: 2020 2020 2020 2020 206d 6f75 6e74 202d mount - │ │ │ -0019ab80: 6f20 7265 6d6f 756e 7420 2d2d 7461 7267 o remount --targ │ │ │ -0019ab90: 6574 2022 2f68 6f6d 6522 0a20 2020 2020 et "/home". │ │ │ -0019aba0: 2020 2066 690a 2020 2020 6669 0a7d 0a0a fi. fi.}.. │ │ │ -0019abb0: 7065 7266 6f72 6d5f 7265 6d65 6469 6174 perform_remediat │ │ │ -0019abc0: 696f 6e0a 0a65 6c73 650a 2020 2020 2667 ion..else. &g │ │ │ -0019abd0: 743b 2661 6d70 3b32 2065 6368 6f20 2752 t;&2 echo 'R │ │ │ -0019abe0: 656d 6564 6961 7469 6f6e 2069 7320 6e6f emediation is no │ │ │ -0019abf0: 7420 6170 706c 6963 6162 6c65 2c20 6e6f t applicable, no │ │ │ -0019ac00: 7468 696e 6720 7761 7320 646f 6e65 270a thing was done'. │ │ │ -0019ac10: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e fi. │ │ │ +001988f0: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ +00198900: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +00198980: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +00198990: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +001989b0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +001989c0: 3c74 643e 6869 6768 3c2f 7464 3e3c 2f74 highReboot │ │ │ +001989e0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +001989f0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +00198a10: 7464 3e63 6f6e 6669 6775 7265 3c2f 7464 td>configure

- name: │ │ │ +00198a40: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ +00198a50: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ +00198a60: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ +00198a70: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ +00198a80: 6167 733a 0a20 202d 2063 6f6e 6669 6775 ags:. - configu │ │ │ +00198a90: 7265 5f73 7472 6174 6567 790a 2020 2d20 re_strategy. - │ │ │ +00198aa0: 6869 6768 5f64 6973 7275 7074 696f 6e0a high_disruption. │ │ │ +00198ab0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ +00198ac0: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074 ty. - mount_opt │ │ │ +00198ad0: 696f 6e5f 686f 6d65 5f6e 6f64 6576 0a20 ion_home_nodev. │ │ │ +00198ae0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ +00198af0: 6465 640a 2020 2d20 756e 6b6e 6f77 6e5f ded. - unknown_ │ │ │ +00198b00: 7365 7665 7269 7479 0a0a 2d20 6e61 6d65 severity..- name │ │ │ +00198b10: 3a20 2741 6464 206e 6f64 6576 204f 7074 : 'Add nodev Opt │ │ │ +00198b20: 696f 6e20 746f 202f 686f 6d65 3a20 4368 ion to /home: Ch │ │ │ +00198b30: 6563 6b20 696e 666f 726d 6174 696f 6e20 eck information │ │ │ +00198b40: 6173 736f 6369 6174 6564 2074 6f20 6d6f associated to mo │ │ │ +00198b50: 756e 7470 6f69 6e74 270a 2020 616e 7369 untpoint'. ansi │ │ │ +00198b60: 626c 652e 6275 696c 7469 6e2e 636f 6d6d ble.builtin.comm │ │ │ +00198b70: 616e 643a 2066 696e 646d 6e74 202d 2d66 and: findmnt --f │ │ │ +00198b80: 7374 6162 2027 2f68 6f6d 6527 0a20 2072 stab '/home'. r │ │ │ +00198b90: 6567 6973 7465 723a 2064 6576 6963 655f egister: device_ │ │ │ +00198ba0: 6e61 6d65 0a20 2066 6169 6c65 645f 7768 name. failed_wh │ │ │ +00198bb0: 656e 3a20 6465 7669 6365 5f6e 616d 652e en: device_name. │ │ │ +00198bc0: 7263 2026 6774 3b20 310a 2020 6368 616e rc > 1. chan │ │ │ +00198bd0: 6765 645f 7768 656e 3a20 6661 6c73 650a ged_when: false. │ │ │ +00198be0: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661 check_mode: fa │ │ │ +00198bf0: 6c73 650a 2020 7768 656e 3a0a 2020 2d20 lse. when:. - │ │ │ +00198c00: 2820 6e6f 7420 2820 226b 6572 6e65 6c22 ( not ( "kernel" │ │ │ +00198c10: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +00198c20: 732e 7061 636b 6167 6573 2061 6e64 2022 s.packages and " │ │ │ +00198c30: 7270 6d2d 6f73 7472 6565 2220 696e 2061 rpm-ostree" in a │ │ │ +00198c40: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ +00198c50: 6b61 6765 730a 2020 2020 616e 6420 2262 kages. and "b │ │ │ +00198c60: 6f6f 7463 2220 696e 2061 6e73 6962 6c65 ootc" in ansible │ │ │ +00198c70: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ +00198c80: 616e 6420 6e6f 7420 226f 7065 6e73 6869 and not "openshi │ │ │ +00198c90: 6674 2d6b 7562 656c 6574 2220 696e 2061 ft-kubelet" in a │ │ │ +00198ca0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ +00198cb0: 6b61 6765 730a 2020 2020 616e 6420 226f kages. and "o │ │ │ +00198cc0: 7374 7265 6522 2069 6e20 616e 7369 626c stree" in ansibl │ │ │ +00198cd0: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029 e_proc_cmdline ) │ │ │ +00198ce0: 2061 6e64 206e 6f74 2028 2061 6e73 6962 and not ( ansib │ │ │ +00198cf0: 6c65 5f76 6972 7475 616c 697a 6174 696f le_virtualizatio │ │ │ +00198d00: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22 n_type in. [" │ │ │ +00198d10: 646f 636b 6572 222c 2022 6c78 6322 2c20 docker", "lxc", │ │ │ +00198d20: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61 "openvz", "podma │ │ │ +00198d30: 6e22 2c20 2263 6f6e 7461 696e 6572 225d n", "container"] │ │ │ +00198d40: 2029 2029 0a20 202d 2027 222f 686f 6d65 ) ). - '"/home │ │ │ +00198d50: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75 " in ansible_mou │ │ │ +00198d60: 6e74 7320 7c20 6d61 7028 6174 7472 6962 nts | map(attrib │ │ │ +00198d70: 7574 653d 226d 6f75 6e74 2229 207c 206c ute="mount") | l │ │ │ +00198d80: 6973 7427 0a20 2074 6167 733a 0a20 202d ist'. tags:. - │ │ │ +00198d90: 2063 6f6e 6669 6775 7265 5f73 7472 6174 configure_strat │ │ │ +00198da0: 6567 790a 2020 2d20 6869 6768 5f64 6973 egy. - high_dis │ │ │ +00198db0: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f ruption. - low_ │ │ │ +00198dc0: 636f 6d70 6c65 7869 7479 0a20 202d 206d complexity. - m │ │ │ +00198dd0: 6f75 6e74 5f6f 7074 696f 6e5f 686f 6d65 ount_option_home │ │ │ +00198de0: 5f6e 6f64 6576 0a20 202d 206e 6f5f 7265 _nodev. - no_re │ │ │ +00198df0: 626f 6f74 5f6e 6565 6465 640a 2020 2d20 boot_needed. - │ │ │ +00198e00: 756e 6b6e 6f77 6e5f 7365 7665 7269 7479 unknown_severity │ │ │ +00198e10: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e ..- name: 'Add n │ │ │ +00198e20: 6f64 6576 204f 7074 696f 6e20 746f 202f odev Option to / │ │ │ +00198e30: 686f 6d65 3a20 4372 6561 7465 206d 6f75 home: Create mou │ │ │ +00198e40: 6e74 5f69 6e66 6f20 6469 6374 696f 6e61 nt_info dictiona │ │ │ +00198e50: 7279 2076 6172 6961 626c 6527 0a20 2073 ry variable'. s │ │ │ +00198e60: 6574 5f66 6163 743a 0a20 2020 206d 6f75 et_fact:. mou │ │ │ +00198e70: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75 nt_info: '{{ mou │ │ │ +00198e80: 6e74 5f69 6e66 6f7c 6465 6661 756c 7428 nt_info|default( │ │ │ +00198e90: 7b7d 297c 636f 6d62 696e 6528 7b69 7465 {})|combine({ite │ │ │ +00198ea0: 6d2e 303a 2069 7465 6d2e 317d 2920 7d7d m.0: item.1}) }} │ │ │ +00198eb0: 270a 2020 7769 7468 5f74 6f67 6574 6865 '. with_togethe │ │ │ +00198ec0: 723a 0a20 202d 2027 7b7b 2064 6576 6963 r:. - '{{ devic │ │ │ +00198ed0: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69 e_name.stdout_li │ │ │ +00198ee0: 6e65 735b 305d 2e73 706c 6974 2829 207c nes[0].split() | │ │ │ +00198ef0: 206d 6170 2827 276c 6f77 6572 2727 2920 map(''lower'') │ │ │ +00198f00: 7c20 6c69 7374 207d 7d27 0a20 202d 2027 | list }}'. - ' │ │ │ +00198f10: 7b7b 2064 6576 6963 655f 6e61 6d65 2e73 {{ device_name.s │ │ │ +00198f20: 7464 6f75 745f 6c69 6e65 735b 315d 2e73 tdout_lines[1].s │ │ │ +00198f30: 706c 6974 2829 207c 206c 6973 7420 7d7d plit() | list }} │ │ │ +00198f40: 270a 2020 7768 656e 3a0a 2020 2d20 2820 '. when:. - ( │ │ │ +00198f50: 6e6f 7420 2820 226b 6572 6e65 6c22 2069 not ( "kernel" i │ │ │ +00198f60: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +00198f70: 7061 636b 6167 6573 2061 6e64 2022 7270 packages and "rp │ │ │ +00198f80: 6d2d 6f73 7472 6565 2220 696e 2061 6e73 m-ostree" in ans │ │ │ +00198f90: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ +00198fa0: 6765 730a 2020 2020 616e 6420 2262 6f6f ges. and "boo │ │ │ +00198fb0: 7463 2220 696e 2061 6e73 6962 6c65 5f66 tc" in ansible_f │ │ │ +00198fc0: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ +00198fd0: 6420 6e6f 7420 226f 7065 6e73 6869 6674 d not "openshift │ │ │ +00198fe0: 2d6b 7562 656c 6574 2220 696e 2061 6e73 -kubelet" in ans │ │ │ +00198ff0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ +00199000: 6765 730a 2020 2020 616e 6420 226f 7374 ges. and "ost │ │ │ +00199010: 7265 6522 2069 6e20 616e 7369 626c 655f ree" in ansible_ │ │ │ +00199020: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061 proc_cmdline ) a │ │ │ +00199030: 6e64 206e 6f74 2028 2061 6e73 6962 6c65 nd not ( ansible │ │ │ +00199040: 5f76 6972 7475 616c 697a 6174 696f 6e5f _virtualization_ │ │ │ +00199050: 7479 7065 2069 6e0a 2020 2020 5b22 646f type in. ["do │ │ │ +00199060: 636b 6572 222c 2022 6c78 6322 2c20 226f cker", "lxc", "o │ │ │ +00199070: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22 penvz", "podman" │ │ │ +00199080: 2c20 2263 6f6e 7461 696e 6572 225d 2029 , "container"] ) │ │ │ +00199090: 2029 0a20 202d 2027 222f 686f 6d65 2220 ). - '"/home" │ │ │ +001990a0: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74 in ansible_mount │ │ │ +001990b0: 7320 7c20 6d61 7028 6174 7472 6962 7574 s | map(attribut │ │ │ +001990c0: 653d 226d 6f75 6e74 2229 207c 206c 6973 e="mount") | lis │ │ │ +001990d0: 7427 0a20 202d 2064 6576 6963 655f 6e61 t'. - device_na │ │ │ +001990e0: 6d65 2e73 7464 6f75 7420 6973 2064 6566 me.stdout is def │ │ │ +001990f0: 696e 6564 2061 6e64 2064 6576 6963 655f ined and device_ │ │ │ +00199100: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65 name.stdout_line │ │ │ +00199110: 7320 6973 2064 6566 696e 6564 0a20 202d s is defined. - │ │ │ +00199120: 2028 6465 7669 6365 5f6e 616d 652e 7374 (device_name.st │ │ │ +00199130: 646f 7574 207c 206c 656e 6774 6820 2667 dout | length &g │ │ │ +00199140: 743b 2030 290a 2020 7461 6773 3a0a 2020 t; 0). tags:. │ │ │ +00199150: 2d20 636f 6e66 6967 7572 655f 7374 7261 - configure_stra │ │ │ +00199160: 7465 6779 0a20 202d 2068 6967 685f 6469 tegy. - high_di │ │ │ +00199170: 7372 7570 7469 6f6e 0a20 202d 206c 6f77 sruption. - low │ │ │ +00199180: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ +00199190: 6d6f 756e 745f 6f70 7469 6f6e 5f68 6f6d mount_option_hom │ │ │ +001991a0: 655f 6e6f 6465 760a 2020 2d20 6e6f 5f72 e_nodev. - no_r │ │ │ +001991b0: 6562 6f6f 745f 6e65 6564 6564 0a20 202d eboot_needed. - │ │ │ +001991c0: 2075 6e6b 6e6f 776e 5f73 6576 6572 6974 unknown_severit │ │ │ +001991d0: 790a 0a2d 206e 616d 653a 2027 4164 6420 y..- name: 'Add │ │ │ +001991e0: 6e6f 6465 7620 4f70 7469 6f6e 2074 6f20 nodev Option to │ │ │ +001991f0: 2f68 6f6d 653a 2049 6620 2f68 6f6d 6520 /home: If /home │ │ │ +00199200: 6e6f 7420 6d6f 756e 7465 642c 2063 7261 not mounted, cra │ │ │ +00199210: 6674 206d 6f75 6e74 5f69 6e66 6f20 6d61 ft mount_info ma │ │ │ +00199220: 6e75 616c 6c79 270a 2020 7365 745f 6661 nually'. set_fa │ │ │ +00199230: 6374 3a0a 2020 2020 6d6f 756e 745f 696e ct:. mount_in │ │ │ +00199240: 666f 3a20 277b 7b20 6d6f 756e 745f 696e fo: '{{ mount_in │ │ │ +00199250: 666f 7c64 6566 6175 6c74 287b 7d29 7c63 fo|default({})|c │ │ │ +00199260: 6f6d 6269 6e65 287b 6974 656d 2e30 3a20 ombine({item.0: │ │ │ +00199270: 6974 656d 2e31 7d29 207d 7d27 0a20 2077 item.1}) }}'. w │ │ │ +00199280: 6974 685f 746f 6765 7468 6572 3a0a 2020 ith_together:. │ │ │ +00199290: 2d20 2d20 7461 7267 6574 0a20 2020 202d - - target. - │ │ │ +001992a0: 2073 6f75 7263 650a 2020 2020 2d20 6673 source. - fs │ │ │ +001992b0: 7479 7065 0a20 2020 202d 206f 7074 696f type. - optio │ │ │ +001992c0: 6e73 0a20 202d 202d 202f 686f 6d65 0a20 ns. - - /home. │ │ │ +001992d0: 2020 202d 2027 270a 2020 2020 2d20 2727 - ''. - '' │ │ │ +001992e0: 0a20 2020 202d 2064 6566 6175 6c74 730a . - defaults. │ │ │ +001992f0: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f when:. - ( no │ │ │ +00199300: 7420 2820 226b 6572 6e65 6c22 2069 6e20 t ( "kernel" in │ │ │ +00199310: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ +00199320: 636b 6167 6573 2061 6e64 2022 7270 6d2d ckages and "rpm- │ │ │ +00199330: 6f73 7472 6565 2220 696e 2061 6e73 6962 ostree" in ansib │ │ │ +00199340: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ +00199350: 730a 2020 2020 616e 6420 2262 6f6f 7463 s. and "bootc │ │ │ +00199360: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ +00199370: 7473 2e70 6163 6b61 6765 7320 616e 6420 ts.packages and │ │ │ +00199380: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b not "openshift-k │ │ │ +00199390: 7562 656c 6574 2220 696e 2061 6e73 6962 ubelet" in ansib │ │ │ +001993a0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ +001993b0: 730a 2020 2020 616e 6420 226f 7374 7265 s. and "ostre │ │ │ +001993c0: 6522 2069 6e20 616e 7369 626c 655f 7072 e" in ansible_pr │ │ │ +001993d0: 6f63 5f63 6d64 6c69 6e65 2029 2061 6e64 oc_cmdline ) and │ │ │ +001993e0: 206e 6f74 2028 2061 6e73 6962 6c65 5f76 not ( ansible_v │ │ │ +001993f0: 6972 7475 616c 697a 6174 696f 6e5f 7479 irtualization_ty │ │ │ +00199400: 7065 2069 6e0a 2020 2020 5b22 646f 636b pe in. ["dock │ │ │ +00199410: 6572 222c 2022 6c78 6322 2c20 226f 7065 er", "lxc", "ope │ │ │ +00199420: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c20 nvz", "podman", │ │ │ +00199430: 2263 6f6e 7461 696e 6572 225d 2029 2029 "container"] ) ) │ │ │ +00199440: 0a20 202d 2027 222f 686f 6d65 2220 696e . - '"/home" in │ │ │ +00199450: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320 ansible_mounts │ │ │ +00199460: 7c20 6d61 7028 6174 7472 6962 7574 653d | map(attribute= │ │ │ +00199470: 226d 6f75 6e74 2229 207c 206c 6973 7427 "mount") | list' │ │ │ +00199480: 0a20 202d 2028 222d 2d66 7374 6162 2220 . - ("--fstab" │ │ │ +00199490: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20 | length == 0). │ │ │ +001994a0: 202d 2064 6576 6963 655f 6e61 6d65 2e73 - device_name.s │ │ │ +001994b0: 7464 6f75 7420 6973 2064 6566 696e 6564 tdout is defined │ │ │ +001994c0: 2061 6e64 2064 6576 6963 655f 6e61 6d65 and device_name │ │ │ +001994d0: 2e73 7464 6f75 745f 6c69 6e65 7320 6973 .stdout_lines is │ │ │ +001994e0: 2064 6566 696e 6564 0a20 202d 2028 6465 defined. - (de │ │ │ +001994f0: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ +00199500: 207c 206c 656e 6774 6820 3d3d 2030 290a | length == 0). │ │ │ +00199510: 2020 7461 6773 3a0a 2020 2d20 636f 6e66 tags:. - conf │ │ │ +00199520: 6967 7572 655f 7374 7261 7465 6779 0a20 igure_strategy. │ │ │ +00199530: 202d 2068 6967 685f 6469 7372 7570 7469 - high_disrupti │ │ │ +00199540: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c on. - low_compl │ │ │ +00199550: 6578 6974 790a 2020 2d20 6d6f 756e 745f exity. - mount_ │ │ │ +00199560: 6f70 7469 6f6e 5f68 6f6d 655f 6e6f 6465 option_home_node │ │ │ +00199570: 760a 2020 2d20 6e6f 5f72 6562 6f6f 745f v. - no_reboot_ │ │ │ +00199580: 6e65 6564 6564 0a20 202d 2075 6e6b 6e6f needed. - unkno │ │ │ +00199590: 776e 5f73 6576 6572 6974 790a 0a2d 206e wn_severity..- n │ │ │ +001995a0: 616d 653a 2027 4164 6420 6e6f 6465 7620 ame: 'Add nodev │ │ │ +001995b0: 4f70 7469 6f6e 2074 6f20 2f68 6f6d 653a Option to /home: │ │ │ +001995c0: 204d 616b 6520 7375 7265 206e 6f64 6576 Make sure nodev │ │ │ +001995d0: 206f 7074 696f 6e20 6973 2070 6172 7420 option is part │ │ │ +001995e0: 6f66 2074 6865 2074 6f20 2f68 6f6d 650a of the to /home. │ │ │ +001995f0: 2020 2020 6f70 7469 6f6e 7327 0a20 2073 options'. s │ │ │ +00199600: 6574 5f66 6163 743a 0a20 2020 206d 6f75 et_fact:. mou │ │ │ +00199610: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75 nt_info: '{{ mou │ │ │ +00199620: 6e74 5f69 6e66 6f20 7c20 636f 6d62 696e nt_info | combin │ │ │ +00199630: 6528 207b 2727 6f70 7469 6f6e 7327 273a e( {''options'': │ │ │ +00199640: 2727 2727 7e28 6d6f 756e 745f 696e 666f ''''~(mount_info │ │ │ +00199650: 2e6f 7074 696f 6e73 207c 0a20 2020 2020 .options |. │ │ │ +00199660: 2064 6566 6175 6c74 2827 2727 2729 297e default(''''))~ │ │ │ +00199670: 2827 272c 2727 2069 6620 286d 6f75 6e74 ('','' if (mount │ │ │ +00199680: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20 _info.options | │ │ │ +00199690: 6465 6661 756c 7428 2727 2727 2929 2065 default('''')) e │ │ │ +001996a0: 6c73 6520 2727 2727 297e 2727 6e6f 6465 lse '''')~''node │ │ │ +001996b0: 7627 270a 2020 2020 2020 7d29 207d 7d27 v''. }) }}' │ │ │ +001996c0: 0a20 2077 6865 6e3a 0a20 202d 2028 206e . when:. - ( n │ │ │ +001996d0: 6f74 2028 2022 6b65 726e 656c 2220 696e ot ( "kernel" in │ │ │ +001996e0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ +001996f0: 6163 6b61 6765 7320 616e 6420 2272 706d ackages and "rpm │ │ │ +00199700: 2d6f 7374 7265 6522 2069 6e20 616e 7369 -ostree" in ansi │ │ │ +00199710: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +00199720: 6573 0a20 2020 2061 6e64 2022 626f 6f74 es. and "boot │ │ │ +00199730: 6322 2069 6e20 616e 7369 626c 655f 6661 c" in ansible_fa │ │ │ +00199740: 6374 732e 7061 636b 6167 6573 2061 6e64 cts.packages and │ │ │ +00199750: 206e 6f74 2022 6f70 656e 7368 6966 742d not "openshift- │ │ │ +00199760: 6b75 6265 6c65 7422 2069 6e20 616e 7369 kubelet" in ansi │ │ │ +00199770: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +00199780: 6573 0a20 2020 2061 6e64 2022 6f73 7472 es. and "ostr │ │ │ +00199790: 6565 2220 696e 2061 6e73 6962 6c65 5f70 ee" in ansible_p │ │ │ +001997a0: 726f 635f 636d 646c 696e 6520 2920 616e roc_cmdline ) an │ │ │ +001997b0: 6420 6e6f 7420 2820 616e 7369 626c 655f d not ( ansible_ │ │ │ +001997c0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74 virtualization_t │ │ │ +001997d0: 7970 6520 696e 0a20 2020 205b 2264 6f63 ype in. ["doc │ │ │ +001997e0: 6b65 7222 2c20 226c 7863 222c 2022 6f70 ker", "lxc", "op │ │ │ +001997f0: 656e 767a 222c 2022 706f 646d 616e 222c envz", "podman", │ │ │ +00199800: 2022 636f 6e74 6169 6e65 7222 5d20 2920 "container"] ) │ │ │ +00199810: 290a 2020 2d20 2722 2f68 6f6d 6522 2069 ). - '"/home" i │ │ │ +00199820: 6e20 616e 7369 626c 655f 6d6f 756e 7473 n ansible_mounts │ │ │ +00199830: 207c 206d 6170 2861 7474 7269 6275 7465 | map(attribute │ │ │ +00199840: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374 ="mount") | list │ │ │ +00199850: 270a 2020 2d20 6d6f 756e 745f 696e 666f '. - mount_info │ │ │ +00199860: 2069 7320 6465 6669 6e65 6420 616e 6420 is defined and │ │ │ +00199870: 226e 6f64 6576 2220 6e6f 7420 696e 2028 "nodev" not in ( │ │ │ +00199880: 6d6f 756e 745f 696e 666f 2e6f 7074 696f mount_info.optio │ │ │ +00199890: 6e73 207c 2064 6566 6175 6c74 2827 2729 ns | default('') │ │ │ +001998a0: 290a 2020 7461 6773 3a0a 2020 2d20 636f ). tags:. - co │ │ │ +001998b0: 6e66 6967 7572 655f 7374 7261 7465 6779 nfigure_strategy │ │ │ +001998c0: 0a20 202d 2068 6967 685f 6469 7372 7570 . - high_disrup │ │ │ +001998d0: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d tion. - low_com │ │ │ +001998e0: 706c 6578 6974 790a 2020 2d20 6d6f 756e plexity. - moun │ │ │ +001998f0: 745f 6f70 7469 6f6e 5f68 6f6d 655f 6e6f t_option_home_no │ │ │ +00199900: 6465 760a 2020 2d20 6e6f 5f72 6562 6f6f dev. - no_reboo │ │ │ +00199910: 745f 6e65 6564 6564 0a20 202d 2075 6e6b t_needed. - unk │ │ │ +00199920: 6e6f 776e 5f73 6576 6572 6974 790a 0a2d nown_severity..- │ │ │ +00199930: 206e 616d 653a 2027 4164 6420 6e6f 6465 name: 'Add node │ │ │ +00199940: 7620 4f70 7469 6f6e 2074 6f20 2f68 6f6d v Option to /hom │ │ │ +00199950: 653a 2045 6e73 7572 6520 2f68 6f6d 6520 e: Ensure /home │ │ │ +00199960: 6973 206d 6f75 6e74 6564 2077 6974 6820 is mounted with │ │ │ +00199970: 6e6f 6465 7620 6f70 7469 6f6e 270a 2020 nodev option'. │ │ │ +00199980: 616e 7369 626c 652e 706f 7369 782e 6d6f ansible.posix.mo │ │ │ +00199990: 756e 743a 0a20 2020 2070 6174 683a 202f unt:. path: / │ │ │ +001999a0: 686f 6d65 0a20 2020 2073 7263 3a20 277b home. src: '{ │ │ │ +001999b0: 7b20 6d6f 756e 745f 696e 666f 2e73 6f75 { mount_info.sou │ │ │ +001999c0: 7263 6520 7c20 6465 6661 756c 7428 2727 rce | default('' │ │ │ +001999d0: 2727 2920 7d7d 270a 2020 2020 6f70 7473 '') }}'. opts │ │ │ +001999e0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f : '{{ mount_info │ │ │ +001999f0: 2e6f 7074 696f 6e73 207c 2064 6566 6175 .options | defau │ │ │ +00199a00: 6c74 2827 2727 2729 207d 7d27 0a20 2020 lt('''') }}'. │ │ │ +00199a10: 2073 7461 7465 3a20 6d6f 756e 7465 640a state: mounted. │ │ │ +00199a20: 2020 2020 6673 7479 7065 3a20 277b 7b20 fstype: '{{ │ │ │ +00199a30: 6d6f 756e 745f 696e 666f 2e66 7374 7970 mount_info.fstyp │ │ │ +00199a40: 6520 7c20 6465 6661 756c 7428 2727 2727 e | default('''' │ │ │ +00199a50: 2920 7d7d 270a 2020 7265 6769 7374 6572 ) }}'. register │ │ │ +00199a60: 3a20 6d6f 756e 745f 7265 7375 6c74 0a20 : mount_result. │ │ │ +00199a70: 2066 6169 6c65 645f 7768 656e 3a0a 2020 failed_when:. │ │ │ +00199a80: 2d20 6d6f 756e 745f 7265 7375 6c74 2069 - mount_result i │ │ │ +00199a90: 7320 6661 696c 6564 0a20 202d 2027 2727 s failed. - ''' │ │ │ +00199aa0: 7461 7267 6574 2069 7320 6275 7379 2727 target is busy'' │ │ │ +00199ab0: 206e 6f74 2069 6e20 286d 6f75 6e74 5f72 not in (mount_r │ │ │ +00199ac0: 6573 756c 742e 6d73 6720 7c20 6465 6661 esult.msg | defa │ │ │ +00199ad0: 756c 7428 2727 2727 2929 270a 2020 2d20 ult(''''))'. - │ │ │ +00199ae0: 2727 2761 6c72 6561 6479 206d 6f75 6e74 '''already mount │ │ │ +00199af0: 6564 2727 206e 6f74 2069 6e20 286d 6f75 ed'' not in (mou │ │ │ +00199b00: 6e74 5f72 6573 756c 742e 6d73 6720 7c20 nt_result.msg | │ │ │ +00199b10: 6465 6661 756c 7428 2727 2727 2929 270a default(''''))'. │ │ │ +00199b20: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f when:. - ( no │ │ │ +00199b30: 7420 2820 226b 6572 6e65 6c22 2069 6e20 t ( "kernel" in │ │ │ +00199b40: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ +00199b50: 636b 6167 6573 2061 6e64 2022 7270 6d2d ckages and "rpm- │ │ │ +00199b60: 6f73 7472 6565 2220 696e 2061 6e73 6962 ostree" in ansib │ │ │ +00199b70: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ +00199b80: 730a 2020 2020 616e 6420 2262 6f6f 7463 s. and "bootc │ │ │ +00199b90: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ +00199ba0: 7473 2e70 6163 6b61 6765 7320 616e 6420 ts.packages and │ │ │ +00199bb0: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b not "openshift-k │ │ │ +00199bc0: 7562 656c 6574 2220 696e 2061 6e73 6962 ubelet" in ansib │ │ │ +00199bd0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ +00199be0: 730a 2020 2020 616e 6420 226f 7374 7265 s. and "ostre │ │ │ +00199bf0: 6522 2069 6e20 616e 7369 626c 655f 7072 e" in ansible_pr │ │ │ +00199c00: 6f63 5f63 6d64 6c69 6e65 2029 2061 6e64 oc_cmdline ) and │ │ │ +00199c10: 206e 6f74 2028 2061 6e73 6962 6c65 5f76 not ( ansible_v │ │ │ +00199c20: 6972 7475 616c 697a 6174 696f 6e5f 7479 irtualization_ty │ │ │ +00199c30: 7065 2069 6e0a 2020 2020 5b22 646f 636b pe in. ["dock │ │ │ +00199c40: 6572 222c 2022 6c78 6322 2c20 226f 7065 er", "lxc", "ope │ │ │ +00199c50: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c20 nvz", "podman", │ │ │ +00199c60: 2263 6f6e 7461 696e 6572 225d 2029 2029 "container"] ) ) │ │ │ +00199c70: 0a20 202d 2027 222f 686f 6d65 2220 696e . - '"/home" in │ │ │ +00199c80: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320 ansible_mounts │ │ │ +00199c90: 7c20 6d61 7028 6174 7472 6962 7574 653d | map(attribute= │ │ │ +00199ca0: 226d 6f75 6e74 2229 207c 206c 6973 7427 "mount") | list' │ │ │ +00199cb0: 0a20 202d 206d 6f75 6e74 5f69 6e66 6f20 . - mount_info │ │ │ +00199cc0: 6973 2064 6566 696e 6564 0a20 202d 2028 is defined. - ( │ │ │ +00199cd0: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ +00199ce0: 7574 2069 7320 6465 6669 6e65 6420 616e ut is defined an │ │ │ +00199cf0: 6420 2864 6576 6963 655f 6e61 6d65 2e73 d (device_name.s │ │ │ +00199d00: 7464 6f75 7420 7c20 6c65 6e67 7468 2026 tdout | length & │ │ │ +00199d10: 6774 3b20 3029 2920 6f72 2028 222d 2d66 gt; 0)) or ("--f │ │ │ +00199d20: 7374 6162 220a 2020 2020 7c20 6c65 6e67 stab". | leng │ │ │ +00199d30: 7468 203d 3d20 3029 0a20 2074 6167 733a th == 0). tags: │ │ │ +00199d40: 0a20 202d 2063 6f6e 6669 6775 7265 5f73 . - configure_s │ │ │ +00199d50: 7472 6174 6567 790a 2020 2d20 6869 6768 trategy. - high │ │ │ +00199d60: 5f64 6973 7275 7074 696f 6e0a 2020 2d20 _disruption. - │ │ │ +00199d70: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20 low_complexity. │ │ │ +00199d80: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f - mount_option_ │ │ │ +00199d90: 686f 6d65 5f6e 6f64 6576 0a20 202d 206e home_nodev. - n │ │ │ +00199da0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a o_reboot_needed. │ │ │ +00199db0: 2020 2d20 756e 6b6e 6f77 6e5f 7365 7665 - unknown_seve │ │ │ +00199dc0: 7269 7479 0a3c 2f63 6f64 653e 3c2f 7072 rity.

Remediation │ │ │ +00199e80: 2053 6865 6c6c 2073 6372 6970 7420 e287 Shell script .. │ │ │ +00199e90: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ +00199f10: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +00199f20: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
<
│ │ │ +00199f40: 636f 6465 3e23 2052 656d 6564 6961 7469  code># Remediati
│ │ │ +00199f50: 6f6e 2069 7320 6170 706c 6963 6162 6c65  on is applicable
│ │ │ +00199f60: 206f 6e6c 7920 696e 2063 6572 7461 696e   only in certain
│ │ │ +00199f70: 2070 6c61 7466 6f72 6d73 0a69 6620 2820   platforms.if ( 
│ │ │ +00199f80: 2120 2820 7b20 7270 6d20 2d2d 7175 6965  ! ( { rpm --quie
│ │ │ +00199f90: 7420 2d71 206b 6572 6e65 6c20 3b7d 2026  t -q kernel ;} &
│ │ │ +00199fa0: 616d 703b 2661 6d70 3b20 7b20 7270 6d20  amp;& { rpm 
│ │ │ +00199fb0: 2d2d 7175 6965 7420 2d71 2072 706d 2d6f  --quiet -q rpm-o
│ │ │ +00199fc0: 7374 7265 6520 3b7d 2026 616d 703b 2661  stree ;} &&a
│ │ │ +00199fd0: 6d70 3b20 7b20 7270 6d20 2d2d 7175 6965  mp; { rpm --quie
│ │ │ +00199fe0: 7420 2d71 2062 6f6f 7463 203b 7d20 2661  t -q bootc ;} &a
│ │ │ +00199ff0: 6d70 3b26 616d 703b 207b 2021 2072 706d  mp;& { ! rpm
│ │ │ +0019a000: 202d 2d71 7569 6574 202d 7120 6f70 656e   --quiet -q open
│ │ │ +0019a010: 7368 6966 742d 6b75 6265 6c65 7420 3b7d  shift-kubelet ;}
│ │ │ +0019a020: 2026 616d 703b 2661 6d70 3b20 285b 202d   && ([ -
│ │ │ +0019a030: 6620 2f72 756e 2f6f 7374 7265 652d 626f  f /run/ostree-bo
│ │ │ +0019a040: 6f74 6564 205d 207c 7c20 5b20 2d4c 202f  oted ] || [ -L /
│ │ │ +0019a050: 6f73 7472 6565 205d 2920 2920 2661 6d70  ostree ]) ) &
│ │ │ +0019a060: 3b26 616d 703b 2021 2028 205b 202d 6620  ;& ! ( [ -f 
│ │ │ +0019a070: 2f2e 646f 636b 6572 656e 7620 5d20 7c7c  /.dockerenv ] ||
│ │ │ +0019a080: 205b 202d 6620 2f72 756e 2f2e 636f 6e74   [ -f /run/.cont
│ │ │ +0019a090: 6169 6e65 7265 6e76 205d 2029 2029 2026  ainerenv ] ) ) &
│ │ │ +0019a0a0: 616d 703b 2661 6d70 3b20 7b20 2820 6669  amp;& { ( fi
│ │ │ +0019a0b0: 6e64 6d6e 7420 2d2d 6b65 726e 656c 2022  ndmnt --kernel "
│ │ │ +0019a0c0: 2f68 6f6d 6522 2026 6774 3b20 2f64 6576  /home" > /dev
│ │ │ +0019a0d0: 2f6e 756c 6c20 7c7c 2066 696e 646d 6e74  /null || findmnt
│ │ │ +0019a0e0: 202d 2d66 7374 6162 2022 2f68 6f6d 6522   --fstab "/home"
│ │ │ +0019a0f0: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20   > /dev/null 
│ │ │ +0019a100: 293b 207d 3b20 7468 656e 0a0a 6675 6e63  ); }; then..func
│ │ │ +0019a110: 7469 6f6e 2070 6572 666f 726d 5f72 656d  tion perform_rem
│ │ │ +0019a120: 6564 6961 7469 6f6e 207b 0a0a 2020 2020  ediation {..    
│ │ │ +0019a130: 0a20 2020 2020 2020 2023 2074 6865 206d  .        # the m
│ │ │ +0019a140: 6f75 6e74 2070 6f69 6e74 202f 686f 6d65  ount point /home
│ │ │ +0019a150: 2068 6173 2074 6f20 6265 2064 6566 696e   has to be defin
│ │ │ +0019a160: 6564 2069 6e20 2f65 7463 2f66 7374 6162  ed in /etc/fstab
│ │ │ +0019a170: 0a20 2020 2020 2020 2023 2062 6566 6f72  .        # befor
│ │ │ +0019a180: 6520 7468 6973 2072 656d 6564 6961 7469  e this remediati
│ │ │ +0019a190: 6f6e 2063 616e 2062 6520 6578 6563 7574  on can be execut
│ │ │ +0019a1a0: 6564 2e20 496e 2063 6173 6520 6974 2069  ed. In case it i
│ │ │ +0019a1b0: 7320 6e6f 7420 6465 6669 6e65 642c 2074  s not defined, t
│ │ │ +0019a1c0: 6865 0a20 2020 2020 2020 2023 2072 656d  he.        # rem
│ │ │ +0019a1d0: 6564 6961 7469 6f6e 2061 626f 7274 7320  ediation aborts 
│ │ │ +0019a1e0: 616e 6420 6e6f 2063 6861 6e67 6573 2072  and no changes r
│ │ │ +0019a1f0: 6567 6172 6469 6e67 2074 6865 206d 6f75  egarding the mou
│ │ │ +0019a200: 6e74 2070 6f69 6e74 2061 7265 2064 6f6e  nt point are don
│ │ │ +0019a210: 652e 0a20 2020 2020 2020 206d 6f75 6e74  e..        mount
│ │ │ +0019a220: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +0019a230: 6578 703d 2224 2870 7269 6e74 6620 225e  exp="$(printf "^
│ │ │ +0019a240: 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e 235d  [[:space:]]*[^#]
│ │ │ +0019a250: 2e2a 5b5b 3a73 7061 6365 3a5d 5d25 735b  .*[[:space:]]%s[
│ │ │ +0019a260: 5b3a 7370 6163 653a 5d5d 2220 222f 686f  [:space:]]" "/ho
│ │ │ +0019a270: 6d65 2229 220a 0a20 2020 2067 7265 7020  me")"..    grep 
│ │ │ +0019a280: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ +0019a290: 7463 685f 7265 6765 7870 2220 2d71 202f  tch_regexp" -q /
│ │ │ +0019a2a0: 6574 632f 6673 7461 6220 5c0a 2020 2020  etc/fstab \.    
│ │ │ +0019a2b0: 2020 2020 7c7c 207b 2065 6368 6f20 2254      || { echo "T
│ │ │ +0019a2c0: 6865 206d 6f75 6e74 2070 6f69 6e74 2027  he mount point '
│ │ │ +0019a2d0: 2f68 6f6d 6527 2069 7320 6e6f 7420 6576  /home' is not ev
│ │ │ +0019a2e0: 656e 2069 6e20 2f65 7463 2f66 7374 6162  en in /etc/fstab
│ │ │ +0019a2f0: 2c20 736f 2077 6520 6361 6e27 7420 7365  , so we can't se
│ │ │ +0019a300: 7420 7570 206d 6f75 6e74 206f 7074 696f  t up mount optio
│ │ │ +0019a310: 6e73 2220 2667 743b 2661 6d70 3b32 3b0a  ns" >&2;.
│ │ │ +0019a320: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +0019a330: 6563 686f 2022 4e6f 7420 7265 6d65 6469  echo "Not remedi
│ │ │ +0019a340: 6174 696e 672c 2062 6563 6175 7365 2074  ating, because t
│ │ │ +0019a350: 6865 7265 2069 7320 6e6f 2072 6563 6f72  here is no recor
│ │ │ +0019a360: 6420 6f66 202f 686f 6d65 2069 6e20 2f65  d of /home in /e
│ │ │ +0019a370: 7463 2f66 7374 6162 2220 2667 743b 2661  tc/fstab" >&a
│ │ │ +0019a380: 6d70 3b32 3b20 7265 7475 726e 2031 3b20  mp;2; return 1; 
│ │ │ +0019a390: 7d0a 2020 2020 0a0a 0a20 2020 206d 6f75  }.    ...    mou
│ │ │ +0019a3a0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +0019a3b0: 6567 6578 703d 2224 2870 7269 6e74 6620  egexp="$(printf 
│ │ │ +0019a3c0: 225e 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e  "^[[:space:]]*[^
│ │ │ +0019a3d0: 235d 2e2a 5b5b 3a73 7061 6365 3a5d 5d25  #].*[[:space:]]%
│ │ │ +0019a3e0: 735b 5b3a 7370 6163 653a 5d5d 2220 2f68  s[[:space:]]" /h
│ │ │ +0019a3f0: 6f6d 6529 220a 0a20 2020 2023 2049 6620  ome)"..    # If 
│ │ │ +0019a400: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ +0019a410: 6973 206e 6f74 2069 6e20 2f65 7463 2f66  is not in /etc/f
│ │ │ +0019a420: 7374 6162 2c20 6765 7420 7072 6576 696f  stab, get previo
│ │ │ +0019a430: 7573 206d 6f75 6e74 206f 7074 696f 6e73  us mount options
│ │ │ +0019a440: 2066 726f 6d20 2f65 7463 2f6d 7461 620a   from /etc/mtab.
│ │ │ +0019a450: 2020 2020 6966 2021 2067 7265 7020 2d71      if ! grep -q
│ │ │ +0019a460: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ +0019a470: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ +0019a480: 632f 6673 7461 623b 2074 6865 6e0a 2020  c/fstab; then.  
│ │ │ +0019a490: 2020 2020 2020 2320 7275 6e74 696d 6520        # runtime 
│ │ │ +0019a4a0: 6f70 7473 2077 6974 686f 7574 2073 6f6d  opts without som
│ │ │ +0019a4b0: 6520 6175 746f 6d61 7469 6320 6b65 726e  e automatic kern
│ │ │ +0019a4c0: 656c 2f75 7365 7273 7061 6365 2d61 6464  el/userspace-add
│ │ │ +0019a4d0: 6564 2064 6566 6175 6c74 730a 2020 2020  ed defaults.    
│ │ │ +0019a4e0: 2020 2020 7072 6576 696f 7573 5f6d 6f75      previous_mou
│ │ │ +0019a4f0: 6e74 5f6f 7074 733d 2428 6772 6570 2022  nt_opts=$(grep "
│ │ │ +0019a500: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ +0019a510: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ +0019a520: 6d74 6162 207c 2068 6561 6420 2d31 207c  mtab | head -1 |
│ │ │ +0019a530: 2020 6177 6b20 277b 7072 696e 7420 2434    awk '{print $4
│ │ │ +0019a540: 7d27 205c 0a20 2020 2020 2020 2020 2020  }' \.           
│ │ │ +0019a550: 2020 2020 2020 2020 207c 2073 6564 202d           | sed -
│ │ │ +0019a560: 4520 2273 2f28 7277 7c64 6566 6175 6c74  E "s/(rw|default
│ │ │ +0019a570: 737c 7365 636c 6162 656c 7c6e 6f64 6576  s|seclabel|nodev
│ │ │ +0019a580: 2928 2c7c 2429 2f2f 673b 732f 2c24 2f2f  )(,|$)//g;s/,$//
│ │ │ +0019a590: 2229 0a20 2020 2020 2020 205b 2022 2470  ").        [ "$p
│ │ │ +0019a5a0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +0019a5b0: 7473 2220 5d20 2661 6d70 3b26 616d 703b  ts" ] &&
│ │ │ +0019a5c0: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ +0019a5d0: 6f70 7473 2b3d 222c 220a 2020 2020 2020  opts+=",".      
│ │ │ +0019a5e0: 2020 2320 496e 2069 736f 3936 3630 2066    # In iso9660 f
│ │ │ +0019a5f0: 696c 6573 7973 7465 6d73 206d 7461 6220  ilesystems mtab 
│ │ │ +0019a600: 636f 756c 6420 6465 7363 7269 6265 2061  could describe a
│ │ │ +0019a610: 2022 626c 6f63 6b73 697a 6522 2076 616c   "blocksize" val
│ │ │ +0019a620: 7565 2c20 7468 6973 2073 686f 756c 6420  ue, this should 
│ │ │ +0019a630: 6265 2072 6566 6c65 6374 6564 2069 6e0a  be reflected in.
│ │ │ +0019a640: 2020 2020 2020 2020 2320 6673 7461 6220          # fstab 
│ │ │ +0019a650: 6173 2022 626c 6f63 6b22 2e20 2054 6865  as "block".  The
│ │ │ +0019a660: 206e 6578 7420 7661 7269 6162 6c65 2069   next variable i
│ │ │ +0019a670: 7320 746f 2073 6174 6973 6679 2073 6865  s to satisfy she
│ │ │ +0019a680: 6c6c 6368 6563 6b20 5343 3230 3530 2e0a  llcheck SC2050..
│ │ │ +0019a690: 2020 2020 2020 2020 6673 5f74 7970 653d          fs_type=
│ │ │ +0019a6a0: 2222 0a20 2020 2020 2020 2069 6620 5b20  "".        if [ 
│ │ │ +0019a6b0: 2022 2466 735f 7479 7065 2220 3d3d 2022   "$fs_type" == "
│ │ │ +0019a6c0: 6973 6f39 3636 3022 205d 203b 2074 6865  iso9660" ] ; the
│ │ │ +0019a6d0: 6e0a 2020 2020 2020 2020 2020 2020 7072  n.            pr
│ │ │ +0019a6e0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +0019a6f0: 733d 2428 7365 6420 2773 2f62 6c6f 636b  s=$(sed 's/block
│ │ │ +0019a700: 7369 7a65 3d2f 626c 6f63 6b3d 2f27 2026  size=/block=/' &
│ │ │ +0019a710: 6c74 3b26 6c74 3b26 6c74 3b20 2224 7072  lt;<< "$pr
│ │ │ +0019a720: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +0019a730: 7322 290a 2020 2020 2020 2020 6669 0a20  s").        fi. 
│ │ │ +0019a740: 2020 2020 2020 2065 6368 6f20 2220 2f68         echo " /h
│ │ │ +0019a750: 6f6d 6520 2064 6566 6175 6c74 732c 247b  ome  defaults,${
│ │ │ +0019a760: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +0019a770: 7074 737d 6e6f 6465 7620 3020 3022 2026  pts}nodev 0 0" &
│ │ │ +0019a780: 6774 3b26 6774 3b20 2f65 7463 2f66 7374  gt;> /etc/fst
│ │ │ +0019a790: 6162 0a20 2020 2023 2049 6620 7468 6520  ab.    # If the 
│ │ │ +0019a7a0: 6d6f 756e 745f 6f70 7420 6f70 7469 6f6e  mount_opt option
│ │ │ +0019a7b0: 2069 7320 6e6f 7420 616c 7265 6164 7920   is not already 
│ │ │ +0019a7c0: 696e 2074 6865 206d 6f75 6e74 2070 6f69  in the mount poi
│ │ │ +0019a7d0: 6e74 2773 202f 6574 632f 6673 7461 6220  nt's /etc/fstab 
│ │ │ +0019a7e0: 656e 7472 792c 2061 6464 2069 740a 2020  entry, add it.  
│ │ │ +0019a7f0: 2020 656c 6966 2021 2067 7265 7020 2224    elif ! grep "$
│ │ │ +0019a800: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +0019a810: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ +0019a820: 7374 6162 207c 2067 7265 7020 2d71 2022  stab | grep -q "
│ │ │ +0019a830: 6e6f 6465 7622 3b20 7468 656e 0a20 2020  nodev"; then.   
│ │ │ +0019a840: 2020 2020 2070 7265 7669 6f75 735f 6d6f       previous_mo
│ │ │ +0019a850: 756e 745f 6f70 7473 3d24 2867 7265 7020  unt_opts=$(grep 
│ │ │ +0019a860: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ +0019a870: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ +0019a880: 2f66 7374 6162 207c 2061 776b 2027 7b70  /fstab | awk '{p
│ │ │ +0019a890: 7269 6e74 2024 347d 2729 0a20 2020 2020  rint $4}').     
│ │ │ +0019a8a0: 2020 2073 6564 202d 6920 2273 7c5c 2824     sed -i "s|\($
│ │ │ +0019a8b0: 7b6d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  {mount_point_mat
│ │ │ +0019a8c0: 6368 5f72 6567 6578 707d 2e2a 247b 7072  ch_regexp}.*${pr
│ │ │ +0019a8d0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +0019a8e0: 737d 5c29 7c5c 312c 6e6f 6465 767c 2220  s}\)|\1,nodev|" 
│ │ │ +0019a8f0: 2f65 7463 2f66 7374 6162 0a20 2020 2066  /etc/fstab.    f
│ │ │ +0019a900: 690a 0a0a 2020 2020 6966 206d 6b64 6972  i...    if mkdir
│ │ │ +0019a910: 202d 7020 222f 686f 6d65 223b 2074 6865   -p "/home"; the
│ │ │ +0019a920: 6e0a 2020 2020 2020 2020 6966 206d 6f75  n.        if mou
│ │ │ +0019a930: 6e74 706f 696e 7420 2d71 2022 2f68 6f6d  ntpoint -q "/hom
│ │ │ +0019a940: 6522 3b20 7468 656e 0a20 2020 2020 2020  e"; then.       
│ │ │ +0019a950: 2020 2020 206d 6f75 6e74 202d 6f20 7265       mount -o re
│ │ │ +0019a960: 6d6f 756e 7420 2d2d 7461 7267 6574 2022  mount --target "
│ │ │ +0019a970: 2f68 6f6d 6522 0a20 2020 2020 2020 2066  /home".        f
│ │ │ +0019a980: 690a 2020 2020 6669 0a7d 0a0a 7065 7266  i.    fi.}..perf
│ │ │ +0019a990: 6f72 6d5f 7265 6d65 6469 6174 696f 6e0a  orm_remediation.
│ │ │ +0019a9a0: 0a65 6c73 650a 2020 2020 2667 743b 2661  .else.    >&a
│ │ │ +0019a9b0: 6d70 3b32 2065 6368 6f20 2752 656d 6564  mp;2 echo 'Remed
│ │ │ +0019a9c0: 6961 7469 6f6e 2069 7320 6e6f 7420 6170  iation is not ap
│ │ │ +0019a9d0: 706c 6963 6162 6c65 2c20 6e6f 7468 696e  plicable, nothin
│ │ │ +0019a9e0: 6720 7761 7320 646f 6e65 270a 6669 0a3c  g was done'.fi.<
│ │ │ +0019a9f0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +0019aaa0: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ +0019aab0: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ +0019aac0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ +0019ab90: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +0019aba0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +0019abf0: 0a70 6172 7420 2f68 6f6d 6520 2d2d 6d6f  .part /home --mo
│ │ │ +0019ac00: 756e 746f 7074 696f 6e73 3d22 6e6f 6465  untoptions="node
│ │ │ +0019ac10: 7622 0a3c 2f63 6f64 653e 3c2f 7072 653e  v".
│ │ │ 0019ac20: 3c2f 6469 763e 3c2f 6469 763e 3c2f 7464 │ │ │ 0019ac50: 3c74 7220 6461 7461 2d74 742d 6964 3d22 Remediation An │ │ │ -0019bd30: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ -0019bd40: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
Complexity:low
Disrup │ │ │ +0019ab70: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6869 tion:hi │ │ │ +0019ab80: 6768 3c2f 7464 3e3c 2f74 723e 3c74 723e gh
Reboot:false
Strat │ │ │ +0019abc0: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +0019abd0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
│ │ │ -0019bdc0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -0019bde0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ -0019be10: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ -0019be60: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -0019bdd0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -0019bdf0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ -0019be40: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -0019be50: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable
.part /home -
│ │ │ -0019be80: 2d6d 6f75 6e74 6f70 7469 6f6e 733d 226e  -mountoptions="n
│ │ │ -0019be90: 6f73 7569 6422 0a3c 2f63 6f64 653e 3c2f  osuid".
Remediati │ │ │ -0019bf50: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070 on Ansible snipp │ │ │ -0019bf60: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -0019bfe0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -0019bff0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -0019c000: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:highReboo │ │ │ -0019c040: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -0019c050: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -0019c070: 3c74 643e 636f 6e66 6967 7572 653c 2f74 configure< │ │ │ -0019c090: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -0019c0a0: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -0019c0b0: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -0019c0c0: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -0019c0d0: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -0019c0e0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ -0019c0f0: 3030 2d35 332d 4143 2d36 0a20 202d 204e 00-53-AC-6. - N │ │ │ -0019c100: 4953 542d 3830 302d 3533 2d41 432d 3628 IST-800-53-AC-6( │ │ │ -0019c110: 3129 0a20 202d 204e 4953 542d 3830 302d 1). - NIST-800- │ │ │ -0019c120: 3533 2d43 4d2d 3628 6129 0a20 202d 204e 53-CM-6(a). - N │ │ │ -0019c130: 4953 542d 3830 302d 3533 2d43 4d2d 3728 IST-800-53-CM-7( │ │ │ -0019c140: 6129 0a20 202d 204e 4953 542d 3830 302d a). - NIST-800- │ │ │ -0019c150: 3533 2d43 4d2d 3728 6229 0a20 202d 204e 53-CM-7(b). - N │ │ │ -0019c160: 4953 542d 3830 302d 3533 2d4d 502d 370a IST-800-53-MP-7. │ │ │ -0019c170: 2020 2d20 636f 6e66 6967 7572 655f 7374 - configure_st │ │ │ -0019c180: 7261 7465 6779 0a20 202d 2068 6967 685f rategy. - high_ │ │ │ -0019c190: 6469 7372 7570 7469 6f6e 0a20 202d 206c disruption. - l │ │ │ -0019c1a0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ -0019c1b0: 2d20 6d65 6469 756d 5f73 6576 6572 6974 - medium_severit │ │ │ -0019c1c0: 790a 2020 2d20 6d6f 756e 745f 6f70 7469 y. - mount_opti │ │ │ -0019c1d0: 6f6e 5f68 6f6d 655f 6e6f 7375 6964 0a20 on_home_nosuid. │ │ │ -0019c1e0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ -0019c1f0: 6465 640a 0a2d 206e 616d 653a 2027 4164 ded..- name: 'Ad │ │ │ -0019c200: 6420 6e6f 7375 6964 204f 7074 696f 6e20 d nosuid Option │ │ │ -0019c210: 746f 202f 686f 6d65 3a20 4368 6563 6b20 to /home: Check │ │ │ -0019c220: 696e 666f 726d 6174 696f 6e20 6173 736f information asso │ │ │ -0019c230: 6369 6174 6564 2074 6f20 6d6f 756e 7470 ciated to mountp │ │ │ -0019c240: 6f69 6e74 270a 2020 616e 7369 626c 652e oint'. ansible. │ │ │ -0019c250: 6275 696c 7469 6e2e 636f 6d6d 616e 643a builtin.command: │ │ │ -0019c260: 2066 696e 646d 6e74 202d 2d66 7374 6162 findmnt --fstab │ │ │ -0019c270: 2027 2f68 6f6d 6527 0a20 2072 6567 6973 '/home'. regis │ │ │ -0019c280: 7465 723a 2064 6576 6963 655f 6e61 6d65 ter: device_name │ │ │ -0019c290: 0a20 2066 6169 6c65 645f 7768 656e 3a20 . failed_when: │ │ │ -0019c2a0: 6465 7669 6365 5f6e 616d 652e 7263 2026 device_name.rc & │ │ │ -0019c2b0: 6774 3b20 310a 2020 6368 616e 6765 645f gt; 1. changed_ │ │ │ -0019c2c0: 7768 656e 3a20 6661 6c73 650a 2020 6368 when: false. ch │ │ │ -0019c2d0: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a eck_mode: false. │ │ │ -0019c2e0: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f when:. - ( no │ │ │ -0019c2f0: 7420 2820 226b 6572 6e65 6c22 2069 6e20 t ( "kernel" in │ │ │ -0019c300: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -0019c310: 636b 6167 6573 2061 6e64 2022 7270 6d2d ckages and "rpm- │ │ │ -0019c320: 6f73 7472 6565 2220 696e 2061 6e73 6962 ostree" in ansib │ │ │ -0019c330: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -0019c340: 730a 2020 2020 616e 6420 2262 6f6f 7463 s. and "bootc │ │ │ -0019c350: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -0019c360: 7473 2e70 6163 6b61 6765 7320 616e 6420 ts.packages and │ │ │ -0019c370: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b not "openshift-k │ │ │ -0019c380: 7562 656c 6574 2220 696e 2061 6e73 6962 ubelet" in ansib │ │ │ -0019c390: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -0019c3a0: 730a 2020 2020 616e 6420 226f 7374 7265 s. and "ostre │ │ │ -0019c3b0: 6522 2069 6e20 616e 7369 626c 655f 7072 e" in ansible_pr │ │ │ -0019c3c0: 6f63 5f63 6d64 6c69 6e65 2029 2061 6e64 oc_cmdline ) and │ │ │ -0019c3d0: 206e 6f74 2028 2061 6e73 6962 6c65 5f76 not ( ansible_v │ │ │ -0019c3e0: 6972 7475 616c 697a 6174 696f 6e5f 7479 irtualization_ty │ │ │ -0019c3f0: 7065 2069 6e0a 2020 2020 5b22 646f 636b pe in. ["dock │ │ │ -0019c400: 6572 222c 2022 6c78 6322 2c20 226f 7065 er", "lxc", "ope │ │ │ -0019c410: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c20 nvz", "podman", │ │ │ -0019c420: 2263 6f6e 7461 696e 6572 225d 2029 2029 "container"] ) ) │ │ │ -0019c430: 0a20 202d 2027 222f 686f 6d65 2220 696e . - '"/home" in │ │ │ -0019c440: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320 ansible_mounts │ │ │ -0019c450: 7c20 6d61 7028 6174 7472 6962 7574 653d | map(attribute= │ │ │ -0019c460: 226d 6f75 6e74 2229 207c 206c 6973 7427 "mount") | list' │ │ │ -0019c470: 0a20 2074 6167 733a 0a20 202d 204e 4953 . tags:. - NIS │ │ │ -0019c480: 542d 3830 302d 3533 2d41 432d 360a 2020 T-800-53-AC-6. │ │ │ -0019c490: 2d20 4e49 5354 2d38 3030 2d35 332d 4143 - NIST-800-53-AC │ │ │ -0019c4a0: 2d36 2831 290a 2020 2d20 4e49 5354 2d38 -6(1). - NIST-8 │ │ │ -0019c4b0: 3030 2d35 332d 434d 2d36 2861 290a 2020 00-53-CM-6(a). │ │ │ -0019c4c0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -0019c4d0: 2d37 2861 290a 2020 2d20 4e49 5354 2d38 -7(a). - NIST-8 │ │ │ -0019c4e0: 3030 2d35 332d 434d 2d37 2862 290a 2020 00-53-CM-7(b). │ │ │ -0019c4f0: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50 - NIST-800-53-MP │ │ │ -0019c500: 2d37 0a20 202d 2063 6f6e 6669 6775 7265 -7. - configure │ │ │ -0019c510: 5f73 7472 6174 6567 790a 2020 2d20 6869 _strategy. - hi │ │ │ -0019c520: 6768 5f64 6973 7275 7074 696f 6e0a 2020 gh_disruption. │ │ │ -0019c530: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479 - low_complexity │ │ │ -0019c540: 0a20 202d 206d 6564 6975 6d5f 7365 7665 . - medium_seve │ │ │ -0019c550: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f rity. - mount_o │ │ │ -0019c560: 7074 696f 6e5f 686f 6d65 5f6e 6f73 7569 ption_home_nosui │ │ │ -0019c570: 640a 2020 2d20 6e6f 5f72 6562 6f6f 745f d. - no_reboot_ │ │ │ -0019c580: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20 needed..- name: │ │ │ -0019c590: 2741 6464 206e 6f73 7569 6420 4f70 7469 'Add nosuid Opti │ │ │ -0019c5a0: 6f6e 2074 6f20 2f68 6f6d 653a 2043 7265 on to /home: Cre │ │ │ -0019c5b0: 6174 6520 6d6f 756e 745f 696e 666f 2064 ate mount_info d │ │ │ -0019c5c0: 6963 7469 6f6e 6172 7920 7661 7269 6162 ictionary variab │ │ │ -0019c5d0: 6c65 270a 2020 7365 745f 6661 6374 3a0a le'. set_fact:. │ │ │ -0019c5e0: 2020 2020 6d6f 756e 745f 696e 666f 3a20 mount_info: │ │ │ -0019c5f0: 277b 7b20 6d6f 756e 745f 696e 666f 7c64 '{{ mount_info|d │ │ │ -0019c600: 6566 6175 6c74 287b 7d29 7c63 6f6d 6269 efault({})|combi │ │ │ -0019c610: 6e65 287b 6974 656d 2e30 3a20 6974 656d ne({item.0: item │ │ │ -0019c620: 2e31 7d29 207d 7d27 0a20 2077 6974 685f .1}) }}'. with_ │ │ │ -0019c630: 746f 6765 7468 6572 3a0a 2020 2d20 277b together:. - '{ │ │ │ -0019c640: 7b20 6465 7669 6365 5f6e 616d 652e 7374 { device_name.st │ │ │ -0019c650: 646f 7574 5f6c 696e 6573 5b30 5d2e 7370 dout_lines[0].sp │ │ │ -0019c660: 6c69 7428 2920 7c20 6d61 7028 2727 6c6f lit() | map(''lo │ │ │ -0019c670: 7765 7227 2729 207c 206c 6973 7420 7d7d wer'') | list }} │ │ │ -0019c680: 270a 2020 2d20 277b 7b20 6465 7669 6365 '. - '{{ device │ │ │ -0019c690: 5f6e 616d 652e 7374 646f 7574 5f6c 696e _name.stdout_lin │ │ │ -0019c6a0: 6573 5b31 5d2e 7370 6c69 7428 2920 7c20 es[1].split() | │ │ │ -0019c6b0: 6c69 7374 207d 7d27 0a20 2077 6865 6e3a list }}'. when: │ │ │ -0019c6c0: 0a20 202d 2028 206e 6f74 2028 2022 6b65 . - ( not ( "ke │ │ │ -0019c6d0: 726e 656c 2220 696e 2061 6e73 6962 6c65 rnel" in ansible │ │ │ -0019c6e0: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ -0019c6f0: 616e 6420 2272 706d 2d6f 7374 7265 6522 and "rpm-ostree" │ │ │ -0019c700: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -0019c710: 732e 7061 636b 6167 6573 0a20 2020 2061 s.packages. a │ │ │ -0019c720: 6e64 2022 626f 6f74 6322 2069 6e20 616e nd "bootc" in an │ │ │ -0019c730: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ -0019c740: 6167 6573 2061 6e64 206e 6f74 2022 6f70 ages and not "op │ │ │ -0019c750: 656e 7368 6966 742d 6b75 6265 6c65 7422 enshift-kubelet" │ │ │ -0019c760: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -0019c770: 732e 7061 636b 6167 6573 0a20 2020 2061 s.packages. a │ │ │ -0019c780: 6e64 2022 6f73 7472 6565 2220 696e 2061 nd "ostree" in a │ │ │ -0019c790: 6e73 6962 6c65 5f70 726f 635f 636d 646c nsible_proc_cmdl │ │ │ -0019c7a0: 696e 6520 2920 616e 6420 6e6f 7420 2820 ine ) and not ( │ │ │ -0019c7b0: 616e 7369 626c 655f 7669 7274 7561 6c69 ansible_virtuali │ │ │ -0019c7c0: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20 zation_type in. │ │ │ -0019c7d0: 2020 205b 2264 6f63 6b65 7222 2c20 226c ["docker", "l │ │ │ -0019c7e0: 7863 222c 2022 6f70 656e 767a 222c 2022 xc", "openvz", " │ │ │ -0019c7f0: 706f 646d 616e 222c 2022 636f 6e74 6169 podman", "contai │ │ │ -0019c800: 6e65 7222 5d20 2920 290a 2020 2d20 2722 ner"] ) ). - '" │ │ │ -0019c810: 2f68 6f6d 6522 2069 6e20 616e 7369 626c /home" in ansibl │ │ │ -0019c820: 655f 6d6f 756e 7473 207c 206d 6170 2861 e_mounts | map(a │ │ │ -0019c830: 7474 7269 6275 7465 3d22 6d6f 756e 7422 ttribute="mount" │ │ │ -0019c840: 2920 7c20 6c69 7374 270a 2020 2d20 6465 ) | list'. - de │ │ │ -0019c850: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ -0019c860: 2069 7320 6465 6669 6e65 6420 616e 6420 is defined and │ │ │ -0019c870: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ -0019c880: 7574 5f6c 696e 6573 2069 7320 6465 6669 ut_lines is defi │ │ │ -0019c890: 6e65 640a 2020 2d20 2864 6576 6963 655f ned. - (device_ │ │ │ -0019c8a0: 6e61 6d65 2e73 7464 6f75 7420 7c20 6c65 name.stdout | le │ │ │ -0019c8b0: 6e67 7468 2026 6774 3b20 3029 0a20 2074 ngth > 0). t │ │ │ -0019c8c0: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ -0019c8d0: 302d 3533 2d41 432d 360a 2020 2d20 4e49 0-53-AC-6. - NI │ │ │ -0019c8e0: 5354 2d38 3030 2d35 332d 4143 2d36 2831 ST-800-53-AC-6(1 │ │ │ -0019c8f0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -0019c900: 332d 434d 2d36 2861 290a 2020 2d20 4e49 3-CM-6(a). - NI │ │ │ -0019c910: 5354 2d38 3030 2d35 332d 434d 2d37 2861 ST-800-53-CM-7(a │ │ │ -0019c920: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -0019c930: 332d 434d 2d37 2862 290a 2020 2d20 4e49 3-CM-7(b). - NI │ │ │ -0019c940: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20 ST-800-53-MP-7. │ │ │ -0019c950: 202d 2063 6f6e 6669 6775 7265 5f73 7472 - configure_str │ │ │ -0019c960: 6174 6567 790a 2020 2d20 6869 6768 5f64 ategy. - high_d │ │ │ -0019c970: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f isruption. - lo │ │ │ -0019c980: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ -0019c990: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ -0019c9a0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f . - mount_optio │ │ │ -0019c9b0: 6e5f 686f 6d65 5f6e 6f73 7569 640a 2020 n_home_nosuid. │ │ │ -0019c9c0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ -0019c9d0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464 ed..- name: 'Add │ │ │ -0019c9e0: 206e 6f73 7569 6420 4f70 7469 6f6e 2074 nosuid Option t │ │ │ -0019c9f0: 6f20 2f68 6f6d 653a 2049 6620 2f68 6f6d o /home: If /hom │ │ │ -0019ca00: 6520 6e6f 7420 6d6f 756e 7465 642c 2063 e not mounted, c │ │ │ -0019ca10: 7261 6674 206d 6f75 6e74 5f69 6e66 6f20 raft mount_info │ │ │ -0019ca20: 6d61 6e75 616c 6c79 270a 2020 7365 745f manually'. set_ │ │ │ -0019ca30: 6661 6374 3a0a 2020 2020 6d6f 756e 745f fact:. mount_ │ │ │ -0019ca40: 696e 666f 3a20 277b 7b20 6d6f 756e 745f info: '{{ mount_ │ │ │ -0019ca50: 696e 666f 7c64 6566 6175 6c74 287b 7d29 info|default({}) │ │ │ -0019ca60: 7c63 6f6d 6269 6e65 287b 6974 656d 2e30 |combine({item.0 │ │ │ -0019ca70: 3a20 6974 656d 2e31 7d29 207d 7d27 0a20 : item.1}) }}'. │ │ │ -0019ca80: 2077 6974 685f 746f 6765 7468 6572 3a0a with_together:. │ │ │ -0019ca90: 2020 2d20 2d20 7461 7267 6574 0a20 2020 - - target. │ │ │ -0019caa0: 202d 2073 6f75 7263 650a 2020 2020 2d20 - source. - │ │ │ -0019cab0: 6673 7479 7065 0a20 2020 202d 206f 7074 fstype. - opt │ │ │ -0019cac0: 696f 6e73 0a20 202d 202d 202f 686f 6d65 ions. - - /home │ │ │ -0019cad0: 0a20 2020 202d 2027 270a 2020 2020 2d20 . - ''. - │ │ │ -0019cae0: 2727 0a20 2020 202d 2064 6566 6175 6c74 ''. - default │ │ │ -0019caf0: 730a 2020 7768 656e 3a0a 2020 2d20 2820 s. when:. - ( │ │ │ -0019cb00: 6e6f 7420 2820 226b 6572 6e65 6c22 2069 not ( "kernel" i │ │ │ -0019cb10: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -0019cb20: 7061 636b 6167 6573 2061 6e64 2022 7270 packages and "rp │ │ │ -0019cb30: 6d2d 6f73 7472 6565 2220 696e 2061 6e73 m-ostree" in ans │ │ │ -0019cb40: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ -0019cb50: 6765 730a 2020 2020 616e 6420 2262 6f6f ges. and "boo │ │ │ -0019cb60: 7463 2220 696e 2061 6e73 6962 6c65 5f66 tc" in ansible_f │ │ │ -0019cb70: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ -0019cb80: 6420 6e6f 7420 226f 7065 6e73 6869 6674 d not "openshift │ │ │ -0019cb90: 2d6b 7562 656c 6574 2220 696e 2061 6e73 -kubelet" in ans │ │ │ -0019cba0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ -0019cbb0: 6765 730a 2020 2020 616e 6420 226f 7374 ges. and "ost │ │ │ -0019cbc0: 7265 6522 2069 6e20 616e 7369 626c 655f ree" in ansible_ │ │ │ -0019cbd0: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061 proc_cmdline ) a │ │ │ -0019cbe0: 6e64 206e 6f74 2028 2061 6e73 6962 6c65 nd not ( ansible │ │ │ -0019cbf0: 5f76 6972 7475 616c 697a 6174 696f 6e5f _virtualization_ │ │ │ -0019cc00: 7479 7065 2069 6e0a 2020 2020 5b22 646f type in. ["do │ │ │ -0019cc10: 636b 6572 222c 2022 6c78 6322 2c20 226f cker", "lxc", "o │ │ │ -0019cc20: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22 penvz", "podman" │ │ │ -0019cc30: 2c20 2263 6f6e 7461 696e 6572 225d 2029 , "container"] ) │ │ │ -0019cc40: 2029 0a20 202d 2027 222f 686f 6d65 2220 ). - '"/home" │ │ │ -0019cc50: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74 in ansible_mount │ │ │ -0019cc60: 7320 7c20 6d61 7028 6174 7472 6962 7574 s | map(attribut │ │ │ -0019cc70: 653d 226d 6f75 6e74 2229 207c 206c 6973 e="mount") | lis │ │ │ -0019cc80: 7427 0a20 202d 2028 222d 2d66 7374 6162 t'. - ("--fstab │ │ │ -0019cc90: 2220 7c20 6c65 6e67 7468 203d 3d20 3029 " | length == 0) │ │ │ -0019cca0: 0a20 202d 2064 6576 6963 655f 6e61 6d65 . - device_name │ │ │ -0019ccb0: 2e73 7464 6f75 7420 6973 2064 6566 696e .stdout is defin │ │ │ -0019ccc0: 6564 2061 6e64 2064 6576 6963 655f 6e61 ed and device_na │ │ │ -0019ccd0: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320 me.stdout_lines │ │ │ -0019cce0: 6973 2064 6566 696e 6564 0a20 202d 2028 is defined. - ( │ │ │ -0019ccf0: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ -0019cd00: 7574 207c 206c 656e 6774 6820 3d3d 2030 ut | length == 0 │ │ │ -0019cd10: 290a 2020 7461 6773 3a0a 2020 2d20 4e49 ). tags:. - NI │ │ │ -0019cd20: 5354 2d38 3030 2d35 332d 4143 2d36 0a20 ST-800-53-AC-6. │ │ │ -0019cd30: 202d 204e 4953 542d 3830 302d 3533 2d41 - NIST-800-53-A │ │ │ -0019cd40: 432d 3628 3129 0a20 202d 204e 4953 542d C-6(1). - NIST- │ │ │ -0019cd50: 3830 302d 3533 2d43 4d2d 3628 6129 0a20 800-53-CM-6(a). │ │ │ -0019cd60: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ -0019cd70: 4d2d 3728 6129 0a20 202d 204e 4953 542d M-7(a). - NIST- │ │ │ -0019cd80: 3830 302d 3533 2d43 4d2d 3728 6229 0a20 800-53-CM-7(b). │ │ │ -0019cd90: 202d 204e 4953 542d 3830 302d 3533 2d4d - NIST-800-53-M │ │ │ -0019cda0: 502d 370a 2020 2d20 636f 6e66 6967 7572 P-7. - configur │ │ │ -0019cdb0: 655f 7374 7261 7465 6779 0a20 202d 2068 e_strategy. - h │ │ │ -0019cdc0: 6967 685f 6469 7372 7570 7469 6f6e 0a20 igh_disruption. │ │ │ -0019cdd0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ -0019cde0: 790a 2020 2d20 6d65 6469 756d 5f73 6576 y. - medium_sev │ │ │ -0019cdf0: 6572 6974 790a 2020 2d20 6d6f 756e 745f erity. - mount_ │ │ │ -0019ce00: 6f70 7469 6f6e 5f68 6f6d 655f 6e6f 7375 option_home_nosu │ │ │ -0019ce10: 6964 0a20 202d 206e 6f5f 7265 626f 6f74 id. - no_reboot │ │ │ -0019ce20: 5f6e 6565 6465 640a 0a2d 206e 616d 653a _needed..- name: │ │ │ -0019ce30: 2027 4164 6420 6e6f 7375 6964 204f 7074 'Add nosuid Opt │ │ │ -0019ce40: 696f 6e20 746f 202f 686f 6d65 3a20 4d61 ion to /home: Ma │ │ │ -0019ce50: 6b65 2073 7572 6520 6e6f 7375 6964 206f ke sure nosuid o │ │ │ -0019ce60: 7074 696f 6e20 6973 2070 6172 7420 6f66 ption is part of │ │ │ -0019ce70: 2074 6865 2074 6f20 2f68 6f6d 650a 2020 the to /home. │ │ │ -0019ce80: 2020 6f70 7469 6f6e 7327 0a20 2073 6574 options'. set │ │ │ -0019ce90: 5f66 6163 743a 0a20 2020 206d 6f75 6e74 _fact:. mount │ │ │ -0019cea0: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74 _info: '{{ mount │ │ │ -0019ceb0: 5f69 6e66 6f20 7c20 636f 6d62 696e 6528 _info | combine( │ │ │ -0019cec0: 207b 2727 6f70 7469 6f6e 7327 273a 2727 {''options'':'' │ │ │ -0019ced0: 2727 7e28 6d6f 756e 745f 696e 666f 2e6f ''~(mount_info.o │ │ │ -0019cee0: 7074 696f 6e73 207c 0a20 2020 2020 2064 ptions |. d │ │ │ -0019cef0: 6566 6175 6c74 2827 2727 2729 297e 2827 efault(''''))~(' │ │ │ -0019cf00: 272c 2727 2069 6620 286d 6f75 6e74 5f69 ','' if (mount_i │ │ │ -0019cf10: 6e66 6f2e 6f70 7469 6f6e 7320 7c20 6465 nfo.options | de │ │ │ -0019cf20: 6661 756c 7428 2727 2727 2929 2065 6c73 fault('''')) els │ │ │ -0019cf30: 6520 2727 2727 297e 2727 6e6f 7375 6964 e '''')~''nosuid │ │ │ -0019cf40: 2727 0a20 2020 2020 207d 2920 7d7d 270a ''. }) }}'. │ │ │ -0019cf50: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f when:. - ( no │ │ │ -0019cf60: 7420 2820 226b 6572 6e65 6c22 2069 6e20 t ( "kernel" in │ │ │ -0019cf70: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -0019cf80: 636b 6167 6573 2061 6e64 2022 7270 6d2d ckages and "rpm- │ │ │ -0019cf90: 6f73 7472 6565 2220 696e 2061 6e73 6962 ostree" in ansib │ │ │ -0019cfa0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -0019cfb0: 730a 2020 2020 616e 6420 2262 6f6f 7463 s. and "bootc │ │ │ -0019cfc0: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -0019cfd0: 7473 2e70 6163 6b61 6765 7320 616e 6420 ts.packages and │ │ │ -0019cfe0: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b not "openshift-k │ │ │ -0019cff0: 7562 656c 6574 2220 696e 2061 6e73 6962 ubelet" in ansib │ │ │ -0019d000: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -0019d010: 730a 2020 2020 616e 6420 226f 7374 7265 s. and "ostre │ │ │ -0019d020: 6522 2069 6e20 616e 7369 626c 655f 7072 e" in ansible_pr │ │ │ -0019d030: 6f63 5f63 6d64 6c69 6e65 2029 2061 6e64 oc_cmdline ) and │ │ │ -0019d040: 206e 6f74 2028 2061 6e73 6962 6c65 5f76 not ( ansible_v │ │ │ -0019d050: 6972 7475 616c 697a 6174 696f 6e5f 7479 irtualization_ty │ │ │ -0019d060: 7065 2069 6e0a 2020 2020 5b22 646f 636b pe in. ["dock │ │ │ -0019d070: 6572 222c 2022 6c78 6322 2c20 226f 7065 er", "lxc", "ope │ │ │ -0019d080: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c20 nvz", "podman", │ │ │ -0019d090: 2263 6f6e 7461 696e 6572 225d 2029 2029 "container"] ) ) │ │ │ -0019d0a0: 0a20 202d 2027 222f 686f 6d65 2220 696e . - '"/home" in │ │ │ -0019d0b0: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320 ansible_mounts │ │ │ -0019d0c0: 7c20 6d61 7028 6174 7472 6962 7574 653d | map(attribute= │ │ │ -0019d0d0: 226d 6f75 6e74 2229 207c 206c 6973 7427 "mount") | list' │ │ │ -0019d0e0: 0a20 202d 206d 6f75 6e74 5f69 6e66 6f20 . - mount_info │ │ │ -0019d0f0: 6973 2064 6566 696e 6564 2061 6e64 2022 is defined and " │ │ │ -0019d100: 6e6f 7375 6964 2220 6e6f 7420 696e 2028 nosuid" not in ( │ │ │ -0019d110: 6d6f 756e 745f 696e 666f 2e6f 7074 696f mount_info.optio │ │ │ -0019d120: 6e73 207c 2064 6566 6175 6c74 2827 2729 ns | default('') │ │ │ -0019d130: 290a 2020 7461 6773 3a0a 2020 2d20 4e49 ). tags:. - NI │ │ │ -0019d140: 5354 2d38 3030 2d35 332d 4143 2d36 0a20 ST-800-53-AC-6. │ │ │ -0019d150: 202d 204e 4953 542d 3830 302d 3533 2d41 - NIST-800-53-A │ │ │ -0019d160: 432d 3628 3129 0a20 202d 204e 4953 542d C-6(1). - NIST- │ │ │ -0019d170: 3830 302d 3533 2d43 4d2d 3628 6129 0a20 800-53-CM-6(a). │ │ │ -0019d180: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ -0019d190: 4d2d 3728 6129 0a20 202d 204e 4953 542d M-7(a). - NIST- │ │ │ -0019d1a0: 3830 302d 3533 2d43 4d2d 3728 6229 0a20 800-53-CM-7(b). │ │ │ -0019d1b0: 202d 204e 4953 542d 3830 302d 3533 2d4d - NIST-800-53-M │ │ │ -0019d1c0: 502d 370a 2020 2d20 636f 6e66 6967 7572 P-7. - configur │ │ │ -0019d1d0: 655f 7374 7261 7465 6779 0a20 202d 2068 e_strategy. - h │ │ │ -0019d1e0: 6967 685f 6469 7372 7570 7469 6f6e 0a20 igh_disruption. │ │ │ -0019d1f0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ -0019d200: 790a 2020 2d20 6d65 6469 756d 5f73 6576 y. - medium_sev │ │ │ -0019d210: 6572 6974 790a 2020 2d20 6d6f 756e 745f erity. - mount_ │ │ │ -0019d220: 6f70 7469 6f6e 5f68 6f6d 655f 6e6f 7375 option_home_nosu │ │ │ -0019d230: 6964 0a20 202d 206e 6f5f 7265 626f 6f74 id. - no_reboot │ │ │ -0019d240: 5f6e 6565 6465 640a 0a2d 206e 616d 653a _needed..- name: │ │ │ -0019d250: 2027 4164 6420 6e6f 7375 6964 204f 7074 'Add nosuid Opt │ │ │ -0019d260: 696f 6e20 746f 202f 686f 6d65 3a20 456e ion to /home: En │ │ │ -0019d270: 7375 7265 202f 686f 6d65 2069 7320 6d6f sure /home is mo │ │ │ -0019d280: 756e 7465 6420 7769 7468 206e 6f73 7569 unted with nosui │ │ │ -0019d290: 6420 6f70 7469 6f6e 270a 2020 616e 7369 d option'. ansi │ │ │ -0019d2a0: 626c 652e 706f 7369 782e 6d6f 756e 743a ble.posix.mount: │ │ │ -0019d2b0: 0a20 2020 2070 6174 683a 202f 686f 6d65 . path: /home │ │ │ -0019d2c0: 0a20 2020 2073 7263 3a20 277b 7b20 6d6f . src: '{{ mo │ │ │ -0019d2d0: 756e 745f 696e 666f 2e73 6f75 7263 6520 unt_info.source │ │ │ -0019d2e0: 7c20 6465 6661 756c 7428 2727 2727 2920 | default('''') │ │ │ -0019d2f0: 7d7d 270a 2020 2020 6f70 7473 3a20 277b }}'. opts: '{ │ │ │ -0019d300: 7b20 6d6f 756e 745f 696e 666f 2e6f 7074 { mount_info.opt │ │ │ -0019d310: 696f 6e73 207c 2064 6566 6175 6c74 2827 ions | default(' │ │ │ -0019d320: 2727 2729 207d 7d27 0a20 2020 2073 7461 ''') }}'. sta │ │ │ -0019d330: 7465 3a20 6d6f 756e 7465 640a 2020 2020 te: mounted. │ │ │ -0019d340: 6673 7479 7065 3a20 277b 7b20 6d6f 756e fstype: '{{ moun │ │ │ -0019d350: 745f 696e 666f 2e66 7374 7970 6520 7c20 t_info.fstype | │ │ │ -0019d360: 6465 6661 756c 7428 2727 2727 2920 7d7d default('''') }} │ │ │ -0019d370: 270a 2020 7265 6769 7374 6572 3a20 6d6f '. register: mo │ │ │ -0019d380: 756e 745f 7265 7375 6c74 0a20 2066 6169 unt_result. fai │ │ │ -0019d390: 6c65 645f 7768 656e 3a0a 2020 2d20 6d6f led_when:. - mo │ │ │ -0019d3a0: 756e 745f 7265 7375 6c74 2069 7320 6661 unt_result is fa │ │ │ -0019d3b0: 696c 6564 0a20 202d 2027 2727 7461 7267 iled. - '''targ │ │ │ -0019d3c0: 6574 2069 7320 6275 7379 2727 206e 6f74 et is busy'' not │ │ │ -0019d3d0: 2069 6e20 286d 6f75 6e74 5f72 6573 756c in (mount_resul │ │ │ -0019d3e0: 742e 6d73 6720 7c20 6465 6661 756c 7428 t.msg | default( │ │ │ -0019d3f0: 2727 2727 2929 270a 2020 2d20 2727 2761 ''''))'. - '''a │ │ │ -0019d400: 6c72 6561 6479 206d 6f75 6e74 6564 2727 lready mounted'' │ │ │ -0019d410: 206e 6f74 2069 6e20 286d 6f75 6e74 5f72 not in (mount_r │ │ │ -0019d420: 6573 756c 742e 6d73 6720 7c20 6465 6661 esult.msg | defa │ │ │ -0019d430: 756c 7428 2727 2727 2929 270a 2020 7768 ult(''''))'. wh │ │ │ -0019d440: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820 en:. - ( not ( │ │ │ -0019d450: 226b 6572 6e65 6c22 2069 6e20 616e 7369 "kernel" in ansi │ │ │ -0019d460: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -0019d470: 6573 2061 6e64 2022 7270 6d2d 6f73 7472 es and "rpm-ostr │ │ │ -0019d480: 6565 2220 696e 2061 6e73 6962 6c65 5f66 ee" in ansible_f │ │ │ -0019d490: 6163 7473 2e70 6163 6b61 6765 730a 2020 acts.packages. │ │ │ -0019d4a0: 2020 616e 6420 2262 6f6f 7463 2220 696e and "bootc" in │ │ │ -0019d4b0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -0019d4c0: 6163 6b61 6765 7320 616e 6420 6e6f 7420 ackages and not │ │ │ -0019d4d0: 226f 7065 6e73 6869 6674 2d6b 7562 656c "openshift-kubel │ │ │ -0019d4e0: 6574 2220 696e 2061 6e73 6962 6c65 5f66 et" in ansible_f │ │ │ -0019d4f0: 6163 7473 2e70 6163 6b61 6765 730a 2020 acts.packages. │ │ │ -0019d500: 2020 616e 6420 226f 7374 7265 6522 2069 and "ostree" i │ │ │ -0019d510: 6e20 616e 7369 626c 655f 7072 6f63 5f63 n ansible_proc_c │ │ │ -0019d520: 6d64 6c69 6e65 2029 2061 6e64 206e 6f74 mdline ) and not │ │ │ -0019d530: 2028 2061 6e73 6962 6c65 5f76 6972 7475 ( ansible_virtu │ │ │ -0019d540: 616c 697a 6174 696f 6e5f 7479 7065 2069 alization_type i │ │ │ -0019d550: 6e0a 2020 2020 5b22 646f 636b 6572 222c n. ["docker", │ │ │ -0019d560: 2022 6c78 6322 2c20 226f 7065 6e76 7a22 "lxc", "openvz" │ │ │ -0019d570: 2c20 2270 6f64 6d61 6e22 2c20 2263 6f6e , "podman", "con │ │ │ -0019d580: 7461 696e 6572 225d 2029 2029 0a20 202d tainer"] ) ). - │ │ │ -0019d590: 2027 222f 686f 6d65 2220 696e 2061 6e73 '"/home" in ans │ │ │ -0019d5a0: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61 ible_mounts | ma │ │ │ -0019d5b0: 7028 6174 7472 6962 7574 653d 226d 6f75 p(attribute="mou │ │ │ -0019d5c0: 6e74 2229 207c 206c 6973 7427 0a20 202d nt") | list'. - │ │ │ -0019d5d0: 206d 6f75 6e74 5f69 6e66 6f20 6973 2064 mount_info is d │ │ │ -0019d5e0: 6566 696e 6564 0a20 202d 2028 6465 7669 efined. - (devi │ │ │ -0019d5f0: 6365 5f6e 616d 652e 7374 646f 7574 2069 ce_name.stdout i │ │ │ -0019d600: 7320 6465 6669 6e65 6420 616e 6420 2864 s defined and (d │ │ │ -0019d610: 6576 6963 655f 6e61 6d65 2e73 7464 6f75 evice_name.stdou │ │ │ -0019d620: 7420 7c20 6c65 6e67 7468 2026 6774 3b20 t | length > │ │ │ -0019d630: 3029 2920 6f72 2028 222d 2d66 7374 6162 0)) or ("--fstab │ │ │ -0019d640: 220a 2020 2020 7c20 6c65 6e67 7468 203d ". | length = │ │ │ -0019d650: 3d20 3029 0a20 2074 6167 733a 0a20 202d = 0). tags:. - │ │ │ -0019d660: 204e 4953 542d 3830 302d 3533 2d41 432d NIST-800-53-AC- │ │ │ -0019d670: 360a 2020 2d20 4e49 5354 2d38 3030 2d35 6. - NIST-800-5 │ │ │ -0019d680: 332d 4143 2d36 2831 290a 2020 2d20 4e49 3-AC-6(1). - NI │ │ │ -0019d690: 5354 2d38 3030 2d35 332d 434d 2d36 2861 ST-800-53-CM-6(a │ │ │ -0019d6a0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -0019d6b0: 332d 434d 2d37 2861 290a 2020 2d20 4e49 3-CM-7(a). - NI │ │ │ -0019d6c0: 5354 2d38 3030 2d35 332d 434d 2d37 2862 ST-800-53-CM-7(b │ │ │ -0019d6d0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -0019d6e0: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669 3-MP-7. - confi │ │ │ -0019d6f0: 6775 7265 5f73 7472 6174 6567 790a 2020 gure_strategy. │ │ │ -0019d700: 2d20 6869 6768 5f64 6973 7275 7074 696f - high_disruptio │ │ │ -0019d710: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65 n. - low_comple │ │ │ -0019d720: 7869 7479 0a20 202d 206d 6564 6975 6d5f xity. - medium_ │ │ │ -0019d730: 7365 7665 7269 7479 0a20 202d 206d 6f75 severity. - mou │ │ │ -0019d740: 6e74 5f6f 7074 696f 6e5f 686f 6d65 5f6e nt_option_home_n │ │ │ -0019d750: 6f73 7569 640a 2020 2d20 6e6f 5f72 6562 osuid. - no_reb │ │ │ -0019d760: 6f6f 745f 6e65 6564 6564 0a3c 2f63 6f64 oot_needed.
Remed │ │ │ -0019d820: 6961 7469 6f6e 2053 6865 6c6c 2073 6372 iation Shell scr │ │ │ -0019d830: 6970 7420 e287 b23c 2f61 3e3c 6272 3e3c ipt ...
< │ │ │ -0019d840: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -0019d850: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -0019d860: 7365 2220 6964 3d22 6964 3434 3522 3e3c se" id="id445">< │ │ │ -0019d870: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -0019d880: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -0019d890: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -0019d8a0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -0019d8b0: 3e3c 7472 3e3c 7468 3e52 6562 6f6f 743a >Reboot: │ │ │ -0019d8c0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -0019d8e0: 3c70 7265 3e3c 636f 6465 3e23 2052 656d
# Rem
│ │ │ -0019d8f0: 6564 6961 7469 6f6e 2069 7320 6170 706c  ediation is appl
│ │ │ -0019d900: 6963 6162 6c65 206f 6e6c 7920 696e 2063  icable only in c
│ │ │ -0019d910: 6572 7461 696e 2070 6c61 7466 6f72 6d73  ertain platforms
│ │ │ -0019d920: 0a69 6620 2820 2120 2820 7b20 7270 6d20  .if ( ! ( { rpm 
│ │ │ -0019d930: 2d2d 7175 6965 7420 2d71 206b 6572 6e65  --quiet -q kerne
│ │ │ -0019d940: 6c20 3b7d 2026 616d 703b 2661 6d70 3b20  l ;} && 
│ │ │ -0019d950: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ -0019d960: 2072 706d 2d6f 7374 7265 6520 3b7d 2026   rpm-ostree ;} &
│ │ │ -0019d970: 616d 703b 2661 6d70 3b20 7b20 7270 6d20  amp;& { rpm 
│ │ │ -0019d980: 2d2d 7175 6965 7420 2d71 2062 6f6f 7463  --quiet -q bootc
│ │ │ -0019d990: 203b 7d20 2661 6d70 3b26 616d 703b 207b   ;} && {
│ │ │ -0019d9a0: 2021 2072 706d 202d 2d71 7569 6574 202d   ! rpm --quiet -
│ │ │ -0019d9b0: 7120 6f70 656e 7368 6966 742d 6b75 6265  q openshift-kube
│ │ │ -0019d9c0: 6c65 7420 3b7d 2026 616d 703b 2661 6d70  let ;} &&
│ │ │ -0019d9d0: 3b20 285b 202d 6620 2f72 756e 2f6f 7374  ; ([ -f /run/ost
│ │ │ -0019d9e0: 7265 652d 626f 6f74 6564 205d 207c 7c20  ree-booted ] || 
│ │ │ -0019d9f0: 5b20 2d4c 202f 6f73 7472 6565 205d 2920  [ -L /ostree ]) 
│ │ │ -0019da00: 2920 2661 6d70 3b26 616d 703b 2021 2028  ) && ! (
│ │ │ -0019da10: 205b 202d 6620 2f2e 646f 636b 6572 656e   [ -f /.dockeren
│ │ │ -0019da20: 7620 5d20 7c7c 205b 202d 6620 2f72 756e  v ] || [ -f /run
│ │ │ -0019da30: 2f2e 636f 6e74 6169 6e65 7265 6e76 205d  /.containerenv ]
│ │ │ -0019da40: 2029 2029 2026 616d 703b 2661 6d70 3b20   ) ) && 
│ │ │ -0019da50: 7b20 2820 6669 6e64 6d6e 7420 2d2d 6b65  { ( findmnt --ke
│ │ │ -0019da60: 726e 656c 2022 2f68 6f6d 6522 2026 6774  rnel "/home" >
│ │ │ -0019da70: 3b20 2f64 6576 2f6e 756c 6c20 7c7c 2066  ; /dev/null || f
│ │ │ -0019da80: 696e 646d 6e74 202d 2d66 7374 6162 2022  indmnt --fstab "
│ │ │ -0019da90: 2f68 6f6d 6522 2026 6774 3b20 2f64 6576  /home" > /dev
│ │ │ -0019daa0: 2f6e 756c 6c20 293b 207d 3b20 7468 656e  /null ); }; then
│ │ │ -0019dab0: 0a0a 6675 6e63 7469 6f6e 2070 6572 666f  ..function perfo
│ │ │ -0019dac0: 726d 5f72 656d 6564 6961 7469 6f6e 207b  rm_remediation {
│ │ │ -0019dad0: 0a0a 2020 2020 0a20 2020 2020 2020 2023  ..    .        #
│ │ │ -0019dae0: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ -0019daf0: 202f 686f 6d65 2068 6173 2074 6f20 6265   /home has to be
│ │ │ -0019db00: 2064 6566 696e 6564 2069 6e20 2f65 7463   defined in /etc
│ │ │ -0019db10: 2f66 7374 6162 0a20 2020 2020 2020 2023  /fstab.        #
│ │ │ -0019db20: 2062 6566 6f72 6520 7468 6973 2072 656d   before this rem
│ │ │ -0019db30: 6564 6961 7469 6f6e 2063 616e 2062 6520  ediation can be 
│ │ │ -0019db40: 6578 6563 7574 6564 2e20 496e 2063 6173  executed. In cas
│ │ │ -0019db50: 6520 6974 2069 7320 6e6f 7420 6465 6669  e it is not defi
│ │ │ -0019db60: 6e65 642c 2074 6865 0a20 2020 2020 2020  ned, the.       
│ │ │ -0019db70: 2023 2072 656d 6564 6961 7469 6f6e 2061   # remediation a
│ │ │ -0019db80: 626f 7274 7320 616e 6420 6e6f 2063 6861  borts and no cha
│ │ │ -0019db90: 6e67 6573 2072 6567 6172 6469 6e67 2074  nges regarding t
│ │ │ -0019dba0: 6865 206d 6f75 6e74 2070 6f69 6e74 2061  he mount point a
│ │ │ -0019dbb0: 7265 2064 6f6e 652e 0a20 2020 2020 2020  re done..       
│ │ │ -0019dbc0: 206d 6f75 6e74 5f70 6f69 6e74 5f6d 6174   mount_point_mat
│ │ │ -0019dbd0: 6368 5f72 6567 6578 703d 2224 2870 7269  ch_regexp="$(pri
│ │ │ -0019dbe0: 6e74 6620 225e 5b5b 3a73 7061 6365 3a5d  ntf "^[[:space:]
│ │ │ -0019dbf0: 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061 6365  ]*[^#].*[[:space
│ │ │ -0019dc00: 3a5d 5d25 735b 5b3a 7370 6163 653a 5d5d  :]]%s[[:space:]]
│ │ │ -0019dc10: 2220 222f 686f 6d65 2229 220a 0a20 2020  " "/home")"..   
│ │ │ -0019dc20: 2067 7265 7020 2224 6d6f 756e 745f 706f   grep "$mount_po
│ │ │ -0019dc30: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -0019dc40: 2220 2d71 202f 6574 632f 6673 7461 6220  " -q /etc/fstab 
│ │ │ -0019dc50: 5c0a 2020 2020 2020 2020 7c7c 207b 2065  \.        || { e
│ │ │ -0019dc60: 6368 6f20 2254 6865 206d 6f75 6e74 2070  cho "The mount p
│ │ │ -0019dc70: 6f69 6e74 2027 2f68 6f6d 6527 2069 7320  oint '/home' is 
│ │ │ -0019dc80: 6e6f 7420 6576 656e 2069 6e20 2f65 7463  not even in /etc
│ │ │ -0019dc90: 2f66 7374 6162 2c20 736f 2077 6520 6361  /fstab, so we ca
│ │ │ -0019dca0: 6e27 7420 7365 7420 7570 206d 6f75 6e74  n't set up mount
│ │ │ -0019dcb0: 206f 7074 696f 6e73 2220 2667 743b 2661   options" >&a
│ │ │ -0019dcc0: 6d70 3b32 3b0a 2020 2020 2020 2020 2020  mp;2;.          
│ │ │ -0019dcd0: 2020 2020 2020 6563 686f 2022 4e6f 7420        echo "Not 
│ │ │ -0019dce0: 7265 6d65 6469 6174 696e 672c 2062 6563  remediating, bec
│ │ │ -0019dcf0: 6175 7365 2074 6865 7265 2069 7320 6e6f  ause there is no
│ │ │ -0019dd00: 2072 6563 6f72 6420 6f66 202f 686f 6d65   record of /home
│ │ │ -0019dd10: 2069 6e20 2f65 7463 2f66 7374 6162 2220   in /etc/fstab" 
│ │ │ -0019dd20: 2667 743b 2661 6d70 3b32 3b20 7265 7475  >&2; retu
│ │ │ -0019dd30: 726e 2031 3b20 7d0a 2020 2020 0a0a 0a20  rn 1; }.    ... 
│ │ │ -0019dd40: 2020 206d 6f75 6e74 5f70 6f69 6e74 5f6d     mount_point_m
│ │ │ -0019dd50: 6174 6368 5f72 6567 6578 703d 2224 2870  atch_regexp="$(p
│ │ │ -0019dd60: 7269 6e74 6620 225e 5b5b 3a73 7061 6365  rintf "^[[:space
│ │ │ -0019dd70: 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061  :]]*[^#].*[[:spa
│ │ │ -0019dd80: 6365 3a5d 5d25 735b 5b3a 7370 6163 653a  ce:]]%s[[:space:
│ │ │ -0019dd90: 5d5d 2220 2f68 6f6d 6529 220a 0a20 2020  ]]" /home)"..   
│ │ │ -0019dda0: 2023 2049 6620 7468 6520 6d6f 756e 7420   # If the mount 
│ │ │ -0019ddb0: 706f 696e 7420 6973 206e 6f74 2069 6e20  point is not in 
│ │ │ -0019ddc0: 2f65 7463 2f66 7374 6162 2c20 6765 7420  /etc/fstab, get 
│ │ │ -0019ddd0: 7072 6576 696f 7573 206d 6f75 6e74 206f  previous mount o
│ │ │ -0019dde0: 7074 696f 6e73 2066 726f 6d20 2f65 7463  ptions from /etc
│ │ │ -0019ddf0: 2f6d 7461 620a 2020 2020 6966 2021 2067  /mtab.    if ! g
│ │ │ -0019de00: 7265 7020 2d71 2022 246d 6f75 6e74 5f70  rep -q "$mount_p
│ │ │ -0019de10: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -0019de20: 7022 202f 6574 632f 6673 7461 623b 2074  p" /etc/fstab; t
│ │ │ -0019de30: 6865 6e0a 2020 2020 2020 2020 2320 7275  hen.        # ru
│ │ │ -0019de40: 6e74 696d 6520 6f70 7473 2077 6974 686f  ntime opts witho
│ │ │ -0019de50: 7574 2073 6f6d 6520 6175 746f 6d61 7469  ut some automati
│ │ │ -0019de60: 6320 6b65 726e 656c 2f75 7365 7273 7061  c kernel/userspa
│ │ │ -0019de70: 6365 2d61 6464 6564 2064 6566 6175 6c74  ce-added default
│ │ │ -0019de80: 730a 2020 2020 2020 2020 7072 6576 696f  s.        previo
│ │ │ -0019de90: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ -0019dea0: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ -0019deb0: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ -0019dec0: 202f 6574 632f 6d74 6162 207c 2068 6561   /etc/mtab | hea
│ │ │ -0019ded0: 6420 2d31 207c 2020 6177 6b20 277b 7072  d -1 |  awk '{pr
│ │ │ -0019dee0: 696e 7420 2434 7d27 205c 0a20 2020 2020  int $4}' \.     
│ │ │ -0019def0: 2020 2020 2020 2020 2020 2020 2020 207c                 |
│ │ │ -0019df00: 2073 6564 202d 4520 2273 2f28 7277 7c64   sed -E "s/(rw|d
│ │ │ -0019df10: 6566 6175 6c74 737c 7365 636c 6162 656c  efaults|seclabel
│ │ │ -0019df20: 7c6e 6f73 7569 6429 282c 7c24 292f 2f67  |nosuid)(,|$)//g
│ │ │ -0019df30: 3b73 2f2c 242f 2f22 290a 2020 2020 2020  ;s/,$//").      
│ │ │ -0019df40: 2020 5b20 2224 7072 6576 696f 7573 5f6d    [ "$previous_m
│ │ │ -0019df50: 6f75 6e74 5f6f 7074 7322 205d 2026 616d  ount_opts" ] &am
│ │ │ -0019df60: 703b 2661 6d70 3b20 7072 6576 696f 7573  p;& previous
│ │ │ -0019df70: 5f6d 6f75 6e74 5f6f 7074 732b 3d22 2c22  _mount_opts+=","
│ │ │ -0019df80: 0a20 2020 2020 2020 2023 2049 6e20 6973  .        # In is
│ │ │ -0019df90: 6f39 3636 3020 6669 6c65 7379 7374 656d  o9660 filesystem
│ │ │ -0019dfa0: 7320 6d74 6162 2063 6f75 6c64 2064 6573  s mtab could des
│ │ │ -0019dfb0: 6372 6962 6520 6120 2262 6c6f 636b 7369  cribe a "blocksi
│ │ │ -0019dfc0: 7a65 2220 7661 6c75 652c 2074 6869 7320  ze" value, this 
│ │ │ -0019dfd0: 7368 6f75 6c64 2062 6520 7265 666c 6563  should be reflec
│ │ │ -0019dfe0: 7465 6420 696e 0a20 2020 2020 2020 2023  ted in.        #
│ │ │ -0019dff0: 2066 7374 6162 2061 7320 2262 6c6f 636b   fstab as "block
│ │ │ -0019e000: 222e 2020 5468 6520 6e65 7874 2076 6172  ".  The next var
│ │ │ -0019e010: 6961 626c 6520 6973 2074 6f20 7361 7469  iable is to sati
│ │ │ -0019e020: 7366 7920 7368 656c 6c63 6865 636b 2053  sfy shellcheck S
│ │ │ -0019e030: 4332 3035 302e 0a20 2020 2020 2020 2066  C2050..        f
│ │ │ -0019e040: 735f 7479 7065 3d22 220a 2020 2020 2020  s_type="".      
│ │ │ -0019e050: 2020 6966 205b 2020 2224 6673 5f74 7970    if [  "$fs_typ
│ │ │ -0019e060: 6522 203d 3d20 2269 736f 3936 3630 2220  e" == "iso9660" 
│ │ │ -0019e070: 5d20 3b20 7468 656e 0a20 2020 2020 2020  ] ; then.       
│ │ │ -0019e080: 2020 2020 2070 7265 7669 6f75 735f 6d6f       previous_mo
│ │ │ -0019e090: 756e 745f 6f70 7473 3d24 2873 6564 2027  unt_opts=$(sed '
│ │ │ -0019e0a0: 732f 626c 6f63 6b73 697a 653d 2f62 6c6f  s/blocksize=/blo
│ │ │ -0019e0b0: 636b 3d2f 2720 266c 743b 266c 743b 266c  ck=/' <<&l
│ │ │ -0019e0c0: 743b 2022 2470 7265 7669 6f75 735f 6d6f  t; "$previous_mo
│ │ │ -0019e0d0: 756e 745f 6f70 7473 2229 0a20 2020 2020  unt_opts").     
│ │ │ -0019e0e0: 2020 2066 690a 2020 2020 2020 2020 6563     fi.        ec
│ │ │ -0019e0f0: 686f 2022 202f 686f 6d65 2020 6465 6661  ho " /home  defa
│ │ │ -0019e100: 756c 7473 2c24 7b70 7265 7669 6f75 735f  ults,${previous_
│ │ │ -0019e110: 6d6f 756e 745f 6f70 7473 7d6e 6f73 7569  mount_opts}nosui
│ │ │ -0019e120: 6420 3020 3022 2026 6774 3b26 6774 3b20  d 0 0" >> 
│ │ │ -0019e130: 2f65 7463 2f66 7374 6162 0a20 2020 2023  /etc/fstab.    #
│ │ │ -0019e140: 2049 6620 7468 6520 6d6f 756e 745f 6f70   If the mount_op
│ │ │ -0019e150: 7420 6f70 7469 6f6e 2069 7320 6e6f 7420  t option is not 
│ │ │ -0019e160: 616c 7265 6164 7920 696e 2074 6865 206d  already in the m
│ │ │ -0019e170: 6f75 6e74 2070 6f69 6e74 2773 202f 6574  ount point's /et
│ │ │ -0019e180: 632f 6673 7461 6220 656e 7472 792c 2061  c/fstab entry, a
│ │ │ -0019e190: 6464 2069 740a 2020 2020 656c 6966 2021  dd it.    elif !
│ │ │ -0019e1a0: 2067 7265 7020 2224 6d6f 756e 745f 706f   grep "$mount_po
│ │ │ -0019e1b0: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -0019e1c0: 2220 2f65 7463 2f66 7374 6162 207c 2067  " /etc/fstab | g
│ │ │ -0019e1d0: 7265 7020 2d71 2022 6e6f 7375 6964 223b  rep -q "nosuid";
│ │ │ -0019e1e0: 2074 6865 6e0a 2020 2020 2020 2020 7072   then.        pr
│ │ │ -0019e1f0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -0019e200: 733d 2428 6772 6570 2022 246d 6f75 6e74  s=$(grep "$mount
│ │ │ -0019e210: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -0019e220: 6578 7022 202f 6574 632f 6673 7461 6220  exp" /etc/fstab 
│ │ │ -0019e230: 7c20 6177 6b20 277b 7072 696e 7420 2434  | awk '{print $4
│ │ │ -0019e240: 7d27 290a 2020 2020 2020 2020 7365 6420  }').        sed 
│ │ │ -0019e250: 2d69 2022 737c 5c28 247b 6d6f 756e 745f  -i "s|\(${mount_
│ │ │ -0019e260: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -0019e270: 7870 7d2e 2a24 7b70 7265 7669 6f75 735f  xp}.*${previous_
│ │ │ -0019e280: 6d6f 756e 745f 6f70 7473 7d5c 297c 5c31  mount_opts}\)|\1
│ │ │ -0019e290: 2c6e 6f73 7569 647c 2220 2f65 7463 2f66  ,nosuid|" /etc/f
│ │ │ -0019e2a0: 7374 6162 0a20 2020 2066 690a 0a0a 2020  stab.    fi...  
│ │ │ -0019e2b0: 2020 6966 206d 6b64 6972 202d 7020 222f    if mkdir -p "/
│ │ │ -0019e2c0: 686f 6d65 223b 2074 6865 6e0a 2020 2020  home"; then.    
│ │ │ -0019e2d0: 2020 2020 6966 206d 6f75 6e74 706f 696e      if mountpoin
│ │ │ -0019e2e0: 7420 2d71 2022 2f68 6f6d 6522 3b20 7468  t -q "/home"; th
│ │ │ -0019e2f0: 656e 0a20 2020 2020 2020 2020 2020 206d  en.            m
│ │ │ -0019e300: 6f75 6e74 202d 6f20 7265 6d6f 756e 7420  ount -o remount 
│ │ │ -0019e310: 2d2d 7461 7267 6574 2022 2f68 6f6d 6522  --target "/home"
│ │ │ -0019e320: 0a20 2020 2020 2020 2066 690a 2020 2020  .        fi.    
│ │ │ -0019e330: 6669 0a7d 0a0a 7065 7266 6f72 6d5f 7265  fi.}..perform_re
│ │ │ -0019e340: 6d65 6469 6174 696f 6e0a 0a65 6c73 650a  mediation..else.
│ │ │ -0019e350: 2020 2020 2667 743b 2661 6d70 3b32 2065      >&2 e
│ │ │ -0019e360: 6368 6f20 2752 656d 6564 6961 7469 6f6e  cho 'Remediation
│ │ │ -0019e370: 2069 7320 6e6f 7420 6170 706c 6963 6162   is not applicab
│ │ │ -0019e380: 6c65 2c20 6e6f 7468 696e 6720 7761 7320  le, nothing was 
│ │ │ -0019e390: 646f 6e65 270a 6669 0a3c 2f63 6f64 653e  done'.fi.
│ │ │ +0019bd30: 7369 626c 6520 736e 6970 7065 7420 e287  sible snippet ..
│ │ │ +0019bd40: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
< │ │ │ +0019bdc0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +0019bde0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr> │ │ │ +0019be30: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472
low
Disr │ │ │ +0019bdf0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +0019be00: 6869 6768 3c2f 7464 3e3c 2f74 723e 3c74 high
Reboot:false
Str │ │ │ +0019be40: 6174 6567 793a 3c2f 7468 3e3c 7464 3e63 ategy:c │ │ │ +0019be50: 6f6e 6669 6775 7265 3c2f 7464 3e3c 2f74 onfigure
<
│ │ │ +0019be70: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ +0019be80: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ +0019be90: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ +0019bea0: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ +0019beb0: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ +0019bec0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +0019bed0: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ +0019bee0: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ +0019bef0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +0019bf00: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ +0019bf10: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ +0019bf20: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +0019bf30: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ +0019bf40: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ +0019bf50: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +0019bf60: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +0019bf70: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +0019bf80: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +0019bf90: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +0019bfa0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 686f   mount_option_ho
│ │ │ +0019bfb0: 6d65 5f6e 6f73 7569 640a 2020 2d20 6e6f  me_nosuid.  - no
│ │ │ +0019bfc0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +0019bfd0: 2d20 6e61 6d65 3a20 2741 6464 206e 6f73  - name: 'Add nos
│ │ │ +0019bfe0: 7569 6420 4f70 7469 6f6e 2074 6f20 2f68  uid Option to /h
│ │ │ +0019bff0: 6f6d 653a 2043 6865 636b 2069 6e66 6f72  ome: Check infor
│ │ │ +0019c000: 6d61 7469 6f6e 2061 7373 6f63 6961 7465  mation associate
│ │ │ +0019c010: 6420 746f 206d 6f75 6e74 706f 696e 7427  d to mountpoint'
│ │ │ +0019c020: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ +0019c030: 696e 2e63 6f6d 6d61 6e64 3a20 6669 6e64  in.command: find
│ │ │ +0019c040: 6d6e 7420 2d2d 6673 7461 6220 272f 686f  mnt --fstab '/ho
│ │ │ +0019c050: 6d65 270a 2020 7265 6769 7374 6572 3a20  me'.  register: 
│ │ │ +0019c060: 6465 7669 6365 5f6e 616d 650a 2020 6661  device_name.  fa
│ │ │ +0019c070: 696c 6564 5f77 6865 6e3a 2064 6576 6963  iled_when: devic
│ │ │ +0019c080: 655f 6e61 6d65 2e72 6320 2667 743b 2031  e_name.rc > 1
│ │ │ +0019c090: 0a20 2063 6861 6e67 6564 5f77 6865 6e3a  .  changed_when:
│ │ │ +0019c0a0: 2066 616c 7365 0a20 2063 6865 636b 5f6d   false.  check_m
│ │ │ +0019c0b0: 6f64 653a 2066 616c 7365 0a20 2077 6865  ode: false.  whe
│ │ │ +0019c0c0: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +0019c0d0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +0019c0e0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +0019c0f0: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ +0019c100: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ +0019c110: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +0019c120: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ +0019c130: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +0019c140: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ +0019c150: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +0019c160: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ +0019c170: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +0019c180: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ +0019c190: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ +0019c1a0: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ +0019c1b0: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ +0019c1c0: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ +0019c1d0: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ +0019c1e0: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ +0019c1f0: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ +0019c200: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ +0019c210: 2722 2f68 6f6d 6522 2069 6e20 616e 7369  '"/home" in ansi
│ │ │ +0019c220: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ +0019c230: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ +0019c240: 7422 2920 7c20 6c69 7374 270a 2020 7461  t") | list'.  ta
│ │ │ +0019c250: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +0019c260: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ +0019c270: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ +0019c280: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +0019c290: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ +0019c2a0: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ +0019c2b0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +0019c2c0: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ +0019c2d0: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ +0019c2e0: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +0019c2f0: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +0019c300: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +0019c310: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +0019c320: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +0019c330: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +0019c340: 5f68 6f6d 655f 6e6f 7375 6964 0a20 202d  _home_nosuid.  -
│ │ │ +0019c350: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +0019c360: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ +0019c370: 6e6f 7375 6964 204f 7074 696f 6e20 746f  nosuid Option to
│ │ │ +0019c380: 202f 686f 6d65 3a20 4372 6561 7465 206d   /home: Create m
│ │ │ +0019c390: 6f75 6e74 5f69 6e66 6f20 6469 6374 696f  ount_info dictio
│ │ │ +0019c3a0: 6e61 7279 2076 6172 6961 626c 6527 0a20  nary variable'. 
│ │ │ +0019c3b0: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ +0019c3c0: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ +0019c3d0: 6f75 6e74 5f69 6e66 6f7c 6465 6661 756c  ount_info|defaul
│ │ │ +0019c3e0: 7428 7b7d 297c 636f 6d62 696e 6528 7b69  t({})|combine({i
│ │ │ +0019c3f0: 7465 6d2e 303a 2069 7465 6d2e 317d 2920  tem.0: item.1}) 
│ │ │ +0019c400: 7d7d 270a 2020 7769 7468 5f74 6f67 6574  }}'.  with_toget
│ │ │ +0019c410: 6865 723a 0a20 202d 2027 7b7b 2064 6576  her:.  - '{{ dev
│ │ │ +0019c420: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ +0019c430: 6c69 6e65 735b 305d 2e73 706c 6974 2829  lines[0].split()
│ │ │ +0019c440: 207c 206d 6170 2827 276c 6f77 6572 2727   | map(''lower''
│ │ │ +0019c450: 2920 7c20 6c69 7374 207d 7d27 0a20 202d  ) | list }}'.  -
│ │ │ +0019c460: 2027 7b7b 2064 6576 6963 655f 6e61 6d65   '{{ device_name
│ │ │ +0019c470: 2e73 7464 6f75 745f 6c69 6e65 735b 315d  .stdout_lines[1]
│ │ │ +0019c480: 2e73 706c 6974 2829 207c 206c 6973 7420  .split() | list 
│ │ │ +0019c490: 7d7d 270a 2020 7768 656e 3a0a 2020 2d20  }}'.  when:.  - 
│ │ │ +0019c4a0: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ +0019c4b0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +0019c4c0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +0019c4d0: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ +0019c4e0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +0019c4f0: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ +0019c500: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +0019c510: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +0019c520: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ +0019c530: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ +0019c540: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +0019c550: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ +0019c560: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +0019c570: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ +0019c580: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ +0019c590: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ +0019c5a0: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ +0019c5b0: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +0019c5c0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +0019c5d0: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ +0019c5e0: 2029 2029 0a20 202d 2027 222f 686f 6d65   ) ).  - '"/home
│ │ │ +0019c5f0: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ +0019c600: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ +0019c610: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ +0019c620: 6973 7427 0a20 202d 2064 6576 6963 655f  ist'.  - device_
│ │ │ +0019c630: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ +0019c640: 6566 696e 6564 2061 6e64 2064 6576 6963  efined and devic
│ │ │ +0019c650: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ +0019c660: 6e65 7320 6973 2064 6566 696e 6564 0a20  nes is defined. 
│ │ │ +0019c670: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ +0019c680: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ +0019c690: 2667 743b 2030 290a 2020 7461 6773 3a0a  > 0).  tags:.
│ │ │ +0019c6a0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +0019c6b0: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ +0019c6c0: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ +0019c6d0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +0019c6e0: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ +0019c6f0: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ +0019c700: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +0019c710: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ +0019c720: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ +0019c730: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +0019c740: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +0019c750: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +0019c760: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +0019c770: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +0019c780: 6d6f 756e 745f 6f70 7469 6f6e 5f68 6f6d  mount_option_hom
│ │ │ +0019c790: 655f 6e6f 7375 6964 0a20 202d 206e 6f5f  e_nosuid.  - no_
│ │ │ +0019c7a0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +0019c7b0: 206e 616d 653a 2027 4164 6420 6e6f 7375   name: 'Add nosu
│ │ │ +0019c7c0: 6964 204f 7074 696f 6e20 746f 202f 686f  id Option to /ho
│ │ │ +0019c7d0: 6d65 3a20 4966 202f 686f 6d65 206e 6f74  me: If /home not
│ │ │ +0019c7e0: 206d 6f75 6e74 6564 2c20 6372 6166 7420   mounted, craft 
│ │ │ +0019c7f0: 6d6f 756e 745f 696e 666f 206d 616e 7561  mount_info manua
│ │ │ +0019c800: 6c6c 7927 0a20 2073 6574 5f66 6163 743a  lly'.  set_fact:
│ │ │ +0019c810: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ +0019c820: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c   '{{ mount_info|
│ │ │ +0019c830: 6465 6661 756c 7428 7b7d 297c 636f 6d62  default({})|comb
│ │ │ +0019c840: 696e 6528 7b69 7465 6d2e 303a 2069 7465  ine({item.0: ite
│ │ │ +0019c850: 6d2e 317d 2920 7d7d 270a 2020 7769 7468  m.1}) }}'.  with
│ │ │ +0019c860: 5f74 6f67 6574 6865 723a 0a20 202d 202d  _together:.  - -
│ │ │ +0019c870: 2074 6172 6765 740a 2020 2020 2d20 736f   target.    - so
│ │ │ +0019c880: 7572 6365 0a20 2020 202d 2066 7374 7970  urce.    - fstyp
│ │ │ +0019c890: 650a 2020 2020 2d20 6f70 7469 6f6e 730a  e.    - options.
│ │ │ +0019c8a0: 2020 2d20 2d20 2f68 6f6d 650a 2020 2020    - - /home.    
│ │ │ +0019c8b0: 2d20 2727 0a20 2020 202d 2027 270a 2020  - ''.    - ''.  
│ │ │ +0019c8c0: 2020 2d20 6465 6661 756c 7473 0a20 2077    - defaults.  w
│ │ │ +0019c8d0: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +0019c8e0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +0019c8f0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +0019c900: 6765 7320 616e 6420 2272 706d 2d6f 7374  ges and "rpm-ost
│ │ │ +0019c910: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +0019c920: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +0019c930: 2020 2061 6e64 2022 626f 6f74 6322 2069     and "bootc" i
│ │ │ +0019c940: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +0019c950: 7061 636b 6167 6573 2061 6e64 206e 6f74  packages and not
│ │ │ +0019c960: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ +0019c970: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ +0019c980: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +0019c990: 2020 2061 6e64 2022 6f73 7472 6565 2220     and "ostree" 
│ │ │ +0019c9a0: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ +0019c9b0: 636d 646c 696e 6520 2920 616e 6420 6e6f  cmdline ) and no
│ │ │ +0019c9c0: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ +0019c9d0: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ +0019c9e0: 696e 0a20 2020 205b 2264 6f63 6b65 7222  in.    ["docker"
│ │ │ +0019c9f0: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ +0019ca00: 222c 2022 706f 646d 616e 222c 2022 636f  ", "podman", "co
│ │ │ +0019ca10: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ +0019ca20: 2d20 2722 2f68 6f6d 6522 2069 6e20 616e  - '"/home" in an
│ │ │ +0019ca30: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ +0019ca40: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ +0019ca50: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ +0019ca60: 2d20 2822 2d2d 6673 7461 6222 207c 206c  - ("--fstab" | l
│ │ │ +0019ca70: 656e 6774 6820 3d3d 2030 290a 2020 2d20  ength == 0).  - 
│ │ │ +0019ca80: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +0019ca90: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ +0019caa0: 6420 6465 7669 6365 5f6e 616d 652e 7374  d device_name.st
│ │ │ +0019cab0: 646f 7574 5f6c 696e 6573 2069 7320 6465  dout_lines is de
│ │ │ +0019cac0: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ +0019cad0: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ +0019cae0: 6c65 6e67 7468 203d 3d20 3029 0a20 2074  length == 0).  t
│ │ │ +0019caf0: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +0019cb00: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ +0019cb10: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ +0019cb20: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +0019cb30: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +0019cb40: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ +0019cb50: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +0019cb60: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ +0019cb70: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ +0019cb80: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ +0019cb90: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ +0019cba0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +0019cbb0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +0019cbc0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +0019cbd0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ +0019cbe0: 6e5f 686f 6d65 5f6e 6f73 7569 640a 2020  n_home_nosuid.  
│ │ │ +0019cbf0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +0019cc00: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ +0019cc10: 206e 6f73 7569 6420 4f70 7469 6f6e 2074   nosuid Option t
│ │ │ +0019cc20: 6f20 2f68 6f6d 653a 204d 616b 6520 7375  o /home: Make su
│ │ │ +0019cc30: 7265 206e 6f73 7569 6420 6f70 7469 6f6e  re nosuid option
│ │ │ +0019cc40: 2069 7320 7061 7274 206f 6620 7468 6520   is part of the 
│ │ │ +0019cc50: 746f 202f 686f 6d65 0a20 2020 206f 7074  to /home.    opt
│ │ │ +0019cc60: 696f 6e73 270a 2020 7365 745f 6661 6374  ions'.  set_fact
│ │ │ +0019cc70: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ +0019cc80: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +0019cc90: 207c 2063 6f6d 6269 6e65 2820 7b27 276f   | combine( {''o
│ │ │ +0019cca0: 7074 696f 6e73 2727 3a27 2727 277e 286d  ptions'':''''~(m
│ │ │ +0019ccb0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ +0019ccc0: 7320 7c0a 2020 2020 2020 6465 6661 756c  s |.      defaul
│ │ │ +0019ccd0: 7428 2727 2727 2929 7e28 2727 2c27 2720  t(''''))~('','' 
│ │ │ +0019cce0: 6966 2028 6d6f 756e 745f 696e 666f 2e6f  if (mount_info.o
│ │ │ +0019ccf0: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ +0019cd00: 2827 2727 2729 2920 656c 7365 2027 2727  ('''')) else '''
│ │ │ +0019cd10: 2729 7e27 276e 6f73 7569 6427 270a 2020  ')~''nosuid''.  
│ │ │ +0019cd20: 2020 2020 7d29 207d 7d27 0a20 2077 6865      }) }}'.  whe
│ │ │ +0019cd30: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +0019cd40: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +0019cd50: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +0019cd60: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ +0019cd70: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ +0019cd80: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +0019cd90: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ +0019cda0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +0019cdb0: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ +0019cdc0: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +0019cdd0: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ +0019cde0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +0019cdf0: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ +0019ce00: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ +0019ce10: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ +0019ce20: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ +0019ce30: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ +0019ce40: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ +0019ce50: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ +0019ce60: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ +0019ce70: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ +0019ce80: 2722 2f68 6f6d 6522 2069 6e20 616e 7369  '"/home" in ansi
│ │ │ +0019ce90: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ +0019cea0: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ +0019ceb0: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ +0019cec0: 6d6f 756e 745f 696e 666f 2069 7320 6465  mount_info is de
│ │ │ +0019ced0: 6669 6e65 6420 616e 6420 226e 6f73 7569  fined and "nosui
│ │ │ +0019cee0: 6422 206e 6f74 2069 6e20 286d 6f75 6e74  d" not in (mount
│ │ │ +0019cef0: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ +0019cf00: 6465 6661 756c 7428 2727 2929 0a20 2074  default('')).  t
│ │ │ +0019cf10: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +0019cf20: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ +0019cf30: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ +0019cf40: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +0019cf50: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +0019cf60: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ +0019cf70: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +0019cf80: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ +0019cf90: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ +0019cfa0: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ +0019cfb0: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ +0019cfc0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +0019cfd0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +0019cfe0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +0019cff0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ +0019d000: 6e5f 686f 6d65 5f6e 6f73 7569 640a 2020  n_home_nosuid.  
│ │ │ +0019d010: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +0019d020: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ +0019d030: 206e 6f73 7569 6420 4f70 7469 6f6e 2074   nosuid Option t
│ │ │ +0019d040: 6f20 2f68 6f6d 653a 2045 6e73 7572 6520  o /home: Ensure 
│ │ │ +0019d050: 2f68 6f6d 6520 6973 206d 6f75 6e74 6564  /home is mounted
│ │ │ +0019d060: 2077 6974 6820 6e6f 7375 6964 206f 7074   with nosuid opt
│ │ │ +0019d070: 696f 6e27 0a20 2061 6e73 6962 6c65 2e70  ion'.  ansible.p
│ │ │ +0019d080: 6f73 6978 2e6d 6f75 6e74 3a0a 2020 2020  osix.mount:.    
│ │ │ +0019d090: 7061 7468 3a20 2f68 6f6d 650a 2020 2020  path: /home.    
│ │ │ +0019d0a0: 7372 633a 2027 7b7b 206d 6f75 6e74 5f69  src: '{{ mount_i
│ │ │ +0019d0b0: 6e66 6f2e 736f 7572 6365 207c 2064 6566  nfo.source | def
│ │ │ +0019d0c0: 6175 6c74 2827 2727 2729 207d 7d27 0a20  ault('''') }}'. 
│ │ │ +0019d0d0: 2020 206f 7074 733a 2027 7b7b 206d 6f75     opts: '{{ mou
│ │ │ +0019d0e0: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ +0019d0f0: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ +0019d100: 7d7d 270a 2020 2020 7374 6174 653a 206d  }}'.    state: m
│ │ │ +0019d110: 6f75 6e74 6564 0a20 2020 2066 7374 7970  ounted.    fstyp
│ │ │ +0019d120: 653a 2027 7b7b 206d 6f75 6e74 5f69 6e66  e: '{{ mount_inf
│ │ │ +0019d130: 6f2e 6673 7479 7065 207c 2064 6566 6175  o.fstype | defau
│ │ │ +0019d140: 6c74 2827 2727 2729 207d 7d27 0a20 2072  lt('''') }}'.  r
│ │ │ +0019d150: 6567 6973 7465 723a 206d 6f75 6e74 5f72  egister: mount_r
│ │ │ +0019d160: 6573 756c 740a 2020 6661 696c 6564 5f77  esult.  failed_w
│ │ │ +0019d170: 6865 6e3a 0a20 202d 206d 6f75 6e74 5f72  hen:.  - mount_r
│ │ │ +0019d180: 6573 756c 7420 6973 2066 6169 6c65 640a  esult is failed.
│ │ │ +0019d190: 2020 2d20 2727 2774 6172 6765 7420 6973    - '''target is
│ │ │ +0019d1a0: 2062 7573 7927 2720 6e6f 7420 696e 2028   busy'' not in (
│ │ │ +0019d1b0: 6d6f 756e 745f 7265 7375 6c74 2e6d 7367  mount_result.msg
│ │ │ +0019d1c0: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ +0019d1d0: 2927 0a20 202d 2027 2727 616c 7265 6164  )'.  - '''alread
│ │ │ +0019d1e0: 7920 6d6f 756e 7465 6427 2720 6e6f 7420  y mounted'' not 
│ │ │ +0019d1f0: 696e 2028 6d6f 756e 745f 7265 7375 6c74  in (mount_result
│ │ │ +0019d200: 2e6d 7367 207c 2064 6566 6175 6c74 2827  .msg | default('
│ │ │ +0019d210: 2727 2729 2927 0a20 2077 6865 6e3a 0a20  '''))'.  when:. 
│ │ │ +0019d220: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ +0019d230: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +0019d240: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +0019d250: 6420 2272 706d 2d6f 7374 7265 6522 2069  d "rpm-ostree" i
│ │ │ +0019d260: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +0019d270: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +0019d280: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ +0019d290: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +0019d2a0: 6573 2061 6e64 206e 6f74 2022 6f70 656e  es and not "open
│ │ │ +0019d2b0: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ +0019d2c0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +0019d2d0: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +0019d2e0: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ +0019d2f0: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ +0019d300: 6520 2920 616e 6420 6e6f 7420 2820 616e  e ) and not ( an
│ │ │ +0019d310: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ +0019d320: 7469 6f6e 5f74 7970 6520 696e 0a20 2020  tion_type in.   
│ │ │ +0019d330: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ +0019d340: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ +0019d350: 646d 616e 222c 2022 636f 6e74 6169 6e65  dman", "containe
│ │ │ +0019d360: 7222 5d20 2920 290a 2020 2d20 2722 2f68  r"] ) ).  - '"/h
│ │ │ +0019d370: 6f6d 6522 2069 6e20 616e 7369 626c 655f  ome" in ansible_
│ │ │ +0019d380: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ +0019d390: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ +0019d3a0: 7c20 6c69 7374 270a 2020 2d20 6d6f 756e  | list'.  - moun
│ │ │ +0019d3b0: 745f 696e 666f 2069 7320 6465 6669 6e65  t_info is define
│ │ │ +0019d3c0: 640a 2020 2d20 2864 6576 6963 655f 6e61  d.  - (device_na
│ │ │ +0019d3d0: 6d65 2e73 7464 6f75 7420 6973 2064 6566  me.stdout is def
│ │ │ +0019d3e0: 696e 6564 2061 6e64 2028 6465 7669 6365  ined and (device
│ │ │ +0019d3f0: 5f6e 616d 652e 7374 646f 7574 207c 206c  _name.stdout | l
│ │ │ +0019d400: 656e 6774 6820 2667 743b 2030 2929 206f  ength > 0)) o
│ │ │ +0019d410: 7220 2822 2d2d 6673 7461 6222 0a20 2020  r ("--fstab".   
│ │ │ +0019d420: 207c 206c 656e 6774 6820 3d3d 2030 290a   | length == 0).
│ │ │ +0019d430: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +0019d440: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ +0019d450: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +0019d460: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ +0019d470: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +0019d480: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +0019d490: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ +0019d4a0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ +0019d4b0: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ +0019d4c0: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ +0019d4d0: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ +0019d4e0: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ +0019d4f0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +0019d500: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +0019d510: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ +0019d520: 7469 6f6e 5f68 6f6d 655f 6e6f 7375 6964  tion_home_nosuid
│ │ │ +0019d530: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +0019d540: 6565 6465 640a 3c2f 636f 6465 3e3c 2f70  eeded.

Remediatio │ │ │ +0019d600: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ +0019d610: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +0019d690: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +0019d6a0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
Reboot:false
│ │ │ +0019d6c0: 3c63 6f64 653e 2320 5265 6d65 6469 6174  # Remediat
│ │ │ +0019d6d0: 696f 6e20 6973 2061 7070 6c69 6361 626c  ion is applicabl
│ │ │ +0019d6e0: 6520 6f6e 6c79 2069 6e20 6365 7274 6169  e only in certai
│ │ │ +0019d6f0: 6e20 706c 6174 666f 726d 730a 6966 2028  n platforms.if (
│ │ │ +0019d700: 2021 2028 207b 2072 706d 202d 2d71 7569   ! ( { rpm --qui
│ │ │ +0019d710: 6574 202d 7120 6b65 726e 656c 203b 7d20  et -q kernel ;} 
│ │ │ +0019d720: 2661 6d70 3b26 616d 703b 207b 2072 706d  && { rpm
│ │ │ +0019d730: 202d 2d71 7569 6574 202d 7120 7270 6d2d   --quiet -q rpm-
│ │ │ +0019d740: 6f73 7472 6565 203b 7d20 2661 6d70 3b26  ostree ;} &&
│ │ │ +0019d750: 616d 703b 207b 2072 706d 202d 2d71 7569  amp; { rpm --qui
│ │ │ +0019d760: 6574 202d 7120 626f 6f74 6320 3b7d 2026  et -q bootc ;} &
│ │ │ +0019d770: 616d 703b 2661 6d70 3b20 7b20 2120 7270  amp;& { ! rp
│ │ │ +0019d780: 6d20 2d2d 7175 6965 7420 2d71 206f 7065  m --quiet -q ope
│ │ │ +0019d790: 6e73 6869 6674 2d6b 7562 656c 6574 203b  nshift-kubelet ;
│ │ │ +0019d7a0: 7d20 2661 6d70 3b26 616d 703b 2028 5b20  } && ([ 
│ │ │ +0019d7b0: 2d66 202f 7275 6e2f 6f73 7472 6565 2d62  -f /run/ostree-b
│ │ │ +0019d7c0: 6f6f 7465 6420 5d20 7c7c 205b 202d 4c20  ooted ] || [ -L 
│ │ │ +0019d7d0: 2f6f 7374 7265 6520 5d29 2029 2026 616d  /ostree ]) ) &am
│ │ │ +0019d7e0: 703b 2661 6d70 3b20 2120 2820 5b20 2d66  p;& ! ( [ -f
│ │ │ +0019d7f0: 202f 2e64 6f63 6b65 7265 6e76 205d 207c   /.dockerenv ] |
│ │ │ +0019d800: 7c20 5b20 2d66 202f 7275 6e2f 2e63 6f6e  | [ -f /run/.con
│ │ │ +0019d810: 7461 696e 6572 656e 7620 5d20 2920 2920  tainerenv ] ) ) 
│ │ │ +0019d820: 2661 6d70 3b26 616d 703b 207b 2028 2066  && { ( f
│ │ │ +0019d830: 696e 646d 6e74 202d 2d6b 6572 6e65 6c20  indmnt --kernel 
│ │ │ +0019d840: 222f 686f 6d65 2220 2667 743b 202f 6465  "/home" > /de
│ │ │ +0019d850: 762f 6e75 6c6c 207c 7c20 6669 6e64 6d6e  v/null || findmn
│ │ │ +0019d860: 7420 2d2d 6673 7461 6220 222f 686f 6d65  t --fstab "/home
│ │ │ +0019d870: 2220 2667 743b 202f 6465 762f 6e75 6c6c  " > /dev/null
│ │ │ +0019d880: 2029 3b20 7d3b 2074 6865 6e0a 0a66 756e   ); }; then..fun
│ │ │ +0019d890: 6374 696f 6e20 7065 7266 6f72 6d5f 7265  ction perform_re
│ │ │ +0019d8a0: 6d65 6469 6174 696f 6e20 7b0a 0a20 2020  mediation {..   
│ │ │ +0019d8b0: 200a 2020 2020 2020 2020 2320 7468 6520   .        # the 
│ │ │ +0019d8c0: 6d6f 756e 7420 706f 696e 7420 2f68 6f6d  mount point /hom
│ │ │ +0019d8d0: 6520 6861 7320 746f 2062 6520 6465 6669  e has to be defi
│ │ │ +0019d8e0: 6e65 6420 696e 202f 6574 632f 6673 7461  ned in /etc/fsta
│ │ │ +0019d8f0: 620a 2020 2020 2020 2020 2320 6265 666f  b.        # befo
│ │ │ +0019d900: 7265 2074 6869 7320 7265 6d65 6469 6174  re this remediat
│ │ │ +0019d910: 696f 6e20 6361 6e20 6265 2065 7865 6375  ion can be execu
│ │ │ +0019d920: 7465 642e 2049 6e20 6361 7365 2069 7420  ted. In case it 
│ │ │ +0019d930: 6973 206e 6f74 2064 6566 696e 6564 2c20  is not defined, 
│ │ │ +0019d940: 7468 650a 2020 2020 2020 2020 2320 7265  the.        # re
│ │ │ +0019d950: 6d65 6469 6174 696f 6e20 6162 6f72 7473  mediation aborts
│ │ │ +0019d960: 2061 6e64 206e 6f20 6368 616e 6765 7320   and no changes 
│ │ │ +0019d970: 7265 6761 7264 696e 6720 7468 6520 6d6f  regarding the mo
│ │ │ +0019d980: 756e 7420 706f 696e 7420 6172 6520 646f  unt point are do
│ │ │ +0019d990: 6e65 2e0a 2020 2020 2020 2020 6d6f 756e  ne..        moun
│ │ │ +0019d9a0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +0019d9b0: 6765 7870 3d22 2428 7072 696e 7466 2022  gexp="$(printf "
│ │ │ +0019d9c0: 5e5b 5b3a 7370 6163 653a 5d5d 2a5b 5e23  ^[[:space:]]*[^#
│ │ │ +0019d9d0: 5d2e 2a5b 5b3a 7370 6163 653a 5d5d 2573  ].*[[:space:]]%s
│ │ │ +0019d9e0: 5b5b 3a73 7061 6365 3a5d 5d22 2022 2f68  [[:space:]]" "/h
│ │ │ +0019d9f0: 6f6d 6522 2922 0a0a 2020 2020 6772 6570  ome")"..    grep
│ │ │ +0019da00: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ +0019da10: 6174 6368 5f72 6567 6578 7022 202d 7120  atch_regexp" -q 
│ │ │ +0019da20: 2f65 7463 2f66 7374 6162 205c 0a20 2020  /etc/fstab \.   
│ │ │ +0019da30: 2020 2020 207c 7c20 7b20 6563 686f 2022       || { echo "
│ │ │ +0019da40: 5468 6520 6d6f 756e 7420 706f 696e 7420  The mount point 
│ │ │ +0019da50: 272f 686f 6d65 2720 6973 206e 6f74 2065  '/home' is not e
│ │ │ +0019da60: 7665 6e20 696e 202f 6574 632f 6673 7461  ven in /etc/fsta
│ │ │ +0019da70: 622c 2073 6f20 7765 2063 616e 2774 2073  b, so we can't s
│ │ │ +0019da80: 6574 2075 7020 6d6f 756e 7420 6f70 7469  et up mount opti
│ │ │ +0019da90: 6f6e 7322 2026 6774 3b26 616d 703b 323b  ons" >&2;
│ │ │ +0019daa0: 0a20 2020 2020 2020 2020 2020 2020 2020  .               
│ │ │ +0019dab0: 2065 6368 6f20 224e 6f74 2072 656d 6564   echo "Not remed
│ │ │ +0019dac0: 6961 7469 6e67 2c20 6265 6361 7573 6520  iating, because 
│ │ │ +0019dad0: 7468 6572 6520 6973 206e 6f20 7265 636f  there is no reco
│ │ │ +0019dae0: 7264 206f 6620 2f68 6f6d 6520 696e 202f  rd of /home in /
│ │ │ +0019daf0: 6574 632f 6673 7461 6222 2026 6774 3b26  etc/fstab" >&
│ │ │ +0019db00: 616d 703b 323b 2072 6574 7572 6e20 313b  amp;2; return 1;
│ │ │ +0019db10: 207d 0a20 2020 200a 0a0a 2020 2020 6d6f   }.    ...    mo
│ │ │ +0019db20: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +0019db30: 7265 6765 7870 3d22 2428 7072 696e 7466  regexp="$(printf
│ │ │ +0019db40: 2022 5e5b 5b3a 7370 6163 653a 5d5d 2a5b   "^[[:space:]]*[
│ │ │ +0019db50: 5e23 5d2e 2a5b 5b3a 7370 6163 653a 5d5d  ^#].*[[:space:]]
│ │ │ +0019db60: 2573 5b5b 3a73 7061 6365 3a5d 5d22 202f  %s[[:space:]]" /
│ │ │ +0019db70: 686f 6d65 2922 0a0a 2020 2020 2320 4966  home)"..    # If
│ │ │ +0019db80: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ +0019db90: 2069 7320 6e6f 7420 696e 202f 6574 632f   is not in /etc/
│ │ │ +0019dba0: 6673 7461 622c 2067 6574 2070 7265 7669  fstab, get previ
│ │ │ +0019dbb0: 6f75 7320 6d6f 756e 7420 6f70 7469 6f6e  ous mount option
│ │ │ +0019dbc0: 7320 6672 6f6d 202f 6574 632f 6d74 6162  s from /etc/mtab
│ │ │ +0019dbd0: 0a20 2020 2069 6620 2120 6772 6570 202d  .    if ! grep -
│ │ │ +0019dbe0: 7120 2224 6d6f 756e 745f 706f 696e 745f  q "$mount_point_
│ │ │ +0019dbf0: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ +0019dc00: 7463 2f66 7374 6162 3b20 7468 656e 0a20  tc/fstab; then. 
│ │ │ +0019dc10: 2020 2020 2020 2023 2072 756e 7469 6d65         # runtime
│ │ │ +0019dc20: 206f 7074 7320 7769 7468 6f75 7420 736f   opts without so
│ │ │ +0019dc30: 6d65 2061 7574 6f6d 6174 6963 206b 6572  me automatic ker
│ │ │ +0019dc40: 6e65 6c2f 7573 6572 7370 6163 652d 6164  nel/userspace-ad
│ │ │ +0019dc50: 6465 6420 6465 6661 756c 7473 0a20 2020  ded defaults.   
│ │ │ +0019dc60: 2020 2020 2070 7265 7669 6f75 735f 6d6f       previous_mo
│ │ │ +0019dc70: 756e 745f 6f70 7473 3d24 2867 7265 7020  unt_opts=$(grep 
│ │ │ +0019dc80: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ +0019dc90: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ +0019dca0: 2f6d 7461 6220 7c20 6865 6164 202d 3120  /mtab | head -1 
│ │ │ +0019dcb0: 7c20 2061 776b 2027 7b70 7269 6e74 2024  |  awk '{print $
│ │ │ +0019dcc0: 347d 2720 5c0a 2020 2020 2020 2020 2020  4}' \.          
│ │ │ +0019dcd0: 2020 2020 2020 2020 2020 7c20 7365 6420            | sed 
│ │ │ +0019dce0: 2d45 2022 732f 2872 777c 6465 6661 756c  -E "s/(rw|defaul
│ │ │ +0019dcf0: 7473 7c73 6563 6c61 6265 6c7c 6e6f 7375  ts|seclabel|nosu
│ │ │ +0019dd00: 6964 2928 2c7c 2429 2f2f 673b 732f 2c24  id)(,|$)//g;s/,$
│ │ │ +0019dd10: 2f2f 2229 0a20 2020 2020 2020 205b 2022  //").        [ "
│ │ │ +0019dd20: 2470 7265 7669 6f75 735f 6d6f 756e 745f  $previous_mount_
│ │ │ +0019dd30: 6f70 7473 2220 5d20 2661 6d70 3b26 616d  opts" ] &&am
│ │ │ +0019dd40: 703b 2070 7265 7669 6f75 735f 6d6f 756e  p; previous_moun
│ │ │ +0019dd50: 745f 6f70 7473 2b3d 222c 220a 2020 2020  t_opts+=",".    
│ │ │ +0019dd60: 2020 2020 2320 496e 2069 736f 3936 3630      # In iso9660
│ │ │ +0019dd70: 2066 696c 6573 7973 7465 6d73 206d 7461   filesystems mta
│ │ │ +0019dd80: 6220 636f 756c 6420 6465 7363 7269 6265  b could describe
│ │ │ +0019dd90: 2061 2022 626c 6f63 6b73 697a 6522 2076   a "blocksize" v
│ │ │ +0019dda0: 616c 7565 2c20 7468 6973 2073 686f 756c  alue, this shoul
│ │ │ +0019ddb0: 6420 6265 2072 6566 6c65 6374 6564 2069  d be reflected i
│ │ │ +0019ddc0: 6e0a 2020 2020 2020 2020 2320 6673 7461  n.        # fsta
│ │ │ +0019ddd0: 6220 6173 2022 626c 6f63 6b22 2e20 2054  b as "block".  T
│ │ │ +0019dde0: 6865 206e 6578 7420 7661 7269 6162 6c65  he next variable
│ │ │ +0019ddf0: 2069 7320 746f 2073 6174 6973 6679 2073   is to satisfy s
│ │ │ +0019de00: 6865 6c6c 6368 6563 6b20 5343 3230 3530  hellcheck SC2050
│ │ │ +0019de10: 2e0a 2020 2020 2020 2020 6673 5f74 7970  ..        fs_typ
│ │ │ +0019de20: 653d 2222 0a20 2020 2020 2020 2069 6620  e="".        if 
│ │ │ +0019de30: 5b20 2022 2466 735f 7479 7065 2220 3d3d  [  "$fs_type" ==
│ │ │ +0019de40: 2022 6973 6f39 3636 3022 205d 203b 2074   "iso9660" ] ; t
│ │ │ +0019de50: 6865 6e0a 2020 2020 2020 2020 2020 2020  hen.            
│ │ │ +0019de60: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +0019de70: 7074 733d 2428 7365 6420 2773 2f62 6c6f  pts=$(sed 's/blo
│ │ │ +0019de80: 636b 7369 7a65 3d2f 626c 6f63 6b3d 2f27  cksize=/block=/'
│ │ │ +0019de90: 2026 6c74 3b26 6c74 3b26 6c74 3b20 2224   <<< "$
│ │ │ +0019dea0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +0019deb0: 7074 7322 290a 2020 2020 2020 2020 6669  pts").        fi
│ │ │ +0019dec0: 0a20 2020 2020 2020 2065 6368 6f20 2220  .        echo " 
│ │ │ +0019ded0: 2f68 6f6d 6520 2064 6566 6175 6c74 732c  /home  defaults,
│ │ │ +0019dee0: 247b 7072 6576 696f 7573 5f6d 6f75 6e74  ${previous_mount
│ │ │ +0019def0: 5f6f 7074 737d 6e6f 7375 6964 2030 2030  _opts}nosuid 0 0
│ │ │ +0019df00: 2220 2667 743b 2667 743b 202f 6574 632f  " >> /etc/
│ │ │ +0019df10: 6673 7461 620a 2020 2020 2320 4966 2074  fstab.    # If t
│ │ │ +0019df20: 6865 206d 6f75 6e74 5f6f 7074 206f 7074  he mount_opt opt
│ │ │ +0019df30: 696f 6e20 6973 206e 6f74 2061 6c72 6561  ion is not alrea
│ │ │ +0019df40: 6479 2069 6e20 7468 6520 6d6f 756e 7420  dy in the mount 
│ │ │ +0019df50: 706f 696e 7427 7320 2f65 7463 2f66 7374  point's /etc/fst
│ │ │ +0019df60: 6162 2065 6e74 7279 2c20 6164 6420 6974  ab entry, add it
│ │ │ +0019df70: 0a20 2020 2065 6c69 6620 2120 6772 6570  .    elif ! grep
│ │ │ +0019df80: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ +0019df90: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ +0019dfa0: 632f 6673 7461 6220 7c20 6772 6570 202d  c/fstab | grep -
│ │ │ +0019dfb0: 7120 226e 6f73 7569 6422 3b20 7468 656e  q "nosuid"; then
│ │ │ +0019dfc0: 0a20 2020 2020 2020 2070 7265 7669 6f75  .        previou
│ │ │ +0019dfd0: 735f 6d6f 756e 745f 6f70 7473 3d24 2867  s_mount_opts=$(g
│ │ │ +0019dfe0: 7265 7020 2224 6d6f 756e 745f 706f 696e  rep "$mount_poin
│ │ │ +0019dff0: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ +0019e000: 2f65 7463 2f66 7374 6162 207c 2061 776b  /etc/fstab | awk
│ │ │ +0019e010: 2027 7b70 7269 6e74 2024 347d 2729 0a20   '{print $4}'). 
│ │ │ +0019e020: 2020 2020 2020 2073 6564 202d 6920 2273         sed -i "s
│ │ │ +0019e030: 7c5c 2824 7b6d 6f75 6e74 5f70 6f69 6e74  |\(${mount_point
│ │ │ +0019e040: 5f6d 6174 6368 5f72 6567 6578 707d 2e2a  _match_regexp}.*
│ │ │ +0019e050: 247b 7072 6576 696f 7573 5f6d 6f75 6e74  ${previous_mount
│ │ │ +0019e060: 5f6f 7074 737d 5c29 7c5c 312c 6e6f 7375  _opts}\)|\1,nosu
│ │ │ +0019e070: 6964 7c22 202f 6574 632f 6673 7461 620a  id|" /etc/fstab.
│ │ │ +0019e080: 2020 2020 6669 0a0a 0a20 2020 2069 6620      fi...    if 
│ │ │ +0019e090: 6d6b 6469 7220 2d70 2022 2f68 6f6d 6522  mkdir -p "/home"
│ │ │ +0019e0a0: 3b20 7468 656e 0a20 2020 2020 2020 2069  ; then.        i
│ │ │ +0019e0b0: 6620 6d6f 756e 7470 6f69 6e74 202d 7120  f mountpoint -q 
│ │ │ +0019e0c0: 222f 686f 6d65 223b 2074 6865 6e0a 2020  "/home"; then.  
│ │ │ +0019e0d0: 2020 2020 2020 2020 2020 6d6f 756e 7420            mount 
│ │ │ +0019e0e0: 2d6f 2072 656d 6f75 6e74 202d 2d74 6172  -o remount --tar
│ │ │ +0019e0f0: 6765 7420 222f 686f 6d65 220a 2020 2020  get "/home".    
│ │ │ +0019e100: 2020 2020 6669 0a20 2020 2066 690a 7d0a      fi.    fi.}.
│ │ │ +0019e110: 0a70 6572 666f 726d 5f72 656d 6564 6961  .perform_remedia
│ │ │ +0019e120: 7469 6f6e 0a0a 656c 7365 0a20 2020 2026  tion..else.    &
│ │ │ +0019e130: 6774 3b26 616d 703b 3220 6563 686f 2027  gt;&2 echo '
│ │ │ +0019e140: 5265 6d65 6469 6174 696f 6e20 6973 206e  Remediation is n
│ │ │ +0019e150: 6f74 2061 7070 6c69 6361 626c 652c 206e  ot applicable, n
│ │ │ +0019e160: 6f74 6869 6e67 2077 6173 2064 6f6e 6527  othing was done'
│ │ │ +0019e170: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.
Remediation │ │ │ +0019e230: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ +0019e240: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ +0019e2d0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +0019e2f0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +0019e300: 7464 3e68 6967 683c 2f74 643e 3c2f 7472 td>highReboot: │ │ │ +0019e320: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +0019e340: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ +0019e370: 636f 6465 3e0a 7061 7274 202f 686f 6d65  code>.part /home
│ │ │ +0019e380: 202d 2d6d 6f75 6e74 6f70 7469 6f6e 733d   --mountoptions=
│ │ │ +0019e390: 226e 6f73 7569 6422 0a3c 2f63 6f64 653e  "nosuid".
│ │ │  0019e3a0: 3c2f 7072 653e 3c2f 6469 763e 3c2f 6469  
Reme │ │ │ -0019f410: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ -0019f420: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -0019f430: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -0019f4d0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr> │ │ │ -0019f520: 3c74 723e 3c74 683e 5374 7261 7465 6779
.pa
│ │ │ -0019f560: 7274 202f 746d 7020 2d2d 6d6f 756e 746f  rt /tmp --mounto
│ │ │ -0019f570: 7074 696f 6e73 3d22 6e6f 6465 7622 0a3c  ptions="nodev".<
│ │ │ -0019f580: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -0019f630: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -0019f640: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
Co │ │ │ -0019f4b0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -0019f4e0: 6e3a 3c2f 7468 3e3c 7464 3e68 6967 683c n:high< │ │ │ -0019f4f0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -0019f530: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -0019f540: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ -0019f6e0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 < │ │ │ -0019f720: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0019f730: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false< │ │ │ -0019f770: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ -0019f790: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ -0019f7a0: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ -0019f7b0: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ -0019f7c0: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ -0019f7d0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -0019f7e0: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ -0019f7f0: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ -0019f800: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -0019f810: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -0019f820: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ -0019f830: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -0019f840: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ -0019f850: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ -0019f860: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -0019f870: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -0019f880: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -0019f890: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -0019f8a0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -0019f8b0: 756e 745f 6f70 7469 6f6e 5f74 6d70 5f6e  unt_option_tmp_n
│ │ │ -0019f8c0: 6f64 6576 0a20 202d 206e 6f5f 7265 626f  odev.  - no_rebo
│ │ │ -0019f8d0: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -0019f8e0: 653a 2027 4164 6420 6e6f 6465 7620 4f70  e: 'Add nodev Op
│ │ │ -0019f8f0: 7469 6f6e 2074 6f20 2f74 6d70 3a20 4368  tion to /tmp: Ch
│ │ │ -0019f900: 6563 6b20 696e 666f 726d 6174 696f 6e20  eck information 
│ │ │ -0019f910: 6173 736f 6369 6174 6564 2074 6f20 6d6f  associated to mo
│ │ │ -0019f920: 756e 7470 6f69 6e74 270a 2020 616e 7369  untpoint'.  ansi
│ │ │ -0019f930: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ -0019f940: 616e 643a 2066 696e 646d 6e74 202d 2d66  and: findmnt --f
│ │ │ -0019f950: 7374 6162 2027 2f74 6d70 270a 2020 7265  stab '/tmp'.  re
│ │ │ -0019f960: 6769 7374 6572 3a20 6465 7669 6365 5f6e  gister: device_n
│ │ │ -0019f970: 616d 650a 2020 6661 696c 6564 5f77 6865  ame.  failed_whe
│ │ │ -0019f980: 6e3a 2064 6576 6963 655f 6e61 6d65 2e72  n: device_name.r
│ │ │ -0019f990: 6320 2667 743b 2031 0a20 2063 6861 6e67  c > 1.  chang
│ │ │ -0019f9a0: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ -0019f9b0: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ -0019f9c0: 7365 0a20 2077 6865 6e3a 0a20 202d 2028  se.  when:.  - (
│ │ │ -0019f9d0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -0019f9e0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -0019f9f0: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ -0019fa00: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ -0019fa10: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -0019fa20: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ -0019fa30: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ -0019fa40: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -0019fa50: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -0019fa60: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -0019fa70: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -0019fa80: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ -0019fa90: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -0019faa0: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ -0019fab0: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -0019fac0: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -0019fad0: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ -0019fae0: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ -0019faf0: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ -0019fb00: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ -0019fb10: 2920 290a 2020 2d20 2722 2f74 6d70 2220  ) ).  - '"/tmp" 
│ │ │ -0019fb20: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ -0019fb30: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ -0019fb40: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ -0019fb50: 7427 0a20 2074 6167 733a 0a20 202d 204e  t'.  tags:.  - N
│ │ │ -0019fb60: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ -0019fb70: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -0019fb80: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ -0019fb90: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -0019fba0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -0019fbb0: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ -0019fbc0: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ -0019fbd0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -0019fbe0: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ -0019fbf0: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ -0019fc00: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ -0019fc10: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -0019fc20: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ -0019fc30: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ -0019fc40: 5f6f 7074 696f 6e5f 746d 705f 6e6f 6465  _option_tmp_node
│ │ │ -0019fc50: 760a 2020 2d20 6e6f 5f72 6562 6f6f 745f  v.  - no_reboot_
│ │ │ -0019fc60: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ -0019fc70: 2741 6464 206e 6f64 6576 204f 7074 696f  'Add nodev Optio
│ │ │ -0019fc80: 6e20 746f 202f 746d 703a 2043 7265 6174  n to /tmp: Creat
│ │ │ -0019fc90: 6520 6d6f 756e 745f 696e 666f 2064 6963  e mount_info dic
│ │ │ -0019fca0: 7469 6f6e 6172 7920 7661 7269 6162 6c65  tionary variable
│ │ │ -0019fcb0: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ -0019fcc0: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ -0019fcd0: 7b20 6d6f 756e 745f 696e 666f 7c64 6566  { mount_info|def
│ │ │ -0019fce0: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65  ault({})|combine
│ │ │ -0019fcf0: 287b 6974 656d 2e30 3a20 6974 656d 2e31  ({item.0: item.1
│ │ │ -0019fd00: 7d29 207d 7d27 0a20 2077 6974 685f 746f  }) }}'.  with_to
│ │ │ -0019fd10: 6765 7468 6572 3a0a 2020 2d20 277b 7b20  gether:.  - '{{ 
│ │ │ -0019fd20: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -0019fd30: 7574 5f6c 696e 6573 5b30 5d2e 7370 6c69  ut_lines[0].spli
│ │ │ -0019fd40: 7428 2920 7c20 6d61 7028 2727 6c6f 7765  t() | map(''lowe
│ │ │ -0019fd50: 7227 2729 207c 206c 6973 7420 7d7d 270a  r'') | list }}'.
│ │ │ -0019fd60: 2020 2d20 277b 7b20 6465 7669 6365 5f6e    - '{{ device_n
│ │ │ -0019fd70: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ -0019fd80: 5b31 5d2e 7370 6c69 7428 2920 7c20 6c69  [1].split() | li
│ │ │ -0019fd90: 7374 207d 7d27 0a20 2077 6865 6e3a 0a20  st }}'.  when:. 
│ │ │ -0019fda0: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ -0019fdb0: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -0019fdc0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -0019fdd0: 6420 2272 706d 2d6f 7374 7265 6522 2069  d "rpm-ostree" i
│ │ │ -0019fde0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -0019fdf0: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -0019fe00: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ -0019fe10: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -0019fe20: 6573 2061 6e64 206e 6f74 2022 6f70 656e  es and not "open
│ │ │ -0019fe30: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ -0019fe40: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -0019fe50: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -0019fe60: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ -0019fe70: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ -0019fe80: 6520 2920 616e 6420 6e6f 7420 2820 616e  e ) and not ( an
│ │ │ -0019fe90: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ -0019fea0: 7469 6f6e 5f74 7970 6520 696e 0a20 2020  tion_type in.   
│ │ │ -0019feb0: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ -0019fec0: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ -0019fed0: 646d 616e 222c 2022 636f 6e74 6169 6e65  dman", "containe
│ │ │ -0019fee0: 7222 5d20 2920 290a 2020 2d20 2722 2f74  r"] ) ).  - '"/t
│ │ │ -0019fef0: 6d70 2220 696e 2061 6e73 6962 6c65 5f6d  mp" in ansible_m
│ │ │ -0019ff00: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ -0019ff10: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ -0019ff20: 206c 6973 7427 0a20 202d 2064 6576 6963   list'.  - devic
│ │ │ -0019ff30: 655f 6e61 6d65 2e73 7464 6f75 7420 6973  e_name.stdout is
│ │ │ -0019ff40: 2064 6566 696e 6564 2061 6e64 2064 6576   defined and dev
│ │ │ -0019ff50: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ -0019ff60: 6c69 6e65 7320 6973 2064 6566 696e 6564  lines is defined
│ │ │ -0019ff70: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ -0019ff80: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ -0019ff90: 6820 2667 743b 2030 290a 2020 7461 6773  h > 0).  tags
│ │ │ -0019ffa0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -0019ffb0: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ -0019ffc0: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ -0019ffd0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -0019ffe0: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ -0019fff0: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ -001a0000: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001a0010: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ -001a0020: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ -001a0030: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ -001a0040: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ -001a0050: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ -001a0060: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ -001a0070: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -001a0080: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f74  - mount_option_t
│ │ │ -001a0090: 6d70 5f6e 6f64 6576 0a20 202d 206e 6f5f  mp_nodev.  - no_
│ │ │ -001a00a0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001a00b0: 206e 616d 653a 2027 4164 6420 6e6f 6465   name: 'Add node
│ │ │ -001a00c0: 7620 4f70 7469 6f6e 2074 6f20 2f74 6d70  v Option to /tmp
│ │ │ -001a00d0: 3a20 4966 202f 746d 7020 6e6f 7420 6d6f  : If /tmp not mo
│ │ │ -001a00e0: 756e 7465 642c 2063 7261 6674 206d 6f75  unted, craft mou
│ │ │ -001a00f0: 6e74 5f69 6e66 6f20 6d61 6e75 616c 6c79  nt_info manually
│ │ │ -001a0100: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ -001a0110: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ -001a0120: 7b20 6d6f 756e 745f 696e 666f 7c64 6566  { mount_info|def
│ │ │ -001a0130: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65  ault({})|combine
│ │ │ -001a0140: 287b 6974 656d 2e30 3a20 6974 656d 2e31  ({item.0: item.1
│ │ │ -001a0150: 7d29 207d 7d27 0a20 2077 6974 685f 746f  }) }}'.  with_to
│ │ │ -001a0160: 6765 7468 6572 3a0a 2020 2d20 2d20 7461  gether:.  - - ta
│ │ │ -001a0170: 7267 6574 0a20 2020 202d 2073 6f75 7263  rget.    - sourc
│ │ │ -001a0180: 650a 2020 2020 2d20 6673 7479 7065 0a20  e.    - fstype. 
│ │ │ -001a0190: 2020 202d 206f 7074 696f 6e73 0a20 202d     - options.  -
│ │ │ -001a01a0: 202d 202f 746d 700a 2020 2020 2d20 2727   - /tmp.    - ''
│ │ │ -001a01b0: 0a20 2020 202d 2027 270a 2020 2020 2d20  .    - ''.    - 
│ │ │ -001a01c0: 6465 6661 756c 7473 0a20 2077 6865 6e3a  defaults.  when:
│ │ │ -001a01d0: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ -001a01e0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -001a01f0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001a0200: 616e 6420 2272 706d 2d6f 7374 7265 6522  and "rpm-ostree"
│ │ │ -001a0210: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001a0220: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001a0230: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ -001a0240: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001a0250: 6167 6573 2061 6e64 206e 6f74 2022 6f70  ages and not "op
│ │ │ -001a0260: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ -001a0270: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001a0280: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001a0290: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ -001a02a0: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ -001a02b0: 696e 6520 2920 616e 6420 6e6f 7420 2820  ine ) and not ( 
│ │ │ -001a02c0: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ -001a02d0: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20  zation_type in. 
│ │ │ -001a02e0: 2020 205b 2264 6f63 6b65 7222 2c20 226c     ["docker", "l
│ │ │ -001a02f0: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ -001a0300: 706f 646d 616e 222c 2022 636f 6e74 6169  podman", "contai
│ │ │ -001a0310: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ -001a0320: 2f74 6d70 2220 696e 2061 6e73 6962 6c65  /tmp" in ansible
│ │ │ -001a0330: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ -001a0340: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ -001a0350: 207c 206c 6973 7427 0a20 202d 2028 222d   | list'.  - ("-
│ │ │ -001a0360: 2d66 7374 6162 2220 7c20 6c65 6e67 7468  -fstab" | length
│ │ │ -001a0370: 203d 3d20 3029 0a20 202d 2064 6576 6963   == 0).  - devic
│ │ │ -001a0380: 655f 6e61 6d65 2e73 7464 6f75 7420 6973  e_name.stdout is
│ │ │ -001a0390: 2064 6566 696e 6564 2061 6e64 2064 6576   defined and dev
│ │ │ -001a03a0: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ -001a03b0: 6c69 6e65 7320 6973 2064 6566 696e 6564  lines is defined
│ │ │ -001a03c0: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ -001a03d0: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ -001a03e0: 6820 3d3d 2030 290a 2020 7461 6773 3a0a  h == 0).  tags:.
│ │ │ -001a03f0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001a0400: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ -001a0410: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ -001a0420: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001a0430: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ -001a0440: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ -001a0450: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001a0460: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ -001a0470: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ -001a0480: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -001a0490: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -001a04a0: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -001a04b0: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -001a04c0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001a04d0: 6d6f 756e 745f 6f70 7469 6f6e 5f74 6d70  mount_option_tmp
│ │ │ -001a04e0: 5f6e 6f64 6576 0a20 202d 206e 6f5f 7265  _nodev.  - no_re
│ │ │ -001a04f0: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -001a0500: 616d 653a 2027 4164 6420 6e6f 6465 7620  ame: 'Add nodev 
│ │ │ -001a0510: 4f70 7469 6f6e 2074 6f20 2f74 6d70 3a20  Option to /tmp: 
│ │ │ -001a0520: 4d61 6b65 2073 7572 6520 6e6f 6465 7620  Make sure nodev 
│ │ │ -001a0530: 6f70 7469 6f6e 2069 7320 7061 7274 206f  option is part o
│ │ │ -001a0540: 6620 7468 6520 746f 202f 746d 7020 6f70  f the to /tmp op
│ │ │ -001a0550: 7469 6f6e 7327 0a20 2073 6574 5f66 6163  tions'.  set_fac
│ │ │ -001a0560: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66  t:.    mount_inf
│ │ │ -001a0570: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66  o: '{{ mount_inf
│ │ │ -001a0580: 6f20 7c20 636f 6d62 696e 6528 207b 2727  o | combine( {''
│ │ │ -001a0590: 6f70 7469 6f6e 7327 273a 2727 2727 7e28  options'':''''~(
│ │ │ -001a05a0: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ -001a05b0: 6e73 207c 0a20 2020 2020 2064 6566 6175  ns |.      defau
│ │ │ -001a05c0: 6c74 2827 2727 2729 297e 2827 272c 2727  lt(''''))~('',''
│ │ │ -001a05d0: 2069 6620 286d 6f75 6e74 5f69 6e66 6f2e   if (mount_info.
│ │ │ -001a05e0: 6f70 7469 6f6e 7320 7c20 6465 6661 756c  options | defaul
│ │ │ -001a05f0: 7428 2727 2727 2929 2065 6c73 6520 2727  t('''')) else ''
│ │ │ -001a0600: 2727 297e 2727 6e6f 6465 7627 270a 2020  '')~''nodev''.  
│ │ │ -001a0610: 2020 2020 7d29 207d 7d27 0a20 2077 6865      }) }}'.  whe
│ │ │ -001a0620: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ -001a0630: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -001a0640: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001a0650: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ -001a0660: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ -001a0670: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001a0680: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -001a0690: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001a06a0: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ -001a06b0: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001a06c0: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001a06d0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001a06e0: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -001a06f0: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -001a0700: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ -001a0710: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001a0720: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001a0730: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ -001a0740: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -001a0750: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ -001a0760: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001a0770: 2722 2f74 6d70 2220 696e 2061 6e73 6962  '"/tmp" in ansib
│ │ │ -001a0780: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ -001a0790: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ -001a07a0: 2229 207c 206c 6973 7427 0a20 202d 206d  ") | list'.  - m
│ │ │ -001a07b0: 6f75 6e74 5f69 6e66 6f20 6973 2064 6566  ount_info is def
│ │ │ -001a07c0: 696e 6564 2061 6e64 2022 6e6f 6465 7622  ined and "nodev"
│ │ │ -001a07d0: 206e 6f74 2069 6e20 286d 6f75 6e74 5f69   not in (mount_i
│ │ │ -001a07e0: 6e66 6f2e 6f70 7469 6f6e 7320 7c20 6465  nfo.options | de
│ │ │ -001a07f0: 6661 756c 7428 2727 2929 0a20 2074 6167  fault('')).  tag
│ │ │ -001a0800: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ -001a0810: 3533 2d41 432d 360a 2020 2d20 4e49 5354  53-AC-6.  - NIST
│ │ │ -001a0820: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ -001a0830: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001a0840: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ -001a0850: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ -001a0860: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001a0870: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ -001a0880: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d  -800-53-MP-7.  -
│ │ │ -001a0890: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ -001a08a0: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ -001a08b0: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -001a08c0: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -001a08d0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -001a08e0: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ -001a08f0: 746d 705f 6e6f 6465 760a 2020 2d20 6e6f  tmp_nodev.  - no
│ │ │ -001a0900: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ -001a0910: 2d20 6e61 6d65 3a20 2741 6464 206e 6f64  - name: 'Add nod
│ │ │ -001a0920: 6576 204f 7074 696f 6e20 746f 202f 746d  ev Option to /tm
│ │ │ -001a0930: 703a 2045 6e73 7572 6520 2f74 6d70 2069  p: Ensure /tmp i
│ │ │ -001a0940: 7320 6d6f 756e 7465 6420 7769 7468 206e  s mounted with n
│ │ │ -001a0950: 6f64 6576 206f 7074 696f 6e27 0a20 2061  odev option'.  a
│ │ │ -001a0960: 6e73 6962 6c65 2e70 6f73 6978 2e6d 6f75  nsible.posix.mou
│ │ │ -001a0970: 6e74 3a0a 2020 2020 7061 7468 3a20 2f74  nt:.    path: /t
│ │ │ -001a0980: 6d70 0a20 2020 2073 7263 3a20 277b 7b20  mp.    src: '{{ 
│ │ │ -001a0990: 6d6f 756e 745f 696e 666f 2e73 6f75 7263  mount_info.sourc
│ │ │ -001a09a0: 6520 7c20 6465 6661 756c 7428 2727 2727  e | default(''''
│ │ │ -001a09b0: 2920 7d7d 270a 2020 2020 6f70 7473 3a20  ) }}'.    opts: 
│ │ │ -001a09c0: 277b 7b20 6d6f 756e 745f 696e 666f 2e6f  '{{ mount_info.o
│ │ │ -001a09d0: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ -001a09e0: 2827 2727 2729 207d 7d27 0a20 2020 2073  ('''') }}'.    s
│ │ │ -001a09f0: 7461 7465 3a20 6d6f 756e 7465 640a 2020  tate: mounted.  
│ │ │ -001a0a00: 2020 6673 7479 7065 3a20 277b 7b20 6d6f    fstype: '{{ mo
│ │ │ -001a0a10: 756e 745f 696e 666f 2e66 7374 7970 6520  unt_info.fstype 
│ │ │ -001a0a20: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ -001a0a30: 7d7d 270a 2020 7265 6769 7374 6572 3a20  }}'.  register: 
│ │ │ -001a0a40: 6d6f 756e 745f 7265 7375 6c74 0a20 2066  mount_result.  f
│ │ │ -001a0a50: 6169 6c65 645f 7768 656e 3a0a 2020 2d20  ailed_when:.  - 
│ │ │ -001a0a60: 6d6f 756e 745f 7265 7375 6c74 2069 7320  mount_result is 
│ │ │ -001a0a70: 6661 696c 6564 0a20 202d 2027 2727 7461  failed.  - '''ta
│ │ │ -001a0a80: 7267 6574 2069 7320 6275 7379 2727 206e  rget is busy'' n
│ │ │ -001a0a90: 6f74 2069 6e20 286d 6f75 6e74 5f72 6573  ot in (mount_res
│ │ │ -001a0aa0: 756c 742e 6d73 6720 7c20 6465 6661 756c  ult.msg | defaul
│ │ │ -001a0ab0: 7428 2727 2727 2929 270a 2020 2d20 2727  t(''''))'.  - ''
│ │ │ -001a0ac0: 2761 6c72 6561 6479 206d 6f75 6e74 6564  'already mounted
│ │ │ -001a0ad0: 2727 206e 6f74 2069 6e20 286d 6f75 6e74  '' not in (mount
│ │ │ -001a0ae0: 5f72 6573 756c 742e 6d73 6720 7c20 6465  _result.msg | de
│ │ │ -001a0af0: 6661 756c 7428 2727 2727 2929 270a 2020  fault(''''))'.  
│ │ │ -001a0b00: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ -001a0b10: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ -001a0b20: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001a0b30: 6167 6573 2061 6e64 2022 7270 6d2d 6f73  ages and "rpm-os
│ │ │ -001a0b40: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001a0b50: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001a0b60: 2020 2020 616e 6420 2262 6f6f 7463 2220      and "bootc" 
│ │ │ -001a0b70: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001a0b80: 2e70 6163 6b61 6765 7320 616e 6420 6e6f  .packages and no
│ │ │ -001a0b90: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ -001a0ba0: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ -001a0bb0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001a0bc0: 2020 2020 616e 6420 226f 7374 7265 6522      and "ostree"
│ │ │ -001a0bd0: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ -001a0be0: 5f63 6d64 6c69 6e65 2029 2061 6e64 206e  _cmdline ) and n
│ │ │ -001a0bf0: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ -001a0c00: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ -001a0c10: 2069 6e0a 2020 2020 5b22 646f 636b 6572   in.    ["docker
│ │ │ -001a0c20: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ -001a0c30: 7a22 2c20 2270 6f64 6d61 6e22 2c20 2263  z", "podman", "c
│ │ │ -001a0c40: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ -001a0c50: 202d 2027 222f 746d 7022 2069 6e20 616e   - '"/tmp" in an
│ │ │ -001a0c60: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ -001a0c70: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ -001a0c80: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ -001a0c90: 2d20 6d6f 756e 745f 696e 666f 2069 7320  - mount_info is 
│ │ │ -001a0ca0: 6465 6669 6e65 640a 2020 2d20 2864 6576  defined.  - (dev
│ │ │ -001a0cb0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ -001a0cc0: 6973 2064 6566 696e 6564 2061 6e64 2028  is defined and (
│ │ │ -001a0cd0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001a0ce0: 7574 207c 206c 656e 6774 6820 2667 743b  ut | length >
│ │ │ -001a0cf0: 2030 2929 206f 7220 2822 2d2d 6673 7461   0)) or ("--fsta
│ │ │ -001a0d00: 6222 0a20 2020 207c 206c 656e 6774 6820  b".    | length 
│ │ │ -001a0d10: 3d3d 2030 290a 2020 7461 6773 3a0a 2020  == 0).  tags:.  
│ │ │ -001a0d20: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001a0d30: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ -001a0d40: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ -001a0d50: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -001a0d60: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -001a0d70: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ -001a0d80: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -001a0d90: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ -001a0da0: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ -001a0db0: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -001a0dc0: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -001a0dd0: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -001a0de0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -001a0df0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -001a0e00: 756e 745f 6f70 7469 6f6e 5f74 6d70 5f6e  unt_option_tmp_n
│ │ │ -001a0e10: 6f64 6576 0a20 202d 206e 6f5f 7265 626f  odev.  - no_rebo
│ │ │ -001a0e20: 6f74 5f6e 6565 6465 640a 3c2f 636f 6465  ot_needed.
Remedi │ │ │ -001a0ee0: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ -001a0ef0: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
│ │ │ -001a0f70: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
│ │ │ -0019f6d0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -0019f700: 696f 6e3a 3c2f 7468 3e3c 7464 3e68 6967 ion:hig │ │ │ -0019f710: 683c 2f74 643e 3c2f 7472 3e3c 7472 3e3c h
Strate │ │ │ -0019f750: 6779 3a3c 2f74 683e 3c74 643e 636f 6e66 gy:conf │ │ │ -0019f760: 6967 7572 653c 2f74 643e 3c2f 7472 3e3c igure
Reboot:< │ │ │ -001a0f80: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
< │ │ │ -001a0fa0: 7072 653e 3c63 6f64 653e 2320 5265 6d65 pre># Reme │ │ │ -001a0fb0: 6469 6174 696f 6e20 6973 2061 7070 6c69 diation is appli │ │ │ -001a0fc0: 6361 626c 6520 6f6e 6c79 2069 6e20 6365 cable only in ce │ │ │ -001a0fd0: 7274 6169 6e20 706c 6174 666f 726d 730a rtain platforms. │ │ │ -001a0fe0: 6966 2028 2021 2028 207b 2072 706d 202d if ( ! ( { rpm - │ │ │ -001a0ff0: 2d71 7569 6574 202d 7120 6b65 726e 656c -quiet -q kernel │ │ │ -001a1000: 203b 7d20 2661 6d70 3b26 616d 703b 207b ;} && { │ │ │ -001a1010: 2072 706d 202d 2d71 7569 6574 202d 7120 rpm --quiet -q │ │ │ -001a1020: 7270 6d2d 6f73 7472 6565 203b 7d20 2661 rpm-ostree ;} &a │ │ │ -001a1030: 6d70 3b26 616d 703b 207b 2072 706d 202d mp;& { rpm - │ │ │ -001a1040: 2d71 7569 6574 202d 7120 626f 6f74 6320 -quiet -q bootc │ │ │ -001a1050: 3b7d 2026 616d 703b 2661 6d70 3b20 7b20 ;} && { │ │ │ -001a1060: 2120 7270 6d20 2d2d 7175 6965 7420 2d71 ! rpm --quiet -q │ │ │ -001a1070: 206f 7065 6e73 6869 6674 2d6b 7562 656c openshift-kubel │ │ │ -001a1080: 6574 203b 7d20 2661 6d70 3b26 616d 703b et ;} && │ │ │ -001a1090: 2028 5b20 2d66 202f 7275 6e2f 6f73 7472 ([ -f /run/ostr │ │ │ -001a10a0: 6565 2d62 6f6f 7465 6420 5d20 7c7c 205b ee-booted ] || [ │ │ │ -001a10b0: 202d 4c20 2f6f 7374 7265 6520 5d29 2029 -L /ostree ]) ) │ │ │ -001a10c0: 2026 616d 703b 2661 6d70 3b20 2120 2820 && ! ( │ │ │ -001a10d0: 5b20 2d66 202f 2e64 6f63 6b65 7265 6e76 [ -f /.dockerenv │ │ │ -001a10e0: 205d 207c 7c20 5b20 2d66 202f 7275 6e2f ] || [ -f /run/ │ │ │ -001a10f0: 2e63 6f6e 7461 696e 6572 656e 7620 5d20 .containerenv ] │ │ │ -001a1100: 2920 2920 2661 6d70 3b26 616d 703b 207b ) ) && { │ │ │ -001a1110: 2028 2066 696e 646d 6e74 202d 2d6b 6572 ( findmnt --ker │ │ │ -001a1120: 6e65 6c20 222f 746d 7022 2026 6774 3b20 nel "/tmp" > │ │ │ -001a1130: 2f64 6576 2f6e 756c 6c20 7c7c 2066 696e /dev/null || fin │ │ │ -001a1140: 646d 6e74 202d 2d66 7374 6162 2022 2f74 dmnt --fstab "/t │ │ │ -001a1150: 6d70 2220 2667 743b 202f 6465 762f 6e75 mp" > /dev/nu │ │ │ -001a1160: 6c6c 2029 3b20 7d3b 2074 6865 6e0a 0a66 ll ); }; then..f │ │ │ -001a1170: 756e 6374 696f 6e20 7065 7266 6f72 6d5f unction perform_ │ │ │ -001a1180: 7265 6d65 6469 6174 696f 6e20 7b0a 0a20 remediation {.. │ │ │ -001a1190: 2020 200a 2020 2020 2020 2020 2320 7468 . # th │ │ │ -001a11a0: 6520 6d6f 756e 7420 706f 696e 7420 2f74 e mount point /t │ │ │ -001a11b0: 6d70 2068 6173 2074 6f20 6265 2064 6566 mp has to be def │ │ │ -001a11c0: 696e 6564 2069 6e20 2f65 7463 2f66 7374 ined in /etc/fst │ │ │ -001a11d0: 6162 0a20 2020 2020 2020 2023 2062 6566 ab. # bef │ │ │ -001a11e0: 6f72 6520 7468 6973 2072 656d 6564 6961 ore this remedia │ │ │ -001a11f0: 7469 6f6e 2063 616e 2062 6520 6578 6563 tion can be exec │ │ │ -001a1200: 7574 6564 2e20 496e 2063 6173 6520 6974 uted. In case it │ │ │ -001a1210: 2069 7320 6e6f 7420 6465 6669 6e65 642c is not defined, │ │ │ -001a1220: 2074 6865 0a20 2020 2020 2020 2023 2072 the. # r │ │ │ -001a1230: 656d 6564 6961 7469 6f6e 2061 626f 7274 emediation abort │ │ │ -001a1240: 7320 616e 6420 6e6f 2063 6861 6e67 6573 s and no changes │ │ │ -001a1250: 2072 6567 6172 6469 6e67 2074 6865 206d regarding the m │ │ │ -001a1260: 6f75 6e74 2070 6f69 6e74 2061 7265 2064 ount point are d │ │ │ -001a1270: 6f6e 652e 0a20 2020 2020 2020 206d 6f75 one.. mou │ │ │ -001a1280: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72 nt_point_match_r │ │ │ -001a1290: 6567 6578 703d 2224 2870 7269 6e74 6620 egexp="$(printf │ │ │ -001a12a0: 225e 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e "^[[:space:]]*[^ │ │ │ -001a12b0: 235d 2e2a 5b5b 3a73 7061 6365 3a5d 5d25 #].*[[:space:]]% │ │ │ -001a12c0: 735b 5b3a 7370 6163 653a 5d5d 2220 222f s[[:space:]]" "/ │ │ │ -001a12d0: 746d 7022 2922 0a0a 2020 2020 6772 6570 tmp")".. grep │ │ │ -001a12e0: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d "$mount_point_m │ │ │ -001a12f0: 6174 6368 5f72 6567 6578 7022 202d 7120 atch_regexp" -q │ │ │ -001a1300: 2f65 7463 2f66 7374 6162 205c 0a20 2020 /etc/fstab \. │ │ │ -001a1310: 2020 2020 207c 7c20 7b20 6563 686f 2022 || { echo " │ │ │ -001a1320: 5468 6520 6d6f 756e 7420 706f 696e 7420 The mount point │ │ │ -001a1330: 272f 746d 7027 2069 7320 6e6f 7420 6576 '/tmp' is not ev │ │ │ -001a1340: 656e 2069 6e20 2f65 7463 2f66 7374 6162 en in /etc/fstab │ │ │ -001a1350: 2c20 736f 2077 6520 6361 6e27 7420 7365 , so we can't se │ │ │ -001a1360: 7420 7570 206d 6f75 6e74 206f 7074 696f t up mount optio │ │ │ -001a1370: 6e73 2220 2667 743b 2661 6d70 3b32 3b0a ns" >&2;. │ │ │ +0019f410: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ +0019f420: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +0019f430: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
< │ │ │ +0019f520: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
-
│ │ │ +0019f560: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +0019f570: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +0019f580: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ +0019f590: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ +0019f5a0: 746f 0a20 2074 6167 733a 0a20 202d 204e  to.  tags:.  - N
│ │ │ +0019f5b0: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ +0019f5c0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +0019f5d0: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ +0019f5e0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +0019f5f0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +0019f600: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +0019f610: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +0019f620: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +0019f630: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ +0019f640: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +0019f650: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +0019f660: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +0019f670: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +0019f680: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +0019f690: 5f6f 7074 696f 6e5f 746d 705f 6e6f 6465  _option_tmp_node
│ │ │ +0019f6a0: 760a 2020 2d20 6e6f 5f72 6562 6f6f 745f  v.  - no_reboot_
│ │ │ +0019f6b0: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ +0019f6c0: 2741 6464 206e 6f64 6576 204f 7074 696f  'Add nodev Optio
│ │ │ +0019f6d0: 6e20 746f 202f 746d 703a 2043 6865 636b  n to /tmp: Check
│ │ │ +0019f6e0: 2069 6e66 6f72 6d61 7469 6f6e 2061 7373   information ass
│ │ │ +0019f6f0: 6f63 6961 7465 6420 746f 206d 6f75 6e74  ociated to mount
│ │ │ +0019f700: 706f 696e 7427 0a20 2061 6e73 6962 6c65  point'.  ansible
│ │ │ +0019f710: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ +0019f720: 3a20 6669 6e64 6d6e 7420 2d2d 6673 7461  : findmnt --fsta
│ │ │ +0019f730: 6220 272f 746d 7027 0a20 2072 6567 6973  b '/tmp'.  regis
│ │ │ +0019f740: 7465 723a 2064 6576 6963 655f 6e61 6d65  ter: device_name
│ │ │ +0019f750: 0a20 2066 6169 6c65 645f 7768 656e 3a20  .  failed_when: 
│ │ │ +0019f760: 6465 7669 6365 5f6e 616d 652e 7263 2026  device_name.rc &
│ │ │ +0019f770: 6774 3b20 310a 2020 6368 616e 6765 645f  gt; 1.  changed_
│ │ │ +0019f780: 7768 656e 3a20 6661 6c73 650a 2020 6368  when: false.  ch
│ │ │ +0019f790: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a  eck_mode: false.
│ │ │ +0019f7a0: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ +0019f7b0: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ +0019f7c0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +0019f7d0: 636b 6167 6573 2061 6e64 2022 7270 6d2d  ckages and "rpm-
│ │ │ +0019f7e0: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +0019f7f0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +0019f800: 730a 2020 2020 616e 6420 2262 6f6f 7463  s.    and "bootc
│ │ │ +0019f810: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +0019f820: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +0019f830: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ +0019f840: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ +0019f850: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +0019f860: 730a 2020 2020 616e 6420 226f 7374 7265  s.    and "ostre
│ │ │ +0019f870: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ +0019f880: 6f63 5f63 6d64 6c69 6e65 2029 2061 6e64  oc_cmdline ) and
│ │ │ +0019f890: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ +0019f8a0: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ +0019f8b0: 7065 2069 6e0a 2020 2020 5b22 646f 636b  pe in.    ["dock
│ │ │ +0019f8c0: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ +0019f8d0: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c20  nvz", "podman", 
│ │ │ +0019f8e0: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ +0019f8f0: 0a20 202d 2027 222f 746d 7022 2069 6e20  .  - '"/tmp" in 
│ │ │ +0019f900: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ +0019f910: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ +0019f920: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ +0019f930: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +0019f940: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ +0019f950: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +0019f960: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ +0019f970: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +0019f980: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +0019f990: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ +0019f9a0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ +0019f9b0: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ +0019f9c0: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ +0019f9d0: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ +0019f9e0: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ +0019f9f0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +0019fa00: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +0019fa10: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ +0019fa20: 7469 6f6e 5f74 6d70 5f6e 6f64 6576 0a20  tion_tmp_nodev. 
│ │ │ +0019fa30: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +0019fa40: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ +0019fa50: 6420 6e6f 6465 7620 4f70 7469 6f6e 2074  d nodev Option t
│ │ │ +0019fa60: 6f20 2f74 6d70 3a20 4372 6561 7465 206d  o /tmp: Create m
│ │ │ +0019fa70: 6f75 6e74 5f69 6e66 6f20 6469 6374 696f  ount_info dictio
│ │ │ +0019fa80: 6e61 7279 2076 6172 6961 626c 6527 0a20  nary variable'. 
│ │ │ +0019fa90: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ +0019faa0: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ +0019fab0: 6f75 6e74 5f69 6e66 6f7c 6465 6661 756c  ount_info|defaul
│ │ │ +0019fac0: 7428 7b7d 297c 636f 6d62 696e 6528 7b69  t({})|combine({i
│ │ │ +0019fad0: 7465 6d2e 303a 2069 7465 6d2e 317d 2920  tem.0: item.1}) 
│ │ │ +0019fae0: 7d7d 270a 2020 7769 7468 5f74 6f67 6574  }}'.  with_toget
│ │ │ +0019faf0: 6865 723a 0a20 202d 2027 7b7b 2064 6576  her:.  - '{{ dev
│ │ │ +0019fb00: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ +0019fb10: 6c69 6e65 735b 305d 2e73 706c 6974 2829  lines[0].split()
│ │ │ +0019fb20: 207c 206d 6170 2827 276c 6f77 6572 2727   | map(''lower''
│ │ │ +0019fb30: 2920 7c20 6c69 7374 207d 7d27 0a20 202d  ) | list }}'.  -
│ │ │ +0019fb40: 2027 7b7b 2064 6576 6963 655f 6e61 6d65   '{{ device_name
│ │ │ +0019fb50: 2e73 7464 6f75 745f 6c69 6e65 735b 315d  .stdout_lines[1]
│ │ │ +0019fb60: 2e73 706c 6974 2829 207c 206c 6973 7420  .split() | list 
│ │ │ +0019fb70: 7d7d 270a 2020 7768 656e 3a0a 2020 2d20  }}'.  when:.  - 
│ │ │ +0019fb80: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ +0019fb90: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +0019fba0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +0019fbb0: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ +0019fbc0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +0019fbd0: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ +0019fbe0: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +0019fbf0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +0019fc00: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ +0019fc10: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ +0019fc20: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +0019fc30: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ +0019fc40: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +0019fc50: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ +0019fc60: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ +0019fc70: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ +0019fc80: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ +0019fc90: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +0019fca0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +0019fcb0: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ +0019fcc0: 2029 2029 0a20 202d 2027 222f 746d 7022   ) ).  - '"/tmp"
│ │ │ +0019fcd0: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ +0019fce0: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ +0019fcf0: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ +0019fd00: 7374 270a 2020 2d20 6465 7669 6365 5f6e  st'.  - device_n
│ │ │ +0019fd10: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ +0019fd20: 6669 6e65 6420 616e 6420 6465 7669 6365  fined and device
│ │ │ +0019fd30: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ +0019fd40: 6573 2069 7320 6465 6669 6e65 640a 2020  es is defined.  
│ │ │ +0019fd50: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ +0019fd60: 7464 6f75 7420 7c20 6c65 6e67 7468 2026  tdout | length &
│ │ │ +0019fd70: 6774 3b20 3029 0a20 2074 6167 733a 0a20  gt; 0).  tags:. 
│ │ │ +0019fd80: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +0019fd90: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ +0019fda0: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ +0019fdb0: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +0019fdc0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +0019fdd0: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ +0019fde0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +0019fdf0: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ +0019fe00: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ +0019fe10: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +0019fe20: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ +0019fe30: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ +0019fe40: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ +0019fe50: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ +0019fe60: 6f75 6e74 5f6f 7074 696f 6e5f 746d 705f  ount_option_tmp_
│ │ │ +0019fe70: 6e6f 6465 760a 2020 2d20 6e6f 5f72 6562  nodev.  - no_reb
│ │ │ +0019fe80: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61  oot_needed..- na
│ │ │ +0019fe90: 6d65 3a20 2741 6464 206e 6f64 6576 204f  me: 'Add nodev O
│ │ │ +0019fea0: 7074 696f 6e20 746f 202f 746d 703a 2049  ption to /tmp: I
│ │ │ +0019feb0: 6620 2f74 6d70 206e 6f74 206d 6f75 6e74  f /tmp not mount
│ │ │ +0019fec0: 6564 2c20 6372 6166 7420 6d6f 756e 745f  ed, craft mount_
│ │ │ +0019fed0: 696e 666f 206d 616e 7561 6c6c 7927 0a20  info manually'. 
│ │ │ +0019fee0: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ +0019fef0: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ +0019ff00: 6f75 6e74 5f69 6e66 6f7c 6465 6661 756c  ount_info|defaul
│ │ │ +0019ff10: 7428 7b7d 297c 636f 6d62 696e 6528 7b69  t({})|combine({i
│ │ │ +0019ff20: 7465 6d2e 303a 2069 7465 6d2e 317d 2920  tem.0: item.1}) 
│ │ │ +0019ff30: 7d7d 270a 2020 7769 7468 5f74 6f67 6574  }}'.  with_toget
│ │ │ +0019ff40: 6865 723a 0a20 202d 202d 2074 6172 6765  her:.  - - targe
│ │ │ +0019ff50: 740a 2020 2020 2d20 736f 7572 6365 0a20  t.    - source. 
│ │ │ +0019ff60: 2020 202d 2066 7374 7970 650a 2020 2020     - fstype.    
│ │ │ +0019ff70: 2d20 6f70 7469 6f6e 730a 2020 2d20 2d20  - options.  - - 
│ │ │ +0019ff80: 2f74 6d70 0a20 2020 202d 2027 270a 2020  /tmp.    - ''.  
│ │ │ +0019ff90: 2020 2d20 2727 0a20 2020 202d 2064 6566    - ''.    - def
│ │ │ +0019ffa0: 6175 6c74 730a 2020 7768 656e 3a0a 2020  aults.  when:.  
│ │ │ +0019ffb0: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ +0019ffc0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +0019ffd0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +0019ffe0: 2022 7270 6d2d 6f73 7472 6565 2220 696e   "rpm-ostree" in
│ │ │ +0019fff0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001a0000: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001a0010: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ +001a0020: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001a0030: 7320 616e 6420 6e6f 7420 226f 7065 6e73  s and not "opens
│ │ │ +001a0040: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ +001a0050: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001a0060: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001a0070: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ +001a0080: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ +001a0090: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ +001a00a0: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ +001a00b0: 696f 6e5f 7479 7065 2069 6e0a 2020 2020  ion_type in.    
│ │ │ +001a00c0: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ +001a00d0: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ +001a00e0: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572  man", "container
│ │ │ +001a00f0: 225d 2029 2029 0a20 202d 2027 222f 746d  "] ) ).  - '"/tm
│ │ │ +001a0100: 7022 2069 6e20 616e 7369 626c 655f 6d6f  p" in ansible_mo
│ │ │ +001a0110: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ +001a0120: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ +001a0130: 6c69 7374 270a 2020 2d20 2822 2d2d 6673  list'.  - ("--fs
│ │ │ +001a0140: 7461 6222 207c 206c 656e 6774 6820 3d3d  tab" | length ==
│ │ │ +001a0150: 2030 290a 2020 2d20 6465 7669 6365 5f6e   0).  - device_n
│ │ │ +001a0160: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ +001a0170: 6669 6e65 6420 616e 6420 6465 7669 6365  fined and device
│ │ │ +001a0180: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ +001a0190: 6573 2069 7320 6465 6669 6e65 640a 2020  es is defined.  
│ │ │ +001a01a0: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ +001a01b0: 7464 6f75 7420 7c20 6c65 6e67 7468 203d  tdout | length =
│ │ │ +001a01c0: 3d20 3029 0a20 2074 6167 733a 0a20 202d  = 0).  tags:.  -
│ │ │ +001a01d0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001a01e0: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +001a01f0: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ +001a0200: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +001a0210: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001a0220: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +001a0230: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +001a0240: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001a0250: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ +001a0260: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001a0270: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001a0280: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001a0290: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001a02a0: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001a02b0: 6e74 5f6f 7074 696f 6e5f 746d 705f 6e6f  nt_option_tmp_no
│ │ │ +001a02c0: 6465 760a 2020 2d20 6e6f 5f72 6562 6f6f  dev.  - no_reboo
│ │ │ +001a02d0: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ +001a02e0: 3a20 2741 6464 206e 6f64 6576 204f 7074  : 'Add nodev Opt
│ │ │ +001a02f0: 696f 6e20 746f 202f 746d 703a 204d 616b  ion to /tmp: Mak
│ │ │ +001a0300: 6520 7375 7265 206e 6f64 6576 206f 7074  e sure nodev opt
│ │ │ +001a0310: 696f 6e20 6973 2070 6172 7420 6f66 2074  ion is part of t
│ │ │ +001a0320: 6865 2074 6f20 2f74 6d70 206f 7074 696f  he to /tmp optio
│ │ │ +001a0330: 6e73 270a 2020 7365 745f 6661 6374 3a0a  ns'.  set_fact:.
│ │ │ +001a0340: 2020 2020 6d6f 756e 745f 696e 666f 3a20      mount_info: 
│ │ │ +001a0350: 277b 7b20 6d6f 756e 745f 696e 666f 207c  '{{ mount_info |
│ │ │ +001a0360: 2063 6f6d 6269 6e65 2820 7b27 276f 7074   combine( {''opt
│ │ │ +001a0370: 696f 6e73 2727 3a27 2727 277e 286d 6f75  ions'':''''~(mou
│ │ │ +001a0380: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ +001a0390: 7c0a 2020 2020 2020 6465 6661 756c 7428  |.      default(
│ │ │ +001a03a0: 2727 2727 2929 7e28 2727 2c27 2720 6966  ''''))~('','' if
│ │ │ +001a03b0: 2028 6d6f 756e 745f 696e 666f 2e6f 7074   (mount_info.opt
│ │ │ +001a03c0: 696f 6e73 207c 2064 6566 6175 6c74 2827  ions | default('
│ │ │ +001a03d0: 2727 2729 2920 656c 7365 2027 2727 2729  ''')) else '''')
│ │ │ +001a03e0: 7e27 276e 6f64 6576 2727 0a20 2020 2020  ~''nodev''.     
│ │ │ +001a03f0: 207d 2920 7d7d 270a 2020 7768 656e 3a0a   }) }}'.  when:.
│ │ │ +001a0400: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ +001a0410: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +001a0420: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001a0430: 6e64 2022 7270 6d2d 6f73 7472 6565 2220  nd "rpm-ostree" 
│ │ │ +001a0440: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001a0450: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001a0460: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ +001a0470: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001a0480: 6765 7320 616e 6420 6e6f 7420 226f 7065  ges and not "ope
│ │ │ +001a0490: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ +001a04a0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001a04b0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001a04c0: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ +001a04d0: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ +001a04e0: 6e65 2029 2061 6e64 206e 6f74 2028 2061  ne ) and not ( a
│ │ │ +001a04f0: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ +001a0500: 6174 696f 6e5f 7479 7065 2069 6e0a 2020  ation_type in.  
│ │ │ +001a0510: 2020 5b22 646f 636b 6572 222c 2022 6c78    ["docker", "lx
│ │ │ +001a0520: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ +001a0530: 6f64 6d61 6e22 2c20 2263 6f6e 7461 696e  odman", "contain
│ │ │ +001a0540: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ +001a0550: 746d 7022 2069 6e20 616e 7369 626c 655f  tmp" in ansible_
│ │ │ +001a0560: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ +001a0570: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ +001a0580: 7c20 6c69 7374 270a 2020 2d20 6d6f 756e  | list'.  - moun
│ │ │ +001a0590: 745f 696e 666f 2069 7320 6465 6669 6e65  t_info is define
│ │ │ +001a05a0: 6420 616e 6420 226e 6f64 6576 2220 6e6f  d and "nodev" no
│ │ │ +001a05b0: 7420 696e 2028 6d6f 756e 745f 696e 666f  t in (mount_info
│ │ │ +001a05c0: 2e6f 7074 696f 6e73 207c 2064 6566 6175  .options | defau
│ │ │ +001a05d0: 6c74 2827 2729 290a 2020 7461 6773 3a0a  lt('')).  tags:.
│ │ │ +001a05e0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001a05f0: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ +001a0600: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ +001a0610: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001a0620: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ +001a0630: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ +001a0640: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001a0650: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ +001a0660: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ +001a0670: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001a0680: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001a0690: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001a06a0: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001a06b0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001a06c0: 6d6f 756e 745f 6f70 7469 6f6e 5f74 6d70  mount_option_tmp
│ │ │ +001a06d0: 5f6e 6f64 6576 0a20 202d 206e 6f5f 7265  _nodev.  - no_re
│ │ │ +001a06e0: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ +001a06f0: 616d 653a 2027 4164 6420 6e6f 6465 7620  ame: 'Add nodev 
│ │ │ +001a0700: 4f70 7469 6f6e 2074 6f20 2f74 6d70 3a20  Option to /tmp: 
│ │ │ +001a0710: 456e 7375 7265 202f 746d 7020 6973 206d  Ensure /tmp is m
│ │ │ +001a0720: 6f75 6e74 6564 2077 6974 6820 6e6f 6465  ounted with node
│ │ │ +001a0730: 7620 6f70 7469 6f6e 270a 2020 616e 7369  v option'.  ansi
│ │ │ +001a0740: 626c 652e 706f 7369 782e 6d6f 756e 743a  ble.posix.mount:
│ │ │ +001a0750: 0a20 2020 2070 6174 683a 202f 746d 700a  .    path: /tmp.
│ │ │ +001a0760: 2020 2020 7372 633a 2027 7b7b 206d 6f75      src: '{{ mou
│ │ │ +001a0770: 6e74 5f69 6e66 6f2e 736f 7572 6365 207c  nt_info.source |
│ │ │ +001a0780: 2064 6566 6175 6c74 2827 2727 2729 207d   default('''') }
│ │ │ +001a0790: 7d27 0a20 2020 206f 7074 733a 2027 7b7b  }'.    opts: '{{
│ │ │ +001a07a0: 206d 6f75 6e74 5f69 6e66 6f2e 6f70 7469   mount_info.opti
│ │ │ +001a07b0: 6f6e 7320 7c20 6465 6661 756c 7428 2727  ons | default(''
│ │ │ +001a07c0: 2727 2920 7d7d 270a 2020 2020 7374 6174  '') }}'.    stat
│ │ │ +001a07d0: 653a 206d 6f75 6e74 6564 0a20 2020 2066  e: mounted.    f
│ │ │ +001a07e0: 7374 7970 653a 2027 7b7b 206d 6f75 6e74  stype: '{{ mount
│ │ │ +001a07f0: 5f69 6e66 6f2e 6673 7479 7065 207c 2064  _info.fstype | d
│ │ │ +001a0800: 6566 6175 6c74 2827 2727 2729 207d 7d27  efault('''') }}'
│ │ │ +001a0810: 0a20 2072 6567 6973 7465 723a 206d 6f75  .  register: mou
│ │ │ +001a0820: 6e74 5f72 6573 756c 740a 2020 6661 696c  nt_result.  fail
│ │ │ +001a0830: 6564 5f77 6865 6e3a 0a20 202d 206d 6f75  ed_when:.  - mou
│ │ │ +001a0840: 6e74 5f72 6573 756c 7420 6973 2066 6169  nt_result is fai
│ │ │ +001a0850: 6c65 640a 2020 2d20 2727 2774 6172 6765  led.  - '''targe
│ │ │ +001a0860: 7420 6973 2062 7573 7927 2720 6e6f 7420  t is busy'' not 
│ │ │ +001a0870: 696e 2028 6d6f 756e 745f 7265 7375 6c74  in (mount_result
│ │ │ +001a0880: 2e6d 7367 207c 2064 6566 6175 6c74 2827  .msg | default('
│ │ │ +001a0890: 2727 2729 2927 0a20 202d 2027 2727 616c  '''))'.  - '''al
│ │ │ +001a08a0: 7265 6164 7920 6d6f 756e 7465 6427 2720  ready mounted'' 
│ │ │ +001a08b0: 6e6f 7420 696e 2028 6d6f 756e 745f 7265  not in (mount_re
│ │ │ +001a08c0: 7375 6c74 2e6d 7367 207c 2064 6566 6175  sult.msg | defau
│ │ │ +001a08d0: 6c74 2827 2727 2729 2927 0a20 2077 6865  lt(''''))'.  whe
│ │ │ +001a08e0: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +001a08f0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001a0900: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001a0910: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ +001a0920: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ +001a0930: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001a0940: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ +001a0950: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001a0960: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ +001a0970: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +001a0980: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ +001a0990: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001a09a0: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ +001a09b0: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ +001a09c0: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ +001a09d0: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ +001a09e0: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ +001a09f0: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ +001a0a00: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ +001a0a10: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ +001a0a20: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ +001a0a30: 2722 2f74 6d70 2220 696e 2061 6e73 6962  '"/tmp" in ansib
│ │ │ +001a0a40: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ +001a0a50: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ +001a0a60: 2229 207c 206c 6973 7427 0a20 202d 206d  ") | list'.  - m
│ │ │ +001a0a70: 6f75 6e74 5f69 6e66 6f20 6973 2064 6566  ount_info is def
│ │ │ +001a0a80: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ +001a0a90: 5f6e 616d 652e 7374 646f 7574 2069 7320  _name.stdout is 
│ │ │ +001a0aa0: 6465 6669 6e65 6420 616e 6420 2864 6576  defined and (dev
│ │ │ +001a0ab0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ +001a0ac0: 7c20 6c65 6e67 7468 2026 6774 3b20 3029  | length > 0)
│ │ │ +001a0ad0: 2920 6f72 2028 222d 2d66 7374 6162 220a  ) or ("--fstab".
│ │ │ +001a0ae0: 2020 2020 7c20 6c65 6e67 7468 203d 3d20      | length == 
│ │ │ +001a0af0: 3029 0a20 2074 6167 733a 0a20 202d 204e  0).  tags:.  - N
│ │ │ +001a0b00: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ +001a0b10: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001a0b20: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ +001a0b30: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +001a0b40: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001a0b50: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +001a0b60: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +001a0b70: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001a0b80: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ +001a0b90: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +001a0ba0: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +001a0bb0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +001a0bc0: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +001a0bd0: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +001a0be0: 5f6f 7074 696f 6e5f 746d 705f 6e6f 6465  _option_tmp_node
│ │ │ +001a0bf0: 760a 2020 2d20 6e6f 5f72 6562 6f6f 745f  v.  - no_reboot_
│ │ │ +001a0c00: 6e65 6564 6564 0a3c 2f63 6f64 653e 3c2f  needed.Remediati
│ │ │ +001a0cc0: 6f6e 2053 6865 6c6c 2073 6372 6970 7420  on Shell script 
│ │ │ +001a0cd0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620  ...
< │ │ │ +001a0d70: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
Com │ │ │ +0019f4b0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +0019f4e0: 3a3c 2f74 683e 3c74 643e 6869 6768 3c2f :high
│ │ │ +0019f500: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0019f510: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0019f530: 3c2f 7468 3e3c 7464 3e63 6f6e 6669 6775 configu │ │ │ +0019f540: 7265 3c2f 7464 3e3c 2f74 723e 3c2f 7461 re
Reboot:false
# Remedia
│ │ │ +001a0d90: 7469 6f6e 2069 7320 6170 706c 6963 6162  tion is applicab
│ │ │ +001a0da0: 6c65 206f 6e6c 7920 696e 2063 6572 7461  le only in certa
│ │ │ +001a0db0: 696e 2070 6c61 7466 6f72 6d73 0a69 6620  in platforms.if 
│ │ │ +001a0dc0: 2820 2120 2820 7b20 7270 6d20 2d2d 7175  ( ! ( { rpm --qu
│ │ │ +001a0dd0: 6965 7420 2d71 206b 6572 6e65 6c20 3b7d  iet -q kernel ;}
│ │ │ +001a0de0: 2026 616d 703b 2661 6d70 3b20 7b20 7270   && { rp
│ │ │ +001a0df0: 6d20 2d2d 7175 6965 7420 2d71 2072 706d  m --quiet -q rpm
│ │ │ +001a0e00: 2d6f 7374 7265 6520 3b7d 2026 616d 703b  -ostree ;} &
│ │ │ +001a0e10: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ +001a0e20: 6965 7420 2d71 2062 6f6f 7463 203b 7d20  iet -q bootc ;} 
│ │ │ +001a0e30: 2661 6d70 3b26 616d 703b 207b 2021 2072  && { ! r
│ │ │ +001a0e40: 706d 202d 2d71 7569 6574 202d 7120 6f70  pm --quiet -q op
│ │ │ +001a0e50: 656e 7368 6966 742d 6b75 6265 6c65 7420  enshift-kubelet 
│ │ │ +001a0e60: 3b7d 2026 616d 703b 2661 6d70 3b20 285b  ;} && ([
│ │ │ +001a0e70: 202d 6620 2f72 756e 2f6f 7374 7265 652d   -f /run/ostree-
│ │ │ +001a0e80: 626f 6f74 6564 205d 207c 7c20 5b20 2d4c  booted ] || [ -L
│ │ │ +001a0e90: 202f 6f73 7472 6565 205d 2920 2920 2661   /ostree ]) ) &a
│ │ │ +001a0ea0: 6d70 3b26 616d 703b 2021 2028 205b 202d  mp;& ! ( [ -
│ │ │ +001a0eb0: 6620 2f2e 646f 636b 6572 656e 7620 5d20  f /.dockerenv ] 
│ │ │ +001a0ec0: 7c7c 205b 202d 6620 2f72 756e 2f2e 636f  || [ -f /run/.co
│ │ │ +001a0ed0: 6e74 6169 6e65 7265 6e76 205d 2029 2029  ntainerenv ] ) )
│ │ │ +001a0ee0: 2026 616d 703b 2661 6d70 3b20 7b20 2820   && { ( 
│ │ │ +001a0ef0: 6669 6e64 6d6e 7420 2d2d 6b65 726e 656c  findmnt --kernel
│ │ │ +001a0f00: 2022 2f74 6d70 2220 2667 743b 202f 6465   "/tmp" > /de
│ │ │ +001a0f10: 762f 6e75 6c6c 207c 7c20 6669 6e64 6d6e  v/null || findmn
│ │ │ +001a0f20: 7420 2d2d 6673 7461 6220 222f 746d 7022  t --fstab "/tmp"
│ │ │ +001a0f30: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20   > /dev/null 
│ │ │ +001a0f40: 293b 207d 3b20 7468 656e 0a0a 6675 6e63  ); }; then..func
│ │ │ +001a0f50: 7469 6f6e 2070 6572 666f 726d 5f72 656d  tion perform_rem
│ │ │ +001a0f60: 6564 6961 7469 6f6e 207b 0a0a 2020 2020  ediation {..    
│ │ │ +001a0f70: 0a20 2020 2020 2020 2023 2074 6865 206d  .        # the m
│ │ │ +001a0f80: 6f75 6e74 2070 6f69 6e74 202f 746d 7020  ount point /tmp 
│ │ │ +001a0f90: 6861 7320 746f 2062 6520 6465 6669 6e65  has to be define
│ │ │ +001a0fa0: 6420 696e 202f 6574 632f 6673 7461 620a  d in /etc/fstab.
│ │ │ +001a0fb0: 2020 2020 2020 2020 2320 6265 666f 7265          # before
│ │ │ +001a0fc0: 2074 6869 7320 7265 6d65 6469 6174 696f   this remediatio
│ │ │ +001a0fd0: 6e20 6361 6e20 6265 2065 7865 6375 7465  n can be execute
│ │ │ +001a0fe0: 642e 2049 6e20 6361 7365 2069 7420 6973  d. In case it is
│ │ │ +001a0ff0: 206e 6f74 2064 6566 696e 6564 2c20 7468   not defined, th
│ │ │ +001a1000: 650a 2020 2020 2020 2020 2320 7265 6d65  e.        # reme
│ │ │ +001a1010: 6469 6174 696f 6e20 6162 6f72 7473 2061  diation aborts a
│ │ │ +001a1020: 6e64 206e 6f20 6368 616e 6765 7320 7265  nd no changes re
│ │ │ +001a1030: 6761 7264 696e 6720 7468 6520 6d6f 756e  garding the moun
│ │ │ +001a1040: 7420 706f 696e 7420 6172 6520 646f 6e65  t point are done
│ │ │ +001a1050: 2e0a 2020 2020 2020 2020 6d6f 756e 745f  ..        mount_
│ │ │ +001a1060: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001a1070: 7870 3d22 2428 7072 696e 7466 2022 5e5b  xp="$(printf "^[
│ │ │ +001a1080: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e  [:space:]]*[^#].
│ │ │ +001a1090: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b  *[[:space:]]%s[[
│ │ │ +001a10a0: 3a73 7061 6365 3a5d 5d22 2022 2f74 6d70  :space:]]" "/tmp
│ │ │ +001a10b0: 2229 220a 0a20 2020 2067 7265 7020 2224  ")"..    grep "$
│ │ │ +001a10c0: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001a10d0: 685f 7265 6765 7870 2220 2d71 202f 6574  h_regexp" -q /et
│ │ │ +001a10e0: 632f 6673 7461 6220 5c0a 2020 2020 2020  c/fstab \.      
│ │ │ +001a10f0: 2020 7c7c 207b 2065 6368 6f20 2254 6865    || { echo "The
│ │ │ +001a1100: 206d 6f75 6e74 2070 6f69 6e74 2027 2f74   mount point '/t
│ │ │ +001a1110: 6d70 2720 6973 206e 6f74 2065 7665 6e20  mp' is not even 
│ │ │ +001a1120: 696e 202f 6574 632f 6673 7461 622c 2073  in /etc/fstab, s
│ │ │ +001a1130: 6f20 7765 2063 616e 2774 2073 6574 2075  o we can't set u
│ │ │ +001a1140: 7020 6d6f 756e 7420 6f70 7469 6f6e 7322  p mount options"
│ │ │ +001a1150: 2026 6774 3b26 616d 703b 323b 0a20 2020   >&2;.   
│ │ │ +001a1160: 2020 2020 2020 2020 2020 2020 2065 6368               ech
│ │ │ +001a1170: 6f20 224e 6f74 2072 656d 6564 6961 7469  o "Not remediati
│ │ │ +001a1180: 6e67 2c20 6265 6361 7573 6520 7468 6572  ng, because ther
│ │ │ +001a1190: 6520 6973 206e 6f20 7265 636f 7264 206f  e is no record o
│ │ │ +001a11a0: 6620 2f74 6d70 2069 6e20 2f65 7463 2f66  f /tmp in /etc/f
│ │ │ +001a11b0: 7374 6162 2220 2667 743b 2661 6d70 3b32  stab" >&2
│ │ │ +001a11c0: 3b20 7265 7475 726e 2031 3b20 7d0a 2020  ; return 1; }.  
│ │ │ +001a11d0: 2020 0a0a 0a20 2020 206d 6f75 6e74 5f70    ...    mount_p
│ │ │ +001a11e0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001a11f0: 703d 2224 2870 7269 6e74 6620 225e 5b5b  p="$(printf "^[[
│ │ │ +001a1200: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a  :space:]]*[^#].*
│ │ │ +001a1210: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a  [[:space:]]%s[[:
│ │ │ +001a1220: 7370 6163 653a 5d5d 2220 2f74 6d70 2922  space:]]" /tmp)"
│ │ │ +001a1230: 0a0a 2020 2020 2320 4966 2074 6865 206d  ..    # If the m
│ │ │ +001a1240: 6f75 6e74 2070 6f69 6e74 2069 7320 6e6f  ount point is no
│ │ │ +001a1250: 7420 696e 202f 6574 632f 6673 7461 622c  t in /etc/fstab,
│ │ │ +001a1260: 2067 6574 2070 7265 7669 6f75 7320 6d6f   get previous mo
│ │ │ +001a1270: 756e 7420 6f70 7469 6f6e 7320 6672 6f6d  unt options from
│ │ │ +001a1280: 202f 6574 632f 6d74 6162 0a20 2020 2069   /etc/mtab.    i
│ │ │ +001a1290: 6620 2120 6772 6570 202d 7120 2224 6d6f  f ! grep -q "$mo
│ │ │ +001a12a0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001a12b0: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ +001a12c0: 6162 3b20 7468 656e 0a20 2020 2020 2020  ab; then.       
│ │ │ +001a12d0: 2023 2072 756e 7469 6d65 206f 7074 7320   # runtime opts 
│ │ │ +001a12e0: 7769 7468 6f75 7420 736f 6d65 2061 7574  without some aut
│ │ │ +001a12f0: 6f6d 6174 6963 206b 6572 6e65 6c2f 7573  omatic kernel/us
│ │ │ +001a1300: 6572 7370 6163 652d 6164 6465 6420 6465  erspace-added de
│ │ │ +001a1310: 6661 756c 7473 0a20 2020 2020 2020 2070  faults.        p
│ │ │ +001a1320: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001a1330: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ +001a1340: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001a1350: 6765 7870 2220 2f65 7463 2f6d 7461 6220  gexp" /etc/mtab 
│ │ │ +001a1360: 7c20 6865 6164 202d 3120 7c20 2061 776b  | head -1 |  awk
│ │ │ +001a1370: 2027 7b70 7269 6e74 2024 347d 2720 5c0a   '{print $4}' \.
│ │ │  001a1380: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -001a1390: 6563 686f 2022 4e6f 7420 7265 6d65 6469  echo "Not remedi
│ │ │ -001a13a0: 6174 696e 672c 2062 6563 6175 7365 2074  ating, because t
│ │ │ -001a13b0: 6865 7265 2069 7320 6e6f 2072 6563 6f72  here is no recor
│ │ │ -001a13c0: 6420 6f66 202f 746d 7020 696e 202f 6574  d of /tmp in /et
│ │ │ -001a13d0: 632f 6673 7461 6222 2026 6774 3b26 616d  c/fstab" >&am
│ │ │ -001a13e0: 703b 323b 2072 6574 7572 6e20 313b 207d  p;2; return 1; }
│ │ │ -001a13f0: 0a20 2020 200a 0a0a 2020 2020 6d6f 756e  .    ...    moun
│ │ │ -001a1400: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001a1410: 6765 7870 3d22 2428 7072 696e 7466 2022  gexp="$(printf "
│ │ │ -001a1420: 5e5b 5b3a 7370 6163 653a 5d5d 2a5b 5e23  ^[[:space:]]*[^#
│ │ │ -001a1430: 5d2e 2a5b 5b3a 7370 6163 653a 5d5d 2573  ].*[[:space:]]%s
│ │ │ -001a1440: 5b5b 3a73 7061 6365 3a5d 5d22 202f 746d  [[:space:]]" /tm
│ │ │ -001a1450: 7029 220a 0a20 2020 2023 2049 6620 7468  p)"..    # If th
│ │ │ -001a1460: 6520 6d6f 756e 7420 706f 696e 7420 6973  e mount point is
│ │ │ -001a1470: 206e 6f74 2069 6e20 2f65 7463 2f66 7374   not in /etc/fst
│ │ │ -001a1480: 6162 2c20 6765 7420 7072 6576 696f 7573  ab, get previous
│ │ │ -001a1490: 206d 6f75 6e74 206f 7074 696f 6e73 2066   mount options f
│ │ │ -001a14a0: 726f 6d20 2f65 7463 2f6d 7461 620a 2020  rom /etc/mtab.  
│ │ │ -001a14b0: 2020 6966 2021 2067 7265 7020 2d71 2022    if ! grep -q "
│ │ │ -001a14c0: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ -001a14d0: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ -001a14e0: 6673 7461 623b 2074 6865 6e0a 2020 2020  fstab; then.    
│ │ │ -001a14f0: 2020 2020 2320 7275 6e74 696d 6520 6f70      # runtime op
│ │ │ -001a1500: 7473 2077 6974 686f 7574 2073 6f6d 6520  ts without some 
│ │ │ -001a1510: 6175 746f 6d61 7469 6320 6b65 726e 656c  automatic kernel
│ │ │ -001a1520: 2f75 7365 7273 7061 6365 2d61 6464 6564  /userspace-added
│ │ │ -001a1530: 2064 6566 6175 6c74 730a 2020 2020 2020   defaults.      
│ │ │ -001a1540: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ -001a1550: 5f6f 7074 733d 2428 6772 6570 2022 246d  _opts=$(grep "$m
│ │ │ -001a1560: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001a1570: 5f72 6567 6578 7022 202f 6574 632f 6d74  _regexp" /etc/mt
│ │ │ -001a1580: 6162 207c 2068 6561 6420 2d31 207c 2020  ab | head -1 |  
│ │ │ -001a1590: 6177 6b20 277b 7072 696e 7420 2434 7d27  awk '{print $4}'
│ │ │ -001a15a0: 205c 0a20 2020 2020 2020 2020 2020 2020   \.             
│ │ │ -001a15b0: 2020 2020 2020 207c 2073 6564 202d 4520         | sed -E 
│ │ │ -001a15c0: 2273 2f28 7277 7c64 6566 6175 6c74 737c  "s/(rw|defaults|
│ │ │ -001a15d0: 7365 636c 6162 656c 7c6e 6f64 6576 2928  seclabel|nodev)(
│ │ │ -001a15e0: 2c7c 2429 2f2f 673b 732f 2c24 2f2f 2229  ,|$)//g;s/,$//")
│ │ │ -001a15f0: 0a20 2020 2020 2020 205b 2022 2470 7265  .        [ "$pre
│ │ │ -001a1600: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ -001a1610: 2220 5d20 2661 6d70 3b26 616d 703b 2070  " ] && p
│ │ │ -001a1620: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001a1630: 7473 2b3d 222c 220a 2020 2020 2020 2020  ts+=",".        
│ │ │ -001a1640: 2320 496e 2069 736f 3936 3630 2066 696c  # In iso9660 fil
│ │ │ -001a1650: 6573 7973 7465 6d73 206d 7461 6220 636f  esystems mtab co
│ │ │ -001a1660: 756c 6420 6465 7363 7269 6265 2061 2022  uld describe a "
│ │ │ -001a1670: 626c 6f63 6b73 697a 6522 2076 616c 7565  blocksize" value
│ │ │ -001a1680: 2c20 7468 6973 2073 686f 756c 6420 6265  , this should be
│ │ │ -001a1690: 2072 6566 6c65 6374 6564 2069 6e0a 2020   reflected in.  
│ │ │ -001a16a0: 2020 2020 2020 2320 6673 7461 6220 6173        # fstab as
│ │ │ -001a16b0: 2022 626c 6f63 6b22 2e20 2054 6865 206e   "block".  The n
│ │ │ -001a16c0: 6578 7420 7661 7269 6162 6c65 2069 7320  ext variable is 
│ │ │ -001a16d0: 746f 2073 6174 6973 6679 2073 6865 6c6c  to satisfy shell
│ │ │ -001a16e0: 6368 6563 6b20 5343 3230 3530 2e0a 2020  check SC2050..  
│ │ │ -001a16f0: 2020 2020 2020 6673 5f74 7970 653d 2222        fs_type=""
│ │ │ -001a1700: 0a20 2020 2020 2020 2069 6620 5b20 2022  .        if [  "
│ │ │ -001a1710: 2466 735f 7479 7065 2220 3d3d 2022 6973  $fs_type" == "is
│ │ │ -001a1720: 6f39 3636 3022 205d 203b 2074 6865 6e0a  o9660" ] ; then.
│ │ │ -001a1730: 2020 2020 2020 2020 2020 2020 7072 6576              prev
│ │ │ -001a1740: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d  ious_mount_opts=
│ │ │ -001a1750: 2428 7365 6420 2773 2f62 6c6f 636b 7369  $(sed 's/blocksi
│ │ │ -001a1760: 7a65 3d2f 626c 6f63 6b3d 2f27 2026 6c74  ze=/block=/' <
│ │ │ -001a1770: 3b26 6c74 3b26 6c74 3b20 2224 7072 6576  ;<< "$prev
│ │ │ -001a1780: 696f 7573 5f6d 6f75 6e74 5f6f 7074 7322  ious_mount_opts"
│ │ │ -001a1790: 290a 2020 2020 2020 2020 6669 0a20 2020  ).        fi.   
│ │ │ -001a17a0: 2020 2020 2065 6368 6f20 2220 2f74 6d70       echo " /tmp
│ │ │ -001a17b0: 2020 6465 6661 756c 7473 2c24 7b70 7265    defaults,${pre
│ │ │ -001a17c0: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ -001a17d0: 7d6e 6f64 6576 2030 2030 2220 2667 743b  }nodev 0 0" >
│ │ │ -001a17e0: 2667 743b 202f 6574 632f 6673 7461 620a  > /etc/fstab.
│ │ │ -001a17f0: 2020 2020 2320 4966 2074 6865 206d 6f75      # If the mou
│ │ │ -001a1800: 6e74 5f6f 7074 206f 7074 696f 6e20 6973  nt_opt option is
│ │ │ -001a1810: 206e 6f74 2061 6c72 6561 6479 2069 6e20   not already in 
│ │ │ -001a1820: 7468 6520 6d6f 756e 7420 706f 696e 7427  the mount point'
│ │ │ -001a1830: 7320 2f65 7463 2f66 7374 6162 2065 6e74  s /etc/fstab ent
│ │ │ -001a1840: 7279 2c20 6164 6420 6974 0a20 2020 2065  ry, add it.    e
│ │ │ -001a1850: 6c69 6620 2120 6772 6570 2022 246d 6f75  lif ! grep "$mou
│ │ │ -001a1860: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001a1870: 6567 6578 7022 202f 6574 632f 6673 7461  egexp" /etc/fsta
│ │ │ -001a1880: 6220 7c20 6772 6570 202d 7120 226e 6f64  b | grep -q "nod
│ │ │ -001a1890: 6576 223b 2074 6865 6e0a 2020 2020 2020  ev"; then.      
│ │ │ -001a18a0: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ -001a18b0: 5f6f 7074 733d 2428 6772 6570 2022 246d  _opts=$(grep "$m
│ │ │ -001a18c0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001a18d0: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ -001a18e0: 7461 6220 7c20 6177 6b20 277b 7072 696e  tab | awk '{prin
│ │ │ -001a18f0: 7420 2434 7d27 290a 2020 2020 2020 2020  t $4}').        
│ │ │ -001a1900: 7365 6420 2d69 2022 737c 5c28 247b 6d6f  sed -i "s|\(${mo
│ │ │ -001a1910: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001a1920: 7265 6765 7870 7d2e 2a24 7b70 7265 7669  regexp}.*${previ
│ │ │ -001a1930: 6f75 735f 6d6f 756e 745f 6f70 7473 7d5c  ous_mount_opts}\
│ │ │ -001a1940: 297c 5c31 2c6e 6f64 6576 7c22 202f 6574  )|\1,nodev|" /et
│ │ │ -001a1950: 632f 6673 7461 620a 2020 2020 6669 0a0a  c/fstab.    fi..
│ │ │ -001a1960: 0a20 2020 2069 6620 6d6b 6469 7220 2d70  .    if mkdir -p
│ │ │ -001a1970: 2022 2f74 6d70 223b 2074 6865 6e0a 2020   "/tmp"; then.  
│ │ │ -001a1980: 2020 2020 2020 6966 206d 6f75 6e74 706f        if mountpo
│ │ │ -001a1990: 696e 7420 2d71 2022 2f74 6d70 223b 2074  int -q "/tmp"; t
│ │ │ -001a19a0: 6865 6e0a 2020 2020 2020 2020 2020 2020  hen.            
│ │ │ -001a19b0: 6d6f 756e 7420 2d6f 2072 656d 6f75 6e74  mount -o remount
│ │ │ -001a19c0: 202d 2d74 6172 6765 7420 222f 746d 7022   --target "/tmp"
│ │ │ -001a19d0: 0a20 2020 2020 2020 2066 690a 2020 2020  .        fi.    
│ │ │ -001a19e0: 6669 0a7d 0a0a 7065 7266 6f72 6d5f 7265  fi.}..perform_re
│ │ │ -001a19f0: 6d65 6469 6174 696f 6e0a 0a65 6c73 650a  mediation..else.
│ │ │ -001a1a00: 2020 2020 2667 743b 2661 6d70 3b32 2065      >&2 e
│ │ │ -001a1a10: 6368 6f20 2752 656d 6564 6961 7469 6f6e  cho 'Remediation
│ │ │ -001a1a20: 2069 7320 6e6f 7420 6170 706c 6963 6162   is not applicab
│ │ │ -001a1a30: 6c65 2c20 6e6f 7468 696e 6720 7761 7320  le, nothing was 
│ │ │ -001a1a40: 646f 6e65 270a 6669 0a3c 2f63 6f64 653e  done'.fi.
│ │ │ +001a1390: 2020 2020 7c20 7365 6420 2d45 2022 732f      | sed -E "s/
│ │ │ +001a13a0: 2872 777c 6465 6661 756c 7473 7c73 6563  (rw|defaults|sec
│ │ │ +001a13b0: 6c61 6265 6c7c 6e6f 6465 7629 282c 7c24  label|nodev)(,|$
│ │ │ +001a13c0: 292f 2f67 3b73 2f2c 242f 2f22 290a 2020  )//g;s/,$//").  
│ │ │ +001a13d0: 2020 2020 2020 5b20 2224 7072 6576 696f        [ "$previo
│ │ │ +001a13e0: 7573 5f6d 6f75 6e74 5f6f 7074 7322 205d  us_mount_opts" ]
│ │ │ +001a13f0: 2026 616d 703b 2661 6d70 3b20 7072 6576   && prev
│ │ │ +001a1400: 696f 7573 5f6d 6f75 6e74 5f6f 7074 732b  ious_mount_opts+
│ │ │ +001a1410: 3d22 2c22 0a20 2020 2020 2020 2023 2049  =",".        # I
│ │ │ +001a1420: 6e20 6973 6f39 3636 3020 6669 6c65 7379  n iso9660 filesy
│ │ │ +001a1430: 7374 656d 7320 6d74 6162 2063 6f75 6c64  stems mtab could
│ │ │ +001a1440: 2064 6573 6372 6962 6520 6120 2262 6c6f   describe a "blo
│ │ │ +001a1450: 636b 7369 7a65 2220 7661 6c75 652c 2074  cksize" value, t
│ │ │ +001a1460: 6869 7320 7368 6f75 6c64 2062 6520 7265  his should be re
│ │ │ +001a1470: 666c 6563 7465 6420 696e 0a20 2020 2020  flected in.     
│ │ │ +001a1480: 2020 2023 2066 7374 6162 2061 7320 2262     # fstab as "b
│ │ │ +001a1490: 6c6f 636b 222e 2020 5468 6520 6e65 7874  lock".  The next
│ │ │ +001a14a0: 2076 6172 6961 626c 6520 6973 2074 6f20   variable is to 
│ │ │ +001a14b0: 7361 7469 7366 7920 7368 656c 6c63 6865  satisfy shellche
│ │ │ +001a14c0: 636b 2053 4332 3035 302e 0a20 2020 2020  ck SC2050..     
│ │ │ +001a14d0: 2020 2066 735f 7479 7065 3d22 220a 2020     fs_type="".  
│ │ │ +001a14e0: 2020 2020 2020 6966 205b 2020 2224 6673        if [  "$fs
│ │ │ +001a14f0: 5f74 7970 6522 203d 3d20 2269 736f 3936  _type" == "iso96
│ │ │ +001a1500: 3630 2220 5d20 3b20 7468 656e 0a20 2020  60" ] ; then.   
│ │ │ +001a1510: 2020 2020 2020 2020 2070 7265 7669 6f75           previou
│ │ │ +001a1520: 735f 6d6f 756e 745f 6f70 7473 3d24 2873  s_mount_opts=$(s
│ │ │ +001a1530: 6564 2027 732f 626c 6f63 6b73 697a 653d  ed 's/blocksize=
│ │ │ +001a1540: 2f62 6c6f 636b 3d2f 2720 266c 743b 266c  /block=/' <&l
│ │ │ +001a1550: 743b 266c 743b 2022 2470 7265 7669 6f75  t;< "$previou
│ │ │ +001a1560: 735f 6d6f 756e 745f 6f70 7473 2229 0a20  s_mount_opts"). 
│ │ │ +001a1570: 2020 2020 2020 2066 690a 2020 2020 2020         fi.      
│ │ │ +001a1580: 2020 6563 686f 2022 202f 746d 7020 2064    echo " /tmp  d
│ │ │ +001a1590: 6566 6175 6c74 732c 247b 7072 6576 696f  efaults,${previo
│ │ │ +001a15a0: 7573 5f6d 6f75 6e74 5f6f 7074 737d 6e6f  us_mount_opts}no
│ │ │ +001a15b0: 6465 7620 3020 3022 2026 6774 3b26 6774  dev 0 0" >>
│ │ │ +001a15c0: 3b20 2f65 7463 2f66 7374 6162 0a20 2020  ; /etc/fstab.   
│ │ │ +001a15d0: 2023 2049 6620 7468 6520 6d6f 756e 745f   # If the mount_
│ │ │ +001a15e0: 6f70 7420 6f70 7469 6f6e 2069 7320 6e6f  opt option is no
│ │ │ +001a15f0: 7420 616c 7265 6164 7920 696e 2074 6865  t already in the
│ │ │ +001a1600: 206d 6f75 6e74 2070 6f69 6e74 2773 202f   mount point's /
│ │ │ +001a1610: 6574 632f 6673 7461 6220 656e 7472 792c  etc/fstab entry,
│ │ │ +001a1620: 2061 6464 2069 740a 2020 2020 656c 6966   add it.    elif
│ │ │ +001a1630: 2021 2067 7265 7020 2224 6d6f 756e 745f   ! grep "$mount_
│ │ │ +001a1640: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001a1650: 7870 2220 2f65 7463 2f66 7374 6162 207c  xp" /etc/fstab |
│ │ │ +001a1660: 2067 7265 7020 2d71 2022 6e6f 6465 7622   grep -q "nodev"
│ │ │ +001a1670: 3b20 7468 656e 0a20 2020 2020 2020 2070  ; then.        p
│ │ │ +001a1680: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001a1690: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ +001a16a0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001a16b0: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ +001a16c0: 207c 2061 776b 2027 7b70 7269 6e74 2024   | awk '{print $
│ │ │ +001a16d0: 347d 2729 0a20 2020 2020 2020 2073 6564  4}').        sed
│ │ │ +001a16e0: 202d 6920 2273 7c5c 2824 7b6d 6f75 6e74   -i "s|\(${mount
│ │ │ +001a16f0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001a1700: 6578 707d 2e2a 247b 7072 6576 696f 7573  exp}.*${previous
│ │ │ +001a1710: 5f6d 6f75 6e74 5f6f 7074 737d 5c29 7c5c  _mount_opts}\)|\
│ │ │ +001a1720: 312c 6e6f 6465 767c 2220 2f65 7463 2f66  1,nodev|" /etc/f
│ │ │ +001a1730: 7374 6162 0a20 2020 2066 690a 0a0a 2020  stab.    fi...  
│ │ │ +001a1740: 2020 6966 206d 6b64 6972 202d 7020 222f    if mkdir -p "/
│ │ │ +001a1750: 746d 7022 3b20 7468 656e 0a20 2020 2020  tmp"; then.     
│ │ │ +001a1760: 2020 2069 6620 6d6f 756e 7470 6f69 6e74     if mountpoint
│ │ │ +001a1770: 202d 7120 222f 746d 7022 3b20 7468 656e   -q "/tmp"; then
│ │ │ +001a1780: 0a20 2020 2020 2020 2020 2020 206d 6f75  .            mou
│ │ │ +001a1790: 6e74 202d 6f20 7265 6d6f 756e 7420 2d2d  nt -o remount --
│ │ │ +001a17a0: 7461 7267 6574 2022 2f74 6d70 220a 2020  target "/tmp".  
│ │ │ +001a17b0: 2020 2020 2020 6669 0a20 2020 2066 690a        fi.    fi.
│ │ │ +001a17c0: 7d0a 0a70 6572 666f 726d 5f72 656d 6564  }..perform_remed
│ │ │ +001a17d0: 6961 7469 6f6e 0a0a 656c 7365 0a20 2020  iation..else.   
│ │ │ +001a17e0: 2026 6774 3b26 616d 703b 3220 6563 686f   >&2 echo
│ │ │ +001a17f0: 2027 5265 6d65 6469 6174 696f 6e20 6973   'Remediation is
│ │ │ +001a1800: 206e 6f74 2061 7070 6c69 6361 626c 652c   not applicable,
│ │ │ +001a1810: 206e 6f74 6869 6e67 2077 6173 2064 6f6e   nothing was don
│ │ │ +001a1820: 6527 0a66 690a 3c2f 636f 6465 3e3c 2f70  e'.fi.

Remediatio │ │ │ +001a18e0: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ +001a18f0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +001a1970: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +001a1980: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +001a1990: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:highReboo │ │ │ +001a19d0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +001a19e0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ +001a1a00: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ +001a1a10: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.part /tm
│ │ │ +001a1a30: 7020 2d2d 6d6f 756e 746f 7074 696f 6e73  p --mountoptions
│ │ │ +001a1a40: 3d22 6e6f 6465 7622 0a3c 2f63 6f64 653e  ="nodev".
│ │ │  001a1a50: 3c2f 7072 653e 3c2f 6469 763e 3c2f 6469  
Reme │ │ │ -001a2b00: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ -001a2b10: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -001a2b20: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -001a2bc0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr> │ │ │ -001a2c10: 3c74 723e 3c74 683e 5374 7261 7465 6779
.pa
│ │ │ -001a2c50: 7274 202f 746d 7020 2d2d 6d6f 756e 746f  rt /tmp --mounto
│ │ │ -001a2c60: 7074 696f 6e73 3d22 6e6f 6578 6563 220a  ptions="noexec".
│ │ │ -001a2c70: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -001a2d20: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -001a2d30: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -001a2d40: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
Co │ │ │ -001a2ba0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -001a2bd0: 6e3a 3c2f 7468 3e3c 7464 3e68 6967 683c n:high< │ │ │ -001a2be0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -001a2c20: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -001a2c30: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ -001a2e10: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -001a2e20: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f │ │ │ -001a2e60: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:low
Disrup │ │ │ -001a2df0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6869 tion:hi │ │ │ -001a2e00: 6768 3c2f 7464 3e3c 2f74 723e 3c74 723e gh
Reboot:false
Strat │ │ │ -001a2e40: 6567 793a 3c2f 7468 3e3c 7464 3e63 6f6e egy:con │ │ │ -001a2e50: 6669 6775 7265 3c2f 7464 3e3c 2f74 723e figure
- name: Gathe
│ │ │ -001a2e80: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ -001a2e90: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ -001a2ea0: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ -001a2eb0: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ -001a2ec0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001a2ed0: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ -001a2ee0: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ -001a2ef0: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -001a2f00: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001a2f10: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ -001a2f20: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001a2f30: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ -001a2f40: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ -001a2f50: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -001a2f60: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -001a2f70: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -001a2f80: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -001a2f90: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -001a2fa0: 6f75 6e74 5f6f 7074 696f 6e5f 746d 705f  ount_option_tmp_
│ │ │ -001a2fb0: 6e6f 6578 6563 0a20 202d 206e 6f5f 7265  noexec.  - no_re
│ │ │ -001a2fc0: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -001a2fd0: 616d 653a 2027 4164 6420 6e6f 6578 6563  ame: 'Add noexec
│ │ │ -001a2fe0: 204f 7074 696f 6e20 746f 202f 746d 703a   Option to /tmp:
│ │ │ -001a2ff0: 2043 6865 636b 2069 6e66 6f72 6d61 7469   Check informati
│ │ │ -001a3000: 6f6e 2061 7373 6f63 6961 7465 6420 746f  on associated to
│ │ │ -001a3010: 206d 6f75 6e74 706f 696e 7427 0a20 2061   mountpoint'.  a
│ │ │ -001a3020: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ -001a3030: 6f6d 6d61 6e64 3a20 6669 6e64 6d6e 7420  ommand: findmnt 
│ │ │ -001a3040: 2d2d 6673 7461 6220 272f 746d 7027 0a20  --fstab '/tmp'. 
│ │ │ -001a3050: 2072 6567 6973 7465 723a 2064 6576 6963   register: devic
│ │ │ -001a3060: 655f 6e61 6d65 0a20 2066 6169 6c65 645f  e_name.  failed_
│ │ │ -001a3070: 7768 656e 3a20 6465 7669 6365 5f6e 616d  when: device_nam
│ │ │ -001a3080: 652e 7263 2026 6774 3b20 310a 2020 6368  e.rc > 1.  ch
│ │ │ -001a3090: 616e 6765 645f 7768 656e 3a20 6661 6c73  anged_when: fals
│ │ │ -001a30a0: 650a 2020 6368 6563 6b5f 6d6f 6465 3a20  e.  check_mode: 
│ │ │ -001a30b0: 6661 6c73 650a 2020 7768 656e 3a0a 2020  false.  when:.  
│ │ │ -001a30c0: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ -001a30d0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -001a30e0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001a30f0: 2022 7270 6d2d 6f73 7472 6565 2220 696e   "rpm-ostree" in
│ │ │ -001a3100: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001a3110: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001a3120: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ -001a3130: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001a3140: 7320 616e 6420 6e6f 7420 226f 7065 6e73  s and not "opens
│ │ │ -001a3150: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ -001a3160: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001a3170: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001a3180: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ -001a3190: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ -001a31a0: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ -001a31b0: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ -001a31c0: 696f 6e5f 7479 7065 2069 6e0a 2020 2020  ion_type in.    
│ │ │ -001a31d0: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ -001a31e0: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ -001a31f0: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572  man", "container
│ │ │ -001a3200: 225d 2029 2029 0a20 202d 2027 222f 746d  "] ) ).  - '"/tm
│ │ │ -001a3210: 7022 2069 6e20 616e 7369 626c 655f 6d6f  p" in ansible_mo
│ │ │ -001a3220: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ -001a3230: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ -001a3240: 6c69 7374 270a 2020 7461 6773 3a0a 2020  list'.  tags:.  
│ │ │ -001a3250: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001a3260: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ -001a3270: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ -001a3280: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -001a3290: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -001a32a0: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ -001a32b0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -001a32c0: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ -001a32d0: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ -001a32e0: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -001a32f0: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -001a3300: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -001a3310: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -001a3320: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -001a3330: 756e 745f 6f70 7469 6f6e 5f74 6d70 5f6e  unt_option_tmp_n
│ │ │ -001a3340: 6f65 7865 630a 2020 2d20 6e6f 5f72 6562  oexec.  - no_reb
│ │ │ -001a3350: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61  oot_needed..- na
│ │ │ -001a3360: 6d65 3a20 2741 6464 206e 6f65 7865 6320  me: 'Add noexec 
│ │ │ -001a3370: 4f70 7469 6f6e 2074 6f20 2f74 6d70 3a20  Option to /tmp: 
│ │ │ -001a3380: 4372 6561 7465 206d 6f75 6e74 5f69 6e66  Create mount_inf
│ │ │ -001a3390: 6f20 6469 6374 696f 6e61 7279 2076 6172  o dictionary var
│ │ │ -001a33a0: 6961 626c 6527 0a20 2073 6574 5f66 6163  iable'.  set_fac
│ │ │ -001a33b0: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66  t:.    mount_inf
│ │ │ -001a33c0: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66  o: '{{ mount_inf
│ │ │ -001a33d0: 6f7c 6465 6661 756c 7428 7b7d 297c 636f  o|default({})|co
│ │ │ -001a33e0: 6d62 696e 6528 7b69 7465 6d2e 303a 2069  mbine({item.0: i
│ │ │ -001a33f0: 7465 6d2e 317d 2920 7d7d 270a 2020 7769  tem.1}) }}'.  wi
│ │ │ -001a3400: 7468 5f74 6f67 6574 6865 723a 0a20 202d  th_together:.  -
│ │ │ -001a3410: 2027 7b7b 2064 6576 6963 655f 6e61 6d65   '{{ device_name
│ │ │ -001a3420: 2e73 7464 6f75 745f 6c69 6e65 735b 305d  .stdout_lines[0]
│ │ │ -001a3430: 2e73 706c 6974 2829 207c 206d 6170 2827  .split() | map('
│ │ │ -001a3440: 276c 6f77 6572 2727 2920 7c20 6c69 7374  'lower'') | list
│ │ │ -001a3450: 207d 7d27 0a20 202d 2027 7b7b 2064 6576   }}'.  - '{{ dev
│ │ │ -001a3460: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ -001a3470: 6c69 6e65 735b 315d 2e73 706c 6974 2829  lines[1].split()
│ │ │ -001a3480: 207c 206c 6973 7420 7d7d 270a 2020 7768   | list }}'.  wh
│ │ │ -001a3490: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ -001a34a0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -001a34b0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001a34c0: 6573 2061 6e64 2022 7270 6d2d 6f73 7472  es and "rpm-ostr
│ │ │ -001a34d0: 6565 2220 696e 2061 6e73 6962 6c65 5f66  ee" in ansible_f
│ │ │ -001a34e0: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -001a34f0: 2020 616e 6420 2262 6f6f 7463 2220 696e    and "bootc" in
│ │ │ -001a3500: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001a3510: 6163 6b61 6765 7320 616e 6420 6e6f 7420  ackages and not 
│ │ │ -001a3520: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ -001a3530: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ -001a3540: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -001a3550: 2020 616e 6420 226f 7374 7265 6522 2069    and "ostree" i
│ │ │ -001a3560: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ -001a3570: 6d64 6c69 6e65 2029 2061 6e64 206e 6f74  mdline ) and not
│ │ │ -001a3580: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ -001a3590: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ -001a35a0: 6e0a 2020 2020 5b22 646f 636b 6572 222c  n.    ["docker",
│ │ │ -001a35b0: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ -001a35c0: 2c20 2270 6f64 6d61 6e22 2c20 2263 6f6e  , "podman", "con
│ │ │ -001a35d0: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ -001a35e0: 2027 222f 746d 7022 2069 6e20 616e 7369   '"/tmp" in ansi
│ │ │ -001a35f0: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ -001a3600: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ -001a3610: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ -001a3620: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001a3630: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ -001a3640: 6420 6465 7669 6365 5f6e 616d 652e 7374  d device_name.st
│ │ │ -001a3650: 646f 7574 5f6c 696e 6573 2069 7320 6465  dout_lines is de
│ │ │ -001a3660: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ -001a3670: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ -001a3680: 6c65 6e67 7468 2026 6774 3b20 3029 0a20  length > 0). 
│ │ │ -001a3690: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -001a36a0: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ -001a36b0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001a36c0: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ -001a36d0: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -001a36e0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001a36f0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001a3700: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ -001a3710: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ -001a3720: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -001a3730: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -001a3740: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001a3750: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001a3760: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001a3770: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -001a3780: 696f 6e5f 746d 705f 6e6f 6578 6563 0a20  ion_tmp_noexec. 
│ │ │ -001a3790: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -001a37a0: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ -001a37b0: 6420 6e6f 6578 6563 204f 7074 696f 6e20  d noexec Option 
│ │ │ -001a37c0: 746f 202f 746d 703a 2049 6620 2f74 6d70  to /tmp: If /tmp
│ │ │ -001a37d0: 206e 6f74 206d 6f75 6e74 6564 2c20 6372   not mounted, cr
│ │ │ -001a37e0: 6166 7420 6d6f 756e 745f 696e 666f 206d  aft mount_info m
│ │ │ -001a37f0: 616e 7561 6c6c 7927 0a20 2073 6574 5f66  anually'.  set_f
│ │ │ -001a3800: 6163 743a 0a20 2020 206d 6f75 6e74 5f69  act:.    mount_i
│ │ │ -001a3810: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69  nfo: '{{ mount_i
│ │ │ -001a3820: 6e66 6f7c 6465 6661 756c 7428 7b7d 297c  nfo|default({})|
│ │ │ -001a3830: 636f 6d62 696e 6528 7b69 7465 6d2e 303a  combine({item.0:
│ │ │ -001a3840: 2069 7465 6d2e 317d 2920 7d7d 270a 2020   item.1}) }}'.  
│ │ │ -001a3850: 7769 7468 5f74 6f67 6574 6865 723a 0a20  with_together:. 
│ │ │ -001a3860: 202d 202d 2074 6172 6765 740a 2020 2020   - - target.    
│ │ │ -001a3870: 2d20 736f 7572 6365 0a20 2020 202d 2066  - source.    - f
│ │ │ -001a3880: 7374 7970 650a 2020 2020 2d20 6f70 7469  stype.    - opti
│ │ │ -001a3890: 6f6e 730a 2020 2d20 2d20 2f74 6d70 0a20  ons.  - - /tmp. 
│ │ │ -001a38a0: 2020 202d 2027 270a 2020 2020 2d20 2727     - ''.    - ''
│ │ │ -001a38b0: 0a20 2020 202d 2064 6566 6175 6c74 730a  .    - defaults.
│ │ │ -001a38c0: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ -001a38d0: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ -001a38e0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001a38f0: 636b 6167 6573 2061 6e64 2022 7270 6d2d  ckages and "rpm-
│ │ │ -001a3900: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001a3910: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001a3920: 730a 2020 2020 616e 6420 2262 6f6f 7463  s.    and "bootc
│ │ │ -001a3930: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001a3940: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001a3950: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ -001a3960: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ -001a3970: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001a3980: 730a 2020 2020 616e 6420 226f 7374 7265  s.    and "ostre
│ │ │ -001a3990: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ -001a39a0: 6f63 5f63 6d64 6c69 6e65 2029 2061 6e64  oc_cmdline ) and
│ │ │ -001a39b0: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ -001a39c0: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ -001a39d0: 7065 2069 6e0a 2020 2020 5b22 646f 636b  pe in.    ["dock
│ │ │ -001a39e0: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ -001a39f0: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c20  nvz", "podman", 
│ │ │ -001a3a00: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ -001a3a10: 0a20 202d 2027 222f 746d 7022 2069 6e20  .  - '"/tmp" in 
│ │ │ -001a3a20: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ -001a3a30: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ -001a3a40: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ -001a3a50: 2020 2d20 2822 2d2d 6673 7461 6222 207c    - ("--fstab" |
│ │ │ -001a3a60: 206c 656e 6774 6820 3d3d 2030 290a 2020   length == 0).  
│ │ │ -001a3a70: 2d20 6465 7669 6365 5f6e 616d 652e 7374  - device_name.st
│ │ │ -001a3a80: 646f 7574 2069 7320 6465 6669 6e65 6420  dout is defined 
│ │ │ -001a3a90: 616e 6420 6465 7669 6365 5f6e 616d 652e  and device_name.
│ │ │ -001a3aa0: 7374 646f 7574 5f6c 696e 6573 2069 7320  stdout_lines is 
│ │ │ -001a3ab0: 6465 6669 6e65 640a 2020 2d20 2864 6576  defined.  - (dev
│ │ │ -001a3ac0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ -001a3ad0: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ -001a3ae0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -001a3af0: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ -001a3b00: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001a3b10: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ -001a3b20: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -001a3b30: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001a3b40: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001a3b50: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ -001a3b60: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ -001a3b70: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -001a3b80: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -001a3b90: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001a3ba0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001a3bb0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001a3bc0: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -001a3bd0: 696f 6e5f 746d 705f 6e6f 6578 6563 0a20  ion_tmp_noexec. 
│ │ │ -001a3be0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -001a3bf0: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ -001a3c00: 6420 6e6f 6578 6563 204f 7074 696f 6e20  d noexec Option 
│ │ │ -001a3c10: 746f 202f 746d 703a 204d 616b 6520 7375  to /tmp: Make su
│ │ │ -001a3c20: 7265 206e 6f65 7865 6320 6f70 7469 6f6e  re noexec option
│ │ │ -001a3c30: 2069 7320 7061 7274 206f 6620 7468 6520   is part of the 
│ │ │ -001a3c40: 746f 202f 746d 700a 2020 2020 6f70 7469  to /tmp.    opti
│ │ │ -001a3c50: 6f6e 7327 0a20 2073 6574 5f66 6163 743a  ons'.  set_fact:
│ │ │ -001a3c60: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ -001a3c70: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f20   '{{ mount_info 
│ │ │ -001a3c80: 7c20 636f 6d62 696e 6528 207b 2727 6f70  | combine( {''op
│ │ │ -001a3c90: 7469 6f6e 7327 273a 2727 2727 7e28 6d6f  tions'':''''~(mo
│ │ │ -001a3ca0: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ -001a3cb0: 207c 0a20 2020 2020 2064 6566 6175 6c74   |.      default
│ │ │ -001a3cc0: 2827 2727 2729 297e 2827 272c 2727 2069  (''''))~('','' i
│ │ │ -001a3cd0: 6620 286d 6f75 6e74 5f69 6e66 6f2e 6f70  f (mount_info.op
│ │ │ -001a3ce0: 7469 6f6e 7320 7c20 6465 6661 756c 7428  tions | default(
│ │ │ -001a3cf0: 2727 2727 2929 2065 6c73 6520 2727 2727  '''')) else ''''
│ │ │ -001a3d00: 297e 2727 6e6f 6578 6563 2727 0a20 2020  )~''noexec''.   
│ │ │ -001a3d10: 2020 207d 2920 7d7d 270a 2020 7768 656e     }) }}'.  when
│ │ │ -001a3d20: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ -001a3d30: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -001a3d40: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001a3d50: 2061 6e64 2022 7270 6d2d 6f73 7472 6565   and "rpm-ostree
│ │ │ -001a3d60: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001a3d70: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001a3d80: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ -001a3d90: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001a3da0: 6b61 6765 7320 616e 6420 6e6f 7420 226f  kages and not "o
│ │ │ -001a3db0: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ -001a3dc0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001a3dd0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001a3de0: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ -001a3df0: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ -001a3e00: 6c69 6e65 2029 2061 6e64 206e 6f74 2028  line ) and not (
│ │ │ -001a3e10: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ -001a3e20: 697a 6174 696f 6e5f 7479 7065 2069 6e0a  ization_type in.
│ │ │ -001a3e30: 2020 2020 5b22 646f 636b 6572 222c 2022      ["docker", "
│ │ │ -001a3e40: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ -001a3e50: 2270 6f64 6d61 6e22 2c20 2263 6f6e 7461  "podman", "conta
│ │ │ -001a3e60: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ -001a3e70: 222f 746d 7022 2069 6e20 616e 7369 626c  "/tmp" in ansibl
│ │ │ -001a3e80: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ -001a3e90: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ -001a3ea0: 2920 7c20 6c69 7374 270a 2020 2d20 6d6f  ) | list'.  - mo
│ │ │ -001a3eb0: 756e 745f 696e 666f 2069 7320 6465 6669  unt_info is defi
│ │ │ -001a3ec0: 6e65 6420 616e 6420 226e 6f65 7865 6322  ned and "noexec"
│ │ │ -001a3ed0: 206e 6f74 2069 6e20 286d 6f75 6e74 5f69   not in (mount_i
│ │ │ -001a3ee0: 6e66 6f2e 6f70 7469 6f6e 7320 7c20 6465  nfo.options | de
│ │ │ -001a3ef0: 6661 756c 7428 2727 2929 0a20 2074 6167  fault('')).  tag
│ │ │ -001a3f00: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ -001a3f10: 3533 2d41 432d 360a 2020 2d20 4e49 5354  53-AC-6.  - NIST
│ │ │ -001a3f20: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ -001a3f30: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001a3f40: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ -001a3f50: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ -001a3f60: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001a3f70: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ -001a3f80: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d  -800-53-MP-7.  -
│ │ │ -001a3f90: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ -001a3fa0: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ -001a3fb0: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -001a3fc0: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -001a3fd0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -001a3fe0: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ -001a3ff0: 746d 705f 6e6f 6578 6563 0a20 202d 206e  tmp_noexec.  - n
│ │ │ -001a4000: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -001a4010: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ -001a4020: 6578 6563 204f 7074 696f 6e20 746f 202f  exec Option to /
│ │ │ -001a4030: 746d 703a 2045 6e73 7572 6520 2f74 6d70  tmp: Ensure /tmp
│ │ │ -001a4040: 2069 7320 6d6f 756e 7465 6420 7769 7468   is mounted with
│ │ │ -001a4050: 206e 6f65 7865 6320 6f70 7469 6f6e 270a   noexec option'.
│ │ │ -001a4060: 2020 616e 7369 626c 652e 706f 7369 782e    ansible.posix.
│ │ │ -001a4070: 6d6f 756e 743a 0a20 2020 2070 6174 683a  mount:.    path:
│ │ │ -001a4080: 202f 746d 700a 2020 2020 7372 633a 2027   /tmp.    src: '
│ │ │ -001a4090: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 736f  {{ mount_info.so
│ │ │ -001a40a0: 7572 6365 207c 2064 6566 6175 6c74 2827  urce | default('
│ │ │ -001a40b0: 2727 2729 207d 7d27 0a20 2020 206f 7074  ''') }}'.    opt
│ │ │ -001a40c0: 733a 2027 7b7b 206d 6f75 6e74 5f69 6e66  s: '{{ mount_inf
│ │ │ -001a40d0: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ -001a40e0: 756c 7428 2727 2727 2920 7d7d 270a 2020  ult('''') }}'.  
│ │ │ -001a40f0: 2020 7374 6174 653a 206d 6f75 6e74 6564    state: mounted
│ │ │ -001a4100: 0a20 2020 2066 7374 7970 653a 2027 7b7b  .    fstype: '{{
│ │ │ -001a4110: 206d 6f75 6e74 5f69 6e66 6f2e 6673 7479   mount_info.fsty
│ │ │ -001a4120: 7065 207c 2064 6566 6175 6c74 2827 2727  pe | default('''
│ │ │ -001a4130: 2729 207d 7d27 0a20 2072 6567 6973 7465  ') }}'.  registe
│ │ │ -001a4140: 723a 206d 6f75 6e74 5f72 6573 756c 740a  r: mount_result.
│ │ │ -001a4150: 2020 6661 696c 6564 5f77 6865 6e3a 0a20    failed_when:. 
│ │ │ -001a4160: 202d 206d 6f75 6e74 5f72 6573 756c 7420   - mount_result 
│ │ │ -001a4170: 6973 2066 6169 6c65 640a 2020 2d20 2727  is failed.  - ''
│ │ │ -001a4180: 2774 6172 6765 7420 6973 2062 7573 7927  'target is busy'
│ │ │ -001a4190: 2720 6e6f 7420 696e 2028 6d6f 756e 745f  ' not in (mount_
│ │ │ -001a41a0: 7265 7375 6c74 2e6d 7367 207c 2064 6566  result.msg | def
│ │ │ -001a41b0: 6175 6c74 2827 2727 2729 2927 0a20 202d  ault(''''))'.  -
│ │ │ -001a41c0: 2027 2727 616c 7265 6164 7920 6d6f 756e   '''already moun
│ │ │ -001a41d0: 7465 6427 2720 6e6f 7420 696e 2028 6d6f  ted'' not in (mo
│ │ │ -001a41e0: 756e 745f 7265 7375 6c74 2e6d 7367 207c  unt_result.msg |
│ │ │ -001a41f0: 2064 6566 6175 6c74 2827 2727 2729 2927   default(''''))'
│ │ │ -001a4200: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ -001a4210: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ -001a4220: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001a4230: 6163 6b61 6765 7320 616e 6420 2272 706d  ackages and "rpm
│ │ │ -001a4240: 2d6f 7374 7265 6522 2069 6e20 616e 7369  -ostree" in ansi
│ │ │ -001a4250: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001a4260: 6573 0a20 2020 2061 6e64 2022 626f 6f74  es.    and "boot
│ │ │ -001a4270: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ -001a4280: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001a4290: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ -001a42a0: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ -001a42b0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001a42c0: 6573 0a20 2020 2061 6e64 2022 6f73 7472  es.    and "ostr
│ │ │ -001a42d0: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ -001a42e0: 726f 635f 636d 646c 696e 6520 2920 616e  roc_cmdline ) an
│ │ │ -001a42f0: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ -001a4300: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ -001a4310: 7970 6520 696e 0a20 2020 205b 2264 6f63  ype in.    ["doc
│ │ │ -001a4320: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ -001a4330: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ -001a4340: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ -001a4350: 290a 2020 2d20 2722 2f74 6d70 2220 696e  ).  - '"/tmp" in
│ │ │ -001a4360: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ -001a4370: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ -001a4380: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ -001a4390: 0a20 202d 206d 6f75 6e74 5f69 6e66 6f20  .  - mount_info 
│ │ │ -001a43a0: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ -001a43b0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001a43c0: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ -001a43d0: 6420 2864 6576 6963 655f 6e61 6d65 2e73  d (device_name.s
│ │ │ -001a43e0: 7464 6f75 7420 7c20 6c65 6e67 7468 2026  tdout | length &
│ │ │ -001a43f0: 6774 3b20 3029 2920 6f72 2028 222d 2d66  gt; 0)) or ("--f
│ │ │ -001a4400: 7374 6162 220a 2020 2020 7c20 6c65 6e67  stab".    | leng
│ │ │ -001a4410: 7468 203d 3d20 3029 0a20 2074 6167 733a  th == 0).  tags:
│ │ │ -001a4420: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001a4430: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ -001a4440: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ -001a4450: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001a4460: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -001a4470: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ -001a4480: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001a4490: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ -001a44a0: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ -001a44b0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001a44c0: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -001a44d0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -001a44e0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001a44f0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001a4500: 206d 6f75 6e74 5f6f 7074 696f 6e5f 746d   mount_option_tm
│ │ │ -001a4510: 705f 6e6f 6578 6563 0a20 202d 206e 6f5f  p_noexec.  - no_
│ │ │ -001a4520: 7265 626f 6f74 5f6e 6565 6465 640a 3c2f  reboot_needed.
Re │ │ │ -001a45e0: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ -001a45f0: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
# 
│ │ │ -001a46b0: 5265 6d65 6469 6174 696f 6e20 6973 2061  Remediation is a
│ │ │ -001a46c0: 7070 6c69 6361 626c 6520 6f6e 6c79 2069  pplicable only i
│ │ │ -001a46d0: 6e20 6365 7274 6169 6e20 706c 6174 666f  n certain platfo
│ │ │ -001a46e0: 726d 730a 6966 2028 2021 2028 207b 2072  rms.if ( ! ( { r
│ │ │ -001a46f0: 706d 202d 2d71 7569 6574 202d 7120 6b65  pm --quiet -q ke
│ │ │ -001a4700: 726e 656c 203b 7d20 2661 6d70 3b26 616d  rnel ;} &&am
│ │ │ -001a4710: 703b 207b 2072 706d 202d 2d71 7569 6574  p; { rpm --quiet
│ │ │ -001a4720: 202d 7120 7270 6d2d 6f73 7472 6565 203b   -q rpm-ostree ;
│ │ │ -001a4730: 7d20 2661 6d70 3b26 616d 703b 207b 2072  } && { r
│ │ │ -001a4740: 706d 202d 2d71 7569 6574 202d 7120 626f  pm --quiet -q bo
│ │ │ -001a4750: 6f74 6320 3b7d 2026 616d 703b 2661 6d70  otc ;} &&
│ │ │ -001a4760: 3b20 7b20 2120 7270 6d20 2d2d 7175 6965  ; { ! rpm --quie
│ │ │ -001a4770: 7420 2d71 206f 7065 6e73 6869 6674 2d6b  t -q openshift-k
│ │ │ -001a4780: 7562 656c 6574 203b 7d20 2661 6d70 3b26  ubelet ;} &&
│ │ │ -001a4790: 616d 703b 2028 5b20 2d66 202f 7275 6e2f  amp; ([ -f /run/
│ │ │ -001a47a0: 6f73 7472 6565 2d62 6f6f 7465 6420 5d20  ostree-booted ] 
│ │ │ -001a47b0: 7c7c 205b 202d 4c20 2f6f 7374 7265 6520  || [ -L /ostree 
│ │ │ -001a47c0: 5d29 2029 2026 616d 703b 2661 6d70 3b20  ]) ) && 
│ │ │ -001a47d0: 2120 2820 5b20 2d66 202f 2e64 6f63 6b65  ! ( [ -f /.docke
│ │ │ -001a47e0: 7265 6e76 205d 207c 7c20 5b20 2d66 202f  renv ] || [ -f /
│ │ │ -001a47f0: 7275 6e2f 2e63 6f6e 7461 696e 6572 656e  run/.containeren
│ │ │ -001a4800: 7620 5d20 2920 2920 2661 6d70 3b26 616d  v ] ) ) &&am
│ │ │ -001a4810: 703b 207b 2028 2066 696e 646d 6e74 202d  p; { ( findmnt -
│ │ │ -001a4820: 2d6b 6572 6e65 6c20 222f 746d 7022 2026  -kernel "/tmp" &
│ │ │ -001a4830: 6774 3b20 2f64 6576 2f6e 756c 6c20 7c7c  gt; /dev/null ||
│ │ │ -001a4840: 2066 696e 646d 6e74 202d 2d66 7374 6162   findmnt --fstab
│ │ │ -001a4850: 2022 2f74 6d70 2220 2667 743b 202f 6465   "/tmp" > /de
│ │ │ -001a4860: 762f 6e75 6c6c 2029 3b20 7d3b 2074 6865  v/null ); }; the
│ │ │ -001a4870: 6e0a 0a66 756e 6374 696f 6e20 7065 7266  n..function perf
│ │ │ -001a4880: 6f72 6d5f 7265 6d65 6469 6174 696f 6e20  orm_remediation 
│ │ │ -001a4890: 7b0a 0a20 2020 200a 2020 2020 2020 2020  {..    .        
│ │ │ -001a48a0: 2320 7468 6520 6d6f 756e 7420 706f 696e  # the mount poin
│ │ │ -001a48b0: 7420 2f74 6d70 2068 6173 2074 6f20 6265  t /tmp has to be
│ │ │ -001a48c0: 2064 6566 696e 6564 2069 6e20 2f65 7463   defined in /etc
│ │ │ -001a48d0: 2f66 7374 6162 0a20 2020 2020 2020 2023  /fstab.        #
│ │ │ -001a48e0: 2062 6566 6f72 6520 7468 6973 2072 656d   before this rem
│ │ │ -001a48f0: 6564 6961 7469 6f6e 2063 616e 2062 6520  ediation can be 
│ │ │ -001a4900: 6578 6563 7574 6564 2e20 496e 2063 6173  executed. In cas
│ │ │ -001a4910: 6520 6974 2069 7320 6e6f 7420 6465 6669  e it is not defi
│ │ │ -001a4920: 6e65 642c 2074 6865 0a20 2020 2020 2020  ned, the.       
│ │ │ -001a4930: 2023 2072 656d 6564 6961 7469 6f6e 2061   # remediation a
│ │ │ -001a4940: 626f 7274 7320 616e 6420 6e6f 2063 6861  borts and no cha
│ │ │ -001a4950: 6e67 6573 2072 6567 6172 6469 6e67 2074  nges regarding t
│ │ │ -001a4960: 6865 206d 6f75 6e74 2070 6f69 6e74 2061  he mount point a
│ │ │ -001a4970: 7265 2064 6f6e 652e 0a20 2020 2020 2020  re done..       
│ │ │ -001a4980: 206d 6f75 6e74 5f70 6f69 6e74 5f6d 6174   mount_point_mat
│ │ │ -001a4990: 6368 5f72 6567 6578 703d 2224 2870 7269  ch_regexp="$(pri
│ │ │ -001a49a0: 6e74 6620 225e 5b5b 3a73 7061 6365 3a5d  ntf "^[[:space:]
│ │ │ -001a49b0: 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061 6365  ]*[^#].*[[:space
│ │ │ -001a49c0: 3a5d 5d25 735b 5b3a 7370 6163 653a 5d5d  :]]%s[[:space:]]
│ │ │ -001a49d0: 2220 222f 746d 7022 2922 0a0a 2020 2020  " "/tmp")"..    
│ │ │ -001a49e0: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ -001a49f0: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ -001a4a00: 202d 7120 2f65 7463 2f66 7374 6162 205c   -q /etc/fstab \
│ │ │ -001a4a10: 0a20 2020 2020 2020 207c 7c20 7b20 6563  .        || { ec
│ │ │ -001a4a20: 686f 2022 5468 6520 6d6f 756e 7420 706f  ho "The mount po
│ │ │ -001a4a30: 696e 7420 272f 746d 7027 2069 7320 6e6f  int '/tmp' is no
│ │ │ -001a4a40: 7420 6576 656e 2069 6e20 2f65 7463 2f66  t even in /etc/f
│ │ │ -001a4a50: 7374 6162 2c20 736f 2077 6520 6361 6e27  stab, so we can'
│ │ │ -001a4a60: 7420 7365 7420 7570 206d 6f75 6e74 206f  t set up mount o
│ │ │ -001a4a70: 7074 696f 6e73 2220 2667 743b 2661 6d70  ptions" >&
│ │ │ -001a4a80: 3b32 3b0a 2020 2020 2020 2020 2020 2020  ;2;.            
│ │ │ -001a4a90: 2020 2020 6563 686f 2022 4e6f 7420 7265      echo "Not re
│ │ │ -001a4aa0: 6d65 6469 6174 696e 672c 2062 6563 6175  mediating, becau
│ │ │ -001a4ab0: 7365 2074 6865 7265 2069 7320 6e6f 2072  se there is no r
│ │ │ -001a4ac0: 6563 6f72 6420 6f66 202f 746d 7020 696e  ecord of /tmp in
│ │ │ -001a4ad0: 202f 6574 632f 6673 7461 6222 2026 6774   /etc/fstab" >
│ │ │ -001a4ae0: 3b26 616d 703b 323b 2072 6574 7572 6e20  ;&2; return 
│ │ │ -001a4af0: 313b 207d 0a20 2020 200a 0a0a 2020 2020  1; }.    ...    
│ │ │ -001a4b00: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001a4b10: 685f 7265 6765 7870 3d22 2428 7072 696e  h_regexp="$(prin
│ │ │ -001a4b20: 7466 2022 5e5b 5b3a 7370 6163 653a 5d5d  tf "^[[:space:]]
│ │ │ -001a4b30: 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163 653a  *[^#].*[[:space:
│ │ │ -001a4b40: 5d5d 2573 5b5b 3a73 7061 6365 3a5d 5d22  ]]%s[[:space:]]"
│ │ │ -001a4b50: 202f 746d 7029 220a 0a20 2020 2023 2049   /tmp)"..    # I
│ │ │ -001a4b60: 6620 7468 6520 6d6f 756e 7420 706f 696e  f the mount poin
│ │ │ -001a4b70: 7420 6973 206e 6f74 2069 6e20 2f65 7463  t is not in /etc
│ │ │ -001a4b80: 2f66 7374 6162 2c20 6765 7420 7072 6576  /fstab, get prev
│ │ │ -001a4b90: 696f 7573 206d 6f75 6e74 206f 7074 696f  ious mount optio
│ │ │ -001a4ba0: 6e73 2066 726f 6d20 2f65 7463 2f6d 7461  ns from /etc/mta
│ │ │ -001a4bb0: 620a 2020 2020 6966 2021 2067 7265 7020  b.    if ! grep 
│ │ │ -001a4bc0: 2d71 2022 246d 6f75 6e74 5f70 6f69 6e74  -q "$mount_point
│ │ │ -001a4bd0: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ -001a4be0: 6574 632f 6673 7461 623b 2074 6865 6e0a  etc/fstab; then.
│ │ │ -001a4bf0: 2020 2020 2020 2020 2320 7275 6e74 696d          # runtim
│ │ │ -001a4c00: 6520 6f70 7473 2077 6974 686f 7574 2073  e opts without s
│ │ │ -001a4c10: 6f6d 6520 6175 746f 6d61 7469 6320 6b65  ome automatic ke
│ │ │ -001a4c20: 726e 656c 2f75 7365 7273 7061 6365 2d61  rnel/userspace-a
│ │ │ -001a4c30: 6464 6564 2064 6566 6175 6c74 730a 2020  dded defaults.  
│ │ │ -001a4c40: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ -001a4c50: 6f75 6e74 5f6f 7074 733d 2428 6772 6570  ount_opts=$(grep
│ │ │ -001a4c60: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -001a4c70: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ -001a4c80: 632f 6d74 6162 207c 2068 6561 6420 2d31  c/mtab | head -1
│ │ │ -001a4c90: 207c 2020 6177 6b20 277b 7072 696e 7420   |  awk '{print 
│ │ │ -001a4ca0: 2434 7d27 205c 0a20 2020 2020 2020 2020  $4}' \.         
│ │ │ -001a4cb0: 2020 2020 2020 2020 2020 207c 2073 6564             | sed
│ │ │ -001a4cc0: 202d 4520 2273 2f28 7277 7c64 6566 6175   -E "s/(rw|defau
│ │ │ -001a4cd0: 6c74 737c 7365 636c 6162 656c 7c6e 6f65  lts|seclabel|noe
│ │ │ -001a4ce0: 7865 6329 282c 7c24 292f 2f67 3b73 2f2c  xec)(,|$)//g;s/,
│ │ │ -001a4cf0: 242f 2f22 290a 2020 2020 2020 2020 5b20  $//").        [ 
│ │ │ -001a4d00: 2224 7072 6576 696f 7573 5f6d 6f75 6e74  "$previous_mount
│ │ │ -001a4d10: 5f6f 7074 7322 205d 2026 616d 703b 2661  _opts" ] &&a
│ │ │ -001a4d20: 6d70 3b20 7072 6576 696f 7573 5f6d 6f75  mp; previous_mou
│ │ │ -001a4d30: 6e74 5f6f 7074 732b 3d22 2c22 0a20 2020  nt_opts+=",".   
│ │ │ -001a4d40: 2020 2020 2023 2049 6e20 6973 6f39 3636       # In iso966
│ │ │ -001a4d50: 3020 6669 6c65 7379 7374 656d 7320 6d74  0 filesystems mt
│ │ │ -001a4d60: 6162 2063 6f75 6c64 2064 6573 6372 6962  ab could describ
│ │ │ -001a4d70: 6520 6120 2262 6c6f 636b 7369 7a65 2220  e a "blocksize" 
│ │ │ -001a4d80: 7661 6c75 652c 2074 6869 7320 7368 6f75  value, this shou
│ │ │ -001a4d90: 6c64 2062 6520 7265 666c 6563 7465 6420  ld be reflected 
│ │ │ -001a4da0: 696e 0a20 2020 2020 2020 2023 2066 7374  in.        # fst
│ │ │ -001a4db0: 6162 2061 7320 2262 6c6f 636b 222e 2020  ab as "block".  
│ │ │ -001a4dc0: 5468 6520 6e65 7874 2076 6172 6961 626c  The next variabl
│ │ │ -001a4dd0: 6520 6973 2074 6f20 7361 7469 7366 7920  e is to satisfy 
│ │ │ -001a4de0: 7368 656c 6c63 6865 636b 2053 4332 3035  shellcheck SC205
│ │ │ -001a4df0: 302e 0a20 2020 2020 2020 2066 735f 7479  0..        fs_ty
│ │ │ -001a4e00: 7065 3d22 220a 2020 2020 2020 2020 6966  pe="".        if
│ │ │ -001a4e10: 205b 2020 2224 6673 5f74 7970 6522 203d   [  "$fs_type" =
│ │ │ -001a4e20: 3d20 2269 736f 3936 3630 2220 5d20 3b20  = "iso9660" ] ; 
│ │ │ -001a4e30: 7468 656e 0a20 2020 2020 2020 2020 2020  then.           
│ │ │ -001a4e40: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ -001a4e50: 6f70 7473 3d24 2873 6564 2027 732f 626c  opts=$(sed 's/bl
│ │ │ -001a4e60: 6f63 6b73 697a 653d 2f62 6c6f 636b 3d2f  ocksize=/block=/
│ │ │ -001a4e70: 2720 266c 743b 266c 743b 266c 743b 2022  ' <<< "
│ │ │ -001a4e80: 2470 7265 7669 6f75 735f 6d6f 756e 745f  $previous_mount_
│ │ │ -001a4e90: 6f70 7473 2229 0a20 2020 2020 2020 2066  opts").        f
│ │ │ -001a4ea0: 690a 2020 2020 2020 2020 6563 686f 2022  i.        echo "
│ │ │ -001a4eb0: 202f 746d 7020 2064 6566 6175 6c74 732c   /tmp  defaults,
│ │ │ -001a4ec0: 247b 7072 6576 696f 7573 5f6d 6f75 6e74  ${previous_mount
│ │ │ -001a4ed0: 5f6f 7074 737d 6e6f 6578 6563 2030 2030  _opts}noexec 0 0
│ │ │ -001a4ee0: 2220 2667 743b 2667 743b 202f 6574 632f  " >> /etc/
│ │ │ -001a4ef0: 6673 7461 620a 2020 2020 2320 4966 2074  fstab.    # If t
│ │ │ -001a4f00: 6865 206d 6f75 6e74 5f6f 7074 206f 7074  he mount_opt opt
│ │ │ -001a4f10: 696f 6e20 6973 206e 6f74 2061 6c72 6561  ion is not alrea
│ │ │ -001a4f20: 6479 2069 6e20 7468 6520 6d6f 756e 7420  dy in the mount 
│ │ │ -001a4f30: 706f 696e 7427 7320 2f65 7463 2f66 7374  point's /etc/fst
│ │ │ -001a4f40: 6162 2065 6e74 7279 2c20 6164 6420 6974  ab entry, add it
│ │ │ -001a4f50: 0a20 2020 2065 6c69 6620 2120 6772 6570  .    elif ! grep
│ │ │ -001a4f60: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -001a4f70: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ -001a4f80: 632f 6673 7461 6220 7c20 6772 6570 202d  c/fstab | grep -
│ │ │ -001a4f90: 7120 226e 6f65 7865 6322 3b20 7468 656e  q "noexec"; then
│ │ │ -001a4fa0: 0a20 2020 2020 2020 2070 7265 7669 6f75  .        previou
│ │ │ -001a4fb0: 735f 6d6f 756e 745f 6f70 7473 3d24 2867  s_mount_opts=$(g
│ │ │ -001a4fc0: 7265 7020 2224 6d6f 756e 745f 706f 696e  rep "$mount_poin
│ │ │ -001a4fd0: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ -001a4fe0: 2f65 7463 2f66 7374 6162 207c 2061 776b  /etc/fstab | awk
│ │ │ -001a4ff0: 2027 7b70 7269 6e74 2024 347d 2729 0a20   '{print $4}'). 
│ │ │ -001a5000: 2020 2020 2020 2073 6564 202d 6920 2273         sed -i "s
│ │ │ -001a5010: 7c5c 2824 7b6d 6f75 6e74 5f70 6f69 6e74  |\(${mount_point
│ │ │ -001a5020: 5f6d 6174 6368 5f72 6567 6578 707d 2e2a  _match_regexp}.*
│ │ │ -001a5030: 247b 7072 6576 696f 7573 5f6d 6f75 6e74  ${previous_mount
│ │ │ -001a5040: 5f6f 7074 737d 5c29 7c5c 312c 6e6f 6578  _opts}\)|\1,noex
│ │ │ -001a5050: 6563 7c22 202f 6574 632f 6673 7461 620a  ec|" /etc/fstab.
│ │ │ -001a5060: 2020 2020 6669 0a0a 0a20 2020 2069 6620      fi...    if 
│ │ │ -001a5070: 6d6b 6469 7220 2d70 2022 2f74 6d70 223b  mkdir -p "/tmp";
│ │ │ -001a5080: 2074 6865 6e0a 2020 2020 2020 2020 6966   then.        if
│ │ │ -001a5090: 206d 6f75 6e74 706f 696e 7420 2d71 2022   mountpoint -q "
│ │ │ -001a50a0: 2f74 6d70 223b 2074 6865 6e0a 2020 2020  /tmp"; then.    
│ │ │ -001a50b0: 2020 2020 2020 2020 6d6f 756e 7420 2d6f          mount -o
│ │ │ -001a50c0: 2072 656d 6f75 6e74 202d 2d74 6172 6765   remount --targe
│ │ │ -001a50d0: 7420 222f 746d 7022 0a20 2020 2020 2020  t "/tmp".       
│ │ │ -001a50e0: 2066 690a 2020 2020 6669 0a7d 0a0a 7065   fi.    fi.}..pe
│ │ │ -001a50f0: 7266 6f72 6d5f 7265 6d65 6469 6174 696f  rform_remediatio
│ │ │ -001a5100: 6e0a 0a65 6c73 650a 2020 2020 2667 743b  n..else.    >
│ │ │ -001a5110: 2661 6d70 3b32 2065 6368 6f20 2752 656d  &2 echo 'Rem
│ │ │ -001a5120: 6564 6961 7469 6f6e 2069 7320 6e6f 7420  ediation is not 
│ │ │ -001a5130: 6170 706c 6963 6162 6c65 2c20 6e6f 7468  applicable, noth
│ │ │ -001a5140: 696e 6720 7761 7320 646f 6e65 270a 6669  ing was done'.fi
│ │ │ +001a2b00: 6469 6174 696f 6e20 416e 7369 626c 6520  diation Ansible 
│ │ │ +001a2b10: 736e 6970 7065 7420 e287 b23c 2f61 3e3c  snippet ...<
│ │ │ +001a2b20: 6272 3e3c 6469 7620 636c 6173 733d 2270  br>
Rebo │ │ │ -001a4680: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -001a4690: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ +001a2c10: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
-
│ │ │ +001a2c50: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +001a2c60: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +001a2c70: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ +001a2c80: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ +001a2c90: 746f 0a20 2074 6167 733a 0a20 202d 204e  to.  tags:.  - N
│ │ │ +001a2ca0: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ +001a2cb0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001a2cc0: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ +001a2cd0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +001a2ce0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001a2cf0: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +001a2d00: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +001a2d10: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001a2d20: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ +001a2d30: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +001a2d40: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +001a2d50: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +001a2d60: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +001a2d70: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +001a2d80: 5f6f 7074 696f 6e5f 746d 705f 6e6f 6578  _option_tmp_noex
│ │ │ +001a2d90: 6563 0a20 202d 206e 6f5f 7265 626f 6f74  ec.  - no_reboot
│ │ │ +001a2da0: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ +001a2db0: 2027 4164 6420 6e6f 6578 6563 204f 7074   'Add noexec Opt
│ │ │ +001a2dc0: 696f 6e20 746f 202f 746d 703a 2043 6865  ion to /tmp: Che
│ │ │ +001a2dd0: 636b 2069 6e66 6f72 6d61 7469 6f6e 2061  ck information a
│ │ │ +001a2de0: 7373 6f63 6961 7465 6420 746f 206d 6f75  ssociated to mou
│ │ │ +001a2df0: 6e74 706f 696e 7427 0a20 2061 6e73 6962  ntpoint'.  ansib
│ │ │ +001a2e00: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61  le.builtin.comma
│ │ │ +001a2e10: 6e64 3a20 6669 6e64 6d6e 7420 2d2d 6673  nd: findmnt --fs
│ │ │ +001a2e20: 7461 6220 272f 746d 7027 0a20 2072 6567  tab '/tmp'.  reg
│ │ │ +001a2e30: 6973 7465 723a 2064 6576 6963 655f 6e61  ister: device_na
│ │ │ +001a2e40: 6d65 0a20 2066 6169 6c65 645f 7768 656e  me.  failed_when
│ │ │ +001a2e50: 3a20 6465 7669 6365 5f6e 616d 652e 7263  : device_name.rc
│ │ │ +001a2e60: 2026 6774 3b20 310a 2020 6368 616e 6765   > 1.  change
│ │ │ +001a2e70: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ +001a2e80: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73  check_mode: fals
│ │ │ +001a2e90: 650a 2020 7768 656e 3a0a 2020 2d20 2820  e.  when:.  - ( 
│ │ │ +001a2ea0: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ +001a2eb0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001a2ec0: 7061 636b 6167 6573 2061 6e64 2022 7270  packages and "rp
│ │ │ +001a2ed0: 6d2d 6f73 7472 6565 2220 696e 2061 6e73  m-ostree" in ans
│ │ │ +001a2ee0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001a2ef0: 6765 730a 2020 2020 616e 6420 2262 6f6f  ges.    and "boo
│ │ │ +001a2f00: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ +001a2f10: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001a2f20: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ +001a2f30: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ +001a2f40: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001a2f50: 6765 730a 2020 2020 616e 6420 226f 7374  ges.    and "ost
│ │ │ +001a2f60: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001a2f70: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061  proc_cmdline ) a
│ │ │ +001a2f80: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ +001a2f90: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ +001a2fa0: 7479 7065 2069 6e0a 2020 2020 5b22 646f  type in.    ["do
│ │ │ +001a2fb0: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ +001a2fc0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ +001a2fd0: 2c20 2263 6f6e 7461 696e 6572 225d 2029  , "container"] )
│ │ │ +001a2fe0: 2029 0a20 202d 2027 222f 746d 7022 2069   ).  - '"/tmp" i
│ │ │ +001a2ff0: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ +001a3000: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ +001a3010: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ +001a3020: 270a 2020 7461 6773 3a0a 2020 2d20 4e49  '.  tags:.  - NI
│ │ │ +001a3030: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ +001a3040: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001a3050: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ +001a3060: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +001a3070: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001a3080: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +001a3090: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +001a30a0: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ +001a30b0: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ +001a30c0: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ +001a30d0: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ +001a30e0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +001a30f0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +001a3100: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ +001a3110: 6f70 7469 6f6e 5f74 6d70 5f6e 6f65 7865  option_tmp_noexe
│ │ │ +001a3120: 630a 2020 2d20 6e6f 5f72 6562 6f6f 745f  c.  - no_reboot_
│ │ │ +001a3130: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ +001a3140: 2741 6464 206e 6f65 7865 6320 4f70 7469  'Add noexec Opti
│ │ │ +001a3150: 6f6e 2074 6f20 2f74 6d70 3a20 4372 6561  on to /tmp: Crea
│ │ │ +001a3160: 7465 206d 6f75 6e74 5f69 6e66 6f20 6469  te mount_info di
│ │ │ +001a3170: 6374 696f 6e61 7279 2076 6172 6961 626c  ctionary variabl
│ │ │ +001a3180: 6527 0a20 2073 6574 5f66 6163 743a 0a20  e'.  set_fact:. 
│ │ │ +001a3190: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ +001a31a0: 7b7b 206d 6f75 6e74 5f69 6e66 6f7c 6465  {{ mount_info|de
│ │ │ +001a31b0: 6661 756c 7428 7b7d 297c 636f 6d62 696e  fault({})|combin
│ │ │ +001a31c0: 6528 7b69 7465 6d2e 303a 2069 7465 6d2e  e({item.0: item.
│ │ │ +001a31d0: 317d 2920 7d7d 270a 2020 7769 7468 5f74  1}) }}'.  with_t
│ │ │ +001a31e0: 6f67 6574 6865 723a 0a20 202d 2027 7b7b  ogether:.  - '{{
│ │ │ +001a31f0: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +001a3200: 6f75 745f 6c69 6e65 735b 305d 2e73 706c  out_lines[0].spl
│ │ │ +001a3210: 6974 2829 207c 206d 6170 2827 276c 6f77  it() | map(''low
│ │ │ +001a3220: 6572 2727 2920 7c20 6c69 7374 207d 7d27  er'') | list }}'
│ │ │ +001a3230: 0a20 202d 2027 7b7b 2064 6576 6963 655f  .  - '{{ device_
│ │ │ +001a3240: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ +001a3250: 735b 315d 2e73 706c 6974 2829 207c 206c  s[1].split() | l
│ │ │ +001a3260: 6973 7420 7d7d 270a 2020 7768 656e 3a0a  ist }}'.  when:.
│ │ │ +001a3270: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ +001a3280: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +001a3290: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001a32a0: 6e64 2022 7270 6d2d 6f73 7472 6565 2220  nd "rpm-ostree" 
│ │ │ +001a32b0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001a32c0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001a32d0: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ +001a32e0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001a32f0: 6765 7320 616e 6420 6e6f 7420 226f 7065  ges and not "ope
│ │ │ +001a3300: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ +001a3310: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001a3320: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001a3330: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ +001a3340: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ +001a3350: 6e65 2029 2061 6e64 206e 6f74 2028 2061  ne ) and not ( a
│ │ │ +001a3360: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ +001a3370: 6174 696f 6e5f 7479 7065 2069 6e0a 2020  ation_type in.  
│ │ │ +001a3380: 2020 5b22 646f 636b 6572 222c 2022 6c78    ["docker", "lx
│ │ │ +001a3390: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ +001a33a0: 6f64 6d61 6e22 2c20 2263 6f6e 7461 696e  odman", "contain
│ │ │ +001a33b0: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ +001a33c0: 746d 7022 2069 6e20 616e 7369 626c 655f  tmp" in ansible_
│ │ │ +001a33d0: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ +001a33e0: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ +001a33f0: 7c20 6c69 7374 270a 2020 2d20 6465 7669  | list'.  - devi
│ │ │ +001a3400: 6365 5f6e 616d 652e 7374 646f 7574 2069  ce_name.stdout i
│ │ │ +001a3410: 7320 6465 6669 6e65 6420 616e 6420 6465  s defined and de
│ │ │ +001a3420: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001a3430: 5f6c 696e 6573 2069 7320 6465 6669 6e65  _lines is define
│ │ │ +001a3440: 640a 2020 2d20 2864 6576 6963 655f 6e61  d.  - (device_na
│ │ │ +001a3450: 6d65 2e73 7464 6f75 7420 7c20 6c65 6e67  me.stdout | leng
│ │ │ +001a3460: 7468 2026 6774 3b20 3029 0a20 2074 6167  th > 0).  tag
│ │ │ +001a3470: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +001a3480: 3533 2d41 432d 360a 2020 2d20 4e49 5354  53-AC-6.  - NIST
│ │ │ +001a3490: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ +001a34a0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001a34b0: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ +001a34c0: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ +001a34d0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001a34e0: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ +001a34f0: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d  -800-53-MP-7.  -
│ │ │ +001a3500: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ +001a3510: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ +001a3520: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ +001a3530: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +001a3540: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +001a3550: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ +001a3560: 746d 705f 6e6f 6578 6563 0a20 202d 206e  tmp_noexec.  - n
│ │ │ +001a3570: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +001a3580: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ +001a3590: 6578 6563 204f 7074 696f 6e20 746f 202f  exec Option to /
│ │ │ +001a35a0: 746d 703a 2049 6620 2f74 6d70 206e 6f74  tmp: If /tmp not
│ │ │ +001a35b0: 206d 6f75 6e74 6564 2c20 6372 6166 7420   mounted, craft 
│ │ │ +001a35c0: 6d6f 756e 745f 696e 666f 206d 616e 7561  mount_info manua
│ │ │ +001a35d0: 6c6c 7927 0a20 2073 6574 5f66 6163 743a  lly'.  set_fact:
│ │ │ +001a35e0: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ +001a35f0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c   '{{ mount_info|
│ │ │ +001a3600: 6465 6661 756c 7428 7b7d 297c 636f 6d62  default({})|comb
│ │ │ +001a3610: 696e 6528 7b69 7465 6d2e 303a 2069 7465  ine({item.0: ite
│ │ │ +001a3620: 6d2e 317d 2920 7d7d 270a 2020 7769 7468  m.1}) }}'.  with
│ │ │ +001a3630: 5f74 6f67 6574 6865 723a 0a20 202d 202d  _together:.  - -
│ │ │ +001a3640: 2074 6172 6765 740a 2020 2020 2d20 736f   target.    - so
│ │ │ +001a3650: 7572 6365 0a20 2020 202d 2066 7374 7970  urce.    - fstyp
│ │ │ +001a3660: 650a 2020 2020 2d20 6f70 7469 6f6e 730a  e.    - options.
│ │ │ +001a3670: 2020 2d20 2d20 2f74 6d70 0a20 2020 202d    - - /tmp.    -
│ │ │ +001a3680: 2027 270a 2020 2020 2d20 2727 0a20 2020   ''.    - ''.   
│ │ │ +001a3690: 202d 2064 6566 6175 6c74 730a 2020 7768   - defaults.  wh
│ │ │ +001a36a0: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ +001a36b0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +001a36c0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001a36d0: 6573 2061 6e64 2022 7270 6d2d 6f73 7472  es and "rpm-ostr
│ │ │ +001a36e0: 6565 2220 696e 2061 6e73 6962 6c65 5f66  ee" in ansible_f
│ │ │ +001a36f0: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001a3700: 2020 616e 6420 2262 6f6f 7463 2220 696e    and "bootc" in
│ │ │ +001a3710: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001a3720: 6163 6b61 6765 7320 616e 6420 6e6f 7420  ackages and not 
│ │ │ +001a3730: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +001a3740: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +001a3750: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001a3760: 2020 616e 6420 226f 7374 7265 6522 2069    and "ostree" i
│ │ │ +001a3770: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ +001a3780: 6d64 6c69 6e65 2029 2061 6e64 206e 6f74  mdline ) and not
│ │ │ +001a3790: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +001a37a0: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +001a37b0: 6e0a 2020 2020 5b22 646f 636b 6572 222c  n.    ["docker",
│ │ │ +001a37c0: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ +001a37d0: 2c20 2270 6f64 6d61 6e22 2c20 2263 6f6e  , "podman", "con
│ │ │ +001a37e0: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ +001a37f0: 2027 222f 746d 7022 2069 6e20 616e 7369   '"/tmp" in ansi
│ │ │ +001a3800: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ +001a3810: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ +001a3820: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ +001a3830: 2822 2d2d 6673 7461 6222 207c 206c 656e  ("--fstab" | len
│ │ │ +001a3840: 6774 6820 3d3d 2030 290a 2020 2d20 6465  gth == 0).  - de
│ │ │ +001a3850: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001a3860: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ +001a3870: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001a3880: 7574 5f6c 696e 6573 2069 7320 6465 6669  ut_lines is defi
│ │ │ +001a3890: 6e65 640a 2020 2d20 2864 6576 6963 655f  ned.  - (device_
│ │ │ +001a38a0: 6e61 6d65 2e73 7464 6f75 7420 7c20 6c65  name.stdout | le
│ │ │ +001a38b0: 6e67 7468 203d 3d20 3029 0a20 2074 6167  ngth == 0).  tag
│ │ │ +001a38c0: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +001a38d0: 3533 2d41 432d 360a 2020 2d20 4e49 5354  53-AC-6.  - NIST
│ │ │ +001a38e0: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ +001a38f0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001a3900: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ +001a3910: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ +001a3920: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001a3930: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ +001a3940: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d  -800-53-MP-7.  -
│ │ │ +001a3950: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ +001a3960: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ +001a3970: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ +001a3980: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +001a3990: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +001a39a0: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ +001a39b0: 746d 705f 6e6f 6578 6563 0a20 202d 206e  tmp_noexec.  - n
│ │ │ +001a39c0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +001a39d0: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ +001a39e0: 6578 6563 204f 7074 696f 6e20 746f 202f  exec Option to /
│ │ │ +001a39f0: 746d 703a 204d 616b 6520 7375 7265 206e  tmp: Make sure n
│ │ │ +001a3a00: 6f65 7865 6320 6f70 7469 6f6e 2069 7320  oexec option is 
│ │ │ +001a3a10: 7061 7274 206f 6620 7468 6520 746f 202f  part of the to /
│ │ │ +001a3a20: 746d 700a 2020 2020 6f70 7469 6f6e 7327  tmp.    options'
│ │ │ +001a3a30: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ +001a3a40: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b   mount_info: '{{
│ │ │ +001a3a50: 206d 6f75 6e74 5f69 6e66 6f20 7c20 636f   mount_info | co
│ │ │ +001a3a60: 6d62 696e 6528 207b 2727 6f70 7469 6f6e  mbine( {''option
│ │ │ +001a3a70: 7327 273a 2727 2727 7e28 6d6f 756e 745f  s'':''''~(mount_
│ │ │ +001a3a80: 696e 666f 2e6f 7074 696f 6e73 207c 0a20  info.options |. 
│ │ │ +001a3a90: 2020 2020 2064 6566 6175 6c74 2827 2727       default('''
│ │ │ +001a3aa0: 2729 297e 2827 272c 2727 2069 6620 286d  '))~('','' if (m
│ │ │ +001a3ab0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ +001a3ac0: 7320 7c20 6465 6661 756c 7428 2727 2727  s | default(''''
│ │ │ +001a3ad0: 2929 2065 6c73 6520 2727 2727 297e 2727  )) else '''')~''
│ │ │ +001a3ae0: 6e6f 6578 6563 2727 0a20 2020 2020 207d  noexec''.      }
│ │ │ +001a3af0: 2920 7d7d 270a 2020 7768 656e 3a0a 2020  ) }}'.  when:.  
│ │ │ +001a3b00: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ +001a3b10: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +001a3b20: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001a3b30: 2022 7270 6d2d 6f73 7472 6565 2220 696e   "rpm-ostree" in
│ │ │ +001a3b40: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001a3b50: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001a3b60: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ +001a3b70: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001a3b80: 7320 616e 6420 6e6f 7420 226f 7065 6e73  s and not "opens
│ │ │ +001a3b90: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ +001a3ba0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001a3bb0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001a3bc0: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ +001a3bd0: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ +001a3be0: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ +001a3bf0: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ +001a3c00: 696f 6e5f 7479 7065 2069 6e0a 2020 2020  ion_type in.    
│ │ │ +001a3c10: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ +001a3c20: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ +001a3c30: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572  man", "container
│ │ │ +001a3c40: 225d 2029 2029 0a20 202d 2027 222f 746d  "] ) ).  - '"/tm
│ │ │ +001a3c50: 7022 2069 6e20 616e 7369 626c 655f 6d6f  p" in ansible_mo
│ │ │ +001a3c60: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ +001a3c70: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ +001a3c80: 6c69 7374 270a 2020 2d20 6d6f 756e 745f  list'.  - mount_
│ │ │ +001a3c90: 696e 666f 2069 7320 6465 6669 6e65 6420  info is defined 
│ │ │ +001a3ca0: 616e 6420 226e 6f65 7865 6322 206e 6f74  and "noexec" not
│ │ │ +001a3cb0: 2069 6e20 286d 6f75 6e74 5f69 6e66 6f2e   in (mount_info.
│ │ │ +001a3cc0: 6f70 7469 6f6e 7320 7c20 6465 6661 756c  options | defaul
│ │ │ +001a3cd0: 7428 2727 2929 0a20 2074 6167 733a 0a20  t('')).  tags:. 
│ │ │ +001a3ce0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001a3cf0: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ +001a3d00: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ +001a3d10: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +001a3d20: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001a3d30: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ +001a3d40: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001a3d50: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ +001a3d60: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ +001a3d70: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +001a3d80: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ +001a3d90: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ +001a3da0: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ +001a3db0: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ +001a3dc0: 6f75 6e74 5f6f 7074 696f 6e5f 746d 705f  ount_option_tmp_
│ │ │ +001a3dd0: 6e6f 6578 6563 0a20 202d 206e 6f5f 7265  noexec.  - no_re
│ │ │ +001a3de0: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ +001a3df0: 616d 653a 2027 4164 6420 6e6f 6578 6563  ame: 'Add noexec
│ │ │ +001a3e00: 204f 7074 696f 6e20 746f 202f 746d 703a   Option to /tmp:
│ │ │ +001a3e10: 2045 6e73 7572 6520 2f74 6d70 2069 7320   Ensure /tmp is 
│ │ │ +001a3e20: 6d6f 756e 7465 6420 7769 7468 206e 6f65  mounted with noe
│ │ │ +001a3e30: 7865 6320 6f70 7469 6f6e 270a 2020 616e  xec option'.  an
│ │ │ +001a3e40: 7369 626c 652e 706f 7369 782e 6d6f 756e  sible.posix.moun
│ │ │ +001a3e50: 743a 0a20 2020 2070 6174 683a 202f 746d  t:.    path: /tm
│ │ │ +001a3e60: 700a 2020 2020 7372 633a 2027 7b7b 206d  p.    src: '{{ m
│ │ │ +001a3e70: 6f75 6e74 5f69 6e66 6f2e 736f 7572 6365  ount_info.source
│ │ │ +001a3e80: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ +001a3e90: 207d 7d27 0a20 2020 206f 7074 733a 2027   }}'.    opts: '
│ │ │ +001a3ea0: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 6f70  {{ mount_info.op
│ │ │ +001a3eb0: 7469 6f6e 7320 7c20 6465 6661 756c 7428  tions | default(
│ │ │ +001a3ec0: 2727 2727 2920 7d7d 270a 2020 2020 7374  '''') }}'.    st
│ │ │ +001a3ed0: 6174 653a 206d 6f75 6e74 6564 0a20 2020  ate: mounted.   
│ │ │ +001a3ee0: 2066 7374 7970 653a 2027 7b7b 206d 6f75   fstype: '{{ mou
│ │ │ +001a3ef0: 6e74 5f69 6e66 6f2e 6673 7479 7065 207c  nt_info.fstype |
│ │ │ +001a3f00: 2064 6566 6175 6c74 2827 2727 2729 207d   default('''') }
│ │ │ +001a3f10: 7d27 0a20 2072 6567 6973 7465 723a 206d  }'.  register: m
│ │ │ +001a3f20: 6f75 6e74 5f72 6573 756c 740a 2020 6661  ount_result.  fa
│ │ │ +001a3f30: 696c 6564 5f77 6865 6e3a 0a20 202d 206d  iled_when:.  - m
│ │ │ +001a3f40: 6f75 6e74 5f72 6573 756c 7420 6973 2066  ount_result is f
│ │ │ +001a3f50: 6169 6c65 640a 2020 2d20 2727 2774 6172  ailed.  - '''tar
│ │ │ +001a3f60: 6765 7420 6973 2062 7573 7927 2720 6e6f  get is busy'' no
│ │ │ +001a3f70: 7420 696e 2028 6d6f 756e 745f 7265 7375  t in (mount_resu
│ │ │ +001a3f80: 6c74 2e6d 7367 207c 2064 6566 6175 6c74  lt.msg | default
│ │ │ +001a3f90: 2827 2727 2729 2927 0a20 202d 2027 2727  (''''))'.  - '''
│ │ │ +001a3fa0: 616c 7265 6164 7920 6d6f 756e 7465 6427  already mounted'
│ │ │ +001a3fb0: 2720 6e6f 7420 696e 2028 6d6f 756e 745f  ' not in (mount_
│ │ │ +001a3fc0: 7265 7375 6c74 2e6d 7367 207c 2064 6566  result.msg | def
│ │ │ +001a3fd0: 6175 6c74 2827 2727 2729 2927 0a20 2077  ault(''''))'.  w
│ │ │ +001a3fe0: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +001a3ff0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +001a4000: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001a4010: 6765 7320 616e 6420 2272 706d 2d6f 7374  ges and "rpm-ost
│ │ │ +001a4020: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001a4030: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001a4040: 2020 2061 6e64 2022 626f 6f74 6322 2069     and "bootc" i
│ │ │ +001a4050: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001a4060: 7061 636b 6167 6573 2061 6e64 206e 6f74  packages and not
│ │ │ +001a4070: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ +001a4080: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ +001a4090: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001a40a0: 2020 2061 6e64 2022 6f73 7472 6565 2220     and "ostree" 
│ │ │ +001a40b0: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ +001a40c0: 636d 646c 696e 6520 2920 616e 6420 6e6f  cmdline ) and no
│ │ │ +001a40d0: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ +001a40e0: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ +001a40f0: 696e 0a20 2020 205b 2264 6f63 6b65 7222  in.    ["docker"
│ │ │ +001a4100: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ +001a4110: 222c 2022 706f 646d 616e 222c 2022 636f  ", "podman", "co
│ │ │ +001a4120: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ +001a4130: 2d20 2722 2f74 6d70 2220 696e 2061 6e73  - '"/tmp" in ans
│ │ │ +001a4140: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ +001a4150: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ +001a4160: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ +001a4170: 206d 6f75 6e74 5f69 6e66 6f20 6973 2064   mount_info is d
│ │ │ +001a4180: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ +001a4190: 6365 5f6e 616d 652e 7374 646f 7574 2069  ce_name.stdout i
│ │ │ +001a41a0: 7320 6465 6669 6e65 6420 616e 6420 2864  s defined and (d
│ │ │ +001a41b0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001a41c0: 7420 7c20 6c65 6e67 7468 2026 6774 3b20  t | length > 
│ │ │ +001a41d0: 3029 2920 6f72 2028 222d 2d66 7374 6162  0)) or ("--fstab
│ │ │ +001a41e0: 220a 2020 2020 7c20 6c65 6e67 7468 203d  ".    | length =
│ │ │ +001a41f0: 3d20 3029 0a20 2074 6167 733a 0a20 202d  = 0).  tags:.  -
│ │ │ +001a4200: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001a4210: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +001a4220: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ +001a4230: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +001a4240: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001a4250: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +001a4260: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +001a4270: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001a4280: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ +001a4290: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001a42a0: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001a42b0: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001a42c0: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001a42d0: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001a42e0: 6e74 5f6f 7074 696f 6e5f 746d 705f 6e6f  nt_option_tmp_no
│ │ │ +001a42f0: 6578 6563 0a20 202d 206e 6f5f 7265 626f  exec.  - no_rebo
│ │ │ +001a4300: 6f74 5f6e 6565 6465 640a 3c2f 636f 6465  ot_needed.
Remedi │ │ │ +001a43c0: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ +001a43d0: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
│ │ │ +001a4450: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
Com │ │ │ +001a2ba0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +001a2bd0: 3a3c 2f74 683e 3c74 643e 6869 6768 3c2f :high
│ │ │ +001a2bf0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +001a2c00: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +001a2c20: 3c2f 7468 3e3c 7464 3e63 6f6e 6669 6775 configu │ │ │ +001a2c30: 7265 3c2f 7464 3e3c 2f74 723e 3c2f 7461 re
Reboot:< │ │ │ +001a4460: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
< │ │ │ +001a4480: 7072 653e 3c63 6f64 653e 2320 5265 6d65 pre># Reme │ │ │ +001a4490: 6469 6174 696f 6e20 6973 2061 7070 6c69 diation is appli │ │ │ +001a44a0: 6361 626c 6520 6f6e 6c79 2069 6e20 6365 cable only in ce │ │ │ +001a44b0: 7274 6169 6e20 706c 6174 666f 726d 730a rtain platforms. │ │ │ +001a44c0: 6966 2028 2021 2028 207b 2072 706d 202d if ( ! ( { rpm - │ │ │ +001a44d0: 2d71 7569 6574 202d 7120 6b65 726e 656c -quiet -q kernel │ │ │ +001a44e0: 203b 7d20 2661 6d70 3b26 616d 703b 207b ;} && { │ │ │ +001a44f0: 2072 706d 202d 2d71 7569 6574 202d 7120 rpm --quiet -q │ │ │ +001a4500: 7270 6d2d 6f73 7472 6565 203b 7d20 2661 rpm-ostree ;} &a │ │ │ +001a4510: 6d70 3b26 616d 703b 207b 2072 706d 202d mp;& { rpm - │ │ │ +001a4520: 2d71 7569 6574 202d 7120 626f 6f74 6320 -quiet -q bootc │ │ │ +001a4530: 3b7d 2026 616d 703b 2661 6d70 3b20 7b20 ;} && { │ │ │ +001a4540: 2120 7270 6d20 2d2d 7175 6965 7420 2d71 ! rpm --quiet -q │ │ │ +001a4550: 206f 7065 6e73 6869 6674 2d6b 7562 656c openshift-kubel │ │ │ +001a4560: 6574 203b 7d20 2661 6d70 3b26 616d 703b et ;} && │ │ │ +001a4570: 2028 5b20 2d66 202f 7275 6e2f 6f73 7472 ([ -f /run/ostr │ │ │ +001a4580: 6565 2d62 6f6f 7465 6420 5d20 7c7c 205b ee-booted ] || [ │ │ │ +001a4590: 202d 4c20 2f6f 7374 7265 6520 5d29 2029 -L /ostree ]) ) │ │ │ +001a45a0: 2026 616d 703b 2661 6d70 3b20 2120 2820 && ! ( │ │ │ +001a45b0: 5b20 2d66 202f 2e64 6f63 6b65 7265 6e76 [ -f /.dockerenv │ │ │ +001a45c0: 205d 207c 7c20 5b20 2d66 202f 7275 6e2f ] || [ -f /run/ │ │ │ +001a45d0: 2e63 6f6e 7461 696e 6572 656e 7620 5d20 .containerenv ] │ │ │ +001a45e0: 2920 2920 2661 6d70 3b26 616d 703b 207b ) ) && { │ │ │ +001a45f0: 2028 2066 696e 646d 6e74 202d 2d6b 6572 ( findmnt --ker │ │ │ +001a4600: 6e65 6c20 222f 746d 7022 2026 6774 3b20 nel "/tmp" > │ │ │ +001a4610: 2f64 6576 2f6e 756c 6c20 7c7c 2066 696e /dev/null || fin │ │ │ +001a4620: 646d 6e74 202d 2d66 7374 6162 2022 2f74 dmnt --fstab "/t │ │ │ +001a4630: 6d70 2220 2667 743b 202f 6465 762f 6e75 mp" > /dev/nu │ │ │ +001a4640: 6c6c 2029 3b20 7d3b 2074 6865 6e0a 0a66 ll ); }; then..f │ │ │ +001a4650: 756e 6374 696f 6e20 7065 7266 6f72 6d5f unction perform_ │ │ │ +001a4660: 7265 6d65 6469 6174 696f 6e20 7b0a 0a20 remediation {.. │ │ │ +001a4670: 2020 200a 2020 2020 2020 2020 2320 7468 . # th │ │ │ +001a4680: 6520 6d6f 756e 7420 706f 696e 7420 2f74 e mount point /t │ │ │ +001a4690: 6d70 2068 6173 2074 6f20 6265 2064 6566 mp has to be def │ │ │ +001a46a0: 696e 6564 2069 6e20 2f65 7463 2f66 7374 ined in /etc/fst │ │ │ +001a46b0: 6162 0a20 2020 2020 2020 2023 2062 6566 ab. # bef │ │ │ +001a46c0: 6f72 6520 7468 6973 2072 656d 6564 6961 ore this remedia │ │ │ +001a46d0: 7469 6f6e 2063 616e 2062 6520 6578 6563 tion can be exec │ │ │ +001a46e0: 7574 6564 2e20 496e 2063 6173 6520 6974 uted. In case it │ │ │ +001a46f0: 2069 7320 6e6f 7420 6465 6669 6e65 642c is not defined, │ │ │ +001a4700: 2074 6865 0a20 2020 2020 2020 2023 2072 the. # r │ │ │ +001a4710: 656d 6564 6961 7469 6f6e 2061 626f 7274 emediation abort │ │ │ +001a4720: 7320 616e 6420 6e6f 2063 6861 6e67 6573 s and no changes │ │ │ +001a4730: 2072 6567 6172 6469 6e67 2074 6865 206d regarding the m │ │ │ +001a4740: 6f75 6e74 2070 6f69 6e74 2061 7265 2064 ount point are d │ │ │ +001a4750: 6f6e 652e 0a20 2020 2020 2020 206d 6f75 one.. mou │ │ │ +001a4760: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72 nt_point_match_r │ │ │ +001a4770: 6567 6578 703d 2224 2870 7269 6e74 6620 egexp="$(printf │ │ │ +001a4780: 225e 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e "^[[:space:]]*[^ │ │ │ +001a4790: 235d 2e2a 5b5b 3a73 7061 6365 3a5d 5d25 #].*[[:space:]]% │ │ │ +001a47a0: 735b 5b3a 7370 6163 653a 5d5d 2220 222f s[[:space:]]" "/ │ │ │ +001a47b0: 746d 7022 2922 0a0a 2020 2020 6772 6570 tmp")".. grep │ │ │ +001a47c0: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d "$mount_point_m │ │ │ +001a47d0: 6174 6368 5f72 6567 6578 7022 202d 7120 atch_regexp" -q │ │ │ +001a47e0: 2f65 7463 2f66 7374 6162 205c 0a20 2020 /etc/fstab \. │ │ │ +001a47f0: 2020 2020 207c 7c20 7b20 6563 686f 2022 || { echo " │ │ │ +001a4800: 5468 6520 6d6f 756e 7420 706f 696e 7420 The mount point │ │ │ +001a4810: 272f 746d 7027 2069 7320 6e6f 7420 6576 '/tmp' is not ev │ │ │ +001a4820: 656e 2069 6e20 2f65 7463 2f66 7374 6162 en in /etc/fstab │ │ │ +001a4830: 2c20 736f 2077 6520 6361 6e27 7420 7365 , so we can't se │ │ │ +001a4840: 7420 7570 206d 6f75 6e74 206f 7074 696f t up mount optio │ │ │ +001a4850: 6e73 2220 2667 743b 2661 6d70 3b32 3b0a ns" >&2;. │ │ │ +001a4860: 2020 2020 2020 2020 2020 2020 2020 2020 │ │ │ +001a4870: 6563 686f 2022 4e6f 7420 7265 6d65 6469 echo "Not remedi │ │ │ +001a4880: 6174 696e 672c 2062 6563 6175 7365 2074 ating, because t │ │ │ +001a4890: 6865 7265 2069 7320 6e6f 2072 6563 6f72 here is no recor │ │ │ +001a48a0: 6420 6f66 202f 746d 7020 696e 202f 6574 d of /tmp in /et │ │ │ +001a48b0: 632f 6673 7461 6222 2026 6774 3b26 616d c/fstab" >&am │ │ │ +001a48c0: 703b 323b 2072 6574 7572 6e20 313b 207d p;2; return 1; } │ │ │ +001a48d0: 0a20 2020 200a 0a0a 2020 2020 6d6f 756e . ... moun │ │ │ +001a48e0: 745f 706f 696e 745f 6d61 7463 685f 7265 t_point_match_re │ │ │ +001a48f0: 6765 7870 3d22 2428 7072 696e 7466 2022 gexp="$(printf " │ │ │ +001a4900: 5e5b 5b3a 7370 6163 653a 5d5d 2a5b 5e23 ^[[:space:]]*[^# │ │ │ +001a4910: 5d2e 2a5b 5b3a 7370 6163 653a 5d5d 2573 ].*[[:space:]]%s │ │ │ +001a4920: 5b5b 3a73 7061 6365 3a5d 5d22 202f 746d [[:space:]]" /tm │ │ │ +001a4930: 7029 220a 0a20 2020 2023 2049 6620 7468 p)".. # If th │ │ │ +001a4940: 6520 6d6f 756e 7420 706f 696e 7420 6973 e mount point is │ │ │ +001a4950: 206e 6f74 2069 6e20 2f65 7463 2f66 7374 not in /etc/fst │ │ │ +001a4960: 6162 2c20 6765 7420 7072 6576 696f 7573 ab, get previous │ │ │ +001a4970: 206d 6f75 6e74 206f 7074 696f 6e73 2066 mount options f │ │ │ +001a4980: 726f 6d20 2f65 7463 2f6d 7461 620a 2020 rom /etc/mtab. │ │ │ +001a4990: 2020 6966 2021 2067 7265 7020 2d71 2022 if ! grep -q " │ │ │ +001a49a0: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174 $mount_point_mat │ │ │ +001a49b0: 6368 5f72 6567 6578 7022 202f 6574 632f ch_regexp" /etc/ │ │ │ +001a49c0: 6673 7461 623b 2074 6865 6e0a 2020 2020 fstab; then. │ │ │ +001a49d0: 2020 2020 2320 7275 6e74 696d 6520 6f70 # runtime op │ │ │ +001a49e0: 7473 2077 6974 686f 7574 2073 6f6d 6520 ts without some │ │ │ +001a49f0: 6175 746f 6d61 7469 6320 6b65 726e 656c automatic kernel │ │ │ +001a4a00: 2f75 7365 7273 7061 6365 2d61 6464 6564 /userspace-added │ │ │ +001a4a10: 2064 6566 6175 6c74 730a 2020 2020 2020 defaults. │ │ │ +001a4a20: 2020 7072 6576 696f 7573 5f6d 6f75 6e74 previous_mount │ │ │ +001a4a30: 5f6f 7074 733d 2428 6772 6570 2022 246d _opts=$(grep "$m │ │ │ +001a4a40: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368 ount_point_match │ │ │ +001a4a50: 5f72 6567 6578 7022 202f 6574 632f 6d74 _regexp" /etc/mt │ │ │ +001a4a60: 6162 207c 2068 6561 6420 2d31 207c 2020 ab | head -1 | │ │ │ +001a4a70: 6177 6b20 277b 7072 696e 7420 2434 7d27 awk '{print $4}' │ │ │ +001a4a80: 205c 0a20 2020 2020 2020 2020 2020 2020 \. │ │ │ +001a4a90: 2020 2020 2020 207c 2073 6564 202d 4520 | sed -E │ │ │ +001a4aa0: 2273 2f28 7277 7c64 6566 6175 6c74 737c "s/(rw|defaults| │ │ │ +001a4ab0: 7365 636c 6162 656c 7c6e 6f65 7865 6329 seclabel|noexec) │ │ │ +001a4ac0: 282c 7c24 292f 2f67 3b73 2f2c 242f 2f22 (,|$)//g;s/,$//" │ │ │ +001a4ad0: 290a 2020 2020 2020 2020 5b20 2224 7072 ). [ "$pr │ │ │ +001a4ae0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074 evious_mount_opt │ │ │ +001a4af0: 7322 205d 2026 616d 703b 2661 6d70 3b20 s" ] && │ │ │ +001a4b00: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f previous_mount_o │ │ │ +001a4b10: 7074 732b 3d22 2c22 0a20 2020 2020 2020 pts+=",". │ │ │ +001a4b20: 2023 2049 6e20 6973 6f39 3636 3020 6669 # In iso9660 fi │ │ │ +001a4b30: 6c65 7379 7374 656d 7320 6d74 6162 2063 lesystems mtab c │ │ │ +001a4b40: 6f75 6c64 2064 6573 6372 6962 6520 6120 ould describe a │ │ │ +001a4b50: 2262 6c6f 636b 7369 7a65 2220 7661 6c75 "blocksize" valu │ │ │ +001a4b60: 652c 2074 6869 7320 7368 6f75 6c64 2062 e, this should b │ │ │ +001a4b70: 6520 7265 666c 6563 7465 6420 696e 0a20 e reflected in. │ │ │ +001a4b80: 2020 2020 2020 2023 2066 7374 6162 2061 # fstab a │ │ │ +001a4b90: 7320 2262 6c6f 636b 222e 2020 5468 6520 s "block". The │ │ │ +001a4ba0: 6e65 7874 2076 6172 6961 626c 6520 6973 next variable is │ │ │ +001a4bb0: 2074 6f20 7361 7469 7366 7920 7368 656c to satisfy shel │ │ │ +001a4bc0: 6c63 6865 636b 2053 4332 3035 302e 0a20 lcheck SC2050.. │ │ │ +001a4bd0: 2020 2020 2020 2066 735f 7479 7065 3d22 fs_type=" │ │ │ +001a4be0: 220a 2020 2020 2020 2020 6966 205b 2020 ". if [ │ │ │ +001a4bf0: 2224 6673 5f74 7970 6522 203d 3d20 2269 "$fs_type" == "i │ │ │ +001a4c00: 736f 3936 3630 2220 5d20 3b20 7468 656e so9660" ] ; then │ │ │ +001a4c10: 0a20 2020 2020 2020 2020 2020 2070 7265 . pre │ │ │ +001a4c20: 7669 6f75 735f 6d6f 756e 745f 6f70 7473 vious_mount_opts │ │ │ +001a4c30: 3d24 2873 6564 2027 732f 626c 6f63 6b73 =$(sed 's/blocks │ │ │ +001a4c40: 697a 653d 2f62 6c6f 636b 3d2f 2720 266c ize=/block=/' &l │ │ │ +001a4c50: 743b 266c 743b 266c 743b 2022 2470 7265 t;<< "$pre │ │ │ +001a4c60: 7669 6f75 735f 6d6f 756e 745f 6f70 7473 vious_mount_opts │ │ │ +001a4c70: 2229 0a20 2020 2020 2020 2066 690a 2020 "). fi. │ │ │ +001a4c80: 2020 2020 2020 6563 686f 2022 202f 746d echo " /tm │ │ │ +001a4c90: 7020 2064 6566 6175 6c74 732c 247b 7072 p defaults,${pr │ │ │ +001a4ca0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074 evious_mount_opt │ │ │ +001a4cb0: 737d 6e6f 6578 6563 2030 2030 2220 2667 s}noexec 0 0" &g │ │ │ +001a4cc0: 743b 2667 743b 202f 6574 632f 6673 7461 t;> /etc/fsta │ │ │ +001a4cd0: 620a 2020 2020 2320 4966 2074 6865 206d b. # If the m │ │ │ +001a4ce0: 6f75 6e74 5f6f 7074 206f 7074 696f 6e20 ount_opt option │ │ │ +001a4cf0: 6973 206e 6f74 2061 6c72 6561 6479 2069 is not already i │ │ │ +001a4d00: 6e20 7468 6520 6d6f 756e 7420 706f 696e n the mount poin │ │ │ +001a4d10: 7427 7320 2f65 7463 2f66 7374 6162 2065 t's /etc/fstab e │ │ │ +001a4d20: 6e74 7279 2c20 6164 6420 6974 0a20 2020 ntry, add it. │ │ │ +001a4d30: 2065 6c69 6620 2120 6772 6570 2022 246d elif ! grep "$m │ │ │ +001a4d40: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368 ount_point_match │ │ │ +001a4d50: 5f72 6567 6578 7022 202f 6574 632f 6673 _regexp" /etc/fs │ │ │ +001a4d60: 7461 6220 7c20 6772 6570 202d 7120 226e tab | grep -q "n │ │ │ +001a4d70: 6f65 7865 6322 3b20 7468 656e 0a20 2020 oexec"; then. │ │ │ +001a4d80: 2020 2020 2070 7265 7669 6f75 735f 6d6f previous_mo │ │ │ +001a4d90: 756e 745f 6f70 7473 3d24 2867 7265 7020 unt_opts=$(grep │ │ │ +001a4da0: 2224 6d6f 756e 745f 706f 696e 745f 6d61 "$mount_point_ma │ │ │ +001a4db0: 7463 685f 7265 6765 7870 2220 2f65 7463 tch_regexp" /etc │ │ │ +001a4dc0: 2f66 7374 6162 207c 2061 776b 2027 7b70 /fstab | awk '{p │ │ │ +001a4dd0: 7269 6e74 2024 347d 2729 0a20 2020 2020 rint $4}'). │ │ │ +001a4de0: 2020 2073 6564 202d 6920 2273 7c5c 2824 sed -i "s|\($ │ │ │ +001a4df0: 7b6d 6f75 6e74 5f70 6f69 6e74 5f6d 6174 {mount_point_mat │ │ │ +001a4e00: 6368 5f72 6567 6578 707d 2e2a 247b 7072 ch_regexp}.*${pr │ │ │ +001a4e10: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074 evious_mount_opt │ │ │ +001a4e20: 737d 5c29 7c5c 312c 6e6f 6578 6563 7c22 s}\)|\1,noexec|" │ │ │ +001a4e30: 202f 6574 632f 6673 7461 620a 2020 2020 /etc/fstab. │ │ │ +001a4e40: 6669 0a0a 0a20 2020 2069 6620 6d6b 6469 fi... if mkdi │ │ │ +001a4e50: 7220 2d70 2022 2f74 6d70 223b 2074 6865 r -p "/tmp"; the │ │ │ +001a4e60: 6e0a 2020 2020 2020 2020 6966 206d 6f75 n. if mou │ │ │ +001a4e70: 6e74 706f 696e 7420 2d71 2022 2f74 6d70 ntpoint -q "/tmp │ │ │ +001a4e80: 223b 2074 6865 6e0a 2020 2020 2020 2020 "; then. │ │ │ +001a4e90: 2020 2020 6d6f 756e 7420 2d6f 2072 656d mount -o rem │ │ │ +001a4ea0: 6f75 6e74 202d 2d74 6172 6765 7420 222f ount --target "/ │ │ │ +001a4eb0: 746d 7022 0a20 2020 2020 2020 2066 690a tmp". fi. │ │ │ +001a4ec0: 2020 2020 6669 0a7d 0a0a 7065 7266 6f72 fi.}..perfor │ │ │ +001a4ed0: 6d5f 7265 6d65 6469 6174 696f 6e0a 0a65 m_remediation..e │ │ │ +001a4ee0: 6c73 650a 2020 2020 2667 743b 2661 6d70 lse. >& │ │ │ +001a4ef0: 3b32 2065 6368 6f20 2752 656d 6564 6961 ;2 echo 'Remedia │ │ │ +001a4f00: 7469 6f6e 2069 7320 6e6f 7420 6170 706c tion is not appl │ │ │ +001a4f10: 6963 6162 6c65 2c20 6e6f 7468 696e 6720 icable, nothing │ │ │ +001a4f20: 7761 7320 646f 6e65 270a 6669 0a3c 2f63 was done'.fi.
│ │ │ +001a4f40: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +001a4fe0: 6564 6961 7469 6f6e 2041 6e61 636f 6e64 ediation Anacond │ │ │ +001a4ff0: 6120 736e 6970 7065 7420 e287 b23c 2f61 a snippet ...
< │ │ │ +001a5090: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +001a50a0: 3c74 723e 3c74 683e 4469 7372 7570 7469 Reboot:false
.p
│ │ │ +001a5130: 6172 7420 2f74 6d70 202d 2d6d 6f75 6e74  art /tmp --mount
│ │ │ +001a5140: 6f70 7469 6f6e 733d 226e 6f65 7865 6322  options="noexec"
│ │ │  001a5150: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
< │ │ │ 001a5170: 2f74 723e 3c2f 7462 6f64 793e 3c2f 7461 /tr>Remediation Ana │ │ │ -001a6250: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ -001a6260: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
C │ │ │ +001a5080: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +001a50b0: 6f6e 3a3c 2f74 683e 3c74 643e 6869 6768 on:high │ │ │ +001a50c0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +001a5100: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ +001a5110: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ -001a62e0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -001a6300: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr> │ │ │ -001a6350: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ -001a6380: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.part /tmp --m
│ │ │ -001a63a0: 6f75 6e74 6f70 7469 6f6e 733d 226e 6f73  ountoptions="nos
│ │ │ -001a63b0: 7569 6422 0a3c 2f63 6f64 653e 3c2f 7072  uid".Remediation
│ │ │ -001a6470: 2041 6e73 6962 6c65 2073 6e69 7070 6574   Ansible snippet
│ │ │ -001a6480: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
< │ │ │ -001a6540: 7464 3e68 6967 683c 2f74 643e 3c2f 7472 td>highconfigure │ │ │ -001a65a0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
low
Disr │ │ │ -001a6310: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -001a6320: 6869 6768 3c2f 7464 3e3c 2f74 723e 3c74 high
Reboot:false
Str │ │ │ -001a6360: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ -001a6370: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
Complexity │ │ │ -001a6510: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ -001a6530: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot: │ │ │ -001a6560: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ -001a6580: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
- name: │ │ │ -001a65c0: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ -001a65d0: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ -001a65e0: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ -001a65f0: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ -001a6600: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ -001a6610: 2d35 332d 4143 2d36 0a20 202d 204e 4953 -53-AC-6. - NIS │ │ │ -001a6620: 542d 3830 302d 3533 2d41 432d 3628 3129 T-800-53-AC-6(1) │ │ │ -001a6630: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001a6640: 2d43 4d2d 3628 6129 0a20 202d 204e 4953 -CM-6(a). - NIS │ │ │ -001a6650: 542d 3830 302d 3533 2d43 4d2d 3728 6129 T-800-53-CM-7(a) │ │ │ -001a6660: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001a6670: 2d43 4d2d 3728 6229 0a20 202d 204e 4953 -CM-7(b). - NIS │ │ │ -001a6680: 542d 3830 302d 3533 2d4d 502d 370a 2020 T-800-53-MP-7. │ │ │ -001a6690: 2d20 636f 6e66 6967 7572 655f 7374 7261 - configure_stra │ │ │ -001a66a0: 7465 6779 0a20 202d 2068 6967 685f 6469 tegy. - high_di │ │ │ -001a66b0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77 sruption. - low │ │ │ -001a66c0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ -001a66d0: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ -001a66e0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e - mount_option │ │ │ -001a66f0: 5f74 6d70 5f6e 6f73 7569 640a 2020 2d20 _tmp_nosuid. - │ │ │ -001a6700: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564 no_reboot_needed │ │ │ -001a6710: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e ..- name: 'Add n │ │ │ -001a6720: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20 osuid Option to │ │ │ -001a6730: 2f74 6d70 3a20 4368 6563 6b20 696e 666f /tmp: Check info │ │ │ -001a6740: 726d 6174 696f 6e20 6173 736f 6369 6174 rmation associat │ │ │ -001a6750: 6564 2074 6f20 6d6f 756e 7470 6f69 6e74 ed to mountpoint │ │ │ -001a6760: 270a 2020 616e 7369 626c 652e 6275 696c '. ansible.buil │ │ │ -001a6770: 7469 6e2e 636f 6d6d 616e 643a 2066 696e tin.command: fin │ │ │ -001a6780: 646d 6e74 202d 2d66 7374 6162 2027 2f74 dmnt --fstab '/t │ │ │ -001a6790: 6d70 270a 2020 7265 6769 7374 6572 3a20 mp'. register: │ │ │ -001a67a0: 6465 7669 6365 5f6e 616d 650a 2020 6661 device_name. fa │ │ │ -001a67b0: 696c 6564 5f77 6865 6e3a 2064 6576 6963 iled_when: devic │ │ │ -001a67c0: 655f 6e61 6d65 2e72 6320 2667 743b 2031 e_name.rc > 1 │ │ │ -001a67d0: 0a20 2063 6861 6e67 6564 5f77 6865 6e3a . changed_when: │ │ │ -001a67e0: 2066 616c 7365 0a20 2063 6865 636b 5f6d false. check_m │ │ │ -001a67f0: 6f64 653a 2066 616c 7365 0a20 2077 6865 ode: false. whe │ │ │ -001a6800: 6e3a 0a20 202d 2028 206e 6f74 2028 2022 n:. - ( not ( " │ │ │ -001a6810: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ -001a6820: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -001a6830: 7320 616e 6420 2272 706d 2d6f 7374 7265 s and "rpm-ostre │ │ │ -001a6840: 6522 2069 6e20 616e 7369 626c 655f 6661 e" in ansible_fa │ │ │ -001a6850: 6374 732e 7061 636b 6167 6573 0a20 2020 cts.packages. │ │ │ -001a6860: 2061 6e64 2022 626f 6f74 6322 2069 6e20 and "bootc" in │ │ │ -001a6870: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -001a6880: 636b 6167 6573 2061 6e64 206e 6f74 2022 ckages and not " │ │ │ -001a6890: 6f70 656e 7368 6966 742d 6b75 6265 6c65 openshift-kubele │ │ │ -001a68a0: 7422 2069 6e20 616e 7369 626c 655f 6661 t" in ansible_fa │ │ │ -001a68b0: 6374 732e 7061 636b 6167 6573 0a20 2020 cts.packages. │ │ │ -001a68c0: 2061 6e64 2022 6f73 7472 6565 2220 696e and "ostree" in │ │ │ -001a68d0: 2061 6e73 6962 6c65 5f70 726f 635f 636d ansible_proc_cm │ │ │ -001a68e0: 646c 696e 6520 2920 616e 6420 6e6f 7420 dline ) and not │ │ │ -001a68f0: 2820 616e 7369 626c 655f 7669 7274 7561 ( ansible_virtua │ │ │ -001a6900: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e lization_type in │ │ │ -001a6910: 0a20 2020 205b 2264 6f63 6b65 7222 2c20 . ["docker", │ │ │ -001a6920: 226c 7863 222c 2022 6f70 656e 767a 222c "lxc", "openvz", │ │ │ -001a6930: 2022 706f 646d 616e 222c 2022 636f 6e74 "podman", "cont │ │ │ -001a6940: 6169 6e65 7222 5d20 2920 290a 2020 2d20 ainer"] ) ). - │ │ │ -001a6950: 2722 2f74 6d70 2220 696e 2061 6e73 6962 '"/tmp" in ansib │ │ │ -001a6960: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028 le_mounts | map( │ │ │ -001a6970: 6174 7472 6962 7574 653d 226d 6f75 6e74 attribute="mount │ │ │ -001a6980: 2229 207c 206c 6973 7427 0a20 2074 6167 ") | list'. tag │ │ │ -001a6990: 733a 0a20 202d 204e 4953 542d 3830 302d s:. - NIST-800- │ │ │ -001a69a0: 3533 2d41 432d 360a 2020 2d20 4e49 5354 53-AC-6. - NIST │ │ │ -001a69b0: 2d38 3030 2d35 332d 4143 2d36 2831 290a -800-53-AC-6(1). │ │ │ -001a69c0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -001a69d0: 434d 2d36 2861 290a 2020 2d20 4e49 5354 CM-6(a). - NIST │ │ │ -001a69e0: 2d38 3030 2d35 332d 434d 2d37 2861 290a -800-53-CM-7(a). │ │ │ -001a69f0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -001a6a00: 434d 2d37 2862 290a 2020 2d20 4e49 5354 CM-7(b). - NIST │ │ │ -001a6a10: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d -800-53-MP-7. - │ │ │ -001a6a20: 2063 6f6e 6669 6775 7265 5f73 7472 6174 configure_strat │ │ │ -001a6a30: 6567 790a 2020 2d20 6869 6768 5f64 6973 egy. - high_dis │ │ │ -001a6a40: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f ruption. - low_ │ │ │ -001a6a50: 636f 6d70 6c65 7869 7479 0a20 202d 206d complexity. - m │ │ │ -001a6a60: 6564 6975 6d5f 7365 7665 7269 7479 0a20 edium_severity. │ │ │ -001a6a70: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f - mount_option_ │ │ │ -001a6a80: 746d 705f 6e6f 7375 6964 0a20 202d 206e tmp_nosuid. - n │ │ │ -001a6a90: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a o_reboot_needed. │ │ │ -001a6aa0: 0a2d 206e 616d 653a 2027 4164 6420 6e6f .- name: 'Add no │ │ │ -001a6ab0: 7375 6964 204f 7074 696f 6e20 746f 202f suid Option to / │ │ │ -001a6ac0: 746d 703a 2043 7265 6174 6520 6d6f 756e tmp: Create moun │ │ │ -001a6ad0: 745f 696e 666f 2064 6963 7469 6f6e 6172 t_info dictionar │ │ │ -001a6ae0: 7920 7661 7269 6162 6c65 270a 2020 7365 y variable'. se │ │ │ -001a6af0: 745f 6661 6374 3a0a 2020 2020 6d6f 756e t_fact:. moun │ │ │ -001a6b00: 745f 696e 666f 3a20 277b 7b20 6d6f 756e t_info: '{{ moun │ │ │ -001a6b10: 745f 696e 666f 7c64 6566 6175 6c74 287b t_info|default({ │ │ │ -001a6b20: 7d29 7c63 6f6d 6269 6e65 287b 6974 656d })|combine({item │ │ │ -001a6b30: 2e30 3a20 6974 656d 2e31 7d29 207d 7d27 .0: item.1}) }}' │ │ │ -001a6b40: 0a20 2077 6974 685f 746f 6765 7468 6572 . with_together │ │ │ -001a6b50: 3a0a 2020 2d20 277b 7b20 6465 7669 6365 :. - '{{ device │ │ │ -001a6b60: 5f6e 616d 652e 7374 646f 7574 5f6c 696e _name.stdout_lin │ │ │ -001a6b70: 6573 5b30 5d2e 7370 6c69 7428 2920 7c20 es[0].split() | │ │ │ -001a6b80: 6d61 7028 2727 6c6f 7765 7227 2729 207c map(''lower'') | │ │ │ -001a6b90: 206c 6973 7420 7d7d 270a 2020 2d20 277b list }}'. - '{ │ │ │ -001a6ba0: 7b20 6465 7669 6365 5f6e 616d 652e 7374 { device_name.st │ │ │ -001a6bb0: 646f 7574 5f6c 696e 6573 5b31 5d2e 7370 dout_lines[1].sp │ │ │ -001a6bc0: 6c69 7428 2920 7c20 6c69 7374 207d 7d27 lit() | list }}' │ │ │ -001a6bd0: 0a20 2077 6865 6e3a 0a20 202d 2028 206e . when:. - ( n │ │ │ -001a6be0: 6f74 2028 2022 6b65 726e 656c 2220 696e ot ( "kernel" in │ │ │ -001a6bf0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -001a6c00: 6163 6b61 6765 7320 616e 6420 2272 706d ackages and "rpm │ │ │ -001a6c10: 2d6f 7374 7265 6522 2069 6e20 616e 7369 -ostree" in ansi │ │ │ -001a6c20: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -001a6c30: 6573 0a20 2020 2061 6e64 2022 626f 6f74 es. and "boot │ │ │ -001a6c40: 6322 2069 6e20 616e 7369 626c 655f 6661 c" in ansible_fa │ │ │ -001a6c50: 6374 732e 7061 636b 6167 6573 2061 6e64 cts.packages and │ │ │ -001a6c60: 206e 6f74 2022 6f70 656e 7368 6966 742d not "openshift- │ │ │ -001a6c70: 6b75 6265 6c65 7422 2069 6e20 616e 7369 kubelet" in ansi │ │ │ -001a6c80: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -001a6c90: 6573 0a20 2020 2061 6e64 2022 6f73 7472 es. and "ostr │ │ │ -001a6ca0: 6565 2220 696e 2061 6e73 6962 6c65 5f70 ee" in ansible_p │ │ │ -001a6cb0: 726f 635f 636d 646c 696e 6520 2920 616e roc_cmdline ) an │ │ │ -001a6cc0: 6420 6e6f 7420 2820 616e 7369 626c 655f d not ( ansible_ │ │ │ -001a6cd0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74 virtualization_t │ │ │ -001a6ce0: 7970 6520 696e 0a20 2020 205b 2264 6f63 ype in. ["doc │ │ │ -001a6cf0: 6b65 7222 2c20 226c 7863 222c 2022 6f70 ker", "lxc", "op │ │ │ -001a6d00: 656e 767a 222c 2022 706f 646d 616e 222c envz", "podman", │ │ │ -001a6d10: 2022 636f 6e74 6169 6e65 7222 5d20 2920 "container"] ) │ │ │ -001a6d20: 290a 2020 2d20 2722 2f74 6d70 2220 696e ). - '"/tmp" in │ │ │ -001a6d30: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320 ansible_mounts │ │ │ -001a6d40: 7c20 6d61 7028 6174 7472 6962 7574 653d | map(attribute= │ │ │ -001a6d50: 226d 6f75 6e74 2229 207c 206c 6973 7427 "mount") | list' │ │ │ -001a6d60: 0a20 202d 2064 6576 6963 655f 6e61 6d65 . - device_name │ │ │ -001a6d70: 2e73 7464 6f75 7420 6973 2064 6566 696e .stdout is defin │ │ │ -001a6d80: 6564 2061 6e64 2064 6576 6963 655f 6e61 ed and device_na │ │ │ -001a6d90: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320 me.stdout_lines │ │ │ -001a6da0: 6973 2064 6566 696e 6564 0a20 202d 2028 is defined. - ( │ │ │ -001a6db0: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ -001a6dc0: 7574 207c 206c 656e 6774 6820 2667 743b ut | length > │ │ │ -001a6dd0: 2030 290a 2020 7461 6773 3a0a 2020 2d20 0). tags:. - │ │ │ -001a6de0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36 NIST-800-53-AC-6 │ │ │ -001a6df0: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001a6e00: 2d41 432d 3628 3129 0a20 202d 204e 4953 -AC-6(1). - NIS │ │ │ -001a6e10: 542d 3830 302d 3533 2d43 4d2d 3628 6129 T-800-53-CM-6(a) │ │ │ -001a6e20: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001a6e30: 2d43 4d2d 3728 6129 0a20 202d 204e 4953 -CM-7(a). - NIS │ │ │ -001a6e40: 542d 3830 302d 3533 2d43 4d2d 3728 6229 T-800-53-CM-7(b) │ │ │ -001a6e50: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001a6e60: 2d4d 502d 370a 2020 2d20 636f 6e66 6967 -MP-7. - config │ │ │ -001a6e70: 7572 655f 7374 7261 7465 6779 0a20 202d ure_strategy. - │ │ │ -001a6e80: 2068 6967 685f 6469 7372 7570 7469 6f6e high_disruption │ │ │ -001a6e90: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ -001a6ea0: 6974 790a 2020 2d20 6d65 6469 756d 5f73 ity. - medium_s │ │ │ -001a6eb0: 6576 6572 6974 790a 2020 2d20 6d6f 756e everity. - moun │ │ │ -001a6ec0: 745f 6f70 7469 6f6e 5f74 6d70 5f6e 6f73 t_option_tmp_nos │ │ │ -001a6ed0: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f uid. - no_reboo │ │ │ -001a6ee0: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65 t_needed..- name │ │ │ -001a6ef0: 3a20 2741 6464 206e 6f73 7569 6420 4f70 : 'Add nosuid Op │ │ │ -001a6f00: 7469 6f6e 2074 6f20 2f74 6d70 3a20 4966 tion to /tmp: If │ │ │ -001a6f10: 202f 746d 7020 6e6f 7420 6d6f 756e 7465 /tmp not mounte │ │ │ -001a6f20: 642c 2063 7261 6674 206d 6f75 6e74 5f69 d, craft mount_i │ │ │ -001a6f30: 6e66 6f20 6d61 6e75 616c 6c79 270a 2020 nfo manually'. │ │ │ -001a6f40: 7365 745f 6661 6374 3a0a 2020 2020 6d6f set_fact:. mo │ │ │ -001a6f50: 756e 745f 696e 666f 3a20 277b 7b20 6d6f unt_info: '{{ mo │ │ │ -001a6f60: 756e 745f 696e 666f 7c64 6566 6175 6c74 unt_info|default │ │ │ -001a6f70: 287b 7d29 7c63 6f6d 6269 6e65 287b 6974 ({})|combine({it │ │ │ -001a6f80: 656d 2e30 3a20 6974 656d 2e31 7d29 207d em.0: item.1}) } │ │ │ -001a6f90: 7d27 0a20 2077 6974 685f 746f 6765 7468 }'. with_togeth │ │ │ -001a6fa0: 6572 3a0a 2020 2d20 2d20 7461 7267 6574 er:. - - target │ │ │ -001a6fb0: 0a20 2020 202d 2073 6f75 7263 650a 2020 . - source. │ │ │ -001a6fc0: 2020 2d20 6673 7479 7065 0a20 2020 202d - fstype. - │ │ │ -001a6fd0: 206f 7074 696f 6e73 0a20 202d 202d 202f options. - - / │ │ │ -001a6fe0: 746d 700a 2020 2020 2d20 2727 0a20 2020 tmp. - ''. │ │ │ -001a6ff0: 202d 2027 270a 2020 2020 2d20 6465 6661 - ''. - defa │ │ │ -001a7000: 756c 7473 0a20 2077 6865 6e3a 0a20 202d ults. when:. - │ │ │ -001a7010: 2028 206e 6f74 2028 2022 6b65 726e 656c ( not ( "kernel │ │ │ -001a7020: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -001a7030: 7473 2e70 6163 6b61 6765 7320 616e 6420 ts.packages and │ │ │ -001a7040: 2272 706d 2d6f 7374 7265 6522 2069 6e20 "rpm-ostree" in │ │ │ -001a7050: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -001a7060: 636b 6167 6573 0a20 2020 2061 6e64 2022 ckages. and " │ │ │ -001a7070: 626f 6f74 6322 2069 6e20 616e 7369 626c bootc" in ansibl │ │ │ -001a7080: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -001a7090: 2061 6e64 206e 6f74 2022 6f70 656e 7368 and not "opensh │ │ │ -001a70a0: 6966 742d 6b75 6265 6c65 7422 2069 6e20 ift-kubelet" in │ │ │ -001a70b0: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -001a70c0: 636b 6167 6573 0a20 2020 2061 6e64 2022 ckages. and " │ │ │ -001a70d0: 6f73 7472 6565 2220 696e 2061 6e73 6962 ostree" in ansib │ │ │ -001a70e0: 6c65 5f70 726f 635f 636d 646c 696e 6520 le_proc_cmdline │ │ │ -001a70f0: 2920 616e 6420 6e6f 7420 2820 616e 7369 ) and not ( ansi │ │ │ -001a7100: 626c 655f 7669 7274 7561 6c69 7a61 7469 ble_virtualizati │ │ │ -001a7110: 6f6e 5f74 7970 6520 696e 0a20 2020 205b on_type in. [ │ │ │ -001a7120: 2264 6f63 6b65 7222 2c20 226c 7863 222c "docker", "lxc", │ │ │ -001a7130: 2022 6f70 656e 767a 222c 2022 706f 646d "openvz", "podm │ │ │ -001a7140: 616e 222c 2022 636f 6e74 6169 6e65 7222 an", "container" │ │ │ -001a7150: 5d20 2920 290a 2020 2d20 2722 2f74 6d70 ] ) ). - '"/tmp │ │ │ -001a7160: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75 " in ansible_mou │ │ │ -001a7170: 6e74 7320 7c20 6d61 7028 6174 7472 6962 nts | map(attrib │ │ │ -001a7180: 7574 653d 226d 6f75 6e74 2229 207c 206c ute="mount") | l │ │ │ -001a7190: 6973 7427 0a20 202d 2028 222d 2d66 7374 ist'. - ("--fst │ │ │ -001a71a0: 6162 2220 7c20 6c65 6e67 7468 203d 3d20 ab" | length == │ │ │ -001a71b0: 3029 0a20 202d 2064 6576 6963 655f 6e61 0). - device_na │ │ │ -001a71c0: 6d65 2e73 7464 6f75 7420 6973 2064 6566 me.stdout is def │ │ │ -001a71d0: 696e 6564 2061 6e64 2064 6576 6963 655f ined and device_ │ │ │ -001a71e0: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65 name.stdout_line │ │ │ -001a71f0: 7320 6973 2064 6566 696e 6564 0a20 202d s is defined. - │ │ │ -001a7200: 2028 6465 7669 6365 5f6e 616d 652e 7374 (device_name.st │ │ │ -001a7210: 646f 7574 207c 206c 656e 6774 6820 3d3d dout | length == │ │ │ -001a7220: 2030 290a 2020 7461 6773 3a0a 2020 2d20 0). tags:. - │ │ │ -001a7230: 4e49 5354 2d38 3030 2d35 332d 4143 2d36 NIST-800-53-AC-6 │ │ │ -001a7240: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001a7250: 2d41 432d 3628 3129 0a20 202d 204e 4953 -AC-6(1). - NIS │ │ │ -001a7260: 542d 3830 302d 3533 2d43 4d2d 3628 6129 T-800-53-CM-6(a) │ │ │ -001a7270: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001a7280: 2d43 4d2d 3728 6129 0a20 202d 204e 4953 -CM-7(a). - NIS │ │ │ -001a7290: 542d 3830 302d 3533 2d43 4d2d 3728 6229 T-800-53-CM-7(b) │ │ │ -001a72a0: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001a72b0: 2d4d 502d 370a 2020 2d20 636f 6e66 6967 -MP-7. - config │ │ │ -001a72c0: 7572 655f 7374 7261 7465 6779 0a20 202d ure_strategy. - │ │ │ -001a72d0: 2068 6967 685f 6469 7372 7570 7469 6f6e high_disruption │ │ │ -001a72e0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ -001a72f0: 6974 790a 2020 2d20 6d65 6469 756d 5f73 ity. - medium_s │ │ │ -001a7300: 6576 6572 6974 790a 2020 2d20 6d6f 756e everity. - moun │ │ │ -001a7310: 745f 6f70 7469 6f6e 5f74 6d70 5f6e 6f73 t_option_tmp_nos │ │ │ -001a7320: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f uid. - no_reboo │ │ │ -001a7330: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65 t_needed..- name │ │ │ -001a7340: 3a20 2741 6464 206e 6f73 7569 6420 4f70 : 'Add nosuid Op │ │ │ -001a7350: 7469 6f6e 2074 6f20 2f74 6d70 3a20 4d61 tion to /tmp: Ma │ │ │ -001a7360: 6b65 2073 7572 6520 6e6f 7375 6964 206f ke sure nosuid o │ │ │ -001a7370: 7074 696f 6e20 6973 2070 6172 7420 6f66 ption is part of │ │ │ -001a7380: 2074 6865 2074 6f20 2f74 6d70 0a20 2020 the to /tmp. │ │ │ -001a7390: 206f 7074 696f 6e73 270a 2020 7365 745f options'. set_ │ │ │ -001a73a0: 6661 6374 3a0a 2020 2020 6d6f 756e 745f fact:. mount_ │ │ │ -001a73b0: 696e 666f 3a20 277b 7b20 6d6f 756e 745f info: '{{ mount_ │ │ │ -001a73c0: 696e 666f 207c 2063 6f6d 6269 6e65 2820 info | combine( │ │ │ -001a73d0: 7b27 276f 7074 696f 6e73 2727 3a27 2727 {''options'':''' │ │ │ -001a73e0: 277e 286d 6f75 6e74 5f69 6e66 6f2e 6f70 '~(mount_info.op │ │ │ -001a73f0: 7469 6f6e 7320 7c0a 2020 2020 2020 6465 tions |. de │ │ │ -001a7400: 6661 756c 7428 2727 2727 2929 7e28 2727 fault(''''))~('' │ │ │ -001a7410: 2c27 2720 6966 2028 6d6f 756e 745f 696e ,'' if (mount_in │ │ │ -001a7420: 666f 2e6f 7074 696f 6e73 207c 2064 6566 fo.options | def │ │ │ -001a7430: 6175 6c74 2827 2727 2729 2920 656c 7365 ault('''')) else │ │ │ -001a7440: 2027 2727 2729 7e27 276e 6f73 7569 6427 '''')~''nosuid' │ │ │ -001a7450: 270a 2020 2020 2020 7d29 207d 7d27 0a20 '. }) }}'. │ │ │ -001a7460: 2077 6865 6e3a 0a20 202d 2028 206e 6f74 when:. - ( not │ │ │ -001a7470: 2028 2022 6b65 726e 656c 2220 696e 2061 ( "kernel" in a │ │ │ -001a7480: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ -001a7490: 6b61 6765 7320 616e 6420 2272 706d 2d6f kages and "rpm-o │ │ │ -001a74a0: 7374 7265 6522 2069 6e20 616e 7369 626c stree" in ansibl │ │ │ -001a74b0: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -001a74c0: 0a20 2020 2061 6e64 2022 626f 6f74 6322 . and "bootc" │ │ │ -001a74d0: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -001a74e0: 732e 7061 636b 6167 6573 2061 6e64 206e s.packages and n │ │ │ -001a74f0: 6f74 2022 6f70 656e 7368 6966 742d 6b75 ot "openshift-ku │ │ │ -001a7500: 6265 6c65 7422 2069 6e20 616e 7369 626c belet" in ansibl │ │ │ -001a7510: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -001a7520: 0a20 2020 2061 6e64 2022 6f73 7472 6565 . and "ostree │ │ │ -001a7530: 2220 696e 2061 6e73 6962 6c65 5f70 726f " in ansible_pro │ │ │ -001a7540: 635f 636d 646c 696e 6520 2920 616e 6420 c_cmdline ) and │ │ │ -001a7550: 6e6f 7420 2820 616e 7369 626c 655f 7669 not ( ansible_vi │ │ │ -001a7560: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970 rtualization_typ │ │ │ -001a7570: 6520 696e 0a20 2020 205b 2264 6f63 6b65 e in. ["docke │ │ │ -001a7580: 7222 2c20 226c 7863 222c 2022 6f70 656e r", "lxc", "open │ │ │ -001a7590: 767a 222c 2022 706f 646d 616e 222c 2022 vz", "podman", " │ │ │ -001a75a0: 636f 6e74 6169 6e65 7222 5d20 2920 290a container"] ) ). │ │ │ -001a75b0: 2020 2d20 2722 2f74 6d70 2220 696e 2061 - '"/tmp" in a │ │ │ -001a75c0: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20 nsible_mounts | │ │ │ -001a75d0: 6d61 7028 6174 7472 6962 7574 653d 226d map(attribute="m │ │ │ -001a75e0: 6f75 6e74 2229 207c 206c 6973 7427 0a20 ount") | list'. │ │ │ -001a75f0: 202d 206d 6f75 6e74 5f69 6e66 6f20 6973 - mount_info is │ │ │ -001a7600: 2064 6566 696e 6564 2061 6e64 2022 6e6f defined and "no │ │ │ -001a7610: 7375 6964 2220 6e6f 7420 696e 2028 6d6f suid" not in (mo │ │ │ -001a7620: 756e 745f 696e 666f 2e6f 7074 696f 6e73 unt_info.options │ │ │ -001a7630: 207c 2064 6566 6175 6c74 2827 2729 290a | default('')). │ │ │ -001a7640: 2020 7461 6773 3a0a 2020 2d20 4e49 5354 tags:. - NIST │ │ │ -001a7650: 2d38 3030 2d35 332d 4143 2d36 0a20 202d -800-53-AC-6. - │ │ │ -001a7660: 204e 4953 542d 3830 302d 3533 2d41 432d NIST-800-53-AC- │ │ │ -001a7670: 3628 3129 0a20 202d 204e 4953 542d 3830 6(1). - NIST-80 │ │ │ -001a7680: 302d 3533 2d43 4d2d 3628 6129 0a20 202d 0-53-CM-6(a). - │ │ │ -001a7690: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ -001a76a0: 3728 6129 0a20 202d 204e 4953 542d 3830 7(a). - NIST-80 │ │ │ -001a76b0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d 0-53-CM-7(b). - │ │ │ -001a76c0: 204e 4953 542d 3830 302d 3533 2d4d 502d NIST-800-53-MP- │ │ │ -001a76d0: 370a 2020 2d20 636f 6e66 6967 7572 655f 7. - configure_ │ │ │ -001a76e0: 7374 7261 7465 6779 0a20 202d 2068 6967 strategy. - hig │ │ │ -001a76f0: 685f 6469 7372 7570 7469 6f6e 0a20 202d h_disruption. - │ │ │ -001a7700: 206c 6f77 5f63 6f6d 706c 6578 6974 790a low_complexity. │ │ │ -001a7710: 2020 2d20 6d65 6469 756d 5f73 6576 6572 - medium_sever │ │ │ -001a7720: 6974 790a 2020 2d20 6d6f 756e 745f 6f70 ity. - mount_op │ │ │ -001a7730: 7469 6f6e 5f74 6d70 5f6e 6f73 7569 640a tion_tmp_nosuid. │ │ │ -001a7740: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ -001a7750: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741 eded..- name: 'A │ │ │ -001a7760: 6464 206e 6f73 7569 6420 4f70 7469 6f6e dd nosuid Option │ │ │ -001a7770: 2074 6f20 2f74 6d70 3a20 456e 7375 7265 to /tmp: Ensure │ │ │ -001a7780: 202f 746d 7020 6973 206d 6f75 6e74 6564 /tmp is mounted │ │ │ -001a7790: 2077 6974 6820 6e6f 7375 6964 206f 7074 with nosuid opt │ │ │ -001a77a0: 696f 6e27 0a20 2061 6e73 6962 6c65 2e70 ion'. ansible.p │ │ │ -001a77b0: 6f73 6978 2e6d 6f75 6e74 3a0a 2020 2020 osix.mount:. │ │ │ -001a77c0: 7061 7468 3a20 2f74 6d70 0a20 2020 2073 path: /tmp. s │ │ │ -001a77d0: 7263 3a20 277b 7b20 6d6f 756e 745f 696e rc: '{{ mount_in │ │ │ -001a77e0: 666f 2e73 6f75 7263 6520 7c20 6465 6661 fo.source | defa │ │ │ -001a77f0: 756c 7428 2727 2727 2920 7d7d 270a 2020 ult('''') }}'. │ │ │ -001a7800: 2020 6f70 7473 3a20 277b 7b20 6d6f 756e opts: '{{ moun │ │ │ -001a7810: 745f 696e 666f 2e6f 7074 696f 6e73 207c t_info.options | │ │ │ -001a7820: 2064 6566 6175 6c74 2827 2727 2729 207d default('''') } │ │ │ -001a7830: 7d27 0a20 2020 2073 7461 7465 3a20 6d6f }'. state: mo │ │ │ -001a7840: 756e 7465 640a 2020 2020 6673 7479 7065 unted. fstype │ │ │ -001a7850: 3a20 277b 7b20 6d6f 756e 745f 696e 666f : '{{ mount_info │ │ │ -001a7860: 2e66 7374 7970 6520 7c20 6465 6661 756c .fstype | defaul │ │ │ -001a7870: 7428 2727 2727 2920 7d7d 270a 2020 7265 t('''') }}'. re │ │ │ -001a7880: 6769 7374 6572 3a20 6d6f 756e 745f 7265 gister: mount_re │ │ │ -001a7890: 7375 6c74 0a20 2066 6169 6c65 645f 7768 sult. failed_wh │ │ │ -001a78a0: 656e 3a0a 2020 2d20 6d6f 756e 745f 7265 en:. - mount_re │ │ │ -001a78b0: 7375 6c74 2069 7320 6661 696c 6564 0a20 sult is failed. │ │ │ -001a78c0: 202d 2027 2727 7461 7267 6574 2069 7320 - '''target is │ │ │ -001a78d0: 6275 7379 2727 206e 6f74 2069 6e20 286d busy'' not in (m │ │ │ -001a78e0: 6f75 6e74 5f72 6573 756c 742e 6d73 6720 ount_result.msg │ │ │ -001a78f0: 7c20 6465 6661 756c 7428 2727 2727 2929 | default('''')) │ │ │ -001a7900: 270a 2020 2d20 2727 2761 6c72 6561 6479 '. - '''already │ │ │ -001a7910: 206d 6f75 6e74 6564 2727 206e 6f74 2069 mounted'' not i │ │ │ -001a7920: 6e20 286d 6f75 6e74 5f72 6573 756c 742e n (mount_result. │ │ │ -001a7930: 6d73 6720 7c20 6465 6661 756c 7428 2727 msg | default('' │ │ │ -001a7940: 2727 2929 270a 2020 7768 656e 3a0a 2020 ''))'. when:. │ │ │ -001a7950: 2d20 2820 6e6f 7420 2820 226b 6572 6e65 - ( not ( "kerne │ │ │ -001a7960: 6c22 2069 6e20 616e 7369 626c 655f 6661 l" in ansible_fa │ │ │ -001a7970: 6374 732e 7061 636b 6167 6573 2061 6e64 cts.packages and │ │ │ -001a7980: 2022 7270 6d2d 6f73 7472 6565 2220 696e "rpm-ostree" in │ │ │ -001a7990: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -001a79a0: 6163 6b61 6765 730a 2020 2020 616e 6420 ackages. and │ │ │ -001a79b0: 2262 6f6f 7463 2220 696e 2061 6e73 6962 "bootc" in ansib │ │ │ -001a79c0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -001a79d0: 7320 616e 6420 6e6f 7420 226f 7065 6e73 s and not "opens │ │ │ -001a79e0: 6869 6674 2d6b 7562 656c 6574 2220 696e hift-kubelet" in │ │ │ -001a79f0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -001a7a00: 6163 6b61 6765 730a 2020 2020 616e 6420 ackages. and │ │ │ -001a7a10: 226f 7374 7265 6522 2069 6e20 616e 7369 "ostree" in ansi │ │ │ -001a7a20: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65 ble_proc_cmdline │ │ │ -001a7a30: 2029 2061 6e64 206e 6f74 2028 2061 6e73 ) and not ( ans │ │ │ -001a7a40: 6962 6c65 5f76 6972 7475 616c 697a 6174 ible_virtualizat │ │ │ -001a7a50: 696f 6e5f 7479 7065 2069 6e0a 2020 2020 ion_type in. │ │ │ -001a7a60: 5b22 646f 636b 6572 222c 2022 6c78 6322 ["docker", "lxc" │ │ │ -001a7a70: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64 , "openvz", "pod │ │ │ -001a7a80: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572 man", "container │ │ │ -001a7a90: 225d 2029 2029 0a20 202d 2027 222f 746d "] ) ). - '"/tm │ │ │ -001a7aa0: 7022 2069 6e20 616e 7369 626c 655f 6d6f p" in ansible_mo │ │ │ -001a7ab0: 756e 7473 207c 206d 6170 2861 7474 7269 unts | map(attri │ │ │ -001a7ac0: 6275 7465 3d22 6d6f 756e 7422 2920 7c20 bute="mount") | │ │ │ -001a7ad0: 6c69 7374 270a 2020 2d20 6d6f 756e 745f list'. - mount_ │ │ │ -001a7ae0: 696e 666f 2069 7320 6465 6669 6e65 640a info is defined. │ │ │ -001a7af0: 2020 2d20 2864 6576 6963 655f 6e61 6d65 - (device_name │ │ │ -001a7b00: 2e73 7464 6f75 7420 6973 2064 6566 696e .stdout is defin │ │ │ -001a7b10: 6564 2061 6e64 2028 6465 7669 6365 5f6e ed and (device_n │ │ │ -001a7b20: 616d 652e 7374 646f 7574 207c 206c 656e ame.stdout | len │ │ │ -001a7b30: 6774 6820 2667 743b 2030 2929 206f 7220 gth > 0)) or │ │ │ -001a7b40: 2822 2d2d 6673 7461 6222 0a20 2020 207c ("--fstab". | │ │ │ -001a7b50: 206c 656e 6774 6820 3d3d 2030 290a 2020 length == 0). │ │ │ -001a7b60: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ -001a7b70: 3030 2d35 332d 4143 2d36 0a20 202d 204e 00-53-AC-6. - N │ │ │ -001a7b80: 4953 542d 3830 302d 3533 2d41 432d 3628 IST-800-53-AC-6( │ │ │ -001a7b90: 3129 0a20 202d 204e 4953 542d 3830 302d 1). - NIST-800- │ │ │ -001a7ba0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e 53-CM-6(a). - N │ │ │ -001a7bb0: 4953 542d 3830 302d 3533 2d43 4d2d 3728 IST-800-53-CM-7( │ │ │ -001a7bc0: 6129 0a20 202d 204e 4953 542d 3830 302d a). - NIST-800- │ │ │ -001a7bd0: 3533 2d43 4d2d 3728 6229 0a20 202d 204e 53-CM-7(b). - N │ │ │ -001a7be0: 4953 542d 3830 302d 3533 2d4d 502d 370a IST-800-53-MP-7. │ │ │ -001a7bf0: 2020 2d20 636f 6e66 6967 7572 655f 7374 - configure_st │ │ │ -001a7c00: 7261 7465 6779 0a20 202d 2068 6967 685f rategy. - high_ │ │ │ -001a7c10: 6469 7372 7570 7469 6f6e 0a20 202d 206c disruption. - l │ │ │ -001a7c20: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ -001a7c30: 2d20 6d65 6469 756d 5f73 6576 6572 6974 - medium_severit │ │ │ -001a7c40: 790a 2020 2d20 6d6f 756e 745f 6f70 7469 y. - mount_opti │ │ │ -001a7c50: 6f6e 5f74 6d70 5f6e 6f73 7569 640a 2020 on_tmp_nosuid. │ │ │ -001a7c60: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ -001a7c70: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e ed. │ │ │ -001a7c80: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation S │ │ │ -001a7d30: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ -001a7d40: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -001a7de0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Reboot:false
# Remediation
│ │ │ -001a7e00: 2069 7320 6170 706c 6963 6162 6c65 206f   is applicable o
│ │ │ -001a7e10: 6e6c 7920 696e 2063 6572 7461 696e 2070  nly in certain p
│ │ │ -001a7e20: 6c61 7466 6f72 6d73 0a69 6620 2820 2120  latforms.if ( ! 
│ │ │ -001a7e30: 2820 7b20 7270 6d20 2d2d 7175 6965 7420  ( { rpm --quiet 
│ │ │ -001a7e40: 2d71 206b 6572 6e65 6c20 3b7d 2026 616d  -q kernel ;} &am
│ │ │ -001a7e50: 703b 2661 6d70 3b20 7b20 7270 6d20 2d2d  p;& { rpm --
│ │ │ -001a7e60: 7175 6965 7420 2d71 2072 706d 2d6f 7374  quiet -q rpm-ost
│ │ │ -001a7e70: 7265 6520 3b7d 2026 616d 703b 2661 6d70  ree ;} &&
│ │ │ -001a7e80: 3b20 7b20 7270 6d20 2d2d 7175 6965 7420  ; { rpm --quiet 
│ │ │ -001a7e90: 2d71 2062 6f6f 7463 203b 7d20 2661 6d70  -q bootc ;} &
│ │ │ -001a7ea0: 3b26 616d 703b 207b 2021 2072 706d 202d  ;& { ! rpm -
│ │ │ -001a7eb0: 2d71 7569 6574 202d 7120 6f70 656e 7368  -quiet -q opensh
│ │ │ -001a7ec0: 6966 742d 6b75 6265 6c65 7420 3b7d 2026  ift-kubelet ;} &
│ │ │ -001a7ed0: 616d 703b 2661 6d70 3b20 285b 202d 6620  amp;& ([ -f 
│ │ │ -001a7ee0: 2f72 756e 2f6f 7374 7265 652d 626f 6f74  /run/ostree-boot
│ │ │ -001a7ef0: 6564 205d 207c 7c20 5b20 2d4c 202f 6f73  ed ] || [ -L /os
│ │ │ -001a7f00: 7472 6565 205d 2920 2920 2661 6d70 3b26  tree ]) ) &&
│ │ │ -001a7f10: 616d 703b 2021 2028 205b 202d 6620 2f2e  amp; ! ( [ -f /.
│ │ │ -001a7f20: 646f 636b 6572 656e 7620 5d20 7c7c 205b  dockerenv ] || [
│ │ │ -001a7f30: 202d 6620 2f72 756e 2f2e 636f 6e74 6169   -f /run/.contai
│ │ │ -001a7f40: 6e65 7265 6e76 205d 2029 2029 2026 616d  nerenv ] ) ) &am
│ │ │ -001a7f50: 703b 2661 6d70 3b20 7b20 2820 6669 6e64  p;& { ( find
│ │ │ -001a7f60: 6d6e 7420 2d2d 6b65 726e 656c 2022 2f74  mnt --kernel "/t
│ │ │ -001a7f70: 6d70 2220 2667 743b 202f 6465 762f 6e75  mp" > /dev/nu
│ │ │ -001a7f80: 6c6c 207c 7c20 6669 6e64 6d6e 7420 2d2d  ll || findmnt --
│ │ │ -001a7f90: 6673 7461 6220 222f 746d 7022 2026 6774  fstab "/tmp" >
│ │ │ -001a7fa0: 3b20 2f64 6576 2f6e 756c 6c20 293b 207d  ; /dev/null ); }
│ │ │ -001a7fb0: 3b20 7468 656e 0a0a 6675 6e63 7469 6f6e  ; then..function
│ │ │ -001a7fc0: 2070 6572 666f 726d 5f72 656d 6564 6961   perform_remedia
│ │ │ -001a7fd0: 7469 6f6e 207b 0a0a 2020 2020 0a20 2020  tion {..    .   
│ │ │ -001a7fe0: 2020 2020 2023 2074 6865 206d 6f75 6e74       # the mount
│ │ │ -001a7ff0: 2070 6f69 6e74 202f 746d 7020 6861 7320   point /tmp has 
│ │ │ -001a8000: 746f 2062 6520 6465 6669 6e65 6420 696e  to be defined in
│ │ │ -001a8010: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ -001a8020: 2020 2020 2320 6265 666f 7265 2074 6869      # before thi
│ │ │ -001a8030: 7320 7265 6d65 6469 6174 696f 6e20 6361  s remediation ca
│ │ │ -001a8040: 6e20 6265 2065 7865 6375 7465 642e 2049  n be executed. I
│ │ │ -001a8050: 6e20 6361 7365 2069 7420 6973 206e 6f74  n case it is not
│ │ │ -001a8060: 2064 6566 696e 6564 2c20 7468 650a 2020   defined, the.  
│ │ │ -001a8070: 2020 2020 2020 2320 7265 6d65 6469 6174        # remediat
│ │ │ -001a8080: 696f 6e20 6162 6f72 7473 2061 6e64 206e  ion aborts and n
│ │ │ -001a8090: 6f20 6368 616e 6765 7320 7265 6761 7264  o changes regard
│ │ │ -001a80a0: 696e 6720 7468 6520 6d6f 756e 7420 706f  ing the mount po
│ │ │ -001a80b0: 696e 7420 6172 6520 646f 6e65 2e0a 2020  int are done..  
│ │ │ -001a80c0: 2020 2020 2020 6d6f 756e 745f 706f 696e        mount_poin
│ │ │ -001a80d0: 745f 6d61 7463 685f 7265 6765 7870 3d22  t_match_regexp="
│ │ │ -001a80e0: 2428 7072 696e 7466 2022 5e5b 5b3a 7370  $(printf "^[[:sp
│ │ │ -001a80f0: 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a  ace:]]*[^#].*[[:
│ │ │ -001a8100: 7370 6163 653a 5d5d 2573 5b5b 3a73 7061  space:]]%s[[:spa
│ │ │ -001a8110: 6365 3a5d 5d22 2022 2f74 6d70 2229 220a  ce:]]" "/tmp")".
│ │ │ -001a8120: 0a20 2020 2067 7265 7020 2224 6d6f 756e  .    grep "$moun
│ │ │ -001a8130: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001a8140: 6765 7870 2220 2d71 202f 6574 632f 6673  gexp" -q /etc/fs
│ │ │ -001a8150: 7461 6220 5c0a 2020 2020 2020 2020 7c7c  tab \.        ||
│ │ │ -001a8160: 207b 2065 6368 6f20 2254 6865 206d 6f75   { echo "The mou
│ │ │ -001a8170: 6e74 2070 6f69 6e74 2027 2f74 6d70 2720  nt point '/tmp' 
│ │ │ -001a8180: 6973 206e 6f74 2065 7665 6e20 696e 202f  is not even in /
│ │ │ -001a8190: 6574 632f 6673 7461 622c 2073 6f20 7765  etc/fstab, so we
│ │ │ -001a81a0: 2063 616e 2774 2073 6574 2075 7020 6d6f   can't set up mo
│ │ │ -001a81b0: 756e 7420 6f70 7469 6f6e 7322 2026 6774  unt options" >
│ │ │ -001a81c0: 3b26 616d 703b 323b 0a20 2020 2020 2020  ;&2;.       
│ │ │ -001a81d0: 2020 2020 2020 2020 2065 6368 6f20 224e           echo "N
│ │ │ -001a81e0: 6f74 2072 656d 6564 6961 7469 6e67 2c20  ot remediating, 
│ │ │ -001a81f0: 6265 6361 7573 6520 7468 6572 6520 6973  because there is
│ │ │ -001a8200: 206e 6f20 7265 636f 7264 206f 6620 2f74   no record of /t
│ │ │ -001a8210: 6d70 2069 6e20 2f65 7463 2f66 7374 6162  mp in /etc/fstab
│ │ │ -001a8220: 2220 2667 743b 2661 6d70 3b32 3b20 7265  " >&2; re
│ │ │ -001a8230: 7475 726e 2031 3b20 7d0a 2020 2020 0a0a  turn 1; }.    ..
│ │ │ -001a8240: 0a20 2020 206d 6f75 6e74 5f70 6f69 6e74  .    mount_point
│ │ │ -001a8250: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ -001a8260: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ -001a8270: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ -001a8280: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ -001a8290: 653a 5d5d 2220 2f74 6d70 2922 0a0a 2020  e:]]" /tmp)"..  
│ │ │ -001a82a0: 2020 2320 4966 2074 6865 206d 6f75 6e74    # If the mount
│ │ │ -001a82b0: 2070 6f69 6e74 2069 7320 6e6f 7420 696e   point is not in
│ │ │ -001a82c0: 202f 6574 632f 6673 7461 622c 2067 6574   /etc/fstab, get
│ │ │ -001a82d0: 2070 7265 7669 6f75 7320 6d6f 756e 7420   previous mount 
│ │ │ -001a82e0: 6f70 7469 6f6e 7320 6672 6f6d 202f 6574  options from /et
│ │ │ -001a82f0: 632f 6d74 6162 0a20 2020 2069 6620 2120  c/mtab.    if ! 
│ │ │ -001a8300: 6772 6570 202d 7120 2224 6d6f 756e 745f  grep -q "$mount_
│ │ │ -001a8310: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001a8320: 7870 2220 2f65 7463 2f66 7374 6162 3b20  xp" /etc/fstab; 
│ │ │ -001a8330: 7468 656e 0a20 2020 2020 2020 2023 2072  then.        # r
│ │ │ -001a8340: 756e 7469 6d65 206f 7074 7320 7769 7468  untime opts with
│ │ │ -001a8350: 6f75 7420 736f 6d65 2061 7574 6f6d 6174  out some automat
│ │ │ -001a8360: 6963 206b 6572 6e65 6c2f 7573 6572 7370  ic kernel/usersp
│ │ │ -001a8370: 6163 652d 6164 6465 6420 6465 6661 756c  ace-added defaul
│ │ │ -001a8380: 7473 0a20 2020 2020 2020 2070 7265 7669  ts.        previ
│ │ │ -001a8390: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ -001a83a0: 2867 7265 7020 2224 6d6f 756e 745f 706f  (grep "$mount_po
│ │ │ -001a83b0: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001a83c0: 2220 2f65 7463 2f6d 7461 6220 7c20 6865  " /etc/mtab | he
│ │ │ -001a83d0: 6164 202d 3120 7c20 2061 776b 2027 7b70  ad -1 |  awk '{p
│ │ │ -001a83e0: 7269 6e74 2024 347d 2720 5c0a 2020 2020  rint $4}' \.    
│ │ │ -001a83f0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -001a8400: 7c20 7365 6420 2d45 2022 732f 2872 777c  | sed -E "s/(rw|
│ │ │ -001a8410: 6465 6661 756c 7473 7c73 6563 6c61 6265  defaults|seclabe
│ │ │ -001a8420: 6c7c 6e6f 7375 6964 2928 2c7c 2429 2f2f  l|nosuid)(,|$)//
│ │ │ -001a8430: 673b 732f 2c24 2f2f 2229 0a20 2020 2020  g;s/,$//").     
│ │ │ -001a8440: 2020 205b 2022 2470 7265 7669 6f75 735f     [ "$previous_
│ │ │ -001a8450: 6d6f 756e 745f 6f70 7473 2220 5d20 2661  mount_opts" ] &a
│ │ │ -001a8460: 6d70 3b26 616d 703b 2070 7265 7669 6f75  mp;& previou
│ │ │ -001a8470: 735f 6d6f 756e 745f 6f70 7473 2b3d 222c  s_mount_opts+=",
│ │ │ -001a8480: 220a 2020 2020 2020 2020 2320 496e 2069  ".        # In i
│ │ │ -001a8490: 736f 3936 3630 2066 696c 6573 7973 7465  so9660 filesyste
│ │ │ -001a84a0: 6d73 206d 7461 6220 636f 756c 6420 6465  ms mtab could de
│ │ │ -001a84b0: 7363 7269 6265 2061 2022 626c 6f63 6b73  scribe a "blocks
│ │ │ -001a84c0: 697a 6522 2076 616c 7565 2c20 7468 6973  ize" value, this
│ │ │ -001a84d0: 2073 686f 756c 6420 6265 2072 6566 6c65   should be refle
│ │ │ -001a84e0: 6374 6564 2069 6e0a 2020 2020 2020 2020  cted in.        
│ │ │ -001a84f0: 2320 6673 7461 6220 6173 2022 626c 6f63  # fstab as "bloc
│ │ │ -001a8500: 6b22 2e20 2054 6865 206e 6578 7420 7661  k".  The next va
│ │ │ -001a8510: 7269 6162 6c65 2069 7320 746f 2073 6174  riable is to sat
│ │ │ -001a8520: 6973 6679 2073 6865 6c6c 6368 6563 6b20  isfy shellcheck 
│ │ │ -001a8530: 5343 3230 3530 2e0a 2020 2020 2020 2020  SC2050..        
│ │ │ -001a8540: 6673 5f74 7970 653d 2222 0a20 2020 2020  fs_type="".     
│ │ │ -001a8550: 2020 2069 6620 5b20 2022 2466 735f 7479     if [  "$fs_ty
│ │ │ -001a8560: 7065 2220 3d3d 2022 6973 6f39 3636 3022  pe" == "iso9660"
│ │ │ -001a8570: 205d 203b 2074 6865 6e0a 2020 2020 2020   ] ; then.      
│ │ │ -001a8580: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ -001a8590: 6f75 6e74 5f6f 7074 733d 2428 7365 6420  ount_opts=$(sed 
│ │ │ -001a85a0: 2773 2f62 6c6f 636b 7369 7a65 3d2f 626c  's/blocksize=/bl
│ │ │ -001a85b0: 6f63 6b3d 2f27 2026 6c74 3b26 6c74 3b26  ock=/' <<&
│ │ │ -001a85c0: 6c74 3b20 2224 7072 6576 696f 7573 5f6d  lt; "$previous_m
│ │ │ -001a85d0: 6f75 6e74 5f6f 7074 7322 290a 2020 2020  ount_opts").    
│ │ │ -001a85e0: 2020 2020 6669 0a20 2020 2020 2020 2065      fi.        e
│ │ │ -001a85f0: 6368 6f20 2220 2f74 6d70 2020 6465 6661  cho " /tmp  defa
│ │ │ -001a8600: 756c 7473 2c24 7b70 7265 7669 6f75 735f  ults,${previous_
│ │ │ -001a8610: 6d6f 756e 745f 6f70 7473 7d6e 6f73 7569  mount_opts}nosui
│ │ │ -001a8620: 6420 3020 3022 2026 6774 3b26 6774 3b20  d 0 0" >> 
│ │ │ -001a8630: 2f65 7463 2f66 7374 6162 0a20 2020 2023  /etc/fstab.    #
│ │ │ -001a8640: 2049 6620 7468 6520 6d6f 756e 745f 6f70   If the mount_op
│ │ │ -001a8650: 7420 6f70 7469 6f6e 2069 7320 6e6f 7420  t option is not 
│ │ │ -001a8660: 616c 7265 6164 7920 696e 2074 6865 206d  already in the m
│ │ │ -001a8670: 6f75 6e74 2070 6f69 6e74 2773 202f 6574  ount point's /et
│ │ │ -001a8680: 632f 6673 7461 6220 656e 7472 792c 2061  c/fstab entry, a
│ │ │ -001a8690: 6464 2069 740a 2020 2020 656c 6966 2021  dd it.    elif !
│ │ │ -001a86a0: 2067 7265 7020 2224 6d6f 756e 745f 706f   grep "$mount_po
│ │ │ -001a86b0: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001a86c0: 2220 2f65 7463 2f66 7374 6162 207c 2067  " /etc/fstab | g
│ │ │ -001a86d0: 7265 7020 2d71 2022 6e6f 7375 6964 223b  rep -q "nosuid";
│ │ │ -001a86e0: 2074 6865 6e0a 2020 2020 2020 2020 7072   then.        pr
│ │ │ -001a86f0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001a8700: 733d 2428 6772 6570 2022 246d 6f75 6e74  s=$(grep "$mount
│ │ │ -001a8710: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001a8720: 6578 7022 202f 6574 632f 6673 7461 6220  exp" /etc/fstab 
│ │ │ -001a8730: 7c20 6177 6b20 277b 7072 696e 7420 2434  | awk '{print $4
│ │ │ -001a8740: 7d27 290a 2020 2020 2020 2020 7365 6420  }').        sed 
│ │ │ -001a8750: 2d69 2022 737c 5c28 247b 6d6f 756e 745f  -i "s|\(${mount_
│ │ │ -001a8760: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001a8770: 7870 7d2e 2a24 7b70 7265 7669 6f75 735f  xp}.*${previous_
│ │ │ -001a8780: 6d6f 756e 745f 6f70 7473 7d5c 297c 5c31  mount_opts}\)|\1
│ │ │ -001a8790: 2c6e 6f73 7569 647c 2220 2f65 7463 2f66  ,nosuid|" /etc/f
│ │ │ -001a87a0: 7374 6162 0a20 2020 2066 690a 0a0a 2020  stab.    fi...  
│ │ │ -001a87b0: 2020 6966 206d 6b64 6972 202d 7020 222f    if mkdir -p "/
│ │ │ -001a87c0: 746d 7022 3b20 7468 656e 0a20 2020 2020  tmp"; then.     
│ │ │ -001a87d0: 2020 2069 6620 6d6f 756e 7470 6f69 6e74     if mountpoint
│ │ │ -001a87e0: 202d 7120 222f 746d 7022 3b20 7468 656e   -q "/tmp"; then
│ │ │ -001a87f0: 0a20 2020 2020 2020 2020 2020 206d 6f75  .            mou
│ │ │ -001a8800: 6e74 202d 6f20 7265 6d6f 756e 7420 2d2d  nt -o remount --
│ │ │ -001a8810: 7461 7267 6574 2022 2f74 6d70 220a 2020  target "/tmp".  
│ │ │ -001a8820: 2020 2020 2020 6669 0a20 2020 2066 690a        fi.    fi.
│ │ │ -001a8830: 7d0a 0a70 6572 666f 726d 5f72 656d 6564  }..perform_remed
│ │ │ -001a8840: 6961 7469 6f6e 0a0a 656c 7365 0a20 2020  iation..else.   
│ │ │ -001a8850: 2026 6774 3b26 616d 703b 3220 6563 686f   >&2 echo
│ │ │ -001a8860: 2027 5265 6d65 6469 6174 696f 6e20 6973   'Remediation is
│ │ │ -001a8870: 206e 6f74 2061 7070 6c69 6361 626c 652c   not applicable,
│ │ │ -001a8880: 206e 6f74 6869 6e67 2077 6173 2064 6f6e   nothing was don
│ │ │ -001a8890: 6527 0a66 690a 3c2f 636f 6465 3e3c 2f70  e'.fi.

Remediation Ans │ │ │ +001a6250: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ +001a6260: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61

Complexity:< │ │ │ +001a6350: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
low
Disru │ │ │ +001a6310: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e68 ption:h │ │ │ +001a6320: 6967 683c 2f74 643e 3c2f 7472 3e3c 7472 igh
Reboot:false
Stra │ │ │ +001a6360: 7465 6779 3a3c 2f74 683e 3c74 643e 636f tegy:co │ │ │ +001a6370: 6e66 6967 7572 653c 2f74 643e 3c2f 7472 nfigure
- name: Gath
│ │ │ +001a63a0: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ +001a63b0: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ +001a63c0: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ +001a63d0: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ +001a63e0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001a63f0: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ +001a6400: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ +001a6410: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001a6420: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ +001a6430: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ +001a6440: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001a6450: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ +001a6460: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ +001a6470: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001a6480: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001a6490: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001a64a0: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001a64b0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001a64c0: 6d6f 756e 745f 6f70 7469 6f6e 5f74 6d70  mount_option_tmp
│ │ │ +001a64d0: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ +001a64e0: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +001a64f0: 6e61 6d65 3a20 2741 6464 206e 6f73 7569  name: 'Add nosui
│ │ │ +001a6500: 6420 4f70 7469 6f6e 2074 6f20 2f74 6d70  d Option to /tmp
│ │ │ +001a6510: 3a20 4368 6563 6b20 696e 666f 726d 6174  : Check informat
│ │ │ +001a6520: 696f 6e20 6173 736f 6369 6174 6564 2074  ion associated t
│ │ │ +001a6530: 6f20 6d6f 756e 7470 6f69 6e74 270a 2020  o mountpoint'.  
│ │ │ +001a6540: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +001a6550: 636f 6d6d 616e 643a 2066 696e 646d 6e74  command: findmnt
│ │ │ +001a6560: 202d 2d66 7374 6162 2027 2f74 6d70 270a   --fstab '/tmp'.
│ │ │ +001a6570: 2020 7265 6769 7374 6572 3a20 6465 7669    register: devi
│ │ │ +001a6580: 6365 5f6e 616d 650a 2020 6661 696c 6564  ce_name.  failed
│ │ │ +001a6590: 5f77 6865 6e3a 2064 6576 6963 655f 6e61  _when: device_na
│ │ │ +001a65a0: 6d65 2e72 6320 2667 743b 2031 0a20 2063  me.rc > 1.  c
│ │ │ +001a65b0: 6861 6e67 6564 5f77 6865 6e3a 2066 616c  hanged_when: fal
│ │ │ +001a65c0: 7365 0a20 2063 6865 636b 5f6d 6f64 653a  se.  check_mode:
│ │ │ +001a65d0: 2066 616c 7365 0a20 2077 6865 6e3a 0a20   false.  when:. 
│ │ │ +001a65e0: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ +001a65f0: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +001a6600: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001a6610: 6420 2272 706d 2d6f 7374 7265 6522 2069  d "rpm-ostree" i
│ │ │ +001a6620: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001a6630: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +001a6640: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ +001a6650: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001a6660: 6573 2061 6e64 206e 6f74 2022 6f70 656e  es and not "open
│ │ │ +001a6670: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ +001a6680: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001a6690: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +001a66a0: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ +001a66b0: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ +001a66c0: 6520 2920 616e 6420 6e6f 7420 2820 616e  e ) and not ( an
│ │ │ +001a66d0: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ +001a66e0: 7469 6f6e 5f74 7970 6520 696e 0a20 2020  tion_type in.   
│ │ │ +001a66f0: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ +001a6700: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ +001a6710: 646d 616e 222c 2022 636f 6e74 6169 6e65  dman", "containe
│ │ │ +001a6720: 7222 5d20 2920 290a 2020 2d20 2722 2f74  r"] ) ).  - '"/t
│ │ │ +001a6730: 6d70 2220 696e 2061 6e73 6962 6c65 5f6d  mp" in ansible_m
│ │ │ +001a6740: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ +001a6750: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ +001a6760: 206c 6973 7427 0a20 2074 6167 733a 0a20   list'.  tags:. 
│ │ │ +001a6770: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001a6780: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ +001a6790: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ +001a67a0: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +001a67b0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001a67c0: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ +001a67d0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001a67e0: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ +001a67f0: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ +001a6800: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +001a6810: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ +001a6820: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ +001a6830: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ +001a6840: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ +001a6850: 6f75 6e74 5f6f 7074 696f 6e5f 746d 705f  ount_option_tmp_
│ │ │ +001a6860: 6e6f 7375 6964 0a20 202d 206e 6f5f 7265  nosuid.  - no_re
│ │ │ +001a6870: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ +001a6880: 616d 653a 2027 4164 6420 6e6f 7375 6964  ame: 'Add nosuid
│ │ │ +001a6890: 204f 7074 696f 6e20 746f 202f 746d 703a   Option to /tmp:
│ │ │ +001a68a0: 2043 7265 6174 6520 6d6f 756e 745f 696e   Create mount_in
│ │ │ +001a68b0: 666f 2064 6963 7469 6f6e 6172 7920 7661  fo dictionary va
│ │ │ +001a68c0: 7269 6162 6c65 270a 2020 7365 745f 6661  riable'.  set_fa
│ │ │ +001a68d0: 6374 3a0a 2020 2020 6d6f 756e 745f 696e  ct:.    mount_in
│ │ │ +001a68e0: 666f 3a20 277b 7b20 6d6f 756e 745f 696e  fo: '{{ mount_in
│ │ │ +001a68f0: 666f 7c64 6566 6175 6c74 287b 7d29 7c63  fo|default({})|c
│ │ │ +001a6900: 6f6d 6269 6e65 287b 6974 656d 2e30 3a20  ombine({item.0: 
│ │ │ +001a6910: 6974 656d 2e31 7d29 207d 7d27 0a20 2077  item.1}) }}'.  w
│ │ │ +001a6920: 6974 685f 746f 6765 7468 6572 3a0a 2020  ith_together:.  
│ │ │ +001a6930: 2d20 277b 7b20 6465 7669 6365 5f6e 616d  - '{{ device_nam
│ │ │ +001a6940: 652e 7374 646f 7574 5f6c 696e 6573 5b30  e.stdout_lines[0
│ │ │ +001a6950: 5d2e 7370 6c69 7428 2920 7c20 6d61 7028  ].split() | map(
│ │ │ +001a6960: 2727 6c6f 7765 7227 2729 207c 206c 6973  ''lower'') | lis
│ │ │ +001a6970: 7420 7d7d 270a 2020 2d20 277b 7b20 6465  t }}'.  - '{{ de
│ │ │ +001a6980: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001a6990: 5f6c 696e 6573 5b31 5d2e 7370 6c69 7428  _lines[1].split(
│ │ │ +001a69a0: 2920 7c20 6c69 7374 207d 7d27 0a20 2077  ) | list }}'.  w
│ │ │ +001a69b0: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +001a69c0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +001a69d0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001a69e0: 6765 7320 616e 6420 2272 706d 2d6f 7374  ges and "rpm-ost
│ │ │ +001a69f0: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001a6a00: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001a6a10: 2020 2061 6e64 2022 626f 6f74 6322 2069     and "bootc" i
│ │ │ +001a6a20: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001a6a30: 7061 636b 6167 6573 2061 6e64 206e 6f74  packages and not
│ │ │ +001a6a40: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ +001a6a50: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ +001a6a60: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001a6a70: 2020 2061 6e64 2022 6f73 7472 6565 2220     and "ostree" 
│ │ │ +001a6a80: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ +001a6a90: 636d 646c 696e 6520 2920 616e 6420 6e6f  cmdline ) and no
│ │ │ +001a6aa0: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ +001a6ab0: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ +001a6ac0: 696e 0a20 2020 205b 2264 6f63 6b65 7222  in.    ["docker"
│ │ │ +001a6ad0: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ +001a6ae0: 222c 2022 706f 646d 616e 222c 2022 636f  ", "podman", "co
│ │ │ +001a6af0: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ +001a6b00: 2d20 2722 2f74 6d70 2220 696e 2061 6e73  - '"/tmp" in ans
│ │ │ +001a6b10: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ +001a6b20: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ +001a6b30: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ +001a6b40: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +001a6b50: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ +001a6b60: 6e64 2064 6576 6963 655f 6e61 6d65 2e73  nd device_name.s
│ │ │ +001a6b70: 7464 6f75 745f 6c69 6e65 7320 6973 2064  tdout_lines is d
│ │ │ +001a6b80: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ +001a6b90: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ +001a6ba0: 206c 656e 6774 6820 2667 743b 2030 290a   length > 0).
│ │ │ +001a6bb0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +001a6bc0: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ +001a6bd0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001a6be0: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ +001a6bf0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +001a6c00: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001a6c10: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ +001a6c20: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ +001a6c30: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ +001a6c40: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ +001a6c50: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ +001a6c60: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ +001a6c70: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +001a6c80: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +001a6c90: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ +001a6ca0: 7469 6f6e 5f74 6d70 5f6e 6f73 7569 640a  tion_tmp_nosuid.
│ │ │ +001a6cb0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001a6cc0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001a6cd0: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ +001a6ce0: 2074 6f20 2f74 6d70 3a20 4966 202f 746d   to /tmp: If /tm
│ │ │ +001a6cf0: 7020 6e6f 7420 6d6f 756e 7465 642c 2063  p not mounted, c
│ │ │ +001a6d00: 7261 6674 206d 6f75 6e74 5f69 6e66 6f20  raft mount_info 
│ │ │ +001a6d10: 6d61 6e75 616c 6c79 270a 2020 7365 745f  manually'.  set_
│ │ │ +001a6d20: 6661 6374 3a0a 2020 2020 6d6f 756e 745f  fact:.    mount_
│ │ │ +001a6d30: 696e 666f 3a20 277b 7b20 6d6f 756e 745f  info: '{{ mount_
│ │ │ +001a6d40: 696e 666f 7c64 6566 6175 6c74 287b 7d29  info|default({})
│ │ │ +001a6d50: 7c63 6f6d 6269 6e65 287b 6974 656d 2e30  |combine({item.0
│ │ │ +001a6d60: 3a20 6974 656d 2e31 7d29 207d 7d27 0a20  : item.1}) }}'. 
│ │ │ +001a6d70: 2077 6974 685f 746f 6765 7468 6572 3a0a   with_together:.
│ │ │ +001a6d80: 2020 2d20 2d20 7461 7267 6574 0a20 2020    - - target.   
│ │ │ +001a6d90: 202d 2073 6f75 7263 650a 2020 2020 2d20   - source.    - 
│ │ │ +001a6da0: 6673 7479 7065 0a20 2020 202d 206f 7074  fstype.    - opt
│ │ │ +001a6db0: 696f 6e73 0a20 202d 202d 202f 746d 700a  ions.  - - /tmp.
│ │ │ +001a6dc0: 2020 2020 2d20 2727 0a20 2020 202d 2027      - ''.    - '
│ │ │ +001a6dd0: 270a 2020 2020 2d20 6465 6661 756c 7473  '.    - defaults
│ │ │ +001a6de0: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ +001a6df0: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ +001a6e00: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001a6e10: 6163 6b61 6765 7320 616e 6420 2272 706d  ackages and "rpm
│ │ │ +001a6e20: 2d6f 7374 7265 6522 2069 6e20 616e 7369  -ostree" in ansi
│ │ │ +001a6e30: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001a6e40: 6573 0a20 2020 2061 6e64 2022 626f 6f74  es.    and "boot
│ │ │ +001a6e50: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ +001a6e60: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001a6e70: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ +001a6e80: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ +001a6e90: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001a6ea0: 6573 0a20 2020 2061 6e64 2022 6f73 7472  es.    and "ostr
│ │ │ +001a6eb0: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ +001a6ec0: 726f 635f 636d 646c 696e 6520 2920 616e  roc_cmdline ) an
│ │ │ +001a6ed0: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ +001a6ee0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ +001a6ef0: 7970 6520 696e 0a20 2020 205b 2264 6f63  ype in.    ["doc
│ │ │ +001a6f00: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ +001a6f10: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ +001a6f20: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ +001a6f30: 290a 2020 2d20 2722 2f74 6d70 2220 696e  ).  - '"/tmp" in
│ │ │ +001a6f40: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ +001a6f50: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ +001a6f60: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ +001a6f70: 0a20 202d 2028 222d 2d66 7374 6162 2220  .  - ("--fstab" 
│ │ │ +001a6f80: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ +001a6f90: 202d 2064 6576 6963 655f 6e61 6d65 2e73   - device_name.s
│ │ │ +001a6fa0: 7464 6f75 7420 6973 2064 6566 696e 6564  tdout is defined
│ │ │ +001a6fb0: 2061 6e64 2064 6576 6963 655f 6e61 6d65   and device_name
│ │ │ +001a6fc0: 2e73 7464 6f75 745f 6c69 6e65 7320 6973  .stdout_lines is
│ │ │ +001a6fd0: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ +001a6fe0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001a6ff0: 207c 206c 656e 6774 6820 3d3d 2030 290a   | length == 0).
│ │ │ +001a7000: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +001a7010: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ +001a7020: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001a7030: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ +001a7040: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +001a7050: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001a7060: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ +001a7070: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ +001a7080: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ +001a7090: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ +001a70a0: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ +001a70b0: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ +001a70c0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +001a70d0: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +001a70e0: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ +001a70f0: 7469 6f6e 5f74 6d70 5f6e 6f73 7569 640a  tion_tmp_nosuid.
│ │ │ +001a7100: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001a7110: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001a7120: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ +001a7130: 2074 6f20 2f74 6d70 3a20 4d61 6b65 2073   to /tmp: Make s
│ │ │ +001a7140: 7572 6520 6e6f 7375 6964 206f 7074 696f  ure nosuid optio
│ │ │ +001a7150: 6e20 6973 2070 6172 7420 6f66 2074 6865  n is part of the
│ │ │ +001a7160: 2074 6f20 2f74 6d70 0a20 2020 206f 7074   to /tmp.    opt
│ │ │ +001a7170: 696f 6e73 270a 2020 7365 745f 6661 6374  ions'.  set_fact
│ │ │ +001a7180: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ +001a7190: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001a71a0: 207c 2063 6f6d 6269 6e65 2820 7b27 276f   | combine( {''o
│ │ │ +001a71b0: 7074 696f 6e73 2727 3a27 2727 277e 286d  ptions'':''''~(m
│ │ │ +001a71c0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ +001a71d0: 7320 7c0a 2020 2020 2020 6465 6661 756c  s |.      defaul
│ │ │ +001a71e0: 7428 2727 2727 2929 7e28 2727 2c27 2720  t(''''))~('','' 
│ │ │ +001a71f0: 6966 2028 6d6f 756e 745f 696e 666f 2e6f  if (mount_info.o
│ │ │ +001a7200: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ +001a7210: 2827 2727 2729 2920 656c 7365 2027 2727  ('''')) else '''
│ │ │ +001a7220: 2729 7e27 276e 6f73 7569 6427 270a 2020  ')~''nosuid''.  
│ │ │ +001a7230: 2020 2020 7d29 207d 7d27 0a20 2077 6865      }) }}'.  whe
│ │ │ +001a7240: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +001a7250: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001a7260: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001a7270: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ +001a7280: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ +001a7290: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001a72a0: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ +001a72b0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001a72c0: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ +001a72d0: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +001a72e0: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ +001a72f0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001a7300: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ +001a7310: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ +001a7320: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ +001a7330: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ +001a7340: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ +001a7350: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ +001a7360: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ +001a7370: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ +001a7380: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ +001a7390: 2722 2f74 6d70 2220 696e 2061 6e73 6962  '"/tmp" in ansib
│ │ │ +001a73a0: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ +001a73b0: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ +001a73c0: 2229 207c 206c 6973 7427 0a20 202d 206d  ") | list'.  - m
│ │ │ +001a73d0: 6f75 6e74 5f69 6e66 6f20 6973 2064 6566  ount_info is def
│ │ │ +001a73e0: 696e 6564 2061 6e64 2022 6e6f 7375 6964  ined and "nosuid
│ │ │ +001a73f0: 2220 6e6f 7420 696e 2028 6d6f 756e 745f  " not in (mount_
│ │ │ +001a7400: 696e 666f 2e6f 7074 696f 6e73 207c 2064  info.options | d
│ │ │ +001a7410: 6566 6175 6c74 2827 2729 290a 2020 7461  efault('')).  ta
│ │ │ +001a7420: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +001a7430: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ +001a7440: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ +001a7450: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001a7460: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ +001a7470: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ +001a7480: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001a7490: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ +001a74a0: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ +001a74b0: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001a74c0: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001a74d0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001a74e0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001a74f0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001a7500: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001a7510: 5f74 6d70 5f6e 6f73 7569 640a 2020 2d20  _tmp_nosuid.  - 
│ │ │ +001a7520: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001a7530: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ +001a7540: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20  osuid Option to 
│ │ │ +001a7550: 2f74 6d70 3a20 456e 7375 7265 202f 746d  /tmp: Ensure /tm
│ │ │ +001a7560: 7020 6973 206d 6f75 6e74 6564 2077 6974  p is mounted wit
│ │ │ +001a7570: 6820 6e6f 7375 6964 206f 7074 696f 6e27  h nosuid option'
│ │ │ +001a7580: 0a20 2061 6e73 6962 6c65 2e70 6f73 6978  .  ansible.posix
│ │ │ +001a7590: 2e6d 6f75 6e74 3a0a 2020 2020 7061 7468  .mount:.    path
│ │ │ +001a75a0: 3a20 2f74 6d70 0a20 2020 2073 7263 3a20  : /tmp.    src: 
│ │ │ +001a75b0: 277b 7b20 6d6f 756e 745f 696e 666f 2e73  '{{ mount_info.s
│ │ │ +001a75c0: 6f75 7263 6520 7c20 6465 6661 756c 7428  ource | default(
│ │ │ +001a75d0: 2727 2727 2920 7d7d 270a 2020 2020 6f70  '''') }}'.    op
│ │ │ +001a75e0: 7473 3a20 277b 7b20 6d6f 756e 745f 696e  ts: '{{ mount_in
│ │ │ +001a75f0: 666f 2e6f 7074 696f 6e73 207c 2064 6566  fo.options | def
│ │ │ +001a7600: 6175 6c74 2827 2727 2729 207d 7d27 0a20  ault('''') }}'. 
│ │ │ +001a7610: 2020 2073 7461 7465 3a20 6d6f 756e 7465     state: mounte
│ │ │ +001a7620: 640a 2020 2020 6673 7479 7065 3a20 277b  d.    fstype: '{
│ │ │ +001a7630: 7b20 6d6f 756e 745f 696e 666f 2e66 7374  { mount_info.fst
│ │ │ +001a7640: 7970 6520 7c20 6465 6661 756c 7428 2727  ype | default(''
│ │ │ +001a7650: 2727 2920 7d7d 270a 2020 7265 6769 7374  '') }}'.  regist
│ │ │ +001a7660: 6572 3a20 6d6f 756e 745f 7265 7375 6c74  er: mount_result
│ │ │ +001a7670: 0a20 2066 6169 6c65 645f 7768 656e 3a0a  .  failed_when:.
│ │ │ +001a7680: 2020 2d20 6d6f 756e 745f 7265 7375 6c74    - mount_result
│ │ │ +001a7690: 2069 7320 6661 696c 6564 0a20 202d 2027   is failed.  - '
│ │ │ +001a76a0: 2727 7461 7267 6574 2069 7320 6275 7379  ''target is busy
│ │ │ +001a76b0: 2727 206e 6f74 2069 6e20 286d 6f75 6e74  '' not in (mount
│ │ │ +001a76c0: 5f72 6573 756c 742e 6d73 6720 7c20 6465  _result.msg | de
│ │ │ +001a76d0: 6661 756c 7428 2727 2727 2929 270a 2020  fault(''''))'.  
│ │ │ +001a76e0: 2d20 2727 2761 6c72 6561 6479 206d 6f75  - '''already mou
│ │ │ +001a76f0: 6e74 6564 2727 206e 6f74 2069 6e20 286d  nted'' not in (m
│ │ │ +001a7700: 6f75 6e74 5f72 6573 756c 742e 6d73 6720  ount_result.msg 
│ │ │ +001a7710: 7c20 6465 6661 756c 7428 2727 2727 2929  | default(''''))
│ │ │ +001a7720: 270a 2020 7768 656e 3a0a 2020 2d20 2820  '.  when:.  - ( 
│ │ │ +001a7730: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ +001a7740: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001a7750: 7061 636b 6167 6573 2061 6e64 2022 7270  packages and "rp
│ │ │ +001a7760: 6d2d 6f73 7472 6565 2220 696e 2061 6e73  m-ostree" in ans
│ │ │ +001a7770: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001a7780: 6765 730a 2020 2020 616e 6420 2262 6f6f  ges.    and "boo
│ │ │ +001a7790: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ +001a77a0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001a77b0: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ +001a77c0: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ +001a77d0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001a77e0: 6765 730a 2020 2020 616e 6420 226f 7374  ges.    and "ost
│ │ │ +001a77f0: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001a7800: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061  proc_cmdline ) a
│ │ │ +001a7810: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ +001a7820: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ +001a7830: 7479 7065 2069 6e0a 2020 2020 5b22 646f  type in.    ["do
│ │ │ +001a7840: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ +001a7850: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ +001a7860: 2c20 2263 6f6e 7461 696e 6572 225d 2029  , "container"] )
│ │ │ +001a7870: 2029 0a20 202d 2027 222f 746d 7022 2069   ).  - '"/tmp" i
│ │ │ +001a7880: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ +001a7890: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ +001a78a0: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ +001a78b0: 270a 2020 2d20 6d6f 756e 745f 696e 666f  '.  - mount_info
│ │ │ +001a78c0: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ +001a78d0: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ +001a78e0: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ +001a78f0: 6e64 2028 6465 7669 6365 5f6e 616d 652e  nd (device_name.
│ │ │ +001a7900: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ +001a7910: 2667 743b 2030 2929 206f 7220 2822 2d2d  > 0)) or ("--
│ │ │ +001a7920: 6673 7461 6222 0a20 2020 207c 206c 656e  fstab".    | len
│ │ │ +001a7930: 6774 6820 3d3d 2030 290a 2020 7461 6773  gth == 0).  tags
│ │ │ +001a7940: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +001a7950: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ +001a7960: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ +001a7970: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001a7980: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ +001a7990: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ +001a79a0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001a79b0: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ +001a79c0: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ +001a79d0: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +001a79e0: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +001a79f0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +001a7a00: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +001a7a10: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001a7a20: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f74  - mount_option_t
│ │ │ +001a7a30: 6d70 5f6e 6f73 7569 640a 2020 2d20 6e6f  mp_nosuid.  - no
│ │ │ +001a7a40: 5f72 6562 6f6f 745f 6e65 6564 6564 0a3c  _reboot_needed.<
│ │ │ +001a7a50: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +001a7b00: 656d 6564 6961 7469 6f6e 2053 6865 6c6c emediation Shell │ │ │ +001a7b10: 2073 6372 6970 7420 e287 b23c 2f61 3e3c script ...< │ │ │ +001a7b20: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
#
│ │ │ +001a7bd0: 2052 656d 6564 6961 7469 6f6e 2069 7320   Remediation is 
│ │ │ +001a7be0: 6170 706c 6963 6162 6c65 206f 6e6c 7920  applicable only 
│ │ │ +001a7bf0: 696e 2063 6572 7461 696e 2070 6c61 7466  in certain platf
│ │ │ +001a7c00: 6f72 6d73 0a69 6620 2820 2120 2820 7b20  orms.if ( ! ( { 
│ │ │ +001a7c10: 7270 6d20 2d2d 7175 6965 7420 2d71 206b  rpm --quiet -q k
│ │ │ +001a7c20: 6572 6e65 6c20 3b7d 2026 616d 703b 2661  ernel ;} &&a
│ │ │ +001a7c30: 6d70 3b20 7b20 7270 6d20 2d2d 7175 6965  mp; { rpm --quie
│ │ │ +001a7c40: 7420 2d71 2072 706d 2d6f 7374 7265 6520  t -q rpm-ostree 
│ │ │ +001a7c50: 3b7d 2026 616d 703b 2661 6d70 3b20 7b20  ;} && { 
│ │ │ +001a7c60: 7270 6d20 2d2d 7175 6965 7420 2d71 2062  rpm --quiet -q b
│ │ │ +001a7c70: 6f6f 7463 203b 7d20 2661 6d70 3b26 616d  ootc ;} &&am
│ │ │ +001a7c80: 703b 207b 2021 2072 706d 202d 2d71 7569  p; { ! rpm --qui
│ │ │ +001a7c90: 6574 202d 7120 6f70 656e 7368 6966 742d  et -q openshift-
│ │ │ +001a7ca0: 6b75 6265 6c65 7420 3b7d 2026 616d 703b  kubelet ;} &
│ │ │ +001a7cb0: 2661 6d70 3b20 285b 202d 6620 2f72 756e  & ([ -f /run
│ │ │ +001a7cc0: 2f6f 7374 7265 652d 626f 6f74 6564 205d  /ostree-booted ]
│ │ │ +001a7cd0: 207c 7c20 5b20 2d4c 202f 6f73 7472 6565   || [ -L /ostree
│ │ │ +001a7ce0: 205d 2920 2920 2661 6d70 3b26 616d 703b   ]) ) &&
│ │ │ +001a7cf0: 2021 2028 205b 202d 6620 2f2e 646f 636b   ! ( [ -f /.dock
│ │ │ +001a7d00: 6572 656e 7620 5d20 7c7c 205b 202d 6620  erenv ] || [ -f 
│ │ │ +001a7d10: 2f72 756e 2f2e 636f 6e74 6169 6e65 7265  /run/.containere
│ │ │ +001a7d20: 6e76 205d 2029 2029 2026 616d 703b 2661  nv ] ) ) &&a
│ │ │ +001a7d30: 6d70 3b20 7b20 2820 6669 6e64 6d6e 7420  mp; { ( findmnt 
│ │ │ +001a7d40: 2d2d 6b65 726e 656c 2022 2f74 6d70 2220  --kernel "/tmp" 
│ │ │ +001a7d50: 2667 743b 202f 6465 762f 6e75 6c6c 207c  > /dev/null |
│ │ │ +001a7d60: 7c20 6669 6e64 6d6e 7420 2d2d 6673 7461  | findmnt --fsta
│ │ │ +001a7d70: 6220 222f 746d 7022 2026 6774 3b20 2f64  b "/tmp" > /d
│ │ │ +001a7d80: 6576 2f6e 756c 6c20 293b 207d 3b20 7468  ev/null ); }; th
│ │ │ +001a7d90: 656e 0a0a 6675 6e63 7469 6f6e 2070 6572  en..function per
│ │ │ +001a7da0: 666f 726d 5f72 656d 6564 6961 7469 6f6e  form_remediation
│ │ │ +001a7db0: 207b 0a0a 2020 2020 0a20 2020 2020 2020   {..    .       
│ │ │ +001a7dc0: 2023 2074 6865 206d 6f75 6e74 2070 6f69   # the mount poi
│ │ │ +001a7dd0: 6e74 202f 746d 7020 6861 7320 746f 2062  nt /tmp has to b
│ │ │ +001a7de0: 6520 6465 6669 6e65 6420 696e 202f 6574  e defined in /et
│ │ │ +001a7df0: 632f 6673 7461 620a 2020 2020 2020 2020  c/fstab.        
│ │ │ +001a7e00: 2320 6265 666f 7265 2074 6869 7320 7265  # before this re
│ │ │ +001a7e10: 6d65 6469 6174 696f 6e20 6361 6e20 6265  mediation can be
│ │ │ +001a7e20: 2065 7865 6375 7465 642e 2049 6e20 6361   executed. In ca
│ │ │ +001a7e30: 7365 2069 7420 6973 206e 6f74 2064 6566  se it is not def
│ │ │ +001a7e40: 696e 6564 2c20 7468 650a 2020 2020 2020  ined, the.      
│ │ │ +001a7e50: 2020 2320 7265 6d65 6469 6174 696f 6e20    # remediation 
│ │ │ +001a7e60: 6162 6f72 7473 2061 6e64 206e 6f20 6368  aborts and no ch
│ │ │ +001a7e70: 616e 6765 7320 7265 6761 7264 696e 6720  anges regarding 
│ │ │ +001a7e80: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ +001a7e90: 6172 6520 646f 6e65 2e0a 2020 2020 2020  are done..      
│ │ │ +001a7ea0: 2020 6d6f 756e 745f 706f 696e 745f 6d61    mount_point_ma
│ │ │ +001a7eb0: 7463 685f 7265 6765 7870 3d22 2428 7072  tch_regexp="$(pr
│ │ │ +001a7ec0: 696e 7466 2022 5e5b 5b3a 7370 6163 653a  intf "^[[:space:
│ │ │ +001a7ed0: 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163  ]]*[^#].*[[:spac
│ │ │ +001a7ee0: 653a 5d5d 2573 5b5b 3a73 7061 6365 3a5d  e:]]%s[[:space:]
│ │ │ +001a7ef0: 5d22 2022 2f74 6d70 2229 220a 0a20 2020  ]" "/tmp")"..   
│ │ │ +001a7f00: 2067 7265 7020 2224 6d6f 756e 745f 706f   grep "$mount_po
│ │ │ +001a7f10: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001a7f20: 2220 2d71 202f 6574 632f 6673 7461 6220  " -q /etc/fstab 
│ │ │ +001a7f30: 5c0a 2020 2020 2020 2020 7c7c 207b 2065  \.        || { e
│ │ │ +001a7f40: 6368 6f20 2254 6865 206d 6f75 6e74 2070  cho "The mount p
│ │ │ +001a7f50: 6f69 6e74 2027 2f74 6d70 2720 6973 206e  oint '/tmp' is n
│ │ │ +001a7f60: 6f74 2065 7665 6e20 696e 202f 6574 632f  ot even in /etc/
│ │ │ +001a7f70: 6673 7461 622c 2073 6f20 7765 2063 616e  fstab, so we can
│ │ │ +001a7f80: 2774 2073 6574 2075 7020 6d6f 756e 7420  't set up mount 
│ │ │ +001a7f90: 6f70 7469 6f6e 7322 2026 6774 3b26 616d  options" >&am
│ │ │ +001a7fa0: 703b 323b 0a20 2020 2020 2020 2020 2020  p;2;.           
│ │ │ +001a7fb0: 2020 2020 2065 6368 6f20 224e 6f74 2072       echo "Not r
│ │ │ +001a7fc0: 656d 6564 6961 7469 6e67 2c20 6265 6361  emediating, beca
│ │ │ +001a7fd0: 7573 6520 7468 6572 6520 6973 206e 6f20  use there is no 
│ │ │ +001a7fe0: 7265 636f 7264 206f 6620 2f74 6d70 2069  record of /tmp i
│ │ │ +001a7ff0: 6e20 2f65 7463 2f66 7374 6162 2220 2667  n /etc/fstab" &g
│ │ │ +001a8000: 743b 2661 6d70 3b32 3b20 7265 7475 726e  t;&2; return
│ │ │ +001a8010: 2031 3b20 7d0a 2020 2020 0a0a 0a20 2020   1; }.    ...   
│ │ │ +001a8020: 206d 6f75 6e74 5f70 6f69 6e74 5f6d 6174   mount_point_mat
│ │ │ +001a8030: 6368 5f72 6567 6578 703d 2224 2870 7269  ch_regexp="$(pri
│ │ │ +001a8040: 6e74 6620 225e 5b5b 3a73 7061 6365 3a5d  ntf "^[[:space:]
│ │ │ +001a8050: 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061 6365  ]*[^#].*[[:space
│ │ │ +001a8060: 3a5d 5d25 735b 5b3a 7370 6163 653a 5d5d  :]]%s[[:space:]]
│ │ │ +001a8070: 2220 2f74 6d70 2922 0a0a 2020 2020 2320  " /tmp)"..    # 
│ │ │ +001a8080: 4966 2074 6865 206d 6f75 6e74 2070 6f69  If the mount poi
│ │ │ +001a8090: 6e74 2069 7320 6e6f 7420 696e 202f 6574  nt is not in /et
│ │ │ +001a80a0: 632f 6673 7461 622c 2067 6574 2070 7265  c/fstab, get pre
│ │ │ +001a80b0: 7669 6f75 7320 6d6f 756e 7420 6f70 7469  vious mount opti
│ │ │ +001a80c0: 6f6e 7320 6672 6f6d 202f 6574 632f 6d74  ons from /etc/mt
│ │ │ +001a80d0: 6162 0a20 2020 2069 6620 2120 6772 6570  ab.    if ! grep
│ │ │ +001a80e0: 202d 7120 2224 6d6f 756e 745f 706f 696e   -q "$mount_poin
│ │ │ +001a80f0: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ +001a8100: 2f65 7463 2f66 7374 6162 3b20 7468 656e  /etc/fstab; then
│ │ │ +001a8110: 0a20 2020 2020 2020 2023 2072 756e 7469  .        # runti
│ │ │ +001a8120: 6d65 206f 7074 7320 7769 7468 6f75 7420  me opts without 
│ │ │ +001a8130: 736f 6d65 2061 7574 6f6d 6174 6963 206b  some automatic k
│ │ │ +001a8140: 6572 6e65 6c2f 7573 6572 7370 6163 652d  ernel/userspace-
│ │ │ +001a8150: 6164 6465 6420 6465 6661 756c 7473 0a20  added defaults. 
│ │ │ +001a8160: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ +001a8170: 6d6f 756e 745f 6f70 7473 3d24 2867 7265  mount_opts=$(gre
│ │ │ +001a8180: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ +001a8190: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ +001a81a0: 7463 2f6d 7461 6220 7c20 6865 6164 202d  tc/mtab | head -
│ │ │ +001a81b0: 3120 7c20 2061 776b 2027 7b70 7269 6e74  1 |  awk '{print
│ │ │ +001a81c0: 2024 347d 2720 5c0a 2020 2020 2020 2020   $4}' \.        
│ │ │ +001a81d0: 2020 2020 2020 2020 2020 2020 7c20 7365              | se
│ │ │ +001a81e0: 6420 2d45 2022 732f 2872 777c 6465 6661  d -E "s/(rw|defa
│ │ │ +001a81f0: 756c 7473 7c73 6563 6c61 6265 6c7c 6e6f  ults|seclabel|no
│ │ │ +001a8200: 7375 6964 2928 2c7c 2429 2f2f 673b 732f  suid)(,|$)//g;s/
│ │ │ +001a8210: 2c24 2f2f 2229 0a20 2020 2020 2020 205b  ,$//").        [
│ │ │ +001a8220: 2022 2470 7265 7669 6f75 735f 6d6f 756e   "$previous_moun
│ │ │ +001a8230: 745f 6f70 7473 2220 5d20 2661 6d70 3b26  t_opts" ] &&
│ │ │ +001a8240: 616d 703b 2070 7265 7669 6f75 735f 6d6f  amp; previous_mo
│ │ │ +001a8250: 756e 745f 6f70 7473 2b3d 222c 220a 2020  unt_opts+=",".  
│ │ │ +001a8260: 2020 2020 2020 2320 496e 2069 736f 3936        # In iso96
│ │ │ +001a8270: 3630 2066 696c 6573 7973 7465 6d73 206d  60 filesystems m
│ │ │ +001a8280: 7461 6220 636f 756c 6420 6465 7363 7269  tab could descri
│ │ │ +001a8290: 6265 2061 2022 626c 6f63 6b73 697a 6522  be a "blocksize"
│ │ │ +001a82a0: 2076 616c 7565 2c20 7468 6973 2073 686f   value, this sho
│ │ │ +001a82b0: 756c 6420 6265 2072 6566 6c65 6374 6564  uld be reflected
│ │ │ +001a82c0: 2069 6e0a 2020 2020 2020 2020 2320 6673   in.        # fs
│ │ │ +001a82d0: 7461 6220 6173 2022 626c 6f63 6b22 2e20  tab as "block". 
│ │ │ +001a82e0: 2054 6865 206e 6578 7420 7661 7269 6162   The next variab
│ │ │ +001a82f0: 6c65 2069 7320 746f 2073 6174 6973 6679  le is to satisfy
│ │ │ +001a8300: 2073 6865 6c6c 6368 6563 6b20 5343 3230   shellcheck SC20
│ │ │ +001a8310: 3530 2e0a 2020 2020 2020 2020 6673 5f74  50..        fs_t
│ │ │ +001a8320: 7970 653d 2222 0a20 2020 2020 2020 2069  ype="".        i
│ │ │ +001a8330: 6620 5b20 2022 2466 735f 7479 7065 2220  f [  "$fs_type" 
│ │ │ +001a8340: 3d3d 2022 6973 6f39 3636 3022 205d 203b  == "iso9660" ] ;
│ │ │ +001a8350: 2074 6865 6e0a 2020 2020 2020 2020 2020   then.          
│ │ │ +001a8360: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ +001a8370: 5f6f 7074 733d 2428 7365 6420 2773 2f62  _opts=$(sed 's/b
│ │ │ +001a8380: 6c6f 636b 7369 7a65 3d2f 626c 6f63 6b3d  locksize=/block=
│ │ │ +001a8390: 2f27 2026 6c74 3b26 6c74 3b26 6c74 3b20  /' <<< 
│ │ │ +001a83a0: 2224 7072 6576 696f 7573 5f6d 6f75 6e74  "$previous_mount
│ │ │ +001a83b0: 5f6f 7074 7322 290a 2020 2020 2020 2020  _opts").        
│ │ │ +001a83c0: 6669 0a20 2020 2020 2020 2065 6368 6f20  fi.        echo 
│ │ │ +001a83d0: 2220 2f74 6d70 2020 6465 6661 756c 7473  " /tmp  defaults
│ │ │ +001a83e0: 2c24 7b70 7265 7669 6f75 735f 6d6f 756e  ,${previous_moun
│ │ │ +001a83f0: 745f 6f70 7473 7d6e 6f73 7569 6420 3020  t_opts}nosuid 0 
│ │ │ +001a8400: 3022 2026 6774 3b26 6774 3b20 2f65 7463  0" >> /etc
│ │ │ +001a8410: 2f66 7374 6162 0a20 2020 2023 2049 6620  /fstab.    # If 
│ │ │ +001a8420: 7468 6520 6d6f 756e 745f 6f70 7420 6f70  the mount_opt op
│ │ │ +001a8430: 7469 6f6e 2069 7320 6e6f 7420 616c 7265  tion is not alre
│ │ │ +001a8440: 6164 7920 696e 2074 6865 206d 6f75 6e74  ady in the mount
│ │ │ +001a8450: 2070 6f69 6e74 2773 202f 6574 632f 6673   point's /etc/fs
│ │ │ +001a8460: 7461 6220 656e 7472 792c 2061 6464 2069  tab entry, add i
│ │ │ +001a8470: 740a 2020 2020 656c 6966 2021 2067 7265  t.    elif ! gre
│ │ │ +001a8480: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ +001a8490: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ +001a84a0: 7463 2f66 7374 6162 207c 2067 7265 7020  tc/fstab | grep 
│ │ │ +001a84b0: 2d71 2022 6e6f 7375 6964 223b 2074 6865  -q "nosuid"; the
│ │ │ +001a84c0: 6e0a 2020 2020 2020 2020 7072 6576 696f  n.        previo
│ │ │ +001a84d0: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ +001a84e0: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ +001a84f0: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ +001a8500: 202f 6574 632f 6673 7461 6220 7c20 6177   /etc/fstab | aw
│ │ │ +001a8510: 6b20 277b 7072 696e 7420 2434 7d27 290a  k '{print $4}').
│ │ │ +001a8520: 2020 2020 2020 2020 7365 6420 2d69 2022          sed -i "
│ │ │ +001a8530: 737c 5c28 247b 6d6f 756e 745f 706f 696e  s|\(${mount_poin
│ │ │ +001a8540: 745f 6d61 7463 685f 7265 6765 7870 7d2e  t_match_regexp}.
│ │ │ +001a8550: 2a24 7b70 7265 7669 6f75 735f 6d6f 756e  *${previous_moun
│ │ │ +001a8560: 745f 6f70 7473 7d5c 297c 5c31 2c6e 6f73  t_opts}\)|\1,nos
│ │ │ +001a8570: 7569 647c 2220 2f65 7463 2f66 7374 6162  uid|" /etc/fstab
│ │ │ +001a8580: 0a20 2020 2066 690a 0a0a 2020 2020 6966  .    fi...    if
│ │ │ +001a8590: 206d 6b64 6972 202d 7020 222f 746d 7022   mkdir -p "/tmp"
│ │ │ +001a85a0: 3b20 7468 656e 0a20 2020 2020 2020 2069  ; then.        i
│ │ │ +001a85b0: 6620 6d6f 756e 7470 6f69 6e74 202d 7120  f mountpoint -q 
│ │ │ +001a85c0: 222f 746d 7022 3b20 7468 656e 0a20 2020  "/tmp"; then.   
│ │ │ +001a85d0: 2020 2020 2020 2020 206d 6f75 6e74 202d           mount -
│ │ │ +001a85e0: 6f20 7265 6d6f 756e 7420 2d2d 7461 7267  o remount --targ
│ │ │ +001a85f0: 6574 2022 2f74 6d70 220a 2020 2020 2020  et "/tmp".      
│ │ │ +001a8600: 2020 6669 0a20 2020 2066 690a 7d0a 0a70    fi.    fi.}..p
│ │ │ +001a8610: 6572 666f 726d 5f72 656d 6564 6961 7469  erform_remediati
│ │ │ +001a8620: 6f6e 0a0a 656c 7365 0a20 2020 2026 6774  on..else.    >
│ │ │ +001a8630: 3b26 616d 703b 3220 6563 686f 2027 5265  ;&2 echo 'Re
│ │ │ +001a8640: 6d65 6469 6174 696f 6e20 6973 206e 6f74  mediation is not
│ │ │ +001a8650: 2061 7070 6c69 6361 626c 652c 206e 6f74   applicable, not
│ │ │ +001a8660: 6869 6e67 2077 6173 2064 6f6e 6527 0a66  hing was done'.f
│ │ │ +001a8670: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +001a8680: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ +001a8730: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ +001a8740: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
Reb │ │ │ +001a7ba0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +001a7bb0: 7365 3c2f 7464 3e3c 2f74 723e 3c2f 7461 se
│ │ │ +001a87c0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +001a87e0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ +001a8810: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ +001a8860: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +001a87d0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +001a87f0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ +001a8840: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +001a8850: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable
.part /tmp --
│ │ │ +001a8880: 6d6f 756e 746f 7074 696f 6e73 3d22 6e6f  mountoptions="no
│ │ │ +001a8890: 7375 6964 220a 3c2f 636f 6465 3e3c 2f70  suid".

< │ │ │ 001a88b0: 2f74 643e 3c2f 7472 3e3c 2f74 626f 6479 /td> │ │ │ -001a9540: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ -001a9550: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ -001a9560: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity:< │ │ │ -001a9650: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
.part /var/log/
│ │ │ -001a96a0: 6175 6469 7420 2d2d 6d6f 756e 746f 7074  audit --mountopt
│ │ │ -001a96b0: 696f 6e73 3d22 6e6f 6465 7622 0a3c 2f63  ions="nodev".
│ │ │ -001a96d0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -001a9770: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -001a9780: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -001a9790: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low
Disru │ │ │ -001a9610: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e68 ption:h │ │ │ -001a9620: 6967 683c 2f74 643e 3c2f 7472 3e3c 7472 igh
Reboot:false
Stra │ │ │ -001a9660: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ -001a9670: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
low< │ │ │ -001a9830: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr> │ │ │ -001a9880: 3c74 723e 3c74 683e 5374 7261 7465 6779

│ │ │ -001a98c0: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ -001a98d0: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ -001a98e0: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ -001a98f0: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ -001a9900: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ -001a9910: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001a9920: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001a9930: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ -001a9940: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -001a9950: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001a9960: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ -001a9970: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ -001a9980: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001a9990: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ -001a99a0: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001a99b0: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001a99c0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001a99d0: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001a99e0: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001a99f0: 745f 6f70 7469 6f6e 5f76 6172 5f6c 6f67  t_option_var_log
│ │ │ -001a9a00: 5f61 7564 6974 5f6e 6f64 6576 0a20 202d  _audit_nodev.  -
│ │ │ -001a9a10: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -001a9a20: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ -001a9a30: 6e6f 6465 7620 4f70 7469 6f6e 2074 6f20  nodev Option to 
│ │ │ -001a9a40: 2f76 6172 2f6c 6f67 2f61 7564 6974 3a20  /var/log/audit: 
│ │ │ -001a9a50: 4368 6563 6b20 696e 666f 726d 6174 696f  Check informatio
│ │ │ -001a9a60: 6e20 6173 736f 6369 6174 6564 2074 6f20  n associated to 
│ │ │ -001a9a70: 6d6f 756e 7470 6f69 6e74 270a 2020 616e  mountpoint'.  an
│ │ │ -001a9a80: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ -001a9a90: 6d6d 616e 643a 2066 696e 646d 6e74 202d  mmand: findmnt -
│ │ │ -001a9aa0: 2d66 7374 6162 2027 2f76 6172 2f6c 6f67  -fstab '/var/log
│ │ │ -001a9ab0: 2f61 7564 6974 270a 2020 7265 6769 7374  /audit'.  regist
│ │ │ -001a9ac0: 6572 3a20 6465 7669 6365 5f6e 616d 650a  er: device_name.
│ │ │ -001a9ad0: 2020 6661 696c 6564 5f77 6865 6e3a 2064    failed_when: d
│ │ │ -001a9ae0: 6576 6963 655f 6e61 6d65 2e72 6320 2667  evice_name.rc &g
│ │ │ -001a9af0: 743b 2031 0a20 2063 6861 6e67 6564 5f77  t; 1.  changed_w
│ │ │ -001a9b00: 6865 6e3a 2066 616c 7365 0a20 2063 6865  hen: false.  che
│ │ │ -001a9b10: 636b 5f6d 6f64 653a 2066 616c 7365 0a20  ck_mode: false. 
│ │ │ -001a9b20: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ -001a9b30: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ -001a9b40: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001a9b50: 6b61 6765 7320 616e 6420 2272 706d 2d6f  kages and "rpm-o
│ │ │ -001a9b60: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001a9b70: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001a9b80: 0a20 2020 2061 6e64 2022 626f 6f74 6322  .    and "bootc"
│ │ │ -001a9b90: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001a9ba0: 732e 7061 636b 6167 6573 2061 6e64 206e  s.packages and n
│ │ │ -001a9bb0: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ -001a9bc0: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ -001a9bd0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001a9be0: 0a20 2020 2061 6e64 2022 6f73 7472 6565  .    and "ostree
│ │ │ -001a9bf0: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ -001a9c00: 635f 636d 646c 696e 6520 2920 616e 6420  c_cmdline ) and 
│ │ │ -001a9c10: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ -001a9c20: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ -001a9c30: 6520 696e 0a20 2020 205b 2264 6f63 6b65  e in.    ["docke
│ │ │ -001a9c40: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ -001a9c50: 767a 222c 2022 706f 646d 616e 222c 2022  vz", "podman", "
│ │ │ -001a9c60: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ -001a9c70: 2020 2d20 2722 2f76 6172 2f6c 6f67 2f61    - '"/var/log/a
│ │ │ -001a9c80: 7564 6974 2220 696e 2061 6e73 6962 6c65  udit" in ansible
│ │ │ -001a9c90: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ -001a9ca0: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ -001a9cb0: 207c 206c 6973 7427 0a20 2074 6167 733a   | list'.  tags:
│ │ │ -001a9cc0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001a9cd0: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ -001a9ce0: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ -001a9cf0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001a9d00: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -001a9d10: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ -001a9d20: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001a9d30: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ -001a9d40: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ -001a9d50: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001a9d60: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -001a9d70: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -001a9d80: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001a9d90: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001a9da0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ -001a9db0: 725f 6c6f 675f 6175 6469 745f 6e6f 6465  r_log_audit_node
│ │ │ -001a9dc0: 760a 2020 2d20 6e6f 5f72 6562 6f6f 745f  v.  - no_reboot_
│ │ │ -001a9dd0: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ -001a9de0: 2741 6464 206e 6f64 6576 204f 7074 696f  'Add nodev Optio
│ │ │ -001a9df0: 6e20 746f 202f 7661 722f 6c6f 672f 6175  n to /var/log/au
│ │ │ -001a9e00: 6469 743a 2043 7265 6174 6520 6d6f 756e  dit: Create moun
│ │ │ -001a9e10: 745f 696e 666f 2064 6963 7469 6f6e 6172  t_info dictionar
│ │ │ -001a9e20: 7920 7661 7269 6162 6c65 270a 2020 7365  y variable'.  se
│ │ │ -001a9e30: 745f 6661 6374 3a0a 2020 2020 6d6f 756e  t_fact:.    moun
│ │ │ -001a9e40: 745f 696e 666f 3a20 277b 7b20 6d6f 756e  t_info: '{{ moun
│ │ │ -001a9e50: 745f 696e 666f 7c64 6566 6175 6c74 287b  t_info|default({
│ │ │ -001a9e60: 7d29 7c63 6f6d 6269 6e65 287b 6974 656d  })|combine({item
│ │ │ -001a9e70: 2e30 3a20 6974 656d 2e31 7d29 207d 7d27  .0: item.1}) }}'
│ │ │ -001a9e80: 0a20 2077 6974 685f 746f 6765 7468 6572  .  with_together
│ │ │ -001a9e90: 3a0a 2020 2d20 277b 7b20 6465 7669 6365  :.  - '{{ device
│ │ │ -001a9ea0: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ -001a9eb0: 6573 5b30 5d2e 7370 6c69 7428 2920 7c20  es[0].split() | 
│ │ │ -001a9ec0: 6d61 7028 2727 6c6f 7765 7227 2729 207c  map(''lower'') |
│ │ │ -001a9ed0: 206c 6973 7420 7d7d 270a 2020 2d20 277b   list }}'.  - '{
│ │ │ -001a9ee0: 7b20 6465 7669 6365 5f6e 616d 652e 7374  { device_name.st
│ │ │ -001a9ef0: 646f 7574 5f6c 696e 6573 5b31 5d2e 7370  dout_lines[1].sp
│ │ │ -001a9f00: 6c69 7428 2920 7c20 6c69 7374 207d 7d27  lit() | list }}'
│ │ │ -001a9f10: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ -001a9f20: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ -001a9f30: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001a9f40: 6163 6b61 6765 7320 616e 6420 2272 706d  ackages and "rpm
│ │ │ -001a9f50: 2d6f 7374 7265 6522 2069 6e20 616e 7369  -ostree" in ansi
│ │ │ -001a9f60: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001a9f70: 6573 0a20 2020 2061 6e64 2022 626f 6f74  es.    and "boot
│ │ │ -001a9f80: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ -001a9f90: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001a9fa0: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ -001a9fb0: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ -001a9fc0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001a9fd0: 6573 0a20 2020 2061 6e64 2022 6f73 7472  es.    and "ostr
│ │ │ -001a9fe0: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ -001a9ff0: 726f 635f 636d 646c 696e 6520 2920 616e  roc_cmdline ) an
│ │ │ -001aa000: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ -001aa010: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ -001aa020: 7970 6520 696e 0a20 2020 205b 2264 6f63  ype in.    ["doc
│ │ │ -001aa030: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ -001aa040: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ -001aa050: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ -001aa060: 290a 2020 2d20 2722 2f76 6172 2f6c 6f67  ).  - '"/var/log
│ │ │ -001aa070: 2f61 7564 6974 2220 696e 2061 6e73 6962  /audit" in ansib
│ │ │ -001aa080: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ -001aa090: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ -001aa0a0: 2229 207c 206c 6973 7427 0a20 202d 2064  ") | list'.  - d
│ │ │ -001aa0b0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001aa0c0: 7420 6973 2064 6566 696e 6564 2061 6e64  t is defined and
│ │ │ -001aa0d0: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ -001aa0e0: 6f75 745f 6c69 6e65 7320 6973 2064 6566  out_lines is def
│ │ │ -001aa0f0: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ -001aa100: 5f6e 616d 652e 7374 646f 7574 207c 206c  _name.stdout | l
│ │ │ -001aa110: 656e 6774 6820 2667 743b 2030 290a 2020  ength > 0).  
│ │ │ -001aa120: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ -001aa130: 3030 2d35 332d 4143 2d36 0a20 202d 204e  00-53-AC-6.  - N
│ │ │ -001aa140: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ -001aa150: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ -001aa160: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ -001aa170: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -001aa180: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -001aa190: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ -001aa1a0: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ -001aa1b0: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ -001aa1c0: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ -001aa1d0: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -001aa1e0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -001aa1f0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -001aa200: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ -001aa210: 6f6e 5f76 6172 5f6c 6f67 5f61 7564 6974  on_var_log_audit
│ │ │ -001aa220: 5f6e 6f64 6576 0a20 202d 206e 6f5f 7265  _nodev.  - no_re
│ │ │ -001aa230: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -001aa240: 616d 653a 2027 4164 6420 6e6f 6465 7620  ame: 'Add nodev 
│ │ │ -001aa250: 4f70 7469 6f6e 2074 6f20 2f76 6172 2f6c  Option to /var/l
│ │ │ -001aa260: 6f67 2f61 7564 6974 3a20 4966 202f 7661  og/audit: If /va
│ │ │ -001aa270: 722f 6c6f 672f 6175 6469 7420 6e6f 7420  r/log/audit not 
│ │ │ -001aa280: 6d6f 756e 7465 642c 2063 7261 6674 0a20  mounted, craft. 
│ │ │ -001aa290: 2020 206d 6f75 6e74 5f69 6e66 6f20 6d61     mount_info ma
│ │ │ -001aa2a0: 6e75 616c 6c79 270a 2020 7365 745f 6661  nually'.  set_fa
│ │ │ -001aa2b0: 6374 3a0a 2020 2020 6d6f 756e 745f 696e  ct:.    mount_in
│ │ │ -001aa2c0: 666f 3a20 277b 7b20 6d6f 756e 745f 696e  fo: '{{ mount_in
│ │ │ -001aa2d0: 666f 7c64 6566 6175 6c74 287b 7d29 7c63  fo|default({})|c
│ │ │ -001aa2e0: 6f6d 6269 6e65 287b 6974 656d 2e30 3a20  ombine({item.0: 
│ │ │ -001aa2f0: 6974 656d 2e31 7d29 207d 7d27 0a20 2077  item.1}) }}'.  w
│ │ │ -001aa300: 6974 685f 746f 6765 7468 6572 3a0a 2020  ith_together:.  
│ │ │ -001aa310: 2d20 2d20 7461 7267 6574 0a20 2020 202d  - - target.    -
│ │ │ -001aa320: 2073 6f75 7263 650a 2020 2020 2d20 6673   source.    - fs
│ │ │ -001aa330: 7479 7065 0a20 2020 202d 206f 7074 696f  type.    - optio
│ │ │ -001aa340: 6e73 0a20 202d 202d 202f 7661 722f 6c6f  ns.  - - /var/lo
│ │ │ -001aa350: 672f 6175 6469 740a 2020 2020 2d20 2727  g/audit.    - ''
│ │ │ -001aa360: 0a20 2020 202d 2027 270a 2020 2020 2d20  .    - ''.    - 
│ │ │ -001aa370: 6465 6661 756c 7473 0a20 2077 6865 6e3a  defaults.  when:
│ │ │ -001aa380: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ -001aa390: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -001aa3a0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001aa3b0: 616e 6420 2272 706d 2d6f 7374 7265 6522  and "rpm-ostree"
│ │ │ -001aa3c0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001aa3d0: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001aa3e0: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ -001aa3f0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001aa400: 6167 6573 2061 6e64 206e 6f74 2022 6f70  ages and not "op
│ │ │ -001aa410: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ -001aa420: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001aa430: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001aa440: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ -001aa450: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ -001aa460: 696e 6520 2920 616e 6420 6e6f 7420 2820  ine ) and not ( 
│ │ │ -001aa470: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ -001aa480: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20  zation_type in. 
│ │ │ -001aa490: 2020 205b 2264 6f63 6b65 7222 2c20 226c     ["docker", "l
│ │ │ -001aa4a0: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ -001aa4b0: 706f 646d 616e 222c 2022 636f 6e74 6169  podman", "contai
│ │ │ -001aa4c0: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ -001aa4d0: 2f76 6172 2f6c 6f67 2f61 7564 6974 2220  /var/log/audit" 
│ │ │ -001aa4e0: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ -001aa4f0: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ -001aa500: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ -001aa510: 7427 0a20 202d 2028 222d 2d66 7374 6162  t'.  - ("--fstab
│ │ │ -001aa520: 2220 7c20 6c65 6e67 7468 203d 3d20 3029  " | length == 0)
│ │ │ -001aa530: 0a20 202d 2064 6576 6963 655f 6e61 6d65  .  - device_name
│ │ │ -001aa540: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ -001aa550: 6564 2061 6e64 2064 6576 6963 655f 6e61  ed and device_na
│ │ │ -001aa560: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320  me.stdout_lines 
│ │ │ -001aa570: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ -001aa580: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001aa590: 7574 207c 206c 656e 6774 6820 3d3d 2030  ut | length == 0
│ │ │ -001aa5a0: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ -001aa5b0: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ -001aa5c0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001aa5d0: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ -001aa5e0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -001aa5f0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001aa600: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -001aa610: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -001aa620: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ -001aa630: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ -001aa640: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -001aa650: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -001aa660: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001aa670: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -001aa680: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ -001aa690: 6f70 7469 6f6e 5f76 6172 5f6c 6f67 5f61  option_var_log_a
│ │ │ -001aa6a0: 7564 6974 5f6e 6f64 6576 0a20 202d 206e  udit_nodev.  - n
│ │ │ -001aa6b0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -001aa6c0: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ -001aa6d0: 6465 7620 4f70 7469 6f6e 2074 6f20 2f76  dev Option to /v
│ │ │ -001aa6e0: 6172 2f6c 6f67 2f61 7564 6974 3a20 4d61  ar/log/audit: Ma
│ │ │ -001aa6f0: 6b65 2073 7572 6520 6e6f 6465 7620 6f70  ke sure nodev op
│ │ │ -001aa700: 7469 6f6e 2069 7320 7061 7274 206f 6620  tion is part of 
│ │ │ -001aa710: 7468 650a 2020 2020 746f 202f 7661 722f  the.    to /var/
│ │ │ -001aa720: 6c6f 672f 6175 6469 7420 6f70 7469 6f6e  log/audit option
│ │ │ -001aa730: 7327 0a20 2073 6574 5f66 6163 743a 0a20  s'.  set_fact:. 
│ │ │ -001aa740: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ -001aa750: 7b7b 206d 6f75 6e74 5f69 6e66 6f20 7c20  {{ mount_info | 
│ │ │ -001aa760: 636f 6d62 696e 6528 207b 2727 6f70 7469  combine( {''opti
│ │ │ -001aa770: 6f6e 7327 273a 2727 2727 7e28 6d6f 756e  ons'':''''~(moun
│ │ │ -001aa780: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ -001aa790: 0a20 2020 2020 2064 6566 6175 6c74 2827  .      default('
│ │ │ -001aa7a0: 2727 2729 297e 2827 272c 2727 2069 6620  '''))~('','' if 
│ │ │ -001aa7b0: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469  (mount_info.opti
│ │ │ -001aa7c0: 6f6e 7320 7c20 6465 6661 756c 7428 2727  ons | default(''
│ │ │ -001aa7d0: 2727 2929 2065 6c73 6520 2727 2727 297e  '')) else '''')~
│ │ │ -001aa7e0: 2727 6e6f 6465 7627 270a 2020 2020 2020  ''nodev''.      
│ │ │ -001aa7f0: 7d29 207d 7d27 0a20 2077 6865 6e3a 0a20  }) }}'.  when:. 
│ │ │ -001aa800: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ -001aa810: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -001aa820: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001aa830: 6420 2272 706d 2d6f 7374 7265 6522 2069  d "rpm-ostree" i
│ │ │ -001aa840: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001aa850: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001aa860: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ -001aa870: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001aa880: 6573 2061 6e64 206e 6f74 2022 6f70 656e  es and not "open
│ │ │ -001aa890: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ -001aa8a0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001aa8b0: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001aa8c0: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ -001aa8d0: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ -001aa8e0: 6520 2920 616e 6420 6e6f 7420 2820 616e  e ) and not ( an
│ │ │ -001aa8f0: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ -001aa900: 7469 6f6e 5f74 7970 6520 696e 0a20 2020  tion_type in.   
│ │ │ -001aa910: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ -001aa920: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ -001aa930: 646d 616e 222c 2022 636f 6e74 6169 6e65  dman", "containe
│ │ │ -001aa940: 7222 5d20 2920 290a 2020 2d20 2722 2f76  r"] ) ).  - '"/v
│ │ │ -001aa950: 6172 2f6c 6f67 2f61 7564 6974 2220 696e  ar/log/audit" in
│ │ │ -001aa960: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ -001aa970: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ -001aa980: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ -001aa990: 0a20 202d 206d 6f75 6e74 5f69 6e66 6f20  .  - mount_info 
│ │ │ -001aa9a0: 6973 2064 6566 696e 6564 2061 6e64 2022  is defined and "
│ │ │ -001aa9b0: 6e6f 6465 7622 206e 6f74 2069 6e20 286d  nodev" not in (m
│ │ │ -001aa9c0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -001aa9d0: 7320 7c20 6465 6661 756c 7428 2727 2929  s | default(''))
│ │ │ -001aa9e0: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -001aa9f0: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ -001aaa00: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001aaa10: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ -001aaa20: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ -001aaa30: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001aaa40: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ -001aaa50: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ -001aaa60: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ -001aaa70: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ -001aaa80: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ -001aaa90: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ -001aaaa0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001aaab0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -001aaac0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ -001aaad0: 7074 696f 6e5f 7661 725f 6c6f 675f 6175  ption_var_log_au
│ │ │ -001aaae0: 6469 745f 6e6f 6465 760a 2020 2d20 6e6f  dit_nodev.  - no
│ │ │ -001aaaf0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ -001aab00: 2d20 6e61 6d65 3a20 2741 6464 206e 6f64  - name: 'Add nod
│ │ │ -001aab10: 6576 204f 7074 696f 6e20 746f 202f 7661  ev Option to /va
│ │ │ -001aab20: 722f 6c6f 672f 6175 6469 743a 2045 6e73  r/log/audit: Ens
│ │ │ -001aab30: 7572 6520 2f76 6172 2f6c 6f67 2f61 7564  ure /var/log/aud
│ │ │ -001aab40: 6974 2069 7320 6d6f 756e 7465 6420 7769  it is mounted wi
│ │ │ -001aab50: 7468 0a20 2020 206e 6f64 6576 206f 7074  th.    nodev opt
│ │ │ -001aab60: 696f 6e27 0a20 2061 6e73 6962 6c65 2e70  ion'.  ansible.p
│ │ │ -001aab70: 6f73 6978 2e6d 6f75 6e74 3a0a 2020 2020  osix.mount:.    
│ │ │ -001aab80: 7061 7468 3a20 2f76 6172 2f6c 6f67 2f61  path: /var/log/a
│ │ │ -001aab90: 7564 6974 0a20 2020 2073 7263 3a20 277b  udit.    src: '{
│ │ │ -001aaba0: 7b20 6d6f 756e 745f 696e 666f 2e73 6f75  { mount_info.sou
│ │ │ -001aabb0: 7263 6520 7c20 6465 6661 756c 7428 2727  rce | default(''
│ │ │ -001aabc0: 2727 2920 7d7d 270a 2020 2020 6f70 7473  '') }}'.    opts
│ │ │ -001aabd0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001aabe0: 2e6f 7074 696f 6e73 207c 2064 6566 6175  .options | defau
│ │ │ -001aabf0: 6c74 2827 2727 2729 207d 7d27 0a20 2020  lt('''') }}'.   
│ │ │ -001aac00: 2073 7461 7465 3a20 6d6f 756e 7465 640a   state: mounted.
│ │ │ -001aac10: 2020 2020 6673 7479 7065 3a20 277b 7b20      fstype: '{{ 
│ │ │ -001aac20: 6d6f 756e 745f 696e 666f 2e66 7374 7970  mount_info.fstyp
│ │ │ -001aac30: 6520 7c20 6465 6661 756c 7428 2727 2727  e | default(''''
│ │ │ -001aac40: 2920 7d7d 270a 2020 7265 6769 7374 6572  ) }}'.  register
│ │ │ -001aac50: 3a20 6d6f 756e 745f 7265 7375 6c74 0a20  : mount_result. 
│ │ │ -001aac60: 2066 6169 6c65 645f 7768 656e 3a0a 2020   failed_when:.  
│ │ │ -001aac70: 2d20 6d6f 756e 745f 7265 7375 6c74 2069  - mount_result i
│ │ │ -001aac80: 7320 6661 696c 6564 0a20 202d 2027 2727  s failed.  - '''
│ │ │ -001aac90: 7461 7267 6574 2069 7320 6275 7379 2727  target is busy''
│ │ │ -001aaca0: 206e 6f74 2069 6e20 286d 6f75 6e74 5f72   not in (mount_r
│ │ │ -001aacb0: 6573 756c 742e 6d73 6720 7c20 6465 6661  esult.msg | defa
│ │ │ -001aacc0: 756c 7428 2727 2727 2929 270a 2020 2d20  ult(''''))'.  - 
│ │ │ -001aacd0: 2727 2761 6c72 6561 6479 206d 6f75 6e74  '''already mount
│ │ │ -001aace0: 6564 2727 206e 6f74 2069 6e20 286d 6f75  ed'' not in (mou
│ │ │ -001aacf0: 6e74 5f72 6573 756c 742e 6d73 6720 7c20  nt_result.msg | 
│ │ │ -001aad00: 6465 6661 756c 7428 2727 2727 2929 270a  default(''''))'.
│ │ │ -001aad10: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ -001aad20: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ -001aad30: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001aad40: 636b 6167 6573 2061 6e64 2022 7270 6d2d  ckages and "rpm-
│ │ │ -001aad50: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001aad60: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001aad70: 730a 2020 2020 616e 6420 2262 6f6f 7463  s.    and "bootc
│ │ │ -001aad80: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001aad90: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001aada0: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ -001aadb0: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ -001aadc0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001aadd0: 730a 2020 2020 616e 6420 226f 7374 7265  s.    and "ostre
│ │ │ -001aade0: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ -001aadf0: 6f63 5f63 6d64 6c69 6e65 2029 2061 6e64  oc_cmdline ) and
│ │ │ -001aae00: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ -001aae10: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ -001aae20: 7065 2069 6e0a 2020 2020 5b22 646f 636b  pe in.    ["dock
│ │ │ -001aae30: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ -001aae40: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c20  nvz", "podman", 
│ │ │ -001aae50: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ -001aae60: 0a20 202d 2027 222f 7661 722f 6c6f 672f  .  - '"/var/log/
│ │ │ -001aae70: 6175 6469 7422 2069 6e20 616e 7369 626c  audit" in ansibl
│ │ │ -001aae80: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ -001aae90: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ -001aaea0: 2920 7c20 6c69 7374 270a 2020 2d20 6d6f  ) | list'.  - mo
│ │ │ -001aaeb0: 756e 745f 696e 666f 2069 7320 6465 6669  unt_info is defi
│ │ │ -001aaec0: 6e65 640a 2020 2d20 2864 6576 6963 655f  ned.  - (device_
│ │ │ -001aaed0: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ -001aaee0: 6566 696e 6564 2061 6e64 2028 6465 7669  efined and (devi
│ │ │ -001aaef0: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ -001aaf00: 206c 656e 6774 6820 2667 743b 2030 2929   length > 0))
│ │ │ -001aaf10: 206f 7220 2822 2d2d 6673 7461 6222 0a20   or ("--fstab". 
│ │ │ -001aaf20: 2020 207c 206c 656e 6774 6820 3d3d 2030     | length == 0
│ │ │ -001aaf30: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ -001aaf40: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ -001aaf50: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001aaf60: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ -001aaf70: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -001aaf80: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001aaf90: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -001aafa0: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -001aafb0: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ -001aafc0: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ -001aafd0: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -001aafe0: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -001aaff0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001ab000: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -001ab010: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ -001ab020: 6f70 7469 6f6e 5f76 6172 5f6c 6f67 5f61  option_var_log_a
│ │ │ -001ab030: 7564 6974 5f6e 6f64 6576 0a20 202d 206e  udit_nodev.  - n
│ │ │ -001ab040: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -001ab050: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -001ab100: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ -001ab110: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ -001ab120: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
Co │ │ │ -001a9810: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -001a9840: 6e3a 3c2f 7468 3e3c 7464 3e68 6967 683c n:high< │ │ │ -001a9850: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -001a9890: 3a3c 2f74 683e 3c74 643e 636f 6e66 6967 :config │ │ │ -001a98a0: 7572 653c 2f74 643e 3c2f 7472 3e3c 2f74 ure

│ │ │ -001ab1d0: 2320 5265 6d65 6469 6174 696f 6e20 6973  # Remediation is
│ │ │ -001ab1e0: 2061 7070 6c69 6361 626c 6520 6f6e 6c79   applicable only
│ │ │ -001ab1f0: 2069 6e20 6365 7274 6169 6e20 706c 6174   in certain plat
│ │ │ -001ab200: 666f 726d 730a 6966 2028 2021 2028 207b  forms.if ( ! ( {
│ │ │ -001ab210: 2072 706d 202d 2d71 7569 6574 202d 7120   rpm --quiet -q 
│ │ │ -001ab220: 6b65 726e 656c 203b 7d20 2661 6d70 3b26  kernel ;} &&
│ │ │ -001ab230: 616d 703b 207b 2072 706d 202d 2d71 7569  amp; { rpm --qui
│ │ │ -001ab240: 6574 202d 7120 7270 6d2d 6f73 7472 6565  et -q rpm-ostree
│ │ │ -001ab250: 203b 7d20 2661 6d70 3b26 616d 703b 207b   ;} && {
│ │ │ -001ab260: 2072 706d 202d 2d71 7569 6574 202d 7120   rpm --quiet -q 
│ │ │ -001ab270: 626f 6f74 6320 3b7d 2026 616d 703b 2661  bootc ;} &&a
│ │ │ -001ab280: 6d70 3b20 7b20 2120 7270 6d20 2d2d 7175  mp; { ! rpm --qu
│ │ │ -001ab290: 6965 7420 2d71 206f 7065 6e73 6869 6674  iet -q openshift
│ │ │ -001ab2a0: 2d6b 7562 656c 6574 203b 7d20 2661 6d70  -kubelet ;} &
│ │ │ -001ab2b0: 3b26 616d 703b 2028 5b20 2d66 202f 7275  ;& ([ -f /ru
│ │ │ -001ab2c0: 6e2f 6f73 7472 6565 2d62 6f6f 7465 6420  n/ostree-booted 
│ │ │ -001ab2d0: 5d20 7c7c 205b 202d 4c20 2f6f 7374 7265  ] || [ -L /ostre
│ │ │ -001ab2e0: 6520 5d29 2029 2026 616d 703b 2661 6d70  e ]) ) &&
│ │ │ -001ab2f0: 3b20 2120 2820 5b20 2d66 202f 2e64 6f63  ; ! ( [ -f /.doc
│ │ │ -001ab300: 6b65 7265 6e76 205d 207c 7c20 5b20 2d66  kerenv ] || [ -f
│ │ │ -001ab310: 202f 7275 6e2f 2e63 6f6e 7461 696e 6572   /run/.container
│ │ │ -001ab320: 656e 7620 5d20 2920 2920 2661 6d70 3b26  env ] ) ) &&
│ │ │ -001ab330: 616d 703b 207b 2028 2066 696e 646d 6e74  amp; { ( findmnt
│ │ │ -001ab340: 202d 2d6b 6572 6e65 6c20 222f 7661 722f   --kernel "/var/
│ │ │ -001ab350: 6c6f 672f 6175 6469 7422 2026 6774 3b20  log/audit" > 
│ │ │ -001ab360: 2f64 6576 2f6e 756c 6c20 7c7c 2066 696e  /dev/null || fin
│ │ │ -001ab370: 646d 6e74 202d 2d66 7374 6162 2022 2f76  dmnt --fstab "/v
│ │ │ -001ab380: 6172 2f6c 6f67 2f61 7564 6974 2220 2667  ar/log/audit" &g
│ │ │ -001ab390: 743b 202f 6465 762f 6e75 6c6c 2029 3b20  t; /dev/null ); 
│ │ │ -001ab3a0: 7d3b 2074 6865 6e0a 0a66 756e 6374 696f  }; then..functio
│ │ │ -001ab3b0: 6e20 7065 7266 6f72 6d5f 7265 6d65 6469  n perform_remedi
│ │ │ -001ab3c0: 6174 696f 6e20 7b0a 0a20 2020 200a 2020  ation {..    .  
│ │ │ -001ab3d0: 2020 2020 2020 2320 7468 6520 6d6f 756e        # the moun
│ │ │ -001ab3e0: 7420 706f 696e 7420 2f76 6172 2f6c 6f67  t point /var/log
│ │ │ -001ab3f0: 2f61 7564 6974 2068 6173 2074 6f20 6265  /audit has to be
│ │ │ -001ab400: 2064 6566 696e 6564 2069 6e20 2f65 7463   defined in /etc
│ │ │ -001ab410: 2f66 7374 6162 0a20 2020 2020 2020 2023  /fstab.        #
│ │ │ -001ab420: 2062 6566 6f72 6520 7468 6973 2072 656d   before this rem
│ │ │ -001ab430: 6564 6961 7469 6f6e 2063 616e 2062 6520  ediation can be 
│ │ │ -001ab440: 6578 6563 7574 6564 2e20 496e 2063 6173  executed. In cas
│ │ │ -001ab450: 6520 6974 2069 7320 6e6f 7420 6465 6669  e it is not defi
│ │ │ -001ab460: 6e65 642c 2074 6865 0a20 2020 2020 2020  ned, the.       
│ │ │ -001ab470: 2023 2072 656d 6564 6961 7469 6f6e 2061   # remediation a
│ │ │ -001ab480: 626f 7274 7320 616e 6420 6e6f 2063 6861  borts and no cha
│ │ │ -001ab490: 6e67 6573 2072 6567 6172 6469 6e67 2074  nges regarding t
│ │ │ -001ab4a0: 6865 206d 6f75 6e74 2070 6f69 6e74 2061  he mount point a
│ │ │ -001ab4b0: 7265 2064 6f6e 652e 0a20 2020 2020 2020  re done..       
│ │ │ -001ab4c0: 206d 6f75 6e74 5f70 6f69 6e74 5f6d 6174   mount_point_mat
│ │ │ -001ab4d0: 6368 5f72 6567 6578 703d 2224 2870 7269  ch_regexp="$(pri
│ │ │ -001ab4e0: 6e74 6620 225e 5b5b 3a73 7061 6365 3a5d  ntf "^[[:space:]
│ │ │ -001ab4f0: 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061 6365  ]*[^#].*[[:space
│ │ │ -001ab500: 3a5d 5d25 735b 5b3a 7370 6163 653a 5d5d  :]]%s[[:space:]]
│ │ │ -001ab510: 2220 222f 7661 722f 6c6f 672f 6175 6469  " "/var/log/audi
│ │ │ -001ab520: 7422 2922 0a0a 2020 2020 6772 6570 2022  t")"..    grep "
│ │ │ -001ab530: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ -001ab540: 6368 5f72 6567 6578 7022 202d 7120 2f65  ch_regexp" -q /e
│ │ │ -001ab550: 7463 2f66 7374 6162 205c 0a20 2020 2020  tc/fstab \.     
│ │ │ -001ab560: 2020 207c 7c20 7b20 6563 686f 2022 5468     || { echo "Th
│ │ │ -001ab570: 6520 6d6f 756e 7420 706f 696e 7420 272f  e mount point '/
│ │ │ -001ab580: 7661 722f 6c6f 672f 6175 6469 7427 2069  var/log/audit' i
│ │ │ -001ab590: 7320 6e6f 7420 6576 656e 2069 6e20 2f65  s not even in /e
│ │ │ -001ab5a0: 7463 2f66 7374 6162 2c20 736f 2077 6520  tc/fstab, so we 
│ │ │ -001ab5b0: 6361 6e27 7420 7365 7420 7570 206d 6f75  can't set up mou
│ │ │ -001ab5c0: 6e74 206f 7074 696f 6e73 2220 2667 743b  nt options" >
│ │ │ -001ab5d0: 2661 6d70 3b32 3b0a 2020 2020 2020 2020  &2;.        
│ │ │ -001ab5e0: 2020 2020 2020 2020 6563 686f 2022 4e6f          echo "No
│ │ │ -001ab5f0: 7420 7265 6d65 6469 6174 696e 672c 2062  t remediating, b
│ │ │ -001ab600: 6563 6175 7365 2074 6865 7265 2069 7320  ecause there is 
│ │ │ -001ab610: 6e6f 2072 6563 6f72 6420 6f66 202f 7661  no record of /va
│ │ │ -001ab620: 722f 6c6f 672f 6175 6469 7420 696e 202f  r/log/audit in /
│ │ │ -001ab630: 6574 632f 6673 7461 6222 2026 6774 3b26  etc/fstab" >&
│ │ │ -001ab640: 616d 703b 323b 2072 6574 7572 6e20 313b  amp;2; return 1;
│ │ │ -001ab650: 207d 0a20 2020 200a 0a0a 2020 2020 6d6f   }.    ...    mo
│ │ │ -001ab660: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001ab670: 7265 6765 7870 3d22 2428 7072 696e 7466  regexp="$(printf
│ │ │ -001ab680: 2022 5e5b 5b3a 7370 6163 653a 5d5d 2a5b   "^[[:space:]]*[
│ │ │ -001ab690: 5e23 5d2e 2a5b 5b3a 7370 6163 653a 5d5d  ^#].*[[:space:]]
│ │ │ -001ab6a0: 2573 5b5b 3a73 7061 6365 3a5d 5d22 202f  %s[[:space:]]" /
│ │ │ -001ab6b0: 7661 722f 6c6f 672f 6175 6469 7429 220a  var/log/audit)".
│ │ │ -001ab6c0: 0a20 2020 2023 2049 6620 7468 6520 6d6f  .    # If the mo
│ │ │ -001ab6d0: 756e 7420 706f 696e 7420 6973 206e 6f74  unt point is not
│ │ │ -001ab6e0: 2069 6e20 2f65 7463 2f66 7374 6162 2c20   in /etc/fstab, 
│ │ │ -001ab6f0: 6765 7420 7072 6576 696f 7573 206d 6f75  get previous mou
│ │ │ -001ab700: 6e74 206f 7074 696f 6e73 2066 726f 6d20  nt options from 
│ │ │ -001ab710: 2f65 7463 2f6d 7461 620a 2020 2020 6966  /etc/mtab.    if
│ │ │ -001ab720: 2021 2067 7265 7020 2d71 2022 246d 6f75   ! grep -q "$mou
│ │ │ -001ab730: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001ab740: 6567 6578 7022 202f 6574 632f 6673 7461  egexp" /etc/fsta
│ │ │ -001ab750: 623b 2074 6865 6e0a 2020 2020 2020 2020  b; then.        
│ │ │ -001ab760: 2320 7275 6e74 696d 6520 6f70 7473 2077  # runtime opts w
│ │ │ -001ab770: 6974 686f 7574 2073 6f6d 6520 6175 746f  ithout some auto
│ │ │ -001ab780: 6d61 7469 6320 6b65 726e 656c 2f75 7365  matic kernel/use
│ │ │ -001ab790: 7273 7061 6365 2d61 6464 6564 2064 6566  rspace-added def
│ │ │ -001ab7a0: 6175 6c74 730a 2020 2020 2020 2020 7072  aults.        pr
│ │ │ -001ab7b0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001ab7c0: 733d 2428 6772 6570 2022 246d 6f75 6e74  s=$(grep "$mount
│ │ │ -001ab7d0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001ab7e0: 6578 7022 202f 6574 632f 6d74 6162 207c  exp" /etc/mtab |
│ │ │ -001ab7f0: 2068 6561 6420 2d31 207c 2020 6177 6b20   head -1 |  awk 
│ │ │ -001ab800: 277b 7072 696e 7420 2434 7d27 205c 0a20  '{print $4}' \. 
│ │ │ -001ab810: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -001ab820: 2020 207c 2073 6564 202d 4520 2273 2f28     | sed -E "s/(
│ │ │ -001ab830: 7277 7c64 6566 6175 6c74 737c 7365 636c  rw|defaults|secl
│ │ │ -001ab840: 6162 656c 7c6e 6f64 6576 2928 2c7c 2429  abel|nodev)(,|$)
│ │ │ -001ab850: 2f2f 673b 732f 2c24 2f2f 2229 0a20 2020  //g;s/,$//").   
│ │ │ -001ab860: 2020 2020 205b 2022 2470 7265 7669 6f75       [ "$previou
│ │ │ -001ab870: 735f 6d6f 756e 745f 6f70 7473 2220 5d20  s_mount_opts" ] 
│ │ │ -001ab880: 2661 6d70 3b26 616d 703b 2070 7265 7669  && previ
│ │ │ -001ab890: 6f75 735f 6d6f 756e 745f 6f70 7473 2b3d  ous_mount_opts+=
│ │ │ -001ab8a0: 222c 220a 2020 2020 2020 2020 2320 496e  ",".        # In
│ │ │ -001ab8b0: 2069 736f 3936 3630 2066 696c 6573 7973   iso9660 filesys
│ │ │ -001ab8c0: 7465 6d73 206d 7461 6220 636f 756c 6420  tems mtab could 
│ │ │ -001ab8d0: 6465 7363 7269 6265 2061 2022 626c 6f63  describe a "bloc
│ │ │ -001ab8e0: 6b73 697a 6522 2076 616c 7565 2c20 7468  ksize" value, th
│ │ │ -001ab8f0: 6973 2073 686f 756c 6420 6265 2072 6566  is should be ref
│ │ │ -001ab900: 6c65 6374 6564 2069 6e0a 2020 2020 2020  lected in.      
│ │ │ -001ab910: 2020 2320 6673 7461 6220 6173 2022 626c    # fstab as "bl
│ │ │ -001ab920: 6f63 6b22 2e20 2054 6865 206e 6578 7420  ock".  The next 
│ │ │ -001ab930: 7661 7269 6162 6c65 2069 7320 746f 2073  variable is to s
│ │ │ -001ab940: 6174 6973 6679 2073 6865 6c6c 6368 6563  atisfy shellchec
│ │ │ -001ab950: 6b20 5343 3230 3530 2e0a 2020 2020 2020  k SC2050..      
│ │ │ -001ab960: 2020 6673 5f74 7970 653d 2222 0a20 2020    fs_type="".   
│ │ │ -001ab970: 2020 2020 2069 6620 5b20 2022 2466 735f       if [  "$fs_
│ │ │ -001ab980: 7479 7065 2220 3d3d 2022 6973 6f39 3636  type" == "iso966
│ │ │ -001ab990: 3022 205d 203b 2074 6865 6e0a 2020 2020  0" ] ; then.    
│ │ │ -001ab9a0: 2020 2020 2020 2020 7072 6576 696f 7573          previous
│ │ │ -001ab9b0: 5f6d 6f75 6e74 5f6f 7074 733d 2428 7365  _mount_opts=$(se
│ │ │ -001ab9c0: 6420 2773 2f62 6c6f 636b 7369 7a65 3d2f  d 's/blocksize=/
│ │ │ -001ab9d0: 626c 6f63 6b3d 2f27 2026 6c74 3b26 6c74  block=/' <<
│ │ │ -001ab9e0: 3b26 6c74 3b20 2224 7072 6576 696f 7573  ;< "$previous
│ │ │ -001ab9f0: 5f6d 6f75 6e74 5f6f 7074 7322 290a 2020  _mount_opts").  
│ │ │ -001aba00: 2020 2020 2020 6669 0a20 2020 2020 2020        fi.       
│ │ │ -001aba10: 2065 6368 6f20 2220 2f76 6172 2f6c 6f67   echo " /var/log
│ │ │ -001aba20: 2f61 7564 6974 2020 6465 6661 756c 7473  /audit  defaults
│ │ │ -001aba30: 2c24 7b70 7265 7669 6f75 735f 6d6f 756e  ,${previous_moun
│ │ │ -001aba40: 745f 6f70 7473 7d6e 6f64 6576 2030 2030  t_opts}nodev 0 0
│ │ │ -001aba50: 2220 2667 743b 2667 743b 202f 6574 632f  " >> /etc/
│ │ │ -001aba60: 6673 7461 620a 2020 2020 2320 4966 2074  fstab.    # If t
│ │ │ -001aba70: 6865 206d 6f75 6e74 5f6f 7074 206f 7074  he mount_opt opt
│ │ │ -001aba80: 696f 6e20 6973 206e 6f74 2061 6c72 6561  ion is not alrea
│ │ │ -001aba90: 6479 2069 6e20 7468 6520 6d6f 756e 7420  dy in the mount 
│ │ │ -001abaa0: 706f 696e 7427 7320 2f65 7463 2f66 7374  point's /etc/fst
│ │ │ -001abab0: 6162 2065 6e74 7279 2c20 6164 6420 6974  ab entry, add it
│ │ │ -001abac0: 0a20 2020 2065 6c69 6620 2120 6772 6570  .    elif ! grep
│ │ │ -001abad0: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -001abae0: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ -001abaf0: 632f 6673 7461 6220 7c20 6772 6570 202d  c/fstab | grep -
│ │ │ -001abb00: 7120 226e 6f64 6576 223b 2074 6865 6e0a  q "nodev"; then.
│ │ │ -001abb10: 2020 2020 2020 2020 7072 6576 696f 7573          previous
│ │ │ -001abb20: 5f6d 6f75 6e74 5f6f 7074 733d 2428 6772  _mount_opts=$(gr
│ │ │ -001abb30: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ -001abb40: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ -001abb50: 6574 632f 6673 7461 6220 7c20 6177 6b20  etc/fstab | awk 
│ │ │ -001abb60: 277b 7072 696e 7420 2434 7d27 290a 2020  '{print $4}').  
│ │ │ -001abb70: 2020 2020 2020 7365 6420 2d69 2022 737c        sed -i "s|
│ │ │ -001abb80: 5c28 247b 6d6f 756e 745f 706f 696e 745f  \(${mount_point_
│ │ │ -001abb90: 6d61 7463 685f 7265 6765 7870 7d2e 2a24  match_regexp}.*$
│ │ │ -001abba0: 7b70 7265 7669 6f75 735f 6d6f 756e 745f  {previous_mount_
│ │ │ -001abbb0: 6f70 7473 7d5c 297c 5c31 2c6e 6f64 6576  opts}\)|\1,nodev
│ │ │ -001abbc0: 7c22 202f 6574 632f 6673 7461 620a 2020  |" /etc/fstab.  
│ │ │ -001abbd0: 2020 6669 0a0a 0a20 2020 2069 6620 6d6b    fi...    if mk
│ │ │ -001abbe0: 6469 7220 2d70 2022 2f76 6172 2f6c 6f67  dir -p "/var/log
│ │ │ -001abbf0: 2f61 7564 6974 223b 2074 6865 6e0a 2020  /audit"; then.  
│ │ │ -001abc00: 2020 2020 2020 6966 206d 6f75 6e74 706f        if mountpo
│ │ │ -001abc10: 696e 7420 2d71 2022 2f76 6172 2f6c 6f67  int -q "/var/log
│ │ │ -001abc20: 2f61 7564 6974 223b 2074 6865 6e0a 2020  /audit"; then.  
│ │ │ -001abc30: 2020 2020 2020 2020 2020 6d6f 756e 7420            mount 
│ │ │ -001abc40: 2d6f 2072 656d 6f75 6e74 202d 2d74 6172  -o remount --tar
│ │ │ -001abc50: 6765 7420 222f 7661 722f 6c6f 672f 6175  get "/var/log/au
│ │ │ -001abc60: 6469 7422 0a20 2020 2020 2020 2066 690a  dit".        fi.
│ │ │ -001abc70: 2020 2020 6669 0a7d 0a0a 7065 7266 6f72      fi.}..perfor
│ │ │ -001abc80: 6d5f 7265 6d65 6469 6174 696f 6e0a 0a65  m_remediation..e
│ │ │ -001abc90: 6c73 650a 2020 2020 2667 743b 2661 6d70  lse.    >&
│ │ │ -001abca0: 3b32 2065 6368 6f20 2752 656d 6564 6961  ;2 echo 'Remedia
│ │ │ -001abcb0: 7469 6f6e 2069 7320 6e6f 7420 6170 706c  tion is not appl
│ │ │ -001abcc0: 6963 6162 6c65 2c20 6e6f 7468 696e 6720  icable, nothing 
│ │ │ -001abcd0: 7761 7320 646f 6e65 270a 6669 0a3c 2f63  was done'.fi.
Re │ │ │ -001ab1a0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -001ab1b0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 2f74 lse
│ │ │ +001a9630: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +001a9640: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f │ │ │ +001a9680: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:low
Disrup │ │ │ +001a9610: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6869 tion:hi │ │ │ +001a9620: 6768 3c2f 7464 3e3c 2f74 723e 3c74 723e gh
Reboot:false
Strat │ │ │ +001a9660: 6567 793a 3c2f 7468 3e3c 7464 3e63 6f6e egy:con │ │ │ +001a9670: 6669 6775 7265 3c2f 7464 3e3c 2f74 723e figure
- name: Gathe
│ │ │ +001a96a0: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ +001a96b0: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ +001a96c0: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ +001a96d0: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ +001a96e0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001a96f0: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ +001a9700: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ +001a9710: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +001a9720: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001a9730: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ +001a9740: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001a9750: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ +001a9760: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ +001a9770: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +001a9780: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ +001a9790: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ +001a97a0: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ +001a97b0: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ +001a97c0: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f  ount_option_var_
│ │ │ +001a97d0: 6c6f 675f 6175 6469 745f 6e6f 6465 760a  log_audit_nodev.
│ │ │ +001a97e0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001a97f0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001a9800: 6464 206e 6f64 6576 204f 7074 696f 6e20  dd nodev Option 
│ │ │ +001a9810: 746f 202f 7661 722f 6c6f 672f 6175 6469  to /var/log/audi
│ │ │ +001a9820: 743a 2043 6865 636b 2069 6e66 6f72 6d61  t: Check informa
│ │ │ +001a9830: 7469 6f6e 2061 7373 6f63 6961 7465 6420  tion associated 
│ │ │ +001a9840: 746f 206d 6f75 6e74 706f 696e 7427 0a20  to mountpoint'. 
│ │ │ +001a9850: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +001a9860: 2e63 6f6d 6d61 6e64 3a20 6669 6e64 6d6e  .command: findmn
│ │ │ +001a9870: 7420 2d2d 6673 7461 6220 272f 7661 722f  t --fstab '/var/
│ │ │ +001a9880: 6c6f 672f 6175 6469 7427 0a20 2072 6567  log/audit'.  reg
│ │ │ +001a9890: 6973 7465 723a 2064 6576 6963 655f 6e61  ister: device_na
│ │ │ +001a98a0: 6d65 0a20 2066 6169 6c65 645f 7768 656e  me.  failed_when
│ │ │ +001a98b0: 3a20 6465 7669 6365 5f6e 616d 652e 7263  : device_name.rc
│ │ │ +001a98c0: 2026 6774 3b20 310a 2020 6368 616e 6765   > 1.  change
│ │ │ +001a98d0: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ +001a98e0: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73  check_mode: fals
│ │ │ +001a98f0: 650a 2020 7768 656e 3a0a 2020 2d20 2820  e.  when:.  - ( 
│ │ │ +001a9900: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ +001a9910: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001a9920: 7061 636b 6167 6573 2061 6e64 2022 7270  packages and "rp
│ │ │ +001a9930: 6d2d 6f73 7472 6565 2220 696e 2061 6e73  m-ostree" in ans
│ │ │ +001a9940: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001a9950: 6765 730a 2020 2020 616e 6420 2262 6f6f  ges.    and "boo
│ │ │ +001a9960: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ +001a9970: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001a9980: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ +001a9990: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ +001a99a0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001a99b0: 6765 730a 2020 2020 616e 6420 226f 7374  ges.    and "ost
│ │ │ +001a99c0: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001a99d0: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061  proc_cmdline ) a
│ │ │ +001a99e0: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ +001a99f0: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ +001a9a00: 7479 7065 2069 6e0a 2020 2020 5b22 646f  type in.    ["do
│ │ │ +001a9a10: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ +001a9a20: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ +001a9a30: 2c20 2263 6f6e 7461 696e 6572 225d 2029  , "container"] )
│ │ │ +001a9a40: 2029 0a20 202d 2027 222f 7661 722f 6c6f   ).  - '"/var/lo
│ │ │ +001a9a50: 672f 6175 6469 7422 2069 6e20 616e 7369  g/audit" in ansi
│ │ │ +001a9a60: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ +001a9a70: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ +001a9a80: 7422 2920 7c20 6c69 7374 270a 2020 7461  t") | list'.  ta
│ │ │ +001a9a90: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +001a9aa0: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ +001a9ab0: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ +001a9ac0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001a9ad0: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ +001a9ae0: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ +001a9af0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001a9b00: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ +001a9b10: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ +001a9b20: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001a9b30: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001a9b40: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001a9b50: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001a9b60: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001a9b70: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001a9b80: 5f76 6172 5f6c 6f67 5f61 7564 6974 5f6e  _var_log_audit_n
│ │ │ +001a9b90: 6f64 6576 0a20 202d 206e 6f5f 7265 626f  odev.  - no_rebo
│ │ │ +001a9ba0: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +001a9bb0: 653a 2027 4164 6420 6e6f 6465 7620 4f70  e: 'Add nodev Op
│ │ │ +001a9bc0: 7469 6f6e 2074 6f20 2f76 6172 2f6c 6f67  tion to /var/log
│ │ │ +001a9bd0: 2f61 7564 6974 3a20 4372 6561 7465 206d  /audit: Create m
│ │ │ +001a9be0: 6f75 6e74 5f69 6e66 6f20 6469 6374 696f  ount_info dictio
│ │ │ +001a9bf0: 6e61 7279 2076 6172 6961 626c 6527 0a20  nary variable'. 
│ │ │ +001a9c00: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ +001a9c10: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ +001a9c20: 6f75 6e74 5f69 6e66 6f7c 6465 6661 756c  ount_info|defaul
│ │ │ +001a9c30: 7428 7b7d 297c 636f 6d62 696e 6528 7b69  t({})|combine({i
│ │ │ +001a9c40: 7465 6d2e 303a 2069 7465 6d2e 317d 2920  tem.0: item.1}) 
│ │ │ +001a9c50: 7d7d 270a 2020 7769 7468 5f74 6f67 6574  }}'.  with_toget
│ │ │ +001a9c60: 6865 723a 0a20 202d 2027 7b7b 2064 6576  her:.  - '{{ dev
│ │ │ +001a9c70: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ +001a9c80: 6c69 6e65 735b 305d 2e73 706c 6974 2829  lines[0].split()
│ │ │ +001a9c90: 207c 206d 6170 2827 276c 6f77 6572 2727   | map(''lower''
│ │ │ +001a9ca0: 2920 7c20 6c69 7374 207d 7d27 0a20 202d  ) | list }}'.  -
│ │ │ +001a9cb0: 2027 7b7b 2064 6576 6963 655f 6e61 6d65   '{{ device_name
│ │ │ +001a9cc0: 2e73 7464 6f75 745f 6c69 6e65 735b 315d  .stdout_lines[1]
│ │ │ +001a9cd0: 2e73 706c 6974 2829 207c 206c 6973 7420  .split() | list 
│ │ │ +001a9ce0: 7d7d 270a 2020 7768 656e 3a0a 2020 2d20  }}'.  when:.  - 
│ │ │ +001a9cf0: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ +001a9d00: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001a9d10: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001a9d20: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ +001a9d30: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001a9d40: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ +001a9d50: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +001a9d60: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001a9d70: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ +001a9d80: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ +001a9d90: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001a9da0: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ +001a9db0: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001a9dc0: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ +001a9dd0: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ +001a9de0: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ +001a9df0: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ +001a9e00: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +001a9e10: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +001a9e20: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ +001a9e30: 2029 2029 0a20 202d 2027 222f 7661 722f   ) ).  - '"/var/
│ │ │ +001a9e40: 6c6f 672f 6175 6469 7422 2069 6e20 616e  log/audit" in an
│ │ │ +001a9e50: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ +001a9e60: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ +001a9e70: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ +001a9e80: 2d20 6465 7669 6365 5f6e 616d 652e 7374  - device_name.st
│ │ │ +001a9e90: 646f 7574 2069 7320 6465 6669 6e65 6420  dout is defined 
│ │ │ +001a9ea0: 616e 6420 6465 7669 6365 5f6e 616d 652e  and device_name.
│ │ │ +001a9eb0: 7374 646f 7574 5f6c 696e 6573 2069 7320  stdout_lines is 
│ │ │ +001a9ec0: 6465 6669 6e65 640a 2020 2d20 2864 6576  defined.  - (dev
│ │ │ +001a9ed0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ +001a9ee0: 7c20 6c65 6e67 7468 2026 6774 3b20 3029  | length > 0)
│ │ │ +001a9ef0: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +001a9f00: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ +001a9f10: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001a9f20: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ +001a9f30: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ +001a9f40: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001a9f50: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ +001a9f60: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ +001a9f70: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ +001a9f80: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ +001a9f90: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +001a9fa0: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +001a9fb0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +001a9fc0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +001a9fd0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ +001a9fe0: 7074 696f 6e5f 7661 725f 6c6f 675f 6175  ption_var_log_au
│ │ │ +001a9ff0: 6469 745f 6e6f 6465 760a 2020 2d20 6e6f  dit_nodev.  - no
│ │ │ +001aa000: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +001aa010: 2d20 6e61 6d65 3a20 2741 6464 206e 6f64  - name: 'Add nod
│ │ │ +001aa020: 6576 204f 7074 696f 6e20 746f 202f 7661  ev Option to /va
│ │ │ +001aa030: 722f 6c6f 672f 6175 6469 743a 2049 6620  r/log/audit: If 
│ │ │ +001aa040: 2f76 6172 2f6c 6f67 2f61 7564 6974 206e  /var/log/audit n
│ │ │ +001aa050: 6f74 206d 6f75 6e74 6564 2c20 6372 6166  ot mounted, craf
│ │ │ +001aa060: 740a 2020 2020 6d6f 756e 745f 696e 666f  t.    mount_info
│ │ │ +001aa070: 206d 616e 7561 6c6c 7927 0a20 2073 6574   manually'.  set
│ │ │ +001aa080: 5f66 6163 743a 0a20 2020 206d 6f75 6e74  _fact:.    mount
│ │ │ +001aa090: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74  _info: '{{ mount
│ │ │ +001aa0a0: 5f69 6e66 6f7c 6465 6661 756c 7428 7b7d  _info|default({}
│ │ │ +001aa0b0: 297c 636f 6d62 696e 6528 7b69 7465 6d2e  )|combine({item.
│ │ │ +001aa0c0: 303a 2069 7465 6d2e 317d 2920 7d7d 270a  0: item.1}) }}'.
│ │ │ +001aa0d0: 2020 7769 7468 5f74 6f67 6574 6865 723a    with_together:
│ │ │ +001aa0e0: 0a20 202d 202d 2074 6172 6765 740a 2020  .  - - target.  
│ │ │ +001aa0f0: 2020 2d20 736f 7572 6365 0a20 2020 202d    - source.    -
│ │ │ +001aa100: 2066 7374 7970 650a 2020 2020 2d20 6f70   fstype.    - op
│ │ │ +001aa110: 7469 6f6e 730a 2020 2d20 2d20 2f76 6172  tions.  - - /var
│ │ │ +001aa120: 2f6c 6f67 2f61 7564 6974 0a20 2020 202d  /log/audit.    -
│ │ │ +001aa130: 2027 270a 2020 2020 2d20 2727 0a20 2020   ''.    - ''.   
│ │ │ +001aa140: 202d 2064 6566 6175 6c74 730a 2020 7768   - defaults.  wh
│ │ │ +001aa150: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ +001aa160: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +001aa170: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001aa180: 6573 2061 6e64 2022 7270 6d2d 6f73 7472  es and "rpm-ostr
│ │ │ +001aa190: 6565 2220 696e 2061 6e73 6962 6c65 5f66  ee" in ansible_f
│ │ │ +001aa1a0: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001aa1b0: 2020 616e 6420 2262 6f6f 7463 2220 696e    and "bootc" in
│ │ │ +001aa1c0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001aa1d0: 6163 6b61 6765 7320 616e 6420 6e6f 7420  ackages and not 
│ │ │ +001aa1e0: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +001aa1f0: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +001aa200: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001aa210: 2020 616e 6420 226f 7374 7265 6522 2069    and "ostree" i
│ │ │ +001aa220: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ +001aa230: 6d64 6c69 6e65 2029 2061 6e64 206e 6f74  mdline ) and not
│ │ │ +001aa240: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +001aa250: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +001aa260: 6e0a 2020 2020 5b22 646f 636b 6572 222c  n.    ["docker",
│ │ │ +001aa270: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ +001aa280: 2c20 2270 6f64 6d61 6e22 2c20 2263 6f6e  , "podman", "con
│ │ │ +001aa290: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ +001aa2a0: 2027 222f 7661 722f 6c6f 672f 6175 6469   '"/var/log/audi
│ │ │ +001aa2b0: 7422 2069 6e20 616e 7369 626c 655f 6d6f  t" in ansible_mo
│ │ │ +001aa2c0: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ +001aa2d0: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ +001aa2e0: 6c69 7374 270a 2020 2d20 2822 2d2d 6673  list'.  - ("--fs
│ │ │ +001aa2f0: 7461 6222 207c 206c 656e 6774 6820 3d3d  tab" | length ==
│ │ │ +001aa300: 2030 290a 2020 2d20 6465 7669 6365 5f6e   0).  - device_n
│ │ │ +001aa310: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ +001aa320: 6669 6e65 6420 616e 6420 6465 7669 6365  fined and device
│ │ │ +001aa330: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ +001aa340: 6573 2069 7320 6465 6669 6e65 640a 2020  es is defined.  
│ │ │ +001aa350: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ +001aa360: 7464 6f75 7420 7c20 6c65 6e67 7468 203d  tdout | length =
│ │ │ +001aa370: 3d20 3029 0a20 2074 6167 733a 0a20 202d  = 0).  tags:.  -
│ │ │ +001aa380: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001aa390: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +001aa3a0: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ +001aa3b0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +001aa3c0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001aa3d0: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +001aa3e0: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +001aa3f0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001aa400: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ +001aa410: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001aa420: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001aa430: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001aa440: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001aa450: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001aa460: 6e74 5f6f 7074 696f 6e5f 7661 725f 6c6f  nt_option_var_lo
│ │ │ +001aa470: 675f 6175 6469 745f 6e6f 6465 760a 2020  g_audit_nodev.  
│ │ │ +001aa480: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001aa490: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ +001aa4a0: 206e 6f64 6576 204f 7074 696f 6e20 746f   nodev Option to
│ │ │ +001aa4b0: 202f 7661 722f 6c6f 672f 6175 6469 743a   /var/log/audit:
│ │ │ +001aa4c0: 204d 616b 6520 7375 7265 206e 6f64 6576   Make sure nodev
│ │ │ +001aa4d0: 206f 7074 696f 6e20 6973 2070 6172 7420   option is part 
│ │ │ +001aa4e0: 6f66 2074 6865 0a20 2020 2074 6f20 2f76  of the.    to /v
│ │ │ +001aa4f0: 6172 2f6c 6f67 2f61 7564 6974 206f 7074  ar/log/audit opt
│ │ │ +001aa500: 696f 6e73 270a 2020 7365 745f 6661 6374  ions'.  set_fact
│ │ │ +001aa510: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ +001aa520: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001aa530: 207c 2063 6f6d 6269 6e65 2820 7b27 276f   | combine( {''o
│ │ │ +001aa540: 7074 696f 6e73 2727 3a27 2727 277e 286d  ptions'':''''~(m
│ │ │ +001aa550: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ +001aa560: 7320 7c0a 2020 2020 2020 6465 6661 756c  s |.      defaul
│ │ │ +001aa570: 7428 2727 2727 2929 7e28 2727 2c27 2720  t(''''))~('','' 
│ │ │ +001aa580: 6966 2028 6d6f 756e 745f 696e 666f 2e6f  if (mount_info.o
│ │ │ +001aa590: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ +001aa5a0: 2827 2727 2729 2920 656c 7365 2027 2727  ('''')) else '''
│ │ │ +001aa5b0: 2729 7e27 276e 6f64 6576 2727 0a20 2020  ')~''nodev''.   
│ │ │ +001aa5c0: 2020 207d 2920 7d7d 270a 2020 7768 656e     }) }}'.  when
│ │ │ +001aa5d0: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ +001aa5e0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +001aa5f0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001aa600: 2061 6e64 2022 7270 6d2d 6f73 7472 6565   and "rpm-ostree
│ │ │ +001aa610: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001aa620: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +001aa630: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ +001aa640: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001aa650: 6b61 6765 7320 616e 6420 6e6f 7420 226f  kages and not "o
│ │ │ +001aa660: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ +001aa670: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001aa680: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +001aa690: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ +001aa6a0: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ +001aa6b0: 6c69 6e65 2029 2061 6e64 206e 6f74 2028  line ) and not (
│ │ │ +001aa6c0: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ +001aa6d0: 697a 6174 696f 6e5f 7479 7065 2069 6e0a  ization_type in.
│ │ │ +001aa6e0: 2020 2020 5b22 646f 636b 6572 222c 2022      ["docker", "
│ │ │ +001aa6f0: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ +001aa700: 2270 6f64 6d61 6e22 2c20 2263 6f6e 7461  "podman", "conta
│ │ │ +001aa710: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ +001aa720: 222f 7661 722f 6c6f 672f 6175 6469 7422  "/var/log/audit"
│ │ │ +001aa730: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ +001aa740: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ +001aa750: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ +001aa760: 7374 270a 2020 2d20 6d6f 756e 745f 696e  st'.  - mount_in
│ │ │ +001aa770: 666f 2069 7320 6465 6669 6e65 6420 616e  fo is defined an
│ │ │ +001aa780: 6420 226e 6f64 6576 2220 6e6f 7420 696e  d "nodev" not in
│ │ │ +001aa790: 2028 6d6f 756e 745f 696e 666f 2e6f 7074   (mount_info.opt
│ │ │ +001aa7a0: 696f 6e73 207c 2064 6566 6175 6c74 2827  ions | default('
│ │ │ +001aa7b0: 2729 290a 2020 7461 6773 3a0a 2020 2d20  ')).  tags:.  - 
│ │ │ +001aa7c0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001aa7d0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001aa7e0: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ +001aa7f0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +001aa800: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001aa810: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ +001aa820: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ +001aa830: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001aa840: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ +001aa850: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +001aa860: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ +001aa870: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001aa880: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ +001aa890: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ +001aa8a0: 745f 6f70 7469 6f6e 5f76 6172 5f6c 6f67  t_option_var_log
│ │ │ +001aa8b0: 5f61 7564 6974 5f6e 6f64 6576 0a20 202d  _audit_nodev.  -
│ │ │ +001aa8c0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +001aa8d0: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ +001aa8e0: 6e6f 6465 7620 4f70 7469 6f6e 2074 6f20  nodev Option to 
│ │ │ +001aa8f0: 2f76 6172 2f6c 6f67 2f61 7564 6974 3a20  /var/log/audit: 
│ │ │ +001aa900: 456e 7375 7265 202f 7661 722f 6c6f 672f  Ensure /var/log/
│ │ │ +001aa910: 6175 6469 7420 6973 206d 6f75 6e74 6564  audit is mounted
│ │ │ +001aa920: 2077 6974 680a 2020 2020 6e6f 6465 7620   with.    nodev 
│ │ │ +001aa930: 6f70 7469 6f6e 270a 2020 616e 7369 626c  option'.  ansibl
│ │ │ +001aa940: 652e 706f 7369 782e 6d6f 756e 743a 0a20  e.posix.mount:. 
│ │ │ +001aa950: 2020 2070 6174 683a 202f 7661 722f 6c6f     path: /var/lo
│ │ │ +001aa960: 672f 6175 6469 740a 2020 2020 7372 633a  g/audit.    src:
│ │ │ +001aa970: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ +001aa980: 736f 7572 6365 207c 2064 6566 6175 6c74  source | default
│ │ │ +001aa990: 2827 2727 2729 207d 7d27 0a20 2020 206f  ('''') }}'.    o
│ │ │ +001aa9a0: 7074 733a 2027 7b7b 206d 6f75 6e74 5f69  pts: '{{ mount_i
│ │ │ +001aa9b0: 6e66 6f2e 6f70 7469 6f6e 7320 7c20 6465  nfo.options | de
│ │ │ +001aa9c0: 6661 756c 7428 2727 2727 2920 7d7d 270a  fault('''') }}'.
│ │ │ +001aa9d0: 2020 2020 7374 6174 653a 206d 6f75 6e74      state: mount
│ │ │ +001aa9e0: 6564 0a20 2020 2066 7374 7970 653a 2027  ed.    fstype: '
│ │ │ +001aa9f0: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 6673  {{ mount_info.fs
│ │ │ +001aaa00: 7479 7065 207c 2064 6566 6175 6c74 2827  type | default('
│ │ │ +001aaa10: 2727 2729 207d 7d27 0a20 2072 6567 6973  ''') }}'.  regis
│ │ │ +001aaa20: 7465 723a 206d 6f75 6e74 5f72 6573 756c  ter: mount_resul
│ │ │ +001aaa30: 740a 2020 6661 696c 6564 5f77 6865 6e3a  t.  failed_when:
│ │ │ +001aaa40: 0a20 202d 206d 6f75 6e74 5f72 6573 756c  .  - mount_resul
│ │ │ +001aaa50: 7420 6973 2066 6169 6c65 640a 2020 2d20  t is failed.  - 
│ │ │ +001aaa60: 2727 2774 6172 6765 7420 6973 2062 7573  '''target is bus
│ │ │ +001aaa70: 7927 2720 6e6f 7420 696e 2028 6d6f 756e  y'' not in (moun
│ │ │ +001aaa80: 745f 7265 7375 6c74 2e6d 7367 207c 2064  t_result.msg | d
│ │ │ +001aaa90: 6566 6175 6c74 2827 2727 2729 2927 0a20  efault(''''))'. 
│ │ │ +001aaaa0: 202d 2027 2727 616c 7265 6164 7920 6d6f   - '''already mo
│ │ │ +001aaab0: 756e 7465 6427 2720 6e6f 7420 696e 2028  unted'' not in (
│ │ │ +001aaac0: 6d6f 756e 745f 7265 7375 6c74 2e6d 7367  mount_result.msg
│ │ │ +001aaad0: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ +001aaae0: 2927 0a20 2077 6865 6e3a 0a20 202d 2028  )'.  when:.  - (
│ │ │ +001aaaf0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +001aab00: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001aab10: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ +001aab20: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ +001aab30: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001aab40: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ +001aab50: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ +001aab60: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001aab70: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ +001aab80: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ +001aab90: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001aaba0: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ +001aabb0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001aabc0: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ +001aabd0: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ +001aabe0: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ +001aabf0: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ +001aac00: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ +001aac10: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ +001aac20: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ +001aac30: 2920 290a 2020 2d20 2722 2f76 6172 2f6c  ) ).  - '"/var/l
│ │ │ +001aac40: 6f67 2f61 7564 6974 2220 696e 2061 6e73  og/audit" in ans
│ │ │ +001aac50: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ +001aac60: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ +001aac70: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ +001aac80: 206d 6f75 6e74 5f69 6e66 6f20 6973 2064   mount_info is d
│ │ │ +001aac90: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ +001aaca0: 6365 5f6e 616d 652e 7374 646f 7574 2069  ce_name.stdout i
│ │ │ +001aacb0: 7320 6465 6669 6e65 6420 616e 6420 2864  s defined and (d
│ │ │ +001aacc0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001aacd0: 7420 7c20 6c65 6e67 7468 2026 6774 3b20  t | length > 
│ │ │ +001aace0: 3029 2920 6f72 2028 222d 2d66 7374 6162  0)) or ("--fstab
│ │ │ +001aacf0: 220a 2020 2020 7c20 6c65 6e67 7468 203d  ".    | length =
│ │ │ +001aad00: 3d20 3029 0a20 2074 6167 733a 0a20 202d  = 0).  tags:.  -
│ │ │ +001aad10: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001aad20: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +001aad30: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ +001aad40: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +001aad50: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001aad60: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +001aad70: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +001aad80: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001aad90: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ +001aada0: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001aadb0: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001aadc0: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001aadd0: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001aade0: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001aadf0: 6e74 5f6f 7074 696f 6e5f 7661 725f 6c6f  nt_option_var_lo
│ │ │ +001aae00: 675f 6175 6469 745f 6e6f 6465 760a 2020  g_audit_nodev.  
│ │ │ +001aae10: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001aae20: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e  ed.
│ │ │ +001aae30: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation S │ │ │ +001aaee0: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ +001aaef0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ +001aaf90: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Reboot:false
# Remediation
│ │ │ +001aafb0: 2069 7320 6170 706c 6963 6162 6c65 206f   is applicable o
│ │ │ +001aafc0: 6e6c 7920 696e 2063 6572 7461 696e 2070  nly in certain p
│ │ │ +001aafd0: 6c61 7466 6f72 6d73 0a69 6620 2820 2120  latforms.if ( ! 
│ │ │ +001aafe0: 2820 7b20 7270 6d20 2d2d 7175 6965 7420  ( { rpm --quiet 
│ │ │ +001aaff0: 2d71 206b 6572 6e65 6c20 3b7d 2026 616d  -q kernel ;} &am
│ │ │ +001ab000: 703b 2661 6d70 3b20 7b20 7270 6d20 2d2d  p;& { rpm --
│ │ │ +001ab010: 7175 6965 7420 2d71 2072 706d 2d6f 7374  quiet -q rpm-ost
│ │ │ +001ab020: 7265 6520 3b7d 2026 616d 703b 2661 6d70  ree ;} &&
│ │ │ +001ab030: 3b20 7b20 7270 6d20 2d2d 7175 6965 7420  ; { rpm --quiet 
│ │ │ +001ab040: 2d71 2062 6f6f 7463 203b 7d20 2661 6d70  -q bootc ;} &
│ │ │ +001ab050: 3b26 616d 703b 207b 2021 2072 706d 202d  ;& { ! rpm -
│ │ │ +001ab060: 2d71 7569 6574 202d 7120 6f70 656e 7368  -quiet -q opensh
│ │ │ +001ab070: 6966 742d 6b75 6265 6c65 7420 3b7d 2026  ift-kubelet ;} &
│ │ │ +001ab080: 616d 703b 2661 6d70 3b20 285b 202d 6620  amp;& ([ -f 
│ │ │ +001ab090: 2f72 756e 2f6f 7374 7265 652d 626f 6f74  /run/ostree-boot
│ │ │ +001ab0a0: 6564 205d 207c 7c20 5b20 2d4c 202f 6f73  ed ] || [ -L /os
│ │ │ +001ab0b0: 7472 6565 205d 2920 2920 2661 6d70 3b26  tree ]) ) &&
│ │ │ +001ab0c0: 616d 703b 2021 2028 205b 202d 6620 2f2e  amp; ! ( [ -f /.
│ │ │ +001ab0d0: 646f 636b 6572 656e 7620 5d20 7c7c 205b  dockerenv ] || [
│ │ │ +001ab0e0: 202d 6620 2f72 756e 2f2e 636f 6e74 6169   -f /run/.contai
│ │ │ +001ab0f0: 6e65 7265 6e76 205d 2029 2029 2026 616d  nerenv ] ) ) &am
│ │ │ +001ab100: 703b 2661 6d70 3b20 7b20 2820 6669 6e64  p;& { ( find
│ │ │ +001ab110: 6d6e 7420 2d2d 6b65 726e 656c 2022 2f76  mnt --kernel "/v
│ │ │ +001ab120: 6172 2f6c 6f67 2f61 7564 6974 2220 2667  ar/log/audit" &g
│ │ │ +001ab130: 743b 202f 6465 762f 6e75 6c6c 207c 7c20  t; /dev/null || 
│ │ │ +001ab140: 6669 6e64 6d6e 7420 2d2d 6673 7461 6220  findmnt --fstab 
│ │ │ +001ab150: 222f 7661 722f 6c6f 672f 6175 6469 7422  "/var/log/audit"
│ │ │ +001ab160: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20   > /dev/null 
│ │ │ +001ab170: 293b 207d 3b20 7468 656e 0a0a 6675 6e63  ); }; then..func
│ │ │ +001ab180: 7469 6f6e 2070 6572 666f 726d 5f72 656d  tion perform_rem
│ │ │ +001ab190: 6564 6961 7469 6f6e 207b 0a0a 2020 2020  ediation {..    
│ │ │ +001ab1a0: 0a20 2020 2020 2020 2023 2074 6865 206d  .        # the m
│ │ │ +001ab1b0: 6f75 6e74 2070 6f69 6e74 202f 7661 722f  ount point /var/
│ │ │ +001ab1c0: 6c6f 672f 6175 6469 7420 6861 7320 746f  log/audit has to
│ │ │ +001ab1d0: 2062 6520 6465 6669 6e65 6420 696e 202f   be defined in /
│ │ │ +001ab1e0: 6574 632f 6673 7461 620a 2020 2020 2020  etc/fstab.      
│ │ │ +001ab1f0: 2020 2320 6265 666f 7265 2074 6869 7320    # before this 
│ │ │ +001ab200: 7265 6d65 6469 6174 696f 6e20 6361 6e20  remediation can 
│ │ │ +001ab210: 6265 2065 7865 6375 7465 642e 2049 6e20  be executed. In 
│ │ │ +001ab220: 6361 7365 2069 7420 6973 206e 6f74 2064  case it is not d
│ │ │ +001ab230: 6566 696e 6564 2c20 7468 650a 2020 2020  efined, the.    
│ │ │ +001ab240: 2020 2020 2320 7265 6d65 6469 6174 696f      # remediatio
│ │ │ +001ab250: 6e20 6162 6f72 7473 2061 6e64 206e 6f20  n aborts and no 
│ │ │ +001ab260: 6368 616e 6765 7320 7265 6761 7264 696e  changes regardin
│ │ │ +001ab270: 6720 7468 6520 6d6f 756e 7420 706f 696e  g the mount poin
│ │ │ +001ab280: 7420 6172 6520 646f 6e65 2e0a 2020 2020  t are done..    
│ │ │ +001ab290: 2020 2020 6d6f 756e 745f 706f 696e 745f      mount_point_
│ │ │ +001ab2a0: 6d61 7463 685f 7265 6765 7870 3d22 2428  match_regexp="$(
│ │ │ +001ab2b0: 7072 696e 7466 2022 5e5b 5b3a 7370 6163  printf "^[[:spac
│ │ │ +001ab2c0: 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370  e:]]*[^#].*[[:sp
│ │ │ +001ab2d0: 6163 653a 5d5d 2573 5b5b 3a73 7061 6365  ace:]]%s[[:space
│ │ │ +001ab2e0: 3a5d 5d22 2022 2f76 6172 2f6c 6f67 2f61  :]]" "/var/log/a
│ │ │ +001ab2f0: 7564 6974 2229 220a 0a20 2020 2067 7265  udit")"..    gre
│ │ │ +001ab300: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ +001ab310: 6d61 7463 685f 7265 6765 7870 2220 2d71  match_regexp" -q
│ │ │ +001ab320: 202f 6574 632f 6673 7461 6220 5c0a 2020   /etc/fstab \.  
│ │ │ +001ab330: 2020 2020 2020 7c7c 207b 2065 6368 6f20        || { echo 
│ │ │ +001ab340: 2254 6865 206d 6f75 6e74 2070 6f69 6e74  "The mount point
│ │ │ +001ab350: 2027 2f76 6172 2f6c 6f67 2f61 7564 6974   '/var/log/audit
│ │ │ +001ab360: 2720 6973 206e 6f74 2065 7665 6e20 696e  ' is not even in
│ │ │ +001ab370: 202f 6574 632f 6673 7461 622c 2073 6f20   /etc/fstab, so 
│ │ │ +001ab380: 7765 2063 616e 2774 2073 6574 2075 7020  we can't set up 
│ │ │ +001ab390: 6d6f 756e 7420 6f70 7469 6f6e 7322 2026  mount options" &
│ │ │ +001ab3a0: 6774 3b26 616d 703b 323b 0a20 2020 2020  gt;&2;.     
│ │ │ +001ab3b0: 2020 2020 2020 2020 2020 2065 6368 6f20             echo 
│ │ │ +001ab3c0: 224e 6f74 2072 656d 6564 6961 7469 6e67  "Not remediating
│ │ │ +001ab3d0: 2c20 6265 6361 7573 6520 7468 6572 6520  , because there 
│ │ │ +001ab3e0: 6973 206e 6f20 7265 636f 7264 206f 6620  is no record of 
│ │ │ +001ab3f0: 2f76 6172 2f6c 6f67 2f61 7564 6974 2069  /var/log/audit i
│ │ │ +001ab400: 6e20 2f65 7463 2f66 7374 6162 2220 2667  n /etc/fstab" &g
│ │ │ +001ab410: 743b 2661 6d70 3b32 3b20 7265 7475 726e  t;&2; return
│ │ │ +001ab420: 2031 3b20 7d0a 2020 2020 0a0a 0a20 2020   1; }.    ...   
│ │ │ +001ab430: 206d 6f75 6e74 5f70 6f69 6e74 5f6d 6174   mount_point_mat
│ │ │ +001ab440: 6368 5f72 6567 6578 703d 2224 2870 7269  ch_regexp="$(pri
│ │ │ +001ab450: 6e74 6620 225e 5b5b 3a73 7061 6365 3a5d  ntf "^[[:space:]
│ │ │ +001ab460: 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061 6365  ]*[^#].*[[:space
│ │ │ +001ab470: 3a5d 5d25 735b 5b3a 7370 6163 653a 5d5d  :]]%s[[:space:]]
│ │ │ +001ab480: 2220 2f76 6172 2f6c 6f67 2f61 7564 6974  " /var/log/audit
│ │ │ +001ab490: 2922 0a0a 2020 2020 2320 4966 2074 6865  )"..    # If the
│ │ │ +001ab4a0: 206d 6f75 6e74 2070 6f69 6e74 2069 7320   mount point is 
│ │ │ +001ab4b0: 6e6f 7420 696e 202f 6574 632f 6673 7461  not in /etc/fsta
│ │ │ +001ab4c0: 622c 2067 6574 2070 7265 7669 6f75 7320  b, get previous 
│ │ │ +001ab4d0: 6d6f 756e 7420 6f70 7469 6f6e 7320 6672  mount options fr
│ │ │ +001ab4e0: 6f6d 202f 6574 632f 6d74 6162 0a20 2020  om /etc/mtab.   
│ │ │ +001ab4f0: 2069 6620 2120 6772 6570 202d 7120 2224   if ! grep -q "$
│ │ │ +001ab500: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001ab510: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ +001ab520: 7374 6162 3b20 7468 656e 0a20 2020 2020  stab; then.     
│ │ │ +001ab530: 2020 2023 2072 756e 7469 6d65 206f 7074     # runtime opt
│ │ │ +001ab540: 7320 7769 7468 6f75 7420 736f 6d65 2061  s without some a
│ │ │ +001ab550: 7574 6f6d 6174 6963 206b 6572 6e65 6c2f  utomatic kernel/
│ │ │ +001ab560: 7573 6572 7370 6163 652d 6164 6465 6420  userspace-added 
│ │ │ +001ab570: 6465 6661 756c 7473 0a20 2020 2020 2020  defaults.       
│ │ │ +001ab580: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ +001ab590: 6f70 7473 3d24 2867 7265 7020 2224 6d6f  opts=$(grep "$mo
│ │ │ +001ab5a0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001ab5b0: 7265 6765 7870 2220 2f65 7463 2f6d 7461  regexp" /etc/mta
│ │ │ +001ab5c0: 6220 7c20 6865 6164 202d 3120 7c20 2061  b | head -1 |  a
│ │ │ +001ab5d0: 776b 2027 7b70 7269 6e74 2024 347d 2720  wk '{print $4}' 
│ │ │ +001ab5e0: 5c0a 2020 2020 2020 2020 2020 2020 2020  \.              
│ │ │ +001ab5f0: 2020 2020 2020 7c20 7365 6420 2d45 2022        | sed -E "
│ │ │ +001ab600: 732f 2872 777c 6465 6661 756c 7473 7c73  s/(rw|defaults|s
│ │ │ +001ab610: 6563 6c61 6265 6c7c 6e6f 6465 7629 282c  eclabel|nodev)(,
│ │ │ +001ab620: 7c24 292f 2f67 3b73 2f2c 242f 2f22 290a  |$)//g;s/,$//").
│ │ │ +001ab630: 2020 2020 2020 2020 5b20 2224 7072 6576          [ "$prev
│ │ │ +001ab640: 696f 7573 5f6d 6f75 6e74 5f6f 7074 7322  ious_mount_opts"
│ │ │ +001ab650: 205d 2026 616d 703b 2661 6d70 3b20 7072   ] && pr
│ │ │ +001ab660: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001ab670: 732b 3d22 2c22 0a20 2020 2020 2020 2023  s+=",".        #
│ │ │ +001ab680: 2049 6e20 6973 6f39 3636 3020 6669 6c65   In iso9660 file
│ │ │ +001ab690: 7379 7374 656d 7320 6d74 6162 2063 6f75  systems mtab cou
│ │ │ +001ab6a0: 6c64 2064 6573 6372 6962 6520 6120 2262  ld describe a "b
│ │ │ +001ab6b0: 6c6f 636b 7369 7a65 2220 7661 6c75 652c  locksize" value,
│ │ │ +001ab6c0: 2074 6869 7320 7368 6f75 6c64 2062 6520   this should be 
│ │ │ +001ab6d0: 7265 666c 6563 7465 6420 696e 0a20 2020  reflected in.   
│ │ │ +001ab6e0: 2020 2020 2023 2066 7374 6162 2061 7320       # fstab as 
│ │ │ +001ab6f0: 2262 6c6f 636b 222e 2020 5468 6520 6e65  "block".  The ne
│ │ │ +001ab700: 7874 2076 6172 6961 626c 6520 6973 2074  xt variable is t
│ │ │ +001ab710: 6f20 7361 7469 7366 7920 7368 656c 6c63  o satisfy shellc
│ │ │ +001ab720: 6865 636b 2053 4332 3035 302e 0a20 2020  heck SC2050..   
│ │ │ +001ab730: 2020 2020 2066 735f 7479 7065 3d22 220a       fs_type="".
│ │ │ +001ab740: 2020 2020 2020 2020 6966 205b 2020 2224          if [  "$
│ │ │ +001ab750: 6673 5f74 7970 6522 203d 3d20 2269 736f  fs_type" == "iso
│ │ │ +001ab760: 3936 3630 2220 5d20 3b20 7468 656e 0a20  9660" ] ; then. 
│ │ │ +001ab770: 2020 2020 2020 2020 2020 2070 7265 7669             previ
│ │ │ +001ab780: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ +001ab790: 2873 6564 2027 732f 626c 6f63 6b73 697a  (sed 's/blocksiz
│ │ │ +001ab7a0: 653d 2f62 6c6f 636b 3d2f 2720 266c 743b  e=/block=/' <
│ │ │ +001ab7b0: 266c 743b 266c 743b 2022 2470 7265 7669  << "$previ
│ │ │ +001ab7c0: 6f75 735f 6d6f 756e 745f 6f70 7473 2229  ous_mount_opts")
│ │ │ +001ab7d0: 0a20 2020 2020 2020 2066 690a 2020 2020  .        fi.    
│ │ │ +001ab7e0: 2020 2020 6563 686f 2022 202f 7661 722f      echo " /var/
│ │ │ +001ab7f0: 6c6f 672f 6175 6469 7420 2064 6566 6175  log/audit  defau
│ │ │ +001ab800: 6c74 732c 247b 7072 6576 696f 7573 5f6d  lts,${previous_m
│ │ │ +001ab810: 6f75 6e74 5f6f 7074 737d 6e6f 6465 7620  ount_opts}nodev 
│ │ │ +001ab820: 3020 3022 2026 6774 3b26 6774 3b20 2f65  0 0" >> /e
│ │ │ +001ab830: 7463 2f66 7374 6162 0a20 2020 2023 2049  tc/fstab.    # I
│ │ │ +001ab840: 6620 7468 6520 6d6f 756e 745f 6f70 7420  f the mount_opt 
│ │ │ +001ab850: 6f70 7469 6f6e 2069 7320 6e6f 7420 616c  option is not al
│ │ │ +001ab860: 7265 6164 7920 696e 2074 6865 206d 6f75  ready in the mou
│ │ │ +001ab870: 6e74 2070 6f69 6e74 2773 202f 6574 632f  nt point's /etc/
│ │ │ +001ab880: 6673 7461 6220 656e 7472 792c 2061 6464  fstab entry, add
│ │ │ +001ab890: 2069 740a 2020 2020 656c 6966 2021 2067   it.    elif ! g
│ │ │ +001ab8a0: 7265 7020 2224 6d6f 756e 745f 706f 696e  rep "$mount_poin
│ │ │ +001ab8b0: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ +001ab8c0: 2f65 7463 2f66 7374 6162 207c 2067 7265  /etc/fstab | gre
│ │ │ +001ab8d0: 7020 2d71 2022 6e6f 6465 7622 3b20 7468  p -q "nodev"; th
│ │ │ +001ab8e0: 656e 0a20 2020 2020 2020 2070 7265 7669  en.        previ
│ │ │ +001ab8f0: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ +001ab900: 2867 7265 7020 2224 6d6f 756e 745f 706f  (grep "$mount_po
│ │ │ +001ab910: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001ab920: 2220 2f65 7463 2f66 7374 6162 207c 2061  " /etc/fstab | a
│ │ │ +001ab930: 776b 2027 7b70 7269 6e74 2024 347d 2729  wk '{print $4}')
│ │ │ +001ab940: 0a20 2020 2020 2020 2073 6564 202d 6920  .        sed -i 
│ │ │ +001ab950: 2273 7c5c 2824 7b6d 6f75 6e74 5f70 6f69  "s|\(${mount_poi
│ │ │ +001ab960: 6e74 5f6d 6174 6368 5f72 6567 6578 707d  nt_match_regexp}
│ │ │ +001ab970: 2e2a 247b 7072 6576 696f 7573 5f6d 6f75  .*${previous_mou
│ │ │ +001ab980: 6e74 5f6f 7074 737d 5c29 7c5c 312c 6e6f  nt_opts}\)|\1,no
│ │ │ +001ab990: 6465 767c 2220 2f65 7463 2f66 7374 6162  dev|" /etc/fstab
│ │ │ +001ab9a0: 0a20 2020 2066 690a 0a0a 2020 2020 6966  .    fi...    if
│ │ │ +001ab9b0: 206d 6b64 6972 202d 7020 222f 7661 722f   mkdir -p "/var/
│ │ │ +001ab9c0: 6c6f 672f 6175 6469 7422 3b20 7468 656e  log/audit"; then
│ │ │ +001ab9d0: 0a20 2020 2020 2020 2069 6620 6d6f 756e  .        if moun
│ │ │ +001ab9e0: 7470 6f69 6e74 202d 7120 222f 7661 722f  tpoint -q "/var/
│ │ │ +001ab9f0: 6c6f 672f 6175 6469 7422 3b20 7468 656e  log/audit"; then
│ │ │ +001aba00: 0a20 2020 2020 2020 2020 2020 206d 6f75  .            mou
│ │ │ +001aba10: 6e74 202d 6f20 7265 6d6f 756e 7420 2d2d  nt -o remount --
│ │ │ +001aba20: 7461 7267 6574 2022 2f76 6172 2f6c 6f67  target "/var/log
│ │ │ +001aba30: 2f61 7564 6974 220a 2020 2020 2020 2020  /audit".        
│ │ │ +001aba40: 6669 0a20 2020 2066 690a 7d0a 0a70 6572  fi.    fi.}..per
│ │ │ +001aba50: 666f 726d 5f72 656d 6564 6961 7469 6f6e  form_remediation
│ │ │ +001aba60: 0a0a 656c 7365 0a20 2020 2026 6774 3b26  ..else.    >&
│ │ │ +001aba70: 616d 703b 3220 6563 686f 2027 5265 6d65  amp;2 echo 'Reme
│ │ │ +001aba80: 6469 6174 696f 6e20 6973 206e 6f74 2061  diation is not a
│ │ │ +001aba90: 7070 6c69 6361 626c 652c 206e 6f74 6869  pplicable, nothi
│ │ │ +001abaa0: 6e67 2077 6173 2064 6f6e 6527 0a66 690a  ng was done'.fi.
│ │ │ +001abab0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +001abb60: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ +001abb70: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ +001abb80: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity:< │ │ │ +001abc70: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
.part /var/log/
│ │ │ +001abcc0: 6175 6469 7420 2d2d 6d6f 756e 746f 7074  audit --mountopt
│ │ │ +001abcd0: 696f 6e73 3d22 6e6f 6465 7622 0a3c 2f63  ions="nodev".
│ │ │ 001abcf0: 3c2f 6469 763e 3c2f 7464 3e3c 2f74 723e │ │ │ 001abd00: 3c2f 7462 6f64 793e 3c2f 7461 626c 653e
low
Disru │ │ │ +001abc30: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e68 ption:h │ │ │ +001abc40: 6967 683c 2f74 643e 3c2f 7472 3e3c 7472 igh
Reboot:false
Stra │ │ │ +001abc80: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +001abc90: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ 001abd10: 3c2f 7464 3e3c 2f74 723e 3c74 7220 6461 Remediation │ │ │ -001ac930: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ -001ac940: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -001ac9d0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -001ac9f0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -001aca00: 7464 3e68 6967 683c 2f74 643e 3c2f 7472 td>highReboot: │ │ │ -001aca20: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -001aca40: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ -001aca70: 636f 6465 3e0a 7061 7274 202f 7661 722f  code>.part /var/
│ │ │ -001aca80: 6c6f 672f 6175 6469 7420 2d2d 6d6f 756e  log/audit --moun
│ │ │ -001aca90: 746f 7074 696f 6e73 3d22 6e6f 6578 6563  toptions="noexec
│ │ │ -001acaa0: 220a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  ".
< │ │ │ -001acab0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -001acb60: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -001acb70: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -001acbf0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -001acc10: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr> │ │ │ -001acc60: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472
low
Disr │ │ │ -001acc20: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -001acc30: 6869 6768 3c2f 7464 3e3c 2f74 723e 3c74 high
Reboot:false
Str │ │ │ -001acc70: 6174 6567 793a 3c2f 7468 3e3c 7464 3e63 ategy:c │ │ │ -001acc80: 6f6e 6669 6775 7265 3c2f 7464 3e3c 2f74 onfigure
<
│ │ │ -001acca0: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ -001accb0: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ -001accc0: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ -001accd0: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ -001acce0: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ -001accf0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001acd00: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ -001acd10: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ -001acd20: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001acd30: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -001acd40: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ -001acd50: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001acd60: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ -001acd70: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ -001acd80: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001acd90: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -001acda0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -001acdb0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001acdc0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001acdd0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ -001acde0: 725f 6c6f 675f 6175 6469 745f 6e6f 6578  r_log_audit_noex
│ │ │ -001acdf0: 6563 0a20 202d 206e 6f5f 7265 626f 6f74  ec.  - no_reboot
│ │ │ -001ace00: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ -001ace10: 2027 4164 6420 6e6f 6578 6563 204f 7074   'Add noexec Opt
│ │ │ -001ace20: 696f 6e20 746f 202f 7661 722f 6c6f 672f  ion to /var/log/
│ │ │ -001ace30: 6175 6469 743a 2043 6865 636b 2069 6e66  audit: Check inf
│ │ │ -001ace40: 6f72 6d61 7469 6f6e 2061 7373 6f63 6961  ormation associa
│ │ │ -001ace50: 7465 6420 746f 206d 6f75 6e74 706f 696e  ted to mountpoin
│ │ │ -001ace60: 7427 0a20 2061 6e73 6962 6c65 2e62 7569  t'.  ansible.bui
│ │ │ -001ace70: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 6669  ltin.command: fi
│ │ │ -001ace80: 6e64 6d6e 7420 2d2d 6673 7461 6220 272f  ndmnt --fstab '/
│ │ │ -001ace90: 7661 722f 6c6f 672f 6175 6469 7427 0a20  var/log/audit'. 
│ │ │ -001acea0: 2072 6567 6973 7465 723a 2064 6576 6963   register: devic
│ │ │ -001aceb0: 655f 6e61 6d65 0a20 2066 6169 6c65 645f  e_name.  failed_
│ │ │ -001acec0: 7768 656e 3a20 6465 7669 6365 5f6e 616d  when: device_nam
│ │ │ -001aced0: 652e 7263 2026 6774 3b20 310a 2020 6368  e.rc > 1.  ch
│ │ │ -001acee0: 616e 6765 645f 7768 656e 3a20 6661 6c73  anged_when: fals
│ │ │ -001acef0: 650a 2020 6368 6563 6b5f 6d6f 6465 3a20  e.  check_mode: 
│ │ │ -001acf00: 6661 6c73 650a 2020 7768 656e 3a0a 2020  false.  when:.  
│ │ │ -001acf10: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ -001acf20: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -001acf30: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001acf40: 2022 7270 6d2d 6f73 7472 6565 2220 696e   "rpm-ostree" in
│ │ │ -001acf50: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001acf60: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001acf70: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ -001acf80: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001acf90: 7320 616e 6420 6e6f 7420 226f 7065 6e73  s and not "opens
│ │ │ -001acfa0: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ -001acfb0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001acfc0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001acfd0: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ -001acfe0: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ -001acff0: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ -001ad000: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ -001ad010: 696f 6e5f 7479 7065 2069 6e0a 2020 2020  ion_type in.    
│ │ │ -001ad020: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ -001ad030: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ -001ad040: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572  man", "container
│ │ │ -001ad050: 225d 2029 2029 0a20 202d 2027 222f 7661  "] ) ).  - '"/va
│ │ │ -001ad060: 722f 6c6f 672f 6175 6469 7422 2069 6e20  r/log/audit" in 
│ │ │ -001ad070: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ -001ad080: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ -001ad090: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ -001ad0a0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -001ad0b0: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ -001ad0c0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001ad0d0: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ -001ad0e0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -001ad0f0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001ad100: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -001ad110: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ -001ad120: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ -001ad130: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ -001ad140: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001ad150: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001ad160: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001ad170: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001ad180: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001ad190: 7469 6f6e 5f76 6172 5f6c 6f67 5f61 7564  tion_var_log_aud
│ │ │ -001ad1a0: 6974 5f6e 6f65 7865 630a 2020 2d20 6e6f  it_noexec.  - no
│ │ │ -001ad1b0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ -001ad1c0: 2d20 6e61 6d65 3a20 2741 6464 206e 6f65  - name: 'Add noe
│ │ │ -001ad1d0: 7865 6320 4f70 7469 6f6e 2074 6f20 2f76  xec Option to /v
│ │ │ -001ad1e0: 6172 2f6c 6f67 2f61 7564 6974 3a20 4372  ar/log/audit: Cr
│ │ │ -001ad1f0: 6561 7465 206d 6f75 6e74 5f69 6e66 6f20  eate mount_info 
│ │ │ -001ad200: 6469 6374 696f 6e61 7279 2076 6172 6961  dictionary varia
│ │ │ -001ad210: 626c 6527 0a20 2073 6574 5f66 6163 743a  ble'.  set_fact:
│ │ │ -001ad220: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ -001ad230: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c   '{{ mount_info|
│ │ │ -001ad240: 6465 6661 756c 7428 7b7d 297c 636f 6d62  default({})|comb
│ │ │ -001ad250: 696e 6528 7b69 7465 6d2e 303a 2069 7465  ine({item.0: ite
│ │ │ -001ad260: 6d2e 317d 2920 7d7d 270a 2020 7769 7468  m.1}) }}'.  with
│ │ │ -001ad270: 5f74 6f67 6574 6865 723a 0a20 202d 2027  _together:.  - '
│ │ │ -001ad280: 7b7b 2064 6576 6963 655f 6e61 6d65 2e73  {{ device_name.s
│ │ │ -001ad290: 7464 6f75 745f 6c69 6e65 735b 305d 2e73  tdout_lines[0].s
│ │ │ -001ad2a0: 706c 6974 2829 207c 206d 6170 2827 276c  plit() | map(''l
│ │ │ -001ad2b0: 6f77 6572 2727 2920 7c20 6c69 7374 207d  ower'') | list }
│ │ │ -001ad2c0: 7d27 0a20 202d 2027 7b7b 2064 6576 6963  }'.  - '{{ devic
│ │ │ -001ad2d0: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ -001ad2e0: 6e65 735b 315d 2e73 706c 6974 2829 207c  nes[1].split() |
│ │ │ -001ad2f0: 206c 6973 7420 7d7d 270a 2020 7768 656e   list }}'.  when
│ │ │ -001ad300: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ -001ad310: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -001ad320: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001ad330: 2061 6e64 2022 7270 6d2d 6f73 7472 6565   and "rpm-ostree
│ │ │ -001ad340: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001ad350: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001ad360: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ -001ad370: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001ad380: 6b61 6765 7320 616e 6420 6e6f 7420 226f  kages and not "o
│ │ │ -001ad390: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ -001ad3a0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001ad3b0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001ad3c0: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ -001ad3d0: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ -001ad3e0: 6c69 6e65 2029 2061 6e64 206e 6f74 2028  line ) and not (
│ │ │ -001ad3f0: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ -001ad400: 697a 6174 696f 6e5f 7479 7065 2069 6e0a  ization_type in.
│ │ │ -001ad410: 2020 2020 5b22 646f 636b 6572 222c 2022      ["docker", "
│ │ │ -001ad420: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ -001ad430: 2270 6f64 6d61 6e22 2c20 2263 6f6e 7461  "podman", "conta
│ │ │ -001ad440: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ -001ad450: 222f 7661 722f 6c6f 672f 6175 6469 7422  "/var/log/audit"
│ │ │ -001ad460: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ -001ad470: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ -001ad480: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ -001ad490: 7374 270a 2020 2d20 6465 7669 6365 5f6e  st'.  - device_n
│ │ │ -001ad4a0: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ -001ad4b0: 6669 6e65 6420 616e 6420 6465 7669 6365  fined and device
│ │ │ -001ad4c0: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ -001ad4d0: 6573 2069 7320 6465 6669 6e65 640a 2020  es is defined.  
│ │ │ -001ad4e0: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ -001ad4f0: 7464 6f75 7420 7c20 6c65 6e67 7468 2026  tdout | length &
│ │ │ -001ad500: 6774 3b20 3029 0a20 2074 6167 733a 0a20  gt; 0).  tags:. 
│ │ │ -001ad510: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001ad520: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ -001ad530: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ -001ad540: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -001ad550: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001ad560: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ -001ad570: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001ad580: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ -001ad590: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ -001ad5a0: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -001ad5b0: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -001ad5c0: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -001ad5d0: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -001ad5e0: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -001ad5f0: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f  ount_option_var_
│ │ │ -001ad600: 6c6f 675f 6175 6469 745f 6e6f 6578 6563  log_audit_noexec
│ │ │ -001ad610: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -001ad620: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ -001ad630: 4164 6420 6e6f 6578 6563 204f 7074 696f  Add noexec Optio
│ │ │ -001ad640: 6e20 746f 202f 7661 722f 6c6f 672f 6175  n to /var/log/au
│ │ │ -001ad650: 6469 743a 2049 6620 2f76 6172 2f6c 6f67  dit: If /var/log
│ │ │ -001ad660: 2f61 7564 6974 206e 6f74 206d 6f75 6e74  /audit not mount
│ │ │ -001ad670: 6564 2c20 6372 6166 740a 2020 2020 6d6f  ed, craft.    mo
│ │ │ -001ad680: 756e 745f 696e 666f 206d 616e 7561 6c6c  unt_info manuall
│ │ │ -001ad690: 7927 0a20 2073 6574 5f66 6163 743a 0a20  y'.  set_fact:. 
│ │ │ -001ad6a0: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ -001ad6b0: 7b7b 206d 6f75 6e74 5f69 6e66 6f7c 6465  {{ mount_info|de
│ │ │ -001ad6c0: 6661 756c 7428 7b7d 297c 636f 6d62 696e  fault({})|combin
│ │ │ -001ad6d0: 6528 7b69 7465 6d2e 303a 2069 7465 6d2e  e({item.0: item.
│ │ │ -001ad6e0: 317d 2920 7d7d 270a 2020 7769 7468 5f74  1}) }}'.  with_t
│ │ │ -001ad6f0: 6f67 6574 6865 723a 0a20 202d 202d 2074  ogether:.  - - t
│ │ │ -001ad700: 6172 6765 740a 2020 2020 2d20 736f 7572  arget.    - sour
│ │ │ -001ad710: 6365 0a20 2020 202d 2066 7374 7970 650a  ce.    - fstype.
│ │ │ -001ad720: 2020 2020 2d20 6f70 7469 6f6e 730a 2020      - options.  
│ │ │ -001ad730: 2d20 2d20 2f76 6172 2f6c 6f67 2f61 7564  - - /var/log/aud
│ │ │ -001ad740: 6974 0a20 2020 202d 2027 270a 2020 2020  it.    - ''.    
│ │ │ -001ad750: 2d20 2727 0a20 2020 202d 2064 6566 6175  - ''.    - defau
│ │ │ -001ad760: 6c74 730a 2020 7768 656e 3a0a 2020 2d20  lts.  when:.  - 
│ │ │ -001ad770: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -001ad780: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001ad790: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001ad7a0: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ -001ad7b0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001ad7c0: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ -001ad7d0: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -001ad7e0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001ad7f0: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001ad800: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001ad810: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001ad820: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ -001ad830: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001ad840: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ -001ad850: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001ad860: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001ad870: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ -001ad880: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -001ad890: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -001ad8a0: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ -001ad8b0: 2029 2029 0a20 202d 2027 222f 7661 722f   ) ).  - '"/var/
│ │ │ -001ad8c0: 6c6f 672f 6175 6469 7422 2069 6e20 616e  log/audit" in an
│ │ │ -001ad8d0: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ -001ad8e0: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ -001ad8f0: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ -001ad900: 2d20 2822 2d2d 6673 7461 6222 207c 206c  - ("--fstab" | l
│ │ │ -001ad910: 656e 6774 6820 3d3d 2030 290a 2020 2d20  ength == 0).  - 
│ │ │ -001ad920: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001ad930: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ -001ad940: 6420 6465 7669 6365 5f6e 616d 652e 7374  d device_name.st
│ │ │ -001ad950: 646f 7574 5f6c 696e 6573 2069 7320 6465  dout_lines is de
│ │ │ -001ad960: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ -001ad970: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ -001ad980: 6c65 6e67 7468 203d 3d20 3029 0a20 2074  length == 0).  t
│ │ │ -001ad990: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -001ad9a0: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ -001ad9b0: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ -001ad9c0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001ad9d0: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ -001ad9e0: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ -001ad9f0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001ada00: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ -001ada10: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ -001ada20: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -001ada30: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -001ada40: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -001ada50: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -001ada60: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -001ada70: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ -001ada80: 6e5f 7661 725f 6c6f 675f 6175 6469 745f  n_var_log_audit_
│ │ │ -001ada90: 6e6f 6578 6563 0a20 202d 206e 6f5f 7265  noexec.  - no_re
│ │ │ -001adaa0: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -001adab0: 616d 653a 2027 4164 6420 6e6f 6578 6563  ame: 'Add noexec
│ │ │ -001adac0: 204f 7074 696f 6e20 746f 202f 7661 722f   Option to /var/
│ │ │ -001adad0: 6c6f 672f 6175 6469 743a 204d 616b 6520  log/audit: Make 
│ │ │ -001adae0: 7375 7265 206e 6f65 7865 6320 6f70 7469  sure noexec opti
│ │ │ -001adaf0: 6f6e 2069 7320 7061 7274 206f 6620 7468  on is part of th
│ │ │ -001adb00: 650a 2020 2020 746f 202f 7661 722f 6c6f  e.    to /var/lo
│ │ │ -001adb10: 672f 6175 6469 7420 6f70 7469 6f6e 7327  g/audit options'
│ │ │ -001adb20: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ -001adb30: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b   mount_info: '{{
│ │ │ -001adb40: 206d 6f75 6e74 5f69 6e66 6f20 7c20 636f   mount_info | co
│ │ │ -001adb50: 6d62 696e 6528 207b 2727 6f70 7469 6f6e  mbine( {''option
│ │ │ -001adb60: 7327 273a 2727 2727 7e28 6d6f 756e 745f  s'':''''~(mount_
│ │ │ -001adb70: 696e 666f 2e6f 7074 696f 6e73 207c 0a20  info.options |. 
│ │ │ -001adb80: 2020 2020 2064 6566 6175 6c74 2827 2727       default('''
│ │ │ -001adb90: 2729 297e 2827 272c 2727 2069 6620 286d  '))~('','' if (m
│ │ │ -001adba0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -001adbb0: 7320 7c20 6465 6661 756c 7428 2727 2727  s | default(''''
│ │ │ -001adbc0: 2929 2065 6c73 6520 2727 2727 297e 2727  )) else '''')~''
│ │ │ -001adbd0: 6e6f 6578 6563 2727 0a20 2020 2020 207d  noexec''.      }
│ │ │ -001adbe0: 2920 7d7d 270a 2020 7768 656e 3a0a 2020  ) }}'.  when:.  
│ │ │ -001adbf0: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ -001adc00: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -001adc10: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001adc20: 2022 7270 6d2d 6f73 7472 6565 2220 696e   "rpm-ostree" in
│ │ │ -001adc30: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001adc40: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001adc50: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ -001adc60: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001adc70: 7320 616e 6420 6e6f 7420 226f 7065 6e73  s and not "opens
│ │ │ -001adc80: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ -001adc90: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001adca0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001adcb0: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ -001adcc0: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ -001adcd0: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ -001adce0: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ -001adcf0: 696f 6e5f 7479 7065 2069 6e0a 2020 2020  ion_type in.    
│ │ │ -001add00: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ -001add10: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ -001add20: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572  man", "container
│ │ │ -001add30: 225d 2029 2029 0a20 202d 2027 222f 7661  "] ) ).  - '"/va
│ │ │ -001add40: 722f 6c6f 672f 6175 6469 7422 2069 6e20  r/log/audit" in 
│ │ │ -001add50: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ -001add60: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ -001add70: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ -001add80: 2020 2d20 6d6f 756e 745f 696e 666f 2069    - mount_info i
│ │ │ -001add90: 7320 6465 6669 6e65 6420 616e 6420 226e  s defined and "n
│ │ │ -001adda0: 6f65 7865 6322 206e 6f74 2069 6e20 286d  oexec" not in (m
│ │ │ -001addb0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -001addc0: 7320 7c20 6465 6661 756c 7428 2727 2929  s | default(''))
│ │ │ -001addd0: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -001adde0: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ -001addf0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001ade00: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ -001ade10: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ -001ade20: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001ade30: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ -001ade40: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ -001ade50: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ -001ade60: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ -001ade70: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ -001ade80: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ -001ade90: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001adea0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -001adeb0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ -001adec0: 7074 696f 6e5f 7661 725f 6c6f 675f 6175  ption_var_log_au
│ │ │ -001aded0: 6469 745f 6e6f 6578 6563 0a20 202d 206e  dit_noexec.  - n
│ │ │ -001adee0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -001adef0: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ -001adf00: 6578 6563 204f 7074 696f 6e20 746f 202f  exec Option to /
│ │ │ -001adf10: 7661 722f 6c6f 672f 6175 6469 743a 2045  var/log/audit: E
│ │ │ -001adf20: 6e73 7572 6520 2f76 6172 2f6c 6f67 2f61  nsure /var/log/a
│ │ │ -001adf30: 7564 6974 2069 7320 6d6f 756e 7465 6420  udit is mounted 
│ │ │ -001adf40: 7769 7468 0a20 2020 206e 6f65 7865 6320  with.    noexec 
│ │ │ -001adf50: 6f70 7469 6f6e 270a 2020 616e 7369 626c  option'.  ansibl
│ │ │ -001adf60: 652e 706f 7369 782e 6d6f 756e 743a 0a20  e.posix.mount:. 
│ │ │ -001adf70: 2020 2070 6174 683a 202f 7661 722f 6c6f     path: /var/lo
│ │ │ -001adf80: 672f 6175 6469 740a 2020 2020 7372 633a  g/audit.    src:
│ │ │ -001adf90: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ -001adfa0: 736f 7572 6365 207c 2064 6566 6175 6c74  source | default
│ │ │ -001adfb0: 2827 2727 2729 207d 7d27 0a20 2020 206f  ('''') }}'.    o
│ │ │ -001adfc0: 7074 733a 2027 7b7b 206d 6f75 6e74 5f69  pts: '{{ mount_i
│ │ │ -001adfd0: 6e66 6f2e 6f70 7469 6f6e 7320 7c20 6465  nfo.options | de
│ │ │ -001adfe0: 6661 756c 7428 2727 2727 2920 7d7d 270a  fault('''') }}'.
│ │ │ -001adff0: 2020 2020 7374 6174 653a 206d 6f75 6e74      state: mount
│ │ │ -001ae000: 6564 0a20 2020 2066 7374 7970 653a 2027  ed.    fstype: '
│ │ │ -001ae010: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 6673  {{ mount_info.fs
│ │ │ -001ae020: 7479 7065 207c 2064 6566 6175 6c74 2827  type | default('
│ │ │ -001ae030: 2727 2729 207d 7d27 0a20 2072 6567 6973  ''') }}'.  regis
│ │ │ -001ae040: 7465 723a 206d 6f75 6e74 5f72 6573 756c  ter: mount_resul
│ │ │ -001ae050: 740a 2020 6661 696c 6564 5f77 6865 6e3a  t.  failed_when:
│ │ │ -001ae060: 0a20 202d 206d 6f75 6e74 5f72 6573 756c  .  - mount_resul
│ │ │ -001ae070: 7420 6973 2066 6169 6c65 640a 2020 2d20  t is failed.  - 
│ │ │ -001ae080: 2727 2774 6172 6765 7420 6973 2062 7573  '''target is bus
│ │ │ -001ae090: 7927 2720 6e6f 7420 696e 2028 6d6f 756e  y'' not in (moun
│ │ │ -001ae0a0: 745f 7265 7375 6c74 2e6d 7367 207c 2064  t_result.msg | d
│ │ │ -001ae0b0: 6566 6175 6c74 2827 2727 2729 2927 0a20  efault(''''))'. 
│ │ │ -001ae0c0: 202d 2027 2727 616c 7265 6164 7920 6d6f   - '''already mo
│ │ │ -001ae0d0: 756e 7465 6427 2720 6e6f 7420 696e 2028  unted'' not in (
│ │ │ -001ae0e0: 6d6f 756e 745f 7265 7375 6c74 2e6d 7367  mount_result.msg
│ │ │ -001ae0f0: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ -001ae100: 2927 0a20 2077 6865 6e3a 0a20 202d 2028  )'.  when:.  - (
│ │ │ -001ae110: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -001ae120: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001ae130: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ -001ae140: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ -001ae150: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001ae160: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ -001ae170: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ -001ae180: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001ae190: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -001ae1a0: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -001ae1b0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001ae1c0: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ -001ae1d0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001ae1e0: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ -001ae1f0: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -001ae200: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -001ae210: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ -001ae220: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ -001ae230: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ -001ae240: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ -001ae250: 2920 290a 2020 2d20 2722 2f76 6172 2f6c  ) ).  - '"/var/l
│ │ │ -001ae260: 6f67 2f61 7564 6974 2220 696e 2061 6e73  og/audit" in ans
│ │ │ -001ae270: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ -001ae280: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ -001ae290: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ -001ae2a0: 206d 6f75 6e74 5f69 6e66 6f20 6973 2064   mount_info is d
│ │ │ -001ae2b0: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ -001ae2c0: 6365 5f6e 616d 652e 7374 646f 7574 2069  ce_name.stdout i
│ │ │ -001ae2d0: 7320 6465 6669 6e65 6420 616e 6420 2864  s defined and (d
│ │ │ -001ae2e0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001ae2f0: 7420 7c20 6c65 6e67 7468 2026 6774 3b20  t | length > 
│ │ │ -001ae300: 3029 2920 6f72 2028 222d 2d66 7374 6162  0)) or ("--fstab
│ │ │ -001ae310: 220a 2020 2020 7c20 6c65 6e67 7468 203d  ".    | length =
│ │ │ -001ae320: 3d20 3029 0a20 2074 6167 733a 0a20 202d  = 0).  tags:.  -
│ │ │ -001ae330: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001ae340: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ -001ae350: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ -001ae360: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -001ae370: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001ae380: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ -001ae390: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ -001ae3a0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001ae3b0: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ -001ae3c0: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ -001ae3d0: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ -001ae3e0: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ -001ae3f0: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ -001ae400: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ -001ae410: 6e74 5f6f 7074 696f 6e5f 7661 725f 6c6f  nt_option_var_lo
│ │ │ -001ae420: 675f 6175 6469 745f 6e6f 6578 6563 0a20  g_audit_noexec. 
│ │ │ -001ae430: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -001ae440: 6465 640a 3c2f 636f 6465 3e3c 2f70 7265  ded.
Remediation │ │ │ -001ae500: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ -001ae510: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Reboot:false
# Remediatio
│ │ │ -001ae5d0: 6e20 6973 2061 7070 6c69 6361 626c 6520  n is applicable 
│ │ │ -001ae5e0: 6f6e 6c79 2069 6e20 6365 7274 6169 6e20  only in certain 
│ │ │ -001ae5f0: 706c 6174 666f 726d 730a 6966 2028 2021  platforms.if ( !
│ │ │ -001ae600: 2028 207b 2072 706d 202d 2d71 7569 6574   ( { rpm --quiet
│ │ │ -001ae610: 202d 7120 6b65 726e 656c 203b 7d20 2661   -q kernel ;} &a
│ │ │ -001ae620: 6d70 3b26 616d 703b 207b 2072 706d 202d  mp;& { rpm -
│ │ │ -001ae630: 2d71 7569 6574 202d 7120 7270 6d2d 6f73  -quiet -q rpm-os
│ │ │ -001ae640: 7472 6565 203b 7d20 2661 6d70 3b26 616d  tree ;} &&am
│ │ │ -001ae650: 703b 207b 2072 706d 202d 2d71 7569 6574  p; { rpm --quiet
│ │ │ -001ae660: 202d 7120 626f 6f74 6320 3b7d 2026 616d   -q bootc ;} &am
│ │ │ -001ae670: 703b 2661 6d70 3b20 7b20 2120 7270 6d20  p;& { ! rpm 
│ │ │ -001ae680: 2d2d 7175 6965 7420 2d71 206f 7065 6e73  --quiet -q opens
│ │ │ -001ae690: 6869 6674 2d6b 7562 656c 6574 203b 7d20  hift-kubelet ;} 
│ │ │ -001ae6a0: 2661 6d70 3b26 616d 703b 2028 5b20 2d66  && ([ -f
│ │ │ -001ae6b0: 202f 7275 6e2f 6f73 7472 6565 2d62 6f6f   /run/ostree-boo
│ │ │ -001ae6c0: 7465 6420 5d20 7c7c 205b 202d 4c20 2f6f  ted ] || [ -L /o
│ │ │ -001ae6d0: 7374 7265 6520 5d29 2029 2026 616d 703b  stree ]) ) &
│ │ │ -001ae6e0: 2661 6d70 3b20 2120 2820 5b20 2d66 202f  & ! ( [ -f /
│ │ │ -001ae6f0: 2e64 6f63 6b65 7265 6e76 205d 207c 7c20  .dockerenv ] || 
│ │ │ -001ae700: 5b20 2d66 202f 7275 6e2f 2e63 6f6e 7461  [ -f /run/.conta
│ │ │ -001ae710: 696e 6572 656e 7620 5d20 2920 2920 2661  inerenv ] ) ) &a
│ │ │ -001ae720: 6d70 3b26 616d 703b 207b 2028 2066 696e  mp;& { ( fin
│ │ │ -001ae730: 646d 6e74 202d 2d6b 6572 6e65 6c20 222f  dmnt --kernel "/
│ │ │ -001ae740: 7661 722f 6c6f 672f 6175 6469 7422 2026  var/log/audit" &
│ │ │ -001ae750: 6774 3b20 2f64 6576 2f6e 756c 6c20 7c7c  gt; /dev/null ||
│ │ │ -001ae760: 2066 696e 646d 6e74 202d 2d66 7374 6162   findmnt --fstab
│ │ │ -001ae770: 2022 2f76 6172 2f6c 6f67 2f61 7564 6974   "/var/log/audit
│ │ │ -001ae780: 2220 2667 743b 202f 6465 762f 6e75 6c6c  " > /dev/null
│ │ │ -001ae790: 2029 3b20 7d3b 2074 6865 6e0a 0a66 756e   ); }; then..fun
│ │ │ -001ae7a0: 6374 696f 6e20 7065 7266 6f72 6d5f 7265  ction perform_re
│ │ │ -001ae7b0: 6d65 6469 6174 696f 6e20 7b0a 0a20 2020  mediation {..   
│ │ │ -001ae7c0: 200a 2020 2020 2020 2020 2320 7468 6520   .        # the 
│ │ │ -001ae7d0: 6d6f 756e 7420 706f 696e 7420 2f76 6172  mount point /var
│ │ │ -001ae7e0: 2f6c 6f67 2f61 7564 6974 2068 6173 2074  /log/audit has t
│ │ │ -001ae7f0: 6f20 6265 2064 6566 696e 6564 2069 6e20  o be defined in 
│ │ │ -001ae800: 2f65 7463 2f66 7374 6162 0a20 2020 2020  /etc/fstab.     
│ │ │ -001ae810: 2020 2023 2062 6566 6f72 6520 7468 6973     # before this
│ │ │ -001ae820: 2072 656d 6564 6961 7469 6f6e 2063 616e   remediation can
│ │ │ -001ae830: 2062 6520 6578 6563 7574 6564 2e20 496e   be executed. In
│ │ │ -001ae840: 2063 6173 6520 6974 2069 7320 6e6f 7420   case it is not 
│ │ │ -001ae850: 6465 6669 6e65 642c 2074 6865 0a20 2020  defined, the.   
│ │ │ -001ae860: 2020 2020 2023 2072 656d 6564 6961 7469       # remediati
│ │ │ -001ae870: 6f6e 2061 626f 7274 7320 616e 6420 6e6f  on aborts and no
│ │ │ -001ae880: 2063 6861 6e67 6573 2072 6567 6172 6469   changes regardi
│ │ │ -001ae890: 6e67 2074 6865 206d 6f75 6e74 2070 6f69  ng the mount poi
│ │ │ -001ae8a0: 6e74 2061 7265 2064 6f6e 652e 0a20 2020  nt are done..   
│ │ │ -001ae8b0: 2020 2020 206d 6f75 6e74 5f70 6f69 6e74       mount_point
│ │ │ -001ae8c0: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ -001ae8d0: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ -001ae8e0: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ -001ae8f0: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ -001ae900: 653a 5d5d 2220 222f 7661 722f 6c6f 672f  e:]]" "/var/log/
│ │ │ -001ae910: 6175 6469 7422 2922 0a0a 2020 2020 6772  audit")"..    gr
│ │ │ -001ae920: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ -001ae930: 5f6d 6174 6368 5f72 6567 6578 7022 202d  _match_regexp" -
│ │ │ -001ae940: 7120 2f65 7463 2f66 7374 6162 205c 0a20  q /etc/fstab \. 
│ │ │ -001ae950: 2020 2020 2020 207c 7c20 7b20 6563 686f         || { echo
│ │ │ -001ae960: 2022 5468 6520 6d6f 756e 7420 706f 696e   "The mount poin
│ │ │ -001ae970: 7420 272f 7661 722f 6c6f 672f 6175 6469  t '/var/log/audi
│ │ │ -001ae980: 7427 2069 7320 6e6f 7420 6576 656e 2069  t' is not even i
│ │ │ -001ae990: 6e20 2f65 7463 2f66 7374 6162 2c20 736f  n /etc/fstab, so
│ │ │ -001ae9a0: 2077 6520 6361 6e27 7420 7365 7420 7570   we can't set up
│ │ │ -001ae9b0: 206d 6f75 6e74 206f 7074 696f 6e73 2220   mount options" 
│ │ │ -001ae9c0: 2667 743b 2661 6d70 3b32 3b0a 2020 2020  >&2;.    
│ │ │ -001ae9d0: 2020 2020 2020 2020 2020 2020 6563 686f              echo
│ │ │ -001ae9e0: 2022 4e6f 7420 7265 6d65 6469 6174 696e   "Not remediatin
│ │ │ -001ae9f0: 672c 2062 6563 6175 7365 2074 6865 7265  g, because there
│ │ │ -001aea00: 2069 7320 6e6f 2072 6563 6f72 6420 6f66   is no record of
│ │ │ -001aea10: 202f 7661 722f 6c6f 672f 6175 6469 7420   /var/log/audit 
│ │ │ -001aea20: 696e 202f 6574 632f 6673 7461 6222 2026  in /etc/fstab" &
│ │ │ -001aea30: 6774 3b26 616d 703b 323b 2072 6574 7572  gt;&2; retur
│ │ │ -001aea40: 6e20 313b 207d 0a20 2020 200a 0a0a 2020  n 1; }.    ...  
│ │ │ -001aea50: 2020 6d6f 756e 745f 706f 696e 745f 6d61    mount_point_ma
│ │ │ -001aea60: 7463 685f 7265 6765 7870 3d22 2428 7072  tch_regexp="$(pr
│ │ │ -001aea70: 696e 7466 2022 5e5b 5b3a 7370 6163 653a  intf "^[[:space:
│ │ │ -001aea80: 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163  ]]*[^#].*[[:spac
│ │ │ -001aea90: 653a 5d5d 2573 5b5b 3a73 7061 6365 3a5d  e:]]%s[[:space:]
│ │ │ -001aeaa0: 5d22 202f 7661 722f 6c6f 672f 6175 6469  ]" /var/log/audi
│ │ │ -001aeab0: 7429 220a 0a20 2020 2023 2049 6620 7468  t)"..    # If th
│ │ │ -001aeac0: 6520 6d6f 756e 7420 706f 696e 7420 6973  e mount point is
│ │ │ -001aead0: 206e 6f74 2069 6e20 2f65 7463 2f66 7374   not in /etc/fst
│ │ │ -001aeae0: 6162 2c20 6765 7420 7072 6576 696f 7573  ab, get previous
│ │ │ -001aeaf0: 206d 6f75 6e74 206f 7074 696f 6e73 2066   mount options f
│ │ │ -001aeb00: 726f 6d20 2f65 7463 2f6d 7461 620a 2020  rom /etc/mtab.  
│ │ │ -001aeb10: 2020 6966 2021 2067 7265 7020 2d71 2022    if ! grep -q "
│ │ │ -001aeb20: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ -001aeb30: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ -001aeb40: 6673 7461 623b 2074 6865 6e0a 2020 2020  fstab; then.    
│ │ │ -001aeb50: 2020 2020 2320 7275 6e74 696d 6520 6f70      # runtime op
│ │ │ -001aeb60: 7473 2077 6974 686f 7574 2073 6f6d 6520  ts without some 
│ │ │ -001aeb70: 6175 746f 6d61 7469 6320 6b65 726e 656c  automatic kernel
│ │ │ -001aeb80: 2f75 7365 7273 7061 6365 2d61 6464 6564  /userspace-added
│ │ │ -001aeb90: 2064 6566 6175 6c74 730a 2020 2020 2020   defaults.      
│ │ │ -001aeba0: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ -001aebb0: 5f6f 7074 733d 2428 6772 6570 2022 246d  _opts=$(grep "$m
│ │ │ -001aebc0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001aebd0: 5f72 6567 6578 7022 202f 6574 632f 6d74  _regexp" /etc/mt
│ │ │ -001aebe0: 6162 207c 2068 6561 6420 2d31 207c 2020  ab | head -1 |  
│ │ │ -001aebf0: 6177 6b20 277b 7072 696e 7420 2434 7d27  awk '{print $4}'
│ │ │ -001aec00: 205c 0a20 2020 2020 2020 2020 2020 2020   \.             
│ │ │ -001aec10: 2020 2020 2020 207c 2073 6564 202d 4520         | sed -E 
│ │ │ -001aec20: 2273 2f28 7277 7c64 6566 6175 6c74 737c  "s/(rw|defaults|
│ │ │ -001aec30: 7365 636c 6162 656c 7c6e 6f65 7865 6329  seclabel|noexec)
│ │ │ -001aec40: 282c 7c24 292f 2f67 3b73 2f2c 242f 2f22  (,|$)//g;s/,$//"
│ │ │ -001aec50: 290a 2020 2020 2020 2020 5b20 2224 7072  ).        [ "$pr
│ │ │ -001aec60: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001aec70: 7322 205d 2026 616d 703b 2661 6d70 3b20  s" ] && 
│ │ │ -001aec80: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001aec90: 7074 732b 3d22 2c22 0a20 2020 2020 2020  pts+=",".       
│ │ │ -001aeca0: 2023 2049 6e20 6973 6f39 3636 3020 6669   # In iso9660 fi
│ │ │ -001aecb0: 6c65 7379 7374 656d 7320 6d74 6162 2063  lesystems mtab c
│ │ │ -001aecc0: 6f75 6c64 2064 6573 6372 6962 6520 6120  ould describe a 
│ │ │ -001aecd0: 2262 6c6f 636b 7369 7a65 2220 7661 6c75  "blocksize" valu
│ │ │ -001aece0: 652c 2074 6869 7320 7368 6f75 6c64 2062  e, this should b
│ │ │ -001aecf0: 6520 7265 666c 6563 7465 6420 696e 0a20  e reflected in. 
│ │ │ -001aed00: 2020 2020 2020 2023 2066 7374 6162 2061         # fstab a
│ │ │ -001aed10: 7320 2262 6c6f 636b 222e 2020 5468 6520  s "block".  The 
│ │ │ -001aed20: 6e65 7874 2076 6172 6961 626c 6520 6973  next variable is
│ │ │ -001aed30: 2074 6f20 7361 7469 7366 7920 7368 656c   to satisfy shel
│ │ │ -001aed40: 6c63 6865 636b 2053 4332 3035 302e 0a20  lcheck SC2050.. 
│ │ │ -001aed50: 2020 2020 2020 2066 735f 7479 7065 3d22         fs_type="
│ │ │ -001aed60: 220a 2020 2020 2020 2020 6966 205b 2020  ".        if [  
│ │ │ -001aed70: 2224 6673 5f74 7970 6522 203d 3d20 2269  "$fs_type" == "i
│ │ │ -001aed80: 736f 3936 3630 2220 5d20 3b20 7468 656e  so9660" ] ; then
│ │ │ -001aed90: 0a20 2020 2020 2020 2020 2020 2070 7265  .            pre
│ │ │ -001aeda0: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ -001aedb0: 3d24 2873 6564 2027 732f 626c 6f63 6b73  =$(sed 's/blocks
│ │ │ -001aedc0: 697a 653d 2f62 6c6f 636b 3d2f 2720 266c  ize=/block=/' &l
│ │ │ -001aedd0: 743b 266c 743b 266c 743b 2022 2470 7265  t;<< "$pre
│ │ │ -001aede0: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ -001aedf0: 2229 0a20 2020 2020 2020 2066 690a 2020  ").        fi.  
│ │ │ -001aee00: 2020 2020 2020 6563 686f 2022 202f 7661        echo " /va
│ │ │ -001aee10: 722f 6c6f 672f 6175 6469 7420 2064 6566  r/log/audit  def
│ │ │ -001aee20: 6175 6c74 732c 247b 7072 6576 696f 7573  aults,${previous
│ │ │ -001aee30: 5f6d 6f75 6e74 5f6f 7074 737d 6e6f 6578  _mount_opts}noex
│ │ │ -001aee40: 6563 2030 2030 2220 2667 743b 2667 743b  ec 0 0" >>
│ │ │ -001aee50: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ -001aee60: 2320 4966 2074 6865 206d 6f75 6e74 5f6f  # If the mount_o
│ │ │ -001aee70: 7074 206f 7074 696f 6e20 6973 206e 6f74  pt option is not
│ │ │ -001aee80: 2061 6c72 6561 6479 2069 6e20 7468 6520   already in the 
│ │ │ -001aee90: 6d6f 756e 7420 706f 696e 7427 7320 2f65  mount point's /e
│ │ │ -001aeea0: 7463 2f66 7374 6162 2065 6e74 7279 2c20  tc/fstab entry, 
│ │ │ -001aeeb0: 6164 6420 6974 0a20 2020 2065 6c69 6620  add it.    elif 
│ │ │ -001aeec0: 2120 6772 6570 2022 246d 6f75 6e74 5f70  ! grep "$mount_p
│ │ │ -001aeed0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001aeee0: 7022 202f 6574 632f 6673 7461 6220 7c20  p" /etc/fstab | 
│ │ │ -001aeef0: 6772 6570 202d 7120 226e 6f65 7865 6322  grep -q "noexec"
│ │ │ -001aef00: 3b20 7468 656e 0a20 2020 2020 2020 2070  ; then.        p
│ │ │ -001aef10: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001aef20: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ -001aef30: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001aef40: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ -001aef50: 207c 2061 776b 2027 7b70 7269 6e74 2024   | awk '{print $
│ │ │ -001aef60: 347d 2729 0a20 2020 2020 2020 2073 6564  4}').        sed
│ │ │ -001aef70: 202d 6920 2273 7c5c 2824 7b6d 6f75 6e74   -i "s|\(${mount
│ │ │ -001aef80: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001aef90: 6578 707d 2e2a 247b 7072 6576 696f 7573  exp}.*${previous
│ │ │ -001aefa0: 5f6d 6f75 6e74 5f6f 7074 737d 5c29 7c5c  _mount_opts}\)|\
│ │ │ -001aefb0: 312c 6e6f 6578 6563 7c22 202f 6574 632f  1,noexec|" /etc/
│ │ │ -001aefc0: 6673 7461 620a 2020 2020 6669 0a0a 0a20  fstab.    fi... 
│ │ │ -001aefd0: 2020 2069 6620 6d6b 6469 7220 2d70 2022     if mkdir -p "
│ │ │ -001aefe0: 2f76 6172 2f6c 6f67 2f61 7564 6974 223b  /var/log/audit";
│ │ │ -001aeff0: 2074 6865 6e0a 2020 2020 2020 2020 6966   then.        if
│ │ │ -001af000: 206d 6f75 6e74 706f 696e 7420 2d71 2022   mountpoint -q "
│ │ │ -001af010: 2f76 6172 2f6c 6f67 2f61 7564 6974 223b  /var/log/audit";
│ │ │ -001af020: 2074 6865 6e0a 2020 2020 2020 2020 2020   then.          
│ │ │ -001af030: 2020 6d6f 756e 7420 2d6f 2072 656d 6f75    mount -o remou
│ │ │ -001af040: 6e74 202d 2d74 6172 6765 7420 222f 7661  nt --target "/va
│ │ │ -001af050: 722f 6c6f 672f 6175 6469 7422 0a20 2020  r/log/audit".   
│ │ │ -001af060: 2020 2020 2066 690a 2020 2020 6669 0a7d       fi.    fi.}
│ │ │ -001af070: 0a0a 7065 7266 6f72 6d5f 7265 6d65 6469  ..perform_remedi
│ │ │ -001af080: 6174 696f 6e0a 0a65 6c73 650a 2020 2020  ation..else.    
│ │ │ -001af090: 2667 743b 2661 6d70 3b32 2065 6368 6f20  >&2 echo 
│ │ │ -001af0a0: 2752 656d 6564 6961 7469 6f6e 2069 7320  'Remediation is 
│ │ │ -001af0b0: 6e6f 7420 6170 706c 6963 6162 6c65 2c20  not applicable, 
│ │ │ -001af0c0: 6e6f 7468 696e 6720 7761 7320 646f 6e65  nothing was done
│ │ │ -001af0d0: 270a 6669 0a3c 2f63 6f64 653e 3c2f 7072  '.fi.
Complexity: │ │ │ +001ac9d0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +001ac9f0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:high │ │ │ +001aca10: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +001aca20: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +001aca40: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:configure< │ │ │ +001aca60: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
- name: G
│ │ │ +001aca80: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ +001aca90: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ +001acaa0: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ +001acab0: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ +001acac0: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +001acad0: 3533 2d41 432d 360a 2020 2d20 4e49 5354  53-AC-6.  - NIST
│ │ │ +001acae0: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ +001acaf0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001acb00: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ +001acb10: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ +001acb20: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001acb30: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ +001acb40: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d  -800-53-MP-7.  -
│ │ │ +001acb50: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ +001acb60: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ +001acb70: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ +001acb80: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +001acb90: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +001acba0: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ +001acbb0: 7661 725f 6c6f 675f 6175 6469 745f 6e6f  var_log_audit_no
│ │ │ +001acbc0: 6578 6563 0a20 202d 206e 6f5f 7265 626f  exec.  - no_rebo
│ │ │ +001acbd0: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +001acbe0: 653a 2027 4164 6420 6e6f 6578 6563 204f  e: 'Add noexec O
│ │ │ +001acbf0: 7074 696f 6e20 746f 202f 7661 722f 6c6f  ption to /var/lo
│ │ │ +001acc00: 672f 6175 6469 743a 2043 6865 636b 2069  g/audit: Check i
│ │ │ +001acc10: 6e66 6f72 6d61 7469 6f6e 2061 7373 6f63  nformation assoc
│ │ │ +001acc20: 6961 7465 6420 746f 206d 6f75 6e74 706f  iated to mountpo
│ │ │ +001acc30: 696e 7427 0a20 2061 6e73 6962 6c65 2e62  int'.  ansible.b
│ │ │ +001acc40: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ +001acc50: 6669 6e64 6d6e 7420 2d2d 6673 7461 6220  findmnt --fstab 
│ │ │ +001acc60: 272f 7661 722f 6c6f 672f 6175 6469 7427  '/var/log/audit'
│ │ │ +001acc70: 0a20 2072 6567 6973 7465 723a 2064 6576  .  register: dev
│ │ │ +001acc80: 6963 655f 6e61 6d65 0a20 2066 6169 6c65  ice_name.  faile
│ │ │ +001acc90: 645f 7768 656e 3a20 6465 7669 6365 5f6e  d_when: device_n
│ │ │ +001acca0: 616d 652e 7263 2026 6774 3b20 310a 2020  ame.rc > 1.  
│ │ │ +001accb0: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ +001accc0: 6c73 650a 2020 6368 6563 6b5f 6d6f 6465  lse.  check_mode
│ │ │ +001accd0: 3a20 6661 6c73 650a 2020 7768 656e 3a0a  : false.  when:.
│ │ │ +001acce0: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ +001accf0: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +001acd00: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001acd10: 6e64 2022 7270 6d2d 6f73 7472 6565 2220  nd "rpm-ostree" 
│ │ │ +001acd20: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001acd30: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001acd40: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ +001acd50: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001acd60: 6765 7320 616e 6420 6e6f 7420 226f 7065  ges and not "ope
│ │ │ +001acd70: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ +001acd80: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001acd90: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001acda0: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ +001acdb0: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ +001acdc0: 6e65 2029 2061 6e64 206e 6f74 2028 2061  ne ) and not ( a
│ │ │ +001acdd0: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ +001acde0: 6174 696f 6e5f 7479 7065 2069 6e0a 2020  ation_type in.  
│ │ │ +001acdf0: 2020 5b22 646f 636b 6572 222c 2022 6c78    ["docker", "lx
│ │ │ +001ace00: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ +001ace10: 6f64 6d61 6e22 2c20 2263 6f6e 7461 696e  odman", "contain
│ │ │ +001ace20: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ +001ace30: 7661 722f 6c6f 672f 6175 6469 7422 2069  var/log/audit" i
│ │ │ +001ace40: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ +001ace50: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ +001ace60: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ +001ace70: 270a 2020 7461 6773 3a0a 2020 2d20 4e49  '.  tags:.  - NI
│ │ │ +001ace80: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ +001ace90: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001acea0: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ +001aceb0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +001acec0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001aced0: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +001acee0: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +001acef0: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ +001acf00: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ +001acf10: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ +001acf20: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ +001acf30: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +001acf40: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +001acf50: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ +001acf60: 6f70 7469 6f6e 5f76 6172 5f6c 6f67 5f61  option_var_log_a
│ │ │ +001acf70: 7564 6974 5f6e 6f65 7865 630a 2020 2d20  udit_noexec.  - 
│ │ │ +001acf80: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001acf90: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ +001acfa0: 6f65 7865 6320 4f70 7469 6f6e 2074 6f20  oexec Option to 
│ │ │ +001acfb0: 2f76 6172 2f6c 6f67 2f61 7564 6974 3a20  /var/log/audit: 
│ │ │ +001acfc0: 4372 6561 7465 206d 6f75 6e74 5f69 6e66  Create mount_inf
│ │ │ +001acfd0: 6f20 6469 6374 696f 6e61 7279 2076 6172  o dictionary var
│ │ │ +001acfe0: 6961 626c 6527 0a20 2073 6574 5f66 6163  iable'.  set_fac
│ │ │ +001acff0: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66  t:.    mount_inf
│ │ │ +001ad000: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66  o: '{{ mount_inf
│ │ │ +001ad010: 6f7c 6465 6661 756c 7428 7b7d 297c 636f  o|default({})|co
│ │ │ +001ad020: 6d62 696e 6528 7b69 7465 6d2e 303a 2069  mbine({item.0: i
│ │ │ +001ad030: 7465 6d2e 317d 2920 7d7d 270a 2020 7769  tem.1}) }}'.  wi
│ │ │ +001ad040: 7468 5f74 6f67 6574 6865 723a 0a20 202d  th_together:.  -
│ │ │ +001ad050: 2027 7b7b 2064 6576 6963 655f 6e61 6d65   '{{ device_name
│ │ │ +001ad060: 2e73 7464 6f75 745f 6c69 6e65 735b 305d  .stdout_lines[0]
│ │ │ +001ad070: 2e73 706c 6974 2829 207c 206d 6170 2827  .split() | map('
│ │ │ +001ad080: 276c 6f77 6572 2727 2920 7c20 6c69 7374  'lower'') | list
│ │ │ +001ad090: 207d 7d27 0a20 202d 2027 7b7b 2064 6576   }}'.  - '{{ dev
│ │ │ +001ad0a0: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ +001ad0b0: 6c69 6e65 735b 315d 2e73 706c 6974 2829  lines[1].split()
│ │ │ +001ad0c0: 207c 206c 6973 7420 7d7d 270a 2020 7768   | list }}'.  wh
│ │ │ +001ad0d0: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ +001ad0e0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +001ad0f0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001ad100: 6573 2061 6e64 2022 7270 6d2d 6f73 7472  es and "rpm-ostr
│ │ │ +001ad110: 6565 2220 696e 2061 6e73 6962 6c65 5f66  ee" in ansible_f
│ │ │ +001ad120: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001ad130: 2020 616e 6420 2262 6f6f 7463 2220 696e    and "bootc" in
│ │ │ +001ad140: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001ad150: 6163 6b61 6765 7320 616e 6420 6e6f 7420  ackages and not 
│ │ │ +001ad160: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +001ad170: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +001ad180: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001ad190: 2020 616e 6420 226f 7374 7265 6522 2069    and "ostree" i
│ │ │ +001ad1a0: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ +001ad1b0: 6d64 6c69 6e65 2029 2061 6e64 206e 6f74  mdline ) and not
│ │ │ +001ad1c0: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +001ad1d0: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +001ad1e0: 6e0a 2020 2020 5b22 646f 636b 6572 222c  n.    ["docker",
│ │ │ +001ad1f0: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ +001ad200: 2c20 2270 6f64 6d61 6e22 2c20 2263 6f6e  , "podman", "con
│ │ │ +001ad210: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ +001ad220: 2027 222f 7661 722f 6c6f 672f 6175 6469   '"/var/log/audi
│ │ │ +001ad230: 7422 2069 6e20 616e 7369 626c 655f 6d6f  t" in ansible_mo
│ │ │ +001ad240: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ +001ad250: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ +001ad260: 6c69 7374 270a 2020 2d20 6465 7669 6365  list'.  - device
│ │ │ +001ad270: 5f6e 616d 652e 7374 646f 7574 2069 7320  _name.stdout is 
│ │ │ +001ad280: 6465 6669 6e65 6420 616e 6420 6465 7669  defined and devi
│ │ │ +001ad290: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ +001ad2a0: 696e 6573 2069 7320 6465 6669 6e65 640a  ines is defined.
│ │ │ +001ad2b0: 2020 2d20 2864 6576 6963 655f 6e61 6d65    - (device_name
│ │ │ +001ad2c0: 2e73 7464 6f75 7420 7c20 6c65 6e67 7468  .stdout | length
│ │ │ +001ad2d0: 2026 6774 3b20 3029 0a20 2074 6167 733a   > 0).  tags:
│ │ │ +001ad2e0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001ad2f0: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ +001ad300: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ +001ad310: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001ad320: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ +001ad330: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ +001ad340: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001ad350: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ +001ad360: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ +001ad370: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +001ad380: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +001ad390: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +001ad3a0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +001ad3b0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001ad3c0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ +001ad3d0: 725f 6c6f 675f 6175 6469 745f 6e6f 6578  r_log_audit_noex
│ │ │ +001ad3e0: 6563 0a20 202d 206e 6f5f 7265 626f 6f74  ec.  - no_reboot
│ │ │ +001ad3f0: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ +001ad400: 2027 4164 6420 6e6f 6578 6563 204f 7074   'Add noexec Opt
│ │ │ +001ad410: 696f 6e20 746f 202f 7661 722f 6c6f 672f  ion to /var/log/
│ │ │ +001ad420: 6175 6469 743a 2049 6620 2f76 6172 2f6c  audit: If /var/l
│ │ │ +001ad430: 6f67 2f61 7564 6974 206e 6f74 206d 6f75  og/audit not mou
│ │ │ +001ad440: 6e74 6564 2c20 6372 6166 740a 2020 2020  nted, craft.    
│ │ │ +001ad450: 6d6f 756e 745f 696e 666f 206d 616e 7561  mount_info manua
│ │ │ +001ad460: 6c6c 7927 0a20 2073 6574 5f66 6163 743a  lly'.  set_fact:
│ │ │ +001ad470: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ +001ad480: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c   '{{ mount_info|
│ │ │ +001ad490: 6465 6661 756c 7428 7b7d 297c 636f 6d62  default({})|comb
│ │ │ +001ad4a0: 696e 6528 7b69 7465 6d2e 303a 2069 7465  ine({item.0: ite
│ │ │ +001ad4b0: 6d2e 317d 2920 7d7d 270a 2020 7769 7468  m.1}) }}'.  with
│ │ │ +001ad4c0: 5f74 6f67 6574 6865 723a 0a20 202d 202d  _together:.  - -
│ │ │ +001ad4d0: 2074 6172 6765 740a 2020 2020 2d20 736f   target.    - so
│ │ │ +001ad4e0: 7572 6365 0a20 2020 202d 2066 7374 7970  urce.    - fstyp
│ │ │ +001ad4f0: 650a 2020 2020 2d20 6f70 7469 6f6e 730a  e.    - options.
│ │ │ +001ad500: 2020 2d20 2d20 2f76 6172 2f6c 6f67 2f61    - - /var/log/a
│ │ │ +001ad510: 7564 6974 0a20 2020 202d 2027 270a 2020  udit.    - ''.  
│ │ │ +001ad520: 2020 2d20 2727 0a20 2020 202d 2064 6566    - ''.    - def
│ │ │ +001ad530: 6175 6c74 730a 2020 7768 656e 3a0a 2020  aults.  when:.  
│ │ │ +001ad540: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ +001ad550: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +001ad560: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001ad570: 2022 7270 6d2d 6f73 7472 6565 2220 696e   "rpm-ostree" in
│ │ │ +001ad580: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001ad590: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001ad5a0: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ +001ad5b0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001ad5c0: 7320 616e 6420 6e6f 7420 226f 7065 6e73  s and not "opens
│ │ │ +001ad5d0: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ +001ad5e0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001ad5f0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001ad600: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ +001ad610: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ +001ad620: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ +001ad630: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ +001ad640: 696f 6e5f 7479 7065 2069 6e0a 2020 2020  ion_type in.    
│ │ │ +001ad650: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ +001ad660: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ +001ad670: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572  man", "container
│ │ │ +001ad680: 225d 2029 2029 0a20 202d 2027 222f 7661  "] ) ).  - '"/va
│ │ │ +001ad690: 722f 6c6f 672f 6175 6469 7422 2069 6e20  r/log/audit" in 
│ │ │ +001ad6a0: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ +001ad6b0: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ +001ad6c0: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ +001ad6d0: 2020 2d20 2822 2d2d 6673 7461 6222 207c    - ("--fstab" |
│ │ │ +001ad6e0: 206c 656e 6774 6820 3d3d 2030 290a 2020   length == 0).  
│ │ │ +001ad6f0: 2d20 6465 7669 6365 5f6e 616d 652e 7374  - device_name.st
│ │ │ +001ad700: 646f 7574 2069 7320 6465 6669 6e65 6420  dout is defined 
│ │ │ +001ad710: 616e 6420 6465 7669 6365 5f6e 616d 652e  and device_name.
│ │ │ +001ad720: 7374 646f 7574 5f6c 696e 6573 2069 7320  stdout_lines is 
│ │ │ +001ad730: 6465 6669 6e65 640a 2020 2d20 2864 6576  defined.  - (dev
│ │ │ +001ad740: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ +001ad750: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ +001ad760: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +001ad770: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ +001ad780: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001ad790: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ +001ad7a0: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +001ad7b0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001ad7c0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001ad7d0: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ +001ad7e0: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ +001ad7f0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +001ad800: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +001ad810: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001ad820: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001ad830: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001ad840: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001ad850: 696f 6e5f 7661 725f 6c6f 675f 6175 6469  ion_var_log_audi
│ │ │ +001ad860: 745f 6e6f 6578 6563 0a20 202d 206e 6f5f  t_noexec.  - no_
│ │ │ +001ad870: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +001ad880: 206e 616d 653a 2027 4164 6420 6e6f 6578   name: 'Add noex
│ │ │ +001ad890: 6563 204f 7074 696f 6e20 746f 202f 7661  ec Option to /va
│ │ │ +001ad8a0: 722f 6c6f 672f 6175 6469 743a 204d 616b  r/log/audit: Mak
│ │ │ +001ad8b0: 6520 7375 7265 206e 6f65 7865 6320 6f70  e sure noexec op
│ │ │ +001ad8c0: 7469 6f6e 2069 7320 7061 7274 206f 6620  tion is part of 
│ │ │ +001ad8d0: 7468 650a 2020 2020 746f 202f 7661 722f  the.    to /var/
│ │ │ +001ad8e0: 6c6f 672f 6175 6469 7420 6f70 7469 6f6e  log/audit option
│ │ │ +001ad8f0: 7327 0a20 2073 6574 5f66 6163 743a 0a20  s'.  set_fact:. 
│ │ │ +001ad900: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ +001ad910: 7b7b 206d 6f75 6e74 5f69 6e66 6f20 7c20  {{ mount_info | 
│ │ │ +001ad920: 636f 6d62 696e 6528 207b 2727 6f70 7469  combine( {''opti
│ │ │ +001ad930: 6f6e 7327 273a 2727 2727 7e28 6d6f 756e  ons'':''''~(moun
│ │ │ +001ad940: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ +001ad950: 0a20 2020 2020 2064 6566 6175 6c74 2827  .      default('
│ │ │ +001ad960: 2727 2729 297e 2827 272c 2727 2069 6620  '''))~('','' if 
│ │ │ +001ad970: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469  (mount_info.opti
│ │ │ +001ad980: 6f6e 7320 7c20 6465 6661 756c 7428 2727  ons | default(''
│ │ │ +001ad990: 2727 2929 2065 6c73 6520 2727 2727 297e  '')) else '''')~
│ │ │ +001ad9a0: 2727 6e6f 6578 6563 2727 0a20 2020 2020  ''noexec''.     
│ │ │ +001ad9b0: 207d 2920 7d7d 270a 2020 7768 656e 3a0a   }) }}'.  when:.
│ │ │ +001ad9c0: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ +001ad9d0: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +001ad9e0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001ad9f0: 6e64 2022 7270 6d2d 6f73 7472 6565 2220  nd "rpm-ostree" 
│ │ │ +001ada00: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001ada10: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001ada20: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ +001ada30: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001ada40: 6765 7320 616e 6420 6e6f 7420 226f 7065  ges and not "ope
│ │ │ +001ada50: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ +001ada60: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001ada70: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001ada80: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ +001ada90: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ +001adaa0: 6e65 2029 2061 6e64 206e 6f74 2028 2061  ne ) and not ( a
│ │ │ +001adab0: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ +001adac0: 6174 696f 6e5f 7479 7065 2069 6e0a 2020  ation_type in.  
│ │ │ +001adad0: 2020 5b22 646f 636b 6572 222c 2022 6c78    ["docker", "lx
│ │ │ +001adae0: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ +001adaf0: 6f64 6d61 6e22 2c20 2263 6f6e 7461 696e  odman", "contain
│ │ │ +001adb00: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ +001adb10: 7661 722f 6c6f 672f 6175 6469 7422 2069  var/log/audit" i
│ │ │ +001adb20: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ +001adb30: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ +001adb40: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ +001adb50: 270a 2020 2d20 6d6f 756e 745f 696e 666f  '.  - mount_info
│ │ │ +001adb60: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ +001adb70: 226e 6f65 7865 6322 206e 6f74 2069 6e20  "noexec" not in 
│ │ │ +001adb80: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469  (mount_info.opti
│ │ │ +001adb90: 6f6e 7320 7c20 6465 6661 756c 7428 2727  ons | default(''
│ │ │ +001adba0: 2929 0a20 2074 6167 733a 0a20 202d 204e  )).  tags:.  - N
│ │ │ +001adbb0: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ +001adbc0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001adbd0: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ +001adbe0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +001adbf0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001adc00: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +001adc10: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +001adc20: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001adc30: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ +001adc40: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +001adc50: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +001adc60: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +001adc70: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +001adc80: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +001adc90: 5f6f 7074 696f 6e5f 7661 725f 6c6f 675f  _option_var_log_
│ │ │ +001adca0: 6175 6469 745f 6e6f 6578 6563 0a20 202d  audit_noexec.  -
│ │ │ +001adcb0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +001adcc0: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ +001adcd0: 6e6f 6578 6563 204f 7074 696f 6e20 746f  noexec Option to
│ │ │ +001adce0: 202f 7661 722f 6c6f 672f 6175 6469 743a   /var/log/audit:
│ │ │ +001adcf0: 2045 6e73 7572 6520 2f76 6172 2f6c 6f67   Ensure /var/log
│ │ │ +001add00: 2f61 7564 6974 2069 7320 6d6f 756e 7465  /audit is mounte
│ │ │ +001add10: 6420 7769 7468 0a20 2020 206e 6f65 7865  d with.    noexe
│ │ │ +001add20: 6320 6f70 7469 6f6e 270a 2020 616e 7369  c option'.  ansi
│ │ │ +001add30: 626c 652e 706f 7369 782e 6d6f 756e 743a  ble.posix.mount:
│ │ │ +001add40: 0a20 2020 2070 6174 683a 202f 7661 722f  .    path: /var/
│ │ │ +001add50: 6c6f 672f 6175 6469 740a 2020 2020 7372  log/audit.    sr
│ │ │ +001add60: 633a 2027 7b7b 206d 6f75 6e74 5f69 6e66  c: '{{ mount_inf
│ │ │ +001add70: 6f2e 736f 7572 6365 207c 2064 6566 6175  o.source | defau
│ │ │ +001add80: 6c74 2827 2727 2729 207d 7d27 0a20 2020  lt('''') }}'.   
│ │ │ +001add90: 206f 7074 733a 2027 7b7b 206d 6f75 6e74   opts: '{{ mount
│ │ │ +001adda0: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ +001addb0: 6465 6661 756c 7428 2727 2727 2920 7d7d  default('''') }}
│ │ │ +001addc0: 270a 2020 2020 7374 6174 653a 206d 6f75  '.    state: mou
│ │ │ +001addd0: 6e74 6564 0a20 2020 2066 7374 7970 653a  nted.    fstype:
│ │ │ +001adde0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ +001addf0: 6673 7479 7065 207c 2064 6566 6175 6c74  fstype | default
│ │ │ +001ade00: 2827 2727 2729 207d 7d27 0a20 2072 6567  ('''') }}'.  reg
│ │ │ +001ade10: 6973 7465 723a 206d 6f75 6e74 5f72 6573  ister: mount_res
│ │ │ +001ade20: 756c 740a 2020 6661 696c 6564 5f77 6865  ult.  failed_whe
│ │ │ +001ade30: 6e3a 0a20 202d 206d 6f75 6e74 5f72 6573  n:.  - mount_res
│ │ │ +001ade40: 756c 7420 6973 2066 6169 6c65 640a 2020  ult is failed.  
│ │ │ +001ade50: 2d20 2727 2774 6172 6765 7420 6973 2062  - '''target is b
│ │ │ +001ade60: 7573 7927 2720 6e6f 7420 696e 2028 6d6f  usy'' not in (mo
│ │ │ +001ade70: 756e 745f 7265 7375 6c74 2e6d 7367 207c  unt_result.msg |
│ │ │ +001ade80: 2064 6566 6175 6c74 2827 2727 2729 2927   default(''''))'
│ │ │ +001ade90: 0a20 202d 2027 2727 616c 7265 6164 7920  .  - '''already 
│ │ │ +001adea0: 6d6f 756e 7465 6427 2720 6e6f 7420 696e  mounted'' not in
│ │ │ +001adeb0: 2028 6d6f 756e 745f 7265 7375 6c74 2e6d   (mount_result.m
│ │ │ +001adec0: 7367 207c 2064 6566 6175 6c74 2827 2727  sg | default('''
│ │ │ +001aded0: 2729 2927 0a20 2077 6865 6e3a 0a20 202d  '))'.  when:.  -
│ │ │ +001adee0: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ +001adef0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001adf00: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001adf10: 2272 706d 2d6f 7374 7265 6522 2069 6e20  "rpm-ostree" in 
│ │ │ +001adf20: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001adf30: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ +001adf40: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ +001adf50: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001adf60: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ +001adf70: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ +001adf80: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001adf90: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ +001adfa0: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001adfb0: 6c65 5f70 726f 635f 636d 646c 696e 6520  le_proc_cmdline 
│ │ │ +001adfc0: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ +001adfd0: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ +001adfe0: 6f6e 5f74 7970 6520 696e 0a20 2020 205b  on_type in.    [
│ │ │ +001adff0: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ +001ae000: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ +001ae010: 616e 222c 2022 636f 6e74 6169 6e65 7222  an", "container"
│ │ │ +001ae020: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ +001ae030: 2f6c 6f67 2f61 7564 6974 2220 696e 2061  /log/audit" in a
│ │ │ +001ae040: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ +001ae050: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ +001ae060: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ +001ae070: 202d 206d 6f75 6e74 5f69 6e66 6f20 6973   - mount_info is
│ │ │ +001ae080: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ +001ae090: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001ae0a0: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ +001ae0b0: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ +001ae0c0: 6f75 7420 7c20 6c65 6e67 7468 2026 6774  out | length >
│ │ │ +001ae0d0: 3b20 3029 2920 6f72 2028 222d 2d66 7374  ; 0)) or ("--fst
│ │ │ +001ae0e0: 6162 220a 2020 2020 7c20 6c65 6e67 7468  ab".    | length
│ │ │ +001ae0f0: 203d 3d20 3029 0a20 2074 6167 733a 0a20   == 0).  tags:. 
│ │ │ +001ae100: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001ae110: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ +001ae120: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ +001ae130: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +001ae140: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001ae150: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ +001ae160: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001ae170: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ +001ae180: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ +001ae190: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +001ae1a0: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ +001ae1b0: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ +001ae1c0: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ +001ae1d0: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ +001ae1e0: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f  ount_option_var_
│ │ │ +001ae1f0: 6c6f 675f 6175 6469 745f 6e6f 6578 6563  log_audit_noexec
│ │ │ +001ae200: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +001ae210: 6565 6465 640a 3c2f 636f 6465 3e3c 2f70  eeded.

Remediatio │ │ │ +001ae2d0: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ +001ae2e0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +001ae360: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +001ae370: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
Reboot:false
│ │ │ +001ae390: 3c63 6f64 653e 2320 5265 6d65 6469 6174  # Remediat
│ │ │ +001ae3a0: 696f 6e20 6973 2061 7070 6c69 6361 626c  ion is applicabl
│ │ │ +001ae3b0: 6520 6f6e 6c79 2069 6e20 6365 7274 6169  e only in certai
│ │ │ +001ae3c0: 6e20 706c 6174 666f 726d 730a 6966 2028  n platforms.if (
│ │ │ +001ae3d0: 2021 2028 207b 2072 706d 202d 2d71 7569   ! ( { rpm --qui
│ │ │ +001ae3e0: 6574 202d 7120 6b65 726e 656c 203b 7d20  et -q kernel ;} 
│ │ │ +001ae3f0: 2661 6d70 3b26 616d 703b 207b 2072 706d  && { rpm
│ │ │ +001ae400: 202d 2d71 7569 6574 202d 7120 7270 6d2d   --quiet -q rpm-
│ │ │ +001ae410: 6f73 7472 6565 203b 7d20 2661 6d70 3b26  ostree ;} &&
│ │ │ +001ae420: 616d 703b 207b 2072 706d 202d 2d71 7569  amp; { rpm --qui
│ │ │ +001ae430: 6574 202d 7120 626f 6f74 6320 3b7d 2026  et -q bootc ;} &
│ │ │ +001ae440: 616d 703b 2661 6d70 3b20 7b20 2120 7270  amp;& { ! rp
│ │ │ +001ae450: 6d20 2d2d 7175 6965 7420 2d71 206f 7065  m --quiet -q ope
│ │ │ +001ae460: 6e73 6869 6674 2d6b 7562 656c 6574 203b  nshift-kubelet ;
│ │ │ +001ae470: 7d20 2661 6d70 3b26 616d 703b 2028 5b20  } && ([ 
│ │ │ +001ae480: 2d66 202f 7275 6e2f 6f73 7472 6565 2d62  -f /run/ostree-b
│ │ │ +001ae490: 6f6f 7465 6420 5d20 7c7c 205b 202d 4c20  ooted ] || [ -L 
│ │ │ +001ae4a0: 2f6f 7374 7265 6520 5d29 2029 2026 616d  /ostree ]) ) &am
│ │ │ +001ae4b0: 703b 2661 6d70 3b20 2120 2820 5b20 2d66  p;& ! ( [ -f
│ │ │ +001ae4c0: 202f 2e64 6f63 6b65 7265 6e76 205d 207c   /.dockerenv ] |
│ │ │ +001ae4d0: 7c20 5b20 2d66 202f 7275 6e2f 2e63 6f6e  | [ -f /run/.con
│ │ │ +001ae4e0: 7461 696e 6572 656e 7620 5d20 2920 2920  tainerenv ] ) ) 
│ │ │ +001ae4f0: 2661 6d70 3b26 616d 703b 207b 2028 2066  && { ( f
│ │ │ +001ae500: 696e 646d 6e74 202d 2d6b 6572 6e65 6c20  indmnt --kernel 
│ │ │ +001ae510: 222f 7661 722f 6c6f 672f 6175 6469 7422  "/var/log/audit"
│ │ │ +001ae520: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20   > /dev/null 
│ │ │ +001ae530: 7c7c 2066 696e 646d 6e74 202d 2d66 7374  || findmnt --fst
│ │ │ +001ae540: 6162 2022 2f76 6172 2f6c 6f67 2f61 7564  ab "/var/log/aud
│ │ │ +001ae550: 6974 2220 2667 743b 202f 6465 762f 6e75  it" > /dev/nu
│ │ │ +001ae560: 6c6c 2029 3b20 7d3b 2074 6865 6e0a 0a66  ll ); }; then..f
│ │ │ +001ae570: 756e 6374 696f 6e20 7065 7266 6f72 6d5f  unction perform_
│ │ │ +001ae580: 7265 6d65 6469 6174 696f 6e20 7b0a 0a20  remediation {.. 
│ │ │ +001ae590: 2020 200a 2020 2020 2020 2020 2320 7468     .        # th
│ │ │ +001ae5a0: 6520 6d6f 756e 7420 706f 696e 7420 2f76  e mount point /v
│ │ │ +001ae5b0: 6172 2f6c 6f67 2f61 7564 6974 2068 6173  ar/log/audit has
│ │ │ +001ae5c0: 2074 6f20 6265 2064 6566 696e 6564 2069   to be defined i
│ │ │ +001ae5d0: 6e20 2f65 7463 2f66 7374 6162 0a20 2020  n /etc/fstab.   
│ │ │ +001ae5e0: 2020 2020 2023 2062 6566 6f72 6520 7468       # before th
│ │ │ +001ae5f0: 6973 2072 656d 6564 6961 7469 6f6e 2063  is remediation c
│ │ │ +001ae600: 616e 2062 6520 6578 6563 7574 6564 2e20  an be executed. 
│ │ │ +001ae610: 496e 2063 6173 6520 6974 2069 7320 6e6f  In case it is no
│ │ │ +001ae620: 7420 6465 6669 6e65 642c 2074 6865 0a20  t defined, the. 
│ │ │ +001ae630: 2020 2020 2020 2023 2072 656d 6564 6961         # remedia
│ │ │ +001ae640: 7469 6f6e 2061 626f 7274 7320 616e 6420  tion aborts and 
│ │ │ +001ae650: 6e6f 2063 6861 6e67 6573 2072 6567 6172  no changes regar
│ │ │ +001ae660: 6469 6e67 2074 6865 206d 6f75 6e74 2070  ding the mount p
│ │ │ +001ae670: 6f69 6e74 2061 7265 2064 6f6e 652e 0a20  oint are done.. 
│ │ │ +001ae680: 2020 2020 2020 206d 6f75 6e74 5f70 6f69         mount_poi
│ │ │ +001ae690: 6e74 5f6d 6174 6368 5f72 6567 6578 703d  nt_match_regexp=
│ │ │ +001ae6a0: 2224 2870 7269 6e74 6620 225e 5b5b 3a73  "$(printf "^[[:s
│ │ │ +001ae6b0: 7061 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b  pace:]]*[^#].*[[
│ │ │ +001ae6c0: 3a73 7061 6365 3a5d 5d25 735b 5b3a 7370  :space:]]%s[[:sp
│ │ │ +001ae6d0: 6163 653a 5d5d 2220 222f 7661 722f 6c6f  ace:]]" "/var/lo
│ │ │ +001ae6e0: 672f 6175 6469 7422 2922 0a0a 2020 2020  g/audit")"..    
│ │ │ +001ae6f0: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ +001ae700: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ +001ae710: 202d 7120 2f65 7463 2f66 7374 6162 205c   -q /etc/fstab \
│ │ │ +001ae720: 0a20 2020 2020 2020 207c 7c20 7b20 6563  .        || { ec
│ │ │ +001ae730: 686f 2022 5468 6520 6d6f 756e 7420 706f  ho "The mount po
│ │ │ +001ae740: 696e 7420 272f 7661 722f 6c6f 672f 6175  int '/var/log/au
│ │ │ +001ae750: 6469 7427 2069 7320 6e6f 7420 6576 656e  dit' is not even
│ │ │ +001ae760: 2069 6e20 2f65 7463 2f66 7374 6162 2c20   in /etc/fstab, 
│ │ │ +001ae770: 736f 2077 6520 6361 6e27 7420 7365 7420  so we can't set 
│ │ │ +001ae780: 7570 206d 6f75 6e74 206f 7074 696f 6e73  up mount options
│ │ │ +001ae790: 2220 2667 743b 2661 6d70 3b32 3b0a 2020  " >&2;.  
│ │ │ +001ae7a0: 2020 2020 2020 2020 2020 2020 2020 6563                ec
│ │ │ +001ae7b0: 686f 2022 4e6f 7420 7265 6d65 6469 6174  ho "Not remediat
│ │ │ +001ae7c0: 696e 672c 2062 6563 6175 7365 2074 6865  ing, because the
│ │ │ +001ae7d0: 7265 2069 7320 6e6f 2072 6563 6f72 6420  re is no record 
│ │ │ +001ae7e0: 6f66 202f 7661 722f 6c6f 672f 6175 6469  of /var/log/audi
│ │ │ +001ae7f0: 7420 696e 202f 6574 632f 6673 7461 6222  t in /etc/fstab"
│ │ │ +001ae800: 2026 6774 3b26 616d 703b 323b 2072 6574   >&2; ret
│ │ │ +001ae810: 7572 6e20 313b 207d 0a20 2020 200a 0a0a  urn 1; }.    ...
│ │ │ +001ae820: 2020 2020 6d6f 756e 745f 706f 696e 745f      mount_point_
│ │ │ +001ae830: 6d61 7463 685f 7265 6765 7870 3d22 2428  match_regexp="$(
│ │ │ +001ae840: 7072 696e 7466 2022 5e5b 5b3a 7370 6163  printf "^[[:spac
│ │ │ +001ae850: 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370  e:]]*[^#].*[[:sp
│ │ │ +001ae860: 6163 653a 5d5d 2573 5b5b 3a73 7061 6365  ace:]]%s[[:space
│ │ │ +001ae870: 3a5d 5d22 202f 7661 722f 6c6f 672f 6175  :]]" /var/log/au
│ │ │ +001ae880: 6469 7429 220a 0a20 2020 2023 2049 6620  dit)"..    # If 
│ │ │ +001ae890: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ +001ae8a0: 6973 206e 6f74 2069 6e20 2f65 7463 2f66  is not in /etc/f
│ │ │ +001ae8b0: 7374 6162 2c20 6765 7420 7072 6576 696f  stab, get previo
│ │ │ +001ae8c0: 7573 206d 6f75 6e74 206f 7074 696f 6e73  us mount options
│ │ │ +001ae8d0: 2066 726f 6d20 2f65 7463 2f6d 7461 620a   from /etc/mtab.
│ │ │ +001ae8e0: 2020 2020 6966 2021 2067 7265 7020 2d71      if ! grep -q
│ │ │ +001ae8f0: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ +001ae900: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ +001ae910: 632f 6673 7461 623b 2074 6865 6e0a 2020  c/fstab; then.  
│ │ │ +001ae920: 2020 2020 2020 2320 7275 6e74 696d 6520        # runtime 
│ │ │ +001ae930: 6f70 7473 2077 6974 686f 7574 2073 6f6d  opts without som
│ │ │ +001ae940: 6520 6175 746f 6d61 7469 6320 6b65 726e  e automatic kern
│ │ │ +001ae950: 656c 2f75 7365 7273 7061 6365 2d61 6464  el/userspace-add
│ │ │ +001ae960: 6564 2064 6566 6175 6c74 730a 2020 2020  ed defaults.    
│ │ │ +001ae970: 2020 2020 7072 6576 696f 7573 5f6d 6f75      previous_mou
│ │ │ +001ae980: 6e74 5f6f 7074 733d 2428 6772 6570 2022  nt_opts=$(grep "
│ │ │ +001ae990: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ +001ae9a0: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ +001ae9b0: 6d74 6162 207c 2068 6561 6420 2d31 207c  mtab | head -1 |
│ │ │ +001ae9c0: 2020 6177 6b20 277b 7072 696e 7420 2434    awk '{print $4
│ │ │ +001ae9d0: 7d27 205c 0a20 2020 2020 2020 2020 2020  }' \.           
│ │ │ +001ae9e0: 2020 2020 2020 2020 207c 2073 6564 202d           | sed -
│ │ │ +001ae9f0: 4520 2273 2f28 7277 7c64 6566 6175 6c74  E "s/(rw|default
│ │ │ +001aea00: 737c 7365 636c 6162 656c 7c6e 6f65 7865  s|seclabel|noexe
│ │ │ +001aea10: 6329 282c 7c24 292f 2f67 3b73 2f2c 242f  c)(,|$)//g;s/,$/
│ │ │ +001aea20: 2f22 290a 2020 2020 2020 2020 5b20 2224  /").        [ "$
│ │ │ +001aea30: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001aea40: 7074 7322 205d 2026 616d 703b 2661 6d70  pts" ] &&
│ │ │ +001aea50: 3b20 7072 6576 696f 7573 5f6d 6f75 6e74  ; previous_mount
│ │ │ +001aea60: 5f6f 7074 732b 3d22 2c22 0a20 2020 2020  _opts+=",".     
│ │ │ +001aea70: 2020 2023 2049 6e20 6973 6f39 3636 3020     # In iso9660 
│ │ │ +001aea80: 6669 6c65 7379 7374 656d 7320 6d74 6162  filesystems mtab
│ │ │ +001aea90: 2063 6f75 6c64 2064 6573 6372 6962 6520   could describe 
│ │ │ +001aeaa0: 6120 2262 6c6f 636b 7369 7a65 2220 7661  a "blocksize" va
│ │ │ +001aeab0: 6c75 652c 2074 6869 7320 7368 6f75 6c64  lue, this should
│ │ │ +001aeac0: 2062 6520 7265 666c 6563 7465 6420 696e   be reflected in
│ │ │ +001aead0: 0a20 2020 2020 2020 2023 2066 7374 6162  .        # fstab
│ │ │ +001aeae0: 2061 7320 2262 6c6f 636b 222e 2020 5468   as "block".  Th
│ │ │ +001aeaf0: 6520 6e65 7874 2076 6172 6961 626c 6520  e next variable 
│ │ │ +001aeb00: 6973 2074 6f20 7361 7469 7366 7920 7368  is to satisfy sh
│ │ │ +001aeb10: 656c 6c63 6865 636b 2053 4332 3035 302e  ellcheck SC2050.
│ │ │ +001aeb20: 0a20 2020 2020 2020 2066 735f 7479 7065  .        fs_type
│ │ │ +001aeb30: 3d22 220a 2020 2020 2020 2020 6966 205b  ="".        if [
│ │ │ +001aeb40: 2020 2224 6673 5f74 7970 6522 203d 3d20    "$fs_type" == 
│ │ │ +001aeb50: 2269 736f 3936 3630 2220 5d20 3b20 7468  "iso9660" ] ; th
│ │ │ +001aeb60: 656e 0a20 2020 2020 2020 2020 2020 2070  en.            p
│ │ │ +001aeb70: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001aeb80: 7473 3d24 2873 6564 2027 732f 626c 6f63  ts=$(sed 's/bloc
│ │ │ +001aeb90: 6b73 697a 653d 2f62 6c6f 636b 3d2f 2720  ksize=/block=/' 
│ │ │ +001aeba0: 266c 743b 266c 743b 266c 743b 2022 2470  <<< "$p
│ │ │ +001aebb0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001aebc0: 7473 2229 0a20 2020 2020 2020 2066 690a  ts").        fi.
│ │ │ +001aebd0: 2020 2020 2020 2020 6563 686f 2022 202f          echo " /
│ │ │ +001aebe0: 7661 722f 6c6f 672f 6175 6469 7420 2064  var/log/audit  d
│ │ │ +001aebf0: 6566 6175 6c74 732c 247b 7072 6576 696f  efaults,${previo
│ │ │ +001aec00: 7573 5f6d 6f75 6e74 5f6f 7074 737d 6e6f  us_mount_opts}no
│ │ │ +001aec10: 6578 6563 2030 2030 2220 2667 743b 2667  exec 0 0" >&g
│ │ │ +001aec20: 743b 202f 6574 632f 6673 7461 620a 2020  t; /etc/fstab.  
│ │ │ +001aec30: 2020 2320 4966 2074 6865 206d 6f75 6e74    # If the mount
│ │ │ +001aec40: 5f6f 7074 206f 7074 696f 6e20 6973 206e  _opt option is n
│ │ │ +001aec50: 6f74 2061 6c72 6561 6479 2069 6e20 7468  ot already in th
│ │ │ +001aec60: 6520 6d6f 756e 7420 706f 696e 7427 7320  e mount point's 
│ │ │ +001aec70: 2f65 7463 2f66 7374 6162 2065 6e74 7279  /etc/fstab entry
│ │ │ +001aec80: 2c20 6164 6420 6974 0a20 2020 2065 6c69  , add it.    eli
│ │ │ +001aec90: 6620 2120 6772 6570 2022 246d 6f75 6e74  f ! grep "$mount
│ │ │ +001aeca0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001aecb0: 6578 7022 202f 6574 632f 6673 7461 6220  exp" /etc/fstab 
│ │ │ +001aecc0: 7c20 6772 6570 202d 7120 226e 6f65 7865  | grep -q "noexe
│ │ │ +001aecd0: 6322 3b20 7468 656e 0a20 2020 2020 2020  c"; then.       
│ │ │ +001aece0: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ +001aecf0: 6f70 7473 3d24 2867 7265 7020 2224 6d6f  opts=$(grep "$mo
│ │ │ +001aed00: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001aed10: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ +001aed20: 6162 207c 2061 776b 2027 7b70 7269 6e74  ab | awk '{print
│ │ │ +001aed30: 2024 347d 2729 0a20 2020 2020 2020 2073   $4}').        s
│ │ │ +001aed40: 6564 202d 6920 2273 7c5c 2824 7b6d 6f75  ed -i "s|\(${mou
│ │ │ +001aed50: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +001aed60: 6567 6578 707d 2e2a 247b 7072 6576 696f  egexp}.*${previo
│ │ │ +001aed70: 7573 5f6d 6f75 6e74 5f6f 7074 737d 5c29  us_mount_opts}\)
│ │ │ +001aed80: 7c5c 312c 6e6f 6578 6563 7c22 202f 6574  |\1,noexec|" /et
│ │ │ +001aed90: 632f 6673 7461 620a 2020 2020 6669 0a0a  c/fstab.    fi..
│ │ │ +001aeda0: 0a20 2020 2069 6620 6d6b 6469 7220 2d70  .    if mkdir -p
│ │ │ +001aedb0: 2022 2f76 6172 2f6c 6f67 2f61 7564 6974   "/var/log/audit
│ │ │ +001aedc0: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ +001aedd0: 6966 206d 6f75 6e74 706f 696e 7420 2d71  if mountpoint -q
│ │ │ +001aede0: 2022 2f76 6172 2f6c 6f67 2f61 7564 6974   "/var/log/audit
│ │ │ +001aedf0: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ +001aee00: 2020 2020 6d6f 756e 7420 2d6f 2072 656d      mount -o rem
│ │ │ +001aee10: 6f75 6e74 202d 2d74 6172 6765 7420 222f  ount --target "/
│ │ │ +001aee20: 7661 722f 6c6f 672f 6175 6469 7422 0a20  var/log/audit". 
│ │ │ +001aee30: 2020 2020 2020 2066 690a 2020 2020 6669         fi.    fi
│ │ │ +001aee40: 0a7d 0a0a 7065 7266 6f72 6d5f 7265 6d65  .}..perform_reme
│ │ │ +001aee50: 6469 6174 696f 6e0a 0a65 6c73 650a 2020  diation..else.  
│ │ │ +001aee60: 2020 2667 743b 2661 6d70 3b32 2065 6368    >&2 ech
│ │ │ +001aee70: 6f20 2752 656d 6564 6961 7469 6f6e 2069  o 'Remediation i
│ │ │ +001aee80: 7320 6e6f 7420 6170 706c 6963 6162 6c65  s not applicable
│ │ │ +001aee90: 2c20 6e6f 7468 696e 6720 7761 7320 646f  , nothing was do
│ │ │ +001aeea0: 6e65 270a 6669 0a3c 2f63 6f64 653e 3c2f  ne'.fi.
Remediati │ │ │ +001aef60: 6f6e 2041 6e61 636f 6e64 6120 736e 6970 on Anaconda snip │ │ │ +001aef70: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +001aef80: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001aef90: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001aefa0: 7365 2220 6964 3d22 6964 3436 3522 3e3c se" id="id465">< │ │ │ +001aefb0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001aefc0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001aefd0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001aefe0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +001aeff0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +001af000: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +001af010: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:high< │ │ │ +001af040: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>Rebo │ │ │ +001af050: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001af060: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e< │ │ │ +001af070: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:enable │ │ │ +001af090: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 .part /v │ │ │ +001af0b0: 6172 2f6c 6f67 2f61 7564 6974 202d 2d6d ar/log/audit --m │ │ │ +001af0c0: 6f75 6e74 6f70 7469 6f6e 733d 226e 6f65 ountoptions="noe │ │ │ +001af0d0: 7865 6322 0a3c 2f63 6f64 653e 3c2f 7072 xec".
│ │ │ 001af100: 3c2f 7461 626c 653e 3c2f 7464 3e3c 2f74 Remediatio │ │ │ -001afd60: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ -001afd70: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -001afdf0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -001afe00: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -001afe10: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:highReboo │ │ │ -001afe50: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -001afe60: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -001afe80: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ -001afe90: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.part /va
│ │ │ -001afeb0: 722f 6c6f 672f 6175 6469 7420 2d2d 6d6f  r/log/audit --mo
│ │ │ -001afec0: 756e 746f 7074 696f 6e73 3d22 6e6f 7375  untoptions="nosu
│ │ │ -001afed0: 6964 220a 3c2f 636f 6465 3e3c 2f70 7265  id".
Remediation │ │ │ -001aff90: 416e 7369 626c 6520 736e 6970 7065 7420 Ansible snippet │ │ │ -001affa0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -001b0030: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -001b0050: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:high │ │ │ -001b0070: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -001b0080: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -001b00a0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:configure< │ │ │ -001b00c0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
- name: G
│ │ │ -001b00e0: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ -001b00f0: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ -001b0100: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ -001b0110: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ -001b0120: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ -001b0130: 3533 2d41 432d 360a 2020 2d20 4e49 5354  53-AC-6.  - NIST
│ │ │ -001b0140: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ -001b0150: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001b0160: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ -001b0170: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ -001b0180: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001b0190: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ -001b01a0: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d  -800-53-MP-7.  -
│ │ │ -001b01b0: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ -001b01c0: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ -001b01d0: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -001b01e0: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -001b01f0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -001b0200: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ -001b0210: 7661 725f 6c6f 675f 6175 6469 745f 6e6f  var_log_audit_no
│ │ │ -001b0220: 7375 6964 0a20 202d 206e 6f5f 7265 626f  suid.  - no_rebo
│ │ │ -001b0230: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -001b0240: 653a 2027 4164 6420 6e6f 7375 6964 204f  e: 'Add nosuid O
│ │ │ -001b0250: 7074 696f 6e20 746f 202f 7661 722f 6c6f  ption to /var/lo
│ │ │ -001b0260: 672f 6175 6469 743a 2043 6865 636b 2069  g/audit: Check i
│ │ │ -001b0270: 6e66 6f72 6d61 7469 6f6e 2061 7373 6f63  nformation assoc
│ │ │ -001b0280: 6961 7465 6420 746f 206d 6f75 6e74 706f  iated to mountpo
│ │ │ -001b0290: 696e 7427 0a20 2061 6e73 6962 6c65 2e62  int'.  ansible.b
│ │ │ -001b02a0: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ -001b02b0: 6669 6e64 6d6e 7420 2d2d 6673 7461 6220  findmnt --fstab 
│ │ │ -001b02c0: 272f 7661 722f 6c6f 672f 6175 6469 7427  '/var/log/audit'
│ │ │ -001b02d0: 0a20 2072 6567 6973 7465 723a 2064 6576  .  register: dev
│ │ │ -001b02e0: 6963 655f 6e61 6d65 0a20 2066 6169 6c65  ice_name.  faile
│ │ │ -001b02f0: 645f 7768 656e 3a20 6465 7669 6365 5f6e  d_when: device_n
│ │ │ -001b0300: 616d 652e 7263 2026 6774 3b20 310a 2020  ame.rc > 1.  
│ │ │ -001b0310: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ -001b0320: 6c73 650a 2020 6368 6563 6b5f 6d6f 6465  lse.  check_mode
│ │ │ -001b0330: 3a20 6661 6c73 650a 2020 7768 656e 3a0a  : false.  when:.
│ │ │ -001b0340: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ -001b0350: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -001b0360: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001b0370: 6e64 2022 7270 6d2d 6f73 7472 6565 2220  nd "rpm-ostree" 
│ │ │ -001b0380: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001b0390: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001b03a0: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ -001b03b0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001b03c0: 6765 7320 616e 6420 6e6f 7420 226f 7065  ges and not "ope
│ │ │ -001b03d0: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ -001b03e0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001b03f0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001b0400: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ -001b0410: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ -001b0420: 6e65 2029 2061 6e64 206e 6f74 2028 2061  ne ) and not ( a
│ │ │ -001b0430: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ -001b0440: 6174 696f 6e5f 7479 7065 2069 6e0a 2020  ation_type in.  
│ │ │ -001b0450: 2020 5b22 646f 636b 6572 222c 2022 6c78    ["docker", "lx
│ │ │ -001b0460: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ -001b0470: 6f64 6d61 6e22 2c20 2263 6f6e 7461 696e  odman", "contain
│ │ │ -001b0480: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ -001b0490: 7661 722f 6c6f 672f 6175 6469 7422 2069  var/log/audit" i
│ │ │ -001b04a0: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ -001b04b0: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ -001b04c0: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ -001b04d0: 270a 2020 7461 6773 3a0a 2020 2d20 4e49  '.  tags:.  - NI
│ │ │ -001b04e0: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ -001b04f0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001b0500: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ -001b0510: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -001b0520: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001b0530: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -001b0540: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -001b0550: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ -001b0560: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ -001b0570: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -001b0580: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -001b0590: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001b05a0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -001b05b0: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ -001b05c0: 6f70 7469 6f6e 5f76 6172 5f6c 6f67 5f61  option_var_log_a
│ │ │ -001b05d0: 7564 6974 5f6e 6f73 7569 640a 2020 2d20  udit_nosuid.  - 
│ │ │ -001b05e0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001b05f0: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ -001b0600: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20  osuid Option to 
│ │ │ -001b0610: 2f76 6172 2f6c 6f67 2f61 7564 6974 3a20  /var/log/audit: 
│ │ │ -001b0620: 4372 6561 7465 206d 6f75 6e74 5f69 6e66  Create mount_inf
│ │ │ -001b0630: 6f20 6469 6374 696f 6e61 7279 2076 6172  o dictionary var
│ │ │ -001b0640: 6961 626c 6527 0a20 2073 6574 5f66 6163  iable'.  set_fac
│ │ │ -001b0650: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66  t:.    mount_inf
│ │ │ -001b0660: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66  o: '{{ mount_inf
│ │ │ -001b0670: 6f7c 6465 6661 756c 7428 7b7d 297c 636f  o|default({})|co
│ │ │ -001b0680: 6d62 696e 6528 7b69 7465 6d2e 303a 2069  mbine({item.0: i
│ │ │ -001b0690: 7465 6d2e 317d 2920 7d7d 270a 2020 7769  tem.1}) }}'.  wi
│ │ │ -001b06a0: 7468 5f74 6f67 6574 6865 723a 0a20 202d  th_together:.  -
│ │ │ -001b06b0: 2027 7b7b 2064 6576 6963 655f 6e61 6d65   '{{ device_name
│ │ │ -001b06c0: 2e73 7464 6f75 745f 6c69 6e65 735b 305d  .stdout_lines[0]
│ │ │ -001b06d0: 2e73 706c 6974 2829 207c 206d 6170 2827  .split() | map('
│ │ │ -001b06e0: 276c 6f77 6572 2727 2920 7c20 6c69 7374  'lower'') | list
│ │ │ -001b06f0: 207d 7d27 0a20 202d 2027 7b7b 2064 6576   }}'.  - '{{ dev
│ │ │ -001b0700: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ -001b0710: 6c69 6e65 735b 315d 2e73 706c 6974 2829  lines[1].split()
│ │ │ -001b0720: 207c 206c 6973 7420 7d7d 270a 2020 7768   | list }}'.  wh
│ │ │ -001b0730: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ -001b0740: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -001b0750: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001b0760: 6573 2061 6e64 2022 7270 6d2d 6f73 7472  es and "rpm-ostr
│ │ │ -001b0770: 6565 2220 696e 2061 6e73 6962 6c65 5f66  ee" in ansible_f
│ │ │ -001b0780: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -001b0790: 2020 616e 6420 2262 6f6f 7463 2220 696e    and "bootc" in
│ │ │ -001b07a0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001b07b0: 6163 6b61 6765 7320 616e 6420 6e6f 7420  ackages and not 
│ │ │ -001b07c0: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ -001b07d0: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ -001b07e0: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -001b07f0: 2020 616e 6420 226f 7374 7265 6522 2069    and "ostree" i
│ │ │ -001b0800: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ -001b0810: 6d64 6c69 6e65 2029 2061 6e64 206e 6f74  mdline ) and not
│ │ │ -001b0820: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ -001b0830: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ -001b0840: 6e0a 2020 2020 5b22 646f 636b 6572 222c  n.    ["docker",
│ │ │ -001b0850: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ -001b0860: 2c20 2270 6f64 6d61 6e22 2c20 2263 6f6e  , "podman", "con
│ │ │ -001b0870: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ -001b0880: 2027 222f 7661 722f 6c6f 672f 6175 6469   '"/var/log/audi
│ │ │ -001b0890: 7422 2069 6e20 616e 7369 626c 655f 6d6f  t" in ansible_mo
│ │ │ -001b08a0: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ -001b08b0: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ -001b08c0: 6c69 7374 270a 2020 2d20 6465 7669 6365  list'.  - device
│ │ │ -001b08d0: 5f6e 616d 652e 7374 646f 7574 2069 7320  _name.stdout is 
│ │ │ -001b08e0: 6465 6669 6e65 6420 616e 6420 6465 7669  defined and devi
│ │ │ -001b08f0: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ -001b0900: 696e 6573 2069 7320 6465 6669 6e65 640a  ines is defined.
│ │ │ -001b0910: 2020 2d20 2864 6576 6963 655f 6e61 6d65    - (device_name
│ │ │ -001b0920: 2e73 7464 6f75 7420 7c20 6c65 6e67 7468  .stdout | length
│ │ │ -001b0930: 2026 6774 3b20 3029 0a20 2074 6167 733a   > 0).  tags:
│ │ │ -001b0940: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001b0950: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ -001b0960: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ -001b0970: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001b0980: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -001b0990: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ -001b09a0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001b09b0: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ -001b09c0: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ -001b09d0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001b09e0: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -001b09f0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -001b0a00: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001b0a10: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001b0a20: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ -001b0a30: 725f 6c6f 675f 6175 6469 745f 6e6f 7375  r_log_audit_nosu
│ │ │ -001b0a40: 6964 0a20 202d 206e 6f5f 7265 626f 6f74  id.  - no_reboot
│ │ │ -001b0a50: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ -001b0a60: 2027 4164 6420 6e6f 7375 6964 204f 7074   'Add nosuid Opt
│ │ │ -001b0a70: 696f 6e20 746f 202f 7661 722f 6c6f 672f  ion to /var/log/
│ │ │ -001b0a80: 6175 6469 743a 2049 6620 2f76 6172 2f6c  audit: If /var/l
│ │ │ -001b0a90: 6f67 2f61 7564 6974 206e 6f74 206d 6f75  og/audit not mou
│ │ │ -001b0aa0: 6e74 6564 2c20 6372 6166 740a 2020 2020  nted, craft.    
│ │ │ -001b0ab0: 6d6f 756e 745f 696e 666f 206d 616e 7561  mount_info manua
│ │ │ -001b0ac0: 6c6c 7927 0a20 2073 6574 5f66 6163 743a  lly'.  set_fact:
│ │ │ -001b0ad0: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ -001b0ae0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c   '{{ mount_info|
│ │ │ -001b0af0: 6465 6661 756c 7428 7b7d 297c 636f 6d62  default({})|comb
│ │ │ -001b0b00: 696e 6528 7b69 7465 6d2e 303a 2069 7465  ine({item.0: ite
│ │ │ -001b0b10: 6d2e 317d 2920 7d7d 270a 2020 7769 7468  m.1}) }}'.  with
│ │ │ -001b0b20: 5f74 6f67 6574 6865 723a 0a20 202d 202d  _together:.  - -
│ │ │ -001b0b30: 2074 6172 6765 740a 2020 2020 2d20 736f   target.    - so
│ │ │ -001b0b40: 7572 6365 0a20 2020 202d 2066 7374 7970  urce.    - fstyp
│ │ │ -001b0b50: 650a 2020 2020 2d20 6f70 7469 6f6e 730a  e.    - options.
│ │ │ -001b0b60: 2020 2d20 2d20 2f76 6172 2f6c 6f67 2f61    - - /var/log/a
│ │ │ -001b0b70: 7564 6974 0a20 2020 202d 2027 270a 2020  udit.    - ''.  
│ │ │ -001b0b80: 2020 2d20 2727 0a20 2020 202d 2064 6566    - ''.    - def
│ │ │ -001b0b90: 6175 6c74 730a 2020 7768 656e 3a0a 2020  aults.  when:.  
│ │ │ -001b0ba0: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ -001b0bb0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -001b0bc0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001b0bd0: 2022 7270 6d2d 6f73 7472 6565 2220 696e   "rpm-ostree" in
│ │ │ -001b0be0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001b0bf0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001b0c00: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ -001b0c10: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001b0c20: 7320 616e 6420 6e6f 7420 226f 7065 6e73  s and not "opens
│ │ │ -001b0c30: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ -001b0c40: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001b0c50: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001b0c60: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ -001b0c70: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ -001b0c80: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ -001b0c90: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ -001b0ca0: 696f 6e5f 7479 7065 2069 6e0a 2020 2020  ion_type in.    
│ │ │ -001b0cb0: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ -001b0cc0: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ -001b0cd0: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572  man", "container
│ │ │ -001b0ce0: 225d 2029 2029 0a20 202d 2027 222f 7661  "] ) ).  - '"/va
│ │ │ -001b0cf0: 722f 6c6f 672f 6175 6469 7422 2069 6e20  r/log/audit" in 
│ │ │ -001b0d00: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ -001b0d10: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ -001b0d20: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ -001b0d30: 2020 2d20 2822 2d2d 6673 7461 6222 207c    - ("--fstab" |
│ │ │ -001b0d40: 206c 656e 6774 6820 3d3d 2030 290a 2020   length == 0).  
│ │ │ -001b0d50: 2d20 6465 7669 6365 5f6e 616d 652e 7374  - device_name.st
│ │ │ -001b0d60: 646f 7574 2069 7320 6465 6669 6e65 6420  dout is defined 
│ │ │ -001b0d70: 616e 6420 6465 7669 6365 5f6e 616d 652e  and device_name.
│ │ │ -001b0d80: 7374 646f 7574 5f6c 696e 6573 2069 7320  stdout_lines is 
│ │ │ -001b0d90: 6465 6669 6e65 640a 2020 2d20 2864 6576  defined.  - (dev
│ │ │ -001b0da0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ -001b0db0: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ -001b0dc0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -001b0dd0: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ -001b0de0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001b0df0: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ -001b0e00: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -001b0e10: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001b0e20: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001b0e30: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ -001b0e40: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ -001b0e50: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -001b0e60: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -001b0e70: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001b0e80: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001b0e90: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001b0ea0: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -001b0eb0: 696f 6e5f 7661 725f 6c6f 675f 6175 6469  ion_var_log_audi
│ │ │ -001b0ec0: 745f 6e6f 7375 6964 0a20 202d 206e 6f5f  t_nosuid.  - no_
│ │ │ -001b0ed0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001b0ee0: 206e 616d 653a 2027 4164 6420 6e6f 7375   name: 'Add nosu
│ │ │ -001b0ef0: 6964 204f 7074 696f 6e20 746f 202f 7661  id Option to /va
│ │ │ -001b0f00: 722f 6c6f 672f 6175 6469 743a 204d 616b  r/log/audit: Mak
│ │ │ -001b0f10: 6520 7375 7265 206e 6f73 7569 6420 6f70  e sure nosuid op
│ │ │ -001b0f20: 7469 6f6e 2069 7320 7061 7274 206f 6620  tion is part of 
│ │ │ -001b0f30: 7468 650a 2020 2020 746f 202f 7661 722f  the.    to /var/
│ │ │ -001b0f40: 6c6f 672f 6175 6469 7420 6f70 7469 6f6e  log/audit option
│ │ │ -001b0f50: 7327 0a20 2073 6574 5f66 6163 743a 0a20  s'.  set_fact:. 
│ │ │ -001b0f60: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ -001b0f70: 7b7b 206d 6f75 6e74 5f69 6e66 6f20 7c20  {{ mount_info | 
│ │ │ -001b0f80: 636f 6d62 696e 6528 207b 2727 6f70 7469  combine( {''opti
│ │ │ -001b0f90: 6f6e 7327 273a 2727 2727 7e28 6d6f 756e  ons'':''''~(moun
│ │ │ -001b0fa0: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ -001b0fb0: 0a20 2020 2020 2064 6566 6175 6c74 2827  .      default('
│ │ │ -001b0fc0: 2727 2729 297e 2827 272c 2727 2069 6620  '''))~('','' if 
│ │ │ -001b0fd0: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469  (mount_info.opti
│ │ │ -001b0fe0: 6f6e 7320 7c20 6465 6661 756c 7428 2727  ons | default(''
│ │ │ -001b0ff0: 2727 2929 2065 6c73 6520 2727 2727 297e  '')) else '''')~
│ │ │ -001b1000: 2727 6e6f 7375 6964 2727 0a20 2020 2020  ''nosuid''.     
│ │ │ -001b1010: 207d 2920 7d7d 270a 2020 7768 656e 3a0a   }) }}'.  when:.
│ │ │ -001b1020: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ -001b1030: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -001b1040: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001b1050: 6e64 2022 7270 6d2d 6f73 7472 6565 2220  nd "rpm-ostree" 
│ │ │ -001b1060: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001b1070: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001b1080: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ -001b1090: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001b10a0: 6765 7320 616e 6420 6e6f 7420 226f 7065  ges and not "ope
│ │ │ -001b10b0: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ -001b10c0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001b10d0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001b10e0: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ -001b10f0: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ -001b1100: 6e65 2029 2061 6e64 206e 6f74 2028 2061  ne ) and not ( a
│ │ │ -001b1110: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ -001b1120: 6174 696f 6e5f 7479 7065 2069 6e0a 2020  ation_type in.  
│ │ │ -001b1130: 2020 5b22 646f 636b 6572 222c 2022 6c78    ["docker", "lx
│ │ │ -001b1140: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ -001b1150: 6f64 6d61 6e22 2c20 2263 6f6e 7461 696e  odman", "contain
│ │ │ -001b1160: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ -001b1170: 7661 722f 6c6f 672f 6175 6469 7422 2069  var/log/audit" i
│ │ │ -001b1180: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ -001b1190: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ -001b11a0: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ -001b11b0: 270a 2020 2d20 6d6f 756e 745f 696e 666f  '.  - mount_info
│ │ │ -001b11c0: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ -001b11d0: 226e 6f73 7569 6422 206e 6f74 2069 6e20  "nosuid" not in 
│ │ │ -001b11e0: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469  (mount_info.opti
│ │ │ -001b11f0: 6f6e 7320 7c20 6465 6661 756c 7428 2727  ons | default(''
│ │ │ -001b1200: 2929 0a20 2074 6167 733a 0a20 202d 204e  )).  tags:.  - N
│ │ │ -001b1210: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ -001b1220: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001b1230: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ -001b1240: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -001b1250: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001b1260: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ -001b1270: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ -001b1280: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001b1290: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ -001b12a0: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ -001b12b0: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ -001b12c0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -001b12d0: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ -001b12e0: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ -001b12f0: 5f6f 7074 696f 6e5f 7661 725f 6c6f 675f  _option_var_log_
│ │ │ -001b1300: 6175 6469 745f 6e6f 7375 6964 0a20 202d  audit_nosuid.  -
│ │ │ -001b1310: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -001b1320: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ -001b1330: 6e6f 7375 6964 204f 7074 696f 6e20 746f  nosuid Option to
│ │ │ -001b1340: 202f 7661 722f 6c6f 672f 6175 6469 743a   /var/log/audit:
│ │ │ -001b1350: 2045 6e73 7572 6520 2f76 6172 2f6c 6f67   Ensure /var/log
│ │ │ -001b1360: 2f61 7564 6974 2069 7320 6d6f 756e 7465  /audit is mounte
│ │ │ -001b1370: 6420 7769 7468 0a20 2020 206e 6f73 7569  d with.    nosui
│ │ │ -001b1380: 6420 6f70 7469 6f6e 270a 2020 616e 7369  d option'.  ansi
│ │ │ -001b1390: 626c 652e 706f 7369 782e 6d6f 756e 743a  ble.posix.mount:
│ │ │ -001b13a0: 0a20 2020 2070 6174 683a 202f 7661 722f  .    path: /var/
│ │ │ -001b13b0: 6c6f 672f 6175 6469 740a 2020 2020 7372  log/audit.    sr
│ │ │ -001b13c0: 633a 2027 7b7b 206d 6f75 6e74 5f69 6e66  c: '{{ mount_inf
│ │ │ -001b13d0: 6f2e 736f 7572 6365 207c 2064 6566 6175  o.source | defau
│ │ │ -001b13e0: 6c74 2827 2727 2729 207d 7d27 0a20 2020  lt('''') }}'.   
│ │ │ -001b13f0: 206f 7074 733a 2027 7b7b 206d 6f75 6e74   opts: '{{ mount
│ │ │ -001b1400: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ -001b1410: 6465 6661 756c 7428 2727 2727 2920 7d7d  default('''') }}
│ │ │ -001b1420: 270a 2020 2020 7374 6174 653a 206d 6f75  '.    state: mou
│ │ │ -001b1430: 6e74 6564 0a20 2020 2066 7374 7970 653a  nted.    fstype:
│ │ │ -001b1440: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ -001b1450: 6673 7479 7065 207c 2064 6566 6175 6c74  fstype | default
│ │ │ -001b1460: 2827 2727 2729 207d 7d27 0a20 2072 6567  ('''') }}'.  reg
│ │ │ -001b1470: 6973 7465 723a 206d 6f75 6e74 5f72 6573  ister: mount_res
│ │ │ -001b1480: 756c 740a 2020 6661 696c 6564 5f77 6865  ult.  failed_whe
│ │ │ -001b1490: 6e3a 0a20 202d 206d 6f75 6e74 5f72 6573  n:.  - mount_res
│ │ │ -001b14a0: 756c 7420 6973 2066 6169 6c65 640a 2020  ult is failed.  
│ │ │ -001b14b0: 2d20 2727 2774 6172 6765 7420 6973 2062  - '''target is b
│ │ │ -001b14c0: 7573 7927 2720 6e6f 7420 696e 2028 6d6f  usy'' not in (mo
│ │ │ -001b14d0: 756e 745f 7265 7375 6c74 2e6d 7367 207c  unt_result.msg |
│ │ │ -001b14e0: 2064 6566 6175 6c74 2827 2727 2729 2927   default(''''))'
│ │ │ -001b14f0: 0a20 202d 2027 2727 616c 7265 6164 7920  .  - '''already 
│ │ │ -001b1500: 6d6f 756e 7465 6427 2720 6e6f 7420 696e  mounted'' not in
│ │ │ -001b1510: 2028 6d6f 756e 745f 7265 7375 6c74 2e6d   (mount_result.m
│ │ │ -001b1520: 7367 207c 2064 6566 6175 6c74 2827 2727  sg | default('''
│ │ │ -001b1530: 2729 2927 0a20 2077 6865 6e3a 0a20 202d  '))'.  when:.  -
│ │ │ -001b1540: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ -001b1550: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001b1560: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001b1570: 2272 706d 2d6f 7374 7265 6522 2069 6e20  "rpm-ostree" in 
│ │ │ -001b1580: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001b1590: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001b15a0: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -001b15b0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001b15c0: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ -001b15d0: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ -001b15e0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001b15f0: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001b1600: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001b1610: 6c65 5f70 726f 635f 636d 646c 696e 6520  le_proc_cmdline 
│ │ │ -001b1620: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ -001b1630: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ -001b1640: 6f6e 5f74 7970 6520 696e 0a20 2020 205b  on_type in.    [
│ │ │ -001b1650: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -001b1660: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -001b1670: 616e 222c 2022 636f 6e74 6169 6e65 7222  an", "container"
│ │ │ -001b1680: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ -001b1690: 2f6c 6f67 2f61 7564 6974 2220 696e 2061  /log/audit" in a
│ │ │ -001b16a0: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ -001b16b0: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ -001b16c0: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ -001b16d0: 202d 206d 6f75 6e74 5f69 6e66 6f20 6973   - mount_info is
│ │ │ -001b16e0: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ -001b16f0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001b1700: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ -001b1710: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ -001b1720: 6f75 7420 7c20 6c65 6e67 7468 2026 6774  out | length >
│ │ │ -001b1730: 3b20 3029 2920 6f72 2028 222d 2d66 7374  ; 0)) or ("--fst
│ │ │ -001b1740: 6162 220a 2020 2020 7c20 6c65 6e67 7468  ab".    | length
│ │ │ -001b1750: 203d 3d20 3029 0a20 2074 6167 733a 0a20   == 0).  tags:. 
│ │ │ -001b1760: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001b1770: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ -001b1780: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ -001b1790: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -001b17a0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001b17b0: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ -001b17c0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001b17d0: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ -001b17e0: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ -001b17f0: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -001b1800: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -001b1810: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -001b1820: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -001b1830: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -001b1840: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f  ount_option_var_
│ │ │ -001b1850: 6c6f 675f 6175 6469 745f 6e6f 7375 6964  log_audit_nosuid
│ │ │ -001b1860: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -001b1870: 6565 6465 640a 3c2f 636f 6465 3e3c 2f70  eeded.

Remediatio │ │ │ -001b1930: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ -001b1940: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -001b19c0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -001b19d0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
Reboot:false
│ │ │ -001b19f0: 3c63 6f64 653e 2320 5265 6d65 6469 6174  # Remediat
│ │ │ -001b1a00: 696f 6e20 6973 2061 7070 6c69 6361 626c  ion is applicabl
│ │ │ -001b1a10: 6520 6f6e 6c79 2069 6e20 6365 7274 6169  e only in certai
│ │ │ -001b1a20: 6e20 706c 6174 666f 726d 730a 6966 2028  n platforms.if (
│ │ │ -001b1a30: 2021 2028 207b 2072 706d 202d 2d71 7569   ! ( { rpm --qui
│ │ │ -001b1a40: 6574 202d 7120 6b65 726e 656c 203b 7d20  et -q kernel ;} 
│ │ │ -001b1a50: 2661 6d70 3b26 616d 703b 207b 2072 706d  && { rpm
│ │ │ -001b1a60: 202d 2d71 7569 6574 202d 7120 7270 6d2d   --quiet -q rpm-
│ │ │ -001b1a70: 6f73 7472 6565 203b 7d20 2661 6d70 3b26  ostree ;} &&
│ │ │ -001b1a80: 616d 703b 207b 2072 706d 202d 2d71 7569  amp; { rpm --qui
│ │ │ -001b1a90: 6574 202d 7120 626f 6f74 6320 3b7d 2026  et -q bootc ;} &
│ │ │ -001b1aa0: 616d 703b 2661 6d70 3b20 7b20 2120 7270  amp;& { ! rp
│ │ │ -001b1ab0: 6d20 2d2d 7175 6965 7420 2d71 206f 7065  m --quiet -q ope
│ │ │ -001b1ac0: 6e73 6869 6674 2d6b 7562 656c 6574 203b  nshift-kubelet ;
│ │ │ -001b1ad0: 7d20 2661 6d70 3b26 616d 703b 2028 5b20  } && ([ 
│ │ │ -001b1ae0: 2d66 202f 7275 6e2f 6f73 7472 6565 2d62  -f /run/ostree-b
│ │ │ -001b1af0: 6f6f 7465 6420 5d20 7c7c 205b 202d 4c20  ooted ] || [ -L 
│ │ │ -001b1b00: 2f6f 7374 7265 6520 5d29 2029 2026 616d  /ostree ]) ) &am
│ │ │ -001b1b10: 703b 2661 6d70 3b20 2120 2820 5b20 2d66  p;& ! ( [ -f
│ │ │ -001b1b20: 202f 2e64 6f63 6b65 7265 6e76 205d 207c   /.dockerenv ] |
│ │ │ -001b1b30: 7c20 5b20 2d66 202f 7275 6e2f 2e63 6f6e  | [ -f /run/.con
│ │ │ -001b1b40: 7461 696e 6572 656e 7620 5d20 2920 2920  tainerenv ] ) ) 
│ │ │ -001b1b50: 2661 6d70 3b26 616d 703b 207b 2028 2066  && { ( f
│ │ │ -001b1b60: 696e 646d 6e74 202d 2d6b 6572 6e65 6c20  indmnt --kernel 
│ │ │ -001b1b70: 222f 7661 722f 6c6f 672f 6175 6469 7422  "/var/log/audit"
│ │ │ -001b1b80: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20   > /dev/null 
│ │ │ -001b1b90: 7c7c 2066 696e 646d 6e74 202d 2d66 7374  || findmnt --fst
│ │ │ -001b1ba0: 6162 2022 2f76 6172 2f6c 6f67 2f61 7564  ab "/var/log/aud
│ │ │ -001b1bb0: 6974 2220 2667 743b 202f 6465 762f 6e75  it" > /dev/nu
│ │ │ -001b1bc0: 6c6c 2029 3b20 7d3b 2074 6865 6e0a 0a66  ll ); }; then..f
│ │ │ -001b1bd0: 756e 6374 696f 6e20 7065 7266 6f72 6d5f  unction perform_
│ │ │ -001b1be0: 7265 6d65 6469 6174 696f 6e20 7b0a 0a20  remediation {.. 
│ │ │ -001b1bf0: 2020 200a 2020 2020 2020 2020 2320 7468     .        # th
│ │ │ -001b1c00: 6520 6d6f 756e 7420 706f 696e 7420 2f76  e mount point /v
│ │ │ -001b1c10: 6172 2f6c 6f67 2f61 7564 6974 2068 6173  ar/log/audit has
│ │ │ -001b1c20: 2074 6f20 6265 2064 6566 696e 6564 2069   to be defined i
│ │ │ -001b1c30: 6e20 2f65 7463 2f66 7374 6162 0a20 2020  n /etc/fstab.   
│ │ │ -001b1c40: 2020 2020 2023 2062 6566 6f72 6520 7468       # before th
│ │ │ -001b1c50: 6973 2072 656d 6564 6961 7469 6f6e 2063  is remediation c
│ │ │ -001b1c60: 616e 2062 6520 6578 6563 7574 6564 2e20  an be executed. 
│ │ │ -001b1c70: 496e 2063 6173 6520 6974 2069 7320 6e6f  In case it is no
│ │ │ -001b1c80: 7420 6465 6669 6e65 642c 2074 6865 0a20  t defined, the. 
│ │ │ -001b1c90: 2020 2020 2020 2023 2072 656d 6564 6961         # remedia
│ │ │ -001b1ca0: 7469 6f6e 2061 626f 7274 7320 616e 6420  tion aborts and 
│ │ │ -001b1cb0: 6e6f 2063 6861 6e67 6573 2072 6567 6172  no changes regar
│ │ │ -001b1cc0: 6469 6e67 2074 6865 206d 6f75 6e74 2070  ding the mount p
│ │ │ -001b1cd0: 6f69 6e74 2061 7265 2064 6f6e 652e 0a20  oint are done.. 
│ │ │ -001b1ce0: 2020 2020 2020 206d 6f75 6e74 5f70 6f69         mount_poi
│ │ │ -001b1cf0: 6e74 5f6d 6174 6368 5f72 6567 6578 703d  nt_match_regexp=
│ │ │ -001b1d00: 2224 2870 7269 6e74 6620 225e 5b5b 3a73  "$(printf "^[[:s
│ │ │ -001b1d10: 7061 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b  pace:]]*[^#].*[[
│ │ │ -001b1d20: 3a73 7061 6365 3a5d 5d25 735b 5b3a 7370  :space:]]%s[[:sp
│ │ │ -001b1d30: 6163 653a 5d5d 2220 222f 7661 722f 6c6f  ace:]]" "/var/lo
│ │ │ -001b1d40: 672f 6175 6469 7422 2922 0a0a 2020 2020  g/audit")"..    
│ │ │ -001b1d50: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ -001b1d60: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ -001b1d70: 202d 7120 2f65 7463 2f66 7374 6162 205c   -q /etc/fstab \
│ │ │ -001b1d80: 0a20 2020 2020 2020 207c 7c20 7b20 6563  .        || { ec
│ │ │ -001b1d90: 686f 2022 5468 6520 6d6f 756e 7420 706f  ho "The mount po
│ │ │ -001b1da0: 696e 7420 272f 7661 722f 6c6f 672f 6175  int '/var/log/au
│ │ │ -001b1db0: 6469 7427 2069 7320 6e6f 7420 6576 656e  dit' is not even
│ │ │ -001b1dc0: 2069 6e20 2f65 7463 2f66 7374 6162 2c20   in /etc/fstab, 
│ │ │ -001b1dd0: 736f 2077 6520 6361 6e27 7420 7365 7420  so we can't set 
│ │ │ -001b1de0: 7570 206d 6f75 6e74 206f 7074 696f 6e73  up mount options
│ │ │ -001b1df0: 2220 2667 743b 2661 6d70 3b32 3b0a 2020  " >&2;.  
│ │ │ -001b1e00: 2020 2020 2020 2020 2020 2020 2020 6563                ec
│ │ │ -001b1e10: 686f 2022 4e6f 7420 7265 6d65 6469 6174  ho "Not remediat
│ │ │ -001b1e20: 696e 672c 2062 6563 6175 7365 2074 6865  ing, because the
│ │ │ -001b1e30: 7265 2069 7320 6e6f 2072 6563 6f72 6420  re is no record 
│ │ │ -001b1e40: 6f66 202f 7661 722f 6c6f 672f 6175 6469  of /var/log/audi
│ │ │ -001b1e50: 7420 696e 202f 6574 632f 6673 7461 6222  t in /etc/fstab"
│ │ │ -001b1e60: 2026 6774 3b26 616d 703b 323b 2072 6574   >&2; ret
│ │ │ -001b1e70: 7572 6e20 313b 207d 0a20 2020 200a 0a0a  urn 1; }.    ...
│ │ │ -001b1e80: 2020 2020 6d6f 756e 745f 706f 696e 745f      mount_point_
│ │ │ -001b1e90: 6d61 7463 685f 7265 6765 7870 3d22 2428  match_regexp="$(
│ │ │ -001b1ea0: 7072 696e 7466 2022 5e5b 5b3a 7370 6163  printf "^[[:spac
│ │ │ -001b1eb0: 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370  e:]]*[^#].*[[:sp
│ │ │ -001b1ec0: 6163 653a 5d5d 2573 5b5b 3a73 7061 6365  ace:]]%s[[:space
│ │ │ -001b1ed0: 3a5d 5d22 202f 7661 722f 6c6f 672f 6175  :]]" /var/log/au
│ │ │ -001b1ee0: 6469 7429 220a 0a20 2020 2023 2049 6620  dit)"..    # If 
│ │ │ -001b1ef0: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ -001b1f00: 6973 206e 6f74 2069 6e20 2f65 7463 2f66  is not in /etc/f
│ │ │ -001b1f10: 7374 6162 2c20 6765 7420 7072 6576 696f  stab, get previo
│ │ │ -001b1f20: 7573 206d 6f75 6e74 206f 7074 696f 6e73  us mount options
│ │ │ -001b1f30: 2066 726f 6d20 2f65 7463 2f6d 7461 620a   from /etc/mtab.
│ │ │ -001b1f40: 2020 2020 6966 2021 2067 7265 7020 2d71      if ! grep -q
│ │ │ -001b1f50: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -001b1f60: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ -001b1f70: 632f 6673 7461 623b 2074 6865 6e0a 2020  c/fstab; then.  
│ │ │ -001b1f80: 2020 2020 2020 2320 7275 6e74 696d 6520        # runtime 
│ │ │ -001b1f90: 6f70 7473 2077 6974 686f 7574 2073 6f6d  opts without som
│ │ │ -001b1fa0: 6520 6175 746f 6d61 7469 6320 6b65 726e  e automatic kern
│ │ │ -001b1fb0: 656c 2f75 7365 7273 7061 6365 2d61 6464  el/userspace-add
│ │ │ -001b1fc0: 6564 2064 6566 6175 6c74 730a 2020 2020  ed defaults.    
│ │ │ -001b1fd0: 2020 2020 7072 6576 696f 7573 5f6d 6f75      previous_mou
│ │ │ -001b1fe0: 6e74 5f6f 7074 733d 2428 6772 6570 2022  nt_opts=$(grep "
│ │ │ -001b1ff0: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ -001b2000: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ -001b2010: 6d74 6162 207c 2068 6561 6420 2d31 207c  mtab | head -1 |
│ │ │ -001b2020: 2020 6177 6b20 277b 7072 696e 7420 2434    awk '{print $4
│ │ │ -001b2030: 7d27 205c 0a20 2020 2020 2020 2020 2020  }' \.           
│ │ │ -001b2040: 2020 2020 2020 2020 207c 2073 6564 202d           | sed -
│ │ │ -001b2050: 4520 2273 2f28 7277 7c64 6566 6175 6c74  E "s/(rw|default
│ │ │ -001b2060: 737c 7365 636c 6162 656c 7c6e 6f73 7569  s|seclabel|nosui
│ │ │ -001b2070: 6429 282c 7c24 292f 2f67 3b73 2f2c 242f  d)(,|$)//g;s/,$/
│ │ │ -001b2080: 2f22 290a 2020 2020 2020 2020 5b20 2224  /").        [ "$
│ │ │ -001b2090: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001b20a0: 7074 7322 205d 2026 616d 703b 2661 6d70  pts" ] &&
│ │ │ -001b20b0: 3b20 7072 6576 696f 7573 5f6d 6f75 6e74  ; previous_mount
│ │ │ -001b20c0: 5f6f 7074 732b 3d22 2c22 0a20 2020 2020  _opts+=",".     
│ │ │ -001b20d0: 2020 2023 2049 6e20 6973 6f39 3636 3020     # In iso9660 
│ │ │ -001b20e0: 6669 6c65 7379 7374 656d 7320 6d74 6162  filesystems mtab
│ │ │ -001b20f0: 2063 6f75 6c64 2064 6573 6372 6962 6520   could describe 
│ │ │ -001b2100: 6120 2262 6c6f 636b 7369 7a65 2220 7661  a "blocksize" va
│ │ │ -001b2110: 6c75 652c 2074 6869 7320 7368 6f75 6c64  lue, this should
│ │ │ -001b2120: 2062 6520 7265 666c 6563 7465 6420 696e   be reflected in
│ │ │ -001b2130: 0a20 2020 2020 2020 2023 2066 7374 6162  .        # fstab
│ │ │ -001b2140: 2061 7320 2262 6c6f 636b 222e 2020 5468   as "block".  Th
│ │ │ -001b2150: 6520 6e65 7874 2076 6172 6961 626c 6520  e next variable 
│ │ │ -001b2160: 6973 2074 6f20 7361 7469 7366 7920 7368  is to satisfy sh
│ │ │ -001b2170: 656c 6c63 6865 636b 2053 4332 3035 302e  ellcheck SC2050.
│ │ │ -001b2180: 0a20 2020 2020 2020 2066 735f 7479 7065  .        fs_type
│ │ │ -001b2190: 3d22 220a 2020 2020 2020 2020 6966 205b  ="".        if [
│ │ │ -001b21a0: 2020 2224 6673 5f74 7970 6522 203d 3d20    "$fs_type" == 
│ │ │ -001b21b0: 2269 736f 3936 3630 2220 5d20 3b20 7468  "iso9660" ] ; th
│ │ │ -001b21c0: 656e 0a20 2020 2020 2020 2020 2020 2070  en.            p
│ │ │ -001b21d0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001b21e0: 7473 3d24 2873 6564 2027 732f 626c 6f63  ts=$(sed 's/bloc
│ │ │ -001b21f0: 6b73 697a 653d 2f62 6c6f 636b 3d2f 2720  ksize=/block=/' 
│ │ │ -001b2200: 266c 743b 266c 743b 266c 743b 2022 2470  <<< "$p
│ │ │ -001b2210: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001b2220: 7473 2229 0a20 2020 2020 2020 2066 690a  ts").        fi.
│ │ │ -001b2230: 2020 2020 2020 2020 6563 686f 2022 202f          echo " /
│ │ │ -001b2240: 7661 722f 6c6f 672f 6175 6469 7420 2064  var/log/audit  d
│ │ │ -001b2250: 6566 6175 6c74 732c 247b 7072 6576 696f  efaults,${previo
│ │ │ -001b2260: 7573 5f6d 6f75 6e74 5f6f 7074 737d 6e6f  us_mount_opts}no
│ │ │ -001b2270: 7375 6964 2030 2030 2220 2667 743b 2667  suid 0 0" >&g
│ │ │ -001b2280: 743b 202f 6574 632f 6673 7461 620a 2020  t; /etc/fstab.  
│ │ │ -001b2290: 2020 2320 4966 2074 6865 206d 6f75 6e74    # If the mount
│ │ │ -001b22a0: 5f6f 7074 206f 7074 696f 6e20 6973 206e  _opt option is n
│ │ │ -001b22b0: 6f74 2061 6c72 6561 6479 2069 6e20 7468  ot already in th
│ │ │ -001b22c0: 6520 6d6f 756e 7420 706f 696e 7427 7320  e mount point's 
│ │ │ -001b22d0: 2f65 7463 2f66 7374 6162 2065 6e74 7279  /etc/fstab entry
│ │ │ -001b22e0: 2c20 6164 6420 6974 0a20 2020 2065 6c69  , add it.    eli
│ │ │ -001b22f0: 6620 2120 6772 6570 2022 246d 6f75 6e74  f ! grep "$mount
│ │ │ -001b2300: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001b2310: 6578 7022 202f 6574 632f 6673 7461 6220  exp" /etc/fstab 
│ │ │ -001b2320: 7c20 6772 6570 202d 7120 226e 6f73 7569  | grep -q "nosui
│ │ │ -001b2330: 6422 3b20 7468 656e 0a20 2020 2020 2020  d"; then.       
│ │ │ -001b2340: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ -001b2350: 6f70 7473 3d24 2867 7265 7020 2224 6d6f  opts=$(grep "$mo
│ │ │ -001b2360: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001b2370: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ -001b2380: 6162 207c 2061 776b 2027 7b70 7269 6e74  ab | awk '{print
│ │ │ -001b2390: 2024 347d 2729 0a20 2020 2020 2020 2073   $4}').        s
│ │ │ -001b23a0: 6564 202d 6920 2273 7c5c 2824 7b6d 6f75  ed -i "s|\(${mou
│ │ │ -001b23b0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001b23c0: 6567 6578 707d 2e2a 247b 7072 6576 696f  egexp}.*${previo
│ │ │ -001b23d0: 7573 5f6d 6f75 6e74 5f6f 7074 737d 5c29  us_mount_opts}\)
│ │ │ -001b23e0: 7c5c 312c 6e6f 7375 6964 7c22 202f 6574  |\1,nosuid|" /et
│ │ │ -001b23f0: 632f 6673 7461 620a 2020 2020 6669 0a0a  c/fstab.    fi..
│ │ │ -001b2400: 0a20 2020 2069 6620 6d6b 6469 7220 2d70  .    if mkdir -p
│ │ │ -001b2410: 2022 2f76 6172 2f6c 6f67 2f61 7564 6974   "/var/log/audit
│ │ │ -001b2420: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ -001b2430: 6966 206d 6f75 6e74 706f 696e 7420 2d71  if mountpoint -q
│ │ │ -001b2440: 2022 2f76 6172 2f6c 6f67 2f61 7564 6974   "/var/log/audit
│ │ │ -001b2450: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ -001b2460: 2020 2020 6d6f 756e 7420 2d6f 2072 656d      mount -o rem
│ │ │ -001b2470: 6f75 6e74 202d 2d74 6172 6765 7420 222f  ount --target "/
│ │ │ -001b2480: 7661 722f 6c6f 672f 6175 6469 7422 0a20  var/log/audit". 
│ │ │ -001b2490: 2020 2020 2020 2066 690a 2020 2020 6669         fi.    fi
│ │ │ -001b24a0: 0a7d 0a0a 7065 7266 6f72 6d5f 7265 6d65  .}..perform_reme
│ │ │ -001b24b0: 6469 6174 696f 6e0a 0a65 6c73 650a 2020  diation..else.  
│ │ │ -001b24c0: 2020 2667 743b 2661 6d70 3b32 2065 6368    >&2 ech
│ │ │ -001b24d0: 6f20 2752 656d 6564 6961 7469 6f6e 2069  o 'Remediation i
│ │ │ -001b24e0: 7320 6e6f 7420 6170 706c 6963 6162 6c65  s not applicable
│ │ │ -001b24f0: 2c20 6e6f 7468 696e 6720 7761 7320 646f  , nothing was do
│ │ │ -001b2500: 6e65 270a 6669 0a3c 2f63 6f64 653e 3c2f  ne'.fi.
< │ │ │ +001afdf0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +001afe00: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +001afe20: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +001afe30: 3c74 643e 6869 6768 3c2f 7464 3e3c 2f74 highReboot │ │ │ +001afe50: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +001afe60: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +001afe80: 7464 3e63 6f6e 6669 6775 7265 3c2f 7464 td>configure

- name: │ │ │ +001afeb0: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ +001afec0: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ +001afed0: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ +001afee0: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ +001afef0: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ +001aff00: 302d 3533 2d41 432d 360a 2020 2d20 4e49 0-53-AC-6. - NI │ │ │ +001aff10: 5354 2d38 3030 2d35 332d 4143 2d36 2831 ST-800-53-AC-6(1 │ │ │ +001aff20: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ +001aff30: 332d 434d 2d36 2861 290a 2020 2d20 4e49 3-CM-6(a). - NI │ │ │ +001aff40: 5354 2d38 3030 2d35 332d 434d 2d37 2861 ST-800-53-CM-7(a │ │ │ +001aff50: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ +001aff60: 332d 434d 2d37 2862 290a 2020 2d20 4e49 3-CM-7(b). - NI │ │ │ +001aff70: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20 ST-800-53-MP-7. │ │ │ +001aff80: 202d 2063 6f6e 6669 6775 7265 5f73 7472 - configure_str │ │ │ +001aff90: 6174 6567 790a 2020 2d20 6869 6768 5f64 ategy. - high_d │ │ │ +001affa0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f isruption. - lo │ │ │ +001affb0: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ +001affc0: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ +001affd0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f . - mount_optio │ │ │ +001affe0: 6e5f 7661 725f 6c6f 675f 6175 6469 745f n_var_log_audit_ │ │ │ +001afff0: 6e6f 7375 6964 0a20 202d 206e 6f5f 7265 nosuid. - no_re │ │ │ +001b0000: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e boot_needed..- n │ │ │ +001b0010: 616d 653a 2027 4164 6420 6e6f 7375 6964 ame: 'Add nosuid │ │ │ +001b0020: 204f 7074 696f 6e20 746f 202f 7661 722f Option to /var/ │ │ │ +001b0030: 6c6f 672f 6175 6469 743a 2043 6865 636b log/audit: Check │ │ │ +001b0040: 2069 6e66 6f72 6d61 7469 6f6e 2061 7373 information ass │ │ │ +001b0050: 6f63 6961 7465 6420 746f 206d 6f75 6e74 ociated to mount │ │ │ +001b0060: 706f 696e 7427 0a20 2061 6e73 6962 6c65 point'. ansible │ │ │ +001b0070: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64 .builtin.command │ │ │ +001b0080: 3a20 6669 6e64 6d6e 7420 2d2d 6673 7461 : findmnt --fsta │ │ │ +001b0090: 6220 272f 7661 722f 6c6f 672f 6175 6469 b '/var/log/audi │ │ │ +001b00a0: 7427 0a20 2072 6567 6973 7465 723a 2064 t'. register: d │ │ │ +001b00b0: 6576 6963 655f 6e61 6d65 0a20 2066 6169 evice_name. fai │ │ │ +001b00c0: 6c65 645f 7768 656e 3a20 6465 7669 6365 led_when: device │ │ │ +001b00d0: 5f6e 616d 652e 7263 2026 6774 3b20 310a _name.rc > 1. │ │ │ +001b00e0: 2020 6368 616e 6765 645f 7768 656e 3a20 changed_when: │ │ │ +001b00f0: 6661 6c73 650a 2020 6368 6563 6b5f 6d6f false. check_mo │ │ │ +001b0100: 6465 3a20 6661 6c73 650a 2020 7768 656e de: false. when │ │ │ +001b0110: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b :. - ( not ( "k │ │ │ +001b0120: 6572 6e65 6c22 2069 6e20 616e 7369 626c ernel" in ansibl │ │ │ +001b0130: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ +001b0140: 2061 6e64 2022 7270 6d2d 6f73 7472 6565 and "rpm-ostree │ │ │ +001b0150: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ +001b0160: 7473 2e70 6163 6b61 6765 730a 2020 2020 ts.packages. │ │ │ +001b0170: 616e 6420 2262 6f6f 7463 2220 696e 2061 and "bootc" in a │ │ │ +001b0180: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ +001b0190: 6b61 6765 7320 616e 6420 6e6f 7420 226f kages and not "o │ │ │ +001b01a0: 7065 6e73 6869 6674 2d6b 7562 656c 6574 penshift-kubelet │ │ │ +001b01b0: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ +001b01c0: 7473 2e70 6163 6b61 6765 730a 2020 2020 ts.packages. │ │ │ +001b01d0: 616e 6420 226f 7374 7265 6522 2069 6e20 and "ostree" in │ │ │ +001b01e0: 616e 7369 626c 655f 7072 6f63 5f63 6d64 ansible_proc_cmd │ │ │ +001b01f0: 6c69 6e65 2029 2061 6e64 206e 6f74 2028 line ) and not ( │ │ │ +001b0200: 2061 6e73 6962 6c65 5f76 6972 7475 616c ansible_virtual │ │ │ +001b0210: 697a 6174 696f 6e5f 7479 7065 2069 6e0a ization_type in. │ │ │ +001b0220: 2020 2020 5b22 646f 636b 6572 222c 2022 ["docker", " │ │ │ +001b0230: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20 lxc", "openvz", │ │ │ +001b0240: 2270 6f64 6d61 6e22 2c20 2263 6f6e 7461 "podman", "conta │ │ │ +001b0250: 696e 6572 225d 2029 2029 0a20 202d 2027 iner"] ) ). - ' │ │ │ +001b0260: 222f 7661 722f 6c6f 672f 6175 6469 7422 "/var/log/audit" │ │ │ +001b0270: 2069 6e20 616e 7369 626c 655f 6d6f 756e in ansible_moun │ │ │ +001b0280: 7473 207c 206d 6170 2861 7474 7269 6275 ts | map(attribu │ │ │ +001b0290: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69 te="mount") | li │ │ │ +001b02a0: 7374 270a 2020 7461 6773 3a0a 2020 2d20 st'. tags:. - │ │ │ +001b02b0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36 NIST-800-53-AC-6 │ │ │ +001b02c0: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ +001b02d0: 2d41 432d 3628 3129 0a20 202d 204e 4953 -AC-6(1). - NIS │ │ │ +001b02e0: 542d 3830 302d 3533 2d43 4d2d 3628 6129 T-800-53-CM-6(a) │ │ │ +001b02f0: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ +001b0300: 2d43 4d2d 3728 6129 0a20 202d 204e 4953 -CM-7(a). - NIS │ │ │ +001b0310: 542d 3830 302d 3533 2d43 4d2d 3728 6229 T-800-53-CM-7(b) │ │ │ +001b0320: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ +001b0330: 2d4d 502d 370a 2020 2d20 636f 6e66 6967 -MP-7. - config │ │ │ +001b0340: 7572 655f 7374 7261 7465 6779 0a20 202d ure_strategy. - │ │ │ +001b0350: 2068 6967 685f 6469 7372 7570 7469 6f6e high_disruption │ │ │ +001b0360: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ +001b0370: 6974 790a 2020 2d20 6d65 6469 756d 5f73 ity. - medium_s │ │ │ +001b0380: 6576 6572 6974 790a 2020 2d20 6d6f 756e everity. - moun │ │ │ +001b0390: 745f 6f70 7469 6f6e 5f76 6172 5f6c 6f67 t_option_var_log │ │ │ +001b03a0: 5f61 7564 6974 5f6e 6f73 7569 640a 2020 _audit_nosuid. │ │ │ +001b03b0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ +001b03c0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464 ed..- name: 'Add │ │ │ +001b03d0: 206e 6f73 7569 6420 4f70 7469 6f6e 2074 nosuid Option t │ │ │ +001b03e0: 6f20 2f76 6172 2f6c 6f67 2f61 7564 6974 o /var/log/audit │ │ │ +001b03f0: 3a20 4372 6561 7465 206d 6f75 6e74 5f69 : Create mount_i │ │ │ +001b0400: 6e66 6f20 6469 6374 696f 6e61 7279 2076 nfo dictionary v │ │ │ +001b0410: 6172 6961 626c 6527 0a20 2073 6574 5f66 ariable'. set_f │ │ │ +001b0420: 6163 743a 0a20 2020 206d 6f75 6e74 5f69 act:. mount_i │ │ │ +001b0430: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69 nfo: '{{ mount_i │ │ │ +001b0440: 6e66 6f7c 6465 6661 756c 7428 7b7d 297c nfo|default({})| │ │ │ +001b0450: 636f 6d62 696e 6528 7b69 7465 6d2e 303a combine({item.0: │ │ │ +001b0460: 2069 7465 6d2e 317d 2920 7d7d 270a 2020 item.1}) }}'. │ │ │ +001b0470: 7769 7468 5f74 6f67 6574 6865 723a 0a20 with_together:. │ │ │ +001b0480: 202d 2027 7b7b 2064 6576 6963 655f 6e61 - '{{ device_na │ │ │ +001b0490: 6d65 2e73 7464 6f75 745f 6c69 6e65 735b me.stdout_lines[ │ │ │ +001b04a0: 305d 2e73 706c 6974 2829 207c 206d 6170 0].split() | map │ │ │ +001b04b0: 2827 276c 6f77 6572 2727 2920 7c20 6c69 (''lower'') | li │ │ │ +001b04c0: 7374 207d 7d27 0a20 202d 2027 7b7b 2064 st }}'. - '{{ d │ │ │ +001b04d0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75 evice_name.stdou │ │ │ +001b04e0: 745f 6c69 6e65 735b 315d 2e73 706c 6974 t_lines[1].split │ │ │ +001b04f0: 2829 207c 206c 6973 7420 7d7d 270a 2020 () | list }}'. │ │ │ +001b0500: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420 when:. - ( not │ │ │ +001b0510: 2820 226b 6572 6e65 6c22 2069 6e20 616e ( "kernel" in an │ │ │ +001b0520: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +001b0530: 6167 6573 2061 6e64 2022 7270 6d2d 6f73 ages and "rpm-os │ │ │ +001b0540: 7472 6565 2220 696e 2061 6e73 6962 6c65 tree" in ansible │ │ │ +001b0550: 5f66 6163 7473 2e70 6163 6b61 6765 730a _facts.packages. │ │ │ +001b0560: 2020 2020 616e 6420 2262 6f6f 7463 2220 and "bootc" │ │ │ +001b0570: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ +001b0580: 2e70 6163 6b61 6765 7320 616e 6420 6e6f .packages and no │ │ │ +001b0590: 7420 226f 7065 6e73 6869 6674 2d6b 7562 t "openshift-kub │ │ │ +001b05a0: 656c 6574 2220 696e 2061 6e73 6962 6c65 elet" in ansible │ │ │ +001b05b0: 5f66 6163 7473 2e70 6163 6b61 6765 730a _facts.packages. │ │ │ +001b05c0: 2020 2020 616e 6420 226f 7374 7265 6522 and "ostree" │ │ │ +001b05d0: 2069 6e20 616e 7369 626c 655f 7072 6f63 in ansible_proc │ │ │ +001b05e0: 5f63 6d64 6c69 6e65 2029 2061 6e64 206e _cmdline ) and n │ │ │ +001b05f0: 6f74 2028 2061 6e73 6962 6c65 5f76 6972 ot ( ansible_vir │ │ │ +001b0600: 7475 616c 697a 6174 696f 6e5f 7479 7065 tualization_type │ │ │ +001b0610: 2069 6e0a 2020 2020 5b22 646f 636b 6572 in. ["docker │ │ │ +001b0620: 222c 2022 6c78 6322 2c20 226f 7065 6e76 ", "lxc", "openv │ │ │ +001b0630: 7a22 2c20 2270 6f64 6d61 6e22 2c20 2263 z", "podman", "c │ │ │ +001b0640: 6f6e 7461 696e 6572 225d 2029 2029 0a20 ontainer"] ) ). │ │ │ +001b0650: 202d 2027 222f 7661 722f 6c6f 672f 6175 - '"/var/log/au │ │ │ +001b0660: 6469 7422 2069 6e20 616e 7369 626c 655f dit" in ansible_ │ │ │ +001b0670: 6d6f 756e 7473 207c 206d 6170 2861 7474 mounts | map(att │ │ │ +001b0680: 7269 6275 7465 3d22 6d6f 756e 7422 2920 ribute="mount") │ │ │ +001b0690: 7c20 6c69 7374 270a 2020 2d20 6465 7669 | list'. - devi │ │ │ +001b06a0: 6365 5f6e 616d 652e 7374 646f 7574 2069 ce_name.stdout i │ │ │ +001b06b0: 7320 6465 6669 6e65 6420 616e 6420 6465 s defined and de │ │ │ +001b06c0: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ +001b06d0: 5f6c 696e 6573 2069 7320 6465 6669 6e65 _lines is define │ │ │ +001b06e0: 640a 2020 2d20 2864 6576 6963 655f 6e61 d. - (device_na │ │ │ +001b06f0: 6d65 2e73 7464 6f75 7420 7c20 6c65 6e67 me.stdout | leng │ │ │ +001b0700: 7468 2026 6774 3b20 3029 0a20 2074 6167 th > 0). tag │ │ │ +001b0710: 733a 0a20 202d 204e 4953 542d 3830 302d s:. - NIST-800- │ │ │ +001b0720: 3533 2d41 432d 360a 2020 2d20 4e49 5354 53-AC-6. - NIST │ │ │ +001b0730: 2d38 3030 2d35 332d 4143 2d36 2831 290a -800-53-AC-6(1). │ │ │ +001b0740: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ +001b0750: 434d 2d36 2861 290a 2020 2d20 4e49 5354 CM-6(a). - NIST │ │ │ +001b0760: 2d38 3030 2d35 332d 434d 2d37 2861 290a -800-53-CM-7(a). │ │ │ +001b0770: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ +001b0780: 434d 2d37 2862 290a 2020 2d20 4e49 5354 CM-7(b). - NIST │ │ │ +001b0790: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d -800-53-MP-7. - │ │ │ +001b07a0: 2063 6f6e 6669 6775 7265 5f73 7472 6174 configure_strat │ │ │ +001b07b0: 6567 790a 2020 2d20 6869 6768 5f64 6973 egy. - high_dis │ │ │ +001b07c0: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f ruption. - low_ │ │ │ +001b07d0: 636f 6d70 6c65 7869 7479 0a20 202d 206d complexity. - m │ │ │ +001b07e0: 6564 6975 6d5f 7365 7665 7269 7479 0a20 edium_severity. │ │ │ +001b07f0: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f - mount_option_ │ │ │ +001b0800: 7661 725f 6c6f 675f 6175 6469 745f 6e6f var_log_audit_no │ │ │ +001b0810: 7375 6964 0a20 202d 206e 6f5f 7265 626f suid. - no_rebo │ │ │ +001b0820: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d ot_needed..- nam │ │ │ +001b0830: 653a 2027 4164 6420 6e6f 7375 6964 204f e: 'Add nosuid O │ │ │ +001b0840: 7074 696f 6e20 746f 202f 7661 722f 6c6f ption to /var/lo │ │ │ +001b0850: 672f 6175 6469 743a 2049 6620 2f76 6172 g/audit: If /var │ │ │ +001b0860: 2f6c 6f67 2f61 7564 6974 206e 6f74 206d /log/audit not m │ │ │ +001b0870: 6f75 6e74 6564 2c20 6372 6166 740a 2020 ounted, craft. │ │ │ +001b0880: 2020 6d6f 756e 745f 696e 666f 206d 616e mount_info man │ │ │ +001b0890: 7561 6c6c 7927 0a20 2073 6574 5f66 6163 ually'. set_fac │ │ │ +001b08a0: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66 t:. mount_inf │ │ │ +001b08b0: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66 o: '{{ mount_inf │ │ │ +001b08c0: 6f7c 6465 6661 756c 7428 7b7d 297c 636f o|default({})|co │ │ │ +001b08d0: 6d62 696e 6528 7b69 7465 6d2e 303a 2069 mbine({item.0: i │ │ │ +001b08e0: 7465 6d2e 317d 2920 7d7d 270a 2020 7769 tem.1}) }}'. wi │ │ │ +001b08f0: 7468 5f74 6f67 6574 6865 723a 0a20 202d th_together:. - │ │ │ +001b0900: 202d 2074 6172 6765 740a 2020 2020 2d20 - target. - │ │ │ +001b0910: 736f 7572 6365 0a20 2020 202d 2066 7374 source. - fst │ │ │ +001b0920: 7970 650a 2020 2020 2d20 6f70 7469 6f6e ype. - option │ │ │ +001b0930: 730a 2020 2d20 2d20 2f76 6172 2f6c 6f67 s. - - /var/log │ │ │ +001b0940: 2f61 7564 6974 0a20 2020 202d 2027 270a /audit. - ''. │ │ │ +001b0950: 2020 2020 2d20 2727 0a20 2020 202d 2064 - ''. - d │ │ │ +001b0960: 6566 6175 6c74 730a 2020 7768 656e 3a0a efaults. when:. │ │ │ +001b0970: 2020 2d20 2820 6e6f 7420 2820 226b 6572 - ( not ( "ker │ │ │ +001b0980: 6e65 6c22 2069 6e20 616e 7369 626c 655f nel" in ansible_ │ │ │ +001b0990: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ +001b09a0: 6e64 2022 7270 6d2d 6f73 7472 6565 2220 nd "rpm-ostree" │ │ │ +001b09b0: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ +001b09c0: 2e70 6163 6b61 6765 730a 2020 2020 616e .packages. an │ │ │ +001b09d0: 6420 2262 6f6f 7463 2220 696e 2061 6e73 d "bootc" in ans │ │ │ +001b09e0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ +001b09f0: 6765 7320 616e 6420 6e6f 7420 226f 7065 ges and not "ope │ │ │ +001b0a00: 6e73 6869 6674 2d6b 7562 656c 6574 2220 nshift-kubelet" │ │ │ +001b0a10: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ +001b0a20: 2e70 6163 6b61 6765 730a 2020 2020 616e .packages. an │ │ │ +001b0a30: 6420 226f 7374 7265 6522 2069 6e20 616e d "ostree" in an │ │ │ +001b0a40: 7369 626c 655f 7072 6f63 5f63 6d64 6c69 sible_proc_cmdli │ │ │ +001b0a50: 6e65 2029 2061 6e64 206e 6f74 2028 2061 ne ) and not ( a │ │ │ +001b0a60: 6e73 6962 6c65 5f76 6972 7475 616c 697a nsible_virtualiz │ │ │ +001b0a70: 6174 696f 6e5f 7479 7065 2069 6e0a 2020 ation_type in. │ │ │ +001b0a80: 2020 5b22 646f 636b 6572 222c 2022 6c78 ["docker", "lx │ │ │ +001b0a90: 6322 2c20 226f 7065 6e76 7a22 2c20 2270 c", "openvz", "p │ │ │ +001b0aa0: 6f64 6d61 6e22 2c20 2263 6f6e 7461 696e odman", "contain │ │ │ +001b0ab0: 6572 225d 2029 2029 0a20 202d 2027 222f er"] ) ). - '"/ │ │ │ +001b0ac0: 7661 722f 6c6f 672f 6175 6469 7422 2069 var/log/audit" i │ │ │ +001b0ad0: 6e20 616e 7369 626c 655f 6d6f 756e 7473 n ansible_mounts │ │ │ +001b0ae0: 207c 206d 6170 2861 7474 7269 6275 7465 | map(attribute │ │ │ +001b0af0: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374 ="mount") | list │ │ │ +001b0b00: 270a 2020 2d20 2822 2d2d 6673 7461 6222 '. - ("--fstab" │ │ │ +001b0b10: 207c 206c 656e 6774 6820 3d3d 2030 290a | length == 0). │ │ │ +001b0b20: 2020 2d20 6465 7669 6365 5f6e 616d 652e - device_name. │ │ │ +001b0b30: 7374 646f 7574 2069 7320 6465 6669 6e65 stdout is define │ │ │ +001b0b40: 6420 616e 6420 6465 7669 6365 5f6e 616d d and device_nam │ │ │ +001b0b50: 652e 7374 646f 7574 5f6c 696e 6573 2069 e.stdout_lines i │ │ │ +001b0b60: 7320 6465 6669 6e65 640a 2020 2d20 2864 s defined. - (d │ │ │ +001b0b70: 6576 6963 655f 6e61 6d65 2e73 7464 6f75 evice_name.stdou │ │ │ +001b0b80: 7420 7c20 6c65 6e67 7468 203d 3d20 3029 t | length == 0) │ │ │ +001b0b90: 0a20 2074 6167 733a 0a20 202d 204e 4953 . tags:. - NIS │ │ │ +001b0ba0: 542d 3830 302d 3533 2d41 432d 360a 2020 T-800-53-AC-6. │ │ │ +001b0bb0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143 - NIST-800-53-AC │ │ │ +001b0bc0: 2d36 2831 290a 2020 2d20 4e49 5354 2d38 -6(1). - NIST-8 │ │ │ +001b0bd0: 3030 2d35 332d 434d 2d36 2861 290a 2020 00-53-CM-6(a). │ │ │ +001b0be0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ +001b0bf0: 2d37 2861 290a 2020 2d20 4e49 5354 2d38 -7(a). - NIST-8 │ │ │ +001b0c00: 3030 2d35 332d 434d 2d37 2862 290a 2020 00-53-CM-7(b). │ │ │ +001b0c10: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50 - NIST-800-53-MP │ │ │ +001b0c20: 2d37 0a20 202d 2063 6f6e 6669 6775 7265 -7. - configure │ │ │ +001b0c30: 5f73 7472 6174 6567 790a 2020 2d20 6869 _strategy. - hi │ │ │ +001b0c40: 6768 5f64 6973 7275 7074 696f 6e0a 2020 gh_disruption. │ │ │ +001b0c50: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479 - low_complexity │ │ │ +001b0c60: 0a20 202d 206d 6564 6975 6d5f 7365 7665 . - medium_seve │ │ │ +001b0c70: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f rity. - mount_o │ │ │ +001b0c80: 7074 696f 6e5f 7661 725f 6c6f 675f 6175 ption_var_log_au │ │ │ +001b0c90: 6469 745f 6e6f 7375 6964 0a20 202d 206e dit_nosuid. - n │ │ │ +001b0ca0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a o_reboot_needed. │ │ │ +001b0cb0: 0a2d 206e 616d 653a 2027 4164 6420 6e6f .- name: 'Add no │ │ │ +001b0cc0: 7375 6964 204f 7074 696f 6e20 746f 202f suid Option to / │ │ │ +001b0cd0: 7661 722f 6c6f 672f 6175 6469 743a 204d var/log/audit: M │ │ │ +001b0ce0: 616b 6520 7375 7265 206e 6f73 7569 6420 ake sure nosuid │ │ │ +001b0cf0: 6f70 7469 6f6e 2069 7320 7061 7274 206f option is part o │ │ │ +001b0d00: 6620 7468 650a 2020 2020 746f 202f 7661 f the. to /va │ │ │ +001b0d10: 722f 6c6f 672f 6175 6469 7420 6f70 7469 r/log/audit opti │ │ │ +001b0d20: 6f6e 7327 0a20 2073 6574 5f66 6163 743a ons'. set_fact: │ │ │ +001b0d30: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a . mount_info: │ │ │ +001b0d40: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f20 '{{ mount_info │ │ │ +001b0d50: 7c20 636f 6d62 696e 6528 207b 2727 6f70 | combine( {''op │ │ │ +001b0d60: 7469 6f6e 7327 273a 2727 2727 7e28 6d6f tions'':''''~(mo │ │ │ +001b0d70: 756e 745f 696e 666f 2e6f 7074 696f 6e73 unt_info.options │ │ │ +001b0d80: 207c 0a20 2020 2020 2064 6566 6175 6c74 |. default │ │ │ +001b0d90: 2827 2727 2729 297e 2827 272c 2727 2069 (''''))~('','' i │ │ │ +001b0da0: 6620 286d 6f75 6e74 5f69 6e66 6f2e 6f70 f (mount_info.op │ │ │ +001b0db0: 7469 6f6e 7320 7c20 6465 6661 756c 7428 tions | default( │ │ │ +001b0dc0: 2727 2727 2929 2065 6c73 6520 2727 2727 '''')) else '''' │ │ │ +001b0dd0: 297e 2727 6e6f 7375 6964 2727 0a20 2020 )~''nosuid''. │ │ │ +001b0de0: 2020 207d 2920 7d7d 270a 2020 7768 656e }) }}'. when │ │ │ +001b0df0: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b :. - ( not ( "k │ │ │ +001b0e00: 6572 6e65 6c22 2069 6e20 616e 7369 626c ernel" in ansibl │ │ │ +001b0e10: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ +001b0e20: 2061 6e64 2022 7270 6d2d 6f73 7472 6565 and "rpm-ostree │ │ │ +001b0e30: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ +001b0e40: 7473 2e70 6163 6b61 6765 730a 2020 2020 ts.packages. │ │ │ +001b0e50: 616e 6420 2262 6f6f 7463 2220 696e 2061 and "bootc" in a │ │ │ +001b0e60: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ +001b0e70: 6b61 6765 7320 616e 6420 6e6f 7420 226f kages and not "o │ │ │ +001b0e80: 7065 6e73 6869 6674 2d6b 7562 656c 6574 penshift-kubelet │ │ │ +001b0e90: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ +001b0ea0: 7473 2e70 6163 6b61 6765 730a 2020 2020 ts.packages. │ │ │ +001b0eb0: 616e 6420 226f 7374 7265 6522 2069 6e20 and "ostree" in │ │ │ +001b0ec0: 616e 7369 626c 655f 7072 6f63 5f63 6d64 ansible_proc_cmd │ │ │ +001b0ed0: 6c69 6e65 2029 2061 6e64 206e 6f74 2028 line ) and not ( │ │ │ +001b0ee0: 2061 6e73 6962 6c65 5f76 6972 7475 616c ansible_virtual │ │ │ +001b0ef0: 697a 6174 696f 6e5f 7479 7065 2069 6e0a ization_type in. │ │ │ +001b0f00: 2020 2020 5b22 646f 636b 6572 222c 2022 ["docker", " │ │ │ +001b0f10: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20 lxc", "openvz", │ │ │ +001b0f20: 2270 6f64 6d61 6e22 2c20 2263 6f6e 7461 "podman", "conta │ │ │ +001b0f30: 696e 6572 225d 2029 2029 0a20 202d 2027 iner"] ) ). - ' │ │ │ +001b0f40: 222f 7661 722f 6c6f 672f 6175 6469 7422 "/var/log/audit" │ │ │ +001b0f50: 2069 6e20 616e 7369 626c 655f 6d6f 756e in ansible_moun │ │ │ +001b0f60: 7473 207c 206d 6170 2861 7474 7269 6275 ts | map(attribu │ │ │ +001b0f70: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69 te="mount") | li │ │ │ +001b0f80: 7374 270a 2020 2d20 6d6f 756e 745f 696e st'. - mount_in │ │ │ +001b0f90: 666f 2069 7320 6465 6669 6e65 6420 616e fo is defined an │ │ │ +001b0fa0: 6420 226e 6f73 7569 6422 206e 6f74 2069 d "nosuid" not i │ │ │ +001b0fb0: 6e20 286d 6f75 6e74 5f69 6e66 6f2e 6f70 n (mount_info.op │ │ │ +001b0fc0: 7469 6f6e 7320 7c20 6465 6661 756c 7428 tions | default( │ │ │ +001b0fd0: 2727 2929 0a20 2074 6167 733a 0a20 202d '')). tags:. - │ │ │ +001b0fe0: 204e 4953 542d 3830 302d 3533 2d41 432d NIST-800-53-AC- │ │ │ +001b0ff0: 360a 2020 2d20 4e49 5354 2d38 3030 2d35 6. - NIST-800-5 │ │ │ +001b1000: 332d 4143 2d36 2831 290a 2020 2d20 4e49 3-AC-6(1). - NI │ │ │ +001b1010: 5354 2d38 3030 2d35 332d 434d 2d36 2861 ST-800-53-CM-6(a │ │ │ +001b1020: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ +001b1030: 332d 434d 2d37 2861 290a 2020 2d20 4e49 3-CM-7(a). - NI │ │ │ +001b1040: 5354 2d38 3030 2d35 332d 434d 2d37 2862 ST-800-53-CM-7(b │ │ │ +001b1050: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ +001b1060: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669 3-MP-7. - confi │ │ │ +001b1070: 6775 7265 5f73 7472 6174 6567 790a 2020 gure_strategy. │ │ │ +001b1080: 2d20 6869 6768 5f64 6973 7275 7074 696f - high_disruptio │ │ │ +001b1090: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65 n. - low_comple │ │ │ +001b10a0: 7869 7479 0a20 202d 206d 6564 6975 6d5f xity. - medium_ │ │ │ +001b10b0: 7365 7665 7269 7479 0a20 202d 206d 6f75 severity. - mou │ │ │ +001b10c0: 6e74 5f6f 7074 696f 6e5f 7661 725f 6c6f nt_option_var_lo │ │ │ +001b10d0: 675f 6175 6469 745f 6e6f 7375 6964 0a20 g_audit_nosuid. │ │ │ +001b10e0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ +001b10f0: 6465 640a 0a2d 206e 616d 653a 2027 4164 ded..- name: 'Ad │ │ │ +001b1100: 6420 6e6f 7375 6964 204f 7074 696f 6e20 d nosuid Option │ │ │ +001b1110: 746f 202f 7661 722f 6c6f 672f 6175 6469 to /var/log/audi │ │ │ +001b1120: 743a 2045 6e73 7572 6520 2f76 6172 2f6c t: Ensure /var/l │ │ │ +001b1130: 6f67 2f61 7564 6974 2069 7320 6d6f 756e og/audit is moun │ │ │ +001b1140: 7465 6420 7769 7468 0a20 2020 206e 6f73 ted with. nos │ │ │ +001b1150: 7569 6420 6f70 7469 6f6e 270a 2020 616e uid option'. an │ │ │ +001b1160: 7369 626c 652e 706f 7369 782e 6d6f 756e sible.posix.moun │ │ │ +001b1170: 743a 0a20 2020 2070 6174 683a 202f 7661 t:. path: /va │ │ │ +001b1180: 722f 6c6f 672f 6175 6469 740a 2020 2020 r/log/audit. │ │ │ +001b1190: 7372 633a 2027 7b7b 206d 6f75 6e74 5f69 src: '{{ mount_i │ │ │ +001b11a0: 6e66 6f2e 736f 7572 6365 207c 2064 6566 nfo.source | def │ │ │ +001b11b0: 6175 6c74 2827 2727 2729 207d 7d27 0a20 ault('''') }}'. │ │ │ +001b11c0: 2020 206f 7074 733a 2027 7b7b 206d 6f75 opts: '{{ mou │ │ │ +001b11d0: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320 nt_info.options │ │ │ +001b11e0: 7c20 6465 6661 756c 7428 2727 2727 2920 | default('''') │ │ │ +001b11f0: 7d7d 270a 2020 2020 7374 6174 653a 206d }}'. state: m │ │ │ +001b1200: 6f75 6e74 6564 0a20 2020 2066 7374 7970 ounted. fstyp │ │ │ +001b1210: 653a 2027 7b7b 206d 6f75 6e74 5f69 6e66 e: '{{ mount_inf │ │ │ +001b1220: 6f2e 6673 7479 7065 207c 2064 6566 6175 o.fstype | defau │ │ │ +001b1230: 6c74 2827 2727 2729 207d 7d27 0a20 2072 lt('''') }}'. r │ │ │ +001b1240: 6567 6973 7465 723a 206d 6f75 6e74 5f72 egister: mount_r │ │ │ +001b1250: 6573 756c 740a 2020 6661 696c 6564 5f77 esult. failed_w │ │ │ +001b1260: 6865 6e3a 0a20 202d 206d 6f75 6e74 5f72 hen:. - mount_r │ │ │ +001b1270: 6573 756c 7420 6973 2066 6169 6c65 640a esult is failed. │ │ │ +001b1280: 2020 2d20 2727 2774 6172 6765 7420 6973 - '''target is │ │ │ +001b1290: 2062 7573 7927 2720 6e6f 7420 696e 2028 busy'' not in ( │ │ │ +001b12a0: 6d6f 756e 745f 7265 7375 6c74 2e6d 7367 mount_result.msg │ │ │ +001b12b0: 207c 2064 6566 6175 6c74 2827 2727 2729 | default('''') │ │ │ +001b12c0: 2927 0a20 202d 2027 2727 616c 7265 6164 )'. - '''alread │ │ │ +001b12d0: 7920 6d6f 756e 7465 6427 2720 6e6f 7420 y mounted'' not │ │ │ +001b12e0: 696e 2028 6d6f 756e 745f 7265 7375 6c74 in (mount_result │ │ │ +001b12f0: 2e6d 7367 207c 2064 6566 6175 6c74 2827 .msg | default(' │ │ │ +001b1300: 2727 2729 2927 0a20 2077 6865 6e3a 0a20 '''))'. when:. │ │ │ +001b1310: 202d 2028 206e 6f74 2028 2022 6b65 726e - ( not ( "kern │ │ │ +001b1320: 656c 2220 696e 2061 6e73 6962 6c65 5f66 el" in ansible_f │ │ │ +001b1330: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ +001b1340: 6420 2272 706d 2d6f 7374 7265 6522 2069 d "rpm-ostree" i │ │ │ +001b1350: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001b1360: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ +001b1370: 2022 626f 6f74 6322 2069 6e20 616e 7369 "bootc" in ansi │ │ │ +001b1380: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +001b1390: 6573 2061 6e64 206e 6f74 2022 6f70 656e es and not "open │ │ │ +001b13a0: 7368 6966 742d 6b75 6265 6c65 7422 2069 shift-kubelet" i │ │ │ +001b13b0: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001b13c0: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ +001b13d0: 2022 6f73 7472 6565 2220 696e 2061 6e73 "ostree" in ans │ │ │ +001b13e0: 6962 6c65 5f70 726f 635f 636d 646c 696e ible_proc_cmdlin │ │ │ +001b13f0: 6520 2920 616e 6420 6e6f 7420 2820 616e e ) and not ( an │ │ │ +001b1400: 7369 626c 655f 7669 7274 7561 6c69 7a61 sible_virtualiza │ │ │ +001b1410: 7469 6f6e 5f74 7970 6520 696e 0a20 2020 tion_type in. │ │ │ +001b1420: 205b 2264 6f63 6b65 7222 2c20 226c 7863 ["docker", "lxc │ │ │ +001b1430: 222c 2022 6f70 656e 767a 222c 2022 706f ", "openvz", "po │ │ │ +001b1440: 646d 616e 222c 2022 636f 6e74 6169 6e65 dman", "containe │ │ │ +001b1450: 7222 5d20 2920 290a 2020 2d20 2722 2f76 r"] ) ). - '"/v │ │ │ +001b1460: 6172 2f6c 6f67 2f61 7564 6974 2220 696e ar/log/audit" in │ │ │ +001b1470: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320 ansible_mounts │ │ │ +001b1480: 7c20 6d61 7028 6174 7472 6962 7574 653d | map(attribute= │ │ │ +001b1490: 226d 6f75 6e74 2229 207c 206c 6973 7427 "mount") | list' │ │ │ +001b14a0: 0a20 202d 206d 6f75 6e74 5f69 6e66 6f20 . - mount_info │ │ │ +001b14b0: 6973 2064 6566 696e 6564 0a20 202d 2028 is defined. - ( │ │ │ +001b14c0: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ +001b14d0: 7574 2069 7320 6465 6669 6e65 6420 616e ut is defined an │ │ │ +001b14e0: 6420 2864 6576 6963 655f 6e61 6d65 2e73 d (device_name.s │ │ │ +001b14f0: 7464 6f75 7420 7c20 6c65 6e67 7468 2026 tdout | length & │ │ │ +001b1500: 6774 3b20 3029 2920 6f72 2028 222d 2d66 gt; 0)) or ("--f │ │ │ +001b1510: 7374 6162 220a 2020 2020 7c20 6c65 6e67 stab". | leng │ │ │ +001b1520: 7468 203d 3d20 3029 0a20 2074 6167 733a th == 0). tags: │ │ │ +001b1530: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ +001b1540: 2d41 432d 360a 2020 2d20 4e49 5354 2d38 -AC-6. - NIST-8 │ │ │ +001b1550: 3030 2d35 332d 4143 2d36 2831 290a 2020 00-53-AC-6(1). │ │ │ +001b1560: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ +001b1570: 2d36 2861 290a 2020 2d20 4e49 5354 2d38 -6(a). - NIST-8 │ │ │ +001b1580: 3030 2d35 332d 434d 2d37 2861 290a 2020 00-53-CM-7(a). │ │ │ +001b1590: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ +001b15a0: 2d37 2862 290a 2020 2d20 4e49 5354 2d38 -7(b). - NIST-8 │ │ │ +001b15b0: 3030 2d35 332d 4d50 2d37 0a20 202d 2063 00-53-MP-7. - c │ │ │ +001b15c0: 6f6e 6669 6775 7265 5f73 7472 6174 6567 onfigure_strateg │ │ │ +001b15d0: 790a 2020 2d20 6869 6768 5f64 6973 7275 y. - high_disru │ │ │ +001b15e0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f ption. - low_co │ │ │ +001b15f0: 6d70 6c65 7869 7479 0a20 202d 206d 6564 mplexity. - med │ │ │ +001b1600: 6975 6d5f 7365 7665 7269 7479 0a20 202d ium_severity. - │ │ │ +001b1610: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661 mount_option_va │ │ │ +001b1620: 725f 6c6f 675f 6175 6469 745f 6e6f 7375 r_log_audit_nosu │ │ │ +001b1630: 6964 0a20 202d 206e 6f5f 7265 626f 6f74 id. - no_reboot │ │ │ +001b1640: 5f6e 6565 6465 640a 3c2f 636f 6465 3e3c _needed.< │ │ │ +001b1650: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>

Remediat │ │ │ +001b1700: 696f 6e20 5368 656c 6c20 7363 7269 7074 ion Shell script │ │ │ +001b1710: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Reboot:false │ │ │ +001b17b0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 # Remedi │ │ │ +001b17d0: 6174 696f 6e20 6973 2061 7070 6c69 6361 ation is applica │ │ │ +001b17e0: 626c 6520 6f6e 6c79 2069 6e20 6365 7274 ble only in cert │ │ │ +001b17f0: 6169 6e20 706c 6174 666f 726d 730a 6966 ain platforms.if │ │ │ +001b1800: 2028 2021 2028 207b 2072 706d 202d 2d71 ( ! ( { rpm --q │ │ │ +001b1810: 7569 6574 202d 7120 6b65 726e 656c 203b uiet -q kernel ; │ │ │ +001b1820: 7d20 2661 6d70 3b26 616d 703b 207b 2072 } && { r │ │ │ +001b1830: 706d 202d 2d71 7569 6574 202d 7120 7270 pm --quiet -q rp │ │ │ +001b1840: 6d2d 6f73 7472 6565 203b 7d20 2661 6d70 m-ostree ;} & │ │ │ +001b1850: 3b26 616d 703b 207b 2072 706d 202d 2d71 ;& { rpm --q │ │ │ +001b1860: 7569 6574 202d 7120 626f 6f74 6320 3b7d uiet -q bootc ;} │ │ │ +001b1870: 2026 616d 703b 2661 6d70 3b20 7b20 2120 && { ! │ │ │ +001b1880: 7270 6d20 2d2d 7175 6965 7420 2d71 206f rpm --quiet -q o │ │ │ +001b1890: 7065 6e73 6869 6674 2d6b 7562 656c 6574 penshift-kubelet │ │ │ +001b18a0: 203b 7d20 2661 6d70 3b26 616d 703b 2028 ;} && ( │ │ │ +001b18b0: 5b20 2d66 202f 7275 6e2f 6f73 7472 6565 [ -f /run/ostree │ │ │ +001b18c0: 2d62 6f6f 7465 6420 5d20 7c7c 205b 202d -booted ] || [ - │ │ │ +001b18d0: 4c20 2f6f 7374 7265 6520 5d29 2029 2026 L /ostree ]) ) & │ │ │ +001b18e0: 616d 703b 2661 6d70 3b20 2120 2820 5b20 amp;& ! ( [ │ │ │ +001b18f0: 2d66 202f 2e64 6f63 6b65 7265 6e76 205d -f /.dockerenv ] │ │ │ +001b1900: 207c 7c20 5b20 2d66 202f 7275 6e2f 2e63 || [ -f /run/.c │ │ │ +001b1910: 6f6e 7461 696e 6572 656e 7620 5d20 2920 ontainerenv ] ) │ │ │ +001b1920: 2920 2661 6d70 3b26 616d 703b 207b 2028 ) && { ( │ │ │ +001b1930: 2066 696e 646d 6e74 202d 2d6b 6572 6e65 findmnt --kerne │ │ │ +001b1940: 6c20 222f 7661 722f 6c6f 672f 6175 6469 l "/var/log/audi │ │ │ +001b1950: 7422 2026 6774 3b20 2f64 6576 2f6e 756c t" > /dev/nul │ │ │ +001b1960: 6c20 7c7c 2066 696e 646d 6e74 202d 2d66 l || findmnt --f │ │ │ +001b1970: 7374 6162 2022 2f76 6172 2f6c 6f67 2f61 stab "/var/log/a │ │ │ +001b1980: 7564 6974 2220 2667 743b 202f 6465 762f udit" > /dev/ │ │ │ +001b1990: 6e75 6c6c 2029 3b20 7d3b 2074 6865 6e0a null ); }; then. │ │ │ +001b19a0: 0a66 756e 6374 696f 6e20 7065 7266 6f72 .function perfor │ │ │ +001b19b0: 6d5f 7265 6d65 6469 6174 696f 6e20 7b0a m_remediation {. │ │ │ +001b19c0: 0a20 2020 200a 2020 2020 2020 2020 2320 . . # │ │ │ +001b19d0: 7468 6520 6d6f 756e 7420 706f 696e 7420 the mount point │ │ │ +001b19e0: 2f76 6172 2f6c 6f67 2f61 7564 6974 2068 /var/log/audit h │ │ │ +001b19f0: 6173 2074 6f20 6265 2064 6566 696e 6564 as to be defined │ │ │ +001b1a00: 2069 6e20 2f65 7463 2f66 7374 6162 0a20 in /etc/fstab. │ │ │ +001b1a10: 2020 2020 2020 2023 2062 6566 6f72 6520 # before │ │ │ +001b1a20: 7468 6973 2072 656d 6564 6961 7469 6f6e this remediation │ │ │ +001b1a30: 2063 616e 2062 6520 6578 6563 7574 6564 can be executed │ │ │ +001b1a40: 2e20 496e 2063 6173 6520 6974 2069 7320 . In case it is │ │ │ +001b1a50: 6e6f 7420 6465 6669 6e65 642c 2074 6865 not defined, the │ │ │ +001b1a60: 0a20 2020 2020 2020 2023 2072 656d 6564 . # remed │ │ │ +001b1a70: 6961 7469 6f6e 2061 626f 7274 7320 616e iation aborts an │ │ │ +001b1a80: 6420 6e6f 2063 6861 6e67 6573 2072 6567 d no changes reg │ │ │ +001b1a90: 6172 6469 6e67 2074 6865 206d 6f75 6e74 arding the mount │ │ │ +001b1aa0: 2070 6f69 6e74 2061 7265 2064 6f6e 652e point are done. │ │ │ +001b1ab0: 0a20 2020 2020 2020 206d 6f75 6e74 5f70 . mount_p │ │ │ +001b1ac0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578 oint_match_regex │ │ │ +001b1ad0: 703d 2224 2870 7269 6e74 6620 225e 5b5b p="$(printf "^[[ │ │ │ +001b1ae0: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a :space:]]*[^#].* │ │ │ +001b1af0: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a [[:space:]]%s[[: │ │ │ +001b1b00: 7370 6163 653a 5d5d 2220 222f 7661 722f space:]]" "/var/ │ │ │ +001b1b10: 6c6f 672f 6175 6469 7422 2922 0a0a 2020 log/audit")".. │ │ │ +001b1b20: 2020 6772 6570 2022 246d 6f75 6e74 5f70 grep "$mount_p │ │ │ +001b1b30: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578 oint_match_regex │ │ │ +001b1b40: 7022 202d 7120 2f65 7463 2f66 7374 6162 p" -q /etc/fstab │ │ │ +001b1b50: 205c 0a20 2020 2020 2020 207c 7c20 7b20 \. || { │ │ │ +001b1b60: 6563 686f 2022 5468 6520 6d6f 756e 7420 echo "The mount │ │ │ +001b1b70: 706f 696e 7420 272f 7661 722f 6c6f 672f point '/var/log/ │ │ │ +001b1b80: 6175 6469 7427 2069 7320 6e6f 7420 6576 audit' is not ev │ │ │ +001b1b90: 656e 2069 6e20 2f65 7463 2f66 7374 6162 en in /etc/fstab │ │ │ +001b1ba0: 2c20 736f 2077 6520 6361 6e27 7420 7365 , so we can't se │ │ │ +001b1bb0: 7420 7570 206d 6f75 6e74 206f 7074 696f t up mount optio │ │ │ +001b1bc0: 6e73 2220 2667 743b 2661 6d70 3b32 3b0a ns" >&2;. │ │ │ +001b1bd0: 2020 2020 2020 2020 2020 2020 2020 2020 │ │ │ +001b1be0: 6563 686f 2022 4e6f 7420 7265 6d65 6469 echo "Not remedi │ │ │ +001b1bf0: 6174 696e 672c 2062 6563 6175 7365 2074 ating, because t │ │ │ +001b1c00: 6865 7265 2069 7320 6e6f 2072 6563 6f72 here is no recor │ │ │ +001b1c10: 6420 6f66 202f 7661 722f 6c6f 672f 6175 d of /var/log/au │ │ │ +001b1c20: 6469 7420 696e 202f 6574 632f 6673 7461 dit in /etc/fsta │ │ │ +001b1c30: 6222 2026 6774 3b26 616d 703b 323b 2072 b" >&2; r │ │ │ +001b1c40: 6574 7572 6e20 313b 207d 0a20 2020 200a eturn 1; }. . │ │ │ +001b1c50: 0a0a 2020 2020 6d6f 756e 745f 706f 696e .. mount_poin │ │ │ +001b1c60: 745f 6d61 7463 685f 7265 6765 7870 3d22 t_match_regexp=" │ │ │ +001b1c70: 2428 7072 696e 7466 2022 5e5b 5b3a 7370 $(printf "^[[:sp │ │ │ +001b1c80: 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a ace:]]*[^#].*[[: │ │ │ +001b1c90: 7370 6163 653a 5d5d 2573 5b5b 3a73 7061 space:]]%s[[:spa │ │ │ +001b1ca0: 6365 3a5d 5d22 202f 7661 722f 6c6f 672f ce:]]" /var/log/ │ │ │ +001b1cb0: 6175 6469 7429 220a 0a20 2020 2023 2049 audit)".. # I │ │ │ +001b1cc0: 6620 7468 6520 6d6f 756e 7420 706f 696e f the mount poin │ │ │ +001b1cd0: 7420 6973 206e 6f74 2069 6e20 2f65 7463 t is not in /etc │ │ │ +001b1ce0: 2f66 7374 6162 2c20 6765 7420 7072 6576 /fstab, get prev │ │ │ +001b1cf0: 696f 7573 206d 6f75 6e74 206f 7074 696f ious mount optio │ │ │ +001b1d00: 6e73 2066 726f 6d20 2f65 7463 2f6d 7461 ns from /etc/mta │ │ │ +001b1d10: 620a 2020 2020 6966 2021 2067 7265 7020 b. if ! grep │ │ │ +001b1d20: 2d71 2022 246d 6f75 6e74 5f70 6f69 6e74 -q "$mount_point │ │ │ +001b1d30: 5f6d 6174 6368 5f72 6567 6578 7022 202f _match_regexp" / │ │ │ +001b1d40: 6574 632f 6673 7461 623b 2074 6865 6e0a etc/fstab; then. │ │ │ +001b1d50: 2020 2020 2020 2020 2320 7275 6e74 696d # runtim │ │ │ +001b1d60: 6520 6f70 7473 2077 6974 686f 7574 2073 e opts without s │ │ │ +001b1d70: 6f6d 6520 6175 746f 6d61 7469 6320 6b65 ome automatic ke │ │ │ +001b1d80: 726e 656c 2f75 7365 7273 7061 6365 2d61 rnel/userspace-a │ │ │ +001b1d90: 6464 6564 2064 6566 6175 6c74 730a 2020 dded defaults. │ │ │ +001b1da0: 2020 2020 2020 7072 6576 696f 7573 5f6d previous_m │ │ │ +001b1db0: 6f75 6e74 5f6f 7074 733d 2428 6772 6570 ount_opts=$(grep │ │ │ +001b1dc0: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d "$mount_point_m │ │ │ +001b1dd0: 6174 6368 5f72 6567 6578 7022 202f 6574 atch_regexp" /et │ │ │ +001b1de0: 632f 6d74 6162 207c 2068 6561 6420 2d31 c/mtab | head -1 │ │ │ +001b1df0: 207c 2020 6177 6b20 277b 7072 696e 7420 | awk '{print │ │ │ +001b1e00: 2434 7d27 205c 0a20 2020 2020 2020 2020 $4}' \. │ │ │ +001b1e10: 2020 2020 2020 2020 2020 207c 2073 6564 | sed │ │ │ +001b1e20: 202d 4520 2273 2f28 7277 7c64 6566 6175 -E "s/(rw|defau │ │ │ +001b1e30: 6c74 737c 7365 636c 6162 656c 7c6e 6f73 lts|seclabel|nos │ │ │ +001b1e40: 7569 6429 282c 7c24 292f 2f67 3b73 2f2c uid)(,|$)//g;s/, │ │ │ +001b1e50: 242f 2f22 290a 2020 2020 2020 2020 5b20 $//"). [ │ │ │ +001b1e60: 2224 7072 6576 696f 7573 5f6d 6f75 6e74 "$previous_mount │ │ │ +001b1e70: 5f6f 7074 7322 205d 2026 616d 703b 2661 _opts" ] &&a │ │ │ +001b1e80: 6d70 3b20 7072 6576 696f 7573 5f6d 6f75 mp; previous_mou │ │ │ +001b1e90: 6e74 5f6f 7074 732b 3d22 2c22 0a20 2020 nt_opts+=",". │ │ │ +001b1ea0: 2020 2020 2023 2049 6e20 6973 6f39 3636 # In iso966 │ │ │ +001b1eb0: 3020 6669 6c65 7379 7374 656d 7320 6d74 0 filesystems mt │ │ │ +001b1ec0: 6162 2063 6f75 6c64 2064 6573 6372 6962 ab could describ │ │ │ +001b1ed0: 6520 6120 2262 6c6f 636b 7369 7a65 2220 e a "blocksize" │ │ │ +001b1ee0: 7661 6c75 652c 2074 6869 7320 7368 6f75 value, this shou │ │ │ +001b1ef0: 6c64 2062 6520 7265 666c 6563 7465 6420 ld be reflected │ │ │ +001b1f00: 696e 0a20 2020 2020 2020 2023 2066 7374 in. # fst │ │ │ +001b1f10: 6162 2061 7320 2262 6c6f 636b 222e 2020 ab as "block". │ │ │ +001b1f20: 5468 6520 6e65 7874 2076 6172 6961 626c The next variabl │ │ │ +001b1f30: 6520 6973 2074 6f20 7361 7469 7366 7920 e is to satisfy │ │ │ +001b1f40: 7368 656c 6c63 6865 636b 2053 4332 3035 shellcheck SC205 │ │ │ +001b1f50: 302e 0a20 2020 2020 2020 2066 735f 7479 0.. fs_ty │ │ │ +001b1f60: 7065 3d22 220a 2020 2020 2020 2020 6966 pe="". if │ │ │ +001b1f70: 205b 2020 2224 6673 5f74 7970 6522 203d [ "$fs_type" = │ │ │ +001b1f80: 3d20 2269 736f 3936 3630 2220 5d20 3b20 = "iso9660" ] ; │ │ │ +001b1f90: 7468 656e 0a20 2020 2020 2020 2020 2020 then. │ │ │ +001b1fa0: 2070 7265 7669 6f75 735f 6d6f 756e 745f previous_mount_ │ │ │ +001b1fb0: 6f70 7473 3d24 2873 6564 2027 732f 626c opts=$(sed 's/bl │ │ │ +001b1fc0: 6f63 6b73 697a 653d 2f62 6c6f 636b 3d2f ocksize=/block=/ │ │ │ +001b1fd0: 2720 266c 743b 266c 743b 266c 743b 2022 ' <<< " │ │ │ +001b1fe0: 2470 7265 7669 6f75 735f 6d6f 756e 745f $previous_mount_ │ │ │ +001b1ff0: 6f70 7473 2229 0a20 2020 2020 2020 2066 opts"). f │ │ │ +001b2000: 690a 2020 2020 2020 2020 6563 686f 2022 i. echo " │ │ │ +001b2010: 202f 7661 722f 6c6f 672f 6175 6469 7420 /var/log/audit │ │ │ +001b2020: 2064 6566 6175 6c74 732c 247b 7072 6576 defaults,${prev │ │ │ +001b2030: 696f 7573 5f6d 6f75 6e74 5f6f 7074 737d ious_mount_opts} │ │ │ +001b2040: 6e6f 7375 6964 2030 2030 2220 2667 743b nosuid 0 0" > │ │ │ +001b2050: 2667 743b 202f 6574 632f 6673 7461 620a > /etc/fstab. │ │ │ +001b2060: 2020 2020 2320 4966 2074 6865 206d 6f75 # If the mou │ │ │ +001b2070: 6e74 5f6f 7074 206f 7074 696f 6e20 6973 nt_opt option is │ │ │ +001b2080: 206e 6f74 2061 6c72 6561 6479 2069 6e20 not already in │ │ │ +001b2090: 7468 6520 6d6f 756e 7420 706f 696e 7427 the mount point' │ │ │ +001b20a0: 7320 2f65 7463 2f66 7374 6162 2065 6e74 s /etc/fstab ent │ │ │ +001b20b0: 7279 2c20 6164 6420 6974 0a20 2020 2065 ry, add it. e │ │ │ +001b20c0: 6c69 6620 2120 6772 6570 2022 246d 6f75 lif ! grep "$mou │ │ │ +001b20d0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72 nt_point_match_r │ │ │ +001b20e0: 6567 6578 7022 202f 6574 632f 6673 7461 egexp" /etc/fsta │ │ │ +001b20f0: 6220 7c20 6772 6570 202d 7120 226e 6f73 b | grep -q "nos │ │ │ +001b2100: 7569 6422 3b20 7468 656e 0a20 2020 2020 uid"; then. │ │ │ +001b2110: 2020 2070 7265 7669 6f75 735f 6d6f 756e previous_moun │ │ │ +001b2120: 745f 6f70 7473 3d24 2867 7265 7020 2224 t_opts=$(grep "$ │ │ │ +001b2130: 6d6f 756e 745f 706f 696e 745f 6d61 7463 mount_point_matc │ │ │ +001b2140: 685f 7265 6765 7870 2220 2f65 7463 2f66 h_regexp" /etc/f │ │ │ +001b2150: 7374 6162 207c 2061 776b 2027 7b70 7269 stab | awk '{pri │ │ │ +001b2160: 6e74 2024 347d 2729 0a20 2020 2020 2020 nt $4}'). │ │ │ +001b2170: 2073 6564 202d 6920 2273 7c5c 2824 7b6d sed -i "s|\(${m │ │ │ +001b2180: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368 ount_point_match │ │ │ +001b2190: 5f72 6567 6578 707d 2e2a 247b 7072 6576 _regexp}.*${prev │ │ │ +001b21a0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 737d ious_mount_opts} │ │ │ +001b21b0: 5c29 7c5c 312c 6e6f 7375 6964 7c22 202f \)|\1,nosuid|" / │ │ │ +001b21c0: 6574 632f 6673 7461 620a 2020 2020 6669 etc/fstab. fi │ │ │ +001b21d0: 0a0a 0a20 2020 2069 6620 6d6b 6469 7220 ... if mkdir │ │ │ +001b21e0: 2d70 2022 2f76 6172 2f6c 6f67 2f61 7564 -p "/var/log/aud │ │ │ +001b21f0: 6974 223b 2074 6865 6e0a 2020 2020 2020 it"; then. │ │ │ +001b2200: 2020 6966 206d 6f75 6e74 706f 696e 7420 if mountpoint │ │ │ +001b2210: 2d71 2022 2f76 6172 2f6c 6f67 2f61 7564 -q "/var/log/aud │ │ │ +001b2220: 6974 223b 2074 6865 6e0a 2020 2020 2020 it"; then. │ │ │ +001b2230: 2020 2020 2020 6d6f 756e 7420 2d6f 2072 mount -o r │ │ │ +001b2240: 656d 6f75 6e74 202d 2d74 6172 6765 7420 emount --target │ │ │ +001b2250: 222f 7661 722f 6c6f 672f 6175 6469 7422 "/var/log/audit" │ │ │ +001b2260: 0a20 2020 2020 2020 2066 690a 2020 2020 . fi. │ │ │ +001b2270: 6669 0a7d 0a0a 7065 7266 6f72 6d5f 7265 fi.}..perform_re │ │ │ +001b2280: 6d65 6469 6174 696f 6e0a 0a65 6c73 650a mediation..else. │ │ │ +001b2290: 2020 2020 2667 743b 2661 6d70 3b32 2065 >&2 e │ │ │ +001b22a0: 6368 6f20 2752 656d 6564 6961 7469 6f6e cho 'Remediation │ │ │ +001b22b0: 2069 7320 6e6f 7420 6170 706c 6963 6162 is not applicab │ │ │ +001b22c0: 6c65 2c20 6e6f 7468 696e 6720 7761 7320 le, nothing was │ │ │ +001b22d0: 646f 6e65 270a 6669 0a3c 2f63 6f64 653e done'.fi. │ │ │ +001b22e0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063
Remedia │ │ │ +001b2390: 7469 6f6e 2041 6e61 636f 6e64 6120 736e tion Anaconda sn │ │ │ +001b23a0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ +001b2450: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c
Compl │ │ │ +001b2430: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +001b2440: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +001b2460: 2f74 683e 3c74 643e 6869 6768 3c2f 7464 /th>high
Re │ │ │ +001b2480: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +001b2490: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ +001b24d0: 7072 653e 3c63 6f64 653e 0a70 6172 7420 pre>.part │ │ │ +001b24e0: 2f76 6172 2f6c 6f67 2f61 7564 6974 202d /var/log/audit - │ │ │ +001b24f0: 2d6d 6f75 6e74 6f70 7469 6f6e 733d 226e -mountoptions="n │ │ │ +001b2500: 6f73 7569 6422 0a3c 2f63 6f64 653e 3c2f osuid".
│ │ │ 001b2520: 3c2f 7464 3e3c 2f74 723e 3c2f 7462 6f64 < │ │ │ 001b2540: 2f74 723e 3c74 7220 6461 7461 2d74 742d /tr>Rem │ │ │ -001b3120: 6564 6961 7469 6f6e 2041 6e61 636f 6e64 ediation Anacond │ │ │ -001b3130: 6120 736e 6970 7065 7420 e287 b23c 2f61 a snippet ...
< │ │ │ -001b31d0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -001b31e0: 3c74 723e 3c74 683e 4469 7372 7570 7469 Reboot:false
.p
│ │ │ -001b3270: 6172 7420 2f76 6172 2f6c 6f67 202d 2d6d  art /var/log --m
│ │ │ -001b3280: 6f75 6e74 6f70 7469 6f6e 733d 226e 6f64  ountoptions="nod
│ │ │ -001b3290: 6576 220a 3c2f 636f 6465 3e3c 2f70 7265  ev".
Remediation │ │ │ -001b3350: 416e 7369 626c 6520 736e 6970 7065 7420 Ansible snippet │ │ │ -001b3360: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
high │ │ │ -001b3430: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c < │ │ │ -001b3480: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
C │ │ │ -001b31c0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -001b31f0: 6f6e 3a3c 2f74 683e 3c74 643e 6869 6768 on:high │ │ │ -001b3200: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -001b3240: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -001b3250: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexity: │ │ │ -001b33f0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ -001b3410: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:< │ │ │ -001b3440: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ -001b3460: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:configure
- name: G
│ │ │ -001b34a0: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ -001b34b0: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ -001b34c0: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ -001b34d0: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ -001b34e0: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ -001b34f0: 3533 2d41 432d 360a 2020 2d20 4e49 5354  53-AC-6.  - NIST
│ │ │ -001b3500: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ -001b3510: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001b3520: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ -001b3530: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ -001b3540: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001b3550: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ -001b3560: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d  -800-53-MP-7.  -
│ │ │ -001b3570: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ -001b3580: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ -001b3590: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -001b35a0: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -001b35b0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -001b35c0: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ -001b35d0: 7661 725f 6c6f 675f 6e6f 6465 760a 2020  var_log_nodev.  
│ │ │ -001b35e0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -001b35f0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ -001b3600: 206e 6f64 6576 204f 7074 696f 6e20 746f   nodev Option to
│ │ │ -001b3610: 202f 7661 722f 6c6f 673a 2043 6865 636b   /var/log: Check
│ │ │ -001b3620: 2069 6e66 6f72 6d61 7469 6f6e 2061 7373   information ass
│ │ │ -001b3630: 6f63 6961 7465 6420 746f 206d 6f75 6e74  ociated to mount
│ │ │ -001b3640: 706f 696e 7427 0a20 2061 6e73 6962 6c65  point'.  ansible
│ │ │ -001b3650: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ -001b3660: 3a20 6669 6e64 6d6e 7420 2d2d 6673 7461  : findmnt --fsta
│ │ │ -001b3670: 6220 272f 7661 722f 6c6f 6727 0a20 2072  b '/var/log'.  r
│ │ │ -001b3680: 6567 6973 7465 723a 2064 6576 6963 655f  egister: device_
│ │ │ -001b3690: 6e61 6d65 0a20 2066 6169 6c65 645f 7768  name.  failed_wh
│ │ │ -001b36a0: 656e 3a20 6465 7669 6365 5f6e 616d 652e  en: device_name.
│ │ │ -001b36b0: 7263 2026 6774 3b20 310a 2020 6368 616e  rc > 1.  chan
│ │ │ -001b36c0: 6765 645f 7768 656e 3a20 6661 6c73 650a  ged_when: false.
│ │ │ -001b36d0: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661    check_mode: fa
│ │ │ -001b36e0: 6c73 650a 2020 7768 656e 3a0a 2020 2d20  lse.  when:.  - 
│ │ │ -001b36f0: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -001b3700: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001b3710: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001b3720: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ -001b3730: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001b3740: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ -001b3750: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -001b3760: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001b3770: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001b3780: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001b3790: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001b37a0: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ -001b37b0: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001b37c0: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ -001b37d0: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001b37e0: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001b37f0: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ -001b3800: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -001b3810: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -001b3820: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ -001b3830: 2029 2029 0a20 202d 2027 222f 7661 722f   ) ).  - '"/var/
│ │ │ -001b3840: 6c6f 6722 2069 6e20 616e 7369 626c 655f  log" in ansible_
│ │ │ -001b3850: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ -001b3860: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ -001b3870: 7c20 6c69 7374 270a 2020 7461 6773 3a0a  | list'.  tags:.
│ │ │ -001b3880: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001b3890: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ -001b38a0: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ -001b38b0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001b38c0: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ -001b38d0: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ -001b38e0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001b38f0: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ -001b3900: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ -001b3910: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -001b3920: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -001b3930: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -001b3940: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -001b3950: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001b3960: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ -001b3970: 5f6c 6f67 5f6e 6f64 6576 0a20 202d 206e  _log_nodev.  - n
│ │ │ -001b3980: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -001b3990: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ -001b39a0: 6465 7620 4f70 7469 6f6e 2074 6f20 2f76  dev Option to /v
│ │ │ -001b39b0: 6172 2f6c 6f67 3a20 4372 6561 7465 206d  ar/log: Create m
│ │ │ -001b39c0: 6f75 6e74 5f69 6e66 6f20 6469 6374 696f  ount_info dictio
│ │ │ -001b39d0: 6e61 7279 2076 6172 6961 626c 6527 0a20  nary variable'. 
│ │ │ -001b39e0: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ -001b39f0: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ -001b3a00: 6f75 6e74 5f69 6e66 6f7c 6465 6661 756c  ount_info|defaul
│ │ │ -001b3a10: 7428 7b7d 297c 636f 6d62 696e 6528 7b69  t({})|combine({i
│ │ │ -001b3a20: 7465 6d2e 303a 2069 7465 6d2e 317d 2920  tem.0: item.1}) 
│ │ │ -001b3a30: 7d7d 270a 2020 7769 7468 5f74 6f67 6574  }}'.  with_toget
│ │ │ -001b3a40: 6865 723a 0a20 202d 2027 7b7b 2064 6576  her:.  - '{{ dev
│ │ │ -001b3a50: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ -001b3a60: 6c69 6e65 735b 305d 2e73 706c 6974 2829  lines[0].split()
│ │ │ -001b3a70: 207c 206d 6170 2827 276c 6f77 6572 2727   | map(''lower''
│ │ │ -001b3a80: 2920 7c20 6c69 7374 207d 7d27 0a20 202d  ) | list }}'.  -
│ │ │ -001b3a90: 2027 7b7b 2064 6576 6963 655f 6e61 6d65   '{{ device_name
│ │ │ -001b3aa0: 2e73 7464 6f75 745f 6c69 6e65 735b 315d  .stdout_lines[1]
│ │ │ -001b3ab0: 2e73 706c 6974 2829 207c 206c 6973 7420  .split() | list 
│ │ │ -001b3ac0: 7d7d 270a 2020 7768 656e 3a0a 2020 2d20  }}'.  when:.  - 
│ │ │ -001b3ad0: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -001b3ae0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001b3af0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001b3b00: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ -001b3b10: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001b3b20: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ -001b3b30: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -001b3b40: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001b3b50: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001b3b60: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001b3b70: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001b3b80: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ -001b3b90: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001b3ba0: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ -001b3bb0: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001b3bc0: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001b3bd0: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ -001b3be0: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -001b3bf0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -001b3c00: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ -001b3c10: 2029 2029 0a20 202d 2027 222f 7661 722f   ) ).  - '"/var/
│ │ │ -001b3c20: 6c6f 6722 2069 6e20 616e 7369 626c 655f  log" in ansible_
│ │ │ -001b3c30: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ -001b3c40: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ -001b3c50: 7c20 6c69 7374 270a 2020 2d20 6465 7669  | list'.  - devi
│ │ │ -001b3c60: 6365 5f6e 616d 652e 7374 646f 7574 2069  ce_name.stdout i
│ │ │ -001b3c70: 7320 6465 6669 6e65 6420 616e 6420 6465  s defined and de
│ │ │ -001b3c80: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001b3c90: 5f6c 696e 6573 2069 7320 6465 6669 6e65  _lines is define
│ │ │ -001b3ca0: 640a 2020 2d20 2864 6576 6963 655f 6e61  d.  - (device_na
│ │ │ -001b3cb0: 6d65 2e73 7464 6f75 7420 7c20 6c65 6e67  me.stdout | leng
│ │ │ -001b3cc0: 7468 2026 6774 3b20 3029 0a20 2074 6167  th > 0).  tag
│ │ │ -001b3cd0: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ -001b3ce0: 3533 2d41 432d 360a 2020 2d20 4e49 5354  53-AC-6.  - NIST
│ │ │ -001b3cf0: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ -001b3d00: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001b3d10: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ -001b3d20: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ -001b3d30: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001b3d40: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ -001b3d50: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d  -800-53-MP-7.  -
│ │ │ -001b3d60: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ -001b3d70: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ -001b3d80: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -001b3d90: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -001b3da0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -001b3db0: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ -001b3dc0: 7661 725f 6c6f 675f 6e6f 6465 760a 2020  var_log_nodev.  
│ │ │ -001b3dd0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -001b3de0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ -001b3df0: 206e 6f64 6576 204f 7074 696f 6e20 746f   nodev Option to
│ │ │ -001b3e00: 202f 7661 722f 6c6f 673a 2049 6620 2f76   /var/log: If /v
│ │ │ -001b3e10: 6172 2f6c 6f67 206e 6f74 206d 6f75 6e74  ar/log not mount
│ │ │ -001b3e20: 6564 2c20 6372 6166 7420 6d6f 756e 745f  ed, craft mount_
│ │ │ -001b3e30: 696e 666f 206d 616e 7561 6c6c 7927 0a20  info manually'. 
│ │ │ -001b3e40: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ -001b3e50: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ -001b3e60: 6f75 6e74 5f69 6e66 6f7c 6465 6661 756c  ount_info|defaul
│ │ │ -001b3e70: 7428 7b7d 297c 636f 6d62 696e 6528 7b69  t({})|combine({i
│ │ │ -001b3e80: 7465 6d2e 303a 2069 7465 6d2e 317d 2920  tem.0: item.1}) 
│ │ │ -001b3e90: 7d7d 270a 2020 7769 7468 5f74 6f67 6574  }}'.  with_toget
│ │ │ -001b3ea0: 6865 723a 0a20 202d 202d 2074 6172 6765  her:.  - - targe
│ │ │ -001b3eb0: 740a 2020 2020 2d20 736f 7572 6365 0a20  t.    - source. 
│ │ │ -001b3ec0: 2020 202d 2066 7374 7970 650a 2020 2020     - fstype.    
│ │ │ -001b3ed0: 2d20 6f70 7469 6f6e 730a 2020 2d20 2d20  - options.  - - 
│ │ │ -001b3ee0: 2f76 6172 2f6c 6f67 0a20 2020 202d 2027  /var/log.    - '
│ │ │ -001b3ef0: 270a 2020 2020 2d20 2727 0a20 2020 202d  '.    - ''.    -
│ │ │ -001b3f00: 2064 6566 6175 6c74 730a 2020 7768 656e   defaults.  when
│ │ │ -001b3f10: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ -001b3f20: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -001b3f30: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001b3f40: 2061 6e64 2022 7270 6d2d 6f73 7472 6565   and "rpm-ostree
│ │ │ -001b3f50: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001b3f60: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001b3f70: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ -001b3f80: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001b3f90: 6b61 6765 7320 616e 6420 6e6f 7420 226f  kages and not "o
│ │ │ -001b3fa0: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ -001b3fb0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001b3fc0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001b3fd0: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ -001b3fe0: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ -001b3ff0: 6c69 6e65 2029 2061 6e64 206e 6f74 2028  line ) and not (
│ │ │ -001b4000: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ -001b4010: 697a 6174 696f 6e5f 7479 7065 2069 6e0a  ization_type in.
│ │ │ -001b4020: 2020 2020 5b22 646f 636b 6572 222c 2022      ["docker", "
│ │ │ -001b4030: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ -001b4040: 2270 6f64 6d61 6e22 2c20 2263 6f6e 7461  "podman", "conta
│ │ │ -001b4050: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ -001b4060: 222f 7661 722f 6c6f 6722 2069 6e20 616e  "/var/log" in an
│ │ │ -001b4070: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ -001b4080: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ -001b4090: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ -001b40a0: 2d20 2822 2d2d 6673 7461 6222 207c 206c  - ("--fstab" | l
│ │ │ -001b40b0: 656e 6774 6820 3d3d 2030 290a 2020 2d20  ength == 0).  - 
│ │ │ -001b40c0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001b40d0: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ -001b40e0: 6420 6465 7669 6365 5f6e 616d 652e 7374  d device_name.st
│ │ │ -001b40f0: 646f 7574 5f6c 696e 6573 2069 7320 6465  dout_lines is de
│ │ │ -001b4100: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ -001b4110: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ -001b4120: 6c65 6e67 7468 203d 3d20 3029 0a20 2074  length == 0).  t
│ │ │ -001b4130: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -001b4140: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ -001b4150: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ -001b4160: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001b4170: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ -001b4180: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ -001b4190: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001b41a0: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ -001b41b0: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ -001b41c0: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -001b41d0: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -001b41e0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -001b41f0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -001b4200: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -001b4210: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ -001b4220: 6e5f 7661 725f 6c6f 675f 6e6f 6465 760a  n_var_log_nodev.
│ │ │ -001b4230: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001b4240: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ -001b4250: 6464 206e 6f64 6576 204f 7074 696f 6e20  dd nodev Option 
│ │ │ -001b4260: 746f 202f 7661 722f 6c6f 673a 204d 616b  to /var/log: Mak
│ │ │ -001b4270: 6520 7375 7265 206e 6f64 6576 206f 7074  e sure nodev opt
│ │ │ -001b4280: 696f 6e20 6973 2070 6172 7420 6f66 2074  ion is part of t
│ │ │ -001b4290: 6865 2074 6f20 2f76 6172 2f6c 6f67 0a20  he to /var/log. 
│ │ │ -001b42a0: 2020 206f 7074 696f 6e73 270a 2020 7365     options'.  se
│ │ │ -001b42b0: 745f 6661 6374 3a0a 2020 2020 6d6f 756e  t_fact:.    moun
│ │ │ -001b42c0: 745f 696e 666f 3a20 277b 7b20 6d6f 756e  t_info: '{{ moun
│ │ │ -001b42d0: 745f 696e 666f 207c 2063 6f6d 6269 6e65  t_info | combine
│ │ │ -001b42e0: 2820 7b27 276f 7074 696f 6e73 2727 3a27  ( {''options'':'
│ │ │ -001b42f0: 2727 277e 286d 6f75 6e74 5f69 6e66 6f2e  '''~(mount_info.
│ │ │ -001b4300: 6f70 7469 6f6e 7320 7c0a 2020 2020 2020  options |.      
│ │ │ -001b4310: 6465 6661 756c 7428 2727 2727 2929 7e28  default(''''))~(
│ │ │ -001b4320: 2727 2c27 2720 6966 2028 6d6f 756e 745f  '','' if (mount_
│ │ │ -001b4330: 696e 666f 2e6f 7074 696f 6e73 207c 2064  info.options | d
│ │ │ -001b4340: 6566 6175 6c74 2827 2727 2729 2920 656c  efault('''')) el
│ │ │ -001b4350: 7365 2027 2727 2729 7e27 276e 6f64 6576  se '''')~''nodev
│ │ │ -001b4360: 2727 0a20 2020 2020 207d 2920 7d7d 270a  ''.      }) }}'.
│ │ │ -001b4370: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ -001b4380: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ -001b4390: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001b43a0: 636b 6167 6573 2061 6e64 2022 7270 6d2d  ckages and "rpm-
│ │ │ -001b43b0: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001b43c0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001b43d0: 730a 2020 2020 616e 6420 2262 6f6f 7463  s.    and "bootc
│ │ │ -001b43e0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001b43f0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001b4400: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ -001b4410: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ -001b4420: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001b4430: 730a 2020 2020 616e 6420 226f 7374 7265  s.    and "ostre
│ │ │ -001b4440: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ -001b4450: 6f63 5f63 6d64 6c69 6e65 2029 2061 6e64  oc_cmdline ) and
│ │ │ -001b4460: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ -001b4470: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ -001b4480: 7065 2069 6e0a 2020 2020 5b22 646f 636b  pe in.    ["dock
│ │ │ -001b4490: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ -001b44a0: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c20  nvz", "podman", 
│ │ │ -001b44b0: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ -001b44c0: 0a20 202d 2027 222f 7661 722f 6c6f 6722  .  - '"/var/log"
│ │ │ -001b44d0: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ -001b44e0: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ -001b44f0: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ -001b4500: 7374 270a 2020 2d20 6d6f 756e 745f 696e  st'.  - mount_in
│ │ │ -001b4510: 666f 2069 7320 6465 6669 6e65 6420 616e  fo is defined an
│ │ │ -001b4520: 6420 226e 6f64 6576 2220 6e6f 7420 696e  d "nodev" not in
│ │ │ -001b4530: 2028 6d6f 756e 745f 696e 666f 2e6f 7074   (mount_info.opt
│ │ │ -001b4540: 696f 6e73 207c 2064 6566 6175 6c74 2827  ions | default('
│ │ │ -001b4550: 2729 290a 2020 7461 6773 3a0a 2020 2d20  ')).  tags:.  - 
│ │ │ -001b4560: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001b4570: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001b4580: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ -001b4590: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -001b45a0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001b45b0: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ -001b45c0: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ -001b45d0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001b45e0: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ -001b45f0: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001b4600: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001b4610: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001b4620: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001b4630: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001b4640: 745f 6f70 7469 6f6e 5f76 6172 5f6c 6f67  t_option_var_log
│ │ │ -001b4650: 5f6e 6f64 6576 0a20 202d 206e 6f5f 7265  _nodev.  - no_re
│ │ │ -001b4660: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -001b4670: 616d 653a 2027 4164 6420 6e6f 6465 7620  ame: 'Add nodev 
│ │ │ -001b4680: 4f70 7469 6f6e 2074 6f20 2f76 6172 2f6c  Option to /var/l
│ │ │ -001b4690: 6f67 3a20 456e 7375 7265 202f 7661 722f  og: Ensure /var/
│ │ │ -001b46a0: 6c6f 6720 6973 206d 6f75 6e74 6564 2077  log is mounted w
│ │ │ -001b46b0: 6974 6820 6e6f 6465 7620 6f70 7469 6f6e  ith nodev option
│ │ │ -001b46c0: 270a 2020 616e 7369 626c 652e 706f 7369  '.  ansible.posi
│ │ │ -001b46d0: 782e 6d6f 756e 743a 0a20 2020 2070 6174  x.mount:.    pat
│ │ │ -001b46e0: 683a 202f 7661 722f 6c6f 670a 2020 2020  h: /var/log.    
│ │ │ -001b46f0: 7372 633a 2027 7b7b 206d 6f75 6e74 5f69  src: '{{ mount_i
│ │ │ -001b4700: 6e66 6f2e 736f 7572 6365 207c 2064 6566  nfo.source | def
│ │ │ -001b4710: 6175 6c74 2827 2727 2729 207d 7d27 0a20  ault('''') }}'. 
│ │ │ -001b4720: 2020 206f 7074 733a 2027 7b7b 206d 6f75     opts: '{{ mou
│ │ │ -001b4730: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ -001b4740: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ -001b4750: 7d7d 270a 2020 2020 7374 6174 653a 206d  }}'.    state: m
│ │ │ -001b4760: 6f75 6e74 6564 0a20 2020 2066 7374 7970  ounted.    fstyp
│ │ │ -001b4770: 653a 2027 7b7b 206d 6f75 6e74 5f69 6e66  e: '{{ mount_inf
│ │ │ -001b4780: 6f2e 6673 7479 7065 207c 2064 6566 6175  o.fstype | defau
│ │ │ -001b4790: 6c74 2827 2727 2729 207d 7d27 0a20 2072  lt('''') }}'.  r
│ │ │ -001b47a0: 6567 6973 7465 723a 206d 6f75 6e74 5f72  egister: mount_r
│ │ │ -001b47b0: 6573 756c 740a 2020 6661 696c 6564 5f77  esult.  failed_w
│ │ │ -001b47c0: 6865 6e3a 0a20 202d 206d 6f75 6e74 5f72  hen:.  - mount_r
│ │ │ -001b47d0: 6573 756c 7420 6973 2066 6169 6c65 640a  esult is failed.
│ │ │ -001b47e0: 2020 2d20 2727 2774 6172 6765 7420 6973    - '''target is
│ │ │ -001b47f0: 2062 7573 7927 2720 6e6f 7420 696e 2028   busy'' not in (
│ │ │ -001b4800: 6d6f 756e 745f 7265 7375 6c74 2e6d 7367  mount_result.msg
│ │ │ -001b4810: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ -001b4820: 2927 0a20 202d 2027 2727 616c 7265 6164  )'.  - '''alread
│ │ │ -001b4830: 7920 6d6f 756e 7465 6427 2720 6e6f 7420  y mounted'' not 
│ │ │ -001b4840: 696e 2028 6d6f 756e 745f 7265 7375 6c74  in (mount_result
│ │ │ -001b4850: 2e6d 7367 207c 2064 6566 6175 6c74 2827  .msg | default('
│ │ │ -001b4860: 2727 2729 2927 0a20 2077 6865 6e3a 0a20  '''))'.  when:. 
│ │ │ -001b4870: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ -001b4880: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -001b4890: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001b48a0: 6420 2272 706d 2d6f 7374 7265 6522 2069  d "rpm-ostree" i
│ │ │ -001b48b0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001b48c0: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001b48d0: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ -001b48e0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001b48f0: 6573 2061 6e64 206e 6f74 2022 6f70 656e  es and not "open
│ │ │ -001b4900: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ -001b4910: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001b4920: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001b4930: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ -001b4940: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ -001b4950: 6520 2920 616e 6420 6e6f 7420 2820 616e  e ) and not ( an
│ │ │ -001b4960: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ -001b4970: 7469 6f6e 5f74 7970 6520 696e 0a20 2020  tion_type in.   
│ │ │ -001b4980: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ -001b4990: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ -001b49a0: 646d 616e 222c 2022 636f 6e74 6169 6e65  dman", "containe
│ │ │ -001b49b0: 7222 5d20 2920 290a 2020 2d20 2722 2f76  r"] ) ).  - '"/v
│ │ │ -001b49c0: 6172 2f6c 6f67 2220 696e 2061 6e73 6962  ar/log" in ansib
│ │ │ -001b49d0: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ -001b49e0: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ -001b49f0: 2229 207c 206c 6973 7427 0a20 202d 206d  ") | list'.  - m
│ │ │ -001b4a00: 6f75 6e74 5f69 6e66 6f20 6973 2064 6566  ount_info is def
│ │ │ -001b4a10: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ -001b4a20: 5f6e 616d 652e 7374 646f 7574 2069 7320  _name.stdout is 
│ │ │ -001b4a30: 6465 6669 6e65 6420 616e 6420 2864 6576  defined and (dev
│ │ │ -001b4a40: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ -001b4a50: 7c20 6c65 6e67 7468 2026 6774 3b20 3029  | length > 0)
│ │ │ -001b4a60: 2920 6f72 2028 222d 2d66 7374 6162 220a  ) or ("--fstab".
│ │ │ -001b4a70: 2020 2020 7c20 6c65 6e67 7468 203d 3d20      | length == 
│ │ │ -001b4a80: 3029 0a20 2074 6167 733a 0a20 202d 204e  0).  tags:.  - N
│ │ │ -001b4a90: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ -001b4aa0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001b4ab0: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ -001b4ac0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -001b4ad0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001b4ae0: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ -001b4af0: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ -001b4b00: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001b4b10: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ -001b4b20: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ -001b4b30: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ -001b4b40: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -001b4b50: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ -001b4b60: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ -001b4b70: 5f6f 7074 696f 6e5f 7661 725f 6c6f 675f  _option_var_log_
│ │ │ -001b4b80: 6e6f 6465 760a 2020 2d20 6e6f 5f72 6562  nodev.  - no_reb
│ │ │ -001b4b90: 6f6f 745f 6e65 6564 6564 0a3c 2f63 6f64  oot_needed.
Remed │ │ │ -001b4c50: 6961 7469 6f6e 2053 6865 6c6c 2073 6372 iation Shell scr │ │ │ -001b4c60: 6970 7420 e287 b23c 2f61 3e3c 6272 3e3c ipt ...
< │ │ │ -001b4c70: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -001b4c80: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -001b4c90: 7365 2220 6964 3d22 6964 3437 3322 3e3c se" id="id473">< │ │ │ -001b4ca0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -001b4cb0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -001b4cc0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -001b4cd0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -001b4ce0: 3e3c 7472 3e3c 7468 3e52 6562 6f6f 743a >Reboot: │ │ │ -001b4cf0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -001b4d10: 3c70 7265 3e3c 636f 6465 3e23 2052 656d
# Rem
│ │ │ -001b4d20: 6564 6961 7469 6f6e 2069 7320 6170 706c  ediation is appl
│ │ │ -001b4d30: 6963 6162 6c65 206f 6e6c 7920 696e 2063  icable only in c
│ │ │ -001b4d40: 6572 7461 696e 2070 6c61 7466 6f72 6d73  ertain platforms
│ │ │ -001b4d50: 0a69 6620 2820 2120 2820 7b20 7270 6d20  .if ( ! ( { rpm 
│ │ │ -001b4d60: 2d2d 7175 6965 7420 2d71 206b 6572 6e65  --quiet -q kerne
│ │ │ -001b4d70: 6c20 3b7d 2026 616d 703b 2661 6d70 3b20  l ;} && 
│ │ │ -001b4d80: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ -001b4d90: 2072 706d 2d6f 7374 7265 6520 3b7d 2026   rpm-ostree ;} &
│ │ │ -001b4da0: 616d 703b 2661 6d70 3b20 7b20 7270 6d20  amp;& { rpm 
│ │ │ -001b4db0: 2d2d 7175 6965 7420 2d71 2062 6f6f 7463  --quiet -q bootc
│ │ │ -001b4dc0: 203b 7d20 2661 6d70 3b26 616d 703b 207b   ;} && {
│ │ │ -001b4dd0: 2021 2072 706d 202d 2d71 7569 6574 202d   ! rpm --quiet -
│ │ │ -001b4de0: 7120 6f70 656e 7368 6966 742d 6b75 6265  q openshift-kube
│ │ │ -001b4df0: 6c65 7420 3b7d 2026 616d 703b 2661 6d70  let ;} &&
│ │ │ -001b4e00: 3b20 285b 202d 6620 2f72 756e 2f6f 7374  ; ([ -f /run/ost
│ │ │ -001b4e10: 7265 652d 626f 6f74 6564 205d 207c 7c20  ree-booted ] || 
│ │ │ -001b4e20: 5b20 2d4c 202f 6f73 7472 6565 205d 2920  [ -L /ostree ]) 
│ │ │ -001b4e30: 2920 2661 6d70 3b26 616d 703b 2021 2028  ) && ! (
│ │ │ -001b4e40: 205b 202d 6620 2f2e 646f 636b 6572 656e   [ -f /.dockeren
│ │ │ -001b4e50: 7620 5d20 7c7c 205b 202d 6620 2f72 756e  v ] || [ -f /run
│ │ │ -001b4e60: 2f2e 636f 6e74 6169 6e65 7265 6e76 205d  /.containerenv ]
│ │ │ -001b4e70: 2029 2029 2026 616d 703b 2661 6d70 3b20   ) ) && 
│ │ │ -001b4e80: 7b20 2820 6669 6e64 6d6e 7420 2d2d 6b65  { ( findmnt --ke
│ │ │ -001b4e90: 726e 656c 2022 2f76 6172 2f6c 6f67 2220  rnel "/var/log" 
│ │ │ -001b4ea0: 2667 743b 202f 6465 762f 6e75 6c6c 207c  > /dev/null |
│ │ │ -001b4eb0: 7c20 6669 6e64 6d6e 7420 2d2d 6673 7461  | findmnt --fsta
│ │ │ -001b4ec0: 6220 222f 7661 722f 6c6f 6722 2026 6774  b "/var/log" >
│ │ │ -001b4ed0: 3b20 2f64 6576 2f6e 756c 6c20 293b 207d  ; /dev/null ); }
│ │ │ -001b4ee0: 3b20 7468 656e 0a0a 6675 6e63 7469 6f6e  ; then..function
│ │ │ -001b4ef0: 2070 6572 666f 726d 5f72 656d 6564 6961   perform_remedia
│ │ │ -001b4f00: 7469 6f6e 207b 0a0a 2020 2020 0a20 2020  tion {..    .   
│ │ │ -001b4f10: 2020 2020 2023 2074 6865 206d 6f75 6e74       # the mount
│ │ │ -001b4f20: 2070 6f69 6e74 202f 7661 722f 6c6f 6720   point /var/log 
│ │ │ -001b4f30: 6861 7320 746f 2062 6520 6465 6669 6e65  has to be define
│ │ │ -001b4f40: 6420 696e 202f 6574 632f 6673 7461 620a  d in /etc/fstab.
│ │ │ -001b4f50: 2020 2020 2020 2020 2320 6265 666f 7265          # before
│ │ │ -001b4f60: 2074 6869 7320 7265 6d65 6469 6174 696f   this remediatio
│ │ │ -001b4f70: 6e20 6361 6e20 6265 2065 7865 6375 7465  n can be execute
│ │ │ -001b4f80: 642e 2049 6e20 6361 7365 2069 7420 6973  d. In case it is
│ │ │ -001b4f90: 206e 6f74 2064 6566 696e 6564 2c20 7468   not defined, th
│ │ │ -001b4fa0: 650a 2020 2020 2020 2020 2320 7265 6d65  e.        # reme
│ │ │ -001b4fb0: 6469 6174 696f 6e20 6162 6f72 7473 2061  diation aborts a
│ │ │ -001b4fc0: 6e64 206e 6f20 6368 616e 6765 7320 7265  nd no changes re
│ │ │ -001b4fd0: 6761 7264 696e 6720 7468 6520 6d6f 756e  garding the moun
│ │ │ -001b4fe0: 7420 706f 696e 7420 6172 6520 646f 6e65  t point are done
│ │ │ -001b4ff0: 2e0a 2020 2020 2020 2020 6d6f 756e 745f  ..        mount_
│ │ │ -001b5000: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001b5010: 7870 3d22 2428 7072 696e 7466 2022 5e5b  xp="$(printf "^[
│ │ │ -001b5020: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e  [:space:]]*[^#].
│ │ │ -001b5030: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b  *[[:space:]]%s[[
│ │ │ -001b5040: 3a73 7061 6365 3a5d 5d22 2022 2f76 6172  :space:]]" "/var
│ │ │ -001b5050: 2f6c 6f67 2229 220a 0a20 2020 2067 7265  /log")"..    gre
│ │ │ -001b5060: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001b5070: 6d61 7463 685f 7265 6765 7870 2220 2d71  match_regexp" -q
│ │ │ -001b5080: 202f 6574 632f 6673 7461 6220 5c0a 2020   /etc/fstab \.  
│ │ │ -001b5090: 2020 2020 2020 7c7c 207b 2065 6368 6f20        || { echo 
│ │ │ -001b50a0: 2254 6865 206d 6f75 6e74 2070 6f69 6e74  "The mount point
│ │ │ -001b50b0: 2027 2f76 6172 2f6c 6f67 2720 6973 206e   '/var/log' is n
│ │ │ -001b50c0: 6f74 2065 7665 6e20 696e 202f 6574 632f  ot even in /etc/
│ │ │ -001b50d0: 6673 7461 622c 2073 6f20 7765 2063 616e  fstab, so we can
│ │ │ -001b50e0: 2774 2073 6574 2075 7020 6d6f 756e 7420  't set up mount 
│ │ │ -001b50f0: 6f70 7469 6f6e 7322 2026 6774 3b26 616d  options" >&am
│ │ │ -001b5100: 703b 323b 0a20 2020 2020 2020 2020 2020  p;2;.           
│ │ │ -001b5110: 2020 2020 2065 6368 6f20 224e 6f74 2072       echo "Not r
│ │ │ -001b5120: 656d 6564 6961 7469 6e67 2c20 6265 6361  emediating, beca
│ │ │ -001b5130: 7573 6520 7468 6572 6520 6973 206e 6f20  use there is no 
│ │ │ -001b5140: 7265 636f 7264 206f 6620 2f76 6172 2f6c  record of /var/l
│ │ │ -001b5150: 6f67 2069 6e20 2f65 7463 2f66 7374 6162  og in /etc/fstab
│ │ │ -001b5160: 2220 2667 743b 2661 6d70 3b32 3b20 7265  " >&2; re
│ │ │ -001b5170: 7475 726e 2031 3b20 7d0a 2020 2020 0a0a  turn 1; }.    ..
│ │ │ -001b5180: 0a20 2020 206d 6f75 6e74 5f70 6f69 6e74  .    mount_point
│ │ │ -001b5190: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ -001b51a0: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ -001b51b0: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ -001b51c0: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ -001b51d0: 653a 5d5d 2220 2f76 6172 2f6c 6f67 2922  e:]]" /var/log)"
│ │ │ -001b51e0: 0a0a 2020 2020 2320 4966 2074 6865 206d  ..    # If the m
│ │ │ -001b51f0: 6f75 6e74 2070 6f69 6e74 2069 7320 6e6f  ount point is no
│ │ │ -001b5200: 7420 696e 202f 6574 632f 6673 7461 622c  t in /etc/fstab,
│ │ │ -001b5210: 2067 6574 2070 7265 7669 6f75 7320 6d6f   get previous mo
│ │ │ -001b5220: 756e 7420 6f70 7469 6f6e 7320 6672 6f6d  unt options from
│ │ │ -001b5230: 202f 6574 632f 6d74 6162 0a20 2020 2069   /etc/mtab.    i
│ │ │ -001b5240: 6620 2120 6772 6570 202d 7120 2224 6d6f  f ! grep -q "$mo
│ │ │ -001b5250: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001b5260: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ -001b5270: 6162 3b20 7468 656e 0a20 2020 2020 2020  ab; then.       
│ │ │ -001b5280: 2023 2072 756e 7469 6d65 206f 7074 7320   # runtime opts 
│ │ │ -001b5290: 7769 7468 6f75 7420 736f 6d65 2061 7574  without some aut
│ │ │ -001b52a0: 6f6d 6174 6963 206b 6572 6e65 6c2f 7573  omatic kernel/us
│ │ │ -001b52b0: 6572 7370 6163 652d 6164 6465 6420 6465  erspace-added de
│ │ │ -001b52c0: 6661 756c 7473 0a20 2020 2020 2020 2070  faults.        p
│ │ │ -001b52d0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001b52e0: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ -001b52f0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001b5300: 6765 7870 2220 2f65 7463 2f6d 7461 6220  gexp" /etc/mtab 
│ │ │ -001b5310: 7c20 6865 6164 202d 3120 7c20 2061 776b  | head -1 |  awk
│ │ │ -001b5320: 2027 7b70 7269 6e74 2024 347d 2720 5c0a   '{print $4}' \.
│ │ │ -001b5330: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -001b5340: 2020 2020 7c20 7365 6420 2d45 2022 732f      | sed -E "s/
│ │ │ -001b5350: 2872 777c 6465 6661 756c 7473 7c73 6563  (rw|defaults|sec
│ │ │ -001b5360: 6c61 6265 6c7c 6e6f 6465 7629 282c 7c24  label|nodev)(,|$
│ │ │ -001b5370: 292f 2f67 3b73 2f2c 242f 2f22 290a 2020  )//g;s/,$//").  
│ │ │ -001b5380: 2020 2020 2020 5b20 2224 7072 6576 696f        [ "$previo
│ │ │ -001b5390: 7573 5f6d 6f75 6e74 5f6f 7074 7322 205d  us_mount_opts" ]
│ │ │ -001b53a0: 2026 616d 703b 2661 6d70 3b20 7072 6576   && prev
│ │ │ -001b53b0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 732b  ious_mount_opts+
│ │ │ -001b53c0: 3d22 2c22 0a20 2020 2020 2020 2023 2049  =",".        # I
│ │ │ -001b53d0: 6e20 6973 6f39 3636 3020 6669 6c65 7379  n iso9660 filesy
│ │ │ -001b53e0: 7374 656d 7320 6d74 6162 2063 6f75 6c64  stems mtab could
│ │ │ -001b53f0: 2064 6573 6372 6962 6520 6120 2262 6c6f   describe a "blo
│ │ │ -001b5400: 636b 7369 7a65 2220 7661 6c75 652c 2074  cksize" value, t
│ │ │ -001b5410: 6869 7320 7368 6f75 6c64 2062 6520 7265  his should be re
│ │ │ -001b5420: 666c 6563 7465 6420 696e 0a20 2020 2020  flected in.     
│ │ │ -001b5430: 2020 2023 2066 7374 6162 2061 7320 2262     # fstab as "b
│ │ │ -001b5440: 6c6f 636b 222e 2020 5468 6520 6e65 7874  lock".  The next
│ │ │ -001b5450: 2076 6172 6961 626c 6520 6973 2074 6f20   variable is to 
│ │ │ -001b5460: 7361 7469 7366 7920 7368 656c 6c63 6865  satisfy shellche
│ │ │ -001b5470: 636b 2053 4332 3035 302e 0a20 2020 2020  ck SC2050..     
│ │ │ -001b5480: 2020 2066 735f 7479 7065 3d22 220a 2020     fs_type="".  
│ │ │ -001b5490: 2020 2020 2020 6966 205b 2020 2224 6673        if [  "$fs
│ │ │ -001b54a0: 5f74 7970 6522 203d 3d20 2269 736f 3936  _type" == "iso96
│ │ │ -001b54b0: 3630 2220 5d20 3b20 7468 656e 0a20 2020  60" ] ; then.   
│ │ │ -001b54c0: 2020 2020 2020 2020 2070 7265 7669 6f75           previou
│ │ │ -001b54d0: 735f 6d6f 756e 745f 6f70 7473 3d24 2873  s_mount_opts=$(s
│ │ │ -001b54e0: 6564 2027 732f 626c 6f63 6b73 697a 653d  ed 's/blocksize=
│ │ │ -001b54f0: 2f62 6c6f 636b 3d2f 2720 266c 743b 266c  /block=/' <&l
│ │ │ -001b5500: 743b 266c 743b 2022 2470 7265 7669 6f75  t;< "$previou
│ │ │ -001b5510: 735f 6d6f 756e 745f 6f70 7473 2229 0a20  s_mount_opts"). 
│ │ │ -001b5520: 2020 2020 2020 2066 690a 2020 2020 2020         fi.      
│ │ │ -001b5530: 2020 6563 686f 2022 202f 7661 722f 6c6f    echo " /var/lo
│ │ │ -001b5540: 6720 2064 6566 6175 6c74 732c 247b 7072  g  defaults,${pr
│ │ │ -001b5550: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001b5560: 737d 6e6f 6465 7620 3020 3022 2026 6774  s}nodev 0 0" >
│ │ │ -001b5570: 3b26 6774 3b20 2f65 7463 2f66 7374 6162  ;> /etc/fstab
│ │ │ -001b5580: 0a20 2020 2023 2049 6620 7468 6520 6d6f  .    # If the mo
│ │ │ -001b5590: 756e 745f 6f70 7420 6f70 7469 6f6e 2069  unt_opt option i
│ │ │ -001b55a0: 7320 6e6f 7420 616c 7265 6164 7920 696e  s not already in
│ │ │ -001b55b0: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ -001b55c0: 2773 202f 6574 632f 6673 7461 6220 656e  's /etc/fstab en
│ │ │ -001b55d0: 7472 792c 2061 6464 2069 740a 2020 2020  try, add it.    
│ │ │ -001b55e0: 656c 6966 2021 2067 7265 7020 2224 6d6f  elif ! grep "$mo
│ │ │ -001b55f0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001b5600: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ -001b5610: 6162 207c 2067 7265 7020 2d71 2022 6e6f  ab | grep -q "no
│ │ │ -001b5620: 6465 7622 3b20 7468 656e 0a20 2020 2020  dev"; then.     
│ │ │ -001b5630: 2020 2070 7265 7669 6f75 735f 6d6f 756e     previous_moun
│ │ │ -001b5640: 745f 6f70 7473 3d24 2867 7265 7020 2224  t_opts=$(grep "$
│ │ │ -001b5650: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001b5660: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ -001b5670: 7374 6162 207c 2061 776b 2027 7b70 7269  stab | awk '{pri
│ │ │ -001b5680: 6e74 2024 347d 2729 0a20 2020 2020 2020  nt $4}').       
│ │ │ -001b5690: 2073 6564 202d 6920 2273 7c5c 2824 7b6d   sed -i "s|\(${m
│ │ │ -001b56a0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001b56b0: 5f72 6567 6578 707d 2e2a 247b 7072 6576  _regexp}.*${prev
│ │ │ -001b56c0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 737d  ious_mount_opts}
│ │ │ -001b56d0: 5c29 7c5c 312c 6e6f 6465 767c 2220 2f65  \)|\1,nodev|" /e
│ │ │ -001b56e0: 7463 2f66 7374 6162 0a20 2020 2066 690a  tc/fstab.    fi.
│ │ │ -001b56f0: 0a0a 2020 2020 6966 206d 6b64 6972 202d  ..    if mkdir -
│ │ │ -001b5700: 7020 222f 7661 722f 6c6f 6722 3b20 7468  p "/var/log"; th
│ │ │ -001b5710: 656e 0a20 2020 2020 2020 2069 6620 6d6f  en.        if mo
│ │ │ -001b5720: 756e 7470 6f69 6e74 202d 7120 222f 7661  untpoint -q "/va
│ │ │ -001b5730: 722f 6c6f 6722 3b20 7468 656e 0a20 2020  r/log"; then.   
│ │ │ -001b5740: 2020 2020 2020 2020 206d 6f75 6e74 202d           mount -
│ │ │ -001b5750: 6f20 7265 6d6f 756e 7420 2d2d 7461 7267  o remount --targ
│ │ │ -001b5760: 6574 2022 2f76 6172 2f6c 6f67 220a 2020  et "/var/log".  
│ │ │ -001b5770: 2020 2020 2020 6669 0a20 2020 2066 690a        fi.    fi.
│ │ │ -001b5780: 7d0a 0a70 6572 666f 726d 5f72 656d 6564  }..perform_remed
│ │ │ -001b5790: 6961 7469 6f6e 0a0a 656c 7365 0a20 2020  iation..else.   
│ │ │ -001b57a0: 2026 6774 3b26 616d 703b 3220 6563 686f   >&2 echo
│ │ │ -001b57b0: 2027 5265 6d65 6469 6174 696f 6e20 6973   'Remediation is
│ │ │ -001b57c0: 206e 6f74 2061 7070 6c69 6361 626c 652c   not applicable,
│ │ │ -001b57d0: 206e 6f74 6869 6e67 2077 6173 2064 6f6e   nothing was don
│ │ │ -001b57e0: 6527 0a66 690a 3c2f 636f 6465 3e3c 2f70  e'.fi.

│ │ │ +001b3140: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +001b31e0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr> │ │ │ +001b3230: 3c74 723e 3c74 683e 5374 7261 7465 6779

│ │ │ +001b3270: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ +001b3280: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ +001b3290: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ +001b32a0: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ +001b32b0: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ +001b32c0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001b32d0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001b32e0: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ +001b32f0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +001b3300: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001b3310: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ +001b3320: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ +001b3330: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001b3340: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ +001b3350: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +001b3360: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ +001b3370: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001b3380: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ +001b3390: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ +001b33a0: 745f 6f70 7469 6f6e 5f76 6172 5f6c 6f67  t_option_var_log
│ │ │ +001b33b0: 5f6e 6f64 6576 0a20 202d 206e 6f5f 7265  _nodev.  - no_re
│ │ │ +001b33c0: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ +001b33d0: 616d 653a 2027 4164 6420 6e6f 6465 7620  ame: 'Add nodev 
│ │ │ +001b33e0: 4f70 7469 6f6e 2074 6f20 2f76 6172 2f6c  Option to /var/l
│ │ │ +001b33f0: 6f67 3a20 4368 6563 6b20 696e 666f 726d  og: Check inform
│ │ │ +001b3400: 6174 696f 6e20 6173 736f 6369 6174 6564  ation associated
│ │ │ +001b3410: 2074 6f20 6d6f 756e 7470 6f69 6e74 270a   to mountpoint'.
│ │ │ +001b3420: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +001b3430: 6e2e 636f 6d6d 616e 643a 2066 696e 646d  n.command: findm
│ │ │ +001b3440: 6e74 202d 2d66 7374 6162 2027 2f76 6172  nt --fstab '/var
│ │ │ +001b3450: 2f6c 6f67 270a 2020 7265 6769 7374 6572  /log'.  register
│ │ │ +001b3460: 3a20 6465 7669 6365 5f6e 616d 650a 2020  : device_name.  
│ │ │ +001b3470: 6661 696c 6564 5f77 6865 6e3a 2064 6576  failed_when: dev
│ │ │ +001b3480: 6963 655f 6e61 6d65 2e72 6320 2667 743b  ice_name.rc >
│ │ │ +001b3490: 2031 0a20 2063 6861 6e67 6564 5f77 6865   1.  changed_whe
│ │ │ +001b34a0: 6e3a 2066 616c 7365 0a20 2063 6865 636b  n: false.  check
│ │ │ +001b34b0: 5f6d 6f64 653a 2066 616c 7365 0a20 2077  _mode: false.  w
│ │ │ +001b34c0: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +001b34d0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +001b34e0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001b34f0: 6765 7320 616e 6420 2272 706d 2d6f 7374  ges and "rpm-ost
│ │ │ +001b3500: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001b3510: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001b3520: 2020 2061 6e64 2022 626f 6f74 6322 2069     and "bootc" i
│ │ │ +001b3530: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001b3540: 7061 636b 6167 6573 2061 6e64 206e 6f74  packages and not
│ │ │ +001b3550: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ +001b3560: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ +001b3570: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001b3580: 2020 2061 6e64 2022 6f73 7472 6565 2220     and "ostree" 
│ │ │ +001b3590: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ +001b35a0: 636d 646c 696e 6520 2920 616e 6420 6e6f  cmdline ) and no
│ │ │ +001b35b0: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ +001b35c0: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ +001b35d0: 696e 0a20 2020 205b 2264 6f63 6b65 7222  in.    ["docker"
│ │ │ +001b35e0: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ +001b35f0: 222c 2022 706f 646d 616e 222c 2022 636f  ", "podman", "co
│ │ │ +001b3600: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ +001b3610: 2d20 2722 2f76 6172 2f6c 6f67 2220 696e  - '"/var/log" in
│ │ │ +001b3620: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ +001b3630: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ +001b3640: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ +001b3650: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +001b3660: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ +001b3670: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001b3680: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ +001b3690: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ +001b36a0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001b36b0: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ +001b36c0: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ +001b36d0: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ +001b36e0: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ +001b36f0: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +001b3700: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +001b3710: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +001b3720: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +001b3730: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ +001b3740: 7074 696f 6e5f 7661 725f 6c6f 675f 6e6f  ption_var_log_no
│ │ │ +001b3750: 6465 760a 2020 2d20 6e6f 5f72 6562 6f6f  dev.  - no_reboo
│ │ │ +001b3760: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ +001b3770: 3a20 2741 6464 206e 6f64 6576 204f 7074  : 'Add nodev Opt
│ │ │ +001b3780: 696f 6e20 746f 202f 7661 722f 6c6f 673a  ion to /var/log:
│ │ │ +001b3790: 2043 7265 6174 6520 6d6f 756e 745f 696e   Create mount_in
│ │ │ +001b37a0: 666f 2064 6963 7469 6f6e 6172 7920 7661  fo dictionary va
│ │ │ +001b37b0: 7269 6162 6c65 270a 2020 7365 745f 6661  riable'.  set_fa
│ │ │ +001b37c0: 6374 3a0a 2020 2020 6d6f 756e 745f 696e  ct:.    mount_in
│ │ │ +001b37d0: 666f 3a20 277b 7b20 6d6f 756e 745f 696e  fo: '{{ mount_in
│ │ │ +001b37e0: 666f 7c64 6566 6175 6c74 287b 7d29 7c63  fo|default({})|c
│ │ │ +001b37f0: 6f6d 6269 6e65 287b 6974 656d 2e30 3a20  ombine({item.0: 
│ │ │ +001b3800: 6974 656d 2e31 7d29 207d 7d27 0a20 2077  item.1}) }}'.  w
│ │ │ +001b3810: 6974 685f 746f 6765 7468 6572 3a0a 2020  ith_together:.  
│ │ │ +001b3820: 2d20 277b 7b20 6465 7669 6365 5f6e 616d  - '{{ device_nam
│ │ │ +001b3830: 652e 7374 646f 7574 5f6c 696e 6573 5b30  e.stdout_lines[0
│ │ │ +001b3840: 5d2e 7370 6c69 7428 2920 7c20 6d61 7028  ].split() | map(
│ │ │ +001b3850: 2727 6c6f 7765 7227 2729 207c 206c 6973  ''lower'') | lis
│ │ │ +001b3860: 7420 7d7d 270a 2020 2d20 277b 7b20 6465  t }}'.  - '{{ de
│ │ │ +001b3870: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001b3880: 5f6c 696e 6573 5b31 5d2e 7370 6c69 7428  _lines[1].split(
│ │ │ +001b3890: 2920 7c20 6c69 7374 207d 7d27 0a20 2077  ) | list }}'.  w
│ │ │ +001b38a0: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +001b38b0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +001b38c0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001b38d0: 6765 7320 616e 6420 2272 706d 2d6f 7374  ges and "rpm-ost
│ │ │ +001b38e0: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001b38f0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001b3900: 2020 2061 6e64 2022 626f 6f74 6322 2069     and "bootc" i
│ │ │ +001b3910: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001b3920: 7061 636b 6167 6573 2061 6e64 206e 6f74  packages and not
│ │ │ +001b3930: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ +001b3940: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ +001b3950: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001b3960: 2020 2061 6e64 2022 6f73 7472 6565 2220     and "ostree" 
│ │ │ +001b3970: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ +001b3980: 636d 646c 696e 6520 2920 616e 6420 6e6f  cmdline ) and no
│ │ │ +001b3990: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ +001b39a0: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ +001b39b0: 696e 0a20 2020 205b 2264 6f63 6b65 7222  in.    ["docker"
│ │ │ +001b39c0: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ +001b39d0: 222c 2022 706f 646d 616e 222c 2022 636f  ", "podman", "co
│ │ │ +001b39e0: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ +001b39f0: 2d20 2722 2f76 6172 2f6c 6f67 2220 696e  - '"/var/log" in
│ │ │ +001b3a00: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ +001b3a10: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ +001b3a20: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ +001b3a30: 0a20 202d 2064 6576 6963 655f 6e61 6d65  .  - device_name
│ │ │ +001b3a40: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ +001b3a50: 6564 2061 6e64 2064 6576 6963 655f 6e61  ed and device_na
│ │ │ +001b3a60: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320  me.stdout_lines 
│ │ │ +001b3a70: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ +001b3a80: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001b3a90: 7574 207c 206c 656e 6774 6820 2667 743b  ut | length >
│ │ │ +001b3aa0: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ +001b3ab0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001b3ac0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001b3ad0: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ +001b3ae0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +001b3af0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001b3b00: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ +001b3b10: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ +001b3b20: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001b3b30: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ +001b3b40: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +001b3b50: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ +001b3b60: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001b3b70: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ +001b3b80: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ +001b3b90: 745f 6f70 7469 6f6e 5f76 6172 5f6c 6f67  t_option_var_log
│ │ │ +001b3ba0: 5f6e 6f64 6576 0a20 202d 206e 6f5f 7265  _nodev.  - no_re
│ │ │ +001b3bb0: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ +001b3bc0: 616d 653a 2027 4164 6420 6e6f 6465 7620  ame: 'Add nodev 
│ │ │ +001b3bd0: 4f70 7469 6f6e 2074 6f20 2f76 6172 2f6c  Option to /var/l
│ │ │ +001b3be0: 6f67 3a20 4966 202f 7661 722f 6c6f 6720  og: If /var/log 
│ │ │ +001b3bf0: 6e6f 7420 6d6f 756e 7465 642c 2063 7261  not mounted, cra
│ │ │ +001b3c00: 6674 206d 6f75 6e74 5f69 6e66 6f20 6d61  ft mount_info ma
│ │ │ +001b3c10: 6e75 616c 6c79 270a 2020 7365 745f 6661  nually'.  set_fa
│ │ │ +001b3c20: 6374 3a0a 2020 2020 6d6f 756e 745f 696e  ct:.    mount_in
│ │ │ +001b3c30: 666f 3a20 277b 7b20 6d6f 756e 745f 696e  fo: '{{ mount_in
│ │ │ +001b3c40: 666f 7c64 6566 6175 6c74 287b 7d29 7c63  fo|default({})|c
│ │ │ +001b3c50: 6f6d 6269 6e65 287b 6974 656d 2e30 3a20  ombine({item.0: 
│ │ │ +001b3c60: 6974 656d 2e31 7d29 207d 7d27 0a20 2077  item.1}) }}'.  w
│ │ │ +001b3c70: 6974 685f 746f 6765 7468 6572 3a0a 2020  ith_together:.  
│ │ │ +001b3c80: 2d20 2d20 7461 7267 6574 0a20 2020 202d  - - target.    -
│ │ │ +001b3c90: 2073 6f75 7263 650a 2020 2020 2d20 6673   source.    - fs
│ │ │ +001b3ca0: 7479 7065 0a20 2020 202d 206f 7074 696f  type.    - optio
│ │ │ +001b3cb0: 6e73 0a20 202d 202d 202f 7661 722f 6c6f  ns.  - - /var/lo
│ │ │ +001b3cc0: 670a 2020 2020 2d20 2727 0a20 2020 202d  g.    - ''.    -
│ │ │ +001b3cd0: 2027 270a 2020 2020 2d20 6465 6661 756c   ''.    - defaul
│ │ │ +001b3ce0: 7473 0a20 2077 6865 6e3a 0a20 202d 2028  ts.  when:.  - (
│ │ │ +001b3cf0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +001b3d00: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001b3d10: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ +001b3d20: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ +001b3d30: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001b3d40: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ +001b3d50: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ +001b3d60: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001b3d70: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ +001b3d80: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ +001b3d90: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001b3da0: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ +001b3db0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001b3dc0: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ +001b3dd0: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ +001b3de0: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ +001b3df0: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ +001b3e00: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ +001b3e10: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ +001b3e20: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ +001b3e30: 2920 290a 2020 2d20 2722 2f76 6172 2f6c  ) ).  - '"/var/l
│ │ │ +001b3e40: 6f67 2220 696e 2061 6e73 6962 6c65 5f6d  og" in ansible_m
│ │ │ +001b3e50: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ +001b3e60: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ +001b3e70: 206c 6973 7427 0a20 202d 2028 222d 2d66   list'.  - ("--f
│ │ │ +001b3e80: 7374 6162 2220 7c20 6c65 6e67 7468 203d  stab" | length =
│ │ │ +001b3e90: 3d20 3029 0a20 202d 2064 6576 6963 655f  = 0).  - device_
│ │ │ +001b3ea0: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ +001b3eb0: 6566 696e 6564 2061 6e64 2064 6576 6963  efined and devic
│ │ │ +001b3ec0: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ +001b3ed0: 6e65 7320 6973 2064 6566 696e 6564 0a20  nes is defined. 
│ │ │ +001b3ee0: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ +001b3ef0: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ +001b3f00: 3d3d 2030 290a 2020 7461 6773 3a0a 2020  == 0).  tags:.  
│ │ │ +001b3f10: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001b3f20: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ +001b3f30: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ +001b3f40: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +001b3f50: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001b3f60: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ +001b3f70: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001b3f80: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ +001b3f90: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ +001b3fa0: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +001b3fb0: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ +001b3fc0: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ +001b3fd0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ +001b3fe0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ +001b3ff0: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6c  unt_option_var_l
│ │ │ +001b4000: 6f67 5f6e 6f64 6576 0a20 202d 206e 6f5f  og_nodev.  - no_
│ │ │ +001b4010: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +001b4020: 206e 616d 653a 2027 4164 6420 6e6f 6465   name: 'Add node
│ │ │ +001b4030: 7620 4f70 7469 6f6e 2074 6f20 2f76 6172  v Option to /var
│ │ │ +001b4040: 2f6c 6f67 3a20 4d61 6b65 2073 7572 6520  /log: Make sure 
│ │ │ +001b4050: 6e6f 6465 7620 6f70 7469 6f6e 2069 7320  nodev option is 
│ │ │ +001b4060: 7061 7274 206f 6620 7468 6520 746f 202f  part of the to /
│ │ │ +001b4070: 7661 722f 6c6f 670a 2020 2020 6f70 7469  var/log.    opti
│ │ │ +001b4080: 6f6e 7327 0a20 2073 6574 5f66 6163 743a  ons'.  set_fact:
│ │ │ +001b4090: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ +001b40a0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f20   '{{ mount_info 
│ │ │ +001b40b0: 7c20 636f 6d62 696e 6528 207b 2727 6f70  | combine( {''op
│ │ │ +001b40c0: 7469 6f6e 7327 273a 2727 2727 7e28 6d6f  tions'':''''~(mo
│ │ │ +001b40d0: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ +001b40e0: 207c 0a20 2020 2020 2064 6566 6175 6c74   |.      default
│ │ │ +001b40f0: 2827 2727 2729 297e 2827 272c 2727 2069  (''''))~('','' i
│ │ │ +001b4100: 6620 286d 6f75 6e74 5f69 6e66 6f2e 6f70  f (mount_info.op
│ │ │ +001b4110: 7469 6f6e 7320 7c20 6465 6661 756c 7428  tions | default(
│ │ │ +001b4120: 2727 2727 2929 2065 6c73 6520 2727 2727  '''')) else ''''
│ │ │ +001b4130: 297e 2727 6e6f 6465 7627 270a 2020 2020  )~''nodev''.    
│ │ │ +001b4140: 2020 7d29 207d 7d27 0a20 2077 6865 6e3a    }) }}'.  when:
│ │ │ +001b4150: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ +001b4160: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +001b4170: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001b4180: 616e 6420 2272 706d 2d6f 7374 7265 6522  and "rpm-ostree"
│ │ │ +001b4190: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001b41a0: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001b41b0: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ +001b41c0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001b41d0: 6167 6573 2061 6e64 206e 6f74 2022 6f70  ages and not "op
│ │ │ +001b41e0: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ +001b41f0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001b4200: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001b4210: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ +001b4220: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ +001b4230: 696e 6520 2920 616e 6420 6e6f 7420 2820  ine ) and not ( 
│ │ │ +001b4240: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ +001b4250: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20  zation_type in. 
│ │ │ +001b4260: 2020 205b 2264 6f63 6b65 7222 2c20 226c     ["docker", "l
│ │ │ +001b4270: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ +001b4280: 706f 646d 616e 222c 2022 636f 6e74 6169  podman", "contai
│ │ │ +001b4290: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ +001b42a0: 2f76 6172 2f6c 6f67 2220 696e 2061 6e73  /var/log" in ans
│ │ │ +001b42b0: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ +001b42c0: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ +001b42d0: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ +001b42e0: 206d 6f75 6e74 5f69 6e66 6f20 6973 2064   mount_info is d
│ │ │ +001b42f0: 6566 696e 6564 2061 6e64 2022 6e6f 6465  efined and "node
│ │ │ +001b4300: 7622 206e 6f74 2069 6e20 286d 6f75 6e74  v" not in (mount
│ │ │ +001b4310: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ +001b4320: 6465 6661 756c 7428 2727 2929 0a20 2074  default('')).  t
│ │ │ +001b4330: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +001b4340: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ +001b4350: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ +001b4360: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001b4370: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +001b4380: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ +001b4390: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001b43a0: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ +001b43b0: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ +001b43c0: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ +001b43d0: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ +001b43e0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +001b43f0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +001b4400: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +001b4410: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ +001b4420: 6e5f 7661 725f 6c6f 675f 6e6f 6465 760a  n_var_log_nodev.
│ │ │ +001b4430: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001b4440: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001b4450: 6464 206e 6f64 6576 204f 7074 696f 6e20  dd nodev Option 
│ │ │ +001b4460: 746f 202f 7661 722f 6c6f 673a 2045 6e73  to /var/log: Ens
│ │ │ +001b4470: 7572 6520 2f76 6172 2f6c 6f67 2069 7320  ure /var/log is 
│ │ │ +001b4480: 6d6f 756e 7465 6420 7769 7468 206e 6f64  mounted with nod
│ │ │ +001b4490: 6576 206f 7074 696f 6e27 0a20 2061 6e73  ev option'.  ans
│ │ │ +001b44a0: 6962 6c65 2e70 6f73 6978 2e6d 6f75 6e74  ible.posix.mount
│ │ │ +001b44b0: 3a0a 2020 2020 7061 7468 3a20 2f76 6172  :.    path: /var
│ │ │ +001b44c0: 2f6c 6f67 0a20 2020 2073 7263 3a20 277b  /log.    src: '{
│ │ │ +001b44d0: 7b20 6d6f 756e 745f 696e 666f 2e73 6f75  { mount_info.sou
│ │ │ +001b44e0: 7263 6520 7c20 6465 6661 756c 7428 2727  rce | default(''
│ │ │ +001b44f0: 2727 2920 7d7d 270a 2020 2020 6f70 7473  '') }}'.    opts
│ │ │ +001b4500: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001b4510: 2e6f 7074 696f 6e73 207c 2064 6566 6175  .options | defau
│ │ │ +001b4520: 6c74 2827 2727 2729 207d 7d27 0a20 2020  lt('''') }}'.   
│ │ │ +001b4530: 2073 7461 7465 3a20 6d6f 756e 7465 640a   state: mounted.
│ │ │ +001b4540: 2020 2020 6673 7479 7065 3a20 277b 7b20      fstype: '{{ 
│ │ │ +001b4550: 6d6f 756e 745f 696e 666f 2e66 7374 7970  mount_info.fstyp
│ │ │ +001b4560: 6520 7c20 6465 6661 756c 7428 2727 2727  e | default(''''
│ │ │ +001b4570: 2920 7d7d 270a 2020 7265 6769 7374 6572  ) }}'.  register
│ │ │ +001b4580: 3a20 6d6f 756e 745f 7265 7375 6c74 0a20  : mount_result. 
│ │ │ +001b4590: 2066 6169 6c65 645f 7768 656e 3a0a 2020   failed_when:.  
│ │ │ +001b45a0: 2d20 6d6f 756e 745f 7265 7375 6c74 2069  - mount_result i
│ │ │ +001b45b0: 7320 6661 696c 6564 0a20 202d 2027 2727  s failed.  - '''
│ │ │ +001b45c0: 7461 7267 6574 2069 7320 6275 7379 2727  target is busy''
│ │ │ +001b45d0: 206e 6f74 2069 6e20 286d 6f75 6e74 5f72   not in (mount_r
│ │ │ +001b45e0: 6573 756c 742e 6d73 6720 7c20 6465 6661  esult.msg | defa
│ │ │ +001b45f0: 756c 7428 2727 2727 2929 270a 2020 2d20  ult(''''))'.  - 
│ │ │ +001b4600: 2727 2761 6c72 6561 6479 206d 6f75 6e74  '''already mount
│ │ │ +001b4610: 6564 2727 206e 6f74 2069 6e20 286d 6f75  ed'' not in (mou
│ │ │ +001b4620: 6e74 5f72 6573 756c 742e 6d73 6720 7c20  nt_result.msg | 
│ │ │ +001b4630: 6465 6661 756c 7428 2727 2727 2929 270a  default(''''))'.
│ │ │ +001b4640: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ +001b4650: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ +001b4660: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001b4670: 636b 6167 6573 2061 6e64 2022 7270 6d2d  ckages and "rpm-
│ │ │ +001b4680: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001b4690: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001b46a0: 730a 2020 2020 616e 6420 2262 6f6f 7463  s.    and "bootc
│ │ │ +001b46b0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001b46c0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001b46d0: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ +001b46e0: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ +001b46f0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001b4700: 730a 2020 2020 616e 6420 226f 7374 7265  s.    and "ostre
│ │ │ +001b4710: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ +001b4720: 6f63 5f63 6d64 6c69 6e65 2029 2061 6e64  oc_cmdline ) and
│ │ │ +001b4730: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ +001b4740: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ +001b4750: 7065 2069 6e0a 2020 2020 5b22 646f 636b  pe in.    ["dock
│ │ │ +001b4760: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ +001b4770: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c20  nvz", "podman", 
│ │ │ +001b4780: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ +001b4790: 0a20 202d 2027 222f 7661 722f 6c6f 6722  .  - '"/var/log"
│ │ │ +001b47a0: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ +001b47b0: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ +001b47c0: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ +001b47d0: 7374 270a 2020 2d20 6d6f 756e 745f 696e  st'.  - mount_in
│ │ │ +001b47e0: 666f 2069 7320 6465 6669 6e65 640a 2020  fo is defined.  
│ │ │ +001b47f0: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ +001b4800: 7464 6f75 7420 6973 2064 6566 696e 6564  tdout is defined
│ │ │ +001b4810: 2061 6e64 2028 6465 7669 6365 5f6e 616d   and (device_nam
│ │ │ +001b4820: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ +001b4830: 6820 2667 743b 2030 2929 206f 7220 2822  h > 0)) or ("
│ │ │ +001b4840: 2d2d 6673 7461 6222 0a20 2020 207c 206c  --fstab".    | l
│ │ │ +001b4850: 656e 6774 6820 3d3d 2030 290a 2020 7461  ength == 0).  ta
│ │ │ +001b4860: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +001b4870: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ +001b4880: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ +001b4890: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001b48a0: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ +001b48b0: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ +001b48c0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001b48d0: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ +001b48e0: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ +001b48f0: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001b4900: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001b4910: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001b4920: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001b4930: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001b4940: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001b4950: 5f76 6172 5f6c 6f67 5f6e 6f64 6576 0a20  _var_log_nodev. 
│ │ │ +001b4960: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +001b4970: 6465 640a 3c2f 636f 6465 3e3c 2f70 7265  ded.
Remediation │ │ │ +001b4a30: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ +001b4a40: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Co │ │ │ +001b31c0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +001b31f0: 6e3a 3c2f 7468 3e3c 7464 3e68 6967 683c n:high< │ │ │ +001b3200: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +001b3240: 3a3c 2f74 683e 3c74 643e 636f 6e66 6967 :config │ │ │ +001b3250: 7572 653c 2f74 643e 3c2f 7472 3e3c 2f74 ure
Reboot:false
# Remediatio
│ │ │ +001b4b00: 6e20 6973 2061 7070 6c69 6361 626c 6520  n is applicable 
│ │ │ +001b4b10: 6f6e 6c79 2069 6e20 6365 7274 6169 6e20  only in certain 
│ │ │ +001b4b20: 706c 6174 666f 726d 730a 6966 2028 2021  platforms.if ( !
│ │ │ +001b4b30: 2028 207b 2072 706d 202d 2d71 7569 6574   ( { rpm --quiet
│ │ │ +001b4b40: 202d 7120 6b65 726e 656c 203b 7d20 2661   -q kernel ;} &a
│ │ │ +001b4b50: 6d70 3b26 616d 703b 207b 2072 706d 202d  mp;& { rpm -
│ │ │ +001b4b60: 2d71 7569 6574 202d 7120 7270 6d2d 6f73  -quiet -q rpm-os
│ │ │ +001b4b70: 7472 6565 203b 7d20 2661 6d70 3b26 616d  tree ;} &&am
│ │ │ +001b4b80: 703b 207b 2072 706d 202d 2d71 7569 6574  p; { rpm --quiet
│ │ │ +001b4b90: 202d 7120 626f 6f74 6320 3b7d 2026 616d   -q bootc ;} &am
│ │ │ +001b4ba0: 703b 2661 6d70 3b20 7b20 2120 7270 6d20  p;& { ! rpm 
│ │ │ +001b4bb0: 2d2d 7175 6965 7420 2d71 206f 7065 6e73  --quiet -q opens
│ │ │ +001b4bc0: 6869 6674 2d6b 7562 656c 6574 203b 7d20  hift-kubelet ;} 
│ │ │ +001b4bd0: 2661 6d70 3b26 616d 703b 2028 5b20 2d66  && ([ -f
│ │ │ +001b4be0: 202f 7275 6e2f 6f73 7472 6565 2d62 6f6f   /run/ostree-boo
│ │ │ +001b4bf0: 7465 6420 5d20 7c7c 205b 202d 4c20 2f6f  ted ] || [ -L /o
│ │ │ +001b4c00: 7374 7265 6520 5d29 2029 2026 616d 703b  stree ]) ) &
│ │ │ +001b4c10: 2661 6d70 3b20 2120 2820 5b20 2d66 202f  & ! ( [ -f /
│ │ │ +001b4c20: 2e64 6f63 6b65 7265 6e76 205d 207c 7c20  .dockerenv ] || 
│ │ │ +001b4c30: 5b20 2d66 202f 7275 6e2f 2e63 6f6e 7461  [ -f /run/.conta
│ │ │ +001b4c40: 696e 6572 656e 7620 5d20 2920 2920 2661  inerenv ] ) ) &a
│ │ │ +001b4c50: 6d70 3b26 616d 703b 207b 2028 2066 696e  mp;& { ( fin
│ │ │ +001b4c60: 646d 6e74 202d 2d6b 6572 6e65 6c20 222f  dmnt --kernel "/
│ │ │ +001b4c70: 7661 722f 6c6f 6722 2026 6774 3b20 2f64  var/log" > /d
│ │ │ +001b4c80: 6576 2f6e 756c 6c20 7c7c 2066 696e 646d  ev/null || findm
│ │ │ +001b4c90: 6e74 202d 2d66 7374 6162 2022 2f76 6172  nt --fstab "/var
│ │ │ +001b4ca0: 2f6c 6f67 2220 2667 743b 202f 6465 762f  /log" > /dev/
│ │ │ +001b4cb0: 6e75 6c6c 2029 3b20 7d3b 2074 6865 6e0a  null ); }; then.
│ │ │ +001b4cc0: 0a66 756e 6374 696f 6e20 7065 7266 6f72  .function perfor
│ │ │ +001b4cd0: 6d5f 7265 6d65 6469 6174 696f 6e20 7b0a  m_remediation {.
│ │ │ +001b4ce0: 0a20 2020 200a 2020 2020 2020 2020 2320  .    .        # 
│ │ │ +001b4cf0: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ +001b4d00: 2f76 6172 2f6c 6f67 2068 6173 2074 6f20  /var/log has to 
│ │ │ +001b4d10: 6265 2064 6566 696e 6564 2069 6e20 2f65  be defined in /e
│ │ │ +001b4d20: 7463 2f66 7374 6162 0a20 2020 2020 2020  tc/fstab.       
│ │ │ +001b4d30: 2023 2062 6566 6f72 6520 7468 6973 2072   # before this r
│ │ │ +001b4d40: 656d 6564 6961 7469 6f6e 2063 616e 2062  emediation can b
│ │ │ +001b4d50: 6520 6578 6563 7574 6564 2e20 496e 2063  e executed. In c
│ │ │ +001b4d60: 6173 6520 6974 2069 7320 6e6f 7420 6465  ase it is not de
│ │ │ +001b4d70: 6669 6e65 642c 2074 6865 0a20 2020 2020  fined, the.     
│ │ │ +001b4d80: 2020 2023 2072 656d 6564 6961 7469 6f6e     # remediation
│ │ │ +001b4d90: 2061 626f 7274 7320 616e 6420 6e6f 2063   aborts and no c
│ │ │ +001b4da0: 6861 6e67 6573 2072 6567 6172 6469 6e67  hanges regarding
│ │ │ +001b4db0: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ +001b4dc0: 2061 7265 2064 6f6e 652e 0a20 2020 2020   are done..     
│ │ │ +001b4dd0: 2020 206d 6f75 6e74 5f70 6f69 6e74 5f6d     mount_point_m
│ │ │ +001b4de0: 6174 6368 5f72 6567 6578 703d 2224 2870  atch_regexp="$(p
│ │ │ +001b4df0: 7269 6e74 6620 225e 5b5b 3a73 7061 6365  rintf "^[[:space
│ │ │ +001b4e00: 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061  :]]*[^#].*[[:spa
│ │ │ +001b4e10: 6365 3a5d 5d25 735b 5b3a 7370 6163 653a  ce:]]%s[[:space:
│ │ │ +001b4e20: 5d5d 2220 222f 7661 722f 6c6f 6722 2922  ]]" "/var/log")"
│ │ │ +001b4e30: 0a0a 2020 2020 6772 6570 2022 246d 6f75  ..    grep "$mou
│ │ │ +001b4e40: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +001b4e50: 6567 6578 7022 202d 7120 2f65 7463 2f66  egexp" -q /etc/f
│ │ │ +001b4e60: 7374 6162 205c 0a20 2020 2020 2020 207c  stab \.        |
│ │ │ +001b4e70: 7c20 7b20 6563 686f 2022 5468 6520 6d6f  | { echo "The mo
│ │ │ +001b4e80: 756e 7420 706f 696e 7420 272f 7661 722f  unt point '/var/
│ │ │ +001b4e90: 6c6f 6727 2069 7320 6e6f 7420 6576 656e  log' is not even
│ │ │ +001b4ea0: 2069 6e20 2f65 7463 2f66 7374 6162 2c20   in /etc/fstab, 
│ │ │ +001b4eb0: 736f 2077 6520 6361 6e27 7420 7365 7420  so we can't set 
│ │ │ +001b4ec0: 7570 206d 6f75 6e74 206f 7074 696f 6e73  up mount options
│ │ │ +001b4ed0: 2220 2667 743b 2661 6d70 3b32 3b0a 2020  " >&2;.  
│ │ │ +001b4ee0: 2020 2020 2020 2020 2020 2020 2020 6563                ec
│ │ │ +001b4ef0: 686f 2022 4e6f 7420 7265 6d65 6469 6174  ho "Not remediat
│ │ │ +001b4f00: 696e 672c 2062 6563 6175 7365 2074 6865  ing, because the
│ │ │ +001b4f10: 7265 2069 7320 6e6f 2072 6563 6f72 6420  re is no record 
│ │ │ +001b4f20: 6f66 202f 7661 722f 6c6f 6720 696e 202f  of /var/log in /
│ │ │ +001b4f30: 6574 632f 6673 7461 6222 2026 6774 3b26  etc/fstab" >&
│ │ │ +001b4f40: 616d 703b 323b 2072 6574 7572 6e20 313b  amp;2; return 1;
│ │ │ +001b4f50: 207d 0a20 2020 200a 0a0a 2020 2020 6d6f   }.    ...    mo
│ │ │ +001b4f60: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001b4f70: 7265 6765 7870 3d22 2428 7072 696e 7466  regexp="$(printf
│ │ │ +001b4f80: 2022 5e5b 5b3a 7370 6163 653a 5d5d 2a5b   "^[[:space:]]*[
│ │ │ +001b4f90: 5e23 5d2e 2a5b 5b3a 7370 6163 653a 5d5d  ^#].*[[:space:]]
│ │ │ +001b4fa0: 2573 5b5b 3a73 7061 6365 3a5d 5d22 202f  %s[[:space:]]" /
│ │ │ +001b4fb0: 7661 722f 6c6f 6729 220a 0a20 2020 2023  var/log)"..    #
│ │ │ +001b4fc0: 2049 6620 7468 6520 6d6f 756e 7420 706f   If the mount po
│ │ │ +001b4fd0: 696e 7420 6973 206e 6f74 2069 6e20 2f65  int is not in /e
│ │ │ +001b4fe0: 7463 2f66 7374 6162 2c20 6765 7420 7072  tc/fstab, get pr
│ │ │ +001b4ff0: 6576 696f 7573 206d 6f75 6e74 206f 7074  evious mount opt
│ │ │ +001b5000: 696f 6e73 2066 726f 6d20 2f65 7463 2f6d  ions from /etc/m
│ │ │ +001b5010: 7461 620a 2020 2020 6966 2021 2067 7265  tab.    if ! gre
│ │ │ +001b5020: 7020 2d71 2022 246d 6f75 6e74 5f70 6f69  p -q "$mount_poi
│ │ │ +001b5030: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ +001b5040: 202f 6574 632f 6673 7461 623b 2074 6865   /etc/fstab; the
│ │ │ +001b5050: 6e0a 2020 2020 2020 2020 2320 7275 6e74  n.        # runt
│ │ │ +001b5060: 696d 6520 6f70 7473 2077 6974 686f 7574  ime opts without
│ │ │ +001b5070: 2073 6f6d 6520 6175 746f 6d61 7469 6320   some automatic 
│ │ │ +001b5080: 6b65 726e 656c 2f75 7365 7273 7061 6365  kernel/userspace
│ │ │ +001b5090: 2d61 6464 6564 2064 6566 6175 6c74 730a  -added defaults.
│ │ │ +001b50a0: 2020 2020 2020 2020 7072 6576 696f 7573          previous
│ │ │ +001b50b0: 5f6d 6f75 6e74 5f6f 7074 733d 2428 6772  _mount_opts=$(gr
│ │ │ +001b50c0: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ +001b50d0: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ +001b50e0: 6574 632f 6d74 6162 207c 2068 6561 6420  etc/mtab | head 
│ │ │ +001b50f0: 2d31 207c 2020 6177 6b20 277b 7072 696e  -1 |  awk '{prin
│ │ │ +001b5100: 7420 2434 7d27 205c 0a20 2020 2020 2020  t $4}' \.       
│ │ │ +001b5110: 2020 2020 2020 2020 2020 2020 207c 2073               | s
│ │ │ +001b5120: 6564 202d 4520 2273 2f28 7277 7c64 6566  ed -E "s/(rw|def
│ │ │ +001b5130: 6175 6c74 737c 7365 636c 6162 656c 7c6e  aults|seclabel|n
│ │ │ +001b5140: 6f64 6576 2928 2c7c 2429 2f2f 673b 732f  odev)(,|$)//g;s/
│ │ │ +001b5150: 2c24 2f2f 2229 0a20 2020 2020 2020 205b  ,$//").        [
│ │ │ +001b5160: 2022 2470 7265 7669 6f75 735f 6d6f 756e   "$previous_moun
│ │ │ +001b5170: 745f 6f70 7473 2220 5d20 2661 6d70 3b26  t_opts" ] &&
│ │ │ +001b5180: 616d 703b 2070 7265 7669 6f75 735f 6d6f  amp; previous_mo
│ │ │ +001b5190: 756e 745f 6f70 7473 2b3d 222c 220a 2020  unt_opts+=",".  
│ │ │ +001b51a0: 2020 2020 2020 2320 496e 2069 736f 3936        # In iso96
│ │ │ +001b51b0: 3630 2066 696c 6573 7973 7465 6d73 206d  60 filesystems m
│ │ │ +001b51c0: 7461 6220 636f 756c 6420 6465 7363 7269  tab could descri
│ │ │ +001b51d0: 6265 2061 2022 626c 6f63 6b73 697a 6522  be a "blocksize"
│ │ │ +001b51e0: 2076 616c 7565 2c20 7468 6973 2073 686f   value, this sho
│ │ │ +001b51f0: 756c 6420 6265 2072 6566 6c65 6374 6564  uld be reflected
│ │ │ +001b5200: 2069 6e0a 2020 2020 2020 2020 2320 6673   in.        # fs
│ │ │ +001b5210: 7461 6220 6173 2022 626c 6f63 6b22 2e20  tab as "block". 
│ │ │ +001b5220: 2054 6865 206e 6578 7420 7661 7269 6162   The next variab
│ │ │ +001b5230: 6c65 2069 7320 746f 2073 6174 6973 6679  le is to satisfy
│ │ │ +001b5240: 2073 6865 6c6c 6368 6563 6b20 5343 3230   shellcheck SC20
│ │ │ +001b5250: 3530 2e0a 2020 2020 2020 2020 6673 5f74  50..        fs_t
│ │ │ +001b5260: 7970 653d 2222 0a20 2020 2020 2020 2069  ype="".        i
│ │ │ +001b5270: 6620 5b20 2022 2466 735f 7479 7065 2220  f [  "$fs_type" 
│ │ │ +001b5280: 3d3d 2022 6973 6f39 3636 3022 205d 203b  == "iso9660" ] ;
│ │ │ +001b5290: 2074 6865 6e0a 2020 2020 2020 2020 2020   then.          
│ │ │ +001b52a0: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ +001b52b0: 5f6f 7074 733d 2428 7365 6420 2773 2f62  _opts=$(sed 's/b
│ │ │ +001b52c0: 6c6f 636b 7369 7a65 3d2f 626c 6f63 6b3d  locksize=/block=
│ │ │ +001b52d0: 2f27 2026 6c74 3b26 6c74 3b26 6c74 3b20  /' <<< 
│ │ │ +001b52e0: 2224 7072 6576 696f 7573 5f6d 6f75 6e74  "$previous_mount
│ │ │ +001b52f0: 5f6f 7074 7322 290a 2020 2020 2020 2020  _opts").        
│ │ │ +001b5300: 6669 0a20 2020 2020 2020 2065 6368 6f20  fi.        echo 
│ │ │ +001b5310: 2220 2f76 6172 2f6c 6f67 2020 6465 6661  " /var/log  defa
│ │ │ +001b5320: 756c 7473 2c24 7b70 7265 7669 6f75 735f  ults,${previous_
│ │ │ +001b5330: 6d6f 756e 745f 6f70 7473 7d6e 6f64 6576  mount_opts}nodev
│ │ │ +001b5340: 2030 2030 2220 2667 743b 2667 743b 202f   0 0" >> /
│ │ │ +001b5350: 6574 632f 6673 7461 620a 2020 2020 2320  etc/fstab.    # 
│ │ │ +001b5360: 4966 2074 6865 206d 6f75 6e74 5f6f 7074  If the mount_opt
│ │ │ +001b5370: 206f 7074 696f 6e20 6973 206e 6f74 2061   option is not a
│ │ │ +001b5380: 6c72 6561 6479 2069 6e20 7468 6520 6d6f  lready in the mo
│ │ │ +001b5390: 756e 7420 706f 696e 7427 7320 2f65 7463  unt point's /etc
│ │ │ +001b53a0: 2f66 7374 6162 2065 6e74 7279 2c20 6164  /fstab entry, ad
│ │ │ +001b53b0: 6420 6974 0a20 2020 2065 6c69 6620 2120  d it.    elif ! 
│ │ │ +001b53c0: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ +001b53d0: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ +001b53e0: 202f 6574 632f 6673 7461 6220 7c20 6772   /etc/fstab | gr
│ │ │ +001b53f0: 6570 202d 7120 226e 6f64 6576 223b 2074  ep -q "nodev"; t
│ │ │ +001b5400: 6865 6e0a 2020 2020 2020 2020 7072 6576  hen.        prev
│ │ │ +001b5410: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d  ious_mount_opts=
│ │ │ +001b5420: 2428 6772 6570 2022 246d 6f75 6e74 5f70  $(grep "$mount_p
│ │ │ +001b5430: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001b5440: 7022 202f 6574 632f 6673 7461 6220 7c20  p" /etc/fstab | 
│ │ │ +001b5450: 6177 6b20 277b 7072 696e 7420 2434 7d27  awk '{print $4}'
│ │ │ +001b5460: 290a 2020 2020 2020 2020 7365 6420 2d69  ).        sed -i
│ │ │ +001b5470: 2022 737c 5c28 247b 6d6f 756e 745f 706f   "s|\(${mount_po
│ │ │ +001b5480: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001b5490: 7d2e 2a24 7b70 7265 7669 6f75 735f 6d6f  }.*${previous_mo
│ │ │ +001b54a0: 756e 745f 6f70 7473 7d5c 297c 5c31 2c6e  unt_opts}\)|\1,n
│ │ │ +001b54b0: 6f64 6576 7c22 202f 6574 632f 6673 7461  odev|" /etc/fsta
│ │ │ +001b54c0: 620a 2020 2020 6669 0a0a 0a20 2020 2069  b.    fi...    i
│ │ │ +001b54d0: 6620 6d6b 6469 7220 2d70 2022 2f76 6172  f mkdir -p "/var
│ │ │ +001b54e0: 2f6c 6f67 223b 2074 6865 6e0a 2020 2020  /log"; then.    
│ │ │ +001b54f0: 2020 2020 6966 206d 6f75 6e74 706f 696e      if mountpoin
│ │ │ +001b5500: 7420 2d71 2022 2f76 6172 2f6c 6f67 223b  t -q "/var/log";
│ │ │ +001b5510: 2074 6865 6e0a 2020 2020 2020 2020 2020   then.          
│ │ │ +001b5520: 2020 6d6f 756e 7420 2d6f 2072 656d 6f75    mount -o remou
│ │ │ +001b5530: 6e74 202d 2d74 6172 6765 7420 222f 7661  nt --target "/va
│ │ │ +001b5540: 722f 6c6f 6722 0a20 2020 2020 2020 2066  r/log".        f
│ │ │ +001b5550: 690a 2020 2020 6669 0a7d 0a0a 7065 7266  i.    fi.}..perf
│ │ │ +001b5560: 6f72 6d5f 7265 6d65 6469 6174 696f 6e0a  orm_remediation.
│ │ │ +001b5570: 0a65 6c73 650a 2020 2020 2667 743b 2661  .else.    >&a
│ │ │ +001b5580: 6d70 3b32 2065 6368 6f20 2752 656d 6564  mp;2 echo 'Remed
│ │ │ +001b5590: 6961 7469 6f6e 2069 7320 6e6f 7420 6170  iation is not ap
│ │ │ +001b55a0: 706c 6963 6162 6c65 2c20 6e6f 7468 696e  plicable, nothin
│ │ │ +001b55b0: 6720 7761 7320 646f 6e65 270a 6669 0a3c  g was done'.fi.<
│ │ │ +001b55c0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +001b5670: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ +001b5680: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ +001b5690: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ +001b5760: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +001b5770: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +001b57c0: 0a70 6172 7420 2f76 6172 2f6c 6f67 202d  .part /var/log -
│ │ │ +001b57d0: 2d6d 6f75 6e74 6f70 7469 6f6e 733d 226e  -mountoptions="n
│ │ │ +001b57e0: 6f64 6576 220a 3c2f 636f 6465 3e3c 2f70  odev".

< │ │ │ 001b5800: 2f74 643e 3c2f 7472 3e3c 2f74 626f 6479 /td>
Complexity:low
Disrup │ │ │ +001b5740: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6869 tion:hi │ │ │ +001b5750: 6768 3c2f 7464 3e3c 2f74 723e 3c74 723e gh
Reboot:false
Strat │ │ │ +001b5790: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +001b57a0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
R │ │ │ -001b6410: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ -001b6420: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ -001b6430: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -001b6500: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -001b6510: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -001b6560: 0a70 6172 7420 2f76 6172 2f6c 6f67 202d  .part /var/log -
│ │ │ -001b6570: 2d6d 6f75 6e74 6f70 7469 6f6e 733d 226e  -mountoptions="n
│ │ │ -001b6580: 6f65 7865 6322 0a3c 2f63 6f64 653e 3c2f  oexec".Remediati
│ │ │ -001b6640: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070  on Ansible snipp
│ │ │ -001b6650: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...
│ │ │ -001b66d0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
Strategy: │ │ │ -001b6760: 3c74 643e 636f 6e66 6967 7572 653c 2f74
Complexity:low
Disrup │ │ │ -001b64e0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6869 tion:hi │ │ │ -001b64f0: 6768 3c2f 7464 3e3c 2f74 723e 3c74 723e gh
Reboot:false
Strat │ │ │ -001b6530: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -001b6540: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexi │ │ │ -001b66e0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -001b66f0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:high
Reboo │ │ │ -001b6730: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -001b6740: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
configure
< │ │ │ -001b6780: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -001b6790: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -001b67a0: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -001b67b0: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -001b67c0: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -001b67d0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ -001b67e0: 3030 2d35 332d 4143 2d36 0a20 202d 204e 00-53-AC-6. - N │ │ │ -001b67f0: 4953 542d 3830 302d 3533 2d41 432d 3628 IST-800-53-AC-6( │ │ │ -001b6800: 3129 0a20 202d 204e 4953 542d 3830 302d 1). - NIST-800- │ │ │ -001b6810: 3533 2d43 4d2d 3628 6129 0a20 202d 204e 53-CM-6(a). - N │ │ │ -001b6820: 4953 542d 3830 302d 3533 2d43 4d2d 3728 IST-800-53-CM-7( │ │ │ -001b6830: 6129 0a20 202d 204e 4953 542d 3830 302d a). - NIST-800- │ │ │ -001b6840: 3533 2d43 4d2d 3728 6229 0a20 202d 204e 53-CM-7(b). - N │ │ │ -001b6850: 4953 542d 3830 302d 3533 2d4d 502d 370a IST-800-53-MP-7. │ │ │ -001b6860: 2020 2d20 636f 6e66 6967 7572 655f 7374 - configure_st │ │ │ -001b6870: 7261 7465 6779 0a20 202d 2068 6967 685f rategy. - high_ │ │ │ -001b6880: 6469 7372 7570 7469 6f6e 0a20 202d 206c disruption. - l │ │ │ -001b6890: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ -001b68a0: 2d20 6d65 6469 756d 5f73 6576 6572 6974 - medium_severit │ │ │ -001b68b0: 790a 2020 2d20 6d6f 756e 745f 6f70 7469 y. - mount_opti │ │ │ -001b68c0: 6f6e 5f76 6172 5f6c 6f67 5f6e 6f65 7865 on_var_log_noexe │ │ │ -001b68d0: 630a 2020 2d20 6e6f 5f72 6562 6f6f 745f c. - no_reboot_ │ │ │ -001b68e0: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20 needed..- name: │ │ │ -001b68f0: 2741 6464 206e 6f65 7865 6320 4f70 7469 'Add noexec Opti │ │ │ -001b6900: 6f6e 2074 6f20 2f76 6172 2f6c 6f67 3a20 on to /var/log: │ │ │ -001b6910: 4368 6563 6b20 696e 666f 726d 6174 696f Check informatio │ │ │ -001b6920: 6e20 6173 736f 6369 6174 6564 2074 6f20 n associated to │ │ │ -001b6930: 6d6f 756e 7470 6f69 6e74 270a 2020 616e mountpoint'. an │ │ │ -001b6940: 7369 626c 652e 6275 696c 7469 6e2e 636f sible.builtin.co │ │ │ -001b6950: 6d6d 616e 643a 2066 696e 646d 6e74 202d mmand: findmnt - │ │ │ -001b6960: 2d66 7374 6162 2027 2f76 6172 2f6c 6f67 -fstab '/var/log │ │ │ -001b6970: 270a 2020 7265 6769 7374 6572 3a20 6465 '. register: de │ │ │ -001b6980: 7669 6365 5f6e 616d 650a 2020 6661 696c vice_name. fail │ │ │ -001b6990: 6564 5f77 6865 6e3a 2064 6576 6963 655f ed_when: device_ │ │ │ -001b69a0: 6e61 6d65 2e72 6320 2667 743b 2031 0a20 name.rc > 1. │ │ │ -001b69b0: 2063 6861 6e67 6564 5f77 6865 6e3a 2066 changed_when: f │ │ │ -001b69c0: 616c 7365 0a20 2063 6865 636b 5f6d 6f64 alse. check_mod │ │ │ -001b69d0: 653a 2066 616c 7365 0a20 2077 6865 6e3a e: false. when: │ │ │ -001b69e0: 0a20 202d 2028 206e 6f74 2028 2022 6b65 . - ( not ( "ke │ │ │ -001b69f0: 726e 656c 2220 696e 2061 6e73 6962 6c65 rnel" in ansible │ │ │ -001b6a00: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ -001b6a10: 616e 6420 2272 706d 2d6f 7374 7265 6522 and "rpm-ostree" │ │ │ -001b6a20: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -001b6a30: 732e 7061 636b 6167 6573 0a20 2020 2061 s.packages. a │ │ │ -001b6a40: 6e64 2022 626f 6f74 6322 2069 6e20 616e nd "bootc" in an │ │ │ -001b6a50: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ -001b6a60: 6167 6573 2061 6e64 206e 6f74 2022 6f70 ages and not "op │ │ │ -001b6a70: 656e 7368 6966 742d 6b75 6265 6c65 7422 enshift-kubelet" │ │ │ -001b6a80: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -001b6a90: 732e 7061 636b 6167 6573 0a20 2020 2061 s.packages. a │ │ │ -001b6aa0: 6e64 2022 6f73 7472 6565 2220 696e 2061 nd "ostree" in a │ │ │ -001b6ab0: 6e73 6962 6c65 5f70 726f 635f 636d 646c nsible_proc_cmdl │ │ │ -001b6ac0: 696e 6520 2920 616e 6420 6e6f 7420 2820 ine ) and not ( │ │ │ -001b6ad0: 616e 7369 626c 655f 7669 7274 7561 6c69 ansible_virtuali │ │ │ -001b6ae0: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20 zation_type in. │ │ │ -001b6af0: 2020 205b 2264 6f63 6b65 7222 2c20 226c ["docker", "l │ │ │ -001b6b00: 7863 222c 2022 6f70 656e 767a 222c 2022 xc", "openvz", " │ │ │ -001b6b10: 706f 646d 616e 222c 2022 636f 6e74 6169 podman", "contai │ │ │ -001b6b20: 6e65 7222 5d20 2920 290a 2020 2d20 2722 ner"] ) ). - '" │ │ │ -001b6b30: 2f76 6172 2f6c 6f67 2220 696e 2061 6e73 /var/log" in ans │ │ │ -001b6b40: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61 ible_mounts | ma │ │ │ -001b6b50: 7028 6174 7472 6962 7574 653d 226d 6f75 p(attribute="mou │ │ │ -001b6b60: 6e74 2229 207c 206c 6973 7427 0a20 2074 nt") | list'. t │ │ │ -001b6b70: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ -001b6b80: 302d 3533 2d41 432d 360a 2020 2d20 4e49 0-53-AC-6. - NI │ │ │ -001b6b90: 5354 2d38 3030 2d35 332d 4143 2d36 2831 ST-800-53-AC-6(1 │ │ │ -001b6ba0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -001b6bb0: 332d 434d 2d36 2861 290a 2020 2d20 4e49 3-CM-6(a). - NI │ │ │ -001b6bc0: 5354 2d38 3030 2d35 332d 434d 2d37 2861 ST-800-53-CM-7(a │ │ │ -001b6bd0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -001b6be0: 332d 434d 2d37 2862 290a 2020 2d20 4e49 3-CM-7(b). - NI │ │ │ -001b6bf0: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20 ST-800-53-MP-7. │ │ │ -001b6c00: 202d 2063 6f6e 6669 6775 7265 5f73 7472 - configure_str │ │ │ -001b6c10: 6174 6567 790a 2020 2d20 6869 6768 5f64 ategy. - high_d │ │ │ -001b6c20: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f isruption. - lo │ │ │ -001b6c30: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ -001b6c40: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ -001b6c50: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f . - mount_optio │ │ │ -001b6c60: 6e5f 7661 725f 6c6f 675f 6e6f 6578 6563 n_var_log_noexec │ │ │ -001b6c70: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ -001b6c80: 6565 6465 640a 0a2d 206e 616d 653a 2027 eeded..- name: ' │ │ │ -001b6c90: 4164 6420 6e6f 6578 6563 204f 7074 696f Add noexec Optio │ │ │ -001b6ca0: 6e20 746f 202f 7661 722f 6c6f 673a 2043 n to /var/log: C │ │ │ -001b6cb0: 7265 6174 6520 6d6f 756e 745f 696e 666f reate mount_info │ │ │ -001b6cc0: 2064 6963 7469 6f6e 6172 7920 7661 7269 dictionary vari │ │ │ -001b6cd0: 6162 6c65 270a 2020 7365 745f 6661 6374 able'. set_fact │ │ │ -001b6ce0: 3a0a 2020 2020 6d6f 756e 745f 696e 666f :. mount_info │ │ │ -001b6cf0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f : '{{ mount_info │ │ │ -001b6d00: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d |default({})|com │ │ │ -001b6d10: 6269 6e65 287b 6974 656d 2e30 3a20 6974 bine({item.0: it │ │ │ -001b6d20: 656d 2e31 7d29 207d 7d27 0a20 2077 6974 em.1}) }}'. wit │ │ │ -001b6d30: 685f 746f 6765 7468 6572 3a0a 2020 2d20 h_together:. - │ │ │ -001b6d40: 277b 7b20 6465 7669 6365 5f6e 616d 652e '{{ device_name. │ │ │ -001b6d50: 7374 646f 7574 5f6c 696e 6573 5b30 5d2e stdout_lines[0]. │ │ │ -001b6d60: 7370 6c69 7428 2920 7c20 6d61 7028 2727 split() | map('' │ │ │ -001b6d70: 6c6f 7765 7227 2729 207c 206c 6973 7420 lower'') | list │ │ │ -001b6d80: 7d7d 270a 2020 2d20 277b 7b20 6465 7669 }}'. - '{{ devi │ │ │ -001b6d90: 6365 5f6e 616d 652e 7374 646f 7574 5f6c ce_name.stdout_l │ │ │ -001b6da0: 696e 6573 5b31 5d2e 7370 6c69 7428 2920 ines[1].split() │ │ │ -001b6db0: 7c20 6c69 7374 207d 7d27 0a20 2077 6865 | list }}'. whe │ │ │ -001b6dc0: 6e3a 0a20 202d 2028 206e 6f74 2028 2022 n:. - ( not ( " │ │ │ -001b6dd0: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ -001b6de0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -001b6df0: 7320 616e 6420 2272 706d 2d6f 7374 7265 s and "rpm-ostre │ │ │ -001b6e00: 6522 2069 6e20 616e 7369 626c 655f 6661 e" in ansible_fa │ │ │ -001b6e10: 6374 732e 7061 636b 6167 6573 0a20 2020 cts.packages. │ │ │ -001b6e20: 2061 6e64 2022 626f 6f74 6322 2069 6e20 and "bootc" in │ │ │ -001b6e30: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -001b6e40: 636b 6167 6573 2061 6e64 206e 6f74 2022 ckages and not " │ │ │ -001b6e50: 6f70 656e 7368 6966 742d 6b75 6265 6c65 openshift-kubele │ │ │ -001b6e60: 7422 2069 6e20 616e 7369 626c 655f 6661 t" in ansible_fa │ │ │ -001b6e70: 6374 732e 7061 636b 6167 6573 0a20 2020 cts.packages. │ │ │ -001b6e80: 2061 6e64 2022 6f73 7472 6565 2220 696e and "ostree" in │ │ │ -001b6e90: 2061 6e73 6962 6c65 5f70 726f 635f 636d ansible_proc_cm │ │ │ -001b6ea0: 646c 696e 6520 2920 616e 6420 6e6f 7420 dline ) and not │ │ │ -001b6eb0: 2820 616e 7369 626c 655f 7669 7274 7561 ( ansible_virtua │ │ │ -001b6ec0: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e lization_type in │ │ │ -001b6ed0: 0a20 2020 205b 2264 6f63 6b65 7222 2c20 . ["docker", │ │ │ -001b6ee0: 226c 7863 222c 2022 6f70 656e 767a 222c "lxc", "openvz", │ │ │ -001b6ef0: 2022 706f 646d 616e 222c 2022 636f 6e74 "podman", "cont │ │ │ -001b6f00: 6169 6e65 7222 5d20 2920 290a 2020 2d20 ainer"] ) ). - │ │ │ -001b6f10: 2722 2f76 6172 2f6c 6f67 2220 696e 2061 '"/var/log" in a │ │ │ -001b6f20: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20 nsible_mounts | │ │ │ -001b6f30: 6d61 7028 6174 7472 6962 7574 653d 226d map(attribute="m │ │ │ -001b6f40: 6f75 6e74 2229 207c 206c 6973 7427 0a20 ount") | list'. │ │ │ -001b6f50: 202d 2064 6576 6963 655f 6e61 6d65 2e73 - device_name.s │ │ │ -001b6f60: 7464 6f75 7420 6973 2064 6566 696e 6564 tdout is defined │ │ │ -001b6f70: 2061 6e64 2064 6576 6963 655f 6e61 6d65 and device_name │ │ │ -001b6f80: 2e73 7464 6f75 745f 6c69 6e65 7320 6973 .stdout_lines is │ │ │ -001b6f90: 2064 6566 696e 6564 0a20 202d 2028 6465 defined. - (de │ │ │ -001b6fa0: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ -001b6fb0: 207c 206c 656e 6774 6820 2667 743b 2030 | length > 0 │ │ │ -001b6fc0: 290a 2020 7461 6773 3a0a 2020 2d20 4e49 ). tags:. - NI │ │ │ -001b6fd0: 5354 2d38 3030 2d35 332d 4143 2d36 0a20 ST-800-53-AC-6. │ │ │ -001b6fe0: 202d 204e 4953 542d 3830 302d 3533 2d41 - NIST-800-53-A │ │ │ -001b6ff0: 432d 3628 3129 0a20 202d 204e 4953 542d C-6(1). - NIST- │ │ │ -001b7000: 3830 302d 3533 2d43 4d2d 3628 6129 0a20 800-53-CM-6(a). │ │ │ -001b7010: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ -001b7020: 4d2d 3728 6129 0a20 202d 204e 4953 542d M-7(a). - NIST- │ │ │ -001b7030: 3830 302d 3533 2d43 4d2d 3728 6229 0a20 800-53-CM-7(b). │ │ │ -001b7040: 202d 204e 4953 542d 3830 302d 3533 2d4d - NIST-800-53-M │ │ │ -001b7050: 502d 370a 2020 2d20 636f 6e66 6967 7572 P-7. - configur │ │ │ -001b7060: 655f 7374 7261 7465 6779 0a20 202d 2068 e_strategy. - h │ │ │ -001b7070: 6967 685f 6469 7372 7570 7469 6f6e 0a20 igh_disruption. │ │ │ -001b7080: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ -001b7090: 790a 2020 2d20 6d65 6469 756d 5f73 6576 y. - medium_sev │ │ │ -001b70a0: 6572 6974 790a 2020 2d20 6d6f 756e 745f erity. - mount_ │ │ │ -001b70b0: 6f70 7469 6f6e 5f76 6172 5f6c 6f67 5f6e option_var_log_n │ │ │ -001b70c0: 6f65 7865 630a 2020 2d20 6e6f 5f72 6562 oexec. - no_reb │ │ │ -001b70d0: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61 oot_needed..- na │ │ │ -001b70e0: 6d65 3a20 2741 6464 206e 6f65 7865 6320 me: 'Add noexec │ │ │ -001b70f0: 4f70 7469 6f6e 2074 6f20 2f76 6172 2f6c Option to /var/l │ │ │ -001b7100: 6f67 3a20 4966 202f 7661 722f 6c6f 6720 og: If /var/log │ │ │ -001b7110: 6e6f 7420 6d6f 756e 7465 642c 2063 7261 not mounted, cra │ │ │ -001b7120: 6674 206d 6f75 6e74 5f69 6e66 6f0a 2020 ft mount_info. │ │ │ -001b7130: 2020 6d61 6e75 616c 6c79 270a 2020 7365 manually'. se │ │ │ -001b7140: 745f 6661 6374 3a0a 2020 2020 6d6f 756e t_fact:. moun │ │ │ -001b7150: 745f 696e 666f 3a20 277b 7b20 6d6f 756e t_info: '{{ moun │ │ │ -001b7160: 745f 696e 666f 7c64 6566 6175 6c74 287b t_info|default({ │ │ │ -001b7170: 7d29 7c63 6f6d 6269 6e65 287b 6974 656d })|combine({item │ │ │ -001b7180: 2e30 3a20 6974 656d 2e31 7d29 207d 7d27 .0: item.1}) }}' │ │ │ -001b7190: 0a20 2077 6974 685f 746f 6765 7468 6572 . with_together │ │ │ -001b71a0: 3a0a 2020 2d20 2d20 7461 7267 6574 0a20 :. - - target. │ │ │ -001b71b0: 2020 202d 2073 6f75 7263 650a 2020 2020 - source. │ │ │ -001b71c0: 2d20 6673 7479 7065 0a20 2020 202d 206f - fstype. - o │ │ │ -001b71d0: 7074 696f 6e73 0a20 202d 202d 202f 7661 ptions. - - /va │ │ │ -001b71e0: 722f 6c6f 670a 2020 2020 2d20 2727 0a20 r/log. - ''. │ │ │ -001b71f0: 2020 202d 2027 270a 2020 2020 2d20 6465 - ''. - de │ │ │ -001b7200: 6661 756c 7473 0a20 2077 6865 6e3a 0a20 faults. when:. │ │ │ -001b7210: 202d 2028 206e 6f74 2028 2022 6b65 726e - ( not ( "kern │ │ │ -001b7220: 656c 2220 696e 2061 6e73 6962 6c65 5f66 el" in ansible_f │ │ │ -001b7230: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ -001b7240: 6420 2272 706d 2d6f 7374 7265 6522 2069 d "rpm-ostree" i │ │ │ -001b7250: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001b7260: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ -001b7270: 2022 626f 6f74 6322 2069 6e20 616e 7369 "bootc" in ansi │ │ │ -001b7280: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -001b7290: 6573 2061 6e64 206e 6f74 2022 6f70 656e es and not "open │ │ │ -001b72a0: 7368 6966 742d 6b75 6265 6c65 7422 2069 shift-kubelet" i │ │ │ -001b72b0: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001b72c0: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ -001b72d0: 2022 6f73 7472 6565 2220 696e 2061 6e73 "ostree" in ans │ │ │ -001b72e0: 6962 6c65 5f70 726f 635f 636d 646c 696e ible_proc_cmdlin │ │ │ -001b72f0: 6520 2920 616e 6420 6e6f 7420 2820 616e e ) and not ( an │ │ │ -001b7300: 7369 626c 655f 7669 7274 7561 6c69 7a61 sible_virtualiza │ │ │ -001b7310: 7469 6f6e 5f74 7970 6520 696e 0a20 2020 tion_type in. │ │ │ -001b7320: 205b 2264 6f63 6b65 7222 2c20 226c 7863 ["docker", "lxc │ │ │ -001b7330: 222c 2022 6f70 656e 767a 222c 2022 706f ", "openvz", "po │ │ │ -001b7340: 646d 616e 222c 2022 636f 6e74 6169 6e65 dman", "containe │ │ │ -001b7350: 7222 5d20 2920 290a 2020 2d20 2722 2f76 r"] ) ). - '"/v │ │ │ -001b7360: 6172 2f6c 6f67 2220 696e 2061 6e73 6962 ar/log" in ansib │ │ │ -001b7370: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028 le_mounts | map( │ │ │ -001b7380: 6174 7472 6962 7574 653d 226d 6f75 6e74 attribute="mount │ │ │ -001b7390: 2229 207c 206c 6973 7427 0a20 202d 2028 ") | list'. - ( │ │ │ -001b73a0: 222d 2d66 7374 6162 2220 7c20 6c65 6e67 "--fstab" | leng │ │ │ -001b73b0: 7468 203d 3d20 3029 0a20 202d 2064 6576 th == 0). - dev │ │ │ -001b73c0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420 ice_name.stdout │ │ │ -001b73d0: 6973 2064 6566 696e 6564 2061 6e64 2064 is defined and d │ │ │ -001b73e0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75 evice_name.stdou │ │ │ -001b73f0: 745f 6c69 6e65 7320 6973 2064 6566 696e t_lines is defin │ │ │ -001b7400: 6564 0a20 202d 2028 6465 7669 6365 5f6e ed. - (device_n │ │ │ -001b7410: 616d 652e 7374 646f 7574 207c 206c 656e ame.stdout | len │ │ │ -001b7420: 6774 6820 3d3d 2030 290a 2020 7461 6773 gth == 0). tags │ │ │ -001b7430: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35 :. - NIST-800-5 │ │ │ -001b7440: 332d 4143 2d36 0a20 202d 204e 4953 542d 3-AC-6. - NIST- │ │ │ -001b7450: 3830 302d 3533 2d41 432d 3628 3129 0a20 800-53-AC-6(1). │ │ │ -001b7460: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ -001b7470: 4d2d 3628 6129 0a20 202d 204e 4953 542d M-6(a). - NIST- │ │ │ -001b7480: 3830 302d 3533 2d43 4d2d 3728 6129 0a20 800-53-CM-7(a). │ │ │ -001b7490: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ -001b74a0: 4d2d 3728 6229 0a20 202d 204e 4953 542d M-7(b). - NIST- │ │ │ -001b74b0: 3830 302d 3533 2d4d 502d 370a 2020 2d20 800-53-MP-7. - │ │ │ -001b74c0: 636f 6e66 6967 7572 655f 7374 7261 7465 configure_strate │ │ │ -001b74d0: 6779 0a20 202d 2068 6967 685f 6469 7372 gy. - high_disr │ │ │ -001b74e0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63 uption. - low_c │ │ │ -001b74f0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65 omplexity. - me │ │ │ -001b7500: 6469 756d 5f73 6576 6572 6974 790a 2020 dium_severity. │ │ │ -001b7510: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76 - mount_option_v │ │ │ -001b7520: 6172 5f6c 6f67 5f6e 6f65 7865 630a 2020 ar_log_noexec. │ │ │ -001b7530: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ -001b7540: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464 ed..- name: 'Add │ │ │ -001b7550: 206e 6f65 7865 6320 4f70 7469 6f6e 2074 noexec Option t │ │ │ -001b7560: 6f20 2f76 6172 2f6c 6f67 3a20 4d61 6b65 o /var/log: Make │ │ │ -001b7570: 2073 7572 6520 6e6f 6578 6563 206f 7074 sure noexec opt │ │ │ -001b7580: 696f 6e20 6973 2070 6172 7420 6f66 2074 ion is part of t │ │ │ -001b7590: 6865 2074 6f0a 2020 2020 2f76 6172 2f6c he to. /var/l │ │ │ -001b75a0: 6f67 206f 7074 696f 6e73 270a 2020 7365 og options'. se │ │ │ -001b75b0: 745f 6661 6374 3a0a 2020 2020 6d6f 756e t_fact:. moun │ │ │ -001b75c0: 745f 696e 666f 3a20 277b 7b20 6d6f 756e t_info: '{{ moun │ │ │ -001b75d0: 745f 696e 666f 207c 2063 6f6d 6269 6e65 t_info | combine │ │ │ -001b75e0: 2820 7b27 276f 7074 696f 6e73 2727 3a27 ( {''options'':' │ │ │ -001b75f0: 2727 277e 286d 6f75 6e74 5f69 6e66 6f2e '''~(mount_info. │ │ │ -001b7600: 6f70 7469 6f6e 7320 7c0a 2020 2020 2020 options |. │ │ │ -001b7610: 6465 6661 756c 7428 2727 2727 2929 7e28 default(''''))~( │ │ │ -001b7620: 2727 2c27 2720 6966 2028 6d6f 756e 745f '','' if (mount_ │ │ │ -001b7630: 696e 666f 2e6f 7074 696f 6e73 207c 2064 info.options | d │ │ │ -001b7640: 6566 6175 6c74 2827 2727 2729 2920 656c efault('''')) el │ │ │ -001b7650: 7365 2027 2727 2729 7e27 276e 6f65 7865 se '''')~''noexe │ │ │ -001b7660: 6327 270a 2020 2020 2020 7d29 207d 7d27 c''. }) }}' │ │ │ -001b7670: 0a20 2077 6865 6e3a 0a20 202d 2028 206e . when:. - ( n │ │ │ -001b7680: 6f74 2028 2022 6b65 726e 656c 2220 696e ot ( "kernel" in │ │ │ -001b7690: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -001b76a0: 6163 6b61 6765 7320 616e 6420 2272 706d ackages and "rpm │ │ │ -001b76b0: 2d6f 7374 7265 6522 2069 6e20 616e 7369 -ostree" in ansi │ │ │ -001b76c0: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -001b76d0: 6573 0a20 2020 2061 6e64 2022 626f 6f74 es. and "boot │ │ │ -001b76e0: 6322 2069 6e20 616e 7369 626c 655f 6661 c" in ansible_fa │ │ │ -001b76f0: 6374 732e 7061 636b 6167 6573 2061 6e64 cts.packages and │ │ │ -001b7700: 206e 6f74 2022 6f70 656e 7368 6966 742d not "openshift- │ │ │ -001b7710: 6b75 6265 6c65 7422 2069 6e20 616e 7369 kubelet" in ansi │ │ │ -001b7720: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -001b7730: 6573 0a20 2020 2061 6e64 2022 6f73 7472 es. and "ostr │ │ │ -001b7740: 6565 2220 696e 2061 6e73 6962 6c65 5f70 ee" in ansible_p │ │ │ -001b7750: 726f 635f 636d 646c 696e 6520 2920 616e roc_cmdline ) an │ │ │ -001b7760: 6420 6e6f 7420 2820 616e 7369 626c 655f d not ( ansible_ │ │ │ -001b7770: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74 virtualization_t │ │ │ -001b7780: 7970 6520 696e 0a20 2020 205b 2264 6f63 ype in. ["doc │ │ │ -001b7790: 6b65 7222 2c20 226c 7863 222c 2022 6f70 ker", "lxc", "op │ │ │ -001b77a0: 656e 767a 222c 2022 706f 646d 616e 222c envz", "podman", │ │ │ -001b77b0: 2022 636f 6e74 6169 6e65 7222 5d20 2920 "container"] ) │ │ │ -001b77c0: 290a 2020 2d20 2722 2f76 6172 2f6c 6f67 ). - '"/var/log │ │ │ -001b77d0: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75 " in ansible_mou │ │ │ -001b77e0: 6e74 7320 7c20 6d61 7028 6174 7472 6962 nts | map(attrib │ │ │ -001b77f0: 7574 653d 226d 6f75 6e74 2229 207c 206c ute="mount") | l │ │ │ -001b7800: 6973 7427 0a20 202d 206d 6f75 6e74 5f69 ist'. - mount_i │ │ │ -001b7810: 6e66 6f20 6973 2064 6566 696e 6564 2061 nfo is defined a │ │ │ -001b7820: 6e64 2022 6e6f 6578 6563 2220 6e6f 7420 nd "noexec" not │ │ │ -001b7830: 696e 2028 6d6f 756e 745f 696e 666f 2e6f in (mount_info.o │ │ │ -001b7840: 7074 696f 6e73 207c 2064 6566 6175 6c74 ptions | default │ │ │ -001b7850: 2827 2729 290a 2020 7461 6773 3a0a 2020 ('')). tags:. │ │ │ -001b7860: 2d20 4e49 5354 2d38 3030 2d35 332d 4143 - NIST-800-53-AC │ │ │ -001b7870: 2d36 0a20 202d 204e 4953 542d 3830 302d -6. - NIST-800- │ │ │ -001b7880: 3533 2d41 432d 3628 3129 0a20 202d 204e 53-AC-6(1). - N │ │ │ -001b7890: 4953 542d 3830 302d 3533 2d43 4d2d 3628 IST-800-53-CM-6( │ │ │ -001b78a0: 6129 0a20 202d 204e 4953 542d 3830 302d a). - NIST-800- │ │ │ -001b78b0: 3533 2d43 4d2d 3728 6129 0a20 202d 204e 53-CM-7(a). - N │ │ │ -001b78c0: 4953 542d 3830 302d 3533 2d43 4d2d 3728 IST-800-53-CM-7( │ │ │ -001b78d0: 6229 0a20 202d 204e 4953 542d 3830 302d b). - NIST-800- │ │ │ -001b78e0: 3533 2d4d 502d 370a 2020 2d20 636f 6e66 53-MP-7. - conf │ │ │ -001b78f0: 6967 7572 655f 7374 7261 7465 6779 0a20 igure_strategy. │ │ │ -001b7900: 202d 2068 6967 685f 6469 7372 7570 7469 - high_disrupti │ │ │ -001b7910: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c on. - low_compl │ │ │ -001b7920: 6578 6974 790a 2020 2d20 6d65 6469 756d exity. - medium │ │ │ -001b7930: 5f73 6576 6572 6974 790a 2020 2d20 6d6f _severity. - mo │ │ │ -001b7940: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6c unt_option_var_l │ │ │ -001b7950: 6f67 5f6e 6f65 7865 630a 2020 2d20 6e6f og_noexec. - no │ │ │ -001b7960: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a _reboot_needed.. │ │ │ -001b7970: 2d20 6e61 6d65 3a20 2741 6464 206e 6f65 - name: 'Add noe │ │ │ -001b7980: 7865 6320 4f70 7469 6f6e 2074 6f20 2f76 xec Option to /v │ │ │ -001b7990: 6172 2f6c 6f67 3a20 456e 7375 7265 202f ar/log: Ensure / │ │ │ -001b79a0: 7661 722f 6c6f 6720 6973 206d 6f75 6e74 var/log is mount │ │ │ -001b79b0: 6564 2077 6974 6820 6e6f 6578 6563 206f ed with noexec o │ │ │ -001b79c0: 7074 696f 6e27 0a20 2061 6e73 6962 6c65 ption'. ansible │ │ │ -001b79d0: 2e70 6f73 6978 2e6d 6f75 6e74 3a0a 2020 .posix.mount:. │ │ │ -001b79e0: 2020 7061 7468 3a20 2f76 6172 2f6c 6f67 path: /var/log │ │ │ -001b79f0: 0a20 2020 2073 7263 3a20 277b 7b20 6d6f . src: '{{ mo │ │ │ -001b7a00: 756e 745f 696e 666f 2e73 6f75 7263 6520 unt_info.source │ │ │ -001b7a10: 7c20 6465 6661 756c 7428 2727 2727 2920 | default('''') │ │ │ -001b7a20: 7d7d 270a 2020 2020 6f70 7473 3a20 277b }}'. opts: '{ │ │ │ -001b7a30: 7b20 6d6f 756e 745f 696e 666f 2e6f 7074 { mount_info.opt │ │ │ -001b7a40: 696f 6e73 207c 2064 6566 6175 6c74 2827 ions | default(' │ │ │ -001b7a50: 2727 2729 207d 7d27 0a20 2020 2073 7461 ''') }}'. sta │ │ │ -001b7a60: 7465 3a20 6d6f 756e 7465 640a 2020 2020 te: mounted. │ │ │ -001b7a70: 6673 7479 7065 3a20 277b 7b20 6d6f 756e fstype: '{{ moun │ │ │ -001b7a80: 745f 696e 666f 2e66 7374 7970 6520 7c20 t_info.fstype | │ │ │ -001b7a90: 6465 6661 756c 7428 2727 2727 2920 7d7d default('''') }} │ │ │ -001b7aa0: 270a 2020 7265 6769 7374 6572 3a20 6d6f '. register: mo │ │ │ -001b7ab0: 756e 745f 7265 7375 6c74 0a20 2066 6169 unt_result. fai │ │ │ -001b7ac0: 6c65 645f 7768 656e 3a0a 2020 2d20 6d6f led_when:. - mo │ │ │ -001b7ad0: 756e 745f 7265 7375 6c74 2069 7320 6661 unt_result is fa │ │ │ -001b7ae0: 696c 6564 0a20 202d 2027 2727 7461 7267 iled. - '''targ │ │ │ -001b7af0: 6574 2069 7320 6275 7379 2727 206e 6f74 et is busy'' not │ │ │ -001b7b00: 2069 6e20 286d 6f75 6e74 5f72 6573 756c in (mount_resul │ │ │ -001b7b10: 742e 6d73 6720 7c20 6465 6661 756c 7428 t.msg | default( │ │ │ -001b7b20: 2727 2727 2929 270a 2020 2d20 2727 2761 ''''))'. - '''a │ │ │ -001b7b30: 6c72 6561 6479 206d 6f75 6e74 6564 2727 lready mounted'' │ │ │ -001b7b40: 206e 6f74 2069 6e20 286d 6f75 6e74 5f72 not in (mount_r │ │ │ -001b7b50: 6573 756c 742e 6d73 6720 7c20 6465 6661 esult.msg | defa │ │ │ -001b7b60: 756c 7428 2727 2727 2929 270a 2020 7768 ult(''''))'. wh │ │ │ -001b7b70: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820 en:. - ( not ( │ │ │ -001b7b80: 226b 6572 6e65 6c22 2069 6e20 616e 7369 "kernel" in ansi │ │ │ -001b7b90: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -001b7ba0: 6573 2061 6e64 2022 7270 6d2d 6f73 7472 es and "rpm-ostr │ │ │ -001b7bb0: 6565 2220 696e 2061 6e73 6962 6c65 5f66 ee" in ansible_f │ │ │ -001b7bc0: 6163 7473 2e70 6163 6b61 6765 730a 2020 acts.packages. │ │ │ -001b7bd0: 2020 616e 6420 2262 6f6f 7463 2220 696e and "bootc" in │ │ │ -001b7be0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -001b7bf0: 6163 6b61 6765 7320 616e 6420 6e6f 7420 ackages and not │ │ │ -001b7c00: 226f 7065 6e73 6869 6674 2d6b 7562 656c "openshift-kubel │ │ │ -001b7c10: 6574 2220 696e 2061 6e73 6962 6c65 5f66 et" in ansible_f │ │ │ -001b7c20: 6163 7473 2e70 6163 6b61 6765 730a 2020 acts.packages. │ │ │ -001b7c30: 2020 616e 6420 226f 7374 7265 6522 2069 and "ostree" i │ │ │ -001b7c40: 6e20 616e 7369 626c 655f 7072 6f63 5f63 n ansible_proc_c │ │ │ -001b7c50: 6d64 6c69 6e65 2029 2061 6e64 206e 6f74 mdline ) and not │ │ │ -001b7c60: 2028 2061 6e73 6962 6c65 5f76 6972 7475 ( ansible_virtu │ │ │ -001b7c70: 616c 697a 6174 696f 6e5f 7479 7065 2069 alization_type i │ │ │ -001b7c80: 6e0a 2020 2020 5b22 646f 636b 6572 222c n. ["docker", │ │ │ -001b7c90: 2022 6c78 6322 2c20 226f 7065 6e76 7a22 "lxc", "openvz" │ │ │ -001b7ca0: 2c20 2270 6f64 6d61 6e22 2c20 2263 6f6e , "podman", "con │ │ │ -001b7cb0: 7461 696e 6572 225d 2029 2029 0a20 202d tainer"] ) ). - │ │ │ -001b7cc0: 2027 222f 7661 722f 6c6f 6722 2069 6e20 '"/var/log" in │ │ │ -001b7cd0: 616e 7369 626c 655f 6d6f 756e 7473 207c ansible_mounts | │ │ │ -001b7ce0: 206d 6170 2861 7474 7269 6275 7465 3d22 map(attribute=" │ │ │ -001b7cf0: 6d6f 756e 7422 2920 7c20 6c69 7374 270a mount") | list'. │ │ │ -001b7d00: 2020 2d20 6d6f 756e 745f 696e 666f 2069 - mount_info i │ │ │ -001b7d10: 7320 6465 6669 6e65 640a 2020 2d20 2864 s defined. - (d │ │ │ -001b7d20: 6576 6963 655f 6e61 6d65 2e73 7464 6f75 evice_name.stdou │ │ │ -001b7d30: 7420 6973 2064 6566 696e 6564 2061 6e64 t is defined and │ │ │ -001b7d40: 2028 6465 7669 6365 5f6e 616d 652e 7374 (device_name.st │ │ │ -001b7d50: 646f 7574 207c 206c 656e 6774 6820 2667 dout | length &g │ │ │ -001b7d60: 743b 2030 2929 206f 7220 2822 2d2d 6673 t; 0)) or ("--fs │ │ │ -001b7d70: 7461 6222 0a20 2020 207c 206c 656e 6774 tab". | lengt │ │ │ -001b7d80: 6820 3d3d 2030 290a 2020 7461 6773 3a0a h == 0). tags:. │ │ │ -001b7d90: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -001b7da0: 4143 2d36 0a20 202d 204e 4953 542d 3830 AC-6. - NIST-80 │ │ │ -001b7db0: 302d 3533 2d41 432d 3628 3129 0a20 202d 0-53-AC-6(1). - │ │ │ -001b7dc0: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ -001b7dd0: 3628 6129 0a20 202d 204e 4953 542d 3830 6(a). - NIST-80 │ │ │ -001b7de0: 302d 3533 2d43 4d2d 3728 6129 0a20 202d 0-53-CM-7(a). - │ │ │ -001b7df0: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ -001b7e00: 3728 6229 0a20 202d 204e 4953 542d 3830 7(b). - NIST-80 │ │ │ -001b7e10: 302d 3533 2d4d 502d 370a 2020 2d20 636f 0-53-MP-7. - co │ │ │ -001b7e20: 6e66 6967 7572 655f 7374 7261 7465 6779 nfigure_strategy │ │ │ -001b7e30: 0a20 202d 2068 6967 685f 6469 7372 7570 . - high_disrup │ │ │ -001b7e40: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d tion. - low_com │ │ │ -001b7e50: 706c 6578 6974 790a 2020 2d20 6d65 6469 plexity. - medi │ │ │ -001b7e60: 756d 5f73 6576 6572 6974 790a 2020 2d20 um_severity. - │ │ │ -001b7e70: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172 mount_option_var │ │ │ -001b7e80: 5f6c 6f67 5f6e 6f65 7865 630a 2020 2d20 _log_noexec. - │ │ │ -001b7e90: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564 no_reboot_needed │ │ │ -001b7ea0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .
Remediation She │ │ │ -001b7f60: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...
# Remediation i
│ │ │ -001b8030: 7320 6170 706c 6963 6162 6c65 206f 6e6c  s applicable onl
│ │ │ -001b8040: 7920 696e 2063 6572 7461 696e 2070 6c61  y in certain pla
│ │ │ -001b8050: 7466 6f72 6d73 0a69 6620 2820 2120 2820  tforms.if ( ! ( 
│ │ │ -001b8060: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ -001b8070: 206b 6572 6e65 6c20 3b7d 2026 616d 703b   kernel ;} &
│ │ │ -001b8080: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ -001b8090: 6965 7420 2d71 2072 706d 2d6f 7374 7265  iet -q rpm-ostre
│ │ │ -001b80a0: 6520 3b7d 2026 616d 703b 2661 6d70 3b20  e ;} && 
│ │ │ -001b80b0: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ -001b80c0: 2062 6f6f 7463 203b 7d20 2661 6d70 3b26   bootc ;} &&
│ │ │ -001b80d0: 616d 703b 207b 2021 2072 706d 202d 2d71  amp; { ! rpm --q
│ │ │ -001b80e0: 7569 6574 202d 7120 6f70 656e 7368 6966  uiet -q openshif
│ │ │ -001b80f0: 742d 6b75 6265 6c65 7420 3b7d 2026 616d  t-kubelet ;} &am
│ │ │ -001b8100: 703b 2661 6d70 3b20 285b 202d 6620 2f72  p;& ([ -f /r
│ │ │ -001b8110: 756e 2f6f 7374 7265 652d 626f 6f74 6564  un/ostree-booted
│ │ │ -001b8120: 205d 207c 7c20 5b20 2d4c 202f 6f73 7472   ] || [ -L /ostr
│ │ │ -001b8130: 6565 205d 2920 2920 2661 6d70 3b26 616d  ee ]) ) &&am
│ │ │ -001b8140: 703b 2021 2028 205b 202d 6620 2f2e 646f  p; ! ( [ -f /.do
│ │ │ -001b8150: 636b 6572 656e 7620 5d20 7c7c 205b 202d  ckerenv ] || [ -
│ │ │ -001b8160: 6620 2f72 756e 2f2e 636f 6e74 6169 6e65  f /run/.containe
│ │ │ -001b8170: 7265 6e76 205d 2029 2029 2026 616d 703b  renv ] ) ) &
│ │ │ -001b8180: 2661 6d70 3b20 7b20 2820 6669 6e64 6d6e  & { ( findmn
│ │ │ -001b8190: 7420 2d2d 6b65 726e 656c 2022 2f76 6172  t --kernel "/var
│ │ │ -001b81a0: 2f6c 6f67 2220 2667 743b 202f 6465 762f  /log" > /dev/
│ │ │ -001b81b0: 6e75 6c6c 207c 7c20 6669 6e64 6d6e 7420  null || findmnt 
│ │ │ -001b81c0: 2d2d 6673 7461 6220 222f 7661 722f 6c6f  --fstab "/var/lo
│ │ │ -001b81d0: 6722 2026 6774 3b20 2f64 6576 2f6e 756c  g" > /dev/nul
│ │ │ -001b81e0: 6c20 293b 207d 3b20 7468 656e 0a0a 6675  l ); }; then..fu
│ │ │ -001b81f0: 6e63 7469 6f6e 2070 6572 666f 726d 5f72  nction perform_r
│ │ │ -001b8200: 656d 6564 6961 7469 6f6e 207b 0a0a 2020  emediation {..  
│ │ │ -001b8210: 2020 0a20 2020 2020 2020 2023 2074 6865    .        # the
│ │ │ -001b8220: 206d 6f75 6e74 2070 6f69 6e74 202f 7661   mount point /va
│ │ │ -001b8230: 722f 6c6f 6720 6861 7320 746f 2062 6520  r/log has to be 
│ │ │ -001b8240: 6465 6669 6e65 6420 696e 202f 6574 632f  defined in /etc/
│ │ │ -001b8250: 6673 7461 620a 2020 2020 2020 2020 2320  fstab.        # 
│ │ │ -001b8260: 6265 666f 7265 2074 6869 7320 7265 6d65  before this reme
│ │ │ -001b8270: 6469 6174 696f 6e20 6361 6e20 6265 2065  diation can be e
│ │ │ -001b8280: 7865 6375 7465 642e 2049 6e20 6361 7365  xecuted. In case
│ │ │ -001b8290: 2069 7420 6973 206e 6f74 2064 6566 696e   it is not defin
│ │ │ -001b82a0: 6564 2c20 7468 650a 2020 2020 2020 2020  ed, the.        
│ │ │ -001b82b0: 2320 7265 6d65 6469 6174 696f 6e20 6162  # remediation ab
│ │ │ -001b82c0: 6f72 7473 2061 6e64 206e 6f20 6368 616e  orts and no chan
│ │ │ -001b82d0: 6765 7320 7265 6761 7264 696e 6720 7468  ges regarding th
│ │ │ -001b82e0: 6520 6d6f 756e 7420 706f 696e 7420 6172  e mount point ar
│ │ │ -001b82f0: 6520 646f 6e65 2e0a 2020 2020 2020 2020  e done..        
│ │ │ -001b8300: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001b8310: 685f 7265 6765 7870 3d22 2428 7072 696e  h_regexp="$(prin
│ │ │ -001b8320: 7466 2022 5e5b 5b3a 7370 6163 653a 5d5d  tf "^[[:space:]]
│ │ │ -001b8330: 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163 653a  *[^#].*[[:space:
│ │ │ -001b8340: 5d5d 2573 5b5b 3a73 7061 6365 3a5d 5d22  ]]%s[[:space:]]"
│ │ │ -001b8350: 2022 2f76 6172 2f6c 6f67 2229 220a 0a20   "/var/log")".. 
│ │ │ -001b8360: 2020 2067 7265 7020 2224 6d6f 756e 745f     grep "$mount_
│ │ │ -001b8370: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001b8380: 7870 2220 2d71 202f 6574 632f 6673 7461  xp" -q /etc/fsta
│ │ │ -001b8390: 6220 5c0a 2020 2020 2020 2020 7c7c 207b  b \.        || {
│ │ │ -001b83a0: 2065 6368 6f20 2254 6865 206d 6f75 6e74   echo "The mount
│ │ │ -001b83b0: 2070 6f69 6e74 2027 2f76 6172 2f6c 6f67   point '/var/log
│ │ │ -001b83c0: 2720 6973 206e 6f74 2065 7665 6e20 696e  ' is not even in
│ │ │ -001b83d0: 202f 6574 632f 6673 7461 622c 2073 6f20   /etc/fstab, so 
│ │ │ -001b83e0: 7765 2063 616e 2774 2073 6574 2075 7020  we can't set up 
│ │ │ -001b83f0: 6d6f 756e 7420 6f70 7469 6f6e 7322 2026  mount options" &
│ │ │ -001b8400: 6774 3b26 616d 703b 323b 0a20 2020 2020  gt;&2;.     
│ │ │ -001b8410: 2020 2020 2020 2020 2020 2065 6368 6f20             echo 
│ │ │ -001b8420: 224e 6f74 2072 656d 6564 6961 7469 6e67  "Not remediating
│ │ │ -001b8430: 2c20 6265 6361 7573 6520 7468 6572 6520  , because there 
│ │ │ -001b8440: 6973 206e 6f20 7265 636f 7264 206f 6620  is no record of 
│ │ │ -001b8450: 2f76 6172 2f6c 6f67 2069 6e20 2f65 7463  /var/log in /etc
│ │ │ -001b8460: 2f66 7374 6162 2220 2667 743b 2661 6d70  /fstab" >&
│ │ │ -001b8470: 3b32 3b20 7265 7475 726e 2031 3b20 7d0a  ;2; return 1; }.
│ │ │ -001b8480: 2020 2020 0a0a 0a20 2020 206d 6f75 6e74      ...    mount
│ │ │ -001b8490: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001b84a0: 6578 703d 2224 2870 7269 6e74 6620 225e  exp="$(printf "^
│ │ │ -001b84b0: 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e 235d  [[:space:]]*[^#]
│ │ │ -001b84c0: 2e2a 5b5b 3a73 7061 6365 3a5d 5d25 735b  .*[[:space:]]%s[
│ │ │ -001b84d0: 5b3a 7370 6163 653a 5d5d 2220 2f76 6172  [:space:]]" /var
│ │ │ -001b84e0: 2f6c 6f67 2922 0a0a 2020 2020 2320 4966  /log)"..    # If
│ │ │ -001b84f0: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ -001b8500: 2069 7320 6e6f 7420 696e 202f 6574 632f   is not in /etc/
│ │ │ -001b8510: 6673 7461 622c 2067 6574 2070 7265 7669  fstab, get previ
│ │ │ -001b8520: 6f75 7320 6d6f 756e 7420 6f70 7469 6f6e  ous mount option
│ │ │ -001b8530: 7320 6672 6f6d 202f 6574 632f 6d74 6162  s from /etc/mtab
│ │ │ -001b8540: 0a20 2020 2069 6620 2120 6772 6570 202d  .    if ! grep -
│ │ │ -001b8550: 7120 2224 6d6f 756e 745f 706f 696e 745f  q "$mount_point_
│ │ │ -001b8560: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ -001b8570: 7463 2f66 7374 6162 3b20 7468 656e 0a20  tc/fstab; then. 
│ │ │ -001b8580: 2020 2020 2020 2023 2072 756e 7469 6d65         # runtime
│ │ │ -001b8590: 206f 7074 7320 7769 7468 6f75 7420 736f   opts without so
│ │ │ -001b85a0: 6d65 2061 7574 6f6d 6174 6963 206b 6572  me automatic ker
│ │ │ -001b85b0: 6e65 6c2f 7573 6572 7370 6163 652d 6164  nel/userspace-ad
│ │ │ -001b85c0: 6465 6420 6465 6661 756c 7473 0a20 2020  ded defaults.   
│ │ │ -001b85d0: 2020 2020 2070 7265 7669 6f75 735f 6d6f       previous_mo
│ │ │ -001b85e0: 756e 745f 6f70 7473 3d24 2867 7265 7020  unt_opts=$(grep 
│ │ │ -001b85f0: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ -001b8600: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ -001b8610: 2f6d 7461 6220 7c20 6865 6164 202d 3120  /mtab | head -1 
│ │ │ -001b8620: 7c20 2061 776b 2027 7b70 7269 6e74 2024  |  awk '{print $
│ │ │ -001b8630: 347d 2720 5c0a 2020 2020 2020 2020 2020  4}' \.          
│ │ │ -001b8640: 2020 2020 2020 2020 2020 7c20 7365 6420            | sed 
│ │ │ -001b8650: 2d45 2022 732f 2872 777c 6465 6661 756c  -E "s/(rw|defaul
│ │ │ -001b8660: 7473 7c73 6563 6c61 6265 6c7c 6e6f 6578  ts|seclabel|noex
│ │ │ -001b8670: 6563 2928 2c7c 2429 2f2f 673b 732f 2c24  ec)(,|$)//g;s/,$
│ │ │ -001b8680: 2f2f 2229 0a20 2020 2020 2020 205b 2022  //").        [ "
│ │ │ -001b8690: 2470 7265 7669 6f75 735f 6d6f 756e 745f  $previous_mount_
│ │ │ -001b86a0: 6f70 7473 2220 5d20 2661 6d70 3b26 616d  opts" ] &&am
│ │ │ -001b86b0: 703b 2070 7265 7669 6f75 735f 6d6f 756e  p; previous_moun
│ │ │ -001b86c0: 745f 6f70 7473 2b3d 222c 220a 2020 2020  t_opts+=",".    
│ │ │ -001b86d0: 2020 2020 2320 496e 2069 736f 3936 3630      # In iso9660
│ │ │ -001b86e0: 2066 696c 6573 7973 7465 6d73 206d 7461   filesystems mta
│ │ │ -001b86f0: 6220 636f 756c 6420 6465 7363 7269 6265  b could describe
│ │ │ -001b8700: 2061 2022 626c 6f63 6b73 697a 6522 2076   a "blocksize" v
│ │ │ -001b8710: 616c 7565 2c20 7468 6973 2073 686f 756c  alue, this shoul
│ │ │ -001b8720: 6420 6265 2072 6566 6c65 6374 6564 2069  d be reflected i
│ │ │ -001b8730: 6e0a 2020 2020 2020 2020 2320 6673 7461  n.        # fsta
│ │ │ -001b8740: 6220 6173 2022 626c 6f63 6b22 2e20 2054  b as "block".  T
│ │ │ -001b8750: 6865 206e 6578 7420 7661 7269 6162 6c65  he next variable
│ │ │ -001b8760: 2069 7320 746f 2073 6174 6973 6679 2073   is to satisfy s
│ │ │ -001b8770: 6865 6c6c 6368 6563 6b20 5343 3230 3530  hellcheck SC2050
│ │ │ -001b8780: 2e0a 2020 2020 2020 2020 6673 5f74 7970  ..        fs_typ
│ │ │ -001b8790: 653d 2222 0a20 2020 2020 2020 2069 6620  e="".        if 
│ │ │ -001b87a0: 5b20 2022 2466 735f 7479 7065 2220 3d3d  [  "$fs_type" ==
│ │ │ -001b87b0: 2022 6973 6f39 3636 3022 205d 203b 2074   "iso9660" ] ; t
│ │ │ -001b87c0: 6865 6e0a 2020 2020 2020 2020 2020 2020  hen.            
│ │ │ -001b87d0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001b87e0: 7074 733d 2428 7365 6420 2773 2f62 6c6f  pts=$(sed 's/blo
│ │ │ -001b87f0: 636b 7369 7a65 3d2f 626c 6f63 6b3d 2f27  cksize=/block=/'
│ │ │ -001b8800: 2026 6c74 3b26 6c74 3b26 6c74 3b20 2224   <<< "$
│ │ │ -001b8810: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001b8820: 7074 7322 290a 2020 2020 2020 2020 6669  pts").        fi
│ │ │ -001b8830: 0a20 2020 2020 2020 2065 6368 6f20 2220  .        echo " 
│ │ │ -001b8840: 2f76 6172 2f6c 6f67 2020 6465 6661 756c  /var/log  defaul
│ │ │ -001b8850: 7473 2c24 7b70 7265 7669 6f75 735f 6d6f  ts,${previous_mo
│ │ │ -001b8860: 756e 745f 6f70 7473 7d6e 6f65 7865 6320  unt_opts}noexec 
│ │ │ -001b8870: 3020 3022 2026 6774 3b26 6774 3b20 2f65  0 0" >> /e
│ │ │ -001b8880: 7463 2f66 7374 6162 0a20 2020 2023 2049  tc/fstab.    # I
│ │ │ -001b8890: 6620 7468 6520 6d6f 756e 745f 6f70 7420  f the mount_opt 
│ │ │ -001b88a0: 6f70 7469 6f6e 2069 7320 6e6f 7420 616c  option is not al
│ │ │ -001b88b0: 7265 6164 7920 696e 2074 6865 206d 6f75  ready in the mou
│ │ │ -001b88c0: 6e74 2070 6f69 6e74 2773 202f 6574 632f  nt point's /etc/
│ │ │ -001b88d0: 6673 7461 6220 656e 7472 792c 2061 6464  fstab entry, add
│ │ │ -001b88e0: 2069 740a 2020 2020 656c 6966 2021 2067   it.    elif ! g
│ │ │ -001b88f0: 7265 7020 2224 6d6f 756e 745f 706f 696e  rep "$mount_poin
│ │ │ -001b8900: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ -001b8910: 2f65 7463 2f66 7374 6162 207c 2067 7265  /etc/fstab | gre
│ │ │ -001b8920: 7020 2d71 2022 6e6f 6578 6563 223b 2074  p -q "noexec"; t
│ │ │ -001b8930: 6865 6e0a 2020 2020 2020 2020 7072 6576  hen.        prev
│ │ │ -001b8940: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d  ious_mount_opts=
│ │ │ -001b8950: 2428 6772 6570 2022 246d 6f75 6e74 5f70  $(grep "$mount_p
│ │ │ -001b8960: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001b8970: 7022 202f 6574 632f 6673 7461 6220 7c20  p" /etc/fstab | 
│ │ │ -001b8980: 6177 6b20 277b 7072 696e 7420 2434 7d27  awk '{print $4}'
│ │ │ -001b8990: 290a 2020 2020 2020 2020 7365 6420 2d69  ).        sed -i
│ │ │ -001b89a0: 2022 737c 5c28 247b 6d6f 756e 745f 706f   "s|\(${mount_po
│ │ │ -001b89b0: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001b89c0: 7d2e 2a24 7b70 7265 7669 6f75 735f 6d6f  }.*${previous_mo
│ │ │ -001b89d0: 756e 745f 6f70 7473 7d5c 297c 5c31 2c6e  unt_opts}\)|\1,n
│ │ │ -001b89e0: 6f65 7865 637c 2220 2f65 7463 2f66 7374  oexec|" /etc/fst
│ │ │ -001b89f0: 6162 0a20 2020 2066 690a 0a0a 2020 2020  ab.    fi...    
│ │ │ -001b8a00: 6966 206d 6b64 6972 202d 7020 222f 7661  if mkdir -p "/va
│ │ │ -001b8a10: 722f 6c6f 6722 3b20 7468 656e 0a20 2020  r/log"; then.   
│ │ │ -001b8a20: 2020 2020 2069 6620 6d6f 756e 7470 6f69       if mountpoi
│ │ │ -001b8a30: 6e74 202d 7120 222f 7661 722f 6c6f 6722  nt -q "/var/log"
│ │ │ -001b8a40: 3b20 7468 656e 0a20 2020 2020 2020 2020  ; then.         
│ │ │ -001b8a50: 2020 206d 6f75 6e74 202d 6f20 7265 6d6f     mount -o remo
│ │ │ -001b8a60: 756e 7420 2d2d 7461 7267 6574 2022 2f76  unt --target "/v
│ │ │ -001b8a70: 6172 2f6c 6f67 220a 2020 2020 2020 2020  ar/log".        
│ │ │ -001b8a80: 6669 0a20 2020 2066 690a 7d0a 0a70 6572  fi.    fi.}..per
│ │ │ -001b8a90: 666f 726d 5f72 656d 6564 6961 7469 6f6e  form_remediation
│ │ │ -001b8aa0: 0a0a 656c 7365 0a20 2020 2026 6774 3b26  ..else.    >&
│ │ │ -001b8ab0: 616d 703b 3220 6563 686f 2027 5265 6d65  amp;2 echo 'Reme
│ │ │ -001b8ac0: 6469 6174 696f 6e20 6973 206e 6f74 2061  diation is not a
│ │ │ -001b8ad0: 7070 6c69 6361 626c 652c 206e 6f74 6869  pplicable, nothi
│ │ │ -001b8ae0: 6e67 2077 6173 2064 6f6e 6527 0a66 690a  ng was done'.fi.
│ │ │ +001b6410: 656d 6564 6961 7469 6f6e 2041 6e73 6962  emediation Ansib
│ │ │ +001b6420: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f  le snippet ...
R │ │ │ -001b7ff0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001b8000: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c2f alse
│ │ │ +001b64c0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 < │ │ │ +001b6500: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +001b6510: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false< │ │ │ +001b6550: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ +001b6570: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ +001b6580: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ +001b6590: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ +001b65a0: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ +001b65b0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001b65c0: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ +001b65d0: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ +001b65e0: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +001b65f0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001b6600: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ +001b6610: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001b6620: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ +001b6630: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ +001b6640: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +001b6650: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ +001b6660: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ +001b6670: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ +001b6680: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ +001b6690: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6c  unt_option_var_l
│ │ │ +001b66a0: 6f67 5f6e 6f65 7865 630a 2020 2d20 6e6f  og_noexec.  - no
│ │ │ +001b66b0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +001b66c0: 2d20 6e61 6d65 3a20 2741 6464 206e 6f65  - name: 'Add noe
│ │ │ +001b66d0: 7865 6320 4f70 7469 6f6e 2074 6f20 2f76  xec Option to /v
│ │ │ +001b66e0: 6172 2f6c 6f67 3a20 4368 6563 6b20 696e  ar/log: Check in
│ │ │ +001b66f0: 666f 726d 6174 696f 6e20 6173 736f 6369  formation associ
│ │ │ +001b6700: 6174 6564 2074 6f20 6d6f 756e 7470 6f69  ated to mountpoi
│ │ │ +001b6710: 6e74 270a 2020 616e 7369 626c 652e 6275  nt'.  ansible.bu
│ │ │ +001b6720: 696c 7469 6e2e 636f 6d6d 616e 643a 2066  iltin.command: f
│ │ │ +001b6730: 696e 646d 6e74 202d 2d66 7374 6162 2027  indmnt --fstab '
│ │ │ +001b6740: 2f76 6172 2f6c 6f67 270a 2020 7265 6769  /var/log'.  regi
│ │ │ +001b6750: 7374 6572 3a20 6465 7669 6365 5f6e 616d  ster: device_nam
│ │ │ +001b6760: 650a 2020 6661 696c 6564 5f77 6865 6e3a  e.  failed_when:
│ │ │ +001b6770: 2064 6576 6963 655f 6e61 6d65 2e72 6320   device_name.rc 
│ │ │ +001b6780: 2667 743b 2031 0a20 2063 6861 6e67 6564  > 1.  changed
│ │ │ +001b6790: 5f77 6865 6e3a 2066 616c 7365 0a20 2063  _when: false.  c
│ │ │ +001b67a0: 6865 636b 5f6d 6f64 653a 2066 616c 7365  heck_mode: false
│ │ │ +001b67b0: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ +001b67c0: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ +001b67d0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001b67e0: 6163 6b61 6765 7320 616e 6420 2272 706d  ackages and "rpm
│ │ │ +001b67f0: 2d6f 7374 7265 6522 2069 6e20 616e 7369  -ostree" in ansi
│ │ │ +001b6800: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001b6810: 6573 0a20 2020 2061 6e64 2022 626f 6f74  es.    and "boot
│ │ │ +001b6820: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ +001b6830: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001b6840: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ +001b6850: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ +001b6860: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001b6870: 6573 0a20 2020 2061 6e64 2022 6f73 7472  es.    and "ostr
│ │ │ +001b6880: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ +001b6890: 726f 635f 636d 646c 696e 6520 2920 616e  roc_cmdline ) an
│ │ │ +001b68a0: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ +001b68b0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ +001b68c0: 7970 6520 696e 0a20 2020 205b 2264 6f63  ype in.    ["doc
│ │ │ +001b68d0: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ +001b68e0: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ +001b68f0: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ +001b6900: 290a 2020 2d20 2722 2f76 6172 2f6c 6f67  ).  - '"/var/log
│ │ │ +001b6910: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ +001b6920: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ +001b6930: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ +001b6940: 6973 7427 0a20 2074 6167 733a 0a20 202d  ist'.  tags:.  -
│ │ │ +001b6950: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001b6960: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +001b6970: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ +001b6980: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +001b6990: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001b69a0: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +001b69b0: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +001b69c0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001b69d0: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ +001b69e0: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001b69f0: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001b6a00: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001b6a10: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001b6a20: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001b6a30: 6e74 5f6f 7074 696f 6e5f 7661 725f 6c6f  nt_option_var_lo
│ │ │ +001b6a40: 675f 6e6f 6578 6563 0a20 202d 206e 6f5f  g_noexec.  - no_
│ │ │ +001b6a50: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +001b6a60: 206e 616d 653a 2027 4164 6420 6e6f 6578   name: 'Add noex
│ │ │ +001b6a70: 6563 204f 7074 696f 6e20 746f 202f 7661  ec Option to /va
│ │ │ +001b6a80: 722f 6c6f 673a 2043 7265 6174 6520 6d6f  r/log: Create mo
│ │ │ +001b6a90: 756e 745f 696e 666f 2064 6963 7469 6f6e  unt_info diction
│ │ │ +001b6aa0: 6172 7920 7661 7269 6162 6c65 270a 2020  ary variable'.  
│ │ │ +001b6ab0: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ +001b6ac0: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ +001b6ad0: 756e 745f 696e 666f 7c64 6566 6175 6c74  unt_info|default
│ │ │ +001b6ae0: 287b 7d29 7c63 6f6d 6269 6e65 287b 6974  ({})|combine({it
│ │ │ +001b6af0: 656d 2e30 3a20 6974 656d 2e31 7d29 207d  em.0: item.1}) }
│ │ │ +001b6b00: 7d27 0a20 2077 6974 685f 746f 6765 7468  }'.  with_togeth
│ │ │ +001b6b10: 6572 3a0a 2020 2d20 277b 7b20 6465 7669  er:.  - '{{ devi
│ │ │ +001b6b20: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ +001b6b30: 696e 6573 5b30 5d2e 7370 6c69 7428 2920  ines[0].split() 
│ │ │ +001b6b40: 7c20 6d61 7028 2727 6c6f 7765 7227 2729  | map(''lower'')
│ │ │ +001b6b50: 207c 206c 6973 7420 7d7d 270a 2020 2d20   | list }}'.  - 
│ │ │ +001b6b60: 277b 7b20 6465 7669 6365 5f6e 616d 652e  '{{ device_name.
│ │ │ +001b6b70: 7374 646f 7574 5f6c 696e 6573 5b31 5d2e  stdout_lines[1].
│ │ │ +001b6b80: 7370 6c69 7428 2920 7c20 6c69 7374 207d  split() | list }
│ │ │ +001b6b90: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028  }'.  when:.  - (
│ │ │ +001b6ba0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +001b6bb0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001b6bc0: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ +001b6bd0: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ +001b6be0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001b6bf0: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ +001b6c00: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ +001b6c10: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001b6c20: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ +001b6c30: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ +001b6c40: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001b6c50: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ +001b6c60: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001b6c70: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ +001b6c80: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ +001b6c90: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ +001b6ca0: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ +001b6cb0: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ +001b6cc0: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ +001b6cd0: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ +001b6ce0: 2920 290a 2020 2d20 2722 2f76 6172 2f6c  ) ).  - '"/var/l
│ │ │ +001b6cf0: 6f67 2220 696e 2061 6e73 6962 6c65 5f6d  og" in ansible_m
│ │ │ +001b6d00: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ +001b6d10: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ +001b6d20: 206c 6973 7427 0a20 202d 2064 6576 6963   list'.  - devic
│ │ │ +001b6d30: 655f 6e61 6d65 2e73 7464 6f75 7420 6973  e_name.stdout is
│ │ │ +001b6d40: 2064 6566 696e 6564 2061 6e64 2064 6576   defined and dev
│ │ │ +001b6d50: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ +001b6d60: 6c69 6e65 7320 6973 2064 6566 696e 6564  lines is defined
│ │ │ +001b6d70: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ +001b6d80: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ +001b6d90: 6820 2667 743b 2030 290a 2020 7461 6773  h > 0).  tags
│ │ │ +001b6da0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +001b6db0: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ +001b6dc0: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ +001b6dd0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001b6de0: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ +001b6df0: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ +001b6e00: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001b6e10: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ +001b6e20: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ +001b6e30: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +001b6e40: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +001b6e50: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +001b6e60: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +001b6e70: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001b6e80: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76  - mount_option_v
│ │ │ +001b6e90: 6172 5f6c 6f67 5f6e 6f65 7865 630a 2020  ar_log_noexec.  
│ │ │ +001b6ea0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001b6eb0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ +001b6ec0: 206e 6f65 7865 6320 4f70 7469 6f6e 2074   noexec Option t
│ │ │ +001b6ed0: 6f20 2f76 6172 2f6c 6f67 3a20 4966 202f  o /var/log: If /
│ │ │ +001b6ee0: 7661 722f 6c6f 6720 6e6f 7420 6d6f 756e  var/log not moun
│ │ │ +001b6ef0: 7465 642c 2063 7261 6674 206d 6f75 6e74  ted, craft mount
│ │ │ +001b6f00: 5f69 6e66 6f0a 2020 2020 6d61 6e75 616c  _info.    manual
│ │ │ +001b6f10: 6c79 270a 2020 7365 745f 6661 6374 3a0a  ly'.  set_fact:.
│ │ │ +001b6f20: 2020 2020 6d6f 756e 745f 696e 666f 3a20      mount_info: 
│ │ │ +001b6f30: 277b 7b20 6d6f 756e 745f 696e 666f 7c64  '{{ mount_info|d
│ │ │ +001b6f40: 6566 6175 6c74 287b 7d29 7c63 6f6d 6269  efault({})|combi
│ │ │ +001b6f50: 6e65 287b 6974 656d 2e30 3a20 6974 656d  ne({item.0: item
│ │ │ +001b6f60: 2e31 7d29 207d 7d27 0a20 2077 6974 685f  .1}) }}'.  with_
│ │ │ +001b6f70: 746f 6765 7468 6572 3a0a 2020 2d20 2d20  together:.  - - 
│ │ │ +001b6f80: 7461 7267 6574 0a20 2020 202d 2073 6f75  target.    - sou
│ │ │ +001b6f90: 7263 650a 2020 2020 2d20 6673 7479 7065  rce.    - fstype
│ │ │ +001b6fa0: 0a20 2020 202d 206f 7074 696f 6e73 0a20  .    - options. 
│ │ │ +001b6fb0: 202d 202d 202f 7661 722f 6c6f 670a 2020   - - /var/log.  
│ │ │ +001b6fc0: 2020 2d20 2727 0a20 2020 202d 2027 270a    - ''.    - ''.
│ │ │ +001b6fd0: 2020 2020 2d20 6465 6661 756c 7473 0a20      - defaults. 
│ │ │ +001b6fe0: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ +001b6ff0: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ +001b7000: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001b7010: 6b61 6765 7320 616e 6420 2272 706d 2d6f  kages and "rpm-o
│ │ │ +001b7020: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001b7030: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001b7040: 0a20 2020 2061 6e64 2022 626f 6f74 6322  .    and "bootc"
│ │ │ +001b7050: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001b7060: 732e 7061 636b 6167 6573 2061 6e64 206e  s.packages and n
│ │ │ +001b7070: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ +001b7080: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ +001b7090: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001b70a0: 0a20 2020 2061 6e64 2022 6f73 7472 6565  .    and "ostree
│ │ │ +001b70b0: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ +001b70c0: 635f 636d 646c 696e 6520 2920 616e 6420  c_cmdline ) and 
│ │ │ +001b70d0: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ +001b70e0: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ +001b70f0: 6520 696e 0a20 2020 205b 2264 6f63 6b65  e in.    ["docke
│ │ │ +001b7100: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ +001b7110: 767a 222c 2022 706f 646d 616e 222c 2022  vz", "podman", "
│ │ │ +001b7120: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ +001b7130: 2020 2d20 2722 2f76 6172 2f6c 6f67 2220    - '"/var/log" 
│ │ │ +001b7140: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ +001b7150: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ +001b7160: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ +001b7170: 7427 0a20 202d 2028 222d 2d66 7374 6162  t'.  - ("--fstab
│ │ │ +001b7180: 2220 7c20 6c65 6e67 7468 203d 3d20 3029  " | length == 0)
│ │ │ +001b7190: 0a20 202d 2064 6576 6963 655f 6e61 6d65  .  - device_name
│ │ │ +001b71a0: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ +001b71b0: 6564 2061 6e64 2064 6576 6963 655f 6e61  ed and device_na
│ │ │ +001b71c0: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320  me.stdout_lines 
│ │ │ +001b71d0: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ +001b71e0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001b71f0: 7574 207c 206c 656e 6774 6820 3d3d 2030  ut | length == 0
│ │ │ +001b7200: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ +001b7210: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ +001b7220: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001b7230: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ +001b7240: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +001b7250: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001b7260: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +001b7270: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +001b7280: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ +001b7290: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ +001b72a0: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ +001b72b0: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ +001b72c0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +001b72d0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +001b72e0: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ +001b72f0: 6f70 7469 6f6e 5f76 6172 5f6c 6f67 5f6e  option_var_log_n
│ │ │ +001b7300: 6f65 7865 630a 2020 2d20 6e6f 5f72 6562  oexec.  - no_reb
│ │ │ +001b7310: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61  oot_needed..- na
│ │ │ +001b7320: 6d65 3a20 2741 6464 206e 6f65 7865 6320  me: 'Add noexec 
│ │ │ +001b7330: 4f70 7469 6f6e 2074 6f20 2f76 6172 2f6c  Option to /var/l
│ │ │ +001b7340: 6f67 3a20 4d61 6b65 2073 7572 6520 6e6f  og: Make sure no
│ │ │ +001b7350: 6578 6563 206f 7074 696f 6e20 6973 2070  exec option is p
│ │ │ +001b7360: 6172 7420 6f66 2074 6865 2074 6f0a 2020  art of the to.  
│ │ │ +001b7370: 2020 2f76 6172 2f6c 6f67 206f 7074 696f    /var/log optio
│ │ │ +001b7380: 6e73 270a 2020 7365 745f 6661 6374 3a0a  ns'.  set_fact:.
│ │ │ +001b7390: 2020 2020 6d6f 756e 745f 696e 666f 3a20      mount_info: 
│ │ │ +001b73a0: 277b 7b20 6d6f 756e 745f 696e 666f 207c  '{{ mount_info |
│ │ │ +001b73b0: 2063 6f6d 6269 6e65 2820 7b27 276f 7074   combine( {''opt
│ │ │ +001b73c0: 696f 6e73 2727 3a27 2727 277e 286d 6f75  ions'':''''~(mou
│ │ │ +001b73d0: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ +001b73e0: 7c0a 2020 2020 2020 6465 6661 756c 7428  |.      default(
│ │ │ +001b73f0: 2727 2727 2929 7e28 2727 2c27 2720 6966  ''''))~('','' if
│ │ │ +001b7400: 2028 6d6f 756e 745f 696e 666f 2e6f 7074   (mount_info.opt
│ │ │ +001b7410: 696f 6e73 207c 2064 6566 6175 6c74 2827  ions | default('
│ │ │ +001b7420: 2727 2729 2920 656c 7365 2027 2727 2729  ''')) else '''')
│ │ │ +001b7430: 7e27 276e 6f65 7865 6327 270a 2020 2020  ~''noexec''.    
│ │ │ +001b7440: 2020 7d29 207d 7d27 0a20 2077 6865 6e3a    }) }}'.  when:
│ │ │ +001b7450: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ +001b7460: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +001b7470: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001b7480: 616e 6420 2272 706d 2d6f 7374 7265 6522  and "rpm-ostree"
│ │ │ +001b7490: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001b74a0: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001b74b0: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ +001b74c0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001b74d0: 6167 6573 2061 6e64 206e 6f74 2022 6f70  ages and not "op
│ │ │ +001b74e0: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ +001b74f0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001b7500: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001b7510: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ +001b7520: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ +001b7530: 696e 6520 2920 616e 6420 6e6f 7420 2820  ine ) and not ( 
│ │ │ +001b7540: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ +001b7550: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20  zation_type in. 
│ │ │ +001b7560: 2020 205b 2264 6f63 6b65 7222 2c20 226c     ["docker", "l
│ │ │ +001b7570: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ +001b7580: 706f 646d 616e 222c 2022 636f 6e74 6169  podman", "contai
│ │ │ +001b7590: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ +001b75a0: 2f76 6172 2f6c 6f67 2220 696e 2061 6e73  /var/log" in ans
│ │ │ +001b75b0: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ +001b75c0: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ +001b75d0: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ +001b75e0: 206d 6f75 6e74 5f69 6e66 6f20 6973 2064   mount_info is d
│ │ │ +001b75f0: 6566 696e 6564 2061 6e64 2022 6e6f 6578  efined and "noex
│ │ │ +001b7600: 6563 2220 6e6f 7420 696e 2028 6d6f 756e  ec" not in (moun
│ │ │ +001b7610: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ +001b7620: 2064 6566 6175 6c74 2827 2729 290a 2020   default('')).  
│ │ │ +001b7630: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +001b7640: 3030 2d35 332d 4143 2d36 0a20 202d 204e  00-53-AC-6.  - N
│ │ │ +001b7650: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ +001b7660: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ +001b7670: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ +001b7680: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001b7690: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001b76a0: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ +001b76b0: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ +001b76c0: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +001b76d0: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +001b76e0: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +001b76f0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +001b7700: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001b7710: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ +001b7720: 6f6e 5f76 6172 5f6c 6f67 5f6e 6f65 7865  on_var_log_noexe
│ │ │ +001b7730: 630a 2020 2d20 6e6f 5f72 6562 6f6f 745f  c.  - no_reboot_
│ │ │ +001b7740: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ +001b7750: 2741 6464 206e 6f65 7865 6320 4f70 7469  'Add noexec Opti
│ │ │ +001b7760: 6f6e 2074 6f20 2f76 6172 2f6c 6f67 3a20  on to /var/log: 
│ │ │ +001b7770: 456e 7375 7265 202f 7661 722f 6c6f 6720  Ensure /var/log 
│ │ │ +001b7780: 6973 206d 6f75 6e74 6564 2077 6974 6820  is mounted with 
│ │ │ +001b7790: 6e6f 6578 6563 206f 7074 696f 6e27 0a20  noexec option'. 
│ │ │ +001b77a0: 2061 6e73 6962 6c65 2e70 6f73 6978 2e6d   ansible.posix.m
│ │ │ +001b77b0: 6f75 6e74 3a0a 2020 2020 7061 7468 3a20  ount:.    path: 
│ │ │ +001b77c0: 2f76 6172 2f6c 6f67 0a20 2020 2073 7263  /var/log.    src
│ │ │ +001b77d0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001b77e0: 2e73 6f75 7263 6520 7c20 6465 6661 756c  .source | defaul
│ │ │ +001b77f0: 7428 2727 2727 2920 7d7d 270a 2020 2020  t('''') }}'.    
│ │ │ +001b7800: 6f70 7473 3a20 277b 7b20 6d6f 756e 745f  opts: '{{ mount_
│ │ │ +001b7810: 696e 666f 2e6f 7074 696f 6e73 207c 2064  info.options | d
│ │ │ +001b7820: 6566 6175 6c74 2827 2727 2729 207d 7d27  efault('''') }}'
│ │ │ +001b7830: 0a20 2020 2073 7461 7465 3a20 6d6f 756e  .    state: moun
│ │ │ +001b7840: 7465 640a 2020 2020 6673 7479 7065 3a20  ted.    fstype: 
│ │ │ +001b7850: 277b 7b20 6d6f 756e 745f 696e 666f 2e66  '{{ mount_info.f
│ │ │ +001b7860: 7374 7970 6520 7c20 6465 6661 756c 7428  stype | default(
│ │ │ +001b7870: 2727 2727 2920 7d7d 270a 2020 7265 6769  '''') }}'.  regi
│ │ │ +001b7880: 7374 6572 3a20 6d6f 756e 745f 7265 7375  ster: mount_resu
│ │ │ +001b7890: 6c74 0a20 2066 6169 6c65 645f 7768 656e  lt.  failed_when
│ │ │ +001b78a0: 3a0a 2020 2d20 6d6f 756e 745f 7265 7375  :.  - mount_resu
│ │ │ +001b78b0: 6c74 2069 7320 6661 696c 6564 0a20 202d  lt is failed.  -
│ │ │ +001b78c0: 2027 2727 7461 7267 6574 2069 7320 6275   '''target is bu
│ │ │ +001b78d0: 7379 2727 206e 6f74 2069 6e20 286d 6f75  sy'' not in (mou
│ │ │ +001b78e0: 6e74 5f72 6573 756c 742e 6d73 6720 7c20  nt_result.msg | 
│ │ │ +001b78f0: 6465 6661 756c 7428 2727 2727 2929 270a  default(''''))'.
│ │ │ +001b7900: 2020 2d20 2727 2761 6c72 6561 6479 206d    - '''already m
│ │ │ +001b7910: 6f75 6e74 6564 2727 206e 6f74 2069 6e20  ounted'' not in 
│ │ │ +001b7920: 286d 6f75 6e74 5f72 6573 756c 742e 6d73  (mount_result.ms
│ │ │ +001b7930: 6720 7c20 6465 6661 756c 7428 2727 2727  g | default(''''
│ │ │ +001b7940: 2929 270a 2020 7768 656e 3a0a 2020 2d20  ))'.  when:.  - 
│ │ │ +001b7950: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ +001b7960: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001b7970: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001b7980: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ +001b7990: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001b79a0: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ +001b79b0: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +001b79c0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001b79d0: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ +001b79e0: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ +001b79f0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001b7a00: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ +001b7a10: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001b7a20: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ +001b7a30: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ +001b7a40: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ +001b7a50: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ +001b7a60: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +001b7a70: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +001b7a80: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ +001b7a90: 2029 2029 0a20 202d 2027 222f 7661 722f   ) ).  - '"/var/
│ │ │ +001b7aa0: 6c6f 6722 2069 6e20 616e 7369 626c 655f  log" in ansible_
│ │ │ +001b7ab0: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ +001b7ac0: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ +001b7ad0: 7c20 6c69 7374 270a 2020 2d20 6d6f 756e  | list'.  - moun
│ │ │ +001b7ae0: 745f 696e 666f 2069 7320 6465 6669 6e65  t_info is define
│ │ │ +001b7af0: 640a 2020 2d20 2864 6576 6963 655f 6e61  d.  - (device_na
│ │ │ +001b7b00: 6d65 2e73 7464 6f75 7420 6973 2064 6566  me.stdout is def
│ │ │ +001b7b10: 696e 6564 2061 6e64 2028 6465 7669 6365  ined and (device
│ │ │ +001b7b20: 5f6e 616d 652e 7374 646f 7574 207c 206c  _name.stdout | l
│ │ │ +001b7b30: 656e 6774 6820 2667 743b 2030 2929 206f  ength > 0)) o
│ │ │ +001b7b40: 7220 2822 2d2d 6673 7461 6222 0a20 2020  r ("--fstab".   
│ │ │ +001b7b50: 207c 206c 656e 6774 6820 3d3d 2030 290a   | length == 0).
│ │ │ +001b7b60: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +001b7b70: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ +001b7b80: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001b7b90: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ +001b7ba0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +001b7bb0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001b7bc0: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ +001b7bd0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ +001b7be0: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ +001b7bf0: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ +001b7c00: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ +001b7c10: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ +001b7c20: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +001b7c30: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +001b7c40: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ +001b7c50: 7469 6f6e 5f76 6172 5f6c 6f67 5f6e 6f65  tion_var_log_noe
│ │ │ +001b7c60: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f  xec.  - no_reboo
│ │ │ +001b7c70: 745f 6e65 6564 6564 0a3c 2f63 6f64 653e  t_needed.
│ │ │ +001b7c80: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +001b7d30: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ +001b7d40: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +001b7dc0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
│ │ │ +001b64b0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +001b64e0: 696f 6e3a 3c2f 7468 3e3c 7464 3e68 6967 ion:hig │ │ │ +001b64f0: 683c 2f74 643e 3c2f 7472 3e3c 7472 3e3c h
Strate │ │ │ +001b6530: 6779 3a3c 2f74 683e 3c74 643e 636f 6e66 gy:conf │ │ │ +001b6540: 6967 7572 653c 2f74 643e 3c2f 7472 3e3c igure
Reboot:false

# Remed │ │ │ +001b7e00: 6961 7469 6f6e 2069 7320 6170 706c 6963 iation is applic │ │ │ +001b7e10: 6162 6c65 206f 6e6c 7920 696e 2063 6572 able only in cer │ │ │ +001b7e20: 7461 696e 2070 6c61 7466 6f72 6d73 0a69 tain platforms.i │ │ │ +001b7e30: 6620 2820 2120 2820 7b20 7270 6d20 2d2d f ( ! ( { rpm -- │ │ │ +001b7e40: 7175 6965 7420 2d71 206b 6572 6e65 6c20 quiet -q kernel │ │ │ +001b7e50: 3b7d 2026 616d 703b 2661 6d70 3b20 7b20 ;} && { │ │ │ +001b7e60: 7270 6d20 2d2d 7175 6965 7420 2d71 2072 rpm --quiet -q r │ │ │ +001b7e70: 706d 2d6f 7374 7265 6520 3b7d 2026 616d pm-ostree ;} &am │ │ │ +001b7e80: 703b 2661 6d70 3b20 7b20 7270 6d20 2d2d p;& { rpm -- │ │ │ +001b7e90: 7175 6965 7420 2d71 2062 6f6f 7463 203b quiet -q bootc ; │ │ │ +001b7ea0: 7d20 2661 6d70 3b26 616d 703b 207b 2021 } && { ! │ │ │ +001b7eb0: 2072 706d 202d 2d71 7569 6574 202d 7120 rpm --quiet -q │ │ │ +001b7ec0: 6f70 656e 7368 6966 742d 6b75 6265 6c65 openshift-kubele │ │ │ +001b7ed0: 7420 3b7d 2026 616d 703b 2661 6d70 3b20 t ;} && │ │ │ +001b7ee0: 285b 202d 6620 2f72 756e 2f6f 7374 7265 ([ -f /run/ostre │ │ │ +001b7ef0: 652d 626f 6f74 6564 205d 207c 7c20 5b20 e-booted ] || [ │ │ │ +001b7f00: 2d4c 202f 6f73 7472 6565 205d 2920 2920 -L /ostree ]) ) │ │ │ +001b7f10: 2661 6d70 3b26 616d 703b 2021 2028 205b && ! ( [ │ │ │ +001b7f20: 202d 6620 2f2e 646f 636b 6572 656e 7620 -f /.dockerenv │ │ │ +001b7f30: 5d20 7c7c 205b 202d 6620 2f72 756e 2f2e ] || [ -f /run/. │ │ │ +001b7f40: 636f 6e74 6169 6e65 7265 6e76 205d 2029 containerenv ] ) │ │ │ +001b7f50: 2029 2026 616d 703b 2661 6d70 3b20 7b20 ) && { │ │ │ +001b7f60: 2820 6669 6e64 6d6e 7420 2d2d 6b65 726e ( findmnt --kern │ │ │ +001b7f70: 656c 2022 2f76 6172 2f6c 6f67 2220 2667 el "/var/log" &g │ │ │ +001b7f80: 743b 202f 6465 762f 6e75 6c6c 207c 7c20 t; /dev/null || │ │ │ +001b7f90: 6669 6e64 6d6e 7420 2d2d 6673 7461 6220 findmnt --fstab │ │ │ +001b7fa0: 222f 7661 722f 6c6f 6722 2026 6774 3b20 "/var/log" > │ │ │ +001b7fb0: 2f64 6576 2f6e 756c 6c20 293b 207d 3b20 /dev/null ); }; │ │ │ +001b7fc0: 7468 656e 0a0a 6675 6e63 7469 6f6e 2070 then..function p │ │ │ +001b7fd0: 6572 666f 726d 5f72 656d 6564 6961 7469 erform_remediati │ │ │ +001b7fe0: 6f6e 207b 0a0a 2020 2020 0a20 2020 2020 on {.. . │ │ │ +001b7ff0: 2020 2023 2074 6865 206d 6f75 6e74 2070 # the mount p │ │ │ +001b8000: 6f69 6e74 202f 7661 722f 6c6f 6720 6861 oint /var/log ha │ │ │ +001b8010: 7320 746f 2062 6520 6465 6669 6e65 6420 s to be defined │ │ │ +001b8020: 696e 202f 6574 632f 6673 7461 620a 2020 in /etc/fstab. │ │ │ +001b8030: 2020 2020 2020 2320 6265 666f 7265 2074 # before t │ │ │ +001b8040: 6869 7320 7265 6d65 6469 6174 696f 6e20 his remediation │ │ │ +001b8050: 6361 6e20 6265 2065 7865 6375 7465 642e can be executed. │ │ │ +001b8060: 2049 6e20 6361 7365 2069 7420 6973 206e In case it is n │ │ │ +001b8070: 6f74 2064 6566 696e 6564 2c20 7468 650a ot defined, the. │ │ │ +001b8080: 2020 2020 2020 2020 2320 7265 6d65 6469 # remedi │ │ │ +001b8090: 6174 696f 6e20 6162 6f72 7473 2061 6e64 ation aborts and │ │ │ +001b80a0: 206e 6f20 6368 616e 6765 7320 7265 6761 no changes rega │ │ │ +001b80b0: 7264 696e 6720 7468 6520 6d6f 756e 7420 rding the mount │ │ │ +001b80c0: 706f 696e 7420 6172 6520 646f 6e65 2e0a point are done.. │ │ │ +001b80d0: 2020 2020 2020 2020 6d6f 756e 745f 706f mount_po │ │ │ +001b80e0: 696e 745f 6d61 7463 685f 7265 6765 7870 int_match_regexp │ │ │ +001b80f0: 3d22 2428 7072 696e 7466 2022 5e5b 5b3a ="$(printf "^[[: │ │ │ +001b8100: 7370 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b space:]]*[^#].*[ │ │ │ +001b8110: 5b3a 7370 6163 653a 5d5d 2573 5b5b 3a73 [:space:]]%s[[:s │ │ │ +001b8120: 7061 6365 3a5d 5d22 2022 2f76 6172 2f6c pace:]]" "/var/l │ │ │ +001b8130: 6f67 2229 220a 0a20 2020 2067 7265 7020 og")".. grep │ │ │ +001b8140: 2224 6d6f 756e 745f 706f 696e 745f 6d61 "$mount_point_ma │ │ │ +001b8150: 7463 685f 7265 6765 7870 2220 2d71 202f tch_regexp" -q / │ │ │ +001b8160: 6574 632f 6673 7461 6220 5c0a 2020 2020 etc/fstab \. │ │ │ +001b8170: 2020 2020 7c7c 207b 2065 6368 6f20 2254 || { echo "T │ │ │ +001b8180: 6865 206d 6f75 6e74 2070 6f69 6e74 2027 he mount point ' │ │ │ +001b8190: 2f76 6172 2f6c 6f67 2720 6973 206e 6f74 /var/log' is not │ │ │ +001b81a0: 2065 7665 6e20 696e 202f 6574 632f 6673 even in /etc/fs │ │ │ +001b81b0: 7461 622c 2073 6f20 7765 2063 616e 2774 tab, so we can't │ │ │ +001b81c0: 2073 6574 2075 7020 6d6f 756e 7420 6f70 set up mount op │ │ │ +001b81d0: 7469 6f6e 7322 2026 6774 3b26 616d 703b tions" >& │ │ │ +001b81e0: 323b 0a20 2020 2020 2020 2020 2020 2020 2;. │ │ │ +001b81f0: 2020 2065 6368 6f20 224e 6f74 2072 656d echo "Not rem │ │ │ +001b8200: 6564 6961 7469 6e67 2c20 6265 6361 7573 ediating, becaus │ │ │ +001b8210: 6520 7468 6572 6520 6973 206e 6f20 7265 e there is no re │ │ │ +001b8220: 636f 7264 206f 6620 2f76 6172 2f6c 6f67 cord of /var/log │ │ │ +001b8230: 2069 6e20 2f65 7463 2f66 7374 6162 2220 in /etc/fstab" │ │ │ +001b8240: 2667 743b 2661 6d70 3b32 3b20 7265 7475 >&2; retu │ │ │ +001b8250: 726e 2031 3b20 7d0a 2020 2020 0a0a 0a20 rn 1; }. ... │ │ │ +001b8260: 2020 206d 6f75 6e74 5f70 6f69 6e74 5f6d mount_point_m │ │ │ +001b8270: 6174 6368 5f72 6567 6578 703d 2224 2870 atch_regexp="$(p │ │ │ +001b8280: 7269 6e74 6620 225e 5b5b 3a73 7061 6365 rintf "^[[:space │ │ │ +001b8290: 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061 :]]*[^#].*[[:spa │ │ │ +001b82a0: 6365 3a5d 5d25 735b 5b3a 7370 6163 653a ce:]]%s[[:space: │ │ │ +001b82b0: 5d5d 2220 2f76 6172 2f6c 6f67 2922 0a0a ]]" /var/log)".. │ │ │ +001b82c0: 2020 2020 2320 4966 2074 6865 206d 6f75 # If the mou │ │ │ +001b82d0: 6e74 2070 6f69 6e74 2069 7320 6e6f 7420 nt point is not │ │ │ +001b82e0: 696e 202f 6574 632f 6673 7461 622c 2067 in /etc/fstab, g │ │ │ +001b82f0: 6574 2070 7265 7669 6f75 7320 6d6f 756e et previous moun │ │ │ +001b8300: 7420 6f70 7469 6f6e 7320 6672 6f6d 202f t options from / │ │ │ +001b8310: 6574 632f 6d74 6162 0a20 2020 2069 6620 etc/mtab. if │ │ │ +001b8320: 2120 6772 6570 202d 7120 2224 6d6f 756e ! grep -q "$moun │ │ │ +001b8330: 745f 706f 696e 745f 6d61 7463 685f 7265 t_point_match_re │ │ │ +001b8340: 6765 7870 2220 2f65 7463 2f66 7374 6162 gexp" /etc/fstab │ │ │ +001b8350: 3b20 7468 656e 0a20 2020 2020 2020 2023 ; then. # │ │ │ +001b8360: 2072 756e 7469 6d65 206f 7074 7320 7769 runtime opts wi │ │ │ +001b8370: 7468 6f75 7420 736f 6d65 2061 7574 6f6d thout some autom │ │ │ +001b8380: 6174 6963 206b 6572 6e65 6c2f 7573 6572 atic kernel/user │ │ │ +001b8390: 7370 6163 652d 6164 6465 6420 6465 6661 space-added defa │ │ │ +001b83a0: 756c 7473 0a20 2020 2020 2020 2070 7265 ults. pre │ │ │ +001b83b0: 7669 6f75 735f 6d6f 756e 745f 6f70 7473 vious_mount_opts │ │ │ +001b83c0: 3d24 2867 7265 7020 2224 6d6f 756e 745f =$(grep "$mount_ │ │ │ +001b83d0: 706f 696e 745f 6d61 7463 685f 7265 6765 point_match_rege │ │ │ +001b83e0: 7870 2220 2f65 7463 2f6d 7461 6220 7c20 xp" /etc/mtab | │ │ │ +001b83f0: 6865 6164 202d 3120 7c20 2061 776b 2027 head -1 | awk ' │ │ │ +001b8400: 7b70 7269 6e74 2024 347d 2720 5c0a 2020 {print $4}' \. │ │ │ +001b8410: 2020 2020 2020 2020 2020 2020 2020 2020 │ │ │ +001b8420: 2020 7c20 7365 6420 2d45 2022 732f 2872 | sed -E "s/(r │ │ │ +001b8430: 777c 6465 6661 756c 7473 7c73 6563 6c61 w|defaults|secla │ │ │ +001b8440: 6265 6c7c 6e6f 6578 6563 2928 2c7c 2429 bel|noexec)(,|$) │ │ │ +001b8450: 2f2f 673b 732f 2c24 2f2f 2229 0a20 2020 //g;s/,$//"). │ │ │ +001b8460: 2020 2020 205b 2022 2470 7265 7669 6f75 [ "$previou │ │ │ +001b8470: 735f 6d6f 756e 745f 6f70 7473 2220 5d20 s_mount_opts" ] │ │ │ +001b8480: 2661 6d70 3b26 616d 703b 2070 7265 7669 && previ │ │ │ +001b8490: 6f75 735f 6d6f 756e 745f 6f70 7473 2b3d ous_mount_opts+= │ │ │ +001b84a0: 222c 220a 2020 2020 2020 2020 2320 496e ",". # In │ │ │ +001b84b0: 2069 736f 3936 3630 2066 696c 6573 7973 iso9660 filesys │ │ │ +001b84c0: 7465 6d73 206d 7461 6220 636f 756c 6420 tems mtab could │ │ │ +001b84d0: 6465 7363 7269 6265 2061 2022 626c 6f63 describe a "bloc │ │ │ +001b84e0: 6b73 697a 6522 2076 616c 7565 2c20 7468 ksize" value, th │ │ │ +001b84f0: 6973 2073 686f 756c 6420 6265 2072 6566 is should be ref │ │ │ +001b8500: 6c65 6374 6564 2069 6e0a 2020 2020 2020 lected in. │ │ │ +001b8510: 2020 2320 6673 7461 6220 6173 2022 626c # fstab as "bl │ │ │ +001b8520: 6f63 6b22 2e20 2054 6865 206e 6578 7420 ock". The next │ │ │ +001b8530: 7661 7269 6162 6c65 2069 7320 746f 2073 variable is to s │ │ │ +001b8540: 6174 6973 6679 2073 6865 6c6c 6368 6563 atisfy shellchec │ │ │ +001b8550: 6b20 5343 3230 3530 2e0a 2020 2020 2020 k SC2050.. │ │ │ +001b8560: 2020 6673 5f74 7970 653d 2222 0a20 2020 fs_type="". │ │ │ +001b8570: 2020 2020 2069 6620 5b20 2022 2466 735f if [ "$fs_ │ │ │ +001b8580: 7479 7065 2220 3d3d 2022 6973 6f39 3636 type" == "iso966 │ │ │ +001b8590: 3022 205d 203b 2074 6865 6e0a 2020 2020 0" ] ; then. │ │ │ +001b85a0: 2020 2020 2020 2020 7072 6576 696f 7573 previous │ │ │ +001b85b0: 5f6d 6f75 6e74 5f6f 7074 733d 2428 7365 _mount_opts=$(se │ │ │ +001b85c0: 6420 2773 2f62 6c6f 636b 7369 7a65 3d2f d 's/blocksize=/ │ │ │ +001b85d0: 626c 6f63 6b3d 2f27 2026 6c74 3b26 6c74 block=/' << │ │ │ +001b85e0: 3b26 6c74 3b20 2224 7072 6576 696f 7573 ;< "$previous │ │ │ +001b85f0: 5f6d 6f75 6e74 5f6f 7074 7322 290a 2020 _mount_opts"). │ │ │ +001b8600: 2020 2020 2020 6669 0a20 2020 2020 2020 fi. │ │ │ +001b8610: 2065 6368 6f20 2220 2f76 6172 2f6c 6f67 echo " /var/log │ │ │ +001b8620: 2020 6465 6661 756c 7473 2c24 7b70 7265 defaults,${pre │ │ │ +001b8630: 7669 6f75 735f 6d6f 756e 745f 6f70 7473 vious_mount_opts │ │ │ +001b8640: 7d6e 6f65 7865 6320 3020 3022 2026 6774 }noexec 0 0" > │ │ │ +001b8650: 3b26 6774 3b20 2f65 7463 2f66 7374 6162 ;> /etc/fstab │ │ │ +001b8660: 0a20 2020 2023 2049 6620 7468 6520 6d6f . # If the mo │ │ │ +001b8670: 756e 745f 6f70 7420 6f70 7469 6f6e 2069 unt_opt option i │ │ │ +001b8680: 7320 6e6f 7420 616c 7265 6164 7920 696e s not already in │ │ │ +001b8690: 2074 6865 206d 6f75 6e74 2070 6f69 6e74 the mount point │ │ │ +001b86a0: 2773 202f 6574 632f 6673 7461 6220 656e 's /etc/fstab en │ │ │ +001b86b0: 7472 792c 2061 6464 2069 740a 2020 2020 try, add it. │ │ │ +001b86c0: 656c 6966 2021 2067 7265 7020 2224 6d6f elif ! grep "$mo │ │ │ +001b86d0: 756e 745f 706f 696e 745f 6d61 7463 685f unt_point_match_ │ │ │ +001b86e0: 7265 6765 7870 2220 2f65 7463 2f66 7374 regexp" /etc/fst │ │ │ +001b86f0: 6162 207c 2067 7265 7020 2d71 2022 6e6f ab | grep -q "no │ │ │ +001b8700: 6578 6563 223b 2074 6865 6e0a 2020 2020 exec"; then. │ │ │ +001b8710: 2020 2020 7072 6576 696f 7573 5f6d 6f75 previous_mou │ │ │ +001b8720: 6e74 5f6f 7074 733d 2428 6772 6570 2022 nt_opts=$(grep " │ │ │ +001b8730: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174 $mount_point_mat │ │ │ +001b8740: 6368 5f72 6567 6578 7022 202f 6574 632f ch_regexp" /etc/ │ │ │ +001b8750: 6673 7461 6220 7c20 6177 6b20 277b 7072 fstab | awk '{pr │ │ │ +001b8760: 696e 7420 2434 7d27 290a 2020 2020 2020 int $4}'). │ │ │ +001b8770: 2020 7365 6420 2d69 2022 737c 5c28 247b sed -i "s|\(${ │ │ │ +001b8780: 6d6f 756e 745f 706f 696e 745f 6d61 7463 mount_point_matc │ │ │ +001b8790: 685f 7265 6765 7870 7d2e 2a24 7b70 7265 h_regexp}.*${pre │ │ │ +001b87a0: 7669 6f75 735f 6d6f 756e 745f 6f70 7473 vious_mount_opts │ │ │ +001b87b0: 7d5c 297c 5c31 2c6e 6f65 7865 637c 2220 }\)|\1,noexec|" │ │ │ +001b87c0: 2f65 7463 2f66 7374 6162 0a20 2020 2066 /etc/fstab. f │ │ │ +001b87d0: 690a 0a0a 2020 2020 6966 206d 6b64 6972 i... if mkdir │ │ │ +001b87e0: 202d 7020 222f 7661 722f 6c6f 6722 3b20 -p "/var/log"; │ │ │ +001b87f0: 7468 656e 0a20 2020 2020 2020 2069 6620 then. if │ │ │ +001b8800: 6d6f 756e 7470 6f69 6e74 202d 7120 222f mountpoint -q "/ │ │ │ +001b8810: 7661 722f 6c6f 6722 3b20 7468 656e 0a20 var/log"; then. │ │ │ +001b8820: 2020 2020 2020 2020 2020 206d 6f75 6e74 mount │ │ │ +001b8830: 202d 6f20 7265 6d6f 756e 7420 2d2d 7461 -o remount --ta │ │ │ +001b8840: 7267 6574 2022 2f76 6172 2f6c 6f67 220a rget "/var/log". │ │ │ +001b8850: 2020 2020 2020 2020 6669 0a20 2020 2066 fi. f │ │ │ +001b8860: 690a 7d0a 0a70 6572 666f 726d 5f72 656d i.}..perform_rem │ │ │ +001b8870: 6564 6961 7469 6f6e 0a0a 656c 7365 0a20 ediation..else. │ │ │ +001b8880: 2020 2026 6774 3b26 616d 703b 3220 6563 >&2 ec │ │ │ +001b8890: 686f 2027 5265 6d65 6469 6174 696f 6e20 ho 'Remediation │ │ │ +001b88a0: 6973 206e 6f74 2061 7070 6c69 6361 626c is not applicabl │ │ │ +001b88b0: 652c 206e 6f74 6869 6e67 2077 6173 2064 e, nothing was d │ │ │ +001b88c0: 6f6e 6527 0a66 690a 3c2f 636f 6465 3e3c one'.fi.< │ │ │ +001b88d0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>

Remediat │ │ │ +001b8980: 696f 6e20 416e 6163 6f6e 6461 2073 6e69 ion Anaconda sni │ │ │ +001b8990: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +001b89a0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +001b89d0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +001b8a40: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption: │ │ │ +001b8a60: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +001b8a90: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Comple │ │ │ +001b8a20: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +001b8a30: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
high
Reb │ │ │ +001b8a70: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +001b8a80: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

.part / │ │ │ +001b8ad0: 7661 722f 6c6f 6720 2d2d 6d6f 756e 746f var/log --mounto │ │ │ +001b8ae0: 7074 696f 6e73 3d22 6e6f 6578 6563 220a ptions="noexec". │ │ │ 001b8af0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64

Remediation A │ │ │ -001b9760: 6e61 636f 6e64 6120 736e 6970 7065 7420 naconda snippet │ │ │ -001b9770: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -001b9800: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -001b9820: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:high │ │ │ -001b9840: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -001b9850: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -001b9870: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
.part /var/l
│ │ │ -001b98b0: 6f67 202d 2d6d 6f75 6e74 6f70 7469 6f6e  og --mountoption
│ │ │ -001b98c0: 733d 226e 6f73 7569 6422 0a3c 2f63 6f64  s="nosuid".
Remed │ │ │ -001b9980: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ -001b9990: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
- 
│ │ │ -001b9ad0: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ -001b9ae0: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ -001b9af0: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ -001b9b00: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ -001b9b10: 6f0a 2020 7461 6773 3a0a 2020 2d20 4e49  o.  tags:.  - NI
│ │ │ -001b9b20: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ -001b9b30: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001b9b40: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ -001b9b50: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -001b9b60: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001b9b70: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -001b9b80: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -001b9b90: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ -001b9ba0: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ -001b9bb0: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -001b9bc0: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -001b9bd0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001b9be0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -001b9bf0: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ -001b9c00: 6f70 7469 6f6e 5f76 6172 5f6c 6f67 5f6e  option_var_log_n
│ │ │ -001b9c10: 6f73 7569 640a 2020 2d20 6e6f 5f72 6562  osuid.  - no_reb
│ │ │ -001b9c20: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61  oot_needed..- na
│ │ │ -001b9c30: 6d65 3a20 2741 6464 206e 6f73 7569 6420  me: 'Add nosuid 
│ │ │ -001b9c40: 4f70 7469 6f6e 2074 6f20 2f76 6172 2f6c  Option to /var/l
│ │ │ -001b9c50: 6f67 3a20 4368 6563 6b20 696e 666f 726d  og: Check inform
│ │ │ -001b9c60: 6174 696f 6e20 6173 736f 6369 6174 6564  ation associated
│ │ │ -001b9c70: 2074 6f20 6d6f 756e 7470 6f69 6e74 270a   to mountpoint'.
│ │ │ -001b9c80: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -001b9c90: 6e2e 636f 6d6d 616e 643a 2066 696e 646d  n.command: findm
│ │ │ -001b9ca0: 6e74 202d 2d66 7374 6162 2027 2f76 6172  nt --fstab '/var
│ │ │ -001b9cb0: 2f6c 6f67 270a 2020 7265 6769 7374 6572  /log'.  register
│ │ │ -001b9cc0: 3a20 6465 7669 6365 5f6e 616d 650a 2020  : device_name.  
│ │ │ -001b9cd0: 6661 696c 6564 5f77 6865 6e3a 2064 6576  failed_when: dev
│ │ │ -001b9ce0: 6963 655f 6e61 6d65 2e72 6320 2667 743b  ice_name.rc >
│ │ │ -001b9cf0: 2031 0a20 2063 6861 6e67 6564 5f77 6865   1.  changed_whe
│ │ │ -001b9d00: 6e3a 2066 616c 7365 0a20 2063 6865 636b  n: false.  check
│ │ │ -001b9d10: 5f6d 6f64 653a 2066 616c 7365 0a20 2077  _mode: false.  w
│ │ │ -001b9d20: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ -001b9d30: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -001b9d40: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001b9d50: 6765 7320 616e 6420 2272 706d 2d6f 7374  ges and "rpm-ost
│ │ │ -001b9d60: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -001b9d70: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -001b9d80: 2020 2061 6e64 2022 626f 6f74 6322 2069     and "bootc" i
│ │ │ -001b9d90: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001b9da0: 7061 636b 6167 6573 2061 6e64 206e 6f74  packages and not
│ │ │ -001b9db0: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ -001b9dc0: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ -001b9dd0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -001b9de0: 2020 2061 6e64 2022 6f73 7472 6565 2220     and "ostree" 
│ │ │ -001b9df0: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ -001b9e00: 636d 646c 696e 6520 2920 616e 6420 6e6f  cmdline ) and no
│ │ │ -001b9e10: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ -001b9e20: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ -001b9e30: 696e 0a20 2020 205b 2264 6f63 6b65 7222  in.    ["docker"
│ │ │ -001b9e40: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ -001b9e50: 222c 2022 706f 646d 616e 222c 2022 636f  ", "podman", "co
│ │ │ -001b9e60: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ -001b9e70: 2d20 2722 2f76 6172 2f6c 6f67 2220 696e  - '"/var/log" in
│ │ │ -001b9e80: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ -001b9e90: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ -001b9ea0: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ -001b9eb0: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -001b9ec0: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ -001b9ed0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001b9ee0: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ -001b9ef0: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ -001b9f00: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001b9f10: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ -001b9f20: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ -001b9f30: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ -001b9f40: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ -001b9f50: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ -001b9f60: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ -001b9f70: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001b9f80: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -001b9f90: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ -001b9fa0: 7074 696f 6e5f 7661 725f 6c6f 675f 6e6f  ption_var_log_no
│ │ │ -001b9fb0: 7375 6964 0a20 202d 206e 6f5f 7265 626f  suid.  - no_rebo
│ │ │ -001b9fc0: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -001b9fd0: 653a 2027 4164 6420 6e6f 7375 6964 204f  e: 'Add nosuid O
│ │ │ -001b9fe0: 7074 696f 6e20 746f 202f 7661 722f 6c6f  ption to /var/lo
│ │ │ -001b9ff0: 673a 2043 7265 6174 6520 6d6f 756e 745f  g: Create mount_
│ │ │ -001ba000: 696e 666f 2064 6963 7469 6f6e 6172 7920  info dictionary 
│ │ │ -001ba010: 7661 7269 6162 6c65 270a 2020 7365 745f  variable'.  set_
│ │ │ -001ba020: 6661 6374 3a0a 2020 2020 6d6f 756e 745f  fact:.    mount_
│ │ │ -001ba030: 696e 666f 3a20 277b 7b20 6d6f 756e 745f  info: '{{ mount_
│ │ │ -001ba040: 696e 666f 7c64 6566 6175 6c74 287b 7d29  info|default({})
│ │ │ -001ba050: 7c63 6f6d 6269 6e65 287b 6974 656d 2e30  |combine({item.0
│ │ │ -001ba060: 3a20 6974 656d 2e31 7d29 207d 7d27 0a20  : item.1}) }}'. 
│ │ │ -001ba070: 2077 6974 685f 746f 6765 7468 6572 3a0a   with_together:.
│ │ │ -001ba080: 2020 2d20 277b 7b20 6465 7669 6365 5f6e    - '{{ device_n
│ │ │ -001ba090: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ -001ba0a0: 5b30 5d2e 7370 6c69 7428 2920 7c20 6d61  [0].split() | ma
│ │ │ -001ba0b0: 7028 2727 6c6f 7765 7227 2729 207c 206c  p(''lower'') | l
│ │ │ -001ba0c0: 6973 7420 7d7d 270a 2020 2d20 277b 7b20  ist }}'.  - '{{ 
│ │ │ -001ba0d0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001ba0e0: 7574 5f6c 696e 6573 5b31 5d2e 7370 6c69  ut_lines[1].spli
│ │ │ -001ba0f0: 7428 2920 7c20 6c69 7374 207d 7d27 0a20  t() | list }}'. 
│ │ │ -001ba100: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ -001ba110: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ -001ba120: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001ba130: 6b61 6765 7320 616e 6420 2272 706d 2d6f  kages and "rpm-o
│ │ │ -001ba140: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001ba150: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001ba160: 0a20 2020 2061 6e64 2022 626f 6f74 6322  .    and "bootc"
│ │ │ -001ba170: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001ba180: 732e 7061 636b 6167 6573 2061 6e64 206e  s.packages and n
│ │ │ -001ba190: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ -001ba1a0: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ -001ba1b0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001ba1c0: 0a20 2020 2061 6e64 2022 6f73 7472 6565  .    and "ostree
│ │ │ -001ba1d0: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ -001ba1e0: 635f 636d 646c 696e 6520 2920 616e 6420  c_cmdline ) and 
│ │ │ -001ba1f0: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ -001ba200: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ -001ba210: 6520 696e 0a20 2020 205b 2264 6f63 6b65  e in.    ["docke
│ │ │ -001ba220: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ -001ba230: 767a 222c 2022 706f 646d 616e 222c 2022  vz", "podman", "
│ │ │ -001ba240: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ -001ba250: 2020 2d20 2722 2f76 6172 2f6c 6f67 2220    - '"/var/log" 
│ │ │ -001ba260: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ -001ba270: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ -001ba280: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ -001ba290: 7427 0a20 202d 2064 6576 6963 655f 6e61  t'.  - device_na
│ │ │ -001ba2a0: 6d65 2e73 7464 6f75 7420 6973 2064 6566  me.stdout is def
│ │ │ -001ba2b0: 696e 6564 2061 6e64 2064 6576 6963 655f  ined and device_
│ │ │ -001ba2c0: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ -001ba2d0: 7320 6973 2064 6566 696e 6564 0a20 202d  s is defined.  -
│ │ │ -001ba2e0: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ -001ba2f0: 646f 7574 207c 206c 656e 6774 6820 2667  dout | length &g
│ │ │ -001ba300: 743b 2030 290a 2020 7461 6773 3a0a 2020  t; 0).  tags:.  
│ │ │ -001ba310: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001ba320: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ -001ba330: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ -001ba340: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -001ba350: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -001ba360: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ -001ba370: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -001ba380: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ -001ba390: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ -001ba3a0: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -001ba3b0: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -001ba3c0: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -001ba3d0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -001ba3e0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -001ba3f0: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6c  unt_option_var_l
│ │ │ -001ba400: 6f67 5f6e 6f73 7569 640a 2020 2d20 6e6f  og_nosuid.  - no
│ │ │ -001ba410: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ -001ba420: 2d20 6e61 6d65 3a20 2741 6464 206e 6f73  - name: 'Add nos
│ │ │ -001ba430: 7569 6420 4f70 7469 6f6e 2074 6f20 2f76  uid Option to /v
│ │ │ -001ba440: 6172 2f6c 6f67 3a20 4966 202f 7661 722f  ar/log: If /var/
│ │ │ -001ba450: 6c6f 6720 6e6f 7420 6d6f 756e 7465 642c  log not mounted,
│ │ │ -001ba460: 2063 7261 6674 206d 6f75 6e74 5f69 6e66   craft mount_inf
│ │ │ -001ba470: 6f0a 2020 2020 6d61 6e75 616c 6c79 270a  o.    manually'.
│ │ │ -001ba480: 2020 7365 745f 6661 6374 3a0a 2020 2020    set_fact:.    
│ │ │ -001ba490: 6d6f 756e 745f 696e 666f 3a20 277b 7b20  mount_info: '{{ 
│ │ │ -001ba4a0: 6d6f 756e 745f 696e 666f 7c64 6566 6175  mount_info|defau
│ │ │ -001ba4b0: 6c74 287b 7d29 7c63 6f6d 6269 6e65 287b  lt({})|combine({
│ │ │ -001ba4c0: 6974 656d 2e30 3a20 6974 656d 2e31 7d29  item.0: item.1})
│ │ │ -001ba4d0: 207d 7d27 0a20 2077 6974 685f 746f 6765   }}'.  with_toge
│ │ │ -001ba4e0: 7468 6572 3a0a 2020 2d20 2d20 7461 7267  ther:.  - - targ
│ │ │ -001ba4f0: 6574 0a20 2020 202d 2073 6f75 7263 650a  et.    - source.
│ │ │ -001ba500: 2020 2020 2d20 6673 7479 7065 0a20 2020      - fstype.   
│ │ │ -001ba510: 202d 206f 7074 696f 6e73 0a20 202d 202d   - options.  - -
│ │ │ -001ba520: 202f 7661 722f 6c6f 670a 2020 2020 2d20   /var/log.    - 
│ │ │ -001ba530: 2727 0a20 2020 202d 2027 270a 2020 2020  ''.    - ''.    
│ │ │ -001ba540: 2d20 6465 6661 756c 7473 0a20 2077 6865  - defaults.  whe
│ │ │ -001ba550: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ -001ba560: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -001ba570: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001ba580: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ -001ba590: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ -001ba5a0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001ba5b0: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -001ba5c0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001ba5d0: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ -001ba5e0: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001ba5f0: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001ba600: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001ba610: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -001ba620: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -001ba630: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ -001ba640: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001ba650: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001ba660: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ -001ba670: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -001ba680: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ -001ba690: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001ba6a0: 2722 2f76 6172 2f6c 6f67 2220 696e 2061  '"/var/log" in a
│ │ │ -001ba6b0: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ -001ba6c0: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ -001ba6d0: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ -001ba6e0: 202d 2028 222d 2d66 7374 6162 2220 7c20   - ("--fstab" | 
│ │ │ -001ba6f0: 6c65 6e67 7468 203d 3d20 3029 0a20 202d  length == 0).  -
│ │ │ -001ba700: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ -001ba710: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ -001ba720: 6e64 2064 6576 6963 655f 6e61 6d65 2e73  nd device_name.s
│ │ │ -001ba730: 7464 6f75 745f 6c69 6e65 7320 6973 2064  tdout_lines is d
│ │ │ -001ba740: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ -001ba750: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ -001ba760: 206c 656e 6774 6820 3d3d 2030 290a 2020   length == 0).  
│ │ │ -001ba770: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ -001ba780: 3030 2d35 332d 4143 2d36 0a20 202d 204e  00-53-AC-6.  - N
│ │ │ -001ba790: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ -001ba7a0: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ -001ba7b0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ -001ba7c0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -001ba7d0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -001ba7e0: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ -001ba7f0: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ -001ba800: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ -001ba810: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ -001ba820: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -001ba830: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -001ba840: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -001ba850: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ -001ba860: 6f6e 5f76 6172 5f6c 6f67 5f6e 6f73 7569  on_var_log_nosui
│ │ │ -001ba870: 640a 2020 2d20 6e6f 5f72 6562 6f6f 745f  d.  - no_reboot_
│ │ │ -001ba880: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ -001ba890: 2741 6464 206e 6f73 7569 6420 4f70 7469  'Add nosuid Opti
│ │ │ -001ba8a0: 6f6e 2074 6f20 2f76 6172 2f6c 6f67 3a20  on to /var/log: 
│ │ │ -001ba8b0: 4d61 6b65 2073 7572 6520 6e6f 7375 6964  Make sure nosuid
│ │ │ -001ba8c0: 206f 7074 696f 6e20 6973 2070 6172 7420   option is part 
│ │ │ -001ba8d0: 6f66 2074 6865 2074 6f0a 2020 2020 2f76  of the to.    /v
│ │ │ -001ba8e0: 6172 2f6c 6f67 206f 7074 696f 6e73 270a  ar/log options'.
│ │ │ -001ba8f0: 2020 7365 745f 6661 6374 3a0a 2020 2020    set_fact:.    
│ │ │ -001ba900: 6d6f 756e 745f 696e 666f 3a20 277b 7b20  mount_info: '{{ 
│ │ │ -001ba910: 6d6f 756e 745f 696e 666f 207c 2063 6f6d  mount_info | com
│ │ │ -001ba920: 6269 6e65 2820 7b27 276f 7074 696f 6e73  bine( {''options
│ │ │ -001ba930: 2727 3a27 2727 277e 286d 6f75 6e74 5f69  '':''''~(mount_i
│ │ │ -001ba940: 6e66 6f2e 6f70 7469 6f6e 7320 7c0a 2020  nfo.options |.  
│ │ │ -001ba950: 2020 2020 6465 6661 756c 7428 2727 2727      default(''''
│ │ │ -001ba960: 2929 7e28 2727 2c27 2720 6966 2028 6d6f  ))~('','' if (mo
│ │ │ -001ba970: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ -001ba980: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ -001ba990: 2920 656c 7365 2027 2727 2729 7e27 276e  ) else '''')~''n
│ │ │ -001ba9a0: 6f73 7569 6427 270a 2020 2020 2020 7d29  osuid''.      })
│ │ │ -001ba9b0: 207d 7d27 0a20 2077 6865 6e3a 0a20 202d   }}'.  when:.  -
│ │ │ -001ba9c0: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ -001ba9d0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001ba9e0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001ba9f0: 2272 706d 2d6f 7374 7265 6522 2069 6e20  "rpm-ostree" in 
│ │ │ -001baa00: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001baa10: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001baa20: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -001baa30: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001baa40: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ -001baa50: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ -001baa60: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001baa70: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001baa80: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001baa90: 6c65 5f70 726f 635f 636d 646c 696e 6520  le_proc_cmdline 
│ │ │ -001baaa0: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ -001baab0: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ -001baac0: 6f6e 5f74 7970 6520 696e 0a20 2020 205b  on_type in.    [
│ │ │ -001baad0: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -001baae0: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -001baaf0: 616e 222c 2022 636f 6e74 6169 6e65 7222  an", "container"
│ │ │ -001bab00: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ -001bab10: 2f6c 6f67 2220 696e 2061 6e73 6962 6c65  /log" in ansible
│ │ │ -001bab20: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ -001bab30: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ -001bab40: 207c 206c 6973 7427 0a20 202d 206d 6f75   | list'.  - mou
│ │ │ -001bab50: 6e74 5f69 6e66 6f20 6973 2064 6566 696e  nt_info is defin
│ │ │ -001bab60: 6564 2061 6e64 2022 6e6f 7375 6964 2220  ed and "nosuid" 
│ │ │ -001bab70: 6e6f 7420 696e 2028 6d6f 756e 745f 696e  not in (mount_in
│ │ │ -001bab80: 666f 2e6f 7074 696f 6e73 207c 2064 6566  fo.options | def
│ │ │ -001bab90: 6175 6c74 2827 2729 290a 2020 7461 6773  ault('')).  tags
│ │ │ -001baba0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -001babb0: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ -001babc0: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ -001babd0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001babe0: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ -001babf0: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ -001bac00: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001bac10: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ -001bac20: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ -001bac30: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ -001bac40: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ -001bac50: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ -001bac60: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ -001bac70: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -001bac80: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76  - mount_option_v
│ │ │ -001bac90: 6172 5f6c 6f67 5f6e 6f73 7569 640a 2020  ar_log_nosuid.  
│ │ │ -001baca0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -001bacb0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ -001bacc0: 206e 6f73 7569 6420 4f70 7469 6f6e 2074   nosuid Option t
│ │ │ -001bacd0: 6f20 2f76 6172 2f6c 6f67 3a20 456e 7375  o /var/log: Ensu
│ │ │ -001bace0: 7265 202f 7661 722f 6c6f 6720 6973 206d  re /var/log is m
│ │ │ -001bacf0: 6f75 6e74 6564 2077 6974 6820 6e6f 7375  ounted with nosu
│ │ │ -001bad00: 6964 206f 7074 696f 6e27 0a20 2061 6e73  id option'.  ans
│ │ │ -001bad10: 6962 6c65 2e70 6f73 6978 2e6d 6f75 6e74  ible.posix.mount
│ │ │ -001bad20: 3a0a 2020 2020 7061 7468 3a20 2f76 6172  :.    path: /var
│ │ │ -001bad30: 2f6c 6f67 0a20 2020 2073 7263 3a20 277b  /log.    src: '{
│ │ │ -001bad40: 7b20 6d6f 756e 745f 696e 666f 2e73 6f75  { mount_info.sou
│ │ │ -001bad50: 7263 6520 7c20 6465 6661 756c 7428 2727  rce | default(''
│ │ │ -001bad60: 2727 2920 7d7d 270a 2020 2020 6f70 7473  '') }}'.    opts
│ │ │ -001bad70: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001bad80: 2e6f 7074 696f 6e73 207c 2064 6566 6175  .options | defau
│ │ │ -001bad90: 6c74 2827 2727 2729 207d 7d27 0a20 2020  lt('''') }}'.   
│ │ │ -001bada0: 2073 7461 7465 3a20 6d6f 756e 7465 640a   state: mounted.
│ │ │ -001badb0: 2020 2020 6673 7479 7065 3a20 277b 7b20      fstype: '{{ 
│ │ │ -001badc0: 6d6f 756e 745f 696e 666f 2e66 7374 7970  mount_info.fstyp
│ │ │ -001badd0: 6520 7c20 6465 6661 756c 7428 2727 2727  e | default(''''
│ │ │ -001bade0: 2920 7d7d 270a 2020 7265 6769 7374 6572  ) }}'.  register
│ │ │ -001badf0: 3a20 6d6f 756e 745f 7265 7375 6c74 0a20  : mount_result. 
│ │ │ -001bae00: 2066 6169 6c65 645f 7768 656e 3a0a 2020   failed_when:.  
│ │ │ -001bae10: 2d20 6d6f 756e 745f 7265 7375 6c74 2069  - mount_result i
│ │ │ -001bae20: 7320 6661 696c 6564 0a20 202d 2027 2727  s failed.  - '''
│ │ │ -001bae30: 7461 7267 6574 2069 7320 6275 7379 2727  target is busy''
│ │ │ -001bae40: 206e 6f74 2069 6e20 286d 6f75 6e74 5f72   not in (mount_r
│ │ │ -001bae50: 6573 756c 742e 6d73 6720 7c20 6465 6661  esult.msg | defa
│ │ │ -001bae60: 756c 7428 2727 2727 2929 270a 2020 2d20  ult(''''))'.  - 
│ │ │ -001bae70: 2727 2761 6c72 6561 6479 206d 6f75 6e74  '''already mount
│ │ │ -001bae80: 6564 2727 206e 6f74 2069 6e20 286d 6f75  ed'' not in (mou
│ │ │ -001bae90: 6e74 5f72 6573 756c 742e 6d73 6720 7c20  nt_result.msg | 
│ │ │ -001baea0: 6465 6661 756c 7428 2727 2727 2929 270a  default(''''))'.
│ │ │ -001baeb0: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ -001baec0: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ -001baed0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001baee0: 636b 6167 6573 2061 6e64 2022 7270 6d2d  ckages and "rpm-
│ │ │ -001baef0: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001baf00: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001baf10: 730a 2020 2020 616e 6420 2262 6f6f 7463  s.    and "bootc
│ │ │ -001baf20: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001baf30: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001baf40: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ -001baf50: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ -001baf60: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001baf70: 730a 2020 2020 616e 6420 226f 7374 7265  s.    and "ostre
│ │ │ -001baf80: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ -001baf90: 6f63 5f63 6d64 6c69 6e65 2029 2061 6e64  oc_cmdline ) and
│ │ │ -001bafa0: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ -001bafb0: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ -001bafc0: 7065 2069 6e0a 2020 2020 5b22 646f 636b  pe in.    ["dock
│ │ │ -001bafd0: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ -001bafe0: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c20  nvz", "podman", 
│ │ │ -001baff0: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ -001bb000: 0a20 202d 2027 222f 7661 722f 6c6f 6722  .  - '"/var/log"
│ │ │ -001bb010: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ -001bb020: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ -001bb030: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ -001bb040: 7374 270a 2020 2d20 6d6f 756e 745f 696e  st'.  - mount_in
│ │ │ -001bb050: 666f 2069 7320 6465 6669 6e65 640a 2020  fo is defined.  
│ │ │ -001bb060: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ -001bb070: 7464 6f75 7420 6973 2064 6566 696e 6564  tdout is defined
│ │ │ -001bb080: 2061 6e64 2028 6465 7669 6365 5f6e 616d   and (device_nam
│ │ │ -001bb090: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ -001bb0a0: 6820 2667 743b 2030 2929 206f 7220 2822  h > 0)) or ("
│ │ │ -001bb0b0: 2d2d 6673 7461 6222 0a20 2020 207c 206c  --fstab".    | l
│ │ │ -001bb0c0: 656e 6774 6820 3d3d 2030 290a 2020 7461  ength == 0).  ta
│ │ │ -001bb0d0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -001bb0e0: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ -001bb0f0: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ -001bb100: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001bb110: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ -001bb120: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ -001bb130: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001bb140: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ -001bb150: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ -001bb160: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -001bb170: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ -001bb180: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -001bb190: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001bb1a0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -001bb1b0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ -001bb1c0: 5f76 6172 5f6c 6f67 5f6e 6f73 7569 640a  _var_log_nosuid.
│ │ │ -001bb1d0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001bb1e0: 6564 6564 0a3c 2f63 6f64 653e 3c2f 7072  eded.Remediation
│ │ │ -001bb2a0: 2053 6865 6c6c 2073 6372 6970 7420 e287   Shell script ..
│ │ │ -001bb2b0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
Comp │ │ │ -001b9a20: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -001b9a30: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -001b9a50: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ -001b9a70: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001b9a80: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -001b9aa0: 2f74 683e 3c74 643e 636f 6e66 6967 7572 /th>configur │ │ │ -001b9ab0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ -001bb330: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -001bb340: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
<
│ │ │ -001bb360: 636f 6465 3e23 2052 656d 6564 6961 7469  code># Remediati
│ │ │ -001bb370: 6f6e 2069 7320 6170 706c 6963 6162 6c65  on is applicable
│ │ │ -001bb380: 206f 6e6c 7920 696e 2063 6572 7461 696e   only in certain
│ │ │ -001bb390: 2070 6c61 7466 6f72 6d73 0a69 6620 2820   platforms.if ( 
│ │ │ -001bb3a0: 2120 2820 7b20 7270 6d20 2d2d 7175 6965  ! ( { rpm --quie
│ │ │ -001bb3b0: 7420 2d71 206b 6572 6e65 6c20 3b7d 2026  t -q kernel ;} &
│ │ │ -001bb3c0: 616d 703b 2661 6d70 3b20 7b20 7270 6d20  amp;& { rpm 
│ │ │ -001bb3d0: 2d2d 7175 6965 7420 2d71 2072 706d 2d6f  --quiet -q rpm-o
│ │ │ -001bb3e0: 7374 7265 6520 3b7d 2026 616d 703b 2661  stree ;} &&a
│ │ │ -001bb3f0: 6d70 3b20 7b20 7270 6d20 2d2d 7175 6965  mp; { rpm --quie
│ │ │ -001bb400: 7420 2d71 2062 6f6f 7463 203b 7d20 2661  t -q bootc ;} &a
│ │ │ -001bb410: 6d70 3b26 616d 703b 207b 2021 2072 706d  mp;& { ! rpm
│ │ │ -001bb420: 202d 2d71 7569 6574 202d 7120 6f70 656e   --quiet -q open
│ │ │ -001bb430: 7368 6966 742d 6b75 6265 6c65 7420 3b7d  shift-kubelet ;}
│ │ │ -001bb440: 2026 616d 703b 2661 6d70 3b20 285b 202d   && ([ -
│ │ │ -001bb450: 6620 2f72 756e 2f6f 7374 7265 652d 626f  f /run/ostree-bo
│ │ │ -001bb460: 6f74 6564 205d 207c 7c20 5b20 2d4c 202f  oted ] || [ -L /
│ │ │ -001bb470: 6f73 7472 6565 205d 2920 2920 2661 6d70  ostree ]) ) &
│ │ │ -001bb480: 3b26 616d 703b 2021 2028 205b 202d 6620  ;& ! ( [ -f 
│ │ │ -001bb490: 2f2e 646f 636b 6572 656e 7620 5d20 7c7c  /.dockerenv ] ||
│ │ │ -001bb4a0: 205b 202d 6620 2f72 756e 2f2e 636f 6e74   [ -f /run/.cont
│ │ │ -001bb4b0: 6169 6e65 7265 6e76 205d 2029 2029 2026  ainerenv ] ) ) &
│ │ │ -001bb4c0: 616d 703b 2661 6d70 3b20 7b20 2820 6669  amp;& { ( fi
│ │ │ -001bb4d0: 6e64 6d6e 7420 2d2d 6b65 726e 656c 2022  ndmnt --kernel "
│ │ │ -001bb4e0: 2f76 6172 2f6c 6f67 2220 2667 743b 202f  /var/log" > /
│ │ │ -001bb4f0: 6465 762f 6e75 6c6c 207c 7c20 6669 6e64  dev/null || find
│ │ │ -001bb500: 6d6e 7420 2d2d 6673 7461 6220 222f 7661  mnt --fstab "/va
│ │ │ -001bb510: 722f 6c6f 6722 2026 6774 3b20 2f64 6576  r/log" > /dev
│ │ │ -001bb520: 2f6e 756c 6c20 293b 207d 3b20 7468 656e  /null ); }; then
│ │ │ -001bb530: 0a0a 6675 6e63 7469 6f6e 2070 6572 666f  ..function perfo
│ │ │ -001bb540: 726d 5f72 656d 6564 6961 7469 6f6e 207b  rm_remediation {
│ │ │ -001bb550: 0a0a 2020 2020 0a20 2020 2020 2020 2023  ..    .        #
│ │ │ -001bb560: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ -001bb570: 202f 7661 722f 6c6f 6720 6861 7320 746f   /var/log has to
│ │ │ -001bb580: 2062 6520 6465 6669 6e65 6420 696e 202f   be defined in /
│ │ │ -001bb590: 6574 632f 6673 7461 620a 2020 2020 2020  etc/fstab.      
│ │ │ -001bb5a0: 2020 2320 6265 666f 7265 2074 6869 7320    # before this 
│ │ │ -001bb5b0: 7265 6d65 6469 6174 696f 6e20 6361 6e20  remediation can 
│ │ │ -001bb5c0: 6265 2065 7865 6375 7465 642e 2049 6e20  be executed. In 
│ │ │ -001bb5d0: 6361 7365 2069 7420 6973 206e 6f74 2064  case it is not d
│ │ │ -001bb5e0: 6566 696e 6564 2c20 7468 650a 2020 2020  efined, the.    
│ │ │ -001bb5f0: 2020 2020 2320 7265 6d65 6469 6174 696f      # remediatio
│ │ │ -001bb600: 6e20 6162 6f72 7473 2061 6e64 206e 6f20  n aborts and no 
│ │ │ -001bb610: 6368 616e 6765 7320 7265 6761 7264 696e  changes regardin
│ │ │ -001bb620: 6720 7468 6520 6d6f 756e 7420 706f 696e  g the mount poin
│ │ │ -001bb630: 7420 6172 6520 646f 6e65 2e0a 2020 2020  t are done..    
│ │ │ -001bb640: 2020 2020 6d6f 756e 745f 706f 696e 745f      mount_point_
│ │ │ -001bb650: 6d61 7463 685f 7265 6765 7870 3d22 2428  match_regexp="$(
│ │ │ -001bb660: 7072 696e 7466 2022 5e5b 5b3a 7370 6163  printf "^[[:spac
│ │ │ -001bb670: 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370  e:]]*[^#].*[[:sp
│ │ │ -001bb680: 6163 653a 5d5d 2573 5b5b 3a73 7061 6365  ace:]]%s[[:space
│ │ │ -001bb690: 3a5d 5d22 2022 2f76 6172 2f6c 6f67 2229  :]]" "/var/log")
│ │ │ -001bb6a0: 220a 0a20 2020 2067 7265 7020 2224 6d6f  "..    grep "$mo
│ │ │ -001bb6b0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001bb6c0: 7265 6765 7870 2220 2d71 202f 6574 632f  regexp" -q /etc/
│ │ │ -001bb6d0: 6673 7461 6220 5c0a 2020 2020 2020 2020  fstab \.        
│ │ │ -001bb6e0: 7c7c 207b 2065 6368 6f20 2254 6865 206d  || { echo "The m
│ │ │ -001bb6f0: 6f75 6e74 2070 6f69 6e74 2027 2f76 6172  ount point '/var
│ │ │ -001bb700: 2f6c 6f67 2720 6973 206e 6f74 2065 7665  /log' is not eve
│ │ │ -001bb710: 6e20 696e 202f 6574 632f 6673 7461 622c  n in /etc/fstab,
│ │ │ -001bb720: 2073 6f20 7765 2063 616e 2774 2073 6574   so we can't set
│ │ │ -001bb730: 2075 7020 6d6f 756e 7420 6f70 7469 6f6e   up mount option
│ │ │ -001bb740: 7322 2026 6774 3b26 616d 703b 323b 0a20  s" >&2;. 
│ │ │ -001bb750: 2020 2020 2020 2020 2020 2020 2020 2065                 e
│ │ │ -001bb760: 6368 6f20 224e 6f74 2072 656d 6564 6961  cho "Not remedia
│ │ │ -001bb770: 7469 6e67 2c20 6265 6361 7573 6520 7468  ting, because th
│ │ │ -001bb780: 6572 6520 6973 206e 6f20 7265 636f 7264  ere is no record
│ │ │ -001bb790: 206f 6620 2f76 6172 2f6c 6f67 2069 6e20   of /var/log in 
│ │ │ -001bb7a0: 2f65 7463 2f66 7374 6162 2220 2667 743b  /etc/fstab" >
│ │ │ -001bb7b0: 2661 6d70 3b32 3b20 7265 7475 726e 2031  &2; return 1
│ │ │ -001bb7c0: 3b20 7d0a 2020 2020 0a0a 0a20 2020 206d  ; }.    ...    m
│ │ │ -001bb7d0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001bb7e0: 5f72 6567 6578 703d 2224 2870 7269 6e74  _regexp="$(print
│ │ │ -001bb7f0: 6620 225e 5b5b 3a73 7061 6365 3a5d 5d2a  f "^[[:space:]]*
│ │ │ -001bb800: 5b5e 235d 2e2a 5b5b 3a73 7061 6365 3a5d  [^#].*[[:space:]
│ │ │ -001bb810: 5d25 735b 5b3a 7370 6163 653a 5d5d 2220  ]%s[[:space:]]" 
│ │ │ -001bb820: 2f76 6172 2f6c 6f67 2922 0a0a 2020 2020  /var/log)"..    
│ │ │ -001bb830: 2320 4966 2074 6865 206d 6f75 6e74 2070  # If the mount p
│ │ │ -001bb840: 6f69 6e74 2069 7320 6e6f 7420 696e 202f  oint is not in /
│ │ │ -001bb850: 6574 632f 6673 7461 622c 2067 6574 2070  etc/fstab, get p
│ │ │ -001bb860: 7265 7669 6f75 7320 6d6f 756e 7420 6f70  revious mount op
│ │ │ -001bb870: 7469 6f6e 7320 6672 6f6d 202f 6574 632f  tions from /etc/
│ │ │ -001bb880: 6d74 6162 0a20 2020 2069 6620 2120 6772  mtab.    if ! gr
│ │ │ -001bb890: 6570 202d 7120 2224 6d6f 756e 745f 706f  ep -q "$mount_po
│ │ │ -001bb8a0: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001bb8b0: 2220 2f65 7463 2f66 7374 6162 3b20 7468  " /etc/fstab; th
│ │ │ -001bb8c0: 656e 0a20 2020 2020 2020 2023 2072 756e  en.        # run
│ │ │ -001bb8d0: 7469 6d65 206f 7074 7320 7769 7468 6f75  time opts withou
│ │ │ -001bb8e0: 7420 736f 6d65 2061 7574 6f6d 6174 6963  t some automatic
│ │ │ -001bb8f0: 206b 6572 6e65 6c2f 7573 6572 7370 6163   kernel/userspac
│ │ │ -001bb900: 652d 6164 6465 6420 6465 6661 756c 7473  e-added defaults
│ │ │ -001bb910: 0a20 2020 2020 2020 2070 7265 7669 6f75  .        previou
│ │ │ -001bb920: 735f 6d6f 756e 745f 6f70 7473 3d24 2867  s_mount_opts=$(g
│ │ │ -001bb930: 7265 7020 2224 6d6f 756e 745f 706f 696e  rep "$mount_poin
│ │ │ -001bb940: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ -001bb950: 2f65 7463 2f6d 7461 6220 7c20 6865 6164  /etc/mtab | head
│ │ │ -001bb960: 202d 3120 7c20 2061 776b 2027 7b70 7269   -1 |  awk '{pri
│ │ │ -001bb970: 6e74 2024 347d 2720 5c0a 2020 2020 2020  nt $4}' \.      
│ │ │ -001bb980: 2020 2020 2020 2020 2020 2020 2020 7c20                | 
│ │ │ -001bb990: 7365 6420 2d45 2022 732f 2872 777c 6465  sed -E "s/(rw|de
│ │ │ -001bb9a0: 6661 756c 7473 7c73 6563 6c61 6265 6c7c  faults|seclabel|
│ │ │ -001bb9b0: 6e6f 7375 6964 2928 2c7c 2429 2f2f 673b  nosuid)(,|$)//g;
│ │ │ -001bb9c0: 732f 2c24 2f2f 2229 0a20 2020 2020 2020  s/,$//").       
│ │ │ -001bb9d0: 205b 2022 2470 7265 7669 6f75 735f 6d6f   [ "$previous_mo
│ │ │ -001bb9e0: 756e 745f 6f70 7473 2220 5d20 2661 6d70  unt_opts" ] &
│ │ │ -001bb9f0: 3b26 616d 703b 2070 7265 7669 6f75 735f  ;& previous_
│ │ │ -001bba00: 6d6f 756e 745f 6f70 7473 2b3d 222c 220a  mount_opts+=",".
│ │ │ -001bba10: 2020 2020 2020 2020 2320 496e 2069 736f          # In iso
│ │ │ -001bba20: 3936 3630 2066 696c 6573 7973 7465 6d73  9660 filesystems
│ │ │ -001bba30: 206d 7461 6220 636f 756c 6420 6465 7363   mtab could desc
│ │ │ -001bba40: 7269 6265 2061 2022 626c 6f63 6b73 697a  ribe a "blocksiz
│ │ │ -001bba50: 6522 2076 616c 7565 2c20 7468 6973 2073  e" value, this s
│ │ │ -001bba60: 686f 756c 6420 6265 2072 6566 6c65 6374  hould be reflect
│ │ │ -001bba70: 6564 2069 6e0a 2020 2020 2020 2020 2320  ed in.        # 
│ │ │ -001bba80: 6673 7461 6220 6173 2022 626c 6f63 6b22  fstab as "block"
│ │ │ -001bba90: 2e20 2054 6865 206e 6578 7420 7661 7269  .  The next vari
│ │ │ -001bbaa0: 6162 6c65 2069 7320 746f 2073 6174 6973  able is to satis
│ │ │ -001bbab0: 6679 2073 6865 6c6c 6368 6563 6b20 5343  fy shellcheck SC
│ │ │ -001bbac0: 3230 3530 2e0a 2020 2020 2020 2020 6673  2050..        fs
│ │ │ -001bbad0: 5f74 7970 653d 2222 0a20 2020 2020 2020  _type="".       
│ │ │ -001bbae0: 2069 6620 5b20 2022 2466 735f 7479 7065   if [  "$fs_type
│ │ │ -001bbaf0: 2220 3d3d 2022 6973 6f39 3636 3022 205d  " == "iso9660" ]
│ │ │ -001bbb00: 203b 2074 6865 6e0a 2020 2020 2020 2020   ; then.        
│ │ │ -001bbb10: 2020 2020 7072 6576 696f 7573 5f6d 6f75      previous_mou
│ │ │ -001bbb20: 6e74 5f6f 7074 733d 2428 7365 6420 2773  nt_opts=$(sed 's
│ │ │ -001bbb30: 2f62 6c6f 636b 7369 7a65 3d2f 626c 6f63  /blocksize=/bloc
│ │ │ -001bbb40: 6b3d 2f27 2026 6c74 3b26 6c74 3b26 6c74  k=/' <<<
│ │ │ -001bbb50: 3b20 2224 7072 6576 696f 7573 5f6d 6f75  ; "$previous_mou
│ │ │ -001bbb60: 6e74 5f6f 7074 7322 290a 2020 2020 2020  nt_opts").      
│ │ │ -001bbb70: 2020 6669 0a20 2020 2020 2020 2065 6368    fi.        ech
│ │ │ -001bbb80: 6f20 2220 2f76 6172 2f6c 6f67 2020 6465  o " /var/log  de
│ │ │ -001bbb90: 6661 756c 7473 2c24 7b70 7265 7669 6f75  faults,${previou
│ │ │ -001bbba0: 735f 6d6f 756e 745f 6f70 7473 7d6e 6f73  s_mount_opts}nos
│ │ │ -001bbbb0: 7569 6420 3020 3022 2026 6774 3b26 6774  uid 0 0" >>
│ │ │ -001bbbc0: 3b20 2f65 7463 2f66 7374 6162 0a20 2020  ; /etc/fstab.   
│ │ │ -001bbbd0: 2023 2049 6620 7468 6520 6d6f 756e 745f   # If the mount_
│ │ │ -001bbbe0: 6f70 7420 6f70 7469 6f6e 2069 7320 6e6f  opt option is no
│ │ │ -001bbbf0: 7420 616c 7265 6164 7920 696e 2074 6865  t already in the
│ │ │ -001bbc00: 206d 6f75 6e74 2070 6f69 6e74 2773 202f   mount point's /
│ │ │ -001bbc10: 6574 632f 6673 7461 6220 656e 7472 792c  etc/fstab entry,
│ │ │ -001bbc20: 2061 6464 2069 740a 2020 2020 656c 6966   add it.    elif
│ │ │ -001bbc30: 2021 2067 7265 7020 2224 6d6f 756e 745f   ! grep "$mount_
│ │ │ -001bbc40: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001bbc50: 7870 2220 2f65 7463 2f66 7374 6162 207c  xp" /etc/fstab |
│ │ │ -001bbc60: 2067 7265 7020 2d71 2022 6e6f 7375 6964   grep -q "nosuid
│ │ │ -001bbc70: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ -001bbc80: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001bbc90: 7074 733d 2428 6772 6570 2022 246d 6f75  pts=$(grep "$mou
│ │ │ -001bbca0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001bbcb0: 6567 6578 7022 202f 6574 632f 6673 7461  egexp" /etc/fsta
│ │ │ -001bbcc0: 6220 7c20 6177 6b20 277b 7072 696e 7420  b | awk '{print 
│ │ │ -001bbcd0: 2434 7d27 290a 2020 2020 2020 2020 7365  $4}').        se
│ │ │ -001bbce0: 6420 2d69 2022 737c 5c28 247b 6d6f 756e  d -i "s|\(${moun
│ │ │ -001bbcf0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001bbd00: 6765 7870 7d2e 2a24 7b70 7265 7669 6f75  gexp}.*${previou
│ │ │ -001bbd10: 735f 6d6f 756e 745f 6f70 7473 7d5c 297c  s_mount_opts}\)|
│ │ │ -001bbd20: 5c31 2c6e 6f73 7569 647c 2220 2f65 7463  \1,nosuid|" /etc
│ │ │ -001bbd30: 2f66 7374 6162 0a20 2020 2066 690a 0a0a  /fstab.    fi...
│ │ │ -001bbd40: 2020 2020 6966 206d 6b64 6972 202d 7020      if mkdir -p 
│ │ │ -001bbd50: 222f 7661 722f 6c6f 6722 3b20 7468 656e  "/var/log"; then
│ │ │ -001bbd60: 0a20 2020 2020 2020 2069 6620 6d6f 756e  .        if moun
│ │ │ -001bbd70: 7470 6f69 6e74 202d 7120 222f 7661 722f  tpoint -q "/var/
│ │ │ -001bbd80: 6c6f 6722 3b20 7468 656e 0a20 2020 2020  log"; then.     
│ │ │ -001bbd90: 2020 2020 2020 206d 6f75 6e74 202d 6f20         mount -o 
│ │ │ -001bbda0: 7265 6d6f 756e 7420 2d2d 7461 7267 6574  remount --target
│ │ │ -001bbdb0: 2022 2f76 6172 2f6c 6f67 220a 2020 2020   "/var/log".    
│ │ │ -001bbdc0: 2020 2020 6669 0a20 2020 2066 690a 7d0a      fi.    fi.}.
│ │ │ -001bbdd0: 0a70 6572 666f 726d 5f72 656d 6564 6961  .perform_remedia
│ │ │ -001bbde0: 7469 6f6e 0a0a 656c 7365 0a20 2020 2026  tion..else.    &
│ │ │ -001bbdf0: 6774 3b26 616d 703b 3220 6563 686f 2027  gt;&2 echo '
│ │ │ -001bbe00: 5265 6d65 6469 6174 696f 6e20 6973 206e  Remediation is n
│ │ │ -001bbe10: 6f74 2061 7070 6c69 6361 626c 652c 206e  ot applicable, n
│ │ │ -001bbe20: 6f74 6869 6e67 2077 6173 2064 6f6e 6527  othing was done'
│ │ │ -001bbe30: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.

│ │ │ +001b97f0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +001b9810: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ +001b9840: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
Complexity:< │ │ │ +001b9800: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +001b9820: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ +001b9870: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +001b9880: 636f 6e66 6967 7572 653c 2f74 643e 3c2f configure
│ │ │ +001b98a0: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ +001b98b0: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ +001b98c0: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ +001b98d0: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ +001b98e0: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ +001b98f0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +001b9900: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ +001b9910: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ +001b9920: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001b9930: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ +001b9940: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ +001b9950: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001b9960: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ +001b9970: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ +001b9980: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +001b9990: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +001b99a0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +001b99b0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +001b99c0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001b99d0: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76  - mount_option_v
│ │ │ +001b99e0: 6172 5f6c 6f67 5f6e 6f73 7569 640a 2020  ar_log_nosuid.  
│ │ │ +001b99f0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001b9a00: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ +001b9a10: 206e 6f73 7569 6420 4f70 7469 6f6e 2074   nosuid Option t
│ │ │ +001b9a20: 6f20 2f76 6172 2f6c 6f67 3a20 4368 6563  o /var/log: Chec
│ │ │ +001b9a30: 6b20 696e 666f 726d 6174 696f 6e20 6173  k information as
│ │ │ +001b9a40: 736f 6369 6174 6564 2074 6f20 6d6f 756e  sociated to moun
│ │ │ +001b9a50: 7470 6f69 6e74 270a 2020 616e 7369 626c  tpoint'.  ansibl
│ │ │ +001b9a60: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ +001b9a70: 643a 2066 696e 646d 6e74 202d 2d66 7374  d: findmnt --fst
│ │ │ +001b9a80: 6162 2027 2f76 6172 2f6c 6f67 270a 2020  ab '/var/log'.  
│ │ │ +001b9a90: 7265 6769 7374 6572 3a20 6465 7669 6365  register: device
│ │ │ +001b9aa0: 5f6e 616d 650a 2020 6661 696c 6564 5f77  _name.  failed_w
│ │ │ +001b9ab0: 6865 6e3a 2064 6576 6963 655f 6e61 6d65  hen: device_name
│ │ │ +001b9ac0: 2e72 6320 2667 743b 2031 0a20 2063 6861  .rc > 1.  cha
│ │ │ +001b9ad0: 6e67 6564 5f77 6865 6e3a 2066 616c 7365  nged_when: false
│ │ │ +001b9ae0: 0a20 2063 6865 636b 5f6d 6f64 653a 2066  .  check_mode: f
│ │ │ +001b9af0: 616c 7365 0a20 2077 6865 6e3a 0a20 202d  alse.  when:.  -
│ │ │ +001b9b00: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ +001b9b10: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001b9b20: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001b9b30: 2272 706d 2d6f 7374 7265 6522 2069 6e20  "rpm-ostree" in 
│ │ │ +001b9b40: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001b9b50: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ +001b9b60: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ +001b9b70: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001b9b80: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ +001b9b90: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ +001b9ba0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001b9bb0: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ +001b9bc0: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001b9bd0: 6c65 5f70 726f 635f 636d 646c 696e 6520  le_proc_cmdline 
│ │ │ +001b9be0: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ +001b9bf0: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ +001b9c00: 6f6e 5f74 7970 6520 696e 0a20 2020 205b  on_type in.    [
│ │ │ +001b9c10: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ +001b9c20: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ +001b9c30: 616e 222c 2022 636f 6e74 6169 6e65 7222  an", "container"
│ │ │ +001b9c40: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ +001b9c50: 2f6c 6f67 2220 696e 2061 6e73 6962 6c65  /log" in ansible
│ │ │ +001b9c60: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ +001b9c70: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ +001b9c80: 207c 206c 6973 7427 0a20 2074 6167 733a   | list'.  tags:
│ │ │ +001b9c90: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001b9ca0: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ +001b9cb0: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ +001b9cc0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001b9cd0: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ +001b9ce0: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ +001b9cf0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001b9d00: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ +001b9d10: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ +001b9d20: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +001b9d30: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +001b9d40: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +001b9d50: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +001b9d60: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001b9d70: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ +001b9d80: 725f 6c6f 675f 6e6f 7375 6964 0a20 202d  r_log_nosuid.  -
│ │ │ +001b9d90: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +001b9da0: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ +001b9db0: 6e6f 7375 6964 204f 7074 696f 6e20 746f  nosuid Option to
│ │ │ +001b9dc0: 202f 7661 722f 6c6f 673a 2043 7265 6174   /var/log: Creat
│ │ │ +001b9dd0: 6520 6d6f 756e 745f 696e 666f 2064 6963  e mount_info dic
│ │ │ +001b9de0: 7469 6f6e 6172 7920 7661 7269 6162 6c65  tionary variable
│ │ │ +001b9df0: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ +001b9e00: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ +001b9e10: 7b20 6d6f 756e 745f 696e 666f 7c64 6566  { mount_info|def
│ │ │ +001b9e20: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65  ault({})|combine
│ │ │ +001b9e30: 287b 6974 656d 2e30 3a20 6974 656d 2e31  ({item.0: item.1
│ │ │ +001b9e40: 7d29 207d 7d27 0a20 2077 6974 685f 746f  }) }}'.  with_to
│ │ │ +001b9e50: 6765 7468 6572 3a0a 2020 2d20 277b 7b20  gether:.  - '{{ 
│ │ │ +001b9e60: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001b9e70: 7574 5f6c 696e 6573 5b30 5d2e 7370 6c69  ut_lines[0].spli
│ │ │ +001b9e80: 7428 2920 7c20 6d61 7028 2727 6c6f 7765  t() | map(''lowe
│ │ │ +001b9e90: 7227 2729 207c 206c 6973 7420 7d7d 270a  r'') | list }}'.
│ │ │ +001b9ea0: 2020 2d20 277b 7b20 6465 7669 6365 5f6e    - '{{ device_n
│ │ │ +001b9eb0: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ +001b9ec0: 5b31 5d2e 7370 6c69 7428 2920 7c20 6c69  [1].split() | li
│ │ │ +001b9ed0: 7374 207d 7d27 0a20 2077 6865 6e3a 0a20  st }}'.  when:. 
│ │ │ +001b9ee0: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ +001b9ef0: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +001b9f00: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001b9f10: 6420 2272 706d 2d6f 7374 7265 6522 2069  d "rpm-ostree" i
│ │ │ +001b9f20: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001b9f30: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +001b9f40: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ +001b9f50: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001b9f60: 6573 2061 6e64 206e 6f74 2022 6f70 656e  es and not "open
│ │ │ +001b9f70: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ +001b9f80: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001b9f90: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +001b9fa0: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ +001b9fb0: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ +001b9fc0: 6520 2920 616e 6420 6e6f 7420 2820 616e  e ) and not ( an
│ │ │ +001b9fd0: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ +001b9fe0: 7469 6f6e 5f74 7970 6520 696e 0a20 2020  tion_type in.   
│ │ │ +001b9ff0: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ +001ba000: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ +001ba010: 646d 616e 222c 2022 636f 6e74 6169 6e65  dman", "containe
│ │ │ +001ba020: 7222 5d20 2920 290a 2020 2d20 2722 2f76  r"] ) ).  - '"/v
│ │ │ +001ba030: 6172 2f6c 6f67 2220 696e 2061 6e73 6962  ar/log" in ansib
│ │ │ +001ba040: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ +001ba050: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ +001ba060: 2229 207c 206c 6973 7427 0a20 202d 2064  ") | list'.  - d
│ │ │ +001ba070: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001ba080: 7420 6973 2064 6566 696e 6564 2061 6e64  t is defined and
│ │ │ +001ba090: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +001ba0a0: 6f75 745f 6c69 6e65 7320 6973 2064 6566  out_lines is def
│ │ │ +001ba0b0: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ +001ba0c0: 5f6e 616d 652e 7374 646f 7574 207c 206c  _name.stdout | l
│ │ │ +001ba0d0: 656e 6774 6820 2667 743b 2030 290a 2020  ength > 0).  
│ │ │ +001ba0e0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +001ba0f0: 3030 2d35 332d 4143 2d36 0a20 202d 204e  00-53-AC-6.  - N
│ │ │ +001ba100: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ +001ba110: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ +001ba120: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ +001ba130: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001ba140: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001ba150: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ +001ba160: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ +001ba170: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +001ba180: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +001ba190: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +001ba1a0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +001ba1b0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001ba1c0: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ +001ba1d0: 6f6e 5f76 6172 5f6c 6f67 5f6e 6f73 7569  on_var_log_nosui
│ │ │ +001ba1e0: 640a 2020 2d20 6e6f 5f72 6562 6f6f 745f  d.  - no_reboot_
│ │ │ +001ba1f0: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ +001ba200: 2741 6464 206e 6f73 7569 6420 4f70 7469  'Add nosuid Opti
│ │ │ +001ba210: 6f6e 2074 6f20 2f76 6172 2f6c 6f67 3a20  on to /var/log: 
│ │ │ +001ba220: 4966 202f 7661 722f 6c6f 6720 6e6f 7420  If /var/log not 
│ │ │ +001ba230: 6d6f 756e 7465 642c 2063 7261 6674 206d  mounted, craft m
│ │ │ +001ba240: 6f75 6e74 5f69 6e66 6f0a 2020 2020 6d61  ount_info.    ma
│ │ │ +001ba250: 6e75 616c 6c79 270a 2020 7365 745f 6661  nually'.  set_fa
│ │ │ +001ba260: 6374 3a0a 2020 2020 6d6f 756e 745f 696e  ct:.    mount_in
│ │ │ +001ba270: 666f 3a20 277b 7b20 6d6f 756e 745f 696e  fo: '{{ mount_in
│ │ │ +001ba280: 666f 7c64 6566 6175 6c74 287b 7d29 7c63  fo|default({})|c
│ │ │ +001ba290: 6f6d 6269 6e65 287b 6974 656d 2e30 3a20  ombine({item.0: 
│ │ │ +001ba2a0: 6974 656d 2e31 7d29 207d 7d27 0a20 2077  item.1}) }}'.  w
│ │ │ +001ba2b0: 6974 685f 746f 6765 7468 6572 3a0a 2020  ith_together:.  
│ │ │ +001ba2c0: 2d20 2d20 7461 7267 6574 0a20 2020 202d  - - target.    -
│ │ │ +001ba2d0: 2073 6f75 7263 650a 2020 2020 2d20 6673   source.    - fs
│ │ │ +001ba2e0: 7479 7065 0a20 2020 202d 206f 7074 696f  type.    - optio
│ │ │ +001ba2f0: 6e73 0a20 202d 202d 202f 7661 722f 6c6f  ns.  - - /var/lo
│ │ │ +001ba300: 670a 2020 2020 2d20 2727 0a20 2020 202d  g.    - ''.    -
│ │ │ +001ba310: 2027 270a 2020 2020 2d20 6465 6661 756c   ''.    - defaul
│ │ │ +001ba320: 7473 0a20 2077 6865 6e3a 0a20 202d 2028  ts.  when:.  - (
│ │ │ +001ba330: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +001ba340: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001ba350: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ +001ba360: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ +001ba370: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001ba380: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ +001ba390: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ +001ba3a0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001ba3b0: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ +001ba3c0: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ +001ba3d0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001ba3e0: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ +001ba3f0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001ba400: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ +001ba410: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ +001ba420: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ +001ba430: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ +001ba440: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ +001ba450: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ +001ba460: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ +001ba470: 2920 290a 2020 2d20 2722 2f76 6172 2f6c  ) ).  - '"/var/l
│ │ │ +001ba480: 6f67 2220 696e 2061 6e73 6962 6c65 5f6d  og" in ansible_m
│ │ │ +001ba490: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ +001ba4a0: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ +001ba4b0: 206c 6973 7427 0a20 202d 2028 222d 2d66   list'.  - ("--f
│ │ │ +001ba4c0: 7374 6162 2220 7c20 6c65 6e67 7468 203d  stab" | length =
│ │ │ +001ba4d0: 3d20 3029 0a20 202d 2064 6576 6963 655f  = 0).  - device_
│ │ │ +001ba4e0: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ +001ba4f0: 6566 696e 6564 2061 6e64 2064 6576 6963  efined and devic
│ │ │ +001ba500: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ +001ba510: 6e65 7320 6973 2064 6566 696e 6564 0a20  nes is defined. 
│ │ │ +001ba520: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ +001ba530: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ +001ba540: 3d3d 2030 290a 2020 7461 6773 3a0a 2020  == 0).  tags:.  
│ │ │ +001ba550: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001ba560: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ +001ba570: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ +001ba580: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +001ba590: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001ba5a0: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ +001ba5b0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001ba5c0: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ +001ba5d0: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ +001ba5e0: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +001ba5f0: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ +001ba600: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ +001ba610: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ +001ba620: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ +001ba630: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6c  unt_option_var_l
│ │ │ +001ba640: 6f67 5f6e 6f73 7569 640a 2020 2d20 6e6f  og_nosuid.  - no
│ │ │ +001ba650: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +001ba660: 2d20 6e61 6d65 3a20 2741 6464 206e 6f73  - name: 'Add nos
│ │ │ +001ba670: 7569 6420 4f70 7469 6f6e 2074 6f20 2f76  uid Option to /v
│ │ │ +001ba680: 6172 2f6c 6f67 3a20 4d61 6b65 2073 7572  ar/log: Make sur
│ │ │ +001ba690: 6520 6e6f 7375 6964 206f 7074 696f 6e20  e nosuid option 
│ │ │ +001ba6a0: 6973 2070 6172 7420 6f66 2074 6865 2074  is part of the t
│ │ │ +001ba6b0: 6f0a 2020 2020 2f76 6172 2f6c 6f67 206f  o.    /var/log o
│ │ │ +001ba6c0: 7074 696f 6e73 270a 2020 7365 745f 6661  ptions'.  set_fa
│ │ │ +001ba6d0: 6374 3a0a 2020 2020 6d6f 756e 745f 696e  ct:.    mount_in
│ │ │ +001ba6e0: 666f 3a20 277b 7b20 6d6f 756e 745f 696e  fo: '{{ mount_in
│ │ │ +001ba6f0: 666f 207c 2063 6f6d 6269 6e65 2820 7b27  fo | combine( {'
│ │ │ +001ba700: 276f 7074 696f 6e73 2727 3a27 2727 277e  'options'':''''~
│ │ │ +001ba710: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469  (mount_info.opti
│ │ │ +001ba720: 6f6e 7320 7c0a 2020 2020 2020 6465 6661  ons |.      defa
│ │ │ +001ba730: 756c 7428 2727 2727 2929 7e28 2727 2c27  ult(''''))~('','
│ │ │ +001ba740: 2720 6966 2028 6d6f 756e 745f 696e 666f  ' if (mount_info
│ │ │ +001ba750: 2e6f 7074 696f 6e73 207c 2064 6566 6175  .options | defau
│ │ │ +001ba760: 6c74 2827 2727 2729 2920 656c 7365 2027  lt('''')) else '
│ │ │ +001ba770: 2727 2729 7e27 276e 6f73 7569 6427 270a  ''')~''nosuid''.
│ │ │ +001ba780: 2020 2020 2020 7d29 207d 7d27 0a20 2077        }) }}'.  w
│ │ │ +001ba790: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +001ba7a0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +001ba7b0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001ba7c0: 6765 7320 616e 6420 2272 706d 2d6f 7374  ges and "rpm-ost
│ │ │ +001ba7d0: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001ba7e0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001ba7f0: 2020 2061 6e64 2022 626f 6f74 6322 2069     and "bootc" i
│ │ │ +001ba800: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001ba810: 7061 636b 6167 6573 2061 6e64 206e 6f74  packages and not
│ │ │ +001ba820: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ +001ba830: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ +001ba840: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001ba850: 2020 2061 6e64 2022 6f73 7472 6565 2220     and "ostree" 
│ │ │ +001ba860: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ +001ba870: 636d 646c 696e 6520 2920 616e 6420 6e6f  cmdline ) and no
│ │ │ +001ba880: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ +001ba890: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ +001ba8a0: 696e 0a20 2020 205b 2264 6f63 6b65 7222  in.    ["docker"
│ │ │ +001ba8b0: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ +001ba8c0: 222c 2022 706f 646d 616e 222c 2022 636f  ", "podman", "co
│ │ │ +001ba8d0: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ +001ba8e0: 2d20 2722 2f76 6172 2f6c 6f67 2220 696e  - '"/var/log" in
│ │ │ +001ba8f0: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ +001ba900: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ +001ba910: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ +001ba920: 0a20 202d 206d 6f75 6e74 5f69 6e66 6f20  .  - mount_info 
│ │ │ +001ba930: 6973 2064 6566 696e 6564 2061 6e64 2022  is defined and "
│ │ │ +001ba940: 6e6f 7375 6964 2220 6e6f 7420 696e 2028  nosuid" not in (
│ │ │ +001ba950: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ +001ba960: 6e73 207c 2064 6566 6175 6c74 2827 2729  ns | default('')
│ │ │ +001ba970: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ +001ba980: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ +001ba990: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001ba9a0: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ +001ba9b0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +001ba9c0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001ba9d0: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +001ba9e0: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +001ba9f0: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ +001baa00: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ +001baa10: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ +001baa20: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ +001baa30: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +001baa40: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +001baa50: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ +001baa60: 6f70 7469 6f6e 5f76 6172 5f6c 6f67 5f6e  option_var_log_n
│ │ │ +001baa70: 6f73 7569 640a 2020 2d20 6e6f 5f72 6562  osuid.  - no_reb
│ │ │ +001baa80: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61  oot_needed..- na
│ │ │ +001baa90: 6d65 3a20 2741 6464 206e 6f73 7569 6420  me: 'Add nosuid 
│ │ │ +001baaa0: 4f70 7469 6f6e 2074 6f20 2f76 6172 2f6c  Option to /var/l
│ │ │ +001baab0: 6f67 3a20 456e 7375 7265 202f 7661 722f  og: Ensure /var/
│ │ │ +001baac0: 6c6f 6720 6973 206d 6f75 6e74 6564 2077  log is mounted w
│ │ │ +001baad0: 6974 6820 6e6f 7375 6964 206f 7074 696f  ith nosuid optio
│ │ │ +001baae0: 6e27 0a20 2061 6e73 6962 6c65 2e70 6f73  n'.  ansible.pos
│ │ │ +001baaf0: 6978 2e6d 6f75 6e74 3a0a 2020 2020 7061  ix.mount:.    pa
│ │ │ +001bab00: 7468 3a20 2f76 6172 2f6c 6f67 0a20 2020  th: /var/log.   
│ │ │ +001bab10: 2073 7263 3a20 277b 7b20 6d6f 756e 745f   src: '{{ mount_
│ │ │ +001bab20: 696e 666f 2e73 6f75 7263 6520 7c20 6465  info.source | de
│ │ │ +001bab30: 6661 756c 7428 2727 2727 2920 7d7d 270a  fault('''') }}'.
│ │ │ +001bab40: 2020 2020 6f70 7473 3a20 277b 7b20 6d6f      opts: '{{ mo
│ │ │ +001bab50: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ +001bab60: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ +001bab70: 207d 7d27 0a20 2020 2073 7461 7465 3a20   }}'.    state: 
│ │ │ +001bab80: 6d6f 756e 7465 640a 2020 2020 6673 7479  mounted.    fsty
│ │ │ +001bab90: 7065 3a20 277b 7b20 6d6f 756e 745f 696e  pe: '{{ mount_in
│ │ │ +001baba0: 666f 2e66 7374 7970 6520 7c20 6465 6661  fo.fstype | defa
│ │ │ +001babb0: 756c 7428 2727 2727 2920 7d7d 270a 2020  ult('''') }}'.  
│ │ │ +001babc0: 7265 6769 7374 6572 3a20 6d6f 756e 745f  register: mount_
│ │ │ +001babd0: 7265 7375 6c74 0a20 2066 6169 6c65 645f  result.  failed_
│ │ │ +001babe0: 7768 656e 3a0a 2020 2d20 6d6f 756e 745f  when:.  - mount_
│ │ │ +001babf0: 7265 7375 6c74 2069 7320 6661 696c 6564  result is failed
│ │ │ +001bac00: 0a20 202d 2027 2727 7461 7267 6574 2069  .  - '''target i
│ │ │ +001bac10: 7320 6275 7379 2727 206e 6f74 2069 6e20  s busy'' not in 
│ │ │ +001bac20: 286d 6f75 6e74 5f72 6573 756c 742e 6d73  (mount_result.ms
│ │ │ +001bac30: 6720 7c20 6465 6661 756c 7428 2727 2727  g | default(''''
│ │ │ +001bac40: 2929 270a 2020 2d20 2727 2761 6c72 6561  ))'.  - '''alrea
│ │ │ +001bac50: 6479 206d 6f75 6e74 6564 2727 206e 6f74  dy mounted'' not
│ │ │ +001bac60: 2069 6e20 286d 6f75 6e74 5f72 6573 756c   in (mount_resul
│ │ │ +001bac70: 742e 6d73 6720 7c20 6465 6661 756c 7428  t.msg | default(
│ │ │ +001bac80: 2727 2727 2929 270a 2020 7768 656e 3a0a  ''''))'.  when:.
│ │ │ +001bac90: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ +001baca0: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +001bacb0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001bacc0: 6e64 2022 7270 6d2d 6f73 7472 6565 2220  nd "rpm-ostree" 
│ │ │ +001bacd0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001bace0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001bacf0: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ +001bad00: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001bad10: 6765 7320 616e 6420 6e6f 7420 226f 7065  ges and not "ope
│ │ │ +001bad20: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ +001bad30: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001bad40: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001bad50: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ +001bad60: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ +001bad70: 6e65 2029 2061 6e64 206e 6f74 2028 2061  ne ) and not ( a
│ │ │ +001bad80: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ +001bad90: 6174 696f 6e5f 7479 7065 2069 6e0a 2020  ation_type in.  
│ │ │ +001bada0: 2020 5b22 646f 636b 6572 222c 2022 6c78    ["docker", "lx
│ │ │ +001badb0: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ +001badc0: 6f64 6d61 6e22 2c20 2263 6f6e 7461 696e  odman", "contain
│ │ │ +001badd0: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ +001bade0: 7661 722f 6c6f 6722 2069 6e20 616e 7369  var/log" in ansi
│ │ │ +001badf0: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ +001bae00: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ +001bae10: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ +001bae20: 6d6f 756e 745f 696e 666f 2069 7320 6465  mount_info is de
│ │ │ +001bae30: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ +001bae40: 655f 6e61 6d65 2e73 7464 6f75 7420 6973  e_name.stdout is
│ │ │ +001bae50: 2064 6566 696e 6564 2061 6e64 2028 6465   defined and (de
│ │ │ +001bae60: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001bae70: 207c 206c 656e 6774 6820 2667 743b 2030   | length > 0
│ │ │ +001bae80: 2929 206f 7220 2822 2d2d 6673 7461 6222  )) or ("--fstab"
│ │ │ +001bae90: 0a20 2020 207c 206c 656e 6774 6820 3d3d  .    | length ==
│ │ │ +001baea0: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ +001baeb0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001baec0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001baed0: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ +001baee0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +001baef0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001baf00: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ +001baf10: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ +001baf20: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001baf30: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ +001baf40: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +001baf50: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ +001baf60: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001baf70: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ +001baf80: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ +001baf90: 745f 6f70 7469 6f6e 5f76 6172 5f6c 6f67  t_option_var_log
│ │ │ +001bafa0: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ +001bafb0: 6562 6f6f 745f 6e65 6564 6564 0a3c 2f63  eboot_needed.
│ │ │ +001bafd0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +001bb070: 6564 6961 7469 6f6e 2053 6865 6c6c 2073 ediation Shell s │ │ │ +001bb080: 6372 6970 7420 e287 b23c 2f61 3e3c 6272 cript ...
# R
│ │ │ +001bb140: 656d 6564 6961 7469 6f6e 2069 7320 6170  emediation is ap
│ │ │ +001bb150: 706c 6963 6162 6c65 206f 6e6c 7920 696e  plicable only in
│ │ │ +001bb160: 2063 6572 7461 696e 2070 6c61 7466 6f72   certain platfor
│ │ │ +001bb170: 6d73 0a69 6620 2820 2120 2820 7b20 7270  ms.if ( ! ( { rp
│ │ │ +001bb180: 6d20 2d2d 7175 6965 7420 2d71 206b 6572  m --quiet -q ker
│ │ │ +001bb190: 6e65 6c20 3b7d 2026 616d 703b 2661 6d70  nel ;} &&
│ │ │ +001bb1a0: 3b20 7b20 7270 6d20 2d2d 7175 6965 7420  ; { rpm --quiet 
│ │ │ +001bb1b0: 2d71 2072 706d 2d6f 7374 7265 6520 3b7d  -q rpm-ostree ;}
│ │ │ +001bb1c0: 2026 616d 703b 2661 6d70 3b20 7b20 7270   && { rp
│ │ │ +001bb1d0: 6d20 2d2d 7175 6965 7420 2d71 2062 6f6f  m --quiet -q boo
│ │ │ +001bb1e0: 7463 203b 7d20 2661 6d70 3b26 616d 703b  tc ;} &&
│ │ │ +001bb1f0: 207b 2021 2072 706d 202d 2d71 7569 6574   { ! rpm --quiet
│ │ │ +001bb200: 202d 7120 6f70 656e 7368 6966 742d 6b75   -q openshift-ku
│ │ │ +001bb210: 6265 6c65 7420 3b7d 2026 616d 703b 2661  belet ;} &&a
│ │ │ +001bb220: 6d70 3b20 285b 202d 6620 2f72 756e 2f6f  mp; ([ -f /run/o
│ │ │ +001bb230: 7374 7265 652d 626f 6f74 6564 205d 207c  stree-booted ] |
│ │ │ +001bb240: 7c20 5b20 2d4c 202f 6f73 7472 6565 205d  | [ -L /ostree ]
│ │ │ +001bb250: 2920 2920 2661 6d70 3b26 616d 703b 2021  ) ) && !
│ │ │ +001bb260: 2028 205b 202d 6620 2f2e 646f 636b 6572   ( [ -f /.docker
│ │ │ +001bb270: 656e 7620 5d20 7c7c 205b 202d 6620 2f72  env ] || [ -f /r
│ │ │ +001bb280: 756e 2f2e 636f 6e74 6169 6e65 7265 6e76  un/.containerenv
│ │ │ +001bb290: 205d 2029 2029 2026 616d 703b 2661 6d70   ] ) ) &&
│ │ │ +001bb2a0: 3b20 7b20 2820 6669 6e64 6d6e 7420 2d2d  ; { ( findmnt --
│ │ │ +001bb2b0: 6b65 726e 656c 2022 2f76 6172 2f6c 6f67  kernel "/var/log
│ │ │ +001bb2c0: 2220 2667 743b 202f 6465 762f 6e75 6c6c  " > /dev/null
│ │ │ +001bb2d0: 207c 7c20 6669 6e64 6d6e 7420 2d2d 6673   || findmnt --fs
│ │ │ +001bb2e0: 7461 6220 222f 7661 722f 6c6f 6722 2026  tab "/var/log" &
│ │ │ +001bb2f0: 6774 3b20 2f64 6576 2f6e 756c 6c20 293b  gt; /dev/null );
│ │ │ +001bb300: 207d 3b20 7468 656e 0a0a 6675 6e63 7469   }; then..functi
│ │ │ +001bb310: 6f6e 2070 6572 666f 726d 5f72 656d 6564  on perform_remed
│ │ │ +001bb320: 6961 7469 6f6e 207b 0a0a 2020 2020 0a20  iation {..    . 
│ │ │ +001bb330: 2020 2020 2020 2023 2074 6865 206d 6f75         # the mou
│ │ │ +001bb340: 6e74 2070 6f69 6e74 202f 7661 722f 6c6f  nt point /var/lo
│ │ │ +001bb350: 6720 6861 7320 746f 2062 6520 6465 6669  g has to be defi
│ │ │ +001bb360: 6e65 6420 696e 202f 6574 632f 6673 7461  ned in /etc/fsta
│ │ │ +001bb370: 620a 2020 2020 2020 2020 2320 6265 666f  b.        # befo
│ │ │ +001bb380: 7265 2074 6869 7320 7265 6d65 6469 6174  re this remediat
│ │ │ +001bb390: 696f 6e20 6361 6e20 6265 2065 7865 6375  ion can be execu
│ │ │ +001bb3a0: 7465 642e 2049 6e20 6361 7365 2069 7420  ted. In case it 
│ │ │ +001bb3b0: 6973 206e 6f74 2064 6566 696e 6564 2c20  is not defined, 
│ │ │ +001bb3c0: 7468 650a 2020 2020 2020 2020 2320 7265  the.        # re
│ │ │ +001bb3d0: 6d65 6469 6174 696f 6e20 6162 6f72 7473  mediation aborts
│ │ │ +001bb3e0: 2061 6e64 206e 6f20 6368 616e 6765 7320   and no changes 
│ │ │ +001bb3f0: 7265 6761 7264 696e 6720 7468 6520 6d6f  regarding the mo
│ │ │ +001bb400: 756e 7420 706f 696e 7420 6172 6520 646f  unt point are do
│ │ │ +001bb410: 6e65 2e0a 2020 2020 2020 2020 6d6f 756e  ne..        moun
│ │ │ +001bb420: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001bb430: 6765 7870 3d22 2428 7072 696e 7466 2022  gexp="$(printf "
│ │ │ +001bb440: 5e5b 5b3a 7370 6163 653a 5d5d 2a5b 5e23  ^[[:space:]]*[^#
│ │ │ +001bb450: 5d2e 2a5b 5b3a 7370 6163 653a 5d5d 2573  ].*[[:space:]]%s
│ │ │ +001bb460: 5b5b 3a73 7061 6365 3a5d 5d22 2022 2f76  [[:space:]]" "/v
│ │ │ +001bb470: 6172 2f6c 6f67 2229 220a 0a20 2020 2067  ar/log")"..    g
│ │ │ +001bb480: 7265 7020 2224 6d6f 756e 745f 706f 696e  rep "$mount_poin
│ │ │ +001bb490: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ +001bb4a0: 2d71 202f 6574 632f 6673 7461 6220 5c0a  -q /etc/fstab \.
│ │ │ +001bb4b0: 2020 2020 2020 2020 7c7c 207b 2065 6368          || { ech
│ │ │ +001bb4c0: 6f20 2254 6865 206d 6f75 6e74 2070 6f69  o "The mount poi
│ │ │ +001bb4d0: 6e74 2027 2f76 6172 2f6c 6f67 2720 6973  nt '/var/log' is
│ │ │ +001bb4e0: 206e 6f74 2065 7665 6e20 696e 202f 6574   not even in /et
│ │ │ +001bb4f0: 632f 6673 7461 622c 2073 6f20 7765 2063  c/fstab, so we c
│ │ │ +001bb500: 616e 2774 2073 6574 2075 7020 6d6f 756e  an't set up moun
│ │ │ +001bb510: 7420 6f70 7469 6f6e 7322 2026 6774 3b26  t options" >&
│ │ │ +001bb520: 616d 703b 323b 0a20 2020 2020 2020 2020  amp;2;.         
│ │ │ +001bb530: 2020 2020 2020 2065 6368 6f20 224e 6f74         echo "Not
│ │ │ +001bb540: 2072 656d 6564 6961 7469 6e67 2c20 6265   remediating, be
│ │ │ +001bb550: 6361 7573 6520 7468 6572 6520 6973 206e  cause there is n
│ │ │ +001bb560: 6f20 7265 636f 7264 206f 6620 2f76 6172  o record of /var
│ │ │ +001bb570: 2f6c 6f67 2069 6e20 2f65 7463 2f66 7374  /log in /etc/fst
│ │ │ +001bb580: 6162 2220 2667 743b 2661 6d70 3b32 3b20  ab" >&2; 
│ │ │ +001bb590: 7265 7475 726e 2031 3b20 7d0a 2020 2020  return 1; }.    
│ │ │ +001bb5a0: 0a0a 0a20 2020 206d 6f75 6e74 5f70 6f69  ...    mount_poi
│ │ │ +001bb5b0: 6e74 5f6d 6174 6368 5f72 6567 6578 703d  nt_match_regexp=
│ │ │ +001bb5c0: 2224 2870 7269 6e74 6620 225e 5b5b 3a73  "$(printf "^[[:s
│ │ │ +001bb5d0: 7061 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b  pace:]]*[^#].*[[
│ │ │ +001bb5e0: 3a73 7061 6365 3a5d 5d25 735b 5b3a 7370  :space:]]%s[[:sp
│ │ │ +001bb5f0: 6163 653a 5d5d 2220 2f76 6172 2f6c 6f67  ace:]]" /var/log
│ │ │ +001bb600: 2922 0a0a 2020 2020 2320 4966 2074 6865  )"..    # If the
│ │ │ +001bb610: 206d 6f75 6e74 2070 6f69 6e74 2069 7320   mount point is 
│ │ │ +001bb620: 6e6f 7420 696e 202f 6574 632f 6673 7461  not in /etc/fsta
│ │ │ +001bb630: 622c 2067 6574 2070 7265 7669 6f75 7320  b, get previous 
│ │ │ +001bb640: 6d6f 756e 7420 6f70 7469 6f6e 7320 6672  mount options fr
│ │ │ +001bb650: 6f6d 202f 6574 632f 6d74 6162 0a20 2020  om /etc/mtab.   
│ │ │ +001bb660: 2069 6620 2120 6772 6570 202d 7120 2224   if ! grep -q "$
│ │ │ +001bb670: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001bb680: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ +001bb690: 7374 6162 3b20 7468 656e 0a20 2020 2020  stab; then.     
│ │ │ +001bb6a0: 2020 2023 2072 756e 7469 6d65 206f 7074     # runtime opt
│ │ │ +001bb6b0: 7320 7769 7468 6f75 7420 736f 6d65 2061  s without some a
│ │ │ +001bb6c0: 7574 6f6d 6174 6963 206b 6572 6e65 6c2f  utomatic kernel/
│ │ │ +001bb6d0: 7573 6572 7370 6163 652d 6164 6465 6420  userspace-added 
│ │ │ +001bb6e0: 6465 6661 756c 7473 0a20 2020 2020 2020  defaults.       
│ │ │ +001bb6f0: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ +001bb700: 6f70 7473 3d24 2867 7265 7020 2224 6d6f  opts=$(grep "$mo
│ │ │ +001bb710: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001bb720: 7265 6765 7870 2220 2f65 7463 2f6d 7461  regexp" /etc/mta
│ │ │ +001bb730: 6220 7c20 6865 6164 202d 3120 7c20 2061  b | head -1 |  a
│ │ │ +001bb740: 776b 2027 7b70 7269 6e74 2024 347d 2720  wk '{print $4}' 
│ │ │ +001bb750: 5c0a 2020 2020 2020 2020 2020 2020 2020  \.              
│ │ │ +001bb760: 2020 2020 2020 7c20 7365 6420 2d45 2022        | sed -E "
│ │ │ +001bb770: 732f 2872 777c 6465 6661 756c 7473 7c73  s/(rw|defaults|s
│ │ │ +001bb780: 6563 6c61 6265 6c7c 6e6f 7375 6964 2928  eclabel|nosuid)(
│ │ │ +001bb790: 2c7c 2429 2f2f 673b 732f 2c24 2f2f 2229  ,|$)//g;s/,$//")
│ │ │ +001bb7a0: 0a20 2020 2020 2020 205b 2022 2470 7265  .        [ "$pre
│ │ │ +001bb7b0: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001bb7c0: 2220 5d20 2661 6d70 3b26 616d 703b 2070  " ] && p
│ │ │ +001bb7d0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001bb7e0: 7473 2b3d 222c 220a 2020 2020 2020 2020  ts+=",".        
│ │ │ +001bb7f0: 2320 496e 2069 736f 3936 3630 2066 696c  # In iso9660 fil
│ │ │ +001bb800: 6573 7973 7465 6d73 206d 7461 6220 636f  esystems mtab co
│ │ │ +001bb810: 756c 6420 6465 7363 7269 6265 2061 2022  uld describe a "
│ │ │ +001bb820: 626c 6f63 6b73 697a 6522 2076 616c 7565  blocksize" value
│ │ │ +001bb830: 2c20 7468 6973 2073 686f 756c 6420 6265  , this should be
│ │ │ +001bb840: 2072 6566 6c65 6374 6564 2069 6e0a 2020   reflected in.  
│ │ │ +001bb850: 2020 2020 2020 2320 6673 7461 6220 6173        # fstab as
│ │ │ +001bb860: 2022 626c 6f63 6b22 2e20 2054 6865 206e   "block".  The n
│ │ │ +001bb870: 6578 7420 7661 7269 6162 6c65 2069 7320  ext variable is 
│ │ │ +001bb880: 746f 2073 6174 6973 6679 2073 6865 6c6c  to satisfy shell
│ │ │ +001bb890: 6368 6563 6b20 5343 3230 3530 2e0a 2020  check SC2050..  
│ │ │ +001bb8a0: 2020 2020 2020 6673 5f74 7970 653d 2222        fs_type=""
│ │ │ +001bb8b0: 0a20 2020 2020 2020 2069 6620 5b20 2022  .        if [  "
│ │ │ +001bb8c0: 2466 735f 7479 7065 2220 3d3d 2022 6973  $fs_type" == "is
│ │ │ +001bb8d0: 6f39 3636 3022 205d 203b 2074 6865 6e0a  o9660" ] ; then.
│ │ │ +001bb8e0: 2020 2020 2020 2020 2020 2020 7072 6576              prev
│ │ │ +001bb8f0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d  ious_mount_opts=
│ │ │ +001bb900: 2428 7365 6420 2773 2f62 6c6f 636b 7369  $(sed 's/blocksi
│ │ │ +001bb910: 7a65 3d2f 626c 6f63 6b3d 2f27 2026 6c74  ze=/block=/' <
│ │ │ +001bb920: 3b26 6c74 3b26 6c74 3b20 2224 7072 6576  ;<< "$prev
│ │ │ +001bb930: 696f 7573 5f6d 6f75 6e74 5f6f 7074 7322  ious_mount_opts"
│ │ │ +001bb940: 290a 2020 2020 2020 2020 6669 0a20 2020  ).        fi.   
│ │ │ +001bb950: 2020 2020 2065 6368 6f20 2220 2f76 6172       echo " /var
│ │ │ +001bb960: 2f6c 6f67 2020 6465 6661 756c 7473 2c24  /log  defaults,$
│ │ │ +001bb970: 7b70 7265 7669 6f75 735f 6d6f 756e 745f  {previous_mount_
│ │ │ +001bb980: 6f70 7473 7d6e 6f73 7569 6420 3020 3022  opts}nosuid 0 0"
│ │ │ +001bb990: 2026 6774 3b26 6774 3b20 2f65 7463 2f66   >> /etc/f
│ │ │ +001bb9a0: 7374 6162 0a20 2020 2023 2049 6620 7468  stab.    # If th
│ │ │ +001bb9b0: 6520 6d6f 756e 745f 6f70 7420 6f70 7469  e mount_opt opti
│ │ │ +001bb9c0: 6f6e 2069 7320 6e6f 7420 616c 7265 6164  on is not alread
│ │ │ +001bb9d0: 7920 696e 2074 6865 206d 6f75 6e74 2070  y in the mount p
│ │ │ +001bb9e0: 6f69 6e74 2773 202f 6574 632f 6673 7461  oint's /etc/fsta
│ │ │ +001bb9f0: 6220 656e 7472 792c 2061 6464 2069 740a  b entry, add it.
│ │ │ +001bba00: 2020 2020 656c 6966 2021 2067 7265 7020      elif ! grep 
│ │ │ +001bba10: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ +001bba20: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ +001bba30: 2f66 7374 6162 207c 2067 7265 7020 2d71  /fstab | grep -q
│ │ │ +001bba40: 2022 6e6f 7375 6964 223b 2074 6865 6e0a   "nosuid"; then.
│ │ │ +001bba50: 2020 2020 2020 2020 7072 6576 696f 7573          previous
│ │ │ +001bba60: 5f6d 6f75 6e74 5f6f 7074 733d 2428 6772  _mount_opts=$(gr
│ │ │ +001bba70: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ +001bba80: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ +001bba90: 6574 632f 6673 7461 6220 7c20 6177 6b20  etc/fstab | awk 
│ │ │ +001bbaa0: 277b 7072 696e 7420 2434 7d27 290a 2020  '{print $4}').  
│ │ │ +001bbab0: 2020 2020 2020 7365 6420 2d69 2022 737c        sed -i "s|
│ │ │ +001bbac0: 5c28 247b 6d6f 756e 745f 706f 696e 745f  \(${mount_point_
│ │ │ +001bbad0: 6d61 7463 685f 7265 6765 7870 7d2e 2a24  match_regexp}.*$
│ │ │ +001bbae0: 7b70 7265 7669 6f75 735f 6d6f 756e 745f  {previous_mount_
│ │ │ +001bbaf0: 6f70 7473 7d5c 297c 5c31 2c6e 6f73 7569  opts}\)|\1,nosui
│ │ │ +001bbb00: 647c 2220 2f65 7463 2f66 7374 6162 0a20  d|" /etc/fstab. 
│ │ │ +001bbb10: 2020 2066 690a 0a0a 2020 2020 6966 206d     fi...    if m
│ │ │ +001bbb20: 6b64 6972 202d 7020 222f 7661 722f 6c6f  kdir -p "/var/lo
│ │ │ +001bbb30: 6722 3b20 7468 656e 0a20 2020 2020 2020  g"; then.       
│ │ │ +001bbb40: 2069 6620 6d6f 756e 7470 6f69 6e74 202d   if mountpoint -
│ │ │ +001bbb50: 7120 222f 7661 722f 6c6f 6722 3b20 7468  q "/var/log"; th
│ │ │ +001bbb60: 656e 0a20 2020 2020 2020 2020 2020 206d  en.            m
│ │ │ +001bbb70: 6f75 6e74 202d 6f20 7265 6d6f 756e 7420  ount -o remount 
│ │ │ +001bbb80: 2d2d 7461 7267 6574 2022 2f76 6172 2f6c  --target "/var/l
│ │ │ +001bbb90: 6f67 220a 2020 2020 2020 2020 6669 0a20  og".        fi. 
│ │ │ +001bbba0: 2020 2066 690a 7d0a 0a70 6572 666f 726d     fi.}..perform
│ │ │ +001bbbb0: 5f72 656d 6564 6961 7469 6f6e 0a0a 656c  _remediation..el
│ │ │ +001bbbc0: 7365 0a20 2020 2026 6774 3b26 616d 703b  se.    >&
│ │ │ +001bbbd0: 3220 6563 686f 2027 5265 6d65 6469 6174  2 echo 'Remediat
│ │ │ +001bbbe0: 696f 6e20 6973 206e 6f74 2061 7070 6c69  ion is not appli
│ │ │ +001bbbf0: 6361 626c 652c 206e 6f74 6869 6e67 2077  cable, nothing w
│ │ │ +001bbc00: 6173 2064 6f6e 6527 0a66 690a 3c2f 636f  as done'.fi.
< │ │ │ +001bbc20: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +001bbc30: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +001bbc40: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +001bbc50: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +001bbc60: 6434 3831 2220 7461 6269 6e64 6578 3d22 d481" tabindex=" │ │ │ +001bbc70: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +001bbc80: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +001bbc90: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +001bbca0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +001bbcb0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +001bbcc0: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ +001bbcd0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +001bbce0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
Reboo │ │ │ +001bb110: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +001bb120: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
low< │ │ │ +001bbd80: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr> │ │ │ +001bbdd0: 3c74 723e 3c74 683e 5374 7261 7465 6779
.pa
│ │ │ +001bbe10: 7274 202f 7661 722f 6c6f 6720 2d2d 6d6f  rt /var/log --mo
│ │ │ +001bbe20: 756e 746f 7074 696f 6e73 3d22 6e6f 7375  untoptions="nosu
│ │ │ +001bbe30: 6964 220a 3c2f 636f 6465 3e3c 2f70 7265  id".
< │ │ │ 001bbe60: 2f74 6162 6c65 3e3c 2f74 643e 3c2f 7472 /table>Remedi │ │ │ -001bca30: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ -001bca40: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Co │ │ │ +001bbd60: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +001bbd90: 6e3a 3c2f 7468 3e3c 7464 3e68 6967 683c n:high< │ │ │ +001bbda0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +001bbde0: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +001bbdf0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Comp │ │ │ -001bcad0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -001bcae0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -001bcb00: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ -001bcb20: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001bcb30: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -001bcb50: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -001bcb70: 3c70 7265 3e3c 636f 6465 3e0a 7061 7274
.part
│ │ │ -001bcb80: 202f 7661 7220 2d2d 6d6f 756e 746f 7074   /var --mountopt
│ │ │ -001bcb90: 696f 6e73 3d22 6e6f 6465 7622 0a3c 2f63  ions="nodev".
│ │ │ -001bcbb0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -001bcc50: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -001bcc60: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -001bcc70: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -001bcd10: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr> │ │ │ -001bcd60: 3c74 723e 3c74 683e 5374 7261 7465 6779

│ │ │ -001bcda0: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ -001bcdb0: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ -001bcdc0: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ -001bcdd0: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ -001bcde0: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ -001bcdf0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001bce00: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001bce10: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ -001bce20: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -001bce30: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001bce40: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ -001bce50: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ -001bce60: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001bce70: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ -001bce80: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001bce90: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001bcea0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001bceb0: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001bcec0: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001bced0: 745f 6f70 7469 6f6e 5f76 6172 5f6e 6f64  t_option_var_nod
│ │ │ -001bcee0: 6576 0a20 202d 206e 6f5f 7265 626f 6f74  ev.  - no_reboot
│ │ │ -001bcef0: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ -001bcf00: 2027 4164 6420 6e6f 6465 7620 4f70 7469   'Add nodev Opti
│ │ │ -001bcf10: 6f6e 2074 6f20 2f76 6172 3a20 4368 6563  on to /var: Chec
│ │ │ -001bcf20: 6b20 696e 666f 726d 6174 696f 6e20 6173  k information as
│ │ │ -001bcf30: 736f 6369 6174 6564 2074 6f20 6d6f 756e  sociated to moun
│ │ │ -001bcf40: 7470 6f69 6e74 270a 2020 616e 7369 626c  tpoint'.  ansibl
│ │ │ -001bcf50: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ -001bcf60: 643a 2066 696e 646d 6e74 202d 2d66 7374  d: findmnt --fst
│ │ │ -001bcf70: 6162 2027 2f76 6172 270a 2020 7265 6769  ab '/var'.  regi
│ │ │ -001bcf80: 7374 6572 3a20 6465 7669 6365 5f6e 616d  ster: device_nam
│ │ │ -001bcf90: 650a 2020 6661 696c 6564 5f77 6865 6e3a  e.  failed_when:
│ │ │ -001bcfa0: 2064 6576 6963 655f 6e61 6d65 2e72 6320   device_name.rc 
│ │ │ -001bcfb0: 2667 743b 2031 0a20 2063 6861 6e67 6564  > 1.  changed
│ │ │ -001bcfc0: 5f77 6865 6e3a 2066 616c 7365 0a20 2063  _when: false.  c
│ │ │ -001bcfd0: 6865 636b 5f6d 6f64 653a 2066 616c 7365  heck_mode: false
│ │ │ -001bcfe0: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ -001bcff0: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ -001bd000: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001bd010: 6163 6b61 6765 7320 616e 6420 2272 706d  ackages and "rpm
│ │ │ -001bd020: 2d6f 7374 7265 6522 2069 6e20 616e 7369  -ostree" in ansi
│ │ │ -001bd030: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001bd040: 6573 0a20 2020 2061 6e64 2022 626f 6f74  es.    and "boot
│ │ │ -001bd050: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ -001bd060: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001bd070: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ -001bd080: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ -001bd090: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001bd0a0: 6573 0a20 2020 2061 6e64 2022 6f73 7472  es.    and "ostr
│ │ │ -001bd0b0: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ -001bd0c0: 726f 635f 636d 646c 696e 6520 2920 616e  roc_cmdline ) an
│ │ │ -001bd0d0: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ -001bd0e0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ -001bd0f0: 7970 6520 696e 0a20 2020 205b 2264 6f63  ype in.    ["doc
│ │ │ -001bd100: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ -001bd110: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ -001bd120: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ -001bd130: 290a 2020 2d20 2722 2f76 6172 2220 696e  ).  - '"/var" in
│ │ │ -001bd140: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ -001bd150: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ -001bd160: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ -001bd170: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -001bd180: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ -001bd190: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001bd1a0: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ -001bd1b0: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ -001bd1c0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001bd1d0: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ -001bd1e0: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ -001bd1f0: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ -001bd200: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ -001bd210: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ -001bd220: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ -001bd230: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001bd240: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -001bd250: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ -001bd260: 7074 696f 6e5f 7661 725f 6e6f 6465 760a  ption_var_nodev.
│ │ │ -001bd270: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001bd280: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ -001bd290: 6464 206e 6f64 6576 204f 7074 696f 6e20  dd nodev Option 
│ │ │ -001bd2a0: 746f 202f 7661 723a 2043 7265 6174 6520  to /var: Create 
│ │ │ -001bd2b0: 6d6f 756e 745f 696e 666f 2064 6963 7469  mount_info dicti
│ │ │ -001bd2c0: 6f6e 6172 7920 7661 7269 6162 6c65 270a  onary variable'.
│ │ │ -001bd2d0: 2020 7365 745f 6661 6374 3a0a 2020 2020    set_fact:.    
│ │ │ -001bd2e0: 6d6f 756e 745f 696e 666f 3a20 277b 7b20  mount_info: '{{ 
│ │ │ -001bd2f0: 6d6f 756e 745f 696e 666f 7c64 6566 6175  mount_info|defau
│ │ │ -001bd300: 6c74 287b 7d29 7c63 6f6d 6269 6e65 287b  lt({})|combine({
│ │ │ -001bd310: 6974 656d 2e30 3a20 6974 656d 2e31 7d29  item.0: item.1})
│ │ │ -001bd320: 207d 7d27 0a20 2077 6974 685f 746f 6765   }}'.  with_toge
│ │ │ -001bd330: 7468 6572 3a0a 2020 2d20 277b 7b20 6465  ther:.  - '{{ de
│ │ │ -001bd340: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001bd350: 5f6c 696e 6573 5b30 5d2e 7370 6c69 7428  _lines[0].split(
│ │ │ -001bd360: 2920 7c20 6d61 7028 2727 6c6f 7765 7227  ) | map(''lower'
│ │ │ -001bd370: 2729 207c 206c 6973 7420 7d7d 270a 2020  ') | list }}'.  
│ │ │ -001bd380: 2d20 277b 7b20 6465 7669 6365 5f6e 616d  - '{{ device_nam
│ │ │ -001bd390: 652e 7374 646f 7574 5f6c 696e 6573 5b31  e.stdout_lines[1
│ │ │ -001bd3a0: 5d2e 7370 6c69 7428 2920 7c20 6c69 7374  ].split() | list
│ │ │ -001bd3b0: 207d 7d27 0a20 2077 6865 6e3a 0a20 202d   }}'.  when:.  -
│ │ │ -001bd3c0: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ -001bd3d0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001bd3e0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001bd3f0: 2272 706d 2d6f 7374 7265 6522 2069 6e20  "rpm-ostree" in 
│ │ │ -001bd400: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001bd410: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001bd420: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -001bd430: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001bd440: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ -001bd450: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ -001bd460: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001bd470: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001bd480: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001bd490: 6c65 5f70 726f 635f 636d 646c 696e 6520  le_proc_cmdline 
│ │ │ -001bd4a0: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ -001bd4b0: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ -001bd4c0: 6f6e 5f74 7970 6520 696e 0a20 2020 205b  on_type in.    [
│ │ │ -001bd4d0: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -001bd4e0: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -001bd4f0: 616e 222c 2022 636f 6e74 6169 6e65 7222  an", "container"
│ │ │ -001bd500: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ -001bd510: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ -001bd520: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ -001bd530: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ -001bd540: 6973 7427 0a20 202d 2064 6576 6963 655f  ist'.  - device_
│ │ │ -001bd550: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ -001bd560: 6566 696e 6564 2061 6e64 2064 6576 6963  efined and devic
│ │ │ -001bd570: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ -001bd580: 6e65 7320 6973 2064 6566 696e 6564 0a20  nes is defined. 
│ │ │ -001bd590: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ -001bd5a0: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ -001bd5b0: 2667 743b 2030 290a 2020 7461 6773 3a0a  > 0).  tags:.
│ │ │ -001bd5c0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001bd5d0: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ -001bd5e0: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ -001bd5f0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001bd600: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ -001bd610: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ -001bd620: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001bd630: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ -001bd640: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ -001bd650: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -001bd660: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -001bd670: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -001bd680: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -001bd690: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001bd6a0: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ -001bd6b0: 5f6e 6f64 6576 0a20 202d 206e 6f5f 7265  _nodev.  - no_re
│ │ │ -001bd6c0: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -001bd6d0: 616d 653a 2027 4164 6420 6e6f 6465 7620  ame: 'Add nodev 
│ │ │ -001bd6e0: 4f70 7469 6f6e 2074 6f20 2f76 6172 3a20  Option to /var: 
│ │ │ -001bd6f0: 4966 202f 7661 7220 6e6f 7420 6d6f 756e  If /var not moun
│ │ │ -001bd700: 7465 642c 2063 7261 6674 206d 6f75 6e74  ted, craft mount
│ │ │ -001bd710: 5f69 6e66 6f20 6d61 6e75 616c 6c79 270a  _info manually'.
│ │ │ -001bd720: 2020 7365 745f 6661 6374 3a0a 2020 2020    set_fact:.    
│ │ │ -001bd730: 6d6f 756e 745f 696e 666f 3a20 277b 7b20  mount_info: '{{ 
│ │ │ -001bd740: 6d6f 756e 745f 696e 666f 7c64 6566 6175  mount_info|defau
│ │ │ -001bd750: 6c74 287b 7d29 7c63 6f6d 6269 6e65 287b  lt({})|combine({
│ │ │ -001bd760: 6974 656d 2e30 3a20 6974 656d 2e31 7d29  item.0: item.1})
│ │ │ -001bd770: 207d 7d27 0a20 2077 6974 685f 746f 6765   }}'.  with_toge
│ │ │ -001bd780: 7468 6572 3a0a 2020 2d20 2d20 7461 7267  ther:.  - - targ
│ │ │ -001bd790: 6574 0a20 2020 202d 2073 6f75 7263 650a  et.    - source.
│ │ │ -001bd7a0: 2020 2020 2d20 6673 7479 7065 0a20 2020      - fstype.   
│ │ │ -001bd7b0: 202d 206f 7074 696f 6e73 0a20 202d 202d   - options.  - -
│ │ │ -001bd7c0: 202f 7661 720a 2020 2020 2d20 2727 0a20   /var.    - ''. 
│ │ │ -001bd7d0: 2020 202d 2027 270a 2020 2020 2d20 6465     - ''.    - de
│ │ │ -001bd7e0: 6661 756c 7473 0a20 2077 6865 6e3a 0a20  faults.  when:. 
│ │ │ -001bd7f0: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ -001bd800: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -001bd810: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001bd820: 6420 2272 706d 2d6f 7374 7265 6522 2069  d "rpm-ostree" i
│ │ │ -001bd830: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001bd840: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001bd850: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ -001bd860: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001bd870: 6573 2061 6e64 206e 6f74 2022 6f70 656e  es and not "open
│ │ │ -001bd880: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ -001bd890: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001bd8a0: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001bd8b0: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ -001bd8c0: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ -001bd8d0: 6520 2920 616e 6420 6e6f 7420 2820 616e  e ) and not ( an
│ │ │ -001bd8e0: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ -001bd8f0: 7469 6f6e 5f74 7970 6520 696e 0a20 2020  tion_type in.   
│ │ │ -001bd900: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ -001bd910: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ -001bd920: 646d 616e 222c 2022 636f 6e74 6169 6e65  dman", "containe
│ │ │ -001bd930: 7222 5d20 2920 290a 2020 2d20 2722 2f76  r"] ) ).  - '"/v
│ │ │ -001bd940: 6172 2220 696e 2061 6e73 6962 6c65 5f6d  ar" in ansible_m
│ │ │ -001bd950: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ -001bd960: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ -001bd970: 206c 6973 7427 0a20 202d 2028 222d 2d66   list'.  - ("--f
│ │ │ -001bd980: 7374 6162 2220 7c20 6c65 6e67 7468 203d  stab" | length =
│ │ │ -001bd990: 3d20 3029 0a20 202d 2064 6576 6963 655f  = 0).  - device_
│ │ │ -001bd9a0: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ -001bd9b0: 6566 696e 6564 2061 6e64 2064 6576 6963  efined and devic
│ │ │ -001bd9c0: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ -001bd9d0: 6e65 7320 6973 2064 6566 696e 6564 0a20  nes is defined. 
│ │ │ -001bd9e0: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ -001bd9f0: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ -001bda00: 3d3d 2030 290a 2020 7461 6773 3a0a 2020  == 0).  tags:.  
│ │ │ -001bda10: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001bda20: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ -001bda30: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ -001bda40: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -001bda50: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -001bda60: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ -001bda70: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -001bda80: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ -001bda90: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ -001bdaa0: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -001bdab0: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -001bdac0: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -001bdad0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -001bdae0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -001bdaf0: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6e  unt_option_var_n
│ │ │ -001bdb00: 6f64 6576 0a20 202d 206e 6f5f 7265 626f  odev.  - no_rebo
│ │ │ -001bdb10: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -001bdb20: 653a 2027 4164 6420 6e6f 6465 7620 4f70  e: 'Add nodev Op
│ │ │ -001bdb30: 7469 6f6e 2074 6f20 2f76 6172 3a20 4d61  tion to /var: Ma
│ │ │ -001bdb40: 6b65 2073 7572 6520 6e6f 6465 7620 6f70  ke sure nodev op
│ │ │ -001bdb50: 7469 6f6e 2069 7320 7061 7274 206f 6620  tion is part of 
│ │ │ -001bdb60: 7468 6520 746f 202f 7661 7220 6f70 7469  the to /var opti
│ │ │ -001bdb70: 6f6e 7327 0a20 2073 6574 5f66 6163 743a  ons'.  set_fact:
│ │ │ -001bdb80: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ -001bdb90: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f20   '{{ mount_info 
│ │ │ -001bdba0: 7c20 636f 6d62 696e 6528 207b 2727 6f70  | combine( {''op
│ │ │ -001bdbb0: 7469 6f6e 7327 273a 2727 2727 7e28 6d6f  tions'':''''~(mo
│ │ │ -001bdbc0: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ -001bdbd0: 207c 0a20 2020 2020 2064 6566 6175 6c74   |.      default
│ │ │ -001bdbe0: 2827 2727 2729 297e 2827 272c 2727 2069  (''''))~('','' i
│ │ │ -001bdbf0: 6620 286d 6f75 6e74 5f69 6e66 6f2e 6f70  f (mount_info.op
│ │ │ -001bdc00: 7469 6f6e 7320 7c20 6465 6661 756c 7428  tions | default(
│ │ │ -001bdc10: 2727 2727 2929 2065 6c73 6520 2727 2727  '''')) else ''''
│ │ │ -001bdc20: 297e 2727 6e6f 6465 7627 270a 2020 2020  )~''nodev''.    
│ │ │ -001bdc30: 2020 7d29 207d 7d27 0a20 2077 6865 6e3a    }) }}'.  when:
│ │ │ -001bdc40: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ -001bdc50: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -001bdc60: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001bdc70: 616e 6420 2272 706d 2d6f 7374 7265 6522  and "rpm-ostree"
│ │ │ -001bdc80: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001bdc90: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001bdca0: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ -001bdcb0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001bdcc0: 6167 6573 2061 6e64 206e 6f74 2022 6f70  ages and not "op
│ │ │ -001bdcd0: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ -001bdce0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001bdcf0: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001bdd00: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ -001bdd10: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ -001bdd20: 696e 6520 2920 616e 6420 6e6f 7420 2820  ine ) and not ( 
│ │ │ -001bdd30: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ -001bdd40: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20  zation_type in. 
│ │ │ -001bdd50: 2020 205b 2264 6f63 6b65 7222 2c20 226c     ["docker", "l
│ │ │ -001bdd60: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ -001bdd70: 706f 646d 616e 222c 2022 636f 6e74 6169  podman", "contai
│ │ │ -001bdd80: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ -001bdd90: 2f76 6172 2220 696e 2061 6e73 6962 6c65  /var" in ansible
│ │ │ -001bdda0: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ -001bddb0: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ -001bddc0: 207c 206c 6973 7427 0a20 202d 206d 6f75   | list'.  - mou
│ │ │ -001bddd0: 6e74 5f69 6e66 6f20 6973 2064 6566 696e  nt_info is defin
│ │ │ -001bdde0: 6564 2061 6e64 2022 6e6f 6465 7622 206e  ed and "nodev" n
│ │ │ -001bddf0: 6f74 2069 6e20 286d 6f75 6e74 5f69 6e66  ot in (mount_inf
│ │ │ -001bde00: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ -001bde10: 756c 7428 2727 2929 0a20 2074 6167 733a  ult('')).  tags:
│ │ │ -001bde20: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001bde30: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ -001bde40: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ -001bde50: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001bde60: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -001bde70: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ -001bde80: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001bde90: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ -001bdea0: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ -001bdeb0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001bdec0: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -001bded0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -001bdee0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001bdef0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001bdf00: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ -001bdf10: 725f 6e6f 6465 760a 2020 2d20 6e6f 5f72  r_nodev.  - no_r
│ │ │ -001bdf20: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ -001bdf30: 6e61 6d65 3a20 2741 6464 206e 6f64 6576  name: 'Add nodev
│ │ │ -001bdf40: 204f 7074 696f 6e20 746f 202f 7661 723a   Option to /var:
│ │ │ -001bdf50: 2045 6e73 7572 6520 2f76 6172 2069 7320   Ensure /var is 
│ │ │ -001bdf60: 6d6f 756e 7465 6420 7769 7468 206e 6f64  mounted with nod
│ │ │ -001bdf70: 6576 206f 7074 696f 6e27 0a20 2061 6e73  ev option'.  ans
│ │ │ -001bdf80: 6962 6c65 2e70 6f73 6978 2e6d 6f75 6e74  ible.posix.mount
│ │ │ -001bdf90: 3a0a 2020 2020 7061 7468 3a20 2f76 6172  :.    path: /var
│ │ │ -001bdfa0: 0a20 2020 2073 7263 3a20 277b 7b20 6d6f  .    src: '{{ mo
│ │ │ -001bdfb0: 756e 745f 696e 666f 2e73 6f75 7263 6520  unt_info.source 
│ │ │ -001bdfc0: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ -001bdfd0: 7d7d 270a 2020 2020 6f70 7473 3a20 277b  }}'.    opts: '{
│ │ │ -001bdfe0: 7b20 6d6f 756e 745f 696e 666f 2e6f 7074  { mount_info.opt
│ │ │ -001bdff0: 696f 6e73 207c 2064 6566 6175 6c74 2827  ions | default('
│ │ │ -001be000: 2727 2729 207d 7d27 0a20 2020 2073 7461  ''') }}'.    sta
│ │ │ -001be010: 7465 3a20 6d6f 756e 7465 640a 2020 2020  te: mounted.    
│ │ │ -001be020: 6673 7479 7065 3a20 277b 7b20 6d6f 756e  fstype: '{{ moun
│ │ │ -001be030: 745f 696e 666f 2e66 7374 7970 6520 7c20  t_info.fstype | 
│ │ │ -001be040: 6465 6661 756c 7428 2727 2727 2920 7d7d  default('''') }}
│ │ │ -001be050: 270a 2020 7265 6769 7374 6572 3a20 6d6f  '.  register: mo
│ │ │ -001be060: 756e 745f 7265 7375 6c74 0a20 2066 6169  unt_result.  fai
│ │ │ -001be070: 6c65 645f 7768 656e 3a0a 2020 2d20 6d6f  led_when:.  - mo
│ │ │ -001be080: 756e 745f 7265 7375 6c74 2069 7320 6661  unt_result is fa
│ │ │ -001be090: 696c 6564 0a20 202d 2027 2727 7461 7267  iled.  - '''targ
│ │ │ -001be0a0: 6574 2069 7320 6275 7379 2727 206e 6f74  et is busy'' not
│ │ │ -001be0b0: 2069 6e20 286d 6f75 6e74 5f72 6573 756c   in (mount_resul
│ │ │ -001be0c0: 742e 6d73 6720 7c20 6465 6661 756c 7428  t.msg | default(
│ │ │ -001be0d0: 2727 2727 2929 270a 2020 2d20 2727 2761  ''''))'.  - '''a
│ │ │ -001be0e0: 6c72 6561 6479 206d 6f75 6e74 6564 2727  lready mounted''
│ │ │ -001be0f0: 206e 6f74 2069 6e20 286d 6f75 6e74 5f72   not in (mount_r
│ │ │ -001be100: 6573 756c 742e 6d73 6720 7c20 6465 6661  esult.msg | defa
│ │ │ -001be110: 756c 7428 2727 2727 2929 270a 2020 7768  ult(''''))'.  wh
│ │ │ -001be120: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ -001be130: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -001be140: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001be150: 6573 2061 6e64 2022 7270 6d2d 6f73 7472  es and "rpm-ostr
│ │ │ -001be160: 6565 2220 696e 2061 6e73 6962 6c65 5f66  ee" in ansible_f
│ │ │ -001be170: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -001be180: 2020 616e 6420 2262 6f6f 7463 2220 696e    and "bootc" in
│ │ │ -001be190: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001be1a0: 6163 6b61 6765 7320 616e 6420 6e6f 7420  ackages and not 
│ │ │ -001be1b0: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ -001be1c0: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ -001be1d0: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -001be1e0: 2020 616e 6420 226f 7374 7265 6522 2069    and "ostree" i
│ │ │ -001be1f0: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ -001be200: 6d64 6c69 6e65 2029 2061 6e64 206e 6f74  mdline ) and not
│ │ │ -001be210: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ -001be220: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ -001be230: 6e0a 2020 2020 5b22 646f 636b 6572 222c  n.    ["docker",
│ │ │ -001be240: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ -001be250: 2c20 2270 6f64 6d61 6e22 2c20 2263 6f6e  , "podman", "con
│ │ │ -001be260: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ -001be270: 2027 222f 7661 7222 2069 6e20 616e 7369   '"/var" in ansi
│ │ │ -001be280: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ -001be290: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ -001be2a0: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ -001be2b0: 6d6f 756e 745f 696e 666f 2069 7320 6465  mount_info is de
│ │ │ -001be2c0: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ -001be2d0: 655f 6e61 6d65 2e73 7464 6f75 7420 6973  e_name.stdout is
│ │ │ -001be2e0: 2064 6566 696e 6564 2061 6e64 2028 6465   defined and (de
│ │ │ -001be2f0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001be300: 207c 206c 656e 6774 6820 2667 743b 2030   | length > 0
│ │ │ -001be310: 2929 206f 7220 2822 2d2d 6673 7461 6222  )) or ("--fstab"
│ │ │ -001be320: 0a20 2020 207c 206c 656e 6774 6820 3d3d  .    | length ==
│ │ │ -001be330: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ -001be340: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001be350: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001be360: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ -001be370: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -001be380: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001be390: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ -001be3a0: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ -001be3b0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001be3c0: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ -001be3d0: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001be3e0: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001be3f0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001be400: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001be410: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001be420: 745f 6f70 7469 6f6e 5f76 6172 5f6e 6f64  t_option_var_nod
│ │ │ -001be430: 6576 0a20 202d 206e 6f5f 7265 626f 6f74  ev.  - no_reboot
│ │ │ -001be440: 5f6e 6565 6465 640a 3c2f 636f 6465 3e3c  _needed.<
│ │ │ -001be450: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ -001be500: 696f 6e20 5368 656c 6c20 7363 7269 7074  ion Shell script
│ │ │ -001be510: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
│ │ │ -001be5b0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Co │ │ │ -001bccf0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -001bcd20: 6e3a 3c2f 7468 3e3c 7464 3e68 6967 683c n:high< │ │ │ -001bcd30: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -001bcd70: 3a3c 2f74 683e 3c74 643e 636f 6e66 6967 :config │ │ │ -001bcd80: 7572 653c 2f74 643e 3c2f 7472 3e3c 2f74 ure
Reboot:false
# Remedi │ │ │ -001be5d0: 6174 696f 6e20 6973 2061 7070 6c69 6361 ation is applica │ │ │ -001be5e0: 626c 6520 6f6e 6c79 2069 6e20 6365 7274 ble only in cert │ │ │ -001be5f0: 6169 6e20 706c 6174 666f 726d 730a 6966 ain platforms.if │ │ │ -001be600: 2028 2021 2028 207b 2072 706d 202d 2d71 ( ! ( { rpm --q │ │ │ -001be610: 7569 6574 202d 7120 6b65 726e 656c 203b uiet -q kernel ; │ │ │ -001be620: 7d20 2661 6d70 3b26 616d 703b 207b 2072 } && { r │ │ │ -001be630: 706d 202d 2d71 7569 6574 202d 7120 7270 pm --quiet -q rp │ │ │ -001be640: 6d2d 6f73 7472 6565 203b 7d20 2661 6d70 m-ostree ;} & │ │ │ -001be650: 3b26 616d 703b 207b 2072 706d 202d 2d71 ;& { rpm --q │ │ │ -001be660: 7569 6574 202d 7120 626f 6f74 6320 3b7d uiet -q bootc ;} │ │ │ -001be670: 2026 616d 703b 2661 6d70 3b20 7b20 2120 && { ! │ │ │ -001be680: 7270 6d20 2d2d 7175 6965 7420 2d71 206f rpm --quiet -q o │ │ │ -001be690: 7065 6e73 6869 6674 2d6b 7562 656c 6574 penshift-kubelet │ │ │ -001be6a0: 203b 7d20 2661 6d70 3b26 616d 703b 2028 ;} && ( │ │ │ -001be6b0: 5b20 2d66 202f 7275 6e2f 6f73 7472 6565 [ -f /run/ostree │ │ │ -001be6c0: 2d62 6f6f 7465 6420 5d20 7c7c 205b 202d -booted ] || [ - │ │ │ -001be6d0: 4c20 2f6f 7374 7265 6520 5d29 2029 2026 L /ostree ]) ) & │ │ │ -001be6e0: 616d 703b 2661 6d70 3b20 2120 2820 5b20 amp;& ! ( [ │ │ │ -001be6f0: 2d66 202f 2e64 6f63 6b65 7265 6e76 205d -f /.dockerenv ] │ │ │ -001be700: 207c 7c20 5b20 2d66 202f 7275 6e2f 2e63 || [ -f /run/.c │ │ │ -001be710: 6f6e 7461 696e 6572 656e 7620 5d20 2920 ontainerenv ] ) │ │ │ -001be720: 2920 2661 6d70 3b26 616d 703b 207b 2028 ) && { ( │ │ │ -001be730: 2066 696e 646d 6e74 202d 2d6b 6572 6e65 findmnt --kerne │ │ │ -001be740: 6c20 222f 7661 7222 2026 6774 3b20 2f64 l "/var" > /d │ │ │ -001be750: 6576 2f6e 756c 6c20 7c7c 2066 696e 646d ev/null || findm │ │ │ -001be760: 6e74 202d 2d66 7374 6162 2022 2f76 6172 nt --fstab "/var │ │ │ -001be770: 2220 2667 743b 202f 6465 762f 6e75 6c6c " > /dev/null │ │ │ -001be780: 2029 3b20 7d3b 2074 6865 6e0a 0a66 756e ); }; then..fun │ │ │ -001be790: 6374 696f 6e20 7065 7266 6f72 6d5f 7265 ction perform_re │ │ │ -001be7a0: 6d65 6469 6174 696f 6e20 7b0a 0a20 2020 mediation {.. │ │ │ -001be7b0: 200a 2020 2020 2020 2020 2320 7468 6520 . # the │ │ │ -001be7c0: 6d6f 756e 7420 706f 696e 7420 2f76 6172 mount point /var │ │ │ -001be7d0: 2068 6173 2074 6f20 6265 2064 6566 696e has to be defin │ │ │ -001be7e0: 6564 2069 6e20 2f65 7463 2f66 7374 6162 ed in /etc/fstab │ │ │ -001be7f0: 0a20 2020 2020 2020 2023 2062 6566 6f72 . # befor │ │ │ -001be800: 6520 7468 6973 2072 656d 6564 6961 7469 e this remediati │ │ │ -001be810: 6f6e 2063 616e 2062 6520 6578 6563 7574 on can be execut │ │ │ -001be820: 6564 2e20 496e 2063 6173 6520 6974 2069 ed. In case it i │ │ │ -001be830: 7320 6e6f 7420 6465 6669 6e65 642c 2074 s not defined, t │ │ │ -001be840: 6865 0a20 2020 2020 2020 2023 2072 656d he. # rem │ │ │ -001be850: 6564 6961 7469 6f6e 2061 626f 7274 7320 ediation aborts │ │ │ -001be860: 616e 6420 6e6f 2063 6861 6e67 6573 2072 and no changes r │ │ │ -001be870: 6567 6172 6469 6e67 2074 6865 206d 6f75 egarding the mou │ │ │ -001be880: 6e74 2070 6f69 6e74 2061 7265 2064 6f6e nt point are don │ │ │ -001be890: 652e 0a20 2020 2020 2020 206d 6f75 6e74 e.. mount │ │ │ -001be8a0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567 _point_match_reg │ │ │ -001be8b0: 6578 703d 2224 2870 7269 6e74 6620 225e exp="$(printf "^ │ │ │ -001be8c0: 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e 235d [[:space:]]*[^#] │ │ │ -001be8d0: 2e2a 5b5b 3a73 7061 6365 3a5d 5d25 735b .*[[:space:]]%s[ │ │ │ -001be8e0: 5b3a 7370 6163 653a 5d5d 2220 222f 7661 [:space:]]" "/va │ │ │ -001be8f0: 7222 2922 0a0a 2020 2020 6772 6570 2022 r")".. grep " │ │ │ -001be900: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174 $mount_point_mat │ │ │ -001be910: 6368 5f72 6567 6578 7022 202d 7120 2f65 ch_regexp" -q /e │ │ │ -001be920: 7463 2f66 7374 6162 205c 0a20 2020 2020 tc/fstab \. │ │ │ -001be930: 2020 207c 7c20 7b20 6563 686f 2022 5468 || { echo "Th │ │ │ -001be940: 6520 6d6f 756e 7420 706f 696e 7420 272f e mount point '/ │ │ │ -001be950: 7661 7227 2069 7320 6e6f 7420 6576 656e var' is not even │ │ │ -001be960: 2069 6e20 2f65 7463 2f66 7374 6162 2c20 in /etc/fstab, │ │ │ -001be970: 736f 2077 6520 6361 6e27 7420 7365 7420 so we can't set │ │ │ -001be980: 7570 206d 6f75 6e74 206f 7074 696f 6e73 up mount options │ │ │ -001be990: 2220 2667 743b 2661 6d70 3b32 3b0a 2020 " >&2;. │ │ │ -001be9a0: 2020 2020 2020 2020 2020 2020 2020 6563 ec │ │ │ -001be9b0: 686f 2022 4e6f 7420 7265 6d65 6469 6174 ho "Not remediat │ │ │ -001be9c0: 696e 672c 2062 6563 6175 7365 2074 6865 ing, because the │ │ │ -001be9d0: 7265 2069 7320 6e6f 2072 6563 6f72 6420 re is no record │ │ │ -001be9e0: 6f66 202f 7661 7220 696e 202f 6574 632f of /var in /etc/ │ │ │ -001be9f0: 6673 7461 6222 2026 6774 3b26 616d 703b fstab" >& │ │ │ -001bea00: 323b 2072 6574 7572 6e20 313b 207d 0a20 2; return 1; }. │ │ │ -001bea10: 2020 200a 0a0a 2020 2020 6d6f 756e 745f ... mount_ │ │ │ -001bea20: 706f 696e 745f 6d61 7463 685f 7265 6765 point_match_rege │ │ │ -001bea30: 7870 3d22 2428 7072 696e 7466 2022 5e5b xp="$(printf "^[ │ │ │ -001bea40: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e [:space:]]*[^#]. │ │ │ -001bea50: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b *[[:space:]]%s[[ │ │ │ -001bea60: 3a73 7061 6365 3a5d 5d22 202f 7661 7229 :space:]]" /var) │ │ │ -001bea70: 220a 0a20 2020 2023 2049 6620 7468 6520 ".. # If the │ │ │ -001bea80: 6d6f 756e 7420 706f 696e 7420 6973 206e mount point is n │ │ │ -001bea90: 6f74 2069 6e20 2f65 7463 2f66 7374 6162 ot in /etc/fstab │ │ │ -001beaa0: 2c20 6765 7420 7072 6576 696f 7573 206d , get previous m │ │ │ -001beab0: 6f75 6e74 206f 7074 696f 6e73 2066 726f ount options fro │ │ │ -001beac0: 6d20 2f65 7463 2f6d 7461 620a 2020 2020 m /etc/mtab. │ │ │ -001bead0: 6966 2021 2067 7265 7020 2d71 2022 246d if ! grep -q "$m │ │ │ -001beae0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368 ount_point_match │ │ │ -001beaf0: 5f72 6567 6578 7022 202f 6574 632f 6673 _regexp" /etc/fs │ │ │ -001beb00: 7461 623b 2074 6865 6e0a 2020 2020 2020 tab; then. │ │ │ -001beb10: 2020 2320 7275 6e74 696d 6520 6f70 7473 # runtime opts │ │ │ -001beb20: 2077 6974 686f 7574 2073 6f6d 6520 6175 without some au │ │ │ -001beb30: 746f 6d61 7469 6320 6b65 726e 656c 2f75 tomatic kernel/u │ │ │ -001beb40: 7365 7273 7061 6365 2d61 6464 6564 2064 serspace-added d │ │ │ -001beb50: 6566 6175 6c74 730a 2020 2020 2020 2020 efaults. │ │ │ -001beb60: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f previous_mount_o │ │ │ -001beb70: 7074 733d 2428 6772 6570 2022 246d 6f75 pts=$(grep "$mou │ │ │ -001beb80: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72 nt_point_match_r │ │ │ -001beb90: 6567 6578 7022 202f 6574 632f 6d74 6162 egexp" /etc/mtab │ │ │ -001beba0: 207c 2068 6561 6420 2d31 207c 2020 6177 | head -1 | aw │ │ │ -001bebb0: 6b20 277b 7072 696e 7420 2434 7d27 205c k '{print $4}' \ │ │ │ -001bebc0: 0a20 2020 2020 2020 2020 2020 2020 2020 . │ │ │ -001bebd0: 2020 2020 207c 2073 6564 202d 4520 2273 | sed -E "s │ │ │ -001bebe0: 2f28 7277 7c64 6566 6175 6c74 737c 7365 /(rw|defaults|se │ │ │ -001bebf0: 636c 6162 656c 7c6e 6f64 6576 2928 2c7c clabel|nodev)(,| │ │ │ -001bec00: 2429 2f2f 673b 732f 2c24 2f2f 2229 0a20 $)//g;s/,$//"). │ │ │ -001bec10: 2020 2020 2020 205b 2022 2470 7265 7669 [ "$previ │ │ │ -001bec20: 6f75 735f 6d6f 756e 745f 6f70 7473 2220 ous_mount_opts" │ │ │ -001bec30: 5d20 2661 6d70 3b26 616d 703b 2070 7265 ] && pre │ │ │ -001bec40: 7669 6f75 735f 6d6f 756e 745f 6f70 7473 vious_mount_opts │ │ │ -001bec50: 2b3d 222c 220a 2020 2020 2020 2020 2320 +=",". # │ │ │ -001bec60: 496e 2069 736f 3936 3630 2066 696c 6573 In iso9660 files │ │ │ -001bec70: 7973 7465 6d73 206d 7461 6220 636f 756c ystems mtab coul │ │ │ -001bec80: 6420 6465 7363 7269 6265 2061 2022 626c d describe a "bl │ │ │ -001bec90: 6f63 6b73 697a 6522 2076 616c 7565 2c20 ocksize" value, │ │ │ -001beca0: 7468 6973 2073 686f 756c 6420 6265 2072 this should be r │ │ │ -001becb0: 6566 6c65 6374 6564 2069 6e0a 2020 2020 eflected in. │ │ │ -001becc0: 2020 2020 2320 6673 7461 6220 6173 2022 # fstab as " │ │ │ -001becd0: 626c 6f63 6b22 2e20 2054 6865 206e 6578 block". The nex │ │ │ -001bece0: 7420 7661 7269 6162 6c65 2069 7320 746f t variable is to │ │ │ -001becf0: 2073 6174 6973 6679 2073 6865 6c6c 6368 satisfy shellch │ │ │ -001bed00: 6563 6b20 5343 3230 3530 2e0a 2020 2020 eck SC2050.. │ │ │ -001bed10: 2020 2020 6673 5f74 7970 653d 2222 0a20 fs_type="". │ │ │ -001bed20: 2020 2020 2020 2069 6620 5b20 2022 2466 if [ "$f │ │ │ -001bed30: 735f 7479 7065 2220 3d3d 2022 6973 6f39 s_type" == "iso9 │ │ │ -001bed40: 3636 3022 205d 203b 2074 6865 6e0a 2020 660" ] ; then. │ │ │ -001bed50: 2020 2020 2020 2020 2020 7072 6576 696f previo │ │ │ -001bed60: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428 us_mount_opts=$( │ │ │ -001bed70: 7365 6420 2773 2f62 6c6f 636b 7369 7a65 sed 's/blocksize │ │ │ -001bed80: 3d2f 626c 6f63 6b3d 2f27 2026 6c74 3b26 =/block=/' <& │ │ │ -001bed90: 6c74 3b26 6c74 3b20 2224 7072 6576 696f lt;< "$previo │ │ │ -001beda0: 7573 5f6d 6f75 6e74 5f6f 7074 7322 290a us_mount_opts"). │ │ │ -001bedb0: 2020 2020 2020 2020 6669 0a20 2020 2020 fi. │ │ │ -001bedc0: 2020 2065 6368 6f20 2220 2f76 6172 2020 echo " /var │ │ │ -001bedd0: 6465 6661 756c 7473 2c24 7b70 7265 7669 defaults,${previ │ │ │ -001bede0: 6f75 735f 6d6f 756e 745f 6f70 7473 7d6e ous_mount_opts}n │ │ │ -001bedf0: 6f64 6576 2030 2030 2220 2667 743b 2667 odev 0 0" >&g │ │ │ -001bee00: 743b 202f 6574 632f 6673 7461 620a 2020 t; /etc/fstab. │ │ │ -001bee10: 2020 2320 4966 2074 6865 206d 6f75 6e74 # If the mount │ │ │ -001bee20: 5f6f 7074 206f 7074 696f 6e20 6973 206e _opt option is n │ │ │ -001bee30: 6f74 2061 6c72 6561 6479 2069 6e20 7468 ot already in th │ │ │ -001bee40: 6520 6d6f 756e 7420 706f 696e 7427 7320 e mount point's │ │ │ -001bee50: 2f65 7463 2f66 7374 6162 2065 6e74 7279 /etc/fstab entry │ │ │ -001bee60: 2c20 6164 6420 6974 0a20 2020 2065 6c69 , add it. eli │ │ │ -001bee70: 6620 2120 6772 6570 2022 246d 6f75 6e74 f ! grep "$mount │ │ │ -001bee80: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567 _point_match_reg │ │ │ -001bee90: 6578 7022 202f 6574 632f 6673 7461 6220 exp" /etc/fstab │ │ │ -001beea0: 7c20 6772 6570 202d 7120 226e 6f64 6576 | grep -q "nodev │ │ │ -001beeb0: 223b 2074 6865 6e0a 2020 2020 2020 2020 "; then. │ │ │ -001beec0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f previous_mount_o │ │ │ -001beed0: 7074 733d 2428 6772 6570 2022 246d 6f75 pts=$(grep "$mou │ │ │ -001beee0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72 nt_point_match_r │ │ │ -001beef0: 6567 6578 7022 202f 6574 632f 6673 7461 egexp" /etc/fsta │ │ │ -001bef00: 6220 7c20 6177 6b20 277b 7072 696e 7420 b | awk '{print │ │ │ -001bef10: 2434 7d27 290a 2020 2020 2020 2020 7365 $4}'). se │ │ │ -001bef20: 6420 2d69 2022 737c 5c28 247b 6d6f 756e d -i "s|\(${moun │ │ │ -001bef30: 745f 706f 696e 745f 6d61 7463 685f 7265 t_point_match_re │ │ │ -001bef40: 6765 7870 7d2e 2a24 7b70 7265 7669 6f75 gexp}.*${previou │ │ │ -001bef50: 735f 6d6f 756e 745f 6f70 7473 7d5c 297c s_mount_opts}\)| │ │ │ -001bef60: 5c31 2c6e 6f64 6576 7c22 202f 6574 632f \1,nodev|" /etc/ │ │ │ -001bef70: 6673 7461 620a 2020 2020 6669 0a0a 0a20 fstab. fi... │ │ │ -001bef80: 2020 2069 6620 6d6b 6469 7220 2d70 2022 if mkdir -p " │ │ │ -001bef90: 2f76 6172 223b 2074 6865 6e0a 2020 2020 /var"; then. │ │ │ -001befa0: 2020 2020 6966 206d 6f75 6e74 706f 696e if mountpoin │ │ │ -001befb0: 7420 2d71 2022 2f76 6172 223b 2074 6865 t -q "/var"; the │ │ │ -001befc0: 6e0a 2020 2020 2020 2020 2020 2020 6d6f n. mo │ │ │ -001befd0: 756e 7420 2d6f 2072 656d 6f75 6e74 202d unt -o remount - │ │ │ -001befe0: 2d74 6172 6765 7420 222f 7661 7222 0a20 -target "/var". │ │ │ -001beff0: 2020 2020 2020 2066 690a 2020 2020 6669 fi. fi │ │ │ -001bf000: 0a7d 0a0a 7065 7266 6f72 6d5f 7265 6d65 .}..perform_reme │ │ │ -001bf010: 6469 6174 696f 6e0a 0a65 6c73 650a 2020 diation..else. │ │ │ -001bf020: 2020 2667 743b 2661 6d70 3b32 2065 6368 >&2 ech │ │ │ -001bf030: 6f20 2752 656d 6564 6961 7469 6f6e 2069 o 'Remediation i │ │ │ -001bf040: 7320 6e6f 7420 6170 706c 6963 6162 6c65 s not applicable │ │ │ -001bf050: 2c20 6e6f 7468 696e 6720 7761 7320 646f , nothing was do │ │ │ -001bf060: 6e65 270a 6669 0a3c 2f63 6f64 653e 3c2f ne'.fi.
│ │ │ +001bcaf0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c
- n
│ │ │ +001bcb80: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ +001bcb90: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ +001bcba0: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ +001bcbb0: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ +001bcbc0: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +001bcbd0: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ +001bcbe0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001bcbf0: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ +001bcc00: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ +001bcc10: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001bcc20: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ +001bcc30: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ +001bcc40: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ +001bcc50: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ +001bcc60: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +001bcc70: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +001bcc80: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +001bcc90: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +001bcca0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ +001bccb0: 7074 696f 6e5f 7661 725f 6e6f 6465 760a  ption_var_nodev.
│ │ │ +001bccc0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001bccd0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001bcce0: 6464 206e 6f64 6576 204f 7074 696f 6e20  dd nodev Option 
│ │ │ +001bccf0: 746f 202f 7661 723a 2043 6865 636b 2069  to /var: Check i
│ │ │ +001bcd00: 6e66 6f72 6d61 7469 6f6e 2061 7373 6f63  nformation assoc
│ │ │ +001bcd10: 6961 7465 6420 746f 206d 6f75 6e74 706f  iated to mountpo
│ │ │ +001bcd20: 696e 7427 0a20 2061 6e73 6962 6c65 2e62  int'.  ansible.b
│ │ │ +001bcd30: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ +001bcd40: 6669 6e64 6d6e 7420 2d2d 6673 7461 6220  findmnt --fstab 
│ │ │ +001bcd50: 272f 7661 7227 0a20 2072 6567 6973 7465  '/var'.  registe
│ │ │ +001bcd60: 723a 2064 6576 6963 655f 6e61 6d65 0a20  r: device_name. 
│ │ │ +001bcd70: 2066 6169 6c65 645f 7768 656e 3a20 6465   failed_when: de
│ │ │ +001bcd80: 7669 6365 5f6e 616d 652e 7263 2026 6774  vice_name.rc >
│ │ │ +001bcd90: 3b20 310a 2020 6368 616e 6765 645f 7768  ; 1.  changed_wh
│ │ │ +001bcda0: 656e 3a20 6661 6c73 650a 2020 6368 6563  en: false.  chec
│ │ │ +001bcdb0: 6b5f 6d6f 6465 3a20 6661 6c73 650a 2020  k_mode: false.  
│ │ │ +001bcdc0: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ +001bcdd0: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ +001bcde0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001bcdf0: 6167 6573 2061 6e64 2022 7270 6d2d 6f73  ages and "rpm-os
│ │ │ +001bce00: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001bce10: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001bce20: 2020 2020 616e 6420 2262 6f6f 7463 2220      and "bootc" 
│ │ │ +001bce30: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001bce40: 2e70 6163 6b61 6765 7320 616e 6420 6e6f  .packages and no
│ │ │ +001bce50: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ +001bce60: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ +001bce70: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001bce80: 2020 2020 616e 6420 226f 7374 7265 6522      and "ostree"
│ │ │ +001bce90: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ +001bcea0: 5f63 6d64 6c69 6e65 2029 2061 6e64 206e  _cmdline ) and n
│ │ │ +001bceb0: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ +001bcec0: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ +001bced0: 2069 6e0a 2020 2020 5b22 646f 636b 6572   in.    ["docker
│ │ │ +001bcee0: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ +001bcef0: 7a22 2c20 2270 6f64 6d61 6e22 2c20 2263  z", "podman", "c
│ │ │ +001bcf00: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ +001bcf10: 202d 2027 222f 7661 7222 2069 6e20 616e   - '"/var" in an
│ │ │ +001bcf20: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ +001bcf30: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ +001bcf40: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ +001bcf50: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +001bcf60: 3030 2d35 332d 4143 2d36 0a20 202d 204e  00-53-AC-6.  - N
│ │ │ +001bcf70: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ +001bcf80: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ +001bcf90: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ +001bcfa0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001bcfb0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001bcfc0: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ +001bcfd0: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ +001bcfe0: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +001bcff0: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +001bd000: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +001bd010: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +001bd020: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001bd030: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ +001bd040: 6f6e 5f76 6172 5f6e 6f64 6576 0a20 202d  on_var_nodev.  -
│ │ │ +001bd050: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +001bd060: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ +001bd070: 6e6f 6465 7620 4f70 7469 6f6e 2074 6f20  nodev Option to 
│ │ │ +001bd080: 2f76 6172 3a20 4372 6561 7465 206d 6f75  /var: Create mou
│ │ │ +001bd090: 6e74 5f69 6e66 6f20 6469 6374 696f 6e61  nt_info dictiona
│ │ │ +001bd0a0: 7279 2076 6172 6961 626c 6527 0a20 2073  ry variable'.  s
│ │ │ +001bd0b0: 6574 5f66 6163 743a 0a20 2020 206d 6f75  et_fact:.    mou
│ │ │ +001bd0c0: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75  nt_info: '{{ mou
│ │ │ +001bd0d0: 6e74 5f69 6e66 6f7c 6465 6661 756c 7428  nt_info|default(
│ │ │ +001bd0e0: 7b7d 297c 636f 6d62 696e 6528 7b69 7465  {})|combine({ite
│ │ │ +001bd0f0: 6d2e 303a 2069 7465 6d2e 317d 2920 7d7d  m.0: item.1}) }}
│ │ │ +001bd100: 270a 2020 7769 7468 5f74 6f67 6574 6865  '.  with_togethe
│ │ │ +001bd110: 723a 0a20 202d 2027 7b7b 2064 6576 6963  r:.  - '{{ devic
│ │ │ +001bd120: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ +001bd130: 6e65 735b 305d 2e73 706c 6974 2829 207c  nes[0].split() |
│ │ │ +001bd140: 206d 6170 2827 276c 6f77 6572 2727 2920   map(''lower'') 
│ │ │ +001bd150: 7c20 6c69 7374 207d 7d27 0a20 202d 2027  | list }}'.  - '
│ │ │ +001bd160: 7b7b 2064 6576 6963 655f 6e61 6d65 2e73  {{ device_name.s
│ │ │ +001bd170: 7464 6f75 745f 6c69 6e65 735b 315d 2e73  tdout_lines[1].s
│ │ │ +001bd180: 706c 6974 2829 207c 206c 6973 7420 7d7d  plit() | list }}
│ │ │ +001bd190: 270a 2020 7768 656e 3a0a 2020 2d20 2820  '.  when:.  - ( 
│ │ │ +001bd1a0: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ +001bd1b0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001bd1c0: 7061 636b 6167 6573 2061 6e64 2022 7270  packages and "rp
│ │ │ +001bd1d0: 6d2d 6f73 7472 6565 2220 696e 2061 6e73  m-ostree" in ans
│ │ │ +001bd1e0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001bd1f0: 6765 730a 2020 2020 616e 6420 2262 6f6f  ges.    and "boo
│ │ │ +001bd200: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ +001bd210: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001bd220: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ +001bd230: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ +001bd240: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001bd250: 6765 730a 2020 2020 616e 6420 226f 7374  ges.    and "ost
│ │ │ +001bd260: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001bd270: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061  proc_cmdline ) a
│ │ │ +001bd280: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ +001bd290: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ +001bd2a0: 7479 7065 2069 6e0a 2020 2020 5b22 646f  type in.    ["do
│ │ │ +001bd2b0: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ +001bd2c0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ +001bd2d0: 2c20 2263 6f6e 7461 696e 6572 225d 2029  , "container"] )
│ │ │ +001bd2e0: 2029 0a20 202d 2027 222f 7661 7222 2069   ).  - '"/var" i
│ │ │ +001bd2f0: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ +001bd300: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ +001bd310: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ +001bd320: 270a 2020 2d20 6465 7669 6365 5f6e 616d  '.  - device_nam
│ │ │ +001bd330: 652e 7374 646f 7574 2069 7320 6465 6669  e.stdout is defi
│ │ │ +001bd340: 6e65 6420 616e 6420 6465 7669 6365 5f6e  ned and device_n
│ │ │ +001bd350: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ +001bd360: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ +001bd370: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ +001bd380: 6f75 7420 7c20 6c65 6e67 7468 2026 6774  out | length >
│ │ │ +001bd390: 3b20 3029 0a20 2074 6167 733a 0a20 202d  ; 0).  tags:.  -
│ │ │ +001bd3a0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001bd3b0: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +001bd3c0: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ +001bd3d0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +001bd3e0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001bd3f0: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +001bd400: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +001bd410: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001bd420: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ +001bd430: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001bd440: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001bd450: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001bd460: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001bd470: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001bd480: 6e74 5f6f 7074 696f 6e5f 7661 725f 6e6f  nt_option_var_no
│ │ │ +001bd490: 6465 760a 2020 2d20 6e6f 5f72 6562 6f6f  dev.  - no_reboo
│ │ │ +001bd4a0: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ +001bd4b0: 3a20 2741 6464 206e 6f64 6576 204f 7074  : 'Add nodev Opt
│ │ │ +001bd4c0: 696f 6e20 746f 202f 7661 723a 2049 6620  ion to /var: If 
│ │ │ +001bd4d0: 2f76 6172 206e 6f74 206d 6f75 6e74 6564  /var not mounted
│ │ │ +001bd4e0: 2c20 6372 6166 7420 6d6f 756e 745f 696e  , craft mount_in
│ │ │ +001bd4f0: 666f 206d 616e 7561 6c6c 7927 0a20 2073  fo manually'.  s
│ │ │ +001bd500: 6574 5f66 6163 743a 0a20 2020 206d 6f75  et_fact:.    mou
│ │ │ +001bd510: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75  nt_info: '{{ mou
│ │ │ +001bd520: 6e74 5f69 6e66 6f7c 6465 6661 756c 7428  nt_info|default(
│ │ │ +001bd530: 7b7d 297c 636f 6d62 696e 6528 7b69 7465  {})|combine({ite
│ │ │ +001bd540: 6d2e 303a 2069 7465 6d2e 317d 2920 7d7d  m.0: item.1}) }}
│ │ │ +001bd550: 270a 2020 7769 7468 5f74 6f67 6574 6865  '.  with_togethe
│ │ │ +001bd560: 723a 0a20 202d 202d 2074 6172 6765 740a  r:.  - - target.
│ │ │ +001bd570: 2020 2020 2d20 736f 7572 6365 0a20 2020      - source.   
│ │ │ +001bd580: 202d 2066 7374 7970 650a 2020 2020 2d20   - fstype.    - 
│ │ │ +001bd590: 6f70 7469 6f6e 730a 2020 2d20 2d20 2f76  options.  - - /v
│ │ │ +001bd5a0: 6172 0a20 2020 202d 2027 270a 2020 2020  ar.    - ''.    
│ │ │ +001bd5b0: 2d20 2727 0a20 2020 202d 2064 6566 6175  - ''.    - defau
│ │ │ +001bd5c0: 6c74 730a 2020 7768 656e 3a0a 2020 2d20  lts.  when:.  - 
│ │ │ +001bd5d0: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ +001bd5e0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001bd5f0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001bd600: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ +001bd610: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001bd620: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ +001bd630: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +001bd640: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001bd650: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ +001bd660: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ +001bd670: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001bd680: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ +001bd690: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001bd6a0: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ +001bd6b0: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ +001bd6c0: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ +001bd6d0: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ +001bd6e0: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +001bd6f0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +001bd700: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ +001bd710: 2029 2029 0a20 202d 2027 222f 7661 7222   ) ).  - '"/var"
│ │ │ +001bd720: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ +001bd730: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ +001bd740: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ +001bd750: 7374 270a 2020 2d20 2822 2d2d 6673 7461  st'.  - ("--fsta
│ │ │ +001bd760: 6222 207c 206c 656e 6774 6820 3d3d 2030  b" | length == 0
│ │ │ +001bd770: 290a 2020 2d20 6465 7669 6365 5f6e 616d  ).  - device_nam
│ │ │ +001bd780: 652e 7374 646f 7574 2069 7320 6465 6669  e.stdout is defi
│ │ │ +001bd790: 6e65 6420 616e 6420 6465 7669 6365 5f6e  ned and device_n
│ │ │ +001bd7a0: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ +001bd7b0: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ +001bd7c0: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ +001bd7d0: 6f75 7420 7c20 6c65 6e67 7468 203d 3d20  out | length == 
│ │ │ +001bd7e0: 3029 0a20 2074 6167 733a 0a20 202d 204e  0).  tags:.  - N
│ │ │ +001bd7f0: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ +001bd800: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001bd810: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ +001bd820: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +001bd830: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001bd840: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +001bd850: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +001bd860: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001bd870: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ +001bd880: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +001bd890: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +001bd8a0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +001bd8b0: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +001bd8c0: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +001bd8d0: 5f6f 7074 696f 6e5f 7661 725f 6e6f 6465  _option_var_node
│ │ │ +001bd8e0: 760a 2020 2d20 6e6f 5f72 6562 6f6f 745f  v.  - no_reboot_
│ │ │ +001bd8f0: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ +001bd900: 2741 6464 206e 6f64 6576 204f 7074 696f  'Add nodev Optio
│ │ │ +001bd910: 6e20 746f 202f 7661 723a 204d 616b 6520  n to /var: Make 
│ │ │ +001bd920: 7375 7265 206e 6f64 6576 206f 7074 696f  sure nodev optio
│ │ │ +001bd930: 6e20 6973 2070 6172 7420 6f66 2074 6865  n is part of the
│ │ │ +001bd940: 2074 6f20 2f76 6172 206f 7074 696f 6e73   to /var options
│ │ │ +001bd950: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ +001bd960: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ +001bd970: 7b20 6d6f 756e 745f 696e 666f 207c 2063  { mount_info | c
│ │ │ +001bd980: 6f6d 6269 6e65 2820 7b27 276f 7074 696f  ombine( {''optio
│ │ │ +001bd990: 6e73 2727 3a27 2727 277e 286d 6f75 6e74  ns'':''''~(mount
│ │ │ +001bd9a0: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c0a  _info.options |.
│ │ │ +001bd9b0: 2020 2020 2020 6465 6661 756c 7428 2727        default(''
│ │ │ +001bd9c0: 2727 2929 7e28 2727 2c27 2720 6966 2028  ''))~('','' if (
│ │ │ +001bd9d0: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ +001bd9e0: 6e73 207c 2064 6566 6175 6c74 2827 2727  ns | default('''
│ │ │ +001bd9f0: 2729 2920 656c 7365 2027 2727 2729 7e27  ')) else '''')~'
│ │ │ +001bda00: 276e 6f64 6576 2727 0a20 2020 2020 207d  'nodev''.      }
│ │ │ +001bda10: 2920 7d7d 270a 2020 7768 656e 3a0a 2020  ) }}'.  when:.  
│ │ │ +001bda20: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ +001bda30: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +001bda40: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001bda50: 2022 7270 6d2d 6f73 7472 6565 2220 696e   "rpm-ostree" in
│ │ │ +001bda60: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001bda70: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001bda80: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ +001bda90: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001bdaa0: 7320 616e 6420 6e6f 7420 226f 7065 6e73  s and not "opens
│ │ │ +001bdab0: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ +001bdac0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001bdad0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001bdae0: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ +001bdaf0: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ +001bdb00: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ +001bdb10: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ +001bdb20: 696f 6e5f 7479 7065 2069 6e0a 2020 2020  ion_type in.    
│ │ │ +001bdb30: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ +001bdb40: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ +001bdb50: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572  man", "container
│ │ │ +001bdb60: 225d 2029 2029 0a20 202d 2027 222f 7661  "] ) ).  - '"/va
│ │ │ +001bdb70: 7222 2069 6e20 616e 7369 626c 655f 6d6f  r" in ansible_mo
│ │ │ +001bdb80: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ +001bdb90: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ +001bdba0: 6c69 7374 270a 2020 2d20 6d6f 756e 745f  list'.  - mount_
│ │ │ +001bdbb0: 696e 666f 2069 7320 6465 6669 6e65 6420  info is defined 
│ │ │ +001bdbc0: 616e 6420 226e 6f64 6576 2220 6e6f 7420  and "nodev" not 
│ │ │ +001bdbd0: 696e 2028 6d6f 756e 745f 696e 666f 2e6f  in (mount_info.o
│ │ │ +001bdbe0: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ +001bdbf0: 2827 2729 290a 2020 7461 6773 3a0a 2020  ('')).  tags:.  
│ │ │ +001bdc00: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001bdc10: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ +001bdc20: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ +001bdc30: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +001bdc40: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001bdc50: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ +001bdc60: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001bdc70: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ +001bdc80: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ +001bdc90: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +001bdca0: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ +001bdcb0: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ +001bdcc0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ +001bdcd0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ +001bdce0: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6e  unt_option_var_n
│ │ │ +001bdcf0: 6f64 6576 0a20 202d 206e 6f5f 7265 626f  odev.  - no_rebo
│ │ │ +001bdd00: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +001bdd10: 653a 2027 4164 6420 6e6f 6465 7620 4f70  e: 'Add nodev Op
│ │ │ +001bdd20: 7469 6f6e 2074 6f20 2f76 6172 3a20 456e  tion to /var: En
│ │ │ +001bdd30: 7375 7265 202f 7661 7220 6973 206d 6f75  sure /var is mou
│ │ │ +001bdd40: 6e74 6564 2077 6974 6820 6e6f 6465 7620  nted with nodev 
│ │ │ +001bdd50: 6f70 7469 6f6e 270a 2020 616e 7369 626c  option'.  ansibl
│ │ │ +001bdd60: 652e 706f 7369 782e 6d6f 756e 743a 0a20  e.posix.mount:. 
│ │ │ +001bdd70: 2020 2070 6174 683a 202f 7661 720a 2020     path: /var.  
│ │ │ +001bdd80: 2020 7372 633a 2027 7b7b 206d 6f75 6e74    src: '{{ mount
│ │ │ +001bdd90: 5f69 6e66 6f2e 736f 7572 6365 207c 2064  _info.source | d
│ │ │ +001bdda0: 6566 6175 6c74 2827 2727 2729 207d 7d27  efault('''') }}'
│ │ │ +001bddb0: 0a20 2020 206f 7074 733a 2027 7b7b 206d  .    opts: '{{ m
│ │ │ +001bddc0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ +001bddd0: 7320 7c20 6465 6661 756c 7428 2727 2727  s | default(''''
│ │ │ +001bdde0: 2920 7d7d 270a 2020 2020 7374 6174 653a  ) }}'.    state:
│ │ │ +001bddf0: 206d 6f75 6e74 6564 0a20 2020 2066 7374   mounted.    fst
│ │ │ +001bde00: 7970 653a 2027 7b7b 206d 6f75 6e74 5f69  ype: '{{ mount_i
│ │ │ +001bde10: 6e66 6f2e 6673 7479 7065 207c 2064 6566  nfo.fstype | def
│ │ │ +001bde20: 6175 6c74 2827 2727 2729 207d 7d27 0a20  ault('''') }}'. 
│ │ │ +001bde30: 2072 6567 6973 7465 723a 206d 6f75 6e74   register: mount
│ │ │ +001bde40: 5f72 6573 756c 740a 2020 6661 696c 6564  _result.  failed
│ │ │ +001bde50: 5f77 6865 6e3a 0a20 202d 206d 6f75 6e74  _when:.  - mount
│ │ │ +001bde60: 5f72 6573 756c 7420 6973 2066 6169 6c65  _result is faile
│ │ │ +001bde70: 640a 2020 2d20 2727 2774 6172 6765 7420  d.  - '''target 
│ │ │ +001bde80: 6973 2062 7573 7927 2720 6e6f 7420 696e  is busy'' not in
│ │ │ +001bde90: 2028 6d6f 756e 745f 7265 7375 6c74 2e6d   (mount_result.m
│ │ │ +001bdea0: 7367 207c 2064 6566 6175 6c74 2827 2727  sg | default('''
│ │ │ +001bdeb0: 2729 2927 0a20 202d 2027 2727 616c 7265  '))'.  - '''alre
│ │ │ +001bdec0: 6164 7920 6d6f 756e 7465 6427 2720 6e6f  ady mounted'' no
│ │ │ +001bded0: 7420 696e 2028 6d6f 756e 745f 7265 7375  t in (mount_resu
│ │ │ +001bdee0: 6c74 2e6d 7367 207c 2064 6566 6175 6c74  lt.msg | default
│ │ │ +001bdef0: 2827 2727 2729 2927 0a20 2077 6865 6e3a  (''''))'.  when:
│ │ │ +001bdf00: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ +001bdf10: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +001bdf20: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001bdf30: 616e 6420 2272 706d 2d6f 7374 7265 6522  and "rpm-ostree"
│ │ │ +001bdf40: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001bdf50: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001bdf60: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ +001bdf70: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001bdf80: 6167 6573 2061 6e64 206e 6f74 2022 6f70  ages and not "op
│ │ │ +001bdf90: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ +001bdfa0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001bdfb0: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001bdfc0: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ +001bdfd0: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ +001bdfe0: 696e 6520 2920 616e 6420 6e6f 7420 2820  ine ) and not ( 
│ │ │ +001bdff0: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ +001be000: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20  zation_type in. 
│ │ │ +001be010: 2020 205b 2264 6f63 6b65 7222 2c20 226c     ["docker", "l
│ │ │ +001be020: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ +001be030: 706f 646d 616e 222c 2022 636f 6e74 6169  podman", "contai
│ │ │ +001be040: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ +001be050: 2f76 6172 2220 696e 2061 6e73 6962 6c65  /var" in ansible
│ │ │ +001be060: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ +001be070: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ +001be080: 207c 206c 6973 7427 0a20 202d 206d 6f75   | list'.  - mou
│ │ │ +001be090: 6e74 5f69 6e66 6f20 6973 2064 6566 696e  nt_info is defin
│ │ │ +001be0a0: 6564 0a20 202d 2028 6465 7669 6365 5f6e  ed.  - (device_n
│ │ │ +001be0b0: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ +001be0c0: 6669 6e65 6420 616e 6420 2864 6576 6963  fined and (devic
│ │ │ +001be0d0: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ +001be0e0: 6c65 6e67 7468 2026 6774 3b20 3029 2920  length > 0)) 
│ │ │ +001be0f0: 6f72 2028 222d 2d66 7374 6162 220a 2020  or ("--fstab".  
│ │ │ +001be100: 2020 7c20 6c65 6e67 7468 203d 3d20 3029    | length == 0)
│ │ │ +001be110: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +001be120: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ +001be130: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001be140: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ +001be150: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ +001be160: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001be170: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ +001be180: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ +001be190: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ +001be1a0: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ +001be1b0: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +001be1c0: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +001be1d0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +001be1e0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +001be1f0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ +001be200: 7074 696f 6e5f 7661 725f 6e6f 6465 760a  ption_var_nodev.
│ │ │ +001be210: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001be220: 6564 6564 0a3c 2f63 6f64 653e 3c2f 7072  eded.Remediation
│ │ │ +001be2e0: 2053 6865 6c6c 2073 6372 6970 7420 e287   Shell script ..
│ │ │ +001be2f0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
Compl │ │ │ +001bcad0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +001bcae0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +001bcb00: 2f74 683e 3c74 643e 6869 6768 3c2f 7464 /th>high
Re │ │ │ +001bcb20: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +001bcb30: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:configure │ │ │ +001bcb60: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ +001be370: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +001be380: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
<
│ │ │ +001be3a0: 636f 6465 3e23 2052 656d 6564 6961 7469  code># Remediati
│ │ │ +001be3b0: 6f6e 2069 7320 6170 706c 6963 6162 6c65  on is applicable
│ │ │ +001be3c0: 206f 6e6c 7920 696e 2063 6572 7461 696e   only in certain
│ │ │ +001be3d0: 2070 6c61 7466 6f72 6d73 0a69 6620 2820   platforms.if ( 
│ │ │ +001be3e0: 2120 2820 7b20 7270 6d20 2d2d 7175 6965  ! ( { rpm --quie
│ │ │ +001be3f0: 7420 2d71 206b 6572 6e65 6c20 3b7d 2026  t -q kernel ;} &
│ │ │ +001be400: 616d 703b 2661 6d70 3b20 7b20 7270 6d20  amp;& { rpm 
│ │ │ +001be410: 2d2d 7175 6965 7420 2d71 2072 706d 2d6f  --quiet -q rpm-o
│ │ │ +001be420: 7374 7265 6520 3b7d 2026 616d 703b 2661  stree ;} &&a
│ │ │ +001be430: 6d70 3b20 7b20 7270 6d20 2d2d 7175 6965  mp; { rpm --quie
│ │ │ +001be440: 7420 2d71 2062 6f6f 7463 203b 7d20 2661  t -q bootc ;} &a
│ │ │ +001be450: 6d70 3b26 616d 703b 207b 2021 2072 706d  mp;& { ! rpm
│ │ │ +001be460: 202d 2d71 7569 6574 202d 7120 6f70 656e   --quiet -q open
│ │ │ +001be470: 7368 6966 742d 6b75 6265 6c65 7420 3b7d  shift-kubelet ;}
│ │ │ +001be480: 2026 616d 703b 2661 6d70 3b20 285b 202d   && ([ -
│ │ │ +001be490: 6620 2f72 756e 2f6f 7374 7265 652d 626f  f /run/ostree-bo
│ │ │ +001be4a0: 6f74 6564 205d 207c 7c20 5b20 2d4c 202f  oted ] || [ -L /
│ │ │ +001be4b0: 6f73 7472 6565 205d 2920 2920 2661 6d70  ostree ]) ) &
│ │ │ +001be4c0: 3b26 616d 703b 2021 2028 205b 202d 6620  ;& ! ( [ -f 
│ │ │ +001be4d0: 2f2e 646f 636b 6572 656e 7620 5d20 7c7c  /.dockerenv ] ||
│ │ │ +001be4e0: 205b 202d 6620 2f72 756e 2f2e 636f 6e74   [ -f /run/.cont
│ │ │ +001be4f0: 6169 6e65 7265 6e76 205d 2029 2029 2026  ainerenv ] ) ) &
│ │ │ +001be500: 616d 703b 2661 6d70 3b20 7b20 2820 6669  amp;& { ( fi
│ │ │ +001be510: 6e64 6d6e 7420 2d2d 6b65 726e 656c 2022  ndmnt --kernel "
│ │ │ +001be520: 2f76 6172 2220 2667 743b 202f 6465 762f  /var" > /dev/
│ │ │ +001be530: 6e75 6c6c 207c 7c20 6669 6e64 6d6e 7420  null || findmnt 
│ │ │ +001be540: 2d2d 6673 7461 6220 222f 7661 7222 2026  --fstab "/var" &
│ │ │ +001be550: 6774 3b20 2f64 6576 2f6e 756c 6c20 293b  gt; /dev/null );
│ │ │ +001be560: 207d 3b20 7468 656e 0a0a 6675 6e63 7469   }; then..functi
│ │ │ +001be570: 6f6e 2070 6572 666f 726d 5f72 656d 6564  on perform_remed
│ │ │ +001be580: 6961 7469 6f6e 207b 0a0a 2020 2020 0a20  iation {..    . 
│ │ │ +001be590: 2020 2020 2020 2023 2074 6865 206d 6f75         # the mou
│ │ │ +001be5a0: 6e74 2070 6f69 6e74 202f 7661 7220 6861  nt point /var ha
│ │ │ +001be5b0: 7320 746f 2062 6520 6465 6669 6e65 6420  s to be defined 
│ │ │ +001be5c0: 696e 202f 6574 632f 6673 7461 620a 2020  in /etc/fstab.  
│ │ │ +001be5d0: 2020 2020 2020 2320 6265 666f 7265 2074        # before t
│ │ │ +001be5e0: 6869 7320 7265 6d65 6469 6174 696f 6e20  his remediation 
│ │ │ +001be5f0: 6361 6e20 6265 2065 7865 6375 7465 642e  can be executed.
│ │ │ +001be600: 2049 6e20 6361 7365 2069 7420 6973 206e   In case it is n
│ │ │ +001be610: 6f74 2064 6566 696e 6564 2c20 7468 650a  ot defined, the.
│ │ │ +001be620: 2020 2020 2020 2020 2320 7265 6d65 6469          # remedi
│ │ │ +001be630: 6174 696f 6e20 6162 6f72 7473 2061 6e64  ation aborts and
│ │ │ +001be640: 206e 6f20 6368 616e 6765 7320 7265 6761   no changes rega
│ │ │ +001be650: 7264 696e 6720 7468 6520 6d6f 756e 7420  rding the mount 
│ │ │ +001be660: 706f 696e 7420 6172 6520 646f 6e65 2e0a  point are done..
│ │ │ +001be670: 2020 2020 2020 2020 6d6f 756e 745f 706f          mount_po
│ │ │ +001be680: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001be690: 3d22 2428 7072 696e 7466 2022 5e5b 5b3a  ="$(printf "^[[:
│ │ │ +001be6a0: 7370 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b  space:]]*[^#].*[
│ │ │ +001be6b0: 5b3a 7370 6163 653a 5d5d 2573 5b5b 3a73  [:space:]]%s[[:s
│ │ │ +001be6c0: 7061 6365 3a5d 5d22 2022 2f76 6172 2229  pace:]]" "/var")
│ │ │ +001be6d0: 220a 0a20 2020 2067 7265 7020 2224 6d6f  "..    grep "$mo
│ │ │ +001be6e0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001be6f0: 7265 6765 7870 2220 2d71 202f 6574 632f  regexp" -q /etc/
│ │ │ +001be700: 6673 7461 6220 5c0a 2020 2020 2020 2020  fstab \.        
│ │ │ +001be710: 7c7c 207b 2065 6368 6f20 2254 6865 206d  || { echo "The m
│ │ │ +001be720: 6f75 6e74 2070 6f69 6e74 2027 2f76 6172  ount point '/var
│ │ │ +001be730: 2720 6973 206e 6f74 2065 7665 6e20 696e  ' is not even in
│ │ │ +001be740: 202f 6574 632f 6673 7461 622c 2073 6f20   /etc/fstab, so 
│ │ │ +001be750: 7765 2063 616e 2774 2073 6574 2075 7020  we can't set up 
│ │ │ +001be760: 6d6f 756e 7420 6f70 7469 6f6e 7322 2026  mount options" &
│ │ │ +001be770: 6774 3b26 616d 703b 323b 0a20 2020 2020  gt;&2;.     
│ │ │ +001be780: 2020 2020 2020 2020 2020 2065 6368 6f20             echo 
│ │ │ +001be790: 224e 6f74 2072 656d 6564 6961 7469 6e67  "Not remediating
│ │ │ +001be7a0: 2c20 6265 6361 7573 6520 7468 6572 6520  , because there 
│ │ │ +001be7b0: 6973 206e 6f20 7265 636f 7264 206f 6620  is no record of 
│ │ │ +001be7c0: 2f76 6172 2069 6e20 2f65 7463 2f66 7374  /var in /etc/fst
│ │ │ +001be7d0: 6162 2220 2667 743b 2661 6d70 3b32 3b20  ab" >&2; 
│ │ │ +001be7e0: 7265 7475 726e 2031 3b20 7d0a 2020 2020  return 1; }.    
│ │ │ +001be7f0: 0a0a 0a20 2020 206d 6f75 6e74 5f70 6f69  ...    mount_poi
│ │ │ +001be800: 6e74 5f6d 6174 6368 5f72 6567 6578 703d  nt_match_regexp=
│ │ │ +001be810: 2224 2870 7269 6e74 6620 225e 5b5b 3a73  "$(printf "^[[:s
│ │ │ +001be820: 7061 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b  pace:]]*[^#].*[[
│ │ │ +001be830: 3a73 7061 6365 3a5d 5d25 735b 5b3a 7370  :space:]]%s[[:sp
│ │ │ +001be840: 6163 653a 5d5d 2220 2f76 6172 2922 0a0a  ace:]]" /var)"..
│ │ │ +001be850: 2020 2020 2320 4966 2074 6865 206d 6f75      # If the mou
│ │ │ +001be860: 6e74 2070 6f69 6e74 2069 7320 6e6f 7420  nt point is not 
│ │ │ +001be870: 696e 202f 6574 632f 6673 7461 622c 2067  in /etc/fstab, g
│ │ │ +001be880: 6574 2070 7265 7669 6f75 7320 6d6f 756e  et previous moun
│ │ │ +001be890: 7420 6f70 7469 6f6e 7320 6672 6f6d 202f  t options from /
│ │ │ +001be8a0: 6574 632f 6d74 6162 0a20 2020 2069 6620  etc/mtab.    if 
│ │ │ +001be8b0: 2120 6772 6570 202d 7120 2224 6d6f 756e  ! grep -q "$moun
│ │ │ +001be8c0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001be8d0: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ +001be8e0: 3b20 7468 656e 0a20 2020 2020 2020 2023  ; then.        #
│ │ │ +001be8f0: 2072 756e 7469 6d65 206f 7074 7320 7769   runtime opts wi
│ │ │ +001be900: 7468 6f75 7420 736f 6d65 2061 7574 6f6d  thout some autom
│ │ │ +001be910: 6174 6963 206b 6572 6e65 6c2f 7573 6572  atic kernel/user
│ │ │ +001be920: 7370 6163 652d 6164 6465 6420 6465 6661  space-added defa
│ │ │ +001be930: 756c 7473 0a20 2020 2020 2020 2070 7265  ults.        pre
│ │ │ +001be940: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001be950: 3d24 2867 7265 7020 2224 6d6f 756e 745f  =$(grep "$mount_
│ │ │ +001be960: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001be970: 7870 2220 2f65 7463 2f6d 7461 6220 7c20  xp" /etc/mtab | 
│ │ │ +001be980: 6865 6164 202d 3120 7c20 2061 776b 2027  head -1 |  awk '
│ │ │ +001be990: 7b70 7269 6e74 2024 347d 2720 5c0a 2020  {print $4}' \.  
│ │ │ +001be9a0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +001be9b0: 2020 7c20 7365 6420 2d45 2022 732f 2872    | sed -E "s/(r
│ │ │ +001be9c0: 777c 6465 6661 756c 7473 7c73 6563 6c61  w|defaults|secla
│ │ │ +001be9d0: 6265 6c7c 6e6f 6465 7629 282c 7c24 292f  bel|nodev)(,|$)/
│ │ │ +001be9e0: 2f67 3b73 2f2c 242f 2f22 290a 2020 2020  /g;s/,$//").    
│ │ │ +001be9f0: 2020 2020 5b20 2224 7072 6576 696f 7573      [ "$previous
│ │ │ +001bea00: 5f6d 6f75 6e74 5f6f 7074 7322 205d 2026  _mount_opts" ] &
│ │ │ +001bea10: 616d 703b 2661 6d70 3b20 7072 6576 696f  amp;& previo
│ │ │ +001bea20: 7573 5f6d 6f75 6e74 5f6f 7074 732b 3d22  us_mount_opts+="
│ │ │ +001bea30: 2c22 0a20 2020 2020 2020 2023 2049 6e20  ,".        # In 
│ │ │ +001bea40: 6973 6f39 3636 3020 6669 6c65 7379 7374  iso9660 filesyst
│ │ │ +001bea50: 656d 7320 6d74 6162 2063 6f75 6c64 2064  ems mtab could d
│ │ │ +001bea60: 6573 6372 6962 6520 6120 2262 6c6f 636b  escribe a "block
│ │ │ +001bea70: 7369 7a65 2220 7661 6c75 652c 2074 6869  size" value, thi
│ │ │ +001bea80: 7320 7368 6f75 6c64 2062 6520 7265 666c  s should be refl
│ │ │ +001bea90: 6563 7465 6420 696e 0a20 2020 2020 2020  ected in.       
│ │ │ +001beaa0: 2023 2066 7374 6162 2061 7320 2262 6c6f   # fstab as "blo
│ │ │ +001beab0: 636b 222e 2020 5468 6520 6e65 7874 2076  ck".  The next v
│ │ │ +001beac0: 6172 6961 626c 6520 6973 2074 6f20 7361  ariable is to sa
│ │ │ +001bead0: 7469 7366 7920 7368 656c 6c63 6865 636b  tisfy shellcheck
│ │ │ +001beae0: 2053 4332 3035 302e 0a20 2020 2020 2020   SC2050..       
│ │ │ +001beaf0: 2066 735f 7479 7065 3d22 220a 2020 2020   fs_type="".    
│ │ │ +001beb00: 2020 2020 6966 205b 2020 2224 6673 5f74      if [  "$fs_t
│ │ │ +001beb10: 7970 6522 203d 3d20 2269 736f 3936 3630  ype" == "iso9660
│ │ │ +001beb20: 2220 5d20 3b20 7468 656e 0a20 2020 2020  " ] ; then.     
│ │ │ +001beb30: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ +001beb40: 6d6f 756e 745f 6f70 7473 3d24 2873 6564  mount_opts=$(sed
│ │ │ +001beb50: 2027 732f 626c 6f63 6b73 697a 653d 2f62   's/blocksize=/b
│ │ │ +001beb60: 6c6f 636b 3d2f 2720 266c 743b 266c 743b  lock=/' <<
│ │ │ +001beb70: 266c 743b 2022 2470 7265 7669 6f75 735f  < "$previous_
│ │ │ +001beb80: 6d6f 756e 745f 6f70 7473 2229 0a20 2020  mount_opts").   
│ │ │ +001beb90: 2020 2020 2066 690a 2020 2020 2020 2020       fi.        
│ │ │ +001beba0: 6563 686f 2022 202f 7661 7220 2064 6566  echo " /var  def
│ │ │ +001bebb0: 6175 6c74 732c 247b 7072 6576 696f 7573  aults,${previous
│ │ │ +001bebc0: 5f6d 6f75 6e74 5f6f 7074 737d 6e6f 6465  _mount_opts}node
│ │ │ +001bebd0: 7620 3020 3022 2026 6774 3b26 6774 3b20  v 0 0" >> 
│ │ │ +001bebe0: 2f65 7463 2f66 7374 6162 0a20 2020 2023  /etc/fstab.    #
│ │ │ +001bebf0: 2049 6620 7468 6520 6d6f 756e 745f 6f70   If the mount_op
│ │ │ +001bec00: 7420 6f70 7469 6f6e 2069 7320 6e6f 7420  t option is not 
│ │ │ +001bec10: 616c 7265 6164 7920 696e 2074 6865 206d  already in the m
│ │ │ +001bec20: 6f75 6e74 2070 6f69 6e74 2773 202f 6574  ount point's /et
│ │ │ +001bec30: 632f 6673 7461 6220 656e 7472 792c 2061  c/fstab entry, a
│ │ │ +001bec40: 6464 2069 740a 2020 2020 656c 6966 2021  dd it.    elif !
│ │ │ +001bec50: 2067 7265 7020 2224 6d6f 756e 745f 706f   grep "$mount_po
│ │ │ +001bec60: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001bec70: 2220 2f65 7463 2f66 7374 6162 207c 2067  " /etc/fstab | g
│ │ │ +001bec80: 7265 7020 2d71 2022 6e6f 6465 7622 3b20  rep -q "nodev"; 
│ │ │ +001bec90: 7468 656e 0a20 2020 2020 2020 2070 7265  then.        pre
│ │ │ +001beca0: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001becb0: 3d24 2867 7265 7020 2224 6d6f 756e 745f  =$(grep "$mount_
│ │ │ +001becc0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001becd0: 7870 2220 2f65 7463 2f66 7374 6162 207c  xp" /etc/fstab |
│ │ │ +001bece0: 2061 776b 2027 7b70 7269 6e74 2024 347d   awk '{print $4}
│ │ │ +001becf0: 2729 0a20 2020 2020 2020 2073 6564 202d  ').        sed -
│ │ │ +001bed00: 6920 2273 7c5c 2824 7b6d 6f75 6e74 5f70  i "s|\(${mount_p
│ │ │ +001bed10: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001bed20: 707d 2e2a 247b 7072 6576 696f 7573 5f6d  p}.*${previous_m
│ │ │ +001bed30: 6f75 6e74 5f6f 7074 737d 5c29 7c5c 312c  ount_opts}\)|\1,
│ │ │ +001bed40: 6e6f 6465 767c 2220 2f65 7463 2f66 7374  nodev|" /etc/fst
│ │ │ +001bed50: 6162 0a20 2020 2066 690a 0a0a 2020 2020  ab.    fi...    
│ │ │ +001bed60: 6966 206d 6b64 6972 202d 7020 222f 7661  if mkdir -p "/va
│ │ │ +001bed70: 7222 3b20 7468 656e 0a20 2020 2020 2020  r"; then.       
│ │ │ +001bed80: 2069 6620 6d6f 756e 7470 6f69 6e74 202d   if mountpoint -
│ │ │ +001bed90: 7120 222f 7661 7222 3b20 7468 656e 0a20  q "/var"; then. 
│ │ │ +001beda0: 2020 2020 2020 2020 2020 206d 6f75 6e74             mount
│ │ │ +001bedb0: 202d 6f20 7265 6d6f 756e 7420 2d2d 7461   -o remount --ta
│ │ │ +001bedc0: 7267 6574 2022 2f76 6172 220a 2020 2020  rget "/var".    
│ │ │ +001bedd0: 2020 2020 6669 0a20 2020 2066 690a 7d0a      fi.    fi.}.
│ │ │ +001bede0: 0a70 6572 666f 726d 5f72 656d 6564 6961  .perform_remedia
│ │ │ +001bedf0: 7469 6f6e 0a0a 656c 7365 0a20 2020 2026  tion..else.    &
│ │ │ +001bee00: 6774 3b26 616d 703b 3220 6563 686f 2027  gt;&2 echo '
│ │ │ +001bee10: 5265 6d65 6469 6174 696f 6e20 6973 206e  Remediation is n
│ │ │ +001bee20: 6f74 2061 7070 6c69 6361 626c 652c 206e  ot applicable, n
│ │ │ +001bee30: 6f74 6869 6e67 2077 6173 2064 6f6e 6527  othing was done'
│ │ │ +001bee40: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.
Remediation │ │ │ +001bef00: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ +001bef10: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ +001befa0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +001befc0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +001befd0: 7464 3e68 6967 683c 2f74 643e 3c2f 7472 td>highReboot: │ │ │ +001beff0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +001bf010: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ +001bf040: 636f 6465 3e0a 7061 7274 202f 7661 7220  code>.part /var 
│ │ │ +001bf050: 2d2d 6d6f 756e 746f 7074 696f 6e73 3d22  --mountoptions="
│ │ │ +001bf060: 6e6f 6465 7622 0a3c 2f63 6f64 653e 3c2f  nodev".
│ │ │ 001bf080: 3c2f 7464 3e3c 2f74 723e 3c2f 7462 6f64 < │ │ │ 001bf0a0: 2f74 723e 3c74 7220 6461 7461 2d74 742d /tr>Remediation │ │ │ -001bf970: 2041 6e61 636f 6e64 6120 736e 6970 7065 Anaconda snippe │ │ │ -001bf980: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -001bfa00: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -001bfa10: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -001bfa30: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -001bfa40: 3c74 643e 6869 6768 3c2f 7464 3e3c 2f74 highReboot │ │ │ -001bfa60: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -001bfa70: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -001bfa90: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ -001bfab0: 3c63 6f64 653e 0a70 6172 7420 2f76 6172  .part /var
│ │ │ -001bfac0: 202d 2d6d 6f75 6e74 6f70 7469 6f6e 733d   --mountoptions=
│ │ │ -001bfad0: 226e 6f73 7569 6422 0a3c 2f63 6f64 653e  "nosuid".
│ │ │ -001bfae0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -001bfb90: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -001bfba0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -001bfbb0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -001bfbe0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -001bfc50: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption: │ │ │ -001bfc70: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -001bfca0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Comple │ │ │ -001bfc30: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -001bfc40: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
high
Reb │ │ │ -001bfc80: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -001bfc90: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:configure< │ │ │ -001bfcc0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -001bfce0: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ -001bfcf0: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ -001bfd00: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ -001bfd10: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ -001bfd20: 2020 7461 6773 3a0a 2020 2d20 636f 6e66    tags:.  - conf
│ │ │ -001bfd30: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -001bfd40: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -001bfd50: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -001bfd60: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -001bfd70: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -001bfd80: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6e  unt_option_var_n
│ │ │ -001bfd90: 6f73 7569 640a 2020 2d20 6e6f 5f72 6562  osuid.  - no_reb
│ │ │ -001bfda0: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61  oot_needed..- na
│ │ │ -001bfdb0: 6d65 3a20 2741 6464 206e 6f73 7569 6420  me: 'Add nosuid 
│ │ │ -001bfdc0: 4f70 7469 6f6e 2074 6f20 2f76 6172 3a20  Option to /var: 
│ │ │ -001bfdd0: 4368 6563 6b20 696e 666f 726d 6174 696f  Check informatio
│ │ │ -001bfde0: 6e20 6173 736f 6369 6174 6564 2074 6f20  n associated to 
│ │ │ -001bfdf0: 6d6f 756e 7470 6f69 6e74 270a 2020 616e  mountpoint'.  an
│ │ │ -001bfe00: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ -001bfe10: 6d6d 616e 643a 2066 696e 646d 6e74 202d  mmand: findmnt -
│ │ │ -001bfe20: 2d66 7374 6162 2027 2f76 6172 270a 2020  -fstab '/var'.  
│ │ │ -001bfe30: 7265 6769 7374 6572 3a20 6465 7669 6365  register: device
│ │ │ -001bfe40: 5f6e 616d 650a 2020 6661 696c 6564 5f77  _name.  failed_w
│ │ │ -001bfe50: 6865 6e3a 2064 6576 6963 655f 6e61 6d65  hen: device_name
│ │ │ -001bfe60: 2e72 6320 2667 743b 2031 0a20 2063 6861  .rc > 1.  cha
│ │ │ -001bfe70: 6e67 6564 5f77 6865 6e3a 2066 616c 7365  nged_when: false
│ │ │ -001bfe80: 0a20 2063 6865 636b 5f6d 6f64 653a 2066  .  check_mode: f
│ │ │ -001bfe90: 616c 7365 0a20 2077 6865 6e3a 0a20 202d  alse.  when:.  -
│ │ │ -001bfea0: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ -001bfeb0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001bfec0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001bfed0: 2272 706d 2d6f 7374 7265 6522 2069 6e20  "rpm-ostree" in 
│ │ │ -001bfee0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001bfef0: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001bff00: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -001bff10: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001bff20: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ -001bff30: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ -001bff40: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001bff50: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001bff60: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001bff70: 6c65 5f70 726f 635f 636d 646c 696e 6520  le_proc_cmdline 
│ │ │ -001bff80: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ -001bff90: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ -001bffa0: 6f6e 5f74 7970 6520 696e 0a20 2020 205b  on_type in.    [
│ │ │ -001bffb0: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -001bffc0: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -001bffd0: 616e 222c 2022 636f 6e74 6169 6e65 7222  an", "container"
│ │ │ -001bffe0: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ -001bfff0: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ -001c0000: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ -001c0010: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ -001c0020: 6973 7427 0a20 2074 6167 733a 0a20 202d  ist'.  tags:.  -
│ │ │ -001c0030: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ -001c0040: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ -001c0050: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -001c0060: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -001c0070: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -001c0080: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ -001c0090: 7661 725f 6e6f 7375 6964 0a20 202d 206e  var_nosuid.  - n
│ │ │ -001c00a0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -001c00b0: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ -001c00c0: 7375 6964 204f 7074 696f 6e20 746f 202f  suid Option to /
│ │ │ -001c00d0: 7661 723a 2043 7265 6174 6520 6d6f 756e  var: Create moun
│ │ │ -001c00e0: 745f 696e 666f 2064 6963 7469 6f6e 6172  t_info dictionar
│ │ │ -001c00f0: 7920 7661 7269 6162 6c65 270a 2020 7365  y variable'.  se
│ │ │ -001c0100: 745f 6661 6374 3a0a 2020 2020 6d6f 756e  t_fact:.    moun
│ │ │ -001c0110: 745f 696e 666f 3a20 277b 7b20 6d6f 756e  t_info: '{{ moun
│ │ │ -001c0120: 745f 696e 666f 7c64 6566 6175 6c74 287b  t_info|default({
│ │ │ -001c0130: 7d29 7c63 6f6d 6269 6e65 287b 6974 656d  })|combine({item
│ │ │ -001c0140: 2e30 3a20 6974 656d 2e31 7d29 207d 7d27  .0: item.1}) }}'
│ │ │ -001c0150: 0a20 2077 6974 685f 746f 6765 7468 6572  .  with_together
│ │ │ -001c0160: 3a0a 2020 2d20 277b 7b20 6465 7669 6365  :.  - '{{ device
│ │ │ -001c0170: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ -001c0180: 6573 5b30 5d2e 7370 6c69 7428 2920 7c20  es[0].split() | 
│ │ │ -001c0190: 6d61 7028 2727 6c6f 7765 7227 2729 207c  map(''lower'') |
│ │ │ -001c01a0: 206c 6973 7420 7d7d 270a 2020 2d20 277b   list }}'.  - '{
│ │ │ -001c01b0: 7b20 6465 7669 6365 5f6e 616d 652e 7374  { device_name.st
│ │ │ -001c01c0: 646f 7574 5f6c 696e 6573 5b31 5d2e 7370  dout_lines[1].sp
│ │ │ -001c01d0: 6c69 7428 2920 7c20 6c69 7374 207d 7d27  lit() | list }}'
│ │ │ -001c01e0: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ -001c01f0: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ -001c0200: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001c0210: 6163 6b61 6765 7320 616e 6420 2272 706d  ackages and "rpm
│ │ │ -001c0220: 2d6f 7374 7265 6522 2069 6e20 616e 7369  -ostree" in ansi
│ │ │ -001c0230: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001c0240: 6573 0a20 2020 2061 6e64 2022 626f 6f74  es.    and "boot
│ │ │ -001c0250: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ -001c0260: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001c0270: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ -001c0280: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ -001c0290: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001c02a0: 6573 0a20 2020 2061 6e64 2022 6f73 7472  es.    and "ostr
│ │ │ -001c02b0: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ -001c02c0: 726f 635f 636d 646c 696e 6520 2920 616e  roc_cmdline ) an
│ │ │ -001c02d0: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ -001c02e0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ -001c02f0: 7970 6520 696e 0a20 2020 205b 2264 6f63  ype in.    ["doc
│ │ │ -001c0300: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ -001c0310: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ -001c0320: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ -001c0330: 290a 2020 2d20 2722 2f76 6172 2220 696e  ).  - '"/var" in
│ │ │ -001c0340: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ -001c0350: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ -001c0360: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ -001c0370: 0a20 202d 2064 6576 6963 655f 6e61 6d65  .  - device_name
│ │ │ -001c0380: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ -001c0390: 6564 2061 6e64 2064 6576 6963 655f 6e61  ed and device_na
│ │ │ -001c03a0: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320  me.stdout_lines 
│ │ │ -001c03b0: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ -001c03c0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001c03d0: 7574 207c 206c 656e 6774 6820 2667 743b  ut | length >
│ │ │ -001c03e0: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ -001c03f0: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ -001c0400: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ -001c0410: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ -001c0420: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ -001c0430: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -001c0440: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76  - mount_option_v
│ │ │ -001c0450: 6172 5f6e 6f73 7569 640a 2020 2d20 6e6f  ar_nosuid.  - no
│ │ │ -001c0460: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ -001c0470: 2d20 6e61 6d65 3a20 2741 6464 206e 6f73  - name: 'Add nos
│ │ │ -001c0480: 7569 6420 4f70 7469 6f6e 2074 6f20 2f76  uid Option to /v
│ │ │ -001c0490: 6172 3a20 4966 202f 7661 7220 6e6f 7420  ar: If /var not 
│ │ │ -001c04a0: 6d6f 756e 7465 642c 2063 7261 6674 206d  mounted, craft m
│ │ │ -001c04b0: 6f75 6e74 5f69 6e66 6f20 6d61 6e75 616c  ount_info manual
│ │ │ -001c04c0: 6c79 270a 2020 7365 745f 6661 6374 3a0a  ly'.  set_fact:.
│ │ │ -001c04d0: 2020 2020 6d6f 756e 745f 696e 666f 3a20      mount_info: 
│ │ │ -001c04e0: 277b 7b20 6d6f 756e 745f 696e 666f 7c64  '{{ mount_info|d
│ │ │ -001c04f0: 6566 6175 6c74 287b 7d29 7c63 6f6d 6269  efault({})|combi
│ │ │ -001c0500: 6e65 287b 6974 656d 2e30 3a20 6974 656d  ne({item.0: item
│ │ │ -001c0510: 2e31 7d29 207d 7d27 0a20 2077 6974 685f  .1}) }}'.  with_
│ │ │ -001c0520: 746f 6765 7468 6572 3a0a 2020 2d20 2d20  together:.  - - 
│ │ │ -001c0530: 7461 7267 6574 0a20 2020 202d 2073 6f75  target.    - sou
│ │ │ -001c0540: 7263 650a 2020 2020 2d20 6673 7479 7065  rce.    - fstype
│ │ │ -001c0550: 0a20 2020 202d 206f 7074 696f 6e73 0a20  .    - options. 
│ │ │ -001c0560: 202d 202d 202f 7661 720a 2020 2020 2d20   - - /var.    - 
│ │ │ -001c0570: 2727 0a20 2020 202d 2027 270a 2020 2020  ''.    - ''.    
│ │ │ -001c0580: 2d20 6465 6661 756c 7473 0a20 2077 6865  - defaults.  whe
│ │ │ -001c0590: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ -001c05a0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -001c05b0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001c05c0: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ -001c05d0: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ -001c05e0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001c05f0: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -001c0600: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001c0610: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ -001c0620: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001c0630: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001c0640: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001c0650: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -001c0660: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -001c0670: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ -001c0680: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001c0690: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001c06a0: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ -001c06b0: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -001c06c0: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ -001c06d0: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001c06e0: 2722 2f76 6172 2220 696e 2061 6e73 6962  '"/var" in ansib
│ │ │ -001c06f0: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ -001c0700: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ -001c0710: 2229 207c 206c 6973 7427 0a20 202d 2028  ") | list'.  - (
│ │ │ -001c0720: 222d 2d66 7374 6162 2220 7c20 6c65 6e67  "--fstab" | leng
│ │ │ -001c0730: 7468 203d 3d20 3029 0a20 202d 2064 6576  th == 0).  - dev
│ │ │ -001c0740: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ -001c0750: 6973 2064 6566 696e 6564 2061 6e64 2064  is defined and d
│ │ │ -001c0760: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001c0770: 745f 6c69 6e65 7320 6973 2064 6566 696e  t_lines is defin
│ │ │ -001c0780: 6564 0a20 202d 2028 6465 7669 6365 5f6e  ed.  - (device_n
│ │ │ -001c0790: 616d 652e 7374 646f 7574 207c 206c 656e  ame.stdout | len
│ │ │ -001c07a0: 6774 6820 3d3d 2030 290a 2020 7461 6773  gth == 0).  tags
│ │ │ -001c07b0: 3a0a 2020 2d20 636f 6e66 6967 7572 655f  :.  - configure_
│ │ │ -001c07c0: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001c07d0: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001c07e0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001c07f0: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001c0800: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001c0810: 7469 6f6e 5f76 6172 5f6e 6f73 7569 640a  tion_var_nosuid.
│ │ │ -001c0820: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001c0830: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ -001c0840: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ -001c0850: 2074 6f20 2f76 6172 3a20 4d61 6b65 2073   to /var: Make s
│ │ │ -001c0860: 7572 6520 6e6f 7375 6964 206f 7074 696f  ure nosuid optio
│ │ │ -001c0870: 6e20 6973 2070 6172 7420 6f66 2074 6865  n is part of the
│ │ │ -001c0880: 2074 6f20 2f76 6172 0a20 2020 206f 7074   to /var.    opt
│ │ │ -001c0890: 696f 6e73 270a 2020 7365 745f 6661 6374  ions'.  set_fact
│ │ │ -001c08a0: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ -001c08b0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001c08c0: 207c 2063 6f6d 6269 6e65 2820 7b27 276f   | combine( {''o
│ │ │ -001c08d0: 7074 696f 6e73 2727 3a27 2727 277e 286d  ptions'':''''~(m
│ │ │ -001c08e0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -001c08f0: 7320 7c0a 2020 2020 2020 6465 6661 756c  s |.      defaul
│ │ │ -001c0900: 7428 2727 2727 2929 7e28 2727 2c27 2720  t(''''))~('','' 
│ │ │ -001c0910: 6966 2028 6d6f 756e 745f 696e 666f 2e6f  if (mount_info.o
│ │ │ -001c0920: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ -001c0930: 2827 2727 2729 2920 656c 7365 2027 2727  ('''')) else '''
│ │ │ -001c0940: 2729 7e27 276e 6f73 7569 6427 270a 2020  ')~''nosuid''.  
│ │ │ -001c0950: 2020 2020 7d29 207d 7d27 0a20 2077 6865      }) }}'.  whe
│ │ │ -001c0960: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ -001c0970: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -001c0980: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001c0990: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ -001c09a0: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ -001c09b0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001c09c0: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -001c09d0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001c09e0: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ -001c09f0: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001c0a00: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001c0a10: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001c0a20: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -001c0a30: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -001c0a40: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ -001c0a50: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001c0a60: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001c0a70: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ -001c0a80: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -001c0a90: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ -001c0aa0: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001c0ab0: 2722 2f76 6172 2220 696e 2061 6e73 6962  '"/var" in ansib
│ │ │ -001c0ac0: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ -001c0ad0: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ -001c0ae0: 2229 207c 206c 6973 7427 0a20 202d 206d  ") | list'.  - m
│ │ │ -001c0af0: 6f75 6e74 5f69 6e66 6f20 6973 2064 6566  ount_info is def
│ │ │ -001c0b00: 696e 6564 2061 6e64 2022 6e6f 7375 6964  ined and "nosuid
│ │ │ -001c0b10: 2220 6e6f 7420 696e 2028 6d6f 756e 745f  " not in (mount_
│ │ │ -001c0b20: 696e 666f 2e6f 7074 696f 6e73 207c 2064  info.options | d
│ │ │ -001c0b30: 6566 6175 6c74 2827 2729 290a 2020 7461  efault('')).  ta
│ │ │ -001c0b40: 6773 3a0a 2020 2d20 636f 6e66 6967 7572  gs:.  - configur
│ │ │ -001c0b50: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -001c0b60: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -001c0b70: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001c0b80: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -001c0b90: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ -001c0ba0: 6f70 7469 6f6e 5f76 6172 5f6e 6f73 7569  option_var_nosui
│ │ │ -001c0bb0: 640a 2020 2d20 6e6f 5f72 6562 6f6f 745f  d.  - no_reboot_
│ │ │ -001c0bc0: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ -001c0bd0: 2741 6464 206e 6f73 7569 6420 4f70 7469  'Add nosuid Opti
│ │ │ -001c0be0: 6f6e 2074 6f20 2f76 6172 3a20 456e 7375  on to /var: Ensu
│ │ │ -001c0bf0: 7265 202f 7661 7220 6973 206d 6f75 6e74  re /var is mount
│ │ │ -001c0c00: 6564 2077 6974 6820 6e6f 7375 6964 206f  ed with nosuid o
│ │ │ -001c0c10: 7074 696f 6e27 0a20 2061 6e73 6962 6c65  ption'.  ansible
│ │ │ -001c0c20: 2e70 6f73 6978 2e6d 6f75 6e74 3a0a 2020  .posix.mount:.  
│ │ │ -001c0c30: 2020 7061 7468 3a20 2f76 6172 0a20 2020    path: /var.   
│ │ │ -001c0c40: 2073 7263 3a20 277b 7b20 6d6f 756e 745f   src: '{{ mount_
│ │ │ -001c0c50: 696e 666f 2e73 6f75 7263 6520 7c20 6465  info.source | de
│ │ │ -001c0c60: 6661 756c 7428 2727 2727 2920 7d7d 270a  fault('''') }}'.
│ │ │ -001c0c70: 2020 2020 6f70 7473 3a20 277b 7b20 6d6f      opts: '{{ mo
│ │ │ -001c0c80: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ -001c0c90: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ -001c0ca0: 207d 7d27 0a20 2020 2073 7461 7465 3a20   }}'.    state: 
│ │ │ -001c0cb0: 6d6f 756e 7465 640a 2020 2020 6673 7479  mounted.    fsty
│ │ │ -001c0cc0: 7065 3a20 277b 7b20 6d6f 756e 745f 696e  pe: '{{ mount_in
│ │ │ -001c0cd0: 666f 2e66 7374 7970 6520 7c20 6465 6661  fo.fstype | defa
│ │ │ -001c0ce0: 756c 7428 2727 2727 2920 7d7d 270a 2020  ult('''') }}'.  
│ │ │ -001c0cf0: 7265 6769 7374 6572 3a20 6d6f 756e 745f  register: mount_
│ │ │ -001c0d00: 7265 7375 6c74 0a20 2066 6169 6c65 645f  result.  failed_
│ │ │ -001c0d10: 7768 656e 3a0a 2020 2d20 6d6f 756e 745f  when:.  - mount_
│ │ │ -001c0d20: 7265 7375 6c74 2069 7320 6661 696c 6564  result is failed
│ │ │ -001c0d30: 0a20 202d 2027 2727 7461 7267 6574 2069  .  - '''target i
│ │ │ -001c0d40: 7320 6275 7379 2727 206e 6f74 2069 6e20  s busy'' not in 
│ │ │ -001c0d50: 286d 6f75 6e74 5f72 6573 756c 742e 6d73  (mount_result.ms
│ │ │ -001c0d60: 6720 7c20 6465 6661 756c 7428 2727 2727  g | default(''''
│ │ │ -001c0d70: 2929 270a 2020 2d20 2727 2761 6c72 6561  ))'.  - '''alrea
│ │ │ -001c0d80: 6479 206d 6f75 6e74 6564 2727 206e 6f74  dy mounted'' not
│ │ │ -001c0d90: 2069 6e20 286d 6f75 6e74 5f72 6573 756c   in (mount_resul
│ │ │ -001c0da0: 742e 6d73 6720 7c20 6465 6661 756c 7428  t.msg | default(
│ │ │ -001c0db0: 2727 2727 2929 270a 2020 7768 656e 3a0a  ''''))'.  when:.
│ │ │ -001c0dc0: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ -001c0dd0: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -001c0de0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001c0df0: 6e64 2022 7270 6d2d 6f73 7472 6565 2220  nd "rpm-ostree" 
│ │ │ -001c0e00: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001c0e10: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001c0e20: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ -001c0e30: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001c0e40: 6765 7320 616e 6420 6e6f 7420 226f 7065  ges and not "ope
│ │ │ -001c0e50: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ -001c0e60: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001c0e70: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001c0e80: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ -001c0e90: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ -001c0ea0: 6e65 2029 2061 6e64 206e 6f74 2028 2061  ne ) and not ( a
│ │ │ -001c0eb0: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ -001c0ec0: 6174 696f 6e5f 7479 7065 2069 6e0a 2020  ation_type in.  
│ │ │ -001c0ed0: 2020 5b22 646f 636b 6572 222c 2022 6c78    ["docker", "lx
│ │ │ -001c0ee0: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ -001c0ef0: 6f64 6d61 6e22 2c20 2263 6f6e 7461 696e  odman", "contain
│ │ │ -001c0f00: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ -001c0f10: 7661 7222 2069 6e20 616e 7369 626c 655f  var" in ansible_
│ │ │ -001c0f20: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ -001c0f30: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ -001c0f40: 7c20 6c69 7374 270a 2020 2d20 6d6f 756e  | list'.  - moun
│ │ │ -001c0f50: 745f 696e 666f 2069 7320 6465 6669 6e65  t_info is define
│ │ │ -001c0f60: 640a 2020 2d20 2864 6576 6963 655f 6e61  d.  - (device_na
│ │ │ -001c0f70: 6d65 2e73 7464 6f75 7420 6973 2064 6566  me.stdout is def
│ │ │ -001c0f80: 696e 6564 2061 6e64 2028 6465 7669 6365  ined and (device
│ │ │ -001c0f90: 5f6e 616d 652e 7374 646f 7574 207c 206c  _name.stdout | l
│ │ │ -001c0fa0: 656e 6774 6820 2667 743b 2030 2929 206f  ength > 0)) o
│ │ │ -001c0fb0: 7220 2822 2d2d 6673 7461 6222 0a20 2020  r ("--fstab".   
│ │ │ -001c0fc0: 207c 206c 656e 6774 6820 3d3d 2030 290a   | length == 0).
│ │ │ -001c0fd0: 2020 7461 6773 3a0a 2020 2d20 636f 6e66    tags:.  - conf
│ │ │ -001c0fe0: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -001c0ff0: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -001c1000: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -001c1010: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -001c1020: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -001c1030: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6e  unt_option_var_n
│ │ │ -001c1040: 6f73 7569 640a 2020 2d20 6e6f 5f72 6562  osuid.  - no_reb
│ │ │ -001c1050: 6f6f 745f 6e65 6564 6564 0a3c 2f63 6f64  oot_needed.
Remed │ │ │ -001c1110: 6961 7469 6f6e 2053 6865 6c6c 2073 6372 iation Shell scr │ │ │ -001c1120: 6970 7420 e287 b23c 2f61 3e3c 6272 3e3c ipt ...
< │ │ │ -001c1130: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -001c1140: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -001c1150: 7365 2220 6964 3d22 6964 3438 3922 3e3c se" id="id489">< │ │ │ -001c1160: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -001c1170: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -001c1180: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -001c1190: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -001c11a0: 3e3c 7472 3e3c 7468 3e52 6562 6f6f 743a >Reboot: │ │ │ -001c11b0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -001c11d0: 3c70 7265 3e3c 636f 6465 3e23 2052 656d
# Rem
│ │ │ -001c11e0: 6564 6961 7469 6f6e 2069 7320 6170 706c  ediation is appl
│ │ │ -001c11f0: 6963 6162 6c65 206f 6e6c 7920 696e 2063  icable only in c
│ │ │ -001c1200: 6572 7461 696e 2070 6c61 7466 6f72 6d73  ertain platforms
│ │ │ -001c1210: 0a69 6620 2820 2120 2820 7b20 7270 6d20  .if ( ! ( { rpm 
│ │ │ -001c1220: 2d2d 7175 6965 7420 2d71 206b 6572 6e65  --quiet -q kerne
│ │ │ -001c1230: 6c20 3b7d 2026 616d 703b 2661 6d70 3b20  l ;} && 
│ │ │ -001c1240: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ -001c1250: 2072 706d 2d6f 7374 7265 6520 3b7d 2026   rpm-ostree ;} &
│ │ │ -001c1260: 616d 703b 2661 6d70 3b20 7b20 7270 6d20  amp;& { rpm 
│ │ │ -001c1270: 2d2d 7175 6965 7420 2d71 2062 6f6f 7463  --quiet -q bootc
│ │ │ -001c1280: 203b 7d20 2661 6d70 3b26 616d 703b 207b   ;} && {
│ │ │ -001c1290: 2021 2072 706d 202d 2d71 7569 6574 202d   ! rpm --quiet -
│ │ │ -001c12a0: 7120 6f70 656e 7368 6966 742d 6b75 6265  q openshift-kube
│ │ │ -001c12b0: 6c65 7420 3b7d 2026 616d 703b 2661 6d70  let ;} &&
│ │ │ -001c12c0: 3b20 285b 202d 6620 2f72 756e 2f6f 7374  ; ([ -f /run/ost
│ │ │ -001c12d0: 7265 652d 626f 6f74 6564 205d 207c 7c20  ree-booted ] || 
│ │ │ -001c12e0: 5b20 2d4c 202f 6f73 7472 6565 205d 2920  [ -L /ostree ]) 
│ │ │ -001c12f0: 2920 2661 6d70 3b26 616d 703b 2021 2028  ) && ! (
│ │ │ -001c1300: 205b 202d 6620 2f2e 646f 636b 6572 656e   [ -f /.dockeren
│ │ │ -001c1310: 7620 5d20 7c7c 205b 202d 6620 2f72 756e  v ] || [ -f /run
│ │ │ -001c1320: 2f2e 636f 6e74 6169 6e65 7265 6e76 205d  /.containerenv ]
│ │ │ -001c1330: 2029 2029 2026 616d 703b 2661 6d70 3b20   ) ) && 
│ │ │ -001c1340: 7b20 2820 6669 6e64 6d6e 7420 2d2d 6b65  { ( findmnt --ke
│ │ │ -001c1350: 726e 656c 2022 2f76 6172 2220 2667 743b  rnel "/var" >
│ │ │ -001c1360: 202f 6465 762f 6e75 6c6c 207c 7c20 6669   /dev/null || fi
│ │ │ -001c1370: 6e64 6d6e 7420 2d2d 6673 7461 6220 222f  ndmnt --fstab "/
│ │ │ -001c1380: 7661 7222 2026 6774 3b20 2f64 6576 2f6e  var" > /dev/n
│ │ │ -001c1390: 756c 6c20 293b 207d 3b20 7468 656e 0a0a  ull ); }; then..
│ │ │ -001c13a0: 6675 6e63 7469 6f6e 2070 6572 666f 726d  function perform
│ │ │ -001c13b0: 5f72 656d 6564 6961 7469 6f6e 207b 0a0a  _remediation {..
│ │ │ -001c13c0: 2020 2020 0a20 2020 2020 2020 2023 2074      .        # t
│ │ │ -001c13d0: 6865 206d 6f75 6e74 2070 6f69 6e74 202f  he mount point /
│ │ │ -001c13e0: 7661 7220 6861 7320 746f 2062 6520 6465  var has to be de
│ │ │ -001c13f0: 6669 6e65 6420 696e 202f 6574 632f 6673  fined in /etc/fs
│ │ │ -001c1400: 7461 620a 2020 2020 2020 2020 2320 6265  tab.        # be
│ │ │ -001c1410: 666f 7265 2074 6869 7320 7265 6d65 6469  fore this remedi
│ │ │ -001c1420: 6174 696f 6e20 6361 6e20 6265 2065 7865  ation can be exe
│ │ │ -001c1430: 6375 7465 642e 2049 6e20 6361 7365 2069  cuted. In case i
│ │ │ -001c1440: 7420 6973 206e 6f74 2064 6566 696e 6564  t is not defined
│ │ │ -001c1450: 2c20 7468 650a 2020 2020 2020 2020 2320  , the.        # 
│ │ │ -001c1460: 7265 6d65 6469 6174 696f 6e20 6162 6f72  remediation abor
│ │ │ -001c1470: 7473 2061 6e64 206e 6f20 6368 616e 6765  ts and no change
│ │ │ -001c1480: 7320 7265 6761 7264 696e 6720 7468 6520  s regarding the 
│ │ │ -001c1490: 6d6f 756e 7420 706f 696e 7420 6172 6520  mount point are 
│ │ │ -001c14a0: 646f 6e65 2e0a 2020 2020 2020 2020 6d6f  done..        mo
│ │ │ -001c14b0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001c14c0: 7265 6765 7870 3d22 2428 7072 696e 7466  regexp="$(printf
│ │ │ -001c14d0: 2022 5e5b 5b3a 7370 6163 653a 5d5d 2a5b   "^[[:space:]]*[
│ │ │ -001c14e0: 5e23 5d2e 2a5b 5b3a 7370 6163 653a 5d5d  ^#].*[[:space:]]
│ │ │ -001c14f0: 2573 5b5b 3a73 7061 6365 3a5d 5d22 2022  %s[[:space:]]" "
│ │ │ -001c1500: 2f76 6172 2229 220a 0a20 2020 2067 7265  /var")"..    gre
│ │ │ -001c1510: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001c1520: 6d61 7463 685f 7265 6765 7870 2220 2d71  match_regexp" -q
│ │ │ -001c1530: 202f 6574 632f 6673 7461 6220 5c0a 2020   /etc/fstab \.  
│ │ │ -001c1540: 2020 2020 2020 7c7c 207b 2065 6368 6f20        || { echo 
│ │ │ -001c1550: 2254 6865 206d 6f75 6e74 2070 6f69 6e74  "The mount point
│ │ │ -001c1560: 2027 2f76 6172 2720 6973 206e 6f74 2065   '/var' is not e
│ │ │ -001c1570: 7665 6e20 696e 202f 6574 632f 6673 7461  ven in /etc/fsta
│ │ │ -001c1580: 622c 2073 6f20 7765 2063 616e 2774 2073  b, so we can't s
│ │ │ -001c1590: 6574 2075 7020 6d6f 756e 7420 6f70 7469  et up mount opti
│ │ │ -001c15a0: 6f6e 7322 2026 6774 3b26 616d 703b 323b  ons" >&2;
│ │ │ -001c15b0: 0a20 2020 2020 2020 2020 2020 2020 2020  .               
│ │ │ -001c15c0: 2065 6368 6f20 224e 6f74 2072 656d 6564   echo "Not remed
│ │ │ -001c15d0: 6961 7469 6e67 2c20 6265 6361 7573 6520  iating, because 
│ │ │ -001c15e0: 7468 6572 6520 6973 206e 6f20 7265 636f  there is no reco
│ │ │ -001c15f0: 7264 206f 6620 2f76 6172 2069 6e20 2f65  rd of /var in /e
│ │ │ -001c1600: 7463 2f66 7374 6162 2220 2667 743b 2661  tc/fstab" >&a
│ │ │ -001c1610: 6d70 3b32 3b20 7265 7475 726e 2031 3b20  mp;2; return 1; 
│ │ │ -001c1620: 7d0a 2020 2020 0a0a 0a20 2020 206d 6f75  }.    ...    mou
│ │ │ -001c1630: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001c1640: 6567 6578 703d 2224 2870 7269 6e74 6620  egexp="$(printf 
│ │ │ -001c1650: 225e 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e  "^[[:space:]]*[^
│ │ │ -001c1660: 235d 2e2a 5b5b 3a73 7061 6365 3a5d 5d25  #].*[[:space:]]%
│ │ │ -001c1670: 735b 5b3a 7370 6163 653a 5d5d 2220 2f76  s[[:space:]]" /v
│ │ │ -001c1680: 6172 2922 0a0a 2020 2020 2320 4966 2074  ar)"..    # If t
│ │ │ -001c1690: 6865 206d 6f75 6e74 2070 6f69 6e74 2069  he mount point i
│ │ │ -001c16a0: 7320 6e6f 7420 696e 202f 6574 632f 6673  s not in /etc/fs
│ │ │ -001c16b0: 7461 622c 2067 6574 2070 7265 7669 6f75  tab, get previou
│ │ │ -001c16c0: 7320 6d6f 756e 7420 6f70 7469 6f6e 7320  s mount options 
│ │ │ -001c16d0: 6672 6f6d 202f 6574 632f 6d74 6162 0a20  from /etc/mtab. 
│ │ │ -001c16e0: 2020 2069 6620 2120 6772 6570 202d 7120     if ! grep -q 
│ │ │ -001c16f0: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ -001c1700: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ -001c1710: 2f66 7374 6162 3b20 7468 656e 0a20 2020  /fstab; then.   
│ │ │ -001c1720: 2020 2020 2023 2072 756e 7469 6d65 206f       # runtime o
│ │ │ -001c1730: 7074 7320 7769 7468 6f75 7420 736f 6d65  pts without some
│ │ │ -001c1740: 2061 7574 6f6d 6174 6963 206b 6572 6e65   automatic kerne
│ │ │ -001c1750: 6c2f 7573 6572 7370 6163 652d 6164 6465  l/userspace-adde
│ │ │ -001c1760: 6420 6465 6661 756c 7473 0a20 2020 2020  d defaults.     
│ │ │ -001c1770: 2020 2070 7265 7669 6f75 735f 6d6f 756e     previous_moun
│ │ │ -001c1780: 745f 6f70 7473 3d24 2867 7265 7020 2224  t_opts=$(grep "$
│ │ │ -001c1790: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001c17a0: 685f 7265 6765 7870 2220 2f65 7463 2f6d  h_regexp" /etc/m
│ │ │ -001c17b0: 7461 6220 7c20 6865 6164 202d 3120 7c20  tab | head -1 | 
│ │ │ -001c17c0: 2061 776b 2027 7b70 7269 6e74 2024 347d   awk '{print $4}
│ │ │ -001c17d0: 2720 5c0a 2020 2020 2020 2020 2020 2020  ' \.            
│ │ │ -001c17e0: 2020 2020 2020 2020 7c20 7365 6420 2d45          | sed -E
│ │ │ -001c17f0: 2022 732f 2872 777c 6465 6661 756c 7473   "s/(rw|defaults
│ │ │ -001c1800: 7c73 6563 6c61 6265 6c7c 6e6f 7375 6964  |seclabel|nosuid
│ │ │ -001c1810: 2928 2c7c 2429 2f2f 673b 732f 2c24 2f2f  )(,|$)//g;s/,$//
│ │ │ -001c1820: 2229 0a20 2020 2020 2020 205b 2022 2470  ").        [ "$p
│ │ │ -001c1830: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001c1840: 7473 2220 5d20 2661 6d70 3b26 616d 703b  ts" ] &&
│ │ │ -001c1850: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ -001c1860: 6f70 7473 2b3d 222c 220a 2020 2020 2020  opts+=",".      
│ │ │ -001c1870: 2020 2320 496e 2069 736f 3936 3630 2066    # In iso9660 f
│ │ │ -001c1880: 696c 6573 7973 7465 6d73 206d 7461 6220  ilesystems mtab 
│ │ │ -001c1890: 636f 756c 6420 6465 7363 7269 6265 2061  could describe a
│ │ │ -001c18a0: 2022 626c 6f63 6b73 697a 6522 2076 616c   "blocksize" val
│ │ │ -001c18b0: 7565 2c20 7468 6973 2073 686f 756c 6420  ue, this should 
│ │ │ -001c18c0: 6265 2072 6566 6c65 6374 6564 2069 6e0a  be reflected in.
│ │ │ -001c18d0: 2020 2020 2020 2020 2320 6673 7461 6220          # fstab 
│ │ │ -001c18e0: 6173 2022 626c 6f63 6b22 2e20 2054 6865  as "block".  The
│ │ │ -001c18f0: 206e 6578 7420 7661 7269 6162 6c65 2069   next variable i
│ │ │ -001c1900: 7320 746f 2073 6174 6973 6679 2073 6865  s to satisfy she
│ │ │ -001c1910: 6c6c 6368 6563 6b20 5343 3230 3530 2e0a  llcheck SC2050..
│ │ │ -001c1920: 2020 2020 2020 2020 6673 5f74 7970 653d          fs_type=
│ │ │ -001c1930: 2222 0a20 2020 2020 2020 2069 6620 5b20  "".        if [ 
│ │ │ -001c1940: 2022 2466 735f 7479 7065 2220 3d3d 2022   "$fs_type" == "
│ │ │ -001c1950: 6973 6f39 3636 3022 205d 203b 2074 6865  iso9660" ] ; the
│ │ │ -001c1960: 6e0a 2020 2020 2020 2020 2020 2020 7072  n.            pr
│ │ │ -001c1970: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001c1980: 733d 2428 7365 6420 2773 2f62 6c6f 636b  s=$(sed 's/block
│ │ │ -001c1990: 7369 7a65 3d2f 626c 6f63 6b3d 2f27 2026  size=/block=/' &
│ │ │ -001c19a0: 6c74 3b26 6c74 3b26 6c74 3b20 2224 7072  lt;<< "$pr
│ │ │ -001c19b0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001c19c0: 7322 290a 2020 2020 2020 2020 6669 0a20  s").        fi. 
│ │ │ -001c19d0: 2020 2020 2020 2065 6368 6f20 2220 2f76         echo " /v
│ │ │ -001c19e0: 6172 2020 6465 6661 756c 7473 2c24 7b70  ar  defaults,${p
│ │ │ -001c19f0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001c1a00: 7473 7d6e 6f73 7569 6420 3020 3022 2026  ts}nosuid 0 0" &
│ │ │ -001c1a10: 6774 3b26 6774 3b20 2f65 7463 2f66 7374  gt;> /etc/fst
│ │ │ -001c1a20: 6162 0a20 2020 2023 2049 6620 7468 6520  ab.    # If the 
│ │ │ -001c1a30: 6d6f 756e 745f 6f70 7420 6f70 7469 6f6e  mount_opt option
│ │ │ -001c1a40: 2069 7320 6e6f 7420 616c 7265 6164 7920   is not already 
│ │ │ -001c1a50: 696e 2074 6865 206d 6f75 6e74 2070 6f69  in the mount poi
│ │ │ -001c1a60: 6e74 2773 202f 6574 632f 6673 7461 6220  nt's /etc/fstab 
│ │ │ -001c1a70: 656e 7472 792c 2061 6464 2069 740a 2020  entry, add it.  
│ │ │ -001c1a80: 2020 656c 6966 2021 2067 7265 7020 2224    elif ! grep "$
│ │ │ -001c1a90: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001c1aa0: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ -001c1ab0: 7374 6162 207c 2067 7265 7020 2d71 2022  stab | grep -q "
│ │ │ -001c1ac0: 6e6f 7375 6964 223b 2074 6865 6e0a 2020  nosuid"; then.  
│ │ │ -001c1ad0: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ -001c1ae0: 6f75 6e74 5f6f 7074 733d 2428 6772 6570  ount_opts=$(grep
│ │ │ -001c1af0: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -001c1b00: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ -001c1b10: 632f 6673 7461 6220 7c20 6177 6b20 277b  c/fstab | awk '{
│ │ │ -001c1b20: 7072 696e 7420 2434 7d27 290a 2020 2020  print $4}').    
│ │ │ -001c1b30: 2020 2020 7365 6420 2d69 2022 737c 5c28      sed -i "s|\(
│ │ │ -001c1b40: 247b 6d6f 756e 745f 706f 696e 745f 6d61  ${mount_point_ma
│ │ │ -001c1b50: 7463 685f 7265 6765 7870 7d2e 2a24 7b70  tch_regexp}.*${p
│ │ │ -001c1b60: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001c1b70: 7473 7d5c 297c 5c31 2c6e 6f73 7569 647c  ts}\)|\1,nosuid|
│ │ │ -001c1b80: 2220 2f65 7463 2f66 7374 6162 0a20 2020  " /etc/fstab.   
│ │ │ -001c1b90: 2066 690a 0a0a 2020 2020 6966 206d 6b64   fi...    if mkd
│ │ │ -001c1ba0: 6972 202d 7020 222f 7661 7222 3b20 7468  ir -p "/var"; th
│ │ │ -001c1bb0: 656e 0a20 2020 2020 2020 2069 6620 6d6f  en.        if mo
│ │ │ -001c1bc0: 756e 7470 6f69 6e74 202d 7120 222f 7661  untpoint -q "/va
│ │ │ -001c1bd0: 7222 3b20 7468 656e 0a20 2020 2020 2020  r"; then.       
│ │ │ -001c1be0: 2020 2020 206d 6f75 6e74 202d 6f20 7265       mount -o re
│ │ │ -001c1bf0: 6d6f 756e 7420 2d2d 7461 7267 6574 2022  mount --target "
│ │ │ -001c1c00: 2f76 6172 220a 2020 2020 2020 2020 6669  /var".        fi
│ │ │ -001c1c10: 0a20 2020 2066 690a 7d0a 0a70 6572 666f  .    fi.}..perfo
│ │ │ -001c1c20: 726d 5f72 656d 6564 6961 7469 6f6e 0a0a  rm_remediation..
│ │ │ -001c1c30: 656c 7365 0a20 2020 2026 6774 3b26 616d  else.    >&am
│ │ │ -001c1c40: 703b 3220 6563 686f 2027 5265 6d65 6469  p;2 echo 'Remedi
│ │ │ -001c1c50: 6174 696f 6e20 6973 206e 6f74 2061 7070  ation is not app
│ │ │ -001c1c60: 6c69 6361 626c 652c 206e 6f74 6869 6e67  licable, nothing
│ │ │ -001c1c70: 2077 6173 2064 6f6e 6527 0a66 690a 3c2f   was done'.fi.
Complexity │ │ │ +001bfa10: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +001bfa30: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +001bfa40: 7464 3e68 6967 683c 2f74 643e 3c2f 7472 td>highReboot: │ │ │ +001bfa60: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +001bfa80: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:configure │ │ │ +001bfaa0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 - name: │ │ │ +001bfac0: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ +001bfad0: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ +001bfae0: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ +001bfaf0: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ +001bfb00: 6773 3a0a 2020 2d20 636f 6e66 6967 7572 gs:. - configur │ │ │ +001bfb10: 655f 7374 7261 7465 6779 0a20 202d 2068 e_strategy. - h │ │ │ +001bfb20: 6967 685f 6469 7372 7570 7469 6f6e 0a20 igh_disruption. │ │ │ +001bfb30: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ +001bfb40: 790a 2020 2d20 6d65 6469 756d 5f73 6576 y. - medium_sev │ │ │ +001bfb50: 6572 6974 790a 2020 2d20 6d6f 756e 745f erity. - mount_ │ │ │ +001bfb60: 6f70 7469 6f6e 5f76 6172 5f6e 6f73 7569 option_var_nosui │ │ │ +001bfb70: 640a 2020 2d20 6e6f 5f72 6562 6f6f 745f d. - no_reboot_ │ │ │ +001bfb80: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20 needed..- name: │ │ │ +001bfb90: 2741 6464 206e 6f73 7569 6420 4f70 7469 'Add nosuid Opti │ │ │ +001bfba0: 6f6e 2074 6f20 2f76 6172 3a20 4368 6563 on to /var: Chec │ │ │ +001bfbb0: 6b20 696e 666f 726d 6174 696f 6e20 6173 k information as │ │ │ +001bfbc0: 736f 6369 6174 6564 2074 6f20 6d6f 756e sociated to moun │ │ │ +001bfbd0: 7470 6f69 6e74 270a 2020 616e 7369 626c tpoint'. ansibl │ │ │ +001bfbe0: 652e 6275 696c 7469 6e2e 636f 6d6d 616e e.builtin.comman │ │ │ +001bfbf0: 643a 2066 696e 646d 6e74 202d 2d66 7374 d: findmnt --fst │ │ │ +001bfc00: 6162 2027 2f76 6172 270a 2020 7265 6769 ab '/var'. regi │ │ │ +001bfc10: 7374 6572 3a20 6465 7669 6365 5f6e 616d ster: device_nam │ │ │ +001bfc20: 650a 2020 6661 696c 6564 5f77 6865 6e3a e. failed_when: │ │ │ +001bfc30: 2064 6576 6963 655f 6e61 6d65 2e72 6320 device_name.rc │ │ │ +001bfc40: 2667 743b 2031 0a20 2063 6861 6e67 6564 > 1. changed │ │ │ +001bfc50: 5f77 6865 6e3a 2066 616c 7365 0a20 2063 _when: false. c │ │ │ +001bfc60: 6865 636b 5f6d 6f64 653a 2066 616c 7365 heck_mode: false │ │ │ +001bfc70: 0a20 2077 6865 6e3a 0a20 202d 2028 206e . when:. - ( n │ │ │ +001bfc80: 6f74 2028 2022 6b65 726e 656c 2220 696e ot ( "kernel" in │ │ │ +001bfc90: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ +001bfca0: 6163 6b61 6765 7320 616e 6420 2272 706d ackages and "rpm │ │ │ +001bfcb0: 2d6f 7374 7265 6522 2069 6e20 616e 7369 -ostree" in ansi │ │ │ +001bfcc0: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +001bfcd0: 6573 0a20 2020 2061 6e64 2022 626f 6f74 es. and "boot │ │ │ +001bfce0: 6322 2069 6e20 616e 7369 626c 655f 6661 c" in ansible_fa │ │ │ +001bfcf0: 6374 732e 7061 636b 6167 6573 2061 6e64 cts.packages and │ │ │ +001bfd00: 206e 6f74 2022 6f70 656e 7368 6966 742d not "openshift- │ │ │ +001bfd10: 6b75 6265 6c65 7422 2069 6e20 616e 7369 kubelet" in ansi │ │ │ +001bfd20: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +001bfd30: 6573 0a20 2020 2061 6e64 2022 6f73 7472 es. and "ostr │ │ │ +001bfd40: 6565 2220 696e 2061 6e73 6962 6c65 5f70 ee" in ansible_p │ │ │ +001bfd50: 726f 635f 636d 646c 696e 6520 2920 616e roc_cmdline ) an │ │ │ +001bfd60: 6420 6e6f 7420 2820 616e 7369 626c 655f d not ( ansible_ │ │ │ +001bfd70: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74 virtualization_t │ │ │ +001bfd80: 7970 6520 696e 0a20 2020 205b 2264 6f63 ype in. ["doc │ │ │ +001bfd90: 6b65 7222 2c20 226c 7863 222c 2022 6f70 ker", "lxc", "op │ │ │ +001bfda0: 656e 767a 222c 2022 706f 646d 616e 222c envz", "podman", │ │ │ +001bfdb0: 2022 636f 6e74 6169 6e65 7222 5d20 2920 "container"] ) │ │ │ +001bfdc0: 290a 2020 2d20 2722 2f76 6172 2220 696e ). - '"/var" in │ │ │ +001bfdd0: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320 ansible_mounts │ │ │ +001bfde0: 7c20 6d61 7028 6174 7472 6962 7574 653d | map(attribute= │ │ │ +001bfdf0: 226d 6f75 6e74 2229 207c 206c 6973 7427 "mount") | list' │ │ │ +001bfe00: 0a20 2074 6167 733a 0a20 202d 2063 6f6e . tags:. - con │ │ │ +001bfe10: 6669 6775 7265 5f73 7472 6174 6567 790a figure_strategy. │ │ │ +001bfe20: 2020 2d20 6869 6768 5f64 6973 7275 7074 - high_disrupt │ │ │ +001bfe30: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70 ion. - low_comp │ │ │ +001bfe40: 6c65 7869 7479 0a20 202d 206d 6564 6975 lexity. - mediu │ │ │ +001bfe50: 6d5f 7365 7665 7269 7479 0a20 202d 206d m_severity. - m │ │ │ +001bfe60: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f ount_option_var_ │ │ │ +001bfe70: 6e6f 7375 6964 0a20 202d 206e 6f5f 7265 nosuid. - no_re │ │ │ +001bfe80: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e boot_needed..- n │ │ │ +001bfe90: 616d 653a 2027 4164 6420 6e6f 7375 6964 ame: 'Add nosuid │ │ │ +001bfea0: 204f 7074 696f 6e20 746f 202f 7661 723a Option to /var: │ │ │ +001bfeb0: 2043 7265 6174 6520 6d6f 756e 745f 696e Create mount_in │ │ │ +001bfec0: 666f 2064 6963 7469 6f6e 6172 7920 7661 fo dictionary va │ │ │ +001bfed0: 7269 6162 6c65 270a 2020 7365 745f 6661 riable'. set_fa │ │ │ +001bfee0: 6374 3a0a 2020 2020 6d6f 756e 745f 696e ct:. mount_in │ │ │ +001bfef0: 666f 3a20 277b 7b20 6d6f 756e 745f 696e fo: '{{ mount_in │ │ │ +001bff00: 666f 7c64 6566 6175 6c74 287b 7d29 7c63 fo|default({})|c │ │ │ +001bff10: 6f6d 6269 6e65 287b 6974 656d 2e30 3a20 ombine({item.0: │ │ │ +001bff20: 6974 656d 2e31 7d29 207d 7d27 0a20 2077 item.1}) }}'. w │ │ │ +001bff30: 6974 685f 746f 6765 7468 6572 3a0a 2020 ith_together:. │ │ │ +001bff40: 2d20 277b 7b20 6465 7669 6365 5f6e 616d - '{{ device_nam │ │ │ +001bff50: 652e 7374 646f 7574 5f6c 696e 6573 5b30 e.stdout_lines[0 │ │ │ +001bff60: 5d2e 7370 6c69 7428 2920 7c20 6d61 7028 ].split() | map( │ │ │ +001bff70: 2727 6c6f 7765 7227 2729 207c 206c 6973 ''lower'') | lis │ │ │ +001bff80: 7420 7d7d 270a 2020 2d20 277b 7b20 6465 t }}'. - '{{ de │ │ │ +001bff90: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ +001bffa0: 5f6c 696e 6573 5b31 5d2e 7370 6c69 7428 _lines[1].split( │ │ │ +001bffb0: 2920 7c20 6c69 7374 207d 7d27 0a20 2077 ) | list }}'. w │ │ │ +001bffc0: 6865 6e3a 0a20 202d 2028 206e 6f74 2028 hen:. - ( not ( │ │ │ +001bffd0: 2022 6b65 726e 656c 2220 696e 2061 6e73 "kernel" in ans │ │ │ +001bffe0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ +001bfff0: 6765 7320 616e 6420 2272 706d 2d6f 7374 ges and "rpm-ost │ │ │ +001c0000: 7265 6522 2069 6e20 616e 7369 626c 655f ree" in ansible_ │ │ │ +001c0010: 6661 6374 732e 7061 636b 6167 6573 0a20 facts.packages. │ │ │ +001c0020: 2020 2061 6e64 2022 626f 6f74 6322 2069 and "bootc" i │ │ │ +001c0030: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001c0040: 7061 636b 6167 6573 2061 6e64 206e 6f74 packages and not │ │ │ +001c0050: 2022 6f70 656e 7368 6966 742d 6b75 6265 "openshift-kube │ │ │ +001c0060: 6c65 7422 2069 6e20 616e 7369 626c 655f let" in ansible_ │ │ │ +001c0070: 6661 6374 732e 7061 636b 6167 6573 0a20 facts.packages. │ │ │ +001c0080: 2020 2061 6e64 2022 6f73 7472 6565 2220 and "ostree" │ │ │ +001c0090: 696e 2061 6e73 6962 6c65 5f70 726f 635f in ansible_proc_ │ │ │ +001c00a0: 636d 646c 696e 6520 2920 616e 6420 6e6f cmdline ) and no │ │ │ +001c00b0: 7420 2820 616e 7369 626c 655f 7669 7274 t ( ansible_virt │ │ │ +001c00c0: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520 ualization_type │ │ │ +001c00d0: 696e 0a20 2020 205b 2264 6f63 6b65 7222 in. ["docker" │ │ │ +001c00e0: 2c20 226c 7863 222c 2022 6f70 656e 767a , "lxc", "openvz │ │ │ +001c00f0: 222c 2022 706f 646d 616e 222c 2022 636f ", "podman", "co │ │ │ +001c0100: 6e74 6169 6e65 7222 5d20 2920 290a 2020 ntainer"] ) ). │ │ │ +001c0110: 2d20 2722 2f76 6172 2220 696e 2061 6e73 - '"/var" in ans │ │ │ +001c0120: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61 ible_mounts | ma │ │ │ +001c0130: 7028 6174 7472 6962 7574 653d 226d 6f75 p(attribute="mou │ │ │ +001c0140: 6e74 2229 207c 206c 6973 7427 0a20 202d nt") | list'. - │ │ │ +001c0150: 2064 6576 6963 655f 6e61 6d65 2e73 7464 device_name.std │ │ │ +001c0160: 6f75 7420 6973 2064 6566 696e 6564 2061 out is defined a │ │ │ +001c0170: 6e64 2064 6576 6963 655f 6e61 6d65 2e73 nd device_name.s │ │ │ +001c0180: 7464 6f75 745f 6c69 6e65 7320 6973 2064 tdout_lines is d │ │ │ +001c0190: 6566 696e 6564 0a20 202d 2028 6465 7669 efined. - (devi │ │ │ +001c01a0: 6365 5f6e 616d 652e 7374 646f 7574 207c ce_name.stdout | │ │ │ +001c01b0: 206c 656e 6774 6820 2667 743b 2030 290a length > 0). │ │ │ +001c01c0: 2020 7461 6773 3a0a 2020 2d20 636f 6e66 tags:. - conf │ │ │ +001c01d0: 6967 7572 655f 7374 7261 7465 6779 0a20 igure_strategy. │ │ │ +001c01e0: 202d 2068 6967 685f 6469 7372 7570 7469 - high_disrupti │ │ │ +001c01f0: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c on. - low_compl │ │ │ +001c0200: 6578 6974 790a 2020 2d20 6d65 6469 756d exity. - medium │ │ │ +001c0210: 5f73 6576 6572 6974 790a 2020 2d20 6d6f _severity. - mo │ │ │ +001c0220: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6e unt_option_var_n │ │ │ +001c0230: 6f73 7569 640a 2020 2d20 6e6f 5f72 6562 osuid. - no_reb │ │ │ +001c0240: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61 oot_needed..- na │ │ │ +001c0250: 6d65 3a20 2741 6464 206e 6f73 7569 6420 me: 'Add nosuid │ │ │ +001c0260: 4f70 7469 6f6e 2074 6f20 2f76 6172 3a20 Option to /var: │ │ │ +001c0270: 4966 202f 7661 7220 6e6f 7420 6d6f 756e If /var not moun │ │ │ +001c0280: 7465 642c 2063 7261 6674 206d 6f75 6e74 ted, craft mount │ │ │ +001c0290: 5f69 6e66 6f20 6d61 6e75 616c 6c79 270a _info manually'. │ │ │ +001c02a0: 2020 7365 745f 6661 6374 3a0a 2020 2020 set_fact:. │ │ │ +001c02b0: 6d6f 756e 745f 696e 666f 3a20 277b 7b20 mount_info: '{{ │ │ │ +001c02c0: 6d6f 756e 745f 696e 666f 7c64 6566 6175 mount_info|defau │ │ │ +001c02d0: 6c74 287b 7d29 7c63 6f6d 6269 6e65 287b lt({})|combine({ │ │ │ +001c02e0: 6974 656d 2e30 3a20 6974 656d 2e31 7d29 item.0: item.1}) │ │ │ +001c02f0: 207d 7d27 0a20 2077 6974 685f 746f 6765 }}'. with_toge │ │ │ +001c0300: 7468 6572 3a0a 2020 2d20 2d20 7461 7267 ther:. - - targ │ │ │ +001c0310: 6574 0a20 2020 202d 2073 6f75 7263 650a et. - source. │ │ │ +001c0320: 2020 2020 2d20 6673 7479 7065 0a20 2020 - fstype. │ │ │ +001c0330: 202d 206f 7074 696f 6e73 0a20 202d 202d - options. - - │ │ │ +001c0340: 202f 7661 720a 2020 2020 2d20 2727 0a20 /var. - ''. │ │ │ +001c0350: 2020 202d 2027 270a 2020 2020 2d20 6465 - ''. - de │ │ │ +001c0360: 6661 756c 7473 0a20 2077 6865 6e3a 0a20 faults. when:. │ │ │ +001c0370: 202d 2028 206e 6f74 2028 2022 6b65 726e - ( not ( "kern │ │ │ +001c0380: 656c 2220 696e 2061 6e73 6962 6c65 5f66 el" in ansible_f │ │ │ +001c0390: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ +001c03a0: 6420 2272 706d 2d6f 7374 7265 6522 2069 d "rpm-ostree" i │ │ │ +001c03b0: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001c03c0: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ +001c03d0: 2022 626f 6f74 6322 2069 6e20 616e 7369 "bootc" in ansi │ │ │ +001c03e0: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +001c03f0: 6573 2061 6e64 206e 6f74 2022 6f70 656e es and not "open │ │ │ +001c0400: 7368 6966 742d 6b75 6265 6c65 7422 2069 shift-kubelet" i │ │ │ +001c0410: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001c0420: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ +001c0430: 2022 6f73 7472 6565 2220 696e 2061 6e73 "ostree" in ans │ │ │ +001c0440: 6962 6c65 5f70 726f 635f 636d 646c 696e ible_proc_cmdlin │ │ │ +001c0450: 6520 2920 616e 6420 6e6f 7420 2820 616e e ) and not ( an │ │ │ +001c0460: 7369 626c 655f 7669 7274 7561 6c69 7a61 sible_virtualiza │ │ │ +001c0470: 7469 6f6e 5f74 7970 6520 696e 0a20 2020 tion_type in. │ │ │ +001c0480: 205b 2264 6f63 6b65 7222 2c20 226c 7863 ["docker", "lxc │ │ │ +001c0490: 222c 2022 6f70 656e 767a 222c 2022 706f ", "openvz", "po │ │ │ +001c04a0: 646d 616e 222c 2022 636f 6e74 6169 6e65 dman", "containe │ │ │ +001c04b0: 7222 5d20 2920 290a 2020 2d20 2722 2f76 r"] ) ). - '"/v │ │ │ +001c04c0: 6172 2220 696e 2061 6e73 6962 6c65 5f6d ar" in ansible_m │ │ │ +001c04d0: 6f75 6e74 7320 7c20 6d61 7028 6174 7472 ounts | map(attr │ │ │ +001c04e0: 6962 7574 653d 226d 6f75 6e74 2229 207c ibute="mount") | │ │ │ +001c04f0: 206c 6973 7427 0a20 202d 2028 222d 2d66 list'. - ("--f │ │ │ +001c0500: 7374 6162 2220 7c20 6c65 6e67 7468 203d stab" | length = │ │ │ +001c0510: 3d20 3029 0a20 202d 2064 6576 6963 655f = 0). - device_ │ │ │ +001c0520: 6e61 6d65 2e73 7464 6f75 7420 6973 2064 name.stdout is d │ │ │ +001c0530: 6566 696e 6564 2061 6e64 2064 6576 6963 efined and devic │ │ │ +001c0540: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69 e_name.stdout_li │ │ │ +001c0550: 6e65 7320 6973 2064 6566 696e 6564 0a20 nes is defined. │ │ │ +001c0560: 202d 2028 6465 7669 6365 5f6e 616d 652e - (device_name. │ │ │ +001c0570: 7374 646f 7574 207c 206c 656e 6774 6820 stdout | length │ │ │ +001c0580: 3d3d 2030 290a 2020 7461 6773 3a0a 2020 == 0). tags:. │ │ │ +001c0590: 2d20 636f 6e66 6967 7572 655f 7374 7261 - configure_stra │ │ │ +001c05a0: 7465 6779 0a20 202d 2068 6967 685f 6469 tegy. - high_di │ │ │ +001c05b0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77 sruption. - low │ │ │ +001c05c0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ +001c05d0: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ +001c05e0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e - mount_option │ │ │ +001c05f0: 5f76 6172 5f6e 6f73 7569 640a 2020 2d20 _var_nosuid. - │ │ │ +001c0600: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564 no_reboot_needed │ │ │ +001c0610: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e ..- name: 'Add n │ │ │ +001c0620: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20 osuid Option to │ │ │ +001c0630: 2f76 6172 3a20 4d61 6b65 2073 7572 6520 /var: Make sure │ │ │ +001c0640: 6e6f 7375 6964 206f 7074 696f 6e20 6973 nosuid option is │ │ │ +001c0650: 2070 6172 7420 6f66 2074 6865 2074 6f20 part of the to │ │ │ +001c0660: 2f76 6172 0a20 2020 206f 7074 696f 6e73 /var. options │ │ │ +001c0670: 270a 2020 7365 745f 6661 6374 3a0a 2020 '. set_fact:. │ │ │ +001c0680: 2020 6d6f 756e 745f 696e 666f 3a20 277b mount_info: '{ │ │ │ +001c0690: 7b20 6d6f 756e 745f 696e 666f 207c 2063 { mount_info | c │ │ │ +001c06a0: 6f6d 6269 6e65 2820 7b27 276f 7074 696f ombine( {''optio │ │ │ +001c06b0: 6e73 2727 3a27 2727 277e 286d 6f75 6e74 ns'':''''~(mount │ │ │ +001c06c0: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c0a _info.options |. │ │ │ +001c06d0: 2020 2020 2020 6465 6661 756c 7428 2727 default('' │ │ │ +001c06e0: 2727 2929 7e28 2727 2c27 2720 6966 2028 ''))~('','' if ( │ │ │ +001c06f0: 6d6f 756e 745f 696e 666f 2e6f 7074 696f mount_info.optio │ │ │ +001c0700: 6e73 207c 2064 6566 6175 6c74 2827 2727 ns | default(''' │ │ │ +001c0710: 2729 2920 656c 7365 2027 2727 2729 7e27 ')) else '''')~' │ │ │ +001c0720: 276e 6f73 7569 6427 270a 2020 2020 2020 'nosuid''. │ │ │ +001c0730: 7d29 207d 7d27 0a20 2077 6865 6e3a 0a20 }) }}'. when:. │ │ │ +001c0740: 202d 2028 206e 6f74 2028 2022 6b65 726e - ( not ( "kern │ │ │ +001c0750: 656c 2220 696e 2061 6e73 6962 6c65 5f66 el" in ansible_f │ │ │ +001c0760: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ +001c0770: 6420 2272 706d 2d6f 7374 7265 6522 2069 d "rpm-ostree" i │ │ │ +001c0780: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001c0790: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ +001c07a0: 2022 626f 6f74 6322 2069 6e20 616e 7369 "bootc" in ansi │ │ │ +001c07b0: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +001c07c0: 6573 2061 6e64 206e 6f74 2022 6f70 656e es and not "open │ │ │ +001c07d0: 7368 6966 742d 6b75 6265 6c65 7422 2069 shift-kubelet" i │ │ │ +001c07e0: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001c07f0: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ +001c0800: 2022 6f73 7472 6565 2220 696e 2061 6e73 "ostree" in ans │ │ │ +001c0810: 6962 6c65 5f70 726f 635f 636d 646c 696e ible_proc_cmdlin │ │ │ +001c0820: 6520 2920 616e 6420 6e6f 7420 2820 616e e ) and not ( an │ │ │ +001c0830: 7369 626c 655f 7669 7274 7561 6c69 7a61 sible_virtualiza │ │ │ +001c0840: 7469 6f6e 5f74 7970 6520 696e 0a20 2020 tion_type in. │ │ │ +001c0850: 205b 2264 6f63 6b65 7222 2c20 226c 7863 ["docker", "lxc │ │ │ +001c0860: 222c 2022 6f70 656e 767a 222c 2022 706f ", "openvz", "po │ │ │ +001c0870: 646d 616e 222c 2022 636f 6e74 6169 6e65 dman", "containe │ │ │ +001c0880: 7222 5d20 2920 290a 2020 2d20 2722 2f76 r"] ) ). - '"/v │ │ │ +001c0890: 6172 2220 696e 2061 6e73 6962 6c65 5f6d ar" in ansible_m │ │ │ +001c08a0: 6f75 6e74 7320 7c20 6d61 7028 6174 7472 ounts | map(attr │ │ │ +001c08b0: 6962 7574 653d 226d 6f75 6e74 2229 207c ibute="mount") | │ │ │ +001c08c0: 206c 6973 7427 0a20 202d 206d 6f75 6e74 list'. - mount │ │ │ +001c08d0: 5f69 6e66 6f20 6973 2064 6566 696e 6564 _info is defined │ │ │ +001c08e0: 2061 6e64 2022 6e6f 7375 6964 2220 6e6f and "nosuid" no │ │ │ +001c08f0: 7420 696e 2028 6d6f 756e 745f 696e 666f t in (mount_info │ │ │ +001c0900: 2e6f 7074 696f 6e73 207c 2064 6566 6175 .options | defau │ │ │ +001c0910: 6c74 2827 2729 290a 2020 7461 6773 3a0a lt('')). tags:. │ │ │ +001c0920: 2020 2d20 636f 6e66 6967 7572 655f 7374 - configure_st │ │ │ +001c0930: 7261 7465 6779 0a20 202d 2068 6967 685f rategy. - high_ │ │ │ +001c0940: 6469 7372 7570 7469 6f6e 0a20 202d 206c disruption. - l │ │ │ +001c0950: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ +001c0960: 2d20 6d65 6469 756d 5f73 6576 6572 6974 - medium_severit │ │ │ +001c0970: 790a 2020 2d20 6d6f 756e 745f 6f70 7469 y. - mount_opti │ │ │ +001c0980: 6f6e 5f76 6172 5f6e 6f73 7569 640a 2020 on_var_nosuid. │ │ │ +001c0990: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ +001c09a0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464 ed..- name: 'Add │ │ │ +001c09b0: 206e 6f73 7569 6420 4f70 7469 6f6e 2074 nosuid Option t │ │ │ +001c09c0: 6f20 2f76 6172 3a20 456e 7375 7265 202f o /var: Ensure / │ │ │ +001c09d0: 7661 7220 6973 206d 6f75 6e74 6564 2077 var is mounted w │ │ │ +001c09e0: 6974 6820 6e6f 7375 6964 206f 7074 696f ith nosuid optio │ │ │ +001c09f0: 6e27 0a20 2061 6e73 6962 6c65 2e70 6f73 n'. ansible.pos │ │ │ +001c0a00: 6978 2e6d 6f75 6e74 3a0a 2020 2020 7061 ix.mount:. pa │ │ │ +001c0a10: 7468 3a20 2f76 6172 0a20 2020 2073 7263 th: /var. src │ │ │ +001c0a20: 3a20 277b 7b20 6d6f 756e 745f 696e 666f : '{{ mount_info │ │ │ +001c0a30: 2e73 6f75 7263 6520 7c20 6465 6661 756c .source | defaul │ │ │ +001c0a40: 7428 2727 2727 2920 7d7d 270a 2020 2020 t('''') }}'. │ │ │ +001c0a50: 6f70 7473 3a20 277b 7b20 6d6f 756e 745f opts: '{{ mount_ │ │ │ +001c0a60: 696e 666f 2e6f 7074 696f 6e73 207c 2064 info.options | d │ │ │ +001c0a70: 6566 6175 6c74 2827 2727 2729 207d 7d27 efault('''') }}' │ │ │ +001c0a80: 0a20 2020 2073 7461 7465 3a20 6d6f 756e . state: moun │ │ │ +001c0a90: 7465 640a 2020 2020 6673 7479 7065 3a20 ted. fstype: │ │ │ +001c0aa0: 277b 7b20 6d6f 756e 745f 696e 666f 2e66 '{{ mount_info.f │ │ │ +001c0ab0: 7374 7970 6520 7c20 6465 6661 756c 7428 stype | default( │ │ │ +001c0ac0: 2727 2727 2920 7d7d 270a 2020 7265 6769 '''') }}'. regi │ │ │ +001c0ad0: 7374 6572 3a20 6d6f 756e 745f 7265 7375 ster: mount_resu │ │ │ +001c0ae0: 6c74 0a20 2066 6169 6c65 645f 7768 656e lt. failed_when │ │ │ +001c0af0: 3a0a 2020 2d20 6d6f 756e 745f 7265 7375 :. - mount_resu │ │ │ +001c0b00: 6c74 2069 7320 6661 696c 6564 0a20 202d lt is failed. - │ │ │ +001c0b10: 2027 2727 7461 7267 6574 2069 7320 6275 '''target is bu │ │ │ +001c0b20: 7379 2727 206e 6f74 2069 6e20 286d 6f75 sy'' not in (mou │ │ │ +001c0b30: 6e74 5f72 6573 756c 742e 6d73 6720 7c20 nt_result.msg | │ │ │ +001c0b40: 6465 6661 756c 7428 2727 2727 2929 270a default(''''))'. │ │ │ +001c0b50: 2020 2d20 2727 2761 6c72 6561 6479 206d - '''already m │ │ │ +001c0b60: 6f75 6e74 6564 2727 206e 6f74 2069 6e20 ounted'' not in │ │ │ +001c0b70: 286d 6f75 6e74 5f72 6573 756c 742e 6d73 (mount_result.ms │ │ │ +001c0b80: 6720 7c20 6465 6661 756c 7428 2727 2727 g | default('''' │ │ │ +001c0b90: 2929 270a 2020 7768 656e 3a0a 2020 2d20 ))'. when:. - │ │ │ +001c0ba0: 2820 6e6f 7420 2820 226b 6572 6e65 6c22 ( not ( "kernel" │ │ │ +001c0bb0: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +001c0bc0: 732e 7061 636b 6167 6573 2061 6e64 2022 s.packages and " │ │ │ +001c0bd0: 7270 6d2d 6f73 7472 6565 2220 696e 2061 rpm-ostree" in a │ │ │ +001c0be0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ +001c0bf0: 6b61 6765 730a 2020 2020 616e 6420 2262 kages. and "b │ │ │ +001c0c00: 6f6f 7463 2220 696e 2061 6e73 6962 6c65 ootc" in ansible │ │ │ +001c0c10: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ +001c0c20: 616e 6420 6e6f 7420 226f 7065 6e73 6869 and not "openshi │ │ │ +001c0c30: 6674 2d6b 7562 656c 6574 2220 696e 2061 ft-kubelet" in a │ │ │ +001c0c40: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ +001c0c50: 6b61 6765 730a 2020 2020 616e 6420 226f kages. and "o │ │ │ +001c0c60: 7374 7265 6522 2069 6e20 616e 7369 626c stree" in ansibl │ │ │ +001c0c70: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029 e_proc_cmdline ) │ │ │ +001c0c80: 2061 6e64 206e 6f74 2028 2061 6e73 6962 and not ( ansib │ │ │ +001c0c90: 6c65 5f76 6972 7475 616c 697a 6174 696f le_virtualizatio │ │ │ +001c0ca0: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22 n_type in. [" │ │ │ +001c0cb0: 646f 636b 6572 222c 2022 6c78 6322 2c20 docker", "lxc", │ │ │ +001c0cc0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61 "openvz", "podma │ │ │ +001c0cd0: 6e22 2c20 2263 6f6e 7461 696e 6572 225d n", "container"] │ │ │ +001c0ce0: 2029 2029 0a20 202d 2027 222f 7661 7222 ) ). - '"/var" │ │ │ +001c0cf0: 2069 6e20 616e 7369 626c 655f 6d6f 756e in ansible_moun │ │ │ +001c0d00: 7473 207c 206d 6170 2861 7474 7269 6275 ts | map(attribu │ │ │ +001c0d10: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69 te="mount") | li │ │ │ +001c0d20: 7374 270a 2020 2d20 6d6f 756e 745f 696e st'. - mount_in │ │ │ +001c0d30: 666f 2069 7320 6465 6669 6e65 640a 2020 fo is defined. │ │ │ +001c0d40: 2d20 2864 6576 6963 655f 6e61 6d65 2e73 - (device_name.s │ │ │ +001c0d50: 7464 6f75 7420 6973 2064 6566 696e 6564 tdout is defined │ │ │ +001c0d60: 2061 6e64 2028 6465 7669 6365 5f6e 616d and (device_nam │ │ │ +001c0d70: 652e 7374 646f 7574 207c 206c 656e 6774 e.stdout | lengt │ │ │ +001c0d80: 6820 2667 743b 2030 2929 206f 7220 2822 h > 0)) or (" │ │ │ +001c0d90: 2d2d 6673 7461 6222 0a20 2020 207c 206c --fstab". | l │ │ │ +001c0da0: 656e 6774 6820 3d3d 2030 290a 2020 7461 ength == 0). ta │ │ │ +001c0db0: 6773 3a0a 2020 2d20 636f 6e66 6967 7572 gs:. - configur │ │ │ +001c0dc0: 655f 7374 7261 7465 6779 0a20 202d 2068 e_strategy. - h │ │ │ +001c0dd0: 6967 685f 6469 7372 7570 7469 6f6e 0a20 igh_disruption. │ │ │ +001c0de0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ +001c0df0: 790a 2020 2d20 6d65 6469 756d 5f73 6576 y. - medium_sev │ │ │ +001c0e00: 6572 6974 790a 2020 2d20 6d6f 756e 745f erity. - mount_ │ │ │ +001c0e10: 6f70 7469 6f6e 5f76 6172 5f6e 6f73 7569 option_var_nosui │ │ │ +001c0e20: 640a 2020 2d20 6e6f 5f72 6562 6f6f 745f d. - no_reboot_ │ │ │ +001c0e30: 6e65 6564 6564 0a3c 2f63 6f64 653e 3c2f needed.
Remediati │ │ │ +001c0ef0: 6f6e 2053 6865 6c6c 2073 6372 6970 7420 on Shell script │ │ │ +001c0f00: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Reboot:false< │ │ │ +001c0fa0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
# Remedia
│ │ │ +001c0fc0: 7469 6f6e 2069 7320 6170 706c 6963 6162  tion is applicab
│ │ │ +001c0fd0: 6c65 206f 6e6c 7920 696e 2063 6572 7461  le only in certa
│ │ │ +001c0fe0: 696e 2070 6c61 7466 6f72 6d73 0a69 6620  in platforms.if 
│ │ │ +001c0ff0: 2820 2120 2820 7b20 7270 6d20 2d2d 7175  ( ! ( { rpm --qu
│ │ │ +001c1000: 6965 7420 2d71 206b 6572 6e65 6c20 3b7d  iet -q kernel ;}
│ │ │ +001c1010: 2026 616d 703b 2661 6d70 3b20 7b20 7270   && { rp
│ │ │ +001c1020: 6d20 2d2d 7175 6965 7420 2d71 2072 706d  m --quiet -q rpm
│ │ │ +001c1030: 2d6f 7374 7265 6520 3b7d 2026 616d 703b  -ostree ;} &
│ │ │ +001c1040: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ +001c1050: 6965 7420 2d71 2062 6f6f 7463 203b 7d20  iet -q bootc ;} 
│ │ │ +001c1060: 2661 6d70 3b26 616d 703b 207b 2021 2072  && { ! r
│ │ │ +001c1070: 706d 202d 2d71 7569 6574 202d 7120 6f70  pm --quiet -q op
│ │ │ +001c1080: 656e 7368 6966 742d 6b75 6265 6c65 7420  enshift-kubelet 
│ │ │ +001c1090: 3b7d 2026 616d 703b 2661 6d70 3b20 285b  ;} && ([
│ │ │ +001c10a0: 202d 6620 2f72 756e 2f6f 7374 7265 652d   -f /run/ostree-
│ │ │ +001c10b0: 626f 6f74 6564 205d 207c 7c20 5b20 2d4c  booted ] || [ -L
│ │ │ +001c10c0: 202f 6f73 7472 6565 205d 2920 2920 2661   /ostree ]) ) &a
│ │ │ +001c10d0: 6d70 3b26 616d 703b 2021 2028 205b 202d  mp;& ! ( [ -
│ │ │ +001c10e0: 6620 2f2e 646f 636b 6572 656e 7620 5d20  f /.dockerenv ] 
│ │ │ +001c10f0: 7c7c 205b 202d 6620 2f72 756e 2f2e 636f  || [ -f /run/.co
│ │ │ +001c1100: 6e74 6169 6e65 7265 6e76 205d 2029 2029  ntainerenv ] ) )
│ │ │ +001c1110: 2026 616d 703b 2661 6d70 3b20 7b20 2820   && { ( 
│ │ │ +001c1120: 6669 6e64 6d6e 7420 2d2d 6b65 726e 656c  findmnt --kernel
│ │ │ +001c1130: 2022 2f76 6172 2220 2667 743b 202f 6465   "/var" > /de
│ │ │ +001c1140: 762f 6e75 6c6c 207c 7c20 6669 6e64 6d6e  v/null || findmn
│ │ │ +001c1150: 7420 2d2d 6673 7461 6220 222f 7661 7222  t --fstab "/var"
│ │ │ +001c1160: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20   > /dev/null 
│ │ │ +001c1170: 293b 207d 3b20 7468 656e 0a0a 6675 6e63  ); }; then..func
│ │ │ +001c1180: 7469 6f6e 2070 6572 666f 726d 5f72 656d  tion perform_rem
│ │ │ +001c1190: 6564 6961 7469 6f6e 207b 0a0a 2020 2020  ediation {..    
│ │ │ +001c11a0: 0a20 2020 2020 2020 2023 2074 6865 206d  .        # the m
│ │ │ +001c11b0: 6f75 6e74 2070 6f69 6e74 202f 7661 7220  ount point /var 
│ │ │ +001c11c0: 6861 7320 746f 2062 6520 6465 6669 6e65  has to be define
│ │ │ +001c11d0: 6420 696e 202f 6574 632f 6673 7461 620a  d in /etc/fstab.
│ │ │ +001c11e0: 2020 2020 2020 2020 2320 6265 666f 7265          # before
│ │ │ +001c11f0: 2074 6869 7320 7265 6d65 6469 6174 696f   this remediatio
│ │ │ +001c1200: 6e20 6361 6e20 6265 2065 7865 6375 7465  n can be execute
│ │ │ +001c1210: 642e 2049 6e20 6361 7365 2069 7420 6973  d. In case it is
│ │ │ +001c1220: 206e 6f74 2064 6566 696e 6564 2c20 7468   not defined, th
│ │ │ +001c1230: 650a 2020 2020 2020 2020 2320 7265 6d65  e.        # reme
│ │ │ +001c1240: 6469 6174 696f 6e20 6162 6f72 7473 2061  diation aborts a
│ │ │ +001c1250: 6e64 206e 6f20 6368 616e 6765 7320 7265  nd no changes re
│ │ │ +001c1260: 6761 7264 696e 6720 7468 6520 6d6f 756e  garding the moun
│ │ │ +001c1270: 7420 706f 696e 7420 6172 6520 646f 6e65  t point are done
│ │ │ +001c1280: 2e0a 2020 2020 2020 2020 6d6f 756e 745f  ..        mount_
│ │ │ +001c1290: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001c12a0: 7870 3d22 2428 7072 696e 7466 2022 5e5b  xp="$(printf "^[
│ │ │ +001c12b0: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e  [:space:]]*[^#].
│ │ │ +001c12c0: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b  *[[:space:]]%s[[
│ │ │ +001c12d0: 3a73 7061 6365 3a5d 5d22 2022 2f76 6172  :space:]]" "/var
│ │ │ +001c12e0: 2229 220a 0a20 2020 2067 7265 7020 2224  ")"..    grep "$
│ │ │ +001c12f0: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001c1300: 685f 7265 6765 7870 2220 2d71 202f 6574  h_regexp" -q /et
│ │ │ +001c1310: 632f 6673 7461 6220 5c0a 2020 2020 2020  c/fstab \.      
│ │ │ +001c1320: 2020 7c7c 207b 2065 6368 6f20 2254 6865    || { echo "The
│ │ │ +001c1330: 206d 6f75 6e74 2070 6f69 6e74 2027 2f76   mount point '/v
│ │ │ +001c1340: 6172 2720 6973 206e 6f74 2065 7665 6e20  ar' is not even 
│ │ │ +001c1350: 696e 202f 6574 632f 6673 7461 622c 2073  in /etc/fstab, s
│ │ │ +001c1360: 6f20 7765 2063 616e 2774 2073 6574 2075  o we can't set u
│ │ │ +001c1370: 7020 6d6f 756e 7420 6f70 7469 6f6e 7322  p mount options"
│ │ │ +001c1380: 2026 6774 3b26 616d 703b 323b 0a20 2020   >&2;.   
│ │ │ +001c1390: 2020 2020 2020 2020 2020 2020 2065 6368               ech
│ │ │ +001c13a0: 6f20 224e 6f74 2072 656d 6564 6961 7469  o "Not remediati
│ │ │ +001c13b0: 6e67 2c20 6265 6361 7573 6520 7468 6572  ng, because ther
│ │ │ +001c13c0: 6520 6973 206e 6f20 7265 636f 7264 206f  e is no record o
│ │ │ +001c13d0: 6620 2f76 6172 2069 6e20 2f65 7463 2f66  f /var in /etc/f
│ │ │ +001c13e0: 7374 6162 2220 2667 743b 2661 6d70 3b32  stab" >&2
│ │ │ +001c13f0: 3b20 7265 7475 726e 2031 3b20 7d0a 2020  ; return 1; }.  
│ │ │ +001c1400: 2020 0a0a 0a20 2020 206d 6f75 6e74 5f70    ...    mount_p
│ │ │ +001c1410: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001c1420: 703d 2224 2870 7269 6e74 6620 225e 5b5b  p="$(printf "^[[
│ │ │ +001c1430: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a  :space:]]*[^#].*
│ │ │ +001c1440: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a  [[:space:]]%s[[:
│ │ │ +001c1450: 7370 6163 653a 5d5d 2220 2f76 6172 2922  space:]]" /var)"
│ │ │ +001c1460: 0a0a 2020 2020 2320 4966 2074 6865 206d  ..    # If the m
│ │ │ +001c1470: 6f75 6e74 2070 6f69 6e74 2069 7320 6e6f  ount point is no
│ │ │ +001c1480: 7420 696e 202f 6574 632f 6673 7461 622c  t in /etc/fstab,
│ │ │ +001c1490: 2067 6574 2070 7265 7669 6f75 7320 6d6f   get previous mo
│ │ │ +001c14a0: 756e 7420 6f70 7469 6f6e 7320 6672 6f6d  unt options from
│ │ │ +001c14b0: 202f 6574 632f 6d74 6162 0a20 2020 2069   /etc/mtab.    i
│ │ │ +001c14c0: 6620 2120 6772 6570 202d 7120 2224 6d6f  f ! grep -q "$mo
│ │ │ +001c14d0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001c14e0: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ +001c14f0: 6162 3b20 7468 656e 0a20 2020 2020 2020  ab; then.       
│ │ │ +001c1500: 2023 2072 756e 7469 6d65 206f 7074 7320   # runtime opts 
│ │ │ +001c1510: 7769 7468 6f75 7420 736f 6d65 2061 7574  without some aut
│ │ │ +001c1520: 6f6d 6174 6963 206b 6572 6e65 6c2f 7573  omatic kernel/us
│ │ │ +001c1530: 6572 7370 6163 652d 6164 6465 6420 6465  erspace-added de
│ │ │ +001c1540: 6661 756c 7473 0a20 2020 2020 2020 2070  faults.        p
│ │ │ +001c1550: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001c1560: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ +001c1570: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001c1580: 6765 7870 2220 2f65 7463 2f6d 7461 6220  gexp" /etc/mtab 
│ │ │ +001c1590: 7c20 6865 6164 202d 3120 7c20 2061 776b  | head -1 |  awk
│ │ │ +001c15a0: 2027 7b70 7269 6e74 2024 347d 2720 5c0a   '{print $4}' \.
│ │ │ +001c15b0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +001c15c0: 2020 2020 7c20 7365 6420 2d45 2022 732f      | sed -E "s/
│ │ │ +001c15d0: 2872 777c 6465 6661 756c 7473 7c73 6563  (rw|defaults|sec
│ │ │ +001c15e0: 6c61 6265 6c7c 6e6f 7375 6964 2928 2c7c  label|nosuid)(,|
│ │ │ +001c15f0: 2429 2f2f 673b 732f 2c24 2f2f 2229 0a20  $)//g;s/,$//"). 
│ │ │ +001c1600: 2020 2020 2020 205b 2022 2470 7265 7669         [ "$previ
│ │ │ +001c1610: 6f75 735f 6d6f 756e 745f 6f70 7473 2220  ous_mount_opts" 
│ │ │ +001c1620: 5d20 2661 6d70 3b26 616d 703b 2070 7265  ] && pre
│ │ │ +001c1630: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001c1640: 2b3d 222c 220a 2020 2020 2020 2020 2320  +=",".        # 
│ │ │ +001c1650: 496e 2069 736f 3936 3630 2066 696c 6573  In iso9660 files
│ │ │ +001c1660: 7973 7465 6d73 206d 7461 6220 636f 756c  ystems mtab coul
│ │ │ +001c1670: 6420 6465 7363 7269 6265 2061 2022 626c  d describe a "bl
│ │ │ +001c1680: 6f63 6b73 697a 6522 2076 616c 7565 2c20  ocksize" value, 
│ │ │ +001c1690: 7468 6973 2073 686f 756c 6420 6265 2072  this should be r
│ │ │ +001c16a0: 6566 6c65 6374 6564 2069 6e0a 2020 2020  eflected in.    
│ │ │ +001c16b0: 2020 2020 2320 6673 7461 6220 6173 2022      # fstab as "
│ │ │ +001c16c0: 626c 6f63 6b22 2e20 2054 6865 206e 6578  block".  The nex
│ │ │ +001c16d0: 7420 7661 7269 6162 6c65 2069 7320 746f  t variable is to
│ │ │ +001c16e0: 2073 6174 6973 6679 2073 6865 6c6c 6368   satisfy shellch
│ │ │ +001c16f0: 6563 6b20 5343 3230 3530 2e0a 2020 2020  eck SC2050..    
│ │ │ +001c1700: 2020 2020 6673 5f74 7970 653d 2222 0a20      fs_type="". 
│ │ │ +001c1710: 2020 2020 2020 2069 6620 5b20 2022 2466         if [  "$f
│ │ │ +001c1720: 735f 7479 7065 2220 3d3d 2022 6973 6f39  s_type" == "iso9
│ │ │ +001c1730: 3636 3022 205d 203b 2074 6865 6e0a 2020  660" ] ; then.  
│ │ │ +001c1740: 2020 2020 2020 2020 2020 7072 6576 696f            previo
│ │ │ +001c1750: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ +001c1760: 7365 6420 2773 2f62 6c6f 636b 7369 7a65  sed 's/blocksize
│ │ │ +001c1770: 3d2f 626c 6f63 6b3d 2f27 2026 6c74 3b26  =/block=/' <&
│ │ │ +001c1780: 6c74 3b26 6c74 3b20 2224 7072 6576 696f  lt;< "$previo
│ │ │ +001c1790: 7573 5f6d 6f75 6e74 5f6f 7074 7322 290a  us_mount_opts").
│ │ │ +001c17a0: 2020 2020 2020 2020 6669 0a20 2020 2020          fi.     
│ │ │ +001c17b0: 2020 2065 6368 6f20 2220 2f76 6172 2020     echo " /var  
│ │ │ +001c17c0: 6465 6661 756c 7473 2c24 7b70 7265 7669  defaults,${previ
│ │ │ +001c17d0: 6f75 735f 6d6f 756e 745f 6f70 7473 7d6e  ous_mount_opts}n
│ │ │ +001c17e0: 6f73 7569 6420 3020 3022 2026 6774 3b26  osuid 0 0" >&
│ │ │ +001c17f0: 6774 3b20 2f65 7463 2f66 7374 6162 0a20  gt; /etc/fstab. 
│ │ │ +001c1800: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ +001c1810: 745f 6f70 7420 6f70 7469 6f6e 2069 7320  t_opt option is 
│ │ │ +001c1820: 6e6f 7420 616c 7265 6164 7920 696e 2074  not already in t
│ │ │ +001c1830: 6865 206d 6f75 6e74 2070 6f69 6e74 2773  he mount point's
│ │ │ +001c1840: 202f 6574 632f 6673 7461 6220 656e 7472   /etc/fstab entr
│ │ │ +001c1850: 792c 2061 6464 2069 740a 2020 2020 656c  y, add it.    el
│ │ │ +001c1860: 6966 2021 2067 7265 7020 2224 6d6f 756e  if ! grep "$moun
│ │ │ +001c1870: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001c1880: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ +001c1890: 207c 2067 7265 7020 2d71 2022 6e6f 7375   | grep -q "nosu
│ │ │ +001c18a0: 6964 223b 2074 6865 6e0a 2020 2020 2020  id"; then.      
│ │ │ +001c18b0: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ +001c18c0: 5f6f 7074 733d 2428 6772 6570 2022 246d  _opts=$(grep "$m
│ │ │ +001c18d0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001c18e0: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ +001c18f0: 7461 6220 7c20 6177 6b20 277b 7072 696e  tab | awk '{prin
│ │ │ +001c1900: 7420 2434 7d27 290a 2020 2020 2020 2020  t $4}').        
│ │ │ +001c1910: 7365 6420 2d69 2022 737c 5c28 247b 6d6f  sed -i "s|\(${mo
│ │ │ +001c1920: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001c1930: 7265 6765 7870 7d2e 2a24 7b70 7265 7669  regexp}.*${previ
│ │ │ +001c1940: 6f75 735f 6d6f 756e 745f 6f70 7473 7d5c  ous_mount_opts}\
│ │ │ +001c1950: 297c 5c31 2c6e 6f73 7569 647c 2220 2f65  )|\1,nosuid|" /e
│ │ │ +001c1960: 7463 2f66 7374 6162 0a20 2020 2066 690a  tc/fstab.    fi.
│ │ │ +001c1970: 0a0a 2020 2020 6966 206d 6b64 6972 202d  ..    if mkdir -
│ │ │ +001c1980: 7020 222f 7661 7222 3b20 7468 656e 0a20  p "/var"; then. 
│ │ │ +001c1990: 2020 2020 2020 2069 6620 6d6f 756e 7470         if mountp
│ │ │ +001c19a0: 6f69 6e74 202d 7120 222f 7661 7222 3b20  oint -q "/var"; 
│ │ │ +001c19b0: 7468 656e 0a20 2020 2020 2020 2020 2020  then.           
│ │ │ +001c19c0: 206d 6f75 6e74 202d 6f20 7265 6d6f 756e   mount -o remoun
│ │ │ +001c19d0: 7420 2d2d 7461 7267 6574 2022 2f76 6172  t --target "/var
│ │ │ +001c19e0: 220a 2020 2020 2020 2020 6669 0a20 2020  ".        fi.   
│ │ │ +001c19f0: 2066 690a 7d0a 0a70 6572 666f 726d 5f72   fi.}..perform_r
│ │ │ +001c1a00: 656d 6564 6961 7469 6f6e 0a0a 656c 7365  emediation..else
│ │ │ +001c1a10: 0a20 2020 2026 6774 3b26 616d 703b 3220  .    >&2 
│ │ │ +001c1a20: 6563 686f 2027 5265 6d65 6469 6174 696f  echo 'Remediatio
│ │ │ +001c1a30: 6e20 6973 206e 6f74 2061 7070 6c69 6361  n is not applica
│ │ │ +001c1a40: 626c 652c 206e 6f74 6869 6e67 2077 6173  ble, nothing was
│ │ │ +001c1a50: 2064 6f6e 6527 0a66 690a 3c2f 636f 6465   done'.fi.
Remedi │ │ │ +001c1b10: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ +001c1b20: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +001c1bb0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +001c1bc0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +001c1be0: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ +001c1c00: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +001c1c10: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +001c1c30: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ +001c1c50: 3c70 7265 3e3c 636f 6465 3e0a 7061 7274
.part
│ │ │ +001c1c60: 202f 7661 7220 2d2d 6d6f 756e 746f 7074   /var --mountopt
│ │ │ +001c1c70: 696f 6e73 3d22 6e6f 7375 6964 220a 3c2f  ions="nosuid".
Remediatio │ │ │ -001c2640: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ -001c2650: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -001c26d0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -001c26e0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -001c26f0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:highReboo │ │ │ -001c2730: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -001c2740: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -001c2760: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ -001c2770: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.part /va
│ │ │ -001c2790: 722f 746d 7020 2d2d 6d6f 756e 746f 7074  r/tmp --mountopt
│ │ │ -001c27a0: 696f 6e73 3d22 6e6f 6465 7622 0a3c 2f63  ions="nodev".
│ │ │ -001c27c0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -001c2860: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -001c2870: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -001c2880: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -001c2920: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr> │ │ │ -001c2970: 3c74 723e 3c74 683e 5374 7261 7465 6779

│ │ │ -001c29b0: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ -001c29c0: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ -001c29d0: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ -001c29e0: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ -001c29f0: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ -001c2a00: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ -001c2a10: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ -001c2a20: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ -001c2a30: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ -001c2a40: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -001c2a50: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76  - mount_option_v
│ │ │ -001c2a60: 6172 5f74 6d70 5f6e 6f64 6576 0a20 202d  ar_tmp_nodev.  -
│ │ │ -001c2a70: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -001c2a80: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ -001c2a90: 6e6f 6465 7620 4f70 7469 6f6e 2074 6f20  nodev Option to 
│ │ │ -001c2aa0: 2f76 6172 2f74 6d70 3a20 4368 6563 6b20  /var/tmp: Check 
│ │ │ -001c2ab0: 696e 666f 726d 6174 696f 6e20 6173 736f  information asso
│ │ │ -001c2ac0: 6369 6174 6564 2074 6f20 6d6f 756e 7470  ciated to mountp
│ │ │ -001c2ad0: 6f69 6e74 270a 2020 616e 7369 626c 652e  oint'.  ansible.
│ │ │ -001c2ae0: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ -001c2af0: 2066 696e 646d 6e74 202d 2d66 7374 6162   findmnt --fstab
│ │ │ -001c2b00: 2027 2f76 6172 2f74 6d70 270a 2020 7265   '/var/tmp'.  re
│ │ │ -001c2b10: 6769 7374 6572 3a20 6465 7669 6365 5f6e  gister: device_n
│ │ │ -001c2b20: 616d 650a 2020 6661 696c 6564 5f77 6865  ame.  failed_whe
│ │ │ -001c2b30: 6e3a 2064 6576 6963 655f 6e61 6d65 2e72  n: device_name.r
│ │ │ -001c2b40: 6320 2667 743b 2031 0a20 2063 6861 6e67  c > 1.  chang
│ │ │ -001c2b50: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ -001c2b60: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ -001c2b70: 7365 0a20 2077 6865 6e3a 0a20 202d 2028  se.  when:.  - (
│ │ │ -001c2b80: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -001c2b90: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001c2ba0: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ -001c2bb0: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ -001c2bc0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001c2bd0: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ -001c2be0: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ -001c2bf0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001c2c00: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -001c2c10: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -001c2c20: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001c2c30: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ -001c2c40: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001c2c50: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ -001c2c60: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -001c2c70: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -001c2c80: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ -001c2c90: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ -001c2ca0: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ -001c2cb0: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ -001c2cc0: 2920 290a 2020 2d20 2722 2f76 6172 2f74  ) ).  - '"/var/t
│ │ │ -001c2cd0: 6d70 2220 696e 2061 6e73 6962 6c65 5f6d  mp" in ansible_m
│ │ │ -001c2ce0: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ -001c2cf0: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ -001c2d00: 206c 6973 7427 0a20 2074 6167 733a 0a20   list'.  tags:. 
│ │ │ -001c2d10: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -001c2d20: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -001c2d30: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -001c2d40: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -001c2d50: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -001c2d60: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ -001c2d70: 6e5f 7661 725f 746d 705f 6e6f 6465 760a  n_var_tmp_nodev.
│ │ │ -001c2d80: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001c2d90: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ -001c2da0: 6464 206e 6f64 6576 204f 7074 696f 6e20  dd nodev Option 
│ │ │ -001c2db0: 746f 202f 7661 722f 746d 703a 2043 7265  to /var/tmp: Cre
│ │ │ -001c2dc0: 6174 6520 6d6f 756e 745f 696e 666f 2064  ate mount_info d
│ │ │ -001c2dd0: 6963 7469 6f6e 6172 7920 7661 7269 6162  ictionary variab
│ │ │ -001c2de0: 6c65 270a 2020 7365 745f 6661 6374 3a0a  le'.  set_fact:.
│ │ │ -001c2df0: 2020 2020 6d6f 756e 745f 696e 666f 3a20      mount_info: 
│ │ │ -001c2e00: 277b 7b20 6d6f 756e 745f 696e 666f 7c64  '{{ mount_info|d
│ │ │ -001c2e10: 6566 6175 6c74 287b 7d29 7c63 6f6d 6269  efault({})|combi
│ │ │ -001c2e20: 6e65 287b 6974 656d 2e30 3a20 6974 656d  ne({item.0: item
│ │ │ -001c2e30: 2e31 7d29 207d 7d27 0a20 2077 6974 685f  .1}) }}'.  with_
│ │ │ -001c2e40: 746f 6765 7468 6572 3a0a 2020 2d20 277b  together:.  - '{
│ │ │ -001c2e50: 7b20 6465 7669 6365 5f6e 616d 652e 7374  { device_name.st
│ │ │ -001c2e60: 646f 7574 5f6c 696e 6573 5b30 5d2e 7370  dout_lines[0].sp
│ │ │ -001c2e70: 6c69 7428 2920 7c20 6d61 7028 2727 6c6f  lit() | map(''lo
│ │ │ -001c2e80: 7765 7227 2729 207c 206c 6973 7420 7d7d  wer'') | list }}
│ │ │ -001c2e90: 270a 2020 2d20 277b 7b20 6465 7669 6365  '.  - '{{ device
│ │ │ -001c2ea0: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ -001c2eb0: 6573 5b31 5d2e 7370 6c69 7428 2920 7c20  es[1].split() | 
│ │ │ -001c2ec0: 6c69 7374 207d 7d27 0a20 2077 6865 6e3a  list }}'.  when:
│ │ │ -001c2ed0: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ -001c2ee0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -001c2ef0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001c2f00: 616e 6420 2272 706d 2d6f 7374 7265 6522  and "rpm-ostree"
│ │ │ -001c2f10: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001c2f20: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001c2f30: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ -001c2f40: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001c2f50: 6167 6573 2061 6e64 206e 6f74 2022 6f70  ages and not "op
│ │ │ -001c2f60: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ -001c2f70: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001c2f80: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001c2f90: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ -001c2fa0: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ -001c2fb0: 696e 6520 2920 616e 6420 6e6f 7420 2820  ine ) and not ( 
│ │ │ -001c2fc0: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ -001c2fd0: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20  zation_type in. 
│ │ │ -001c2fe0: 2020 205b 2264 6f63 6b65 7222 2c20 226c     ["docker", "l
│ │ │ -001c2ff0: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ -001c3000: 706f 646d 616e 222c 2022 636f 6e74 6169  podman", "contai
│ │ │ -001c3010: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ -001c3020: 2f76 6172 2f74 6d70 2220 696e 2061 6e73  /var/tmp" in ans
│ │ │ -001c3030: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ -001c3040: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ -001c3050: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ -001c3060: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ -001c3070: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ -001c3080: 6e64 2064 6576 6963 655f 6e61 6d65 2e73  nd device_name.s
│ │ │ -001c3090: 7464 6f75 745f 6c69 6e65 7320 6973 2064  tdout_lines is d
│ │ │ -001c30a0: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ -001c30b0: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ -001c30c0: 206c 656e 6774 6820 2667 743b 2030 290a   length > 0).
│ │ │ -001c30d0: 2020 7461 6773 3a0a 2020 2d20 636f 6e66    tags:.  - conf
│ │ │ -001c30e0: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -001c30f0: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -001c3100: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -001c3110: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -001c3120: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -001c3130: 756e 745f 6f70 7469 6f6e 5f76 6172 5f74  unt_option_var_t
│ │ │ -001c3140: 6d70 5f6e 6f64 6576 0a20 202d 206e 6f5f  mp_nodev.  - no_
│ │ │ -001c3150: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001c3160: 206e 616d 653a 2027 4164 6420 6e6f 6465   name: 'Add node
│ │ │ -001c3170: 7620 4f70 7469 6f6e 2074 6f20 2f76 6172  v Option to /var
│ │ │ -001c3180: 2f74 6d70 3a20 4966 202f 7661 722f 746d  /tmp: If /var/tm
│ │ │ -001c3190: 7020 6e6f 7420 6d6f 756e 7465 642c 2063  p not mounted, c
│ │ │ -001c31a0: 7261 6674 206d 6f75 6e74 5f69 6e66 6f20  raft mount_info 
│ │ │ -001c31b0: 6d61 6e75 616c 6c79 270a 2020 7365 745f  manually'.  set_
│ │ │ -001c31c0: 6661 6374 3a0a 2020 2020 6d6f 756e 745f  fact:.    mount_
│ │ │ -001c31d0: 696e 666f 3a20 277b 7b20 6d6f 756e 745f  info: '{{ mount_
│ │ │ -001c31e0: 696e 666f 7c64 6566 6175 6c74 287b 7d29  info|default({})
│ │ │ -001c31f0: 7c63 6f6d 6269 6e65 287b 6974 656d 2e30  |combine({item.0
│ │ │ -001c3200: 3a20 6974 656d 2e31 7d29 207d 7d27 0a20  : item.1}) }}'. 
│ │ │ -001c3210: 2077 6974 685f 746f 6765 7468 6572 3a0a   with_together:.
│ │ │ -001c3220: 2020 2d20 2d20 7461 7267 6574 0a20 2020    - - target.   
│ │ │ -001c3230: 202d 2073 6f75 7263 650a 2020 2020 2d20   - source.    - 
│ │ │ -001c3240: 6673 7479 7065 0a20 2020 202d 206f 7074  fstype.    - opt
│ │ │ -001c3250: 696f 6e73 0a20 202d 202d 202f 7661 722f  ions.  - - /var/
│ │ │ -001c3260: 746d 700a 2020 2020 2d20 2727 0a20 2020  tmp.    - ''.   
│ │ │ -001c3270: 202d 2027 270a 2020 2020 2d20 6465 6661   - ''.    - defa
│ │ │ -001c3280: 756c 7473 0a20 2077 6865 6e3a 0a20 202d  ults.  when:.  -
│ │ │ -001c3290: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ -001c32a0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001c32b0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001c32c0: 2272 706d 2d6f 7374 7265 6522 2069 6e20  "rpm-ostree" in 
│ │ │ -001c32d0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001c32e0: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001c32f0: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -001c3300: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001c3310: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ -001c3320: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ -001c3330: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001c3340: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001c3350: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001c3360: 6c65 5f70 726f 635f 636d 646c 696e 6520  le_proc_cmdline 
│ │ │ -001c3370: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ -001c3380: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ -001c3390: 6f6e 5f74 7970 6520 696e 0a20 2020 205b  on_type in.    [
│ │ │ -001c33a0: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -001c33b0: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -001c33c0: 616e 222c 2022 636f 6e74 6169 6e65 7222  an", "container"
│ │ │ -001c33d0: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ -001c33e0: 2f74 6d70 2220 696e 2061 6e73 6962 6c65  /tmp" in ansible
│ │ │ -001c33f0: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ -001c3400: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ -001c3410: 207c 206c 6973 7427 0a20 202d 2028 222d   | list'.  - ("-
│ │ │ -001c3420: 2d66 7374 6162 2220 7c20 6c65 6e67 7468  -fstab" | length
│ │ │ -001c3430: 203d 3d20 3029 0a20 202d 2064 6576 6963   == 0).  - devic
│ │ │ -001c3440: 655f 6e61 6d65 2e73 7464 6f75 7420 6973  e_name.stdout is
│ │ │ -001c3450: 2064 6566 696e 6564 2061 6e64 2064 6576   defined and dev
│ │ │ -001c3460: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ -001c3470: 6c69 6e65 7320 6973 2064 6566 696e 6564  lines is defined
│ │ │ -001c3480: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ -001c3490: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ -001c34a0: 6820 3d3d 2030 290a 2020 7461 6773 3a0a  h == 0).  tags:.
│ │ │ -001c34b0: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ -001c34c0: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ -001c34d0: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -001c34e0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -001c34f0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -001c3500: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ -001c3510: 6f6e 5f76 6172 5f74 6d70 5f6e 6f64 6576  on_var_tmp_nodev
│ │ │ -001c3520: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -001c3530: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ -001c3540: 4164 6420 6e6f 6465 7620 4f70 7469 6f6e  Add nodev Option
│ │ │ -001c3550: 2074 6f20 2f76 6172 2f74 6d70 3a20 4d61   to /var/tmp: Ma
│ │ │ -001c3560: 6b65 2073 7572 6520 6e6f 6465 7620 6f70  ke sure nodev op
│ │ │ -001c3570: 7469 6f6e 2069 7320 7061 7274 206f 6620  tion is part of 
│ │ │ -001c3580: 7468 6520 746f 202f 7661 722f 746d 700a  the to /var/tmp.
│ │ │ -001c3590: 2020 2020 6f70 7469 6f6e 7327 0a20 2073      options'.  s
│ │ │ -001c35a0: 6574 5f66 6163 743a 0a20 2020 206d 6f75  et_fact:.    mou
│ │ │ -001c35b0: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75  nt_info: '{{ mou
│ │ │ -001c35c0: 6e74 5f69 6e66 6f20 7c20 636f 6d62 696e  nt_info | combin
│ │ │ -001c35d0: 6528 207b 2727 6f70 7469 6f6e 7327 273a  e( {''options'':
│ │ │ -001c35e0: 2727 2727 7e28 6d6f 756e 745f 696e 666f  ''''~(mount_info
│ │ │ -001c35f0: 2e6f 7074 696f 6e73 207c 0a20 2020 2020  .options |.     
│ │ │ -001c3600: 2064 6566 6175 6c74 2827 2727 2729 297e   default(''''))~
│ │ │ -001c3610: 2827 272c 2727 2069 6620 286d 6f75 6e74  ('','' if (mount
│ │ │ -001c3620: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ -001c3630: 6465 6661 756c 7428 2727 2727 2929 2065  default('''')) e
│ │ │ -001c3640: 6c73 6520 2727 2727 297e 2727 6e6f 6465  lse '''')~''node
│ │ │ -001c3650: 7627 270a 2020 2020 2020 7d29 207d 7d27  v''.      }) }}'
│ │ │ -001c3660: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ -001c3670: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ -001c3680: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001c3690: 6163 6b61 6765 7320 616e 6420 2272 706d  ackages and "rpm
│ │ │ -001c36a0: 2d6f 7374 7265 6522 2069 6e20 616e 7369  -ostree" in ansi
│ │ │ -001c36b0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001c36c0: 6573 0a20 2020 2061 6e64 2022 626f 6f74  es.    and "boot
│ │ │ -001c36d0: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ -001c36e0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001c36f0: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ -001c3700: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ -001c3710: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001c3720: 6573 0a20 2020 2061 6e64 2022 6f73 7472  es.    and "ostr
│ │ │ -001c3730: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ -001c3740: 726f 635f 636d 646c 696e 6520 2920 616e  roc_cmdline ) an
│ │ │ -001c3750: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ -001c3760: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ -001c3770: 7970 6520 696e 0a20 2020 205b 2264 6f63  ype in.    ["doc
│ │ │ -001c3780: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ -001c3790: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ -001c37a0: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ -001c37b0: 290a 2020 2d20 2722 2f76 6172 2f74 6d70  ).  - '"/var/tmp
│ │ │ -001c37c0: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ -001c37d0: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ -001c37e0: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ -001c37f0: 6973 7427 0a20 202d 206d 6f75 6e74 5f69  ist'.  - mount_i
│ │ │ -001c3800: 6e66 6f20 6973 2064 6566 696e 6564 2061  nfo is defined a
│ │ │ -001c3810: 6e64 2022 6e6f 6465 7622 206e 6f74 2069  nd "nodev" not i
│ │ │ -001c3820: 6e20 286d 6f75 6e74 5f69 6e66 6f2e 6f70  n (mount_info.op
│ │ │ -001c3830: 7469 6f6e 7320 7c20 6465 6661 756c 7428  tions | default(
│ │ │ -001c3840: 2727 2929 0a20 2074 6167 733a 0a20 202d  '')).  tags:.  -
│ │ │ -001c3850: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ -001c3860: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ -001c3870: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -001c3880: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -001c3890: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -001c38a0: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ -001c38b0: 7661 725f 746d 705f 6e6f 6465 760a 2020  var_tmp_nodev.  
│ │ │ -001c38c0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -001c38d0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ -001c38e0: 206e 6f64 6576 204f 7074 696f 6e20 746f   nodev Option to
│ │ │ -001c38f0: 202f 7661 722f 746d 703a 2045 6e73 7572   /var/tmp: Ensur
│ │ │ -001c3900: 6520 2f76 6172 2f74 6d70 2069 7320 6d6f  e /var/tmp is mo
│ │ │ -001c3910: 756e 7465 6420 7769 7468 206e 6f64 6576  unted with nodev
│ │ │ -001c3920: 206f 7074 696f 6e27 0a20 2061 6e73 6962   option'.  ansib
│ │ │ -001c3930: 6c65 2e70 6f73 6978 2e6d 6f75 6e74 3a0a  le.posix.mount:.
│ │ │ -001c3940: 2020 2020 7061 7468 3a20 2f76 6172 2f74      path: /var/t
│ │ │ -001c3950: 6d70 0a20 2020 2073 7263 3a20 277b 7b20  mp.    src: '{{ 
│ │ │ -001c3960: 6d6f 756e 745f 696e 666f 2e73 6f75 7263  mount_info.sourc
│ │ │ -001c3970: 6520 7c20 6465 6661 756c 7428 2727 2727  e | default(''''
│ │ │ -001c3980: 2920 7d7d 270a 2020 2020 6f70 7473 3a20  ) }}'.    opts: 
│ │ │ -001c3990: 277b 7b20 6d6f 756e 745f 696e 666f 2e6f  '{{ mount_info.o
│ │ │ -001c39a0: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ -001c39b0: 2827 2727 2729 207d 7d27 0a20 2020 2073  ('''') }}'.    s
│ │ │ -001c39c0: 7461 7465 3a20 6d6f 756e 7465 640a 2020  tate: mounted.  
│ │ │ -001c39d0: 2020 6673 7479 7065 3a20 277b 7b20 6d6f    fstype: '{{ mo
│ │ │ -001c39e0: 756e 745f 696e 666f 2e66 7374 7970 6520  unt_info.fstype 
│ │ │ -001c39f0: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ -001c3a00: 7d7d 270a 2020 7265 6769 7374 6572 3a20  }}'.  register: 
│ │ │ -001c3a10: 6d6f 756e 745f 7265 7375 6c74 0a20 2066  mount_result.  f
│ │ │ -001c3a20: 6169 6c65 645f 7768 656e 3a0a 2020 2d20  ailed_when:.  - 
│ │ │ -001c3a30: 6d6f 756e 745f 7265 7375 6c74 2069 7320  mount_result is 
│ │ │ -001c3a40: 6661 696c 6564 0a20 202d 2027 2727 7461  failed.  - '''ta
│ │ │ -001c3a50: 7267 6574 2069 7320 6275 7379 2727 206e  rget is busy'' n
│ │ │ -001c3a60: 6f74 2069 6e20 286d 6f75 6e74 5f72 6573  ot in (mount_res
│ │ │ -001c3a70: 756c 742e 6d73 6720 7c20 6465 6661 756c  ult.msg | defaul
│ │ │ -001c3a80: 7428 2727 2727 2929 270a 2020 2d20 2727  t(''''))'.  - ''
│ │ │ -001c3a90: 2761 6c72 6561 6479 206d 6f75 6e74 6564  'already mounted
│ │ │ -001c3aa0: 2727 206e 6f74 2069 6e20 286d 6f75 6e74  '' not in (mount
│ │ │ -001c3ab0: 5f72 6573 756c 742e 6d73 6720 7c20 6465  _result.msg | de
│ │ │ -001c3ac0: 6661 756c 7428 2727 2727 2929 270a 2020  fault(''''))'.  
│ │ │ -001c3ad0: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ -001c3ae0: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ -001c3af0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001c3b00: 6167 6573 2061 6e64 2022 7270 6d2d 6f73  ages and "rpm-os
│ │ │ -001c3b10: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001c3b20: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001c3b30: 2020 2020 616e 6420 2262 6f6f 7463 2220      and "bootc" 
│ │ │ -001c3b40: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001c3b50: 2e70 6163 6b61 6765 7320 616e 6420 6e6f  .packages and no
│ │ │ -001c3b60: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ -001c3b70: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ -001c3b80: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001c3b90: 2020 2020 616e 6420 226f 7374 7265 6522      and "ostree"
│ │ │ -001c3ba0: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ -001c3bb0: 5f63 6d64 6c69 6e65 2029 2061 6e64 206e  _cmdline ) and n
│ │ │ -001c3bc0: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ -001c3bd0: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ -001c3be0: 2069 6e0a 2020 2020 5b22 646f 636b 6572   in.    ["docker
│ │ │ -001c3bf0: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ -001c3c00: 7a22 2c20 2270 6f64 6d61 6e22 2c20 2263  z", "podman", "c
│ │ │ -001c3c10: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ -001c3c20: 202d 2027 222f 7661 722f 746d 7022 2069   - '"/var/tmp" i
│ │ │ -001c3c30: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ -001c3c40: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ -001c3c50: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ -001c3c60: 270a 2020 2d20 6d6f 756e 745f 696e 666f  '.  - mount_info
│ │ │ -001c3c70: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ -001c3c80: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ -001c3c90: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ -001c3ca0: 6e64 2028 6465 7669 6365 5f6e 616d 652e  nd (device_name.
│ │ │ -001c3cb0: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ -001c3cc0: 2667 743b 2030 2929 206f 7220 2822 2d2d  > 0)) or ("--
│ │ │ -001c3cd0: 6673 7461 6222 0a20 2020 207c 206c 656e  fstab".    | len
│ │ │ -001c3ce0: 6774 6820 3d3d 2030 290a 2020 7461 6773  gth == 0).  tags
│ │ │ -001c3cf0: 3a0a 2020 2d20 636f 6e66 6967 7572 655f  :.  - configure_
│ │ │ -001c3d00: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001c3d10: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001c3d20: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001c3d30: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001c3d40: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001c3d50: 7469 6f6e 5f76 6172 5f74 6d70 5f6e 6f64  tion_var_tmp_nod
│ │ │ -001c3d60: 6576 0a20 202d 206e 6f5f 7265 626f 6f74  ev.  - no_reboot
│ │ │ -001c3d70: 5f6e 6565 6465 640a 3c2f 636f 6465 3e3c  _needed.<
│ │ │ -001c3d80: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ -001c3e30: 696f 6e20 5368 656c 6c20 7363 7269 7074  ion Shell script
│ │ │ -001c3e40: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
│ │ │ -001c3ee0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Co │ │ │ -001c2900: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -001c2930: 6e3a 3c2f 7468 3e3c 7464 3e68 6967 683c n:high< │ │ │ -001c2940: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -001c2980: 3a3c 2f74 683e 3c74 643e 636f 6e66 6967 :config │ │ │ -001c2990: 7572 653c 2f74 643e 3c2f 7472 3e3c 2f74 ure
Reboot:false
# Remedi │ │ │ -001c3f00: 6174 696f 6e20 6973 2061 7070 6c69 6361 ation is applica │ │ │ -001c3f10: 626c 6520 6f6e 6c79 2069 6e20 6365 7274 ble only in cert │ │ │ -001c3f20: 6169 6e20 706c 6174 666f 726d 730a 6966 ain platforms.if │ │ │ -001c3f30: 2028 2021 2028 207b 2072 706d 202d 2d71 ( ! ( { rpm --q │ │ │ -001c3f40: 7569 6574 202d 7120 6b65 726e 656c 203b uiet -q kernel ; │ │ │ -001c3f50: 7d20 2661 6d70 3b26 616d 703b 207b 2072 } && { r │ │ │ -001c3f60: 706d 202d 2d71 7569 6574 202d 7120 7270 pm --quiet -q rp │ │ │ -001c3f70: 6d2d 6f73 7472 6565 203b 7d20 2661 6d70 m-ostree ;} & │ │ │ -001c3f80: 3b26 616d 703b 207b 2072 706d 202d 2d71 ;& { rpm --q │ │ │ -001c3f90: 7569 6574 202d 7120 626f 6f74 6320 3b7d uiet -q bootc ;} │ │ │ -001c3fa0: 2026 616d 703b 2661 6d70 3b20 7b20 2120 && { ! │ │ │ -001c3fb0: 7270 6d20 2d2d 7175 6965 7420 2d71 206f rpm --quiet -q o │ │ │ -001c3fc0: 7065 6e73 6869 6674 2d6b 7562 656c 6574 penshift-kubelet │ │ │ -001c3fd0: 203b 7d20 2661 6d70 3b26 616d 703b 2028 ;} && ( │ │ │ -001c3fe0: 5b20 2d66 202f 7275 6e2f 6f73 7472 6565 [ -f /run/ostree │ │ │ -001c3ff0: 2d62 6f6f 7465 6420 5d20 7c7c 205b 202d -booted ] || [ - │ │ │ -001c4000: 4c20 2f6f 7374 7265 6520 5d29 2029 2026 L /ostree ]) ) & │ │ │ -001c4010: 616d 703b 2661 6d70 3b20 2120 2820 5b20 amp;& ! ( [ │ │ │ -001c4020: 2d66 202f 2e64 6f63 6b65 7265 6e76 205d -f /.dockerenv ] │ │ │ -001c4030: 207c 7c20 5b20 2d66 202f 7275 6e2f 2e63 || [ -f /run/.c │ │ │ -001c4040: 6f6e 7461 696e 6572 656e 7620 5d20 2920 ontainerenv ] ) │ │ │ -001c4050: 2920 2661 6d70 3b26 616d 703b 207b 2028 ) && { ( │ │ │ -001c4060: 2066 696e 646d 6e74 202d 2d6b 6572 6e65 findmnt --kerne │ │ │ -001c4070: 6c20 222f 7661 722f 746d 7022 2026 6774 l "/var/tmp" > │ │ │ -001c4080: 3b20 2f64 6576 2f6e 756c 6c20 7c7c 2066 ; /dev/null || f │ │ │ -001c4090: 696e 646d 6e74 202d 2d66 7374 6162 2022 indmnt --fstab " │ │ │ -001c40a0: 2f76 6172 2f74 6d70 2220 2667 743b 202f /var/tmp" > / │ │ │ -001c40b0: 6465 762f 6e75 6c6c 2029 3b20 7d3b 2074 dev/null ); }; t │ │ │ -001c40c0: 6865 6e0a 0a66 756e 6374 696f 6e20 7065 hen..function pe │ │ │ -001c40d0: 7266 6f72 6d5f 7265 6d65 6469 6174 696f rform_remediatio │ │ │ -001c40e0: 6e20 7b0a 0a20 2020 200a 2020 2020 2020 n {.. . │ │ │ -001c40f0: 2020 2320 7468 6520 6d6f 756e 7420 706f # the mount po │ │ │ -001c4100: 696e 7420 2f76 6172 2f74 6d70 2068 6173 int /var/tmp has │ │ │ -001c4110: 2074 6f20 6265 2064 6566 696e 6564 2069 to be defined i │ │ │ -001c4120: 6e20 2f65 7463 2f66 7374 6162 0a20 2020 n /etc/fstab. │ │ │ -001c4130: 2020 2020 2023 2062 6566 6f72 6520 7468 # before th │ │ │ -001c4140: 6973 2072 656d 6564 6961 7469 6f6e 2063 is remediation c │ │ │ -001c4150: 616e 2062 6520 6578 6563 7574 6564 2e20 an be executed. │ │ │ -001c4160: 496e 2063 6173 6520 6974 2069 7320 6e6f In case it is no │ │ │ -001c4170: 7420 6465 6669 6e65 642c 2074 6865 0a20 t defined, the. │ │ │ -001c4180: 2020 2020 2020 2023 2072 656d 6564 6961 # remedia │ │ │ -001c4190: 7469 6f6e 2061 626f 7274 7320 616e 6420 tion aborts and │ │ │ -001c41a0: 6e6f 2063 6861 6e67 6573 2072 6567 6172 no changes regar │ │ │ -001c41b0: 6469 6e67 2074 6865 206d 6f75 6e74 2070 ding the mount p │ │ │ -001c41c0: 6f69 6e74 2061 7265 2064 6f6e 652e 0a20 oint are done.. │ │ │ -001c41d0: 2020 2020 2020 206d 6f75 6e74 5f70 6f69 mount_poi │ │ │ -001c41e0: 6e74 5f6d 6174 6368 5f72 6567 6578 703d nt_match_regexp= │ │ │ -001c41f0: 2224 2870 7269 6e74 6620 225e 5b5b 3a73 "$(printf "^[[:s │ │ │ -001c4200: 7061 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b pace:]]*[^#].*[[ │ │ │ -001c4210: 3a73 7061 6365 3a5d 5d25 735b 5b3a 7370 :space:]]%s[[:sp │ │ │ -001c4220: 6163 653a 5d5d 2220 222f 7661 722f 746d ace:]]" "/var/tm │ │ │ -001c4230: 7022 2922 0a0a 2020 2020 6772 6570 2022 p")".. grep " │ │ │ -001c4240: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174 $mount_point_mat │ │ │ -001c4250: 6368 5f72 6567 6578 7022 202d 7120 2f65 ch_regexp" -q /e │ │ │ -001c4260: 7463 2f66 7374 6162 205c 0a20 2020 2020 tc/fstab \. │ │ │ -001c4270: 2020 207c 7c20 7b20 6563 686f 2022 5468 || { echo "Th │ │ │ -001c4280: 6520 6d6f 756e 7420 706f 696e 7420 272f e mount point '/ │ │ │ -001c4290: 7661 722f 746d 7027 2069 7320 6e6f 7420 var/tmp' is not │ │ │ -001c42a0: 6576 656e 2069 6e20 2f65 7463 2f66 7374 even in /etc/fst │ │ │ -001c42b0: 6162 2c20 736f 2077 6520 6361 6e27 7420 ab, so we can't │ │ │ -001c42c0: 7365 7420 7570 206d 6f75 6e74 206f 7074 set up mount opt │ │ │ -001c42d0: 696f 6e73 2220 2667 743b 2661 6d70 3b32 ions" >&2 │ │ │ -001c42e0: 3b0a 2020 2020 2020 2020 2020 2020 2020 ;. │ │ │ -001c42f0: 2020 6563 686f 2022 4e6f 7420 7265 6d65 echo "Not reme │ │ │ -001c4300: 6469 6174 696e 672c 2062 6563 6175 7365 diating, because │ │ │ -001c4310: 2074 6865 7265 2069 7320 6e6f 2072 6563 there is no rec │ │ │ -001c4320: 6f72 6420 6f66 202f 7661 722f 746d 7020 ord of /var/tmp │ │ │ -001c4330: 696e 202f 6574 632f 6673 7461 6222 2026 in /etc/fstab" & │ │ │ -001c4340: 6774 3b26 616d 703b 323b 2072 6574 7572 gt;&2; retur │ │ │ -001c4350: 6e20 313b 207d 0a20 2020 200a 0a0a 2020 n 1; }. ... │ │ │ -001c4360: 2020 6d6f 756e 745f 706f 696e 745f 6d61 mount_point_ma │ │ │ -001c4370: 7463 685f 7265 6765 7870 3d22 2428 7072 tch_regexp="$(pr │ │ │ -001c4380: 696e 7466 2022 5e5b 5b3a 7370 6163 653a intf "^[[:space: │ │ │ -001c4390: 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163 ]]*[^#].*[[:spac │ │ │ -001c43a0: 653a 5d5d 2573 5b5b 3a73 7061 6365 3a5d e:]]%s[[:space:] │ │ │ -001c43b0: 5d22 202f 7661 722f 746d 7029 220a 0a20 ]" /var/tmp)".. │ │ │ -001c43c0: 2020 2023 2049 6620 7468 6520 6d6f 756e # If the moun │ │ │ -001c43d0: 7420 706f 696e 7420 6973 206e 6f74 2069 t point is not i │ │ │ -001c43e0: 6e20 2f65 7463 2f66 7374 6162 2c20 6765 n /etc/fstab, ge │ │ │ -001c43f0: 7420 7072 6576 696f 7573 206d 6f75 6e74 t previous mount │ │ │ -001c4400: 206f 7074 696f 6e73 2066 726f 6d20 2f65 options from /e │ │ │ -001c4410: 7463 2f6d 7461 620a 2020 2020 6966 2021 tc/mtab. if ! │ │ │ -001c4420: 2067 7265 7020 2d71 2022 246d 6f75 6e74 grep -q "$mount │ │ │ -001c4430: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567 _point_match_reg │ │ │ -001c4440: 6578 7022 202f 6574 632f 6673 7461 623b exp" /etc/fstab; │ │ │ -001c4450: 2074 6865 6e0a 2020 2020 2020 2020 2320 then. # │ │ │ -001c4460: 7275 6e74 696d 6520 6f70 7473 2077 6974 runtime opts wit │ │ │ -001c4470: 686f 7574 2073 6f6d 6520 6175 746f 6d61 hout some automa │ │ │ -001c4480: 7469 6320 6b65 726e 656c 2f75 7365 7273 tic kernel/users │ │ │ -001c4490: 7061 6365 2d61 6464 6564 2064 6566 6175 pace-added defau │ │ │ -001c44a0: 6c74 730a 2020 2020 2020 2020 7072 6576 lts. prev │ │ │ -001c44b0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d ious_mount_opts= │ │ │ -001c44c0: 2428 6772 6570 2022 246d 6f75 6e74 5f70 $(grep "$mount_p │ │ │ -001c44d0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578 oint_match_regex │ │ │ -001c44e0: 7022 202f 6574 632f 6d74 6162 207c 2068 p" /etc/mtab | h │ │ │ -001c44f0: 6561 6420 2d31 207c 2020 6177 6b20 277b ead -1 | awk '{ │ │ │ -001c4500: 7072 696e 7420 2434 7d27 205c 0a20 2020 print $4}' \. │ │ │ -001c4510: 2020 2020 2020 2020 2020 2020 2020 2020 │ │ │ -001c4520: 207c 2073 6564 202d 4520 2273 2f28 7277 | sed -E "s/(rw │ │ │ -001c4530: 7c64 6566 6175 6c74 737c 7365 636c 6162 |defaults|seclab │ │ │ -001c4540: 656c 7c6e 6f64 6576 2928 2c7c 2429 2f2f el|nodev)(,|$)// │ │ │ -001c4550: 673b 732f 2c24 2f2f 2229 0a20 2020 2020 g;s/,$//"). │ │ │ -001c4560: 2020 205b 2022 2470 7265 7669 6f75 735f [ "$previous_ │ │ │ -001c4570: 6d6f 756e 745f 6f70 7473 2220 5d20 2661 mount_opts" ] &a │ │ │ -001c4580: 6d70 3b26 616d 703b 2070 7265 7669 6f75 mp;& previou │ │ │ -001c4590: 735f 6d6f 756e 745f 6f70 7473 2b3d 222c s_mount_opts+=", │ │ │ -001c45a0: 220a 2020 2020 2020 2020 2320 496e 2069 ". # In i │ │ │ -001c45b0: 736f 3936 3630 2066 696c 6573 7973 7465 so9660 filesyste │ │ │ -001c45c0: 6d73 206d 7461 6220 636f 756c 6420 6465 ms mtab could de │ │ │ -001c45d0: 7363 7269 6265 2061 2022 626c 6f63 6b73 scribe a "blocks │ │ │ -001c45e0: 697a 6522 2076 616c 7565 2c20 7468 6973 ize" value, this │ │ │ -001c45f0: 2073 686f 756c 6420 6265 2072 6566 6c65 should be refle │ │ │ -001c4600: 6374 6564 2069 6e0a 2020 2020 2020 2020 cted in. │ │ │ -001c4610: 2320 6673 7461 6220 6173 2022 626c 6f63 # fstab as "bloc │ │ │ -001c4620: 6b22 2e20 2054 6865 206e 6578 7420 7661 k". The next va │ │ │ -001c4630: 7269 6162 6c65 2069 7320 746f 2073 6174 riable is to sat │ │ │ -001c4640: 6973 6679 2073 6865 6c6c 6368 6563 6b20 isfy shellcheck │ │ │ -001c4650: 5343 3230 3530 2e0a 2020 2020 2020 2020 SC2050.. │ │ │ -001c4660: 6673 5f74 7970 653d 2222 0a20 2020 2020 fs_type="". │ │ │ -001c4670: 2020 2069 6620 5b20 2022 2466 735f 7479 if [ "$fs_ty │ │ │ -001c4680: 7065 2220 3d3d 2022 6973 6f39 3636 3022 pe" == "iso9660" │ │ │ -001c4690: 205d 203b 2074 6865 6e0a 2020 2020 2020 ] ; then. │ │ │ -001c46a0: 2020 2020 2020 7072 6576 696f 7573 5f6d previous_m │ │ │ -001c46b0: 6f75 6e74 5f6f 7074 733d 2428 7365 6420 ount_opts=$(sed │ │ │ -001c46c0: 2773 2f62 6c6f 636b 7369 7a65 3d2f 626c 's/blocksize=/bl │ │ │ -001c46d0: 6f63 6b3d 2f27 2026 6c74 3b26 6c74 3b26 ock=/' <<& │ │ │ -001c46e0: 6c74 3b20 2224 7072 6576 696f 7573 5f6d lt; "$previous_m │ │ │ -001c46f0: 6f75 6e74 5f6f 7074 7322 290a 2020 2020 ount_opts"). │ │ │ -001c4700: 2020 2020 6669 0a20 2020 2020 2020 2065 fi. e │ │ │ -001c4710: 6368 6f20 2220 2f76 6172 2f74 6d70 2020 cho " /var/tmp │ │ │ -001c4720: 6465 6661 756c 7473 2c24 7b70 7265 7669 defaults,${previ │ │ │ -001c4730: 6f75 735f 6d6f 756e 745f 6f70 7473 7d6e ous_mount_opts}n │ │ │ -001c4740: 6f64 6576 2030 2030 2220 2667 743b 2667 odev 0 0" >&g │ │ │ -001c4750: 743b 202f 6574 632f 6673 7461 620a 2020 t; /etc/fstab. │ │ │ -001c4760: 2020 2320 4966 2074 6865 206d 6f75 6e74 # If the mount │ │ │ -001c4770: 5f6f 7074 206f 7074 696f 6e20 6973 206e _opt option is n │ │ │ -001c4780: 6f74 2061 6c72 6561 6479 2069 6e20 7468 ot already in th │ │ │ -001c4790: 6520 6d6f 756e 7420 706f 696e 7427 7320 e mount point's │ │ │ -001c47a0: 2f65 7463 2f66 7374 6162 2065 6e74 7279 /etc/fstab entry │ │ │ -001c47b0: 2c20 6164 6420 6974 0a20 2020 2065 6c69 , add it. eli │ │ │ -001c47c0: 6620 2120 6772 6570 2022 246d 6f75 6e74 f ! grep "$mount │ │ │ -001c47d0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567 _point_match_reg │ │ │ -001c47e0: 6578 7022 202f 6574 632f 6673 7461 6220 exp" /etc/fstab │ │ │ -001c47f0: 7c20 6772 6570 202d 7120 226e 6f64 6576 | grep -q "nodev │ │ │ -001c4800: 223b 2074 6865 6e0a 2020 2020 2020 2020 "; then. │ │ │ -001c4810: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f previous_mount_o │ │ │ -001c4820: 7074 733d 2428 6772 6570 2022 246d 6f75 pts=$(grep "$mou │ │ │ -001c4830: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72 nt_point_match_r │ │ │ -001c4840: 6567 6578 7022 202f 6574 632f 6673 7461 egexp" /etc/fsta │ │ │ -001c4850: 6220 7c20 6177 6b20 277b 7072 696e 7420 b | awk '{print │ │ │ -001c4860: 2434 7d27 290a 2020 2020 2020 2020 7365 $4}'). se │ │ │ -001c4870: 6420 2d69 2022 737c 5c28 247b 6d6f 756e d -i "s|\(${moun │ │ │ -001c4880: 745f 706f 696e 745f 6d61 7463 685f 7265 t_point_match_re │ │ │ -001c4890: 6765 7870 7d2e 2a24 7b70 7265 7669 6f75 gexp}.*${previou │ │ │ -001c48a0: 735f 6d6f 756e 745f 6f70 7473 7d5c 297c s_mount_opts}\)| │ │ │ -001c48b0: 5c31 2c6e 6f64 6576 7c22 202f 6574 632f \1,nodev|" /etc/ │ │ │ -001c48c0: 6673 7461 620a 2020 2020 6669 0a0a 0a20 fstab. fi... │ │ │ -001c48d0: 2020 2069 6620 6d6b 6469 7220 2d70 2022 if mkdir -p " │ │ │ -001c48e0: 2f76 6172 2f74 6d70 223b 2074 6865 6e0a /var/tmp"; then. │ │ │ -001c48f0: 2020 2020 2020 2020 6966 206d 6f75 6e74 if mount │ │ │ -001c4900: 706f 696e 7420 2d71 2022 2f76 6172 2f74 point -q "/var/t │ │ │ -001c4910: 6d70 223b 2074 6865 6e0a 2020 2020 2020 mp"; then. │ │ │ -001c4920: 2020 2020 2020 6d6f 756e 7420 2d6f 2072 mount -o r │ │ │ -001c4930: 656d 6f75 6e74 202d 2d74 6172 6765 7420 emount --target │ │ │ -001c4940: 222f 7661 722f 746d 7022 0a20 2020 2020 "/var/tmp". │ │ │ -001c4950: 2020 2066 690a 2020 2020 6669 0a7d 0a0a fi. fi.}.. │ │ │ -001c4960: 7065 7266 6f72 6d5f 7265 6d65 6469 6174 perform_remediat │ │ │ -001c4970: 696f 6e0a 0a65 6c73 650a 2020 2020 2667 ion..else. &g │ │ │ -001c4980: 743b 2661 6d70 3b32 2065 6368 6f20 2752 t;&2 echo 'R │ │ │ -001c4990: 656d 6564 6961 7469 6f6e 2069 7320 6e6f emediation is no │ │ │ -001c49a0: 7420 6170 706c 6963 6162 6c65 2c20 6e6f t applicable, no │ │ │ -001c49b0: 7468 696e 6720 7761 7320 646f 6e65 270a thing was done'. │ │ │ -001c49c0: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e fi. │ │ │ +001c2640: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ +001c2650: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +001c26d0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +001c26e0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +001c2700: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +001c2710: 3c74 643e 6869 6768 3c2f 7464 3e3c 2f74 highReboot │ │ │ +001c2730: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +001c2740: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +001c2760: 7464 3e63 6f6e 6669 6775 7265 3c2f 7464 td>configure

- name: │ │ │ +001c2790: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ +001c27a0: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ +001c27b0: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ +001c27c0: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ +001c27d0: 6167 733a 0a20 202d 2063 6f6e 6669 6775 ags:. - configu │ │ │ +001c27e0: 7265 5f73 7472 6174 6567 790a 2020 2d20 re_strategy. - │ │ │ +001c27f0: 6869 6768 5f64 6973 7275 7074 696f 6e0a high_disruption. │ │ │ +001c2800: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ +001c2810: 7479 0a20 202d 206d 6564 6975 6d5f 7365 ty. - medium_se │ │ │ +001c2820: 7665 7269 7479 0a20 202d 206d 6f75 6e74 verity. - mount │ │ │ +001c2830: 5f6f 7074 696f 6e5f 7661 725f 746d 705f _option_var_tmp_ │ │ │ +001c2840: 6e6f 6465 760a 2020 2d20 6e6f 5f72 6562 nodev. - no_reb │ │ │ +001c2850: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61 oot_needed..- na │ │ │ +001c2860: 6d65 3a20 2741 6464 206e 6f64 6576 204f me: 'Add nodev O │ │ │ +001c2870: 7074 696f 6e20 746f 202f 7661 722f 746d ption to /var/tm │ │ │ +001c2880: 703a 2043 6865 636b 2069 6e66 6f72 6d61 p: Check informa │ │ │ +001c2890: 7469 6f6e 2061 7373 6f63 6961 7465 6420 tion associated │ │ │ +001c28a0: 746f 206d 6f75 6e74 706f 696e 7427 0a20 to mountpoint'. │ │ │ +001c28b0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e ansible.builtin │ │ │ +001c28c0: 2e63 6f6d 6d61 6e64 3a20 6669 6e64 6d6e .command: findmn │ │ │ +001c28d0: 7420 2d2d 6673 7461 6220 272f 7661 722f t --fstab '/var/ │ │ │ +001c28e0: 746d 7027 0a20 2072 6567 6973 7465 723a tmp'. register: │ │ │ +001c28f0: 2064 6576 6963 655f 6e61 6d65 0a20 2066 device_name. f │ │ │ +001c2900: 6169 6c65 645f 7768 656e 3a20 6465 7669 ailed_when: devi │ │ │ +001c2910: 6365 5f6e 616d 652e 7263 2026 6774 3b20 ce_name.rc > │ │ │ +001c2920: 310a 2020 6368 616e 6765 645f 7768 656e 1. changed_when │ │ │ +001c2930: 3a20 6661 6c73 650a 2020 6368 6563 6b5f : false. check_ │ │ │ +001c2940: 6d6f 6465 3a20 6661 6c73 650a 2020 7768 mode: false. wh │ │ │ +001c2950: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820 en:. - ( not ( │ │ │ +001c2960: 226b 6572 6e65 6c22 2069 6e20 616e 7369 "kernel" in ansi │ │ │ +001c2970: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +001c2980: 6573 2061 6e64 2022 7270 6d2d 6f73 7472 es and "rpm-ostr │ │ │ +001c2990: 6565 2220 696e 2061 6e73 6962 6c65 5f66 ee" in ansible_f │ │ │ +001c29a0: 6163 7473 2e70 6163 6b61 6765 730a 2020 acts.packages. │ │ │ +001c29b0: 2020 616e 6420 2262 6f6f 7463 2220 696e and "bootc" in │ │ │ +001c29c0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ +001c29d0: 6163 6b61 6765 7320 616e 6420 6e6f 7420 ackages and not │ │ │ +001c29e0: 226f 7065 6e73 6869 6674 2d6b 7562 656c "openshift-kubel │ │ │ +001c29f0: 6574 2220 696e 2061 6e73 6962 6c65 5f66 et" in ansible_f │ │ │ +001c2a00: 6163 7473 2e70 6163 6b61 6765 730a 2020 acts.packages. │ │ │ +001c2a10: 2020 616e 6420 226f 7374 7265 6522 2069 and "ostree" i │ │ │ +001c2a20: 6e20 616e 7369 626c 655f 7072 6f63 5f63 n ansible_proc_c │ │ │ +001c2a30: 6d64 6c69 6e65 2029 2061 6e64 206e 6f74 mdline ) and not │ │ │ +001c2a40: 2028 2061 6e73 6962 6c65 5f76 6972 7475 ( ansible_virtu │ │ │ +001c2a50: 616c 697a 6174 696f 6e5f 7479 7065 2069 alization_type i │ │ │ +001c2a60: 6e0a 2020 2020 5b22 646f 636b 6572 222c n. ["docker", │ │ │ +001c2a70: 2022 6c78 6322 2c20 226f 7065 6e76 7a22 "lxc", "openvz" │ │ │ +001c2a80: 2c20 2270 6f64 6d61 6e22 2c20 2263 6f6e , "podman", "con │ │ │ +001c2a90: 7461 696e 6572 225d 2029 2029 0a20 202d tainer"] ) ). - │ │ │ +001c2aa0: 2027 222f 7661 722f 746d 7022 2069 6e20 '"/var/tmp" in │ │ │ +001c2ab0: 616e 7369 626c 655f 6d6f 756e 7473 207c ansible_mounts | │ │ │ +001c2ac0: 206d 6170 2861 7474 7269 6275 7465 3d22 map(attribute=" │ │ │ +001c2ad0: 6d6f 756e 7422 2920 7c20 6c69 7374 270a mount") | list'. │ │ │ +001c2ae0: 2020 7461 6773 3a0a 2020 2d20 636f 6e66 tags:. - conf │ │ │ +001c2af0: 6967 7572 655f 7374 7261 7465 6779 0a20 igure_strategy. │ │ │ +001c2b00: 202d 2068 6967 685f 6469 7372 7570 7469 - high_disrupti │ │ │ +001c2b10: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c on. - low_compl │ │ │ +001c2b20: 6578 6974 790a 2020 2d20 6d65 6469 756d exity. - medium │ │ │ +001c2b30: 5f73 6576 6572 6974 790a 2020 2d20 6d6f _severity. - mo │ │ │ +001c2b40: 756e 745f 6f70 7469 6f6e 5f76 6172 5f74 unt_option_var_t │ │ │ +001c2b50: 6d70 5f6e 6f64 6576 0a20 202d 206e 6f5f mp_nodev. - no_ │ │ │ +001c2b60: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d reboot_needed..- │ │ │ +001c2b70: 206e 616d 653a 2027 4164 6420 6e6f 6465 name: 'Add node │ │ │ +001c2b80: 7620 4f70 7469 6f6e 2074 6f20 2f76 6172 v Option to /var │ │ │ +001c2b90: 2f74 6d70 3a20 4372 6561 7465 206d 6f75 /tmp: Create mou │ │ │ +001c2ba0: 6e74 5f69 6e66 6f20 6469 6374 696f 6e61 nt_info dictiona │ │ │ +001c2bb0: 7279 2076 6172 6961 626c 6527 0a20 2073 ry variable'. s │ │ │ +001c2bc0: 6574 5f66 6163 743a 0a20 2020 206d 6f75 et_fact:. mou │ │ │ +001c2bd0: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75 nt_info: '{{ mou │ │ │ +001c2be0: 6e74 5f69 6e66 6f7c 6465 6661 756c 7428 nt_info|default( │ │ │ +001c2bf0: 7b7d 297c 636f 6d62 696e 6528 7b69 7465 {})|combine({ite │ │ │ +001c2c00: 6d2e 303a 2069 7465 6d2e 317d 2920 7d7d m.0: item.1}) }} │ │ │ +001c2c10: 270a 2020 7769 7468 5f74 6f67 6574 6865 '. with_togethe │ │ │ +001c2c20: 723a 0a20 202d 2027 7b7b 2064 6576 6963 r:. - '{{ devic │ │ │ +001c2c30: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69 e_name.stdout_li │ │ │ +001c2c40: 6e65 735b 305d 2e73 706c 6974 2829 207c nes[0].split() | │ │ │ +001c2c50: 206d 6170 2827 276c 6f77 6572 2727 2920 map(''lower'') │ │ │ +001c2c60: 7c20 6c69 7374 207d 7d27 0a20 202d 2027 | list }}'. - ' │ │ │ +001c2c70: 7b7b 2064 6576 6963 655f 6e61 6d65 2e73 {{ device_name.s │ │ │ +001c2c80: 7464 6f75 745f 6c69 6e65 735b 315d 2e73 tdout_lines[1].s │ │ │ +001c2c90: 706c 6974 2829 207c 206c 6973 7420 7d7d plit() | list }} │ │ │ +001c2ca0: 270a 2020 7768 656e 3a0a 2020 2d20 2820 '. when:. - ( │ │ │ +001c2cb0: 6e6f 7420 2820 226b 6572 6e65 6c22 2069 not ( "kernel" i │ │ │ +001c2cc0: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001c2cd0: 7061 636b 6167 6573 2061 6e64 2022 7270 packages and "rp │ │ │ +001c2ce0: 6d2d 6f73 7472 6565 2220 696e 2061 6e73 m-ostree" in ans │ │ │ +001c2cf0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ +001c2d00: 6765 730a 2020 2020 616e 6420 2262 6f6f ges. and "boo │ │ │ +001c2d10: 7463 2220 696e 2061 6e73 6962 6c65 5f66 tc" in ansible_f │ │ │ +001c2d20: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ +001c2d30: 6420 6e6f 7420 226f 7065 6e73 6869 6674 d not "openshift │ │ │ +001c2d40: 2d6b 7562 656c 6574 2220 696e 2061 6e73 -kubelet" in ans │ │ │ +001c2d50: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ +001c2d60: 6765 730a 2020 2020 616e 6420 226f 7374 ges. and "ost │ │ │ +001c2d70: 7265 6522 2069 6e20 616e 7369 626c 655f ree" in ansible_ │ │ │ +001c2d80: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061 proc_cmdline ) a │ │ │ +001c2d90: 6e64 206e 6f74 2028 2061 6e73 6962 6c65 nd not ( ansible │ │ │ +001c2da0: 5f76 6972 7475 616c 697a 6174 696f 6e5f _virtualization_ │ │ │ +001c2db0: 7479 7065 2069 6e0a 2020 2020 5b22 646f type in. ["do │ │ │ +001c2dc0: 636b 6572 222c 2022 6c78 6322 2c20 226f cker", "lxc", "o │ │ │ +001c2dd0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22 penvz", "podman" │ │ │ +001c2de0: 2c20 2263 6f6e 7461 696e 6572 225d 2029 , "container"] ) │ │ │ +001c2df0: 2029 0a20 202d 2027 222f 7661 722f 746d ). - '"/var/tm │ │ │ +001c2e00: 7022 2069 6e20 616e 7369 626c 655f 6d6f p" in ansible_mo │ │ │ +001c2e10: 756e 7473 207c 206d 6170 2861 7474 7269 unts | map(attri │ │ │ +001c2e20: 6275 7465 3d22 6d6f 756e 7422 2920 7c20 bute="mount") | │ │ │ +001c2e30: 6c69 7374 270a 2020 2d20 6465 7669 6365 list'. - device │ │ │ +001c2e40: 5f6e 616d 652e 7374 646f 7574 2069 7320 _name.stdout is │ │ │ +001c2e50: 6465 6669 6e65 6420 616e 6420 6465 7669 defined and devi │ │ │ +001c2e60: 6365 5f6e 616d 652e 7374 646f 7574 5f6c ce_name.stdout_l │ │ │ +001c2e70: 696e 6573 2069 7320 6465 6669 6e65 640a ines is defined. │ │ │ +001c2e80: 2020 2d20 2864 6576 6963 655f 6e61 6d65 - (device_name │ │ │ +001c2e90: 2e73 7464 6f75 7420 7c20 6c65 6e67 7468 .stdout | length │ │ │ +001c2ea0: 2026 6774 3b20 3029 0a20 2074 6167 733a > 0). tags: │ │ │ +001c2eb0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73 . - configure_s │ │ │ +001c2ec0: 7472 6174 6567 790a 2020 2d20 6869 6768 trategy. - high │ │ │ +001c2ed0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20 _disruption. - │ │ │ +001c2ee0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20 low_complexity. │ │ │ +001c2ef0: 202d 206d 6564 6975 6d5f 7365 7665 7269 - medium_severi │ │ │ +001c2f00: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074 ty. - mount_opt │ │ │ +001c2f10: 696f 6e5f 7661 725f 746d 705f 6e6f 6465 ion_var_tmp_node │ │ │ +001c2f20: 760a 2020 2d20 6e6f 5f72 6562 6f6f 745f v. - no_reboot_ │ │ │ +001c2f30: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20 needed..- name: │ │ │ +001c2f40: 2741 6464 206e 6f64 6576 204f 7074 696f 'Add nodev Optio │ │ │ +001c2f50: 6e20 746f 202f 7661 722f 746d 703a 2049 n to /var/tmp: I │ │ │ +001c2f60: 6620 2f76 6172 2f74 6d70 206e 6f74 206d f /var/tmp not m │ │ │ +001c2f70: 6f75 6e74 6564 2c20 6372 6166 7420 6d6f ounted, craft mo │ │ │ +001c2f80: 756e 745f 696e 666f 206d 616e 7561 6c6c unt_info manuall │ │ │ +001c2f90: 7927 0a20 2073 6574 5f66 6163 743a 0a20 y'. set_fact:. │ │ │ +001c2fa0: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027 mount_info: ' │ │ │ +001c2fb0: 7b7b 206d 6f75 6e74 5f69 6e66 6f7c 6465 {{ mount_info|de │ │ │ +001c2fc0: 6661 756c 7428 7b7d 297c 636f 6d62 696e fault({})|combin │ │ │ +001c2fd0: 6528 7b69 7465 6d2e 303a 2069 7465 6d2e e({item.0: item. │ │ │ +001c2fe0: 317d 2920 7d7d 270a 2020 7769 7468 5f74 1}) }}'. with_t │ │ │ +001c2ff0: 6f67 6574 6865 723a 0a20 202d 202d 2074 ogether:. - - t │ │ │ +001c3000: 6172 6765 740a 2020 2020 2d20 736f 7572 arget. - sour │ │ │ +001c3010: 6365 0a20 2020 202d 2066 7374 7970 650a ce. - fstype. │ │ │ +001c3020: 2020 2020 2d20 6f70 7469 6f6e 730a 2020 - options. │ │ │ +001c3030: 2d20 2d20 2f76 6172 2f74 6d70 0a20 2020 - - /var/tmp. │ │ │ +001c3040: 202d 2027 270a 2020 2020 2d20 2727 0a20 - ''. - ''. │ │ │ +001c3050: 2020 202d 2064 6566 6175 6c74 730a 2020 - defaults. │ │ │ +001c3060: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420 when:. - ( not │ │ │ +001c3070: 2820 226b 6572 6e65 6c22 2069 6e20 616e ( "kernel" in an │ │ │ +001c3080: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +001c3090: 6167 6573 2061 6e64 2022 7270 6d2d 6f73 ages and "rpm-os │ │ │ +001c30a0: 7472 6565 2220 696e 2061 6e73 6962 6c65 tree" in ansible │ │ │ +001c30b0: 5f66 6163 7473 2e70 6163 6b61 6765 730a _facts.packages. │ │ │ +001c30c0: 2020 2020 616e 6420 2262 6f6f 7463 2220 and "bootc" │ │ │ +001c30d0: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ +001c30e0: 2e70 6163 6b61 6765 7320 616e 6420 6e6f .packages and no │ │ │ +001c30f0: 7420 226f 7065 6e73 6869 6674 2d6b 7562 t "openshift-kub │ │ │ +001c3100: 656c 6574 2220 696e 2061 6e73 6962 6c65 elet" in ansible │ │ │ +001c3110: 5f66 6163 7473 2e70 6163 6b61 6765 730a _facts.packages. │ │ │ +001c3120: 2020 2020 616e 6420 226f 7374 7265 6522 and "ostree" │ │ │ +001c3130: 2069 6e20 616e 7369 626c 655f 7072 6f63 in ansible_proc │ │ │ +001c3140: 5f63 6d64 6c69 6e65 2029 2061 6e64 206e _cmdline ) and n │ │ │ +001c3150: 6f74 2028 2061 6e73 6962 6c65 5f76 6972 ot ( ansible_vir │ │ │ +001c3160: 7475 616c 697a 6174 696f 6e5f 7479 7065 tualization_type │ │ │ +001c3170: 2069 6e0a 2020 2020 5b22 646f 636b 6572 in. ["docker │ │ │ +001c3180: 222c 2022 6c78 6322 2c20 226f 7065 6e76 ", "lxc", "openv │ │ │ +001c3190: 7a22 2c20 2270 6f64 6d61 6e22 2c20 2263 z", "podman", "c │ │ │ +001c31a0: 6f6e 7461 696e 6572 225d 2029 2029 0a20 ontainer"] ) ). │ │ │ +001c31b0: 202d 2027 222f 7661 722f 746d 7022 2069 - '"/var/tmp" i │ │ │ +001c31c0: 6e20 616e 7369 626c 655f 6d6f 756e 7473 n ansible_mounts │ │ │ +001c31d0: 207c 206d 6170 2861 7474 7269 6275 7465 | map(attribute │ │ │ +001c31e0: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374 ="mount") | list │ │ │ +001c31f0: 270a 2020 2d20 2822 2d2d 6673 7461 6222 '. - ("--fstab" │ │ │ +001c3200: 207c 206c 656e 6774 6820 3d3d 2030 290a | length == 0). │ │ │ +001c3210: 2020 2d20 6465 7669 6365 5f6e 616d 652e - device_name. │ │ │ +001c3220: 7374 646f 7574 2069 7320 6465 6669 6e65 stdout is define │ │ │ +001c3230: 6420 616e 6420 6465 7669 6365 5f6e 616d d and device_nam │ │ │ +001c3240: 652e 7374 646f 7574 5f6c 696e 6573 2069 e.stdout_lines i │ │ │ +001c3250: 7320 6465 6669 6e65 640a 2020 2d20 2864 s defined. - (d │ │ │ +001c3260: 6576 6963 655f 6e61 6d65 2e73 7464 6f75 evice_name.stdou │ │ │ +001c3270: 7420 7c20 6c65 6e67 7468 203d 3d20 3029 t | length == 0) │ │ │ +001c3280: 0a20 2074 6167 733a 0a20 202d 2063 6f6e . tags:. - con │ │ │ +001c3290: 6669 6775 7265 5f73 7472 6174 6567 790a figure_strategy. │ │ │ +001c32a0: 2020 2d20 6869 6768 5f64 6973 7275 7074 - high_disrupt │ │ │ +001c32b0: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70 ion. - low_comp │ │ │ +001c32c0: 6c65 7869 7479 0a20 202d 206d 6564 6975 lexity. - mediu │ │ │ +001c32d0: 6d5f 7365 7665 7269 7479 0a20 202d 206d m_severity. - m │ │ │ +001c32e0: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f ount_option_var_ │ │ │ +001c32f0: 746d 705f 6e6f 6465 760a 2020 2d20 6e6f tmp_nodev. - no │ │ │ +001c3300: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a _reboot_needed.. │ │ │ +001c3310: 2d20 6e61 6d65 3a20 2741 6464 206e 6f64 - name: 'Add nod │ │ │ +001c3320: 6576 204f 7074 696f 6e20 746f 202f 7661 ev Option to /va │ │ │ +001c3330: 722f 746d 703a 204d 616b 6520 7375 7265 r/tmp: Make sure │ │ │ +001c3340: 206e 6f64 6576 206f 7074 696f 6e20 6973 nodev option is │ │ │ +001c3350: 2070 6172 7420 6f66 2074 6865 2074 6f20 part of the to │ │ │ +001c3360: 2f76 6172 2f74 6d70 0a20 2020 206f 7074 /var/tmp. opt │ │ │ +001c3370: 696f 6e73 270a 2020 7365 745f 6661 6374 ions'. set_fact │ │ │ +001c3380: 3a0a 2020 2020 6d6f 756e 745f 696e 666f :. mount_info │ │ │ +001c3390: 3a20 277b 7b20 6d6f 756e 745f 696e 666f : '{{ mount_info │ │ │ +001c33a0: 207c 2063 6f6d 6269 6e65 2820 7b27 276f | combine( {''o │ │ │ +001c33b0: 7074 696f 6e73 2727 3a27 2727 277e 286d ptions'':''''~(m │ │ │ +001c33c0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e ount_info.option │ │ │ +001c33d0: 7320 7c0a 2020 2020 2020 6465 6661 756c s |. defaul │ │ │ +001c33e0: 7428 2727 2727 2929 7e28 2727 2c27 2720 t(''''))~('','' │ │ │ +001c33f0: 6966 2028 6d6f 756e 745f 696e 666f 2e6f if (mount_info.o │ │ │ +001c3400: 7074 696f 6e73 207c 2064 6566 6175 6c74 ptions | default │ │ │ +001c3410: 2827 2727 2729 2920 656c 7365 2027 2727 ('''')) else ''' │ │ │ +001c3420: 2729 7e27 276e 6f64 6576 2727 0a20 2020 ')~''nodev''. │ │ │ +001c3430: 2020 207d 2920 7d7d 270a 2020 7768 656e }) }}'. when │ │ │ +001c3440: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b :. - ( not ( "k │ │ │ +001c3450: 6572 6e65 6c22 2069 6e20 616e 7369 626c ernel" in ansibl │ │ │ +001c3460: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ +001c3470: 2061 6e64 2022 7270 6d2d 6f73 7472 6565 and "rpm-ostree │ │ │ +001c3480: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ +001c3490: 7473 2e70 6163 6b61 6765 730a 2020 2020 ts.packages. │ │ │ +001c34a0: 616e 6420 2262 6f6f 7463 2220 696e 2061 and "bootc" in a │ │ │ +001c34b0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ +001c34c0: 6b61 6765 7320 616e 6420 6e6f 7420 226f kages and not "o │ │ │ +001c34d0: 7065 6e73 6869 6674 2d6b 7562 656c 6574 penshift-kubelet │ │ │ +001c34e0: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ +001c34f0: 7473 2e70 6163 6b61 6765 730a 2020 2020 ts.packages. │ │ │ +001c3500: 616e 6420 226f 7374 7265 6522 2069 6e20 and "ostree" in │ │ │ +001c3510: 616e 7369 626c 655f 7072 6f63 5f63 6d64 ansible_proc_cmd │ │ │ +001c3520: 6c69 6e65 2029 2061 6e64 206e 6f74 2028 line ) and not ( │ │ │ +001c3530: 2061 6e73 6962 6c65 5f76 6972 7475 616c ansible_virtual │ │ │ +001c3540: 697a 6174 696f 6e5f 7479 7065 2069 6e0a ization_type in. │ │ │ +001c3550: 2020 2020 5b22 646f 636b 6572 222c 2022 ["docker", " │ │ │ +001c3560: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20 lxc", "openvz", │ │ │ +001c3570: 2270 6f64 6d61 6e22 2c20 2263 6f6e 7461 "podman", "conta │ │ │ +001c3580: 696e 6572 225d 2029 2029 0a20 202d 2027 iner"] ) ). - ' │ │ │ +001c3590: 222f 7661 722f 746d 7022 2069 6e20 616e "/var/tmp" in an │ │ │ +001c35a0: 7369 626c 655f 6d6f 756e 7473 207c 206d sible_mounts | m │ │ │ +001c35b0: 6170 2861 7474 7269 6275 7465 3d22 6d6f ap(attribute="mo │ │ │ +001c35c0: 756e 7422 2920 7c20 6c69 7374 270a 2020 unt") | list'. │ │ │ +001c35d0: 2d20 6d6f 756e 745f 696e 666f 2069 7320 - mount_info is │ │ │ +001c35e0: 6465 6669 6e65 6420 616e 6420 226e 6f64 defined and "nod │ │ │ +001c35f0: 6576 2220 6e6f 7420 696e 2028 6d6f 756e ev" not in (moun │ │ │ +001c3600: 745f 696e 666f 2e6f 7074 696f 6e73 207c t_info.options | │ │ │ +001c3610: 2064 6566 6175 6c74 2827 2729 290a 2020 default('')). │ │ │ +001c3620: 7461 6773 3a0a 2020 2d20 636f 6e66 6967 tags:. - config │ │ │ +001c3630: 7572 655f 7374 7261 7465 6779 0a20 202d ure_strategy. - │ │ │ +001c3640: 2068 6967 685f 6469 7372 7570 7469 6f6e high_disruption │ │ │ +001c3650: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ +001c3660: 6974 790a 2020 2d20 6d65 6469 756d 5f73 ity. - medium_s │ │ │ +001c3670: 6576 6572 6974 790a 2020 2d20 6d6f 756e everity. - moun │ │ │ +001c3680: 745f 6f70 7469 6f6e 5f76 6172 5f74 6d70 t_option_var_tmp │ │ │ +001c3690: 5f6e 6f64 6576 0a20 202d 206e 6f5f 7265 _nodev. - no_re │ │ │ +001c36a0: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e boot_needed..- n │ │ │ +001c36b0: 616d 653a 2027 4164 6420 6e6f 6465 7620 ame: 'Add nodev │ │ │ +001c36c0: 4f70 7469 6f6e 2074 6f20 2f76 6172 2f74 Option to /var/t │ │ │ +001c36d0: 6d70 3a20 456e 7375 7265 202f 7661 722f mp: Ensure /var/ │ │ │ +001c36e0: 746d 7020 6973 206d 6f75 6e74 6564 2077 tmp is mounted w │ │ │ +001c36f0: 6974 6820 6e6f 6465 7620 6f70 7469 6f6e ith nodev option │ │ │ +001c3700: 270a 2020 616e 7369 626c 652e 706f 7369 '. ansible.posi │ │ │ +001c3710: 782e 6d6f 756e 743a 0a20 2020 2070 6174 x.mount:. pat │ │ │ +001c3720: 683a 202f 7661 722f 746d 700a 2020 2020 h: /var/tmp. │ │ │ +001c3730: 7372 633a 2027 7b7b 206d 6f75 6e74 5f69 src: '{{ mount_i │ │ │ +001c3740: 6e66 6f2e 736f 7572 6365 207c 2064 6566 nfo.source | def │ │ │ +001c3750: 6175 6c74 2827 2727 2729 207d 7d27 0a20 ault('''') }}'. │ │ │ +001c3760: 2020 206f 7074 733a 2027 7b7b 206d 6f75 opts: '{{ mou │ │ │ +001c3770: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320 nt_info.options │ │ │ +001c3780: 7c20 6465 6661 756c 7428 2727 2727 2920 | default('''') │ │ │ +001c3790: 7d7d 270a 2020 2020 7374 6174 653a 206d }}'. state: m │ │ │ +001c37a0: 6f75 6e74 6564 0a20 2020 2066 7374 7970 ounted. fstyp │ │ │ +001c37b0: 653a 2027 7b7b 206d 6f75 6e74 5f69 6e66 e: '{{ mount_inf │ │ │ +001c37c0: 6f2e 6673 7479 7065 207c 2064 6566 6175 o.fstype | defau │ │ │ +001c37d0: 6c74 2827 2727 2729 207d 7d27 0a20 2072 lt('''') }}'. r │ │ │ +001c37e0: 6567 6973 7465 723a 206d 6f75 6e74 5f72 egister: mount_r │ │ │ +001c37f0: 6573 756c 740a 2020 6661 696c 6564 5f77 esult. failed_w │ │ │ +001c3800: 6865 6e3a 0a20 202d 206d 6f75 6e74 5f72 hen:. - mount_r │ │ │ +001c3810: 6573 756c 7420 6973 2066 6169 6c65 640a esult is failed. │ │ │ +001c3820: 2020 2d20 2727 2774 6172 6765 7420 6973 - '''target is │ │ │ +001c3830: 2062 7573 7927 2720 6e6f 7420 696e 2028 busy'' not in ( │ │ │ +001c3840: 6d6f 756e 745f 7265 7375 6c74 2e6d 7367 mount_result.msg │ │ │ +001c3850: 207c 2064 6566 6175 6c74 2827 2727 2729 | default('''') │ │ │ +001c3860: 2927 0a20 202d 2027 2727 616c 7265 6164 )'. - '''alread │ │ │ +001c3870: 7920 6d6f 756e 7465 6427 2720 6e6f 7420 y mounted'' not │ │ │ +001c3880: 696e 2028 6d6f 756e 745f 7265 7375 6c74 in (mount_result │ │ │ +001c3890: 2e6d 7367 207c 2064 6566 6175 6c74 2827 .msg | default(' │ │ │ +001c38a0: 2727 2729 2927 0a20 2077 6865 6e3a 0a20 '''))'. when:. │ │ │ +001c38b0: 202d 2028 206e 6f74 2028 2022 6b65 726e - ( not ( "kern │ │ │ +001c38c0: 656c 2220 696e 2061 6e73 6962 6c65 5f66 el" in ansible_f │ │ │ +001c38d0: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ +001c38e0: 6420 2272 706d 2d6f 7374 7265 6522 2069 d "rpm-ostree" i │ │ │ +001c38f0: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001c3900: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ +001c3910: 2022 626f 6f74 6322 2069 6e20 616e 7369 "bootc" in ansi │ │ │ +001c3920: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +001c3930: 6573 2061 6e64 206e 6f74 2022 6f70 656e es and not "open │ │ │ +001c3940: 7368 6966 742d 6b75 6265 6c65 7422 2069 shift-kubelet" i │ │ │ +001c3950: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001c3960: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ +001c3970: 2022 6f73 7472 6565 2220 696e 2061 6e73 "ostree" in ans │ │ │ +001c3980: 6962 6c65 5f70 726f 635f 636d 646c 696e ible_proc_cmdlin │ │ │ +001c3990: 6520 2920 616e 6420 6e6f 7420 2820 616e e ) and not ( an │ │ │ +001c39a0: 7369 626c 655f 7669 7274 7561 6c69 7a61 sible_virtualiza │ │ │ +001c39b0: 7469 6f6e 5f74 7970 6520 696e 0a20 2020 tion_type in. │ │ │ +001c39c0: 205b 2264 6f63 6b65 7222 2c20 226c 7863 ["docker", "lxc │ │ │ +001c39d0: 222c 2022 6f70 656e 767a 222c 2022 706f ", "openvz", "po │ │ │ +001c39e0: 646d 616e 222c 2022 636f 6e74 6169 6e65 dman", "containe │ │ │ +001c39f0: 7222 5d20 2920 290a 2020 2d20 2722 2f76 r"] ) ). - '"/v │ │ │ +001c3a00: 6172 2f74 6d70 2220 696e 2061 6e73 6962 ar/tmp" in ansib │ │ │ +001c3a10: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028 le_mounts | map( │ │ │ +001c3a20: 6174 7472 6962 7574 653d 226d 6f75 6e74 attribute="mount │ │ │ +001c3a30: 2229 207c 206c 6973 7427 0a20 202d 206d ") | list'. - m │ │ │ +001c3a40: 6f75 6e74 5f69 6e66 6f20 6973 2064 6566 ount_info is def │ │ │ +001c3a50: 696e 6564 0a20 202d 2028 6465 7669 6365 ined. - (device │ │ │ +001c3a60: 5f6e 616d 652e 7374 646f 7574 2069 7320 _name.stdout is │ │ │ +001c3a70: 6465 6669 6e65 6420 616e 6420 2864 6576 defined and (dev │ │ │ +001c3a80: 6963 655f 6e61 6d65 2e73 7464 6f75 7420 ice_name.stdout │ │ │ +001c3a90: 7c20 6c65 6e67 7468 2026 6774 3b20 3029 | length > 0) │ │ │ +001c3aa0: 2920 6f72 2028 222d 2d66 7374 6162 220a ) or ("--fstab". │ │ │ +001c3ab0: 2020 2020 7c20 6c65 6e67 7468 203d 3d20 | length == │ │ │ +001c3ac0: 3029 0a20 2074 6167 733a 0a20 202d 2063 0). tags:. - c │ │ │ +001c3ad0: 6f6e 6669 6775 7265 5f73 7472 6174 6567 onfigure_strateg │ │ │ +001c3ae0: 790a 2020 2d20 6869 6768 5f64 6973 7275 y. - high_disru │ │ │ +001c3af0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f ption. - low_co │ │ │ +001c3b00: 6d70 6c65 7869 7479 0a20 202d 206d 6564 mplexity. - med │ │ │ +001c3b10: 6975 6d5f 7365 7665 7269 7479 0a20 202d ium_severity. - │ │ │ +001c3b20: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661 mount_option_va │ │ │ +001c3b30: 725f 746d 705f 6e6f 6465 760a 2020 2d20 r_tmp_nodev. - │ │ │ +001c3b40: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564 no_reboot_needed │ │ │ +001c3b50: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .Remediation She │ │ │ +001c3c10: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...

# Remediation i
│ │ │ +001c3ce0: 7320 6170 706c 6963 6162 6c65 206f 6e6c  s applicable onl
│ │ │ +001c3cf0: 7920 696e 2063 6572 7461 696e 2070 6c61  y in certain pla
│ │ │ +001c3d00: 7466 6f72 6d73 0a69 6620 2820 2120 2820  tforms.if ( ! ( 
│ │ │ +001c3d10: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ +001c3d20: 206b 6572 6e65 6c20 3b7d 2026 616d 703b   kernel ;} &
│ │ │ +001c3d30: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ +001c3d40: 6965 7420 2d71 2072 706d 2d6f 7374 7265  iet -q rpm-ostre
│ │ │ +001c3d50: 6520 3b7d 2026 616d 703b 2661 6d70 3b20  e ;} && 
│ │ │ +001c3d60: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ +001c3d70: 2062 6f6f 7463 203b 7d20 2661 6d70 3b26   bootc ;} &&
│ │ │ +001c3d80: 616d 703b 207b 2021 2072 706d 202d 2d71  amp; { ! rpm --q
│ │ │ +001c3d90: 7569 6574 202d 7120 6f70 656e 7368 6966  uiet -q openshif
│ │ │ +001c3da0: 742d 6b75 6265 6c65 7420 3b7d 2026 616d  t-kubelet ;} &am
│ │ │ +001c3db0: 703b 2661 6d70 3b20 285b 202d 6620 2f72  p;& ([ -f /r
│ │ │ +001c3dc0: 756e 2f6f 7374 7265 652d 626f 6f74 6564  un/ostree-booted
│ │ │ +001c3dd0: 205d 207c 7c20 5b20 2d4c 202f 6f73 7472   ] || [ -L /ostr
│ │ │ +001c3de0: 6565 205d 2920 2920 2661 6d70 3b26 616d  ee ]) ) &&am
│ │ │ +001c3df0: 703b 2021 2028 205b 202d 6620 2f2e 646f  p; ! ( [ -f /.do
│ │ │ +001c3e00: 636b 6572 656e 7620 5d20 7c7c 205b 202d  ckerenv ] || [ -
│ │ │ +001c3e10: 6620 2f72 756e 2f2e 636f 6e74 6169 6e65  f /run/.containe
│ │ │ +001c3e20: 7265 6e76 205d 2029 2029 2026 616d 703b  renv ] ) ) &
│ │ │ +001c3e30: 2661 6d70 3b20 7b20 2820 6669 6e64 6d6e  & { ( findmn
│ │ │ +001c3e40: 7420 2d2d 6b65 726e 656c 2022 2f76 6172  t --kernel "/var
│ │ │ +001c3e50: 2f74 6d70 2220 2667 743b 202f 6465 762f  /tmp" > /dev/
│ │ │ +001c3e60: 6e75 6c6c 207c 7c20 6669 6e64 6d6e 7420  null || findmnt 
│ │ │ +001c3e70: 2d2d 6673 7461 6220 222f 7661 722f 746d  --fstab "/var/tm
│ │ │ +001c3e80: 7022 2026 6774 3b20 2f64 6576 2f6e 756c  p" > /dev/nul
│ │ │ +001c3e90: 6c20 293b 207d 3b20 7468 656e 0a0a 6675  l ); }; then..fu
│ │ │ +001c3ea0: 6e63 7469 6f6e 2070 6572 666f 726d 5f72  nction perform_r
│ │ │ +001c3eb0: 656d 6564 6961 7469 6f6e 207b 0a0a 2020  emediation {..  
│ │ │ +001c3ec0: 2020 0a20 2020 2020 2020 2023 2074 6865    .        # the
│ │ │ +001c3ed0: 206d 6f75 6e74 2070 6f69 6e74 202f 7661   mount point /va
│ │ │ +001c3ee0: 722f 746d 7020 6861 7320 746f 2062 6520  r/tmp has to be 
│ │ │ +001c3ef0: 6465 6669 6e65 6420 696e 202f 6574 632f  defined in /etc/
│ │ │ +001c3f00: 6673 7461 620a 2020 2020 2020 2020 2320  fstab.        # 
│ │ │ +001c3f10: 6265 666f 7265 2074 6869 7320 7265 6d65  before this reme
│ │ │ +001c3f20: 6469 6174 696f 6e20 6361 6e20 6265 2065  diation can be e
│ │ │ +001c3f30: 7865 6375 7465 642e 2049 6e20 6361 7365  xecuted. In case
│ │ │ +001c3f40: 2069 7420 6973 206e 6f74 2064 6566 696e   it is not defin
│ │ │ +001c3f50: 6564 2c20 7468 650a 2020 2020 2020 2020  ed, the.        
│ │ │ +001c3f60: 2320 7265 6d65 6469 6174 696f 6e20 6162  # remediation ab
│ │ │ +001c3f70: 6f72 7473 2061 6e64 206e 6f20 6368 616e  orts and no chan
│ │ │ +001c3f80: 6765 7320 7265 6761 7264 696e 6720 7468  ges regarding th
│ │ │ +001c3f90: 6520 6d6f 756e 7420 706f 696e 7420 6172  e mount point ar
│ │ │ +001c3fa0: 6520 646f 6e65 2e0a 2020 2020 2020 2020  e done..        
│ │ │ +001c3fb0: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001c3fc0: 685f 7265 6765 7870 3d22 2428 7072 696e  h_regexp="$(prin
│ │ │ +001c3fd0: 7466 2022 5e5b 5b3a 7370 6163 653a 5d5d  tf "^[[:space:]]
│ │ │ +001c3fe0: 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163 653a  *[^#].*[[:space:
│ │ │ +001c3ff0: 5d5d 2573 5b5b 3a73 7061 6365 3a5d 5d22  ]]%s[[:space:]]"
│ │ │ +001c4000: 2022 2f76 6172 2f74 6d70 2229 220a 0a20   "/var/tmp")".. 
│ │ │ +001c4010: 2020 2067 7265 7020 2224 6d6f 756e 745f     grep "$mount_
│ │ │ +001c4020: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001c4030: 7870 2220 2d71 202f 6574 632f 6673 7461  xp" -q /etc/fsta
│ │ │ +001c4040: 6220 5c0a 2020 2020 2020 2020 7c7c 207b  b \.        || {
│ │ │ +001c4050: 2065 6368 6f20 2254 6865 206d 6f75 6e74   echo "The mount
│ │ │ +001c4060: 2070 6f69 6e74 2027 2f76 6172 2f74 6d70   point '/var/tmp
│ │ │ +001c4070: 2720 6973 206e 6f74 2065 7665 6e20 696e  ' is not even in
│ │ │ +001c4080: 202f 6574 632f 6673 7461 622c 2073 6f20   /etc/fstab, so 
│ │ │ +001c4090: 7765 2063 616e 2774 2073 6574 2075 7020  we can't set up 
│ │ │ +001c40a0: 6d6f 756e 7420 6f70 7469 6f6e 7322 2026  mount options" &
│ │ │ +001c40b0: 6774 3b26 616d 703b 323b 0a20 2020 2020  gt;&2;.     
│ │ │ +001c40c0: 2020 2020 2020 2020 2020 2065 6368 6f20             echo 
│ │ │ +001c40d0: 224e 6f74 2072 656d 6564 6961 7469 6e67  "Not remediating
│ │ │ +001c40e0: 2c20 6265 6361 7573 6520 7468 6572 6520  , because there 
│ │ │ +001c40f0: 6973 206e 6f20 7265 636f 7264 206f 6620  is no record of 
│ │ │ +001c4100: 2f76 6172 2f74 6d70 2069 6e20 2f65 7463  /var/tmp in /etc
│ │ │ +001c4110: 2f66 7374 6162 2220 2667 743b 2661 6d70  /fstab" >&
│ │ │ +001c4120: 3b32 3b20 7265 7475 726e 2031 3b20 7d0a  ;2; return 1; }.
│ │ │ +001c4130: 2020 2020 0a0a 0a20 2020 206d 6f75 6e74      ...    mount
│ │ │ +001c4140: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001c4150: 6578 703d 2224 2870 7269 6e74 6620 225e  exp="$(printf "^
│ │ │ +001c4160: 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e 235d  [[:space:]]*[^#]
│ │ │ +001c4170: 2e2a 5b5b 3a73 7061 6365 3a5d 5d25 735b  .*[[:space:]]%s[
│ │ │ +001c4180: 5b3a 7370 6163 653a 5d5d 2220 2f76 6172  [:space:]]" /var
│ │ │ +001c4190: 2f74 6d70 2922 0a0a 2020 2020 2320 4966  /tmp)"..    # If
│ │ │ +001c41a0: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ +001c41b0: 2069 7320 6e6f 7420 696e 202f 6574 632f   is not in /etc/
│ │ │ +001c41c0: 6673 7461 622c 2067 6574 2070 7265 7669  fstab, get previ
│ │ │ +001c41d0: 6f75 7320 6d6f 756e 7420 6f70 7469 6f6e  ous mount option
│ │ │ +001c41e0: 7320 6672 6f6d 202f 6574 632f 6d74 6162  s from /etc/mtab
│ │ │ +001c41f0: 0a20 2020 2069 6620 2120 6772 6570 202d  .    if ! grep -
│ │ │ +001c4200: 7120 2224 6d6f 756e 745f 706f 696e 745f  q "$mount_point_
│ │ │ +001c4210: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ +001c4220: 7463 2f66 7374 6162 3b20 7468 656e 0a20  tc/fstab; then. 
│ │ │ +001c4230: 2020 2020 2020 2023 2072 756e 7469 6d65         # runtime
│ │ │ +001c4240: 206f 7074 7320 7769 7468 6f75 7420 736f   opts without so
│ │ │ +001c4250: 6d65 2061 7574 6f6d 6174 6963 206b 6572  me automatic ker
│ │ │ +001c4260: 6e65 6c2f 7573 6572 7370 6163 652d 6164  nel/userspace-ad
│ │ │ +001c4270: 6465 6420 6465 6661 756c 7473 0a20 2020  ded defaults.   
│ │ │ +001c4280: 2020 2020 2070 7265 7669 6f75 735f 6d6f       previous_mo
│ │ │ +001c4290: 756e 745f 6f70 7473 3d24 2867 7265 7020  unt_opts=$(grep 
│ │ │ +001c42a0: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ +001c42b0: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ +001c42c0: 2f6d 7461 6220 7c20 6865 6164 202d 3120  /mtab | head -1 
│ │ │ +001c42d0: 7c20 2061 776b 2027 7b70 7269 6e74 2024  |  awk '{print $
│ │ │ +001c42e0: 347d 2720 5c0a 2020 2020 2020 2020 2020  4}' \.          
│ │ │ +001c42f0: 2020 2020 2020 2020 2020 7c20 7365 6420            | sed 
│ │ │ +001c4300: 2d45 2022 732f 2872 777c 6465 6661 756c  -E "s/(rw|defaul
│ │ │ +001c4310: 7473 7c73 6563 6c61 6265 6c7c 6e6f 6465  ts|seclabel|node
│ │ │ +001c4320: 7629 282c 7c24 292f 2f67 3b73 2f2c 242f  v)(,|$)//g;s/,$/
│ │ │ +001c4330: 2f22 290a 2020 2020 2020 2020 5b20 2224  /").        [ "$
│ │ │ +001c4340: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001c4350: 7074 7322 205d 2026 616d 703b 2661 6d70  pts" ] &&
│ │ │ +001c4360: 3b20 7072 6576 696f 7573 5f6d 6f75 6e74  ; previous_mount
│ │ │ +001c4370: 5f6f 7074 732b 3d22 2c22 0a20 2020 2020  _opts+=",".     
│ │ │ +001c4380: 2020 2023 2049 6e20 6973 6f39 3636 3020     # In iso9660 
│ │ │ +001c4390: 6669 6c65 7379 7374 656d 7320 6d74 6162  filesystems mtab
│ │ │ +001c43a0: 2063 6f75 6c64 2064 6573 6372 6962 6520   could describe 
│ │ │ +001c43b0: 6120 2262 6c6f 636b 7369 7a65 2220 7661  a "blocksize" va
│ │ │ +001c43c0: 6c75 652c 2074 6869 7320 7368 6f75 6c64  lue, this should
│ │ │ +001c43d0: 2062 6520 7265 666c 6563 7465 6420 696e   be reflected in
│ │ │ +001c43e0: 0a20 2020 2020 2020 2023 2066 7374 6162  .        # fstab
│ │ │ +001c43f0: 2061 7320 2262 6c6f 636b 222e 2020 5468   as "block".  Th
│ │ │ +001c4400: 6520 6e65 7874 2076 6172 6961 626c 6520  e next variable 
│ │ │ +001c4410: 6973 2074 6f20 7361 7469 7366 7920 7368  is to satisfy sh
│ │ │ +001c4420: 656c 6c63 6865 636b 2053 4332 3035 302e  ellcheck SC2050.
│ │ │ +001c4430: 0a20 2020 2020 2020 2066 735f 7479 7065  .        fs_type
│ │ │ +001c4440: 3d22 220a 2020 2020 2020 2020 6966 205b  ="".        if [
│ │ │ +001c4450: 2020 2224 6673 5f74 7970 6522 203d 3d20    "$fs_type" == 
│ │ │ +001c4460: 2269 736f 3936 3630 2220 5d20 3b20 7468  "iso9660" ] ; th
│ │ │ +001c4470: 656e 0a20 2020 2020 2020 2020 2020 2070  en.            p
│ │ │ +001c4480: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001c4490: 7473 3d24 2873 6564 2027 732f 626c 6f63  ts=$(sed 's/bloc
│ │ │ +001c44a0: 6b73 697a 653d 2f62 6c6f 636b 3d2f 2720  ksize=/block=/' 
│ │ │ +001c44b0: 266c 743b 266c 743b 266c 743b 2022 2470  <<< "$p
│ │ │ +001c44c0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001c44d0: 7473 2229 0a20 2020 2020 2020 2066 690a  ts").        fi.
│ │ │ +001c44e0: 2020 2020 2020 2020 6563 686f 2022 202f          echo " /
│ │ │ +001c44f0: 7661 722f 746d 7020 2064 6566 6175 6c74  var/tmp  default
│ │ │ +001c4500: 732c 247b 7072 6576 696f 7573 5f6d 6f75  s,${previous_mou
│ │ │ +001c4510: 6e74 5f6f 7074 737d 6e6f 6465 7620 3020  nt_opts}nodev 0 
│ │ │ +001c4520: 3022 2026 6774 3b26 6774 3b20 2f65 7463  0" >> /etc
│ │ │ +001c4530: 2f66 7374 6162 0a20 2020 2023 2049 6620  /fstab.    # If 
│ │ │ +001c4540: 7468 6520 6d6f 756e 745f 6f70 7420 6f70  the mount_opt op
│ │ │ +001c4550: 7469 6f6e 2069 7320 6e6f 7420 616c 7265  tion is not alre
│ │ │ +001c4560: 6164 7920 696e 2074 6865 206d 6f75 6e74  ady in the mount
│ │ │ +001c4570: 2070 6f69 6e74 2773 202f 6574 632f 6673   point's /etc/fs
│ │ │ +001c4580: 7461 6220 656e 7472 792c 2061 6464 2069  tab entry, add i
│ │ │ +001c4590: 740a 2020 2020 656c 6966 2021 2067 7265  t.    elif ! gre
│ │ │ +001c45a0: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ +001c45b0: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ +001c45c0: 7463 2f66 7374 6162 207c 2067 7265 7020  tc/fstab | grep 
│ │ │ +001c45d0: 2d71 2022 6e6f 6465 7622 3b20 7468 656e  -q "nodev"; then
│ │ │ +001c45e0: 0a20 2020 2020 2020 2070 7265 7669 6f75  .        previou
│ │ │ +001c45f0: 735f 6d6f 756e 745f 6f70 7473 3d24 2867  s_mount_opts=$(g
│ │ │ +001c4600: 7265 7020 2224 6d6f 756e 745f 706f 696e  rep "$mount_poin
│ │ │ +001c4610: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ +001c4620: 2f65 7463 2f66 7374 6162 207c 2061 776b  /etc/fstab | awk
│ │ │ +001c4630: 2027 7b70 7269 6e74 2024 347d 2729 0a20   '{print $4}'). 
│ │ │ +001c4640: 2020 2020 2020 2073 6564 202d 6920 2273         sed -i "s
│ │ │ +001c4650: 7c5c 2824 7b6d 6f75 6e74 5f70 6f69 6e74  |\(${mount_point
│ │ │ +001c4660: 5f6d 6174 6368 5f72 6567 6578 707d 2e2a  _match_regexp}.*
│ │ │ +001c4670: 247b 7072 6576 696f 7573 5f6d 6f75 6e74  ${previous_mount
│ │ │ +001c4680: 5f6f 7074 737d 5c29 7c5c 312c 6e6f 6465  _opts}\)|\1,node
│ │ │ +001c4690: 767c 2220 2f65 7463 2f66 7374 6162 0a20  v|" /etc/fstab. 
│ │ │ +001c46a0: 2020 2066 690a 0a0a 2020 2020 6966 206d     fi...    if m
│ │ │ +001c46b0: 6b64 6972 202d 7020 222f 7661 722f 746d  kdir -p "/var/tm
│ │ │ +001c46c0: 7022 3b20 7468 656e 0a20 2020 2020 2020  p"; then.       
│ │ │ +001c46d0: 2069 6620 6d6f 756e 7470 6f69 6e74 202d   if mountpoint -
│ │ │ +001c46e0: 7120 222f 7661 722f 746d 7022 3b20 7468  q "/var/tmp"; th
│ │ │ +001c46f0: 656e 0a20 2020 2020 2020 2020 2020 206d  en.            m
│ │ │ +001c4700: 6f75 6e74 202d 6f20 7265 6d6f 756e 7420  ount -o remount 
│ │ │ +001c4710: 2d2d 7461 7267 6574 2022 2f76 6172 2f74  --target "/var/t
│ │ │ +001c4720: 6d70 220a 2020 2020 2020 2020 6669 0a20  mp".        fi. 
│ │ │ +001c4730: 2020 2066 690a 7d0a 0a70 6572 666f 726d     fi.}..perform
│ │ │ +001c4740: 5f72 656d 6564 6961 7469 6f6e 0a0a 656c  _remediation..el
│ │ │ +001c4750: 7365 0a20 2020 2026 6774 3b26 616d 703b  se.    >&
│ │ │ +001c4760: 3220 6563 686f 2027 5265 6d65 6469 6174  2 echo 'Remediat
│ │ │ +001c4770: 696f 6e20 6973 206e 6f74 2061 7070 6c69  ion is not appli
│ │ │ +001c4780: 6361 626c 652c 206e 6f74 6869 6e67 2077  cable, nothing w
│ │ │ +001c4790: 6173 2064 6f6e 6527 0a66 690a 3c2f 636f  as done'.fi.
< │ │ │ +001c47b0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +001c47c0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +001c47d0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +001c47e0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +001c47f0: 6434 3933 2220 7461 6269 6e64 6578 3d22 d493" tabindex=" │ │ │ +001c4800: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +001c4810: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +001c4820: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +001c4830: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +001c4840: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +001c4850: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ +001c4860: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +001c4870: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
R │ │ │ +001c3ca0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +001c3cb0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c2f alse
low< │ │ │ +001c4910: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr> │ │ │ +001c4960: 3c74 723e 3c74 683e 5374 7261 7465 6779
.pa
│ │ │ +001c49a0: 7274 202f 7661 722f 746d 7020 2d2d 6d6f  rt /var/tmp --mo
│ │ │ +001c49b0: 756e 746f 7074 696f 6e73 3d22 6e6f 6465  untoptions="node
│ │ │ +001c49c0: 7622 0a3c 2f63 6f64 653e 3c2f 7072 653e  v".
│ │ │ 001c49d0: 3c2f 6469 763e 3c2f 6469 763e 3c2f 7464 │ │ │ 001c4a00: 3c74 7220 6461 7461 2d74 742d 6964 3d22 Remed │ │ │ -001c53c0: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ -001c53d0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -001c53e0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Co │ │ │ +001c48f0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +001c4920: 6e3a 3c2f 7468 3e3c 7464 3e68 6967 683c n:high< │ │ │ +001c4930: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +001c4970: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +001c4980: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ -001c54d0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Com │ │ │ -001c5460: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -001c5490: 3a3c 2f74 683e 3c74 643e 6869 6768 3c2f :high
│ │ │ -001c54b0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -001c54c0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -001c54e0: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -001c54f0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.par
│ │ │ -001c5510: 7420 2f76 6172 2f74 6d70 202d 2d6d 6f75  t /var/tmp --mou
│ │ │ -001c5520: 6e74 6f70 7469 6f6e 733d 226e 6f65 7865  ntoptions="noexe
│ │ │ -001c5530: 6322 0a3c 2f63 6f64 653e 3c2f 7072 653e  c".
│ │ │ -001c5540: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation A │ │ │ -001c55f0: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ -001c5600: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -001c5680: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -001c56a0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ -001c56d0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
Complexity:< │ │ │ -001c5690: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -001c56b0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ -001c5700: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -001c5710: 636f 6e66 6967 7572 653c 2f74 643e 3c2f configure
│ │ │ -001c5730: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -001c5740: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -001c5750: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -001c5760: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -001c5770: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -001c5780: 3a0a 2020 2d20 636f 6e66 6967 7572 655f  :.  - configure_
│ │ │ -001c5790: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001c57a0: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001c57b0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001c57c0: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001c57d0: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001c57e0: 7469 6f6e 5f76 6172 5f74 6d70 5f6e 6f65  tion_var_tmp_noe
│ │ │ -001c57f0: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f  xec.  - no_reboo
│ │ │ -001c5800: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ -001c5810: 3a20 2741 6464 206e 6f65 7865 6320 4f70  : 'Add noexec Op
│ │ │ -001c5820: 7469 6f6e 2074 6f20 2f76 6172 2f74 6d70  tion to /var/tmp
│ │ │ -001c5830: 3a20 4368 6563 6b20 696e 666f 726d 6174  : Check informat
│ │ │ -001c5840: 696f 6e20 6173 736f 6369 6174 6564 2074  ion associated t
│ │ │ -001c5850: 6f20 6d6f 756e 7470 6f69 6e74 270a 2020  o mountpoint'.  
│ │ │ -001c5860: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -001c5870: 636f 6d6d 616e 643a 2066 696e 646d 6e74  command: findmnt
│ │ │ -001c5880: 202d 2d66 7374 6162 2027 2f76 6172 2f74   --fstab '/var/t
│ │ │ -001c5890: 6d70 270a 2020 7265 6769 7374 6572 3a20  mp'.  register: 
│ │ │ -001c58a0: 6465 7669 6365 5f6e 616d 650a 2020 6661  device_name.  fa
│ │ │ -001c58b0: 696c 6564 5f77 6865 6e3a 2064 6576 6963  iled_when: devic
│ │ │ -001c58c0: 655f 6e61 6d65 2e72 6320 2667 743b 2031  e_name.rc > 1
│ │ │ -001c58d0: 0a20 2063 6861 6e67 6564 5f77 6865 6e3a  .  changed_when:
│ │ │ -001c58e0: 2066 616c 7365 0a20 2063 6865 636b 5f6d   false.  check_m
│ │ │ -001c58f0: 6f64 653a 2066 616c 7365 0a20 2077 6865  ode: false.  whe
│ │ │ -001c5900: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ -001c5910: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -001c5920: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001c5930: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ -001c5940: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ -001c5950: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001c5960: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -001c5970: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001c5980: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ -001c5990: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001c59a0: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001c59b0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001c59c0: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -001c59d0: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -001c59e0: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ -001c59f0: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001c5a00: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001c5a10: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ -001c5a20: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -001c5a30: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ -001c5a40: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001c5a50: 2722 2f76 6172 2f74 6d70 2220 696e 2061  '"/var/tmp" in a
│ │ │ -001c5a60: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ -001c5a70: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ -001c5a80: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ -001c5a90: 2074 6167 733a 0a20 202d 2063 6f6e 6669   tags:.  - confi
│ │ │ -001c5aa0: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ -001c5ab0: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ -001c5ac0: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ -001c5ad0: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ -001c5ae0: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ -001c5af0: 6e74 5f6f 7074 696f 6e5f 7661 725f 746d  nt_option_var_tm
│ │ │ -001c5b00: 705f 6e6f 6578 6563 0a20 202d 206e 6f5f  p_noexec.  - no_
│ │ │ -001c5b10: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001c5b20: 206e 616d 653a 2027 4164 6420 6e6f 6578   name: 'Add noex
│ │ │ -001c5b30: 6563 204f 7074 696f 6e20 746f 202f 7661  ec Option to /va
│ │ │ -001c5b40: 722f 746d 703a 2043 7265 6174 6520 6d6f  r/tmp: Create mo
│ │ │ -001c5b50: 756e 745f 696e 666f 2064 6963 7469 6f6e  unt_info diction
│ │ │ -001c5b60: 6172 7920 7661 7269 6162 6c65 270a 2020  ary variable'.  
│ │ │ -001c5b70: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ -001c5b80: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ -001c5b90: 756e 745f 696e 666f 7c64 6566 6175 6c74  unt_info|default
│ │ │ -001c5ba0: 287b 7d29 7c63 6f6d 6269 6e65 287b 6974  ({})|combine({it
│ │ │ -001c5bb0: 656d 2e30 3a20 6974 656d 2e31 7d29 207d  em.0: item.1}) }
│ │ │ -001c5bc0: 7d27 0a20 2077 6974 685f 746f 6765 7468  }'.  with_togeth
│ │ │ -001c5bd0: 6572 3a0a 2020 2d20 277b 7b20 6465 7669  er:.  - '{{ devi
│ │ │ -001c5be0: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ -001c5bf0: 696e 6573 5b30 5d2e 7370 6c69 7428 2920  ines[0].split() 
│ │ │ -001c5c00: 7c20 6d61 7028 2727 6c6f 7765 7227 2729  | map(''lower'')
│ │ │ -001c5c10: 207c 206c 6973 7420 7d7d 270a 2020 2d20   | list }}'.  - 
│ │ │ -001c5c20: 277b 7b20 6465 7669 6365 5f6e 616d 652e  '{{ device_name.
│ │ │ -001c5c30: 7374 646f 7574 5f6c 696e 6573 5b31 5d2e  stdout_lines[1].
│ │ │ -001c5c40: 7370 6c69 7428 2920 7c20 6c69 7374 207d  split() | list }
│ │ │ -001c5c50: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028  }'.  when:.  - (
│ │ │ -001c5c60: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -001c5c70: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001c5c80: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ -001c5c90: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ -001c5ca0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001c5cb0: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ -001c5cc0: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ -001c5cd0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001c5ce0: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -001c5cf0: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -001c5d00: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001c5d10: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ -001c5d20: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001c5d30: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ -001c5d40: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -001c5d50: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -001c5d60: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ -001c5d70: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ -001c5d80: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ -001c5d90: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ -001c5da0: 2920 290a 2020 2d20 2722 2f76 6172 2f74  ) ).  - '"/var/t
│ │ │ -001c5db0: 6d70 2220 696e 2061 6e73 6962 6c65 5f6d  mp" in ansible_m
│ │ │ -001c5dc0: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ -001c5dd0: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ -001c5de0: 206c 6973 7427 0a20 202d 2064 6576 6963   list'.  - devic
│ │ │ -001c5df0: 655f 6e61 6d65 2e73 7464 6f75 7420 6973  e_name.stdout is
│ │ │ -001c5e00: 2064 6566 696e 6564 2061 6e64 2064 6576   defined and dev
│ │ │ -001c5e10: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ -001c5e20: 6c69 6e65 7320 6973 2064 6566 696e 6564  lines is defined
│ │ │ -001c5e30: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ -001c5e40: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ -001c5e50: 6820 2667 743b 2030 290a 2020 7461 6773  h > 0).  tags
│ │ │ -001c5e60: 3a0a 2020 2d20 636f 6e66 6967 7572 655f  :.  - configure_
│ │ │ -001c5e70: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001c5e80: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001c5e90: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001c5ea0: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001c5eb0: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001c5ec0: 7469 6f6e 5f76 6172 5f74 6d70 5f6e 6f65  tion_var_tmp_noe
│ │ │ -001c5ed0: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f  xec.  - no_reboo
│ │ │ -001c5ee0: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ -001c5ef0: 3a20 2741 6464 206e 6f65 7865 6320 4f70  : 'Add noexec Op
│ │ │ -001c5f00: 7469 6f6e 2074 6f20 2f76 6172 2f74 6d70  tion to /var/tmp
│ │ │ -001c5f10: 3a20 4966 202f 7661 722f 746d 7020 6e6f  : If /var/tmp no
│ │ │ -001c5f20: 7420 6d6f 756e 7465 642c 2063 7261 6674  t mounted, craft
│ │ │ -001c5f30: 206d 6f75 6e74 5f69 6e66 6f0a 2020 2020   mount_info.    
│ │ │ -001c5f40: 6d61 6e75 616c 6c79 270a 2020 7365 745f  manually'.  set_
│ │ │ -001c5f50: 6661 6374 3a0a 2020 2020 6d6f 756e 745f  fact:.    mount_
│ │ │ -001c5f60: 696e 666f 3a20 277b 7b20 6d6f 756e 745f  info: '{{ mount_
│ │ │ -001c5f70: 696e 666f 7c64 6566 6175 6c74 287b 7d29  info|default({})
│ │ │ -001c5f80: 7c63 6f6d 6269 6e65 287b 6974 656d 2e30  |combine({item.0
│ │ │ -001c5f90: 3a20 6974 656d 2e31 7d29 207d 7d27 0a20  : item.1}) }}'. 
│ │ │ -001c5fa0: 2077 6974 685f 746f 6765 7468 6572 3a0a   with_together:.
│ │ │ -001c5fb0: 2020 2d20 2d20 7461 7267 6574 0a20 2020    - - target.   
│ │ │ -001c5fc0: 202d 2073 6f75 7263 650a 2020 2020 2d20   - source.    - 
│ │ │ -001c5fd0: 6673 7479 7065 0a20 2020 202d 206f 7074  fstype.    - opt
│ │ │ -001c5fe0: 696f 6e73 0a20 202d 202d 202f 7661 722f  ions.  - - /var/
│ │ │ -001c5ff0: 746d 700a 2020 2020 2d20 2727 0a20 2020  tmp.    - ''.   
│ │ │ -001c6000: 202d 2027 270a 2020 2020 2d20 6465 6661   - ''.    - defa
│ │ │ -001c6010: 756c 7473 0a20 2077 6865 6e3a 0a20 202d  ults.  when:.  -
│ │ │ -001c6020: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ -001c6030: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001c6040: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001c6050: 2272 706d 2d6f 7374 7265 6522 2069 6e20  "rpm-ostree" in 
│ │ │ -001c6060: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001c6070: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001c6080: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -001c6090: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001c60a0: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ -001c60b0: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ -001c60c0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001c60d0: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001c60e0: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001c60f0: 6c65 5f70 726f 635f 636d 646c 696e 6520  le_proc_cmdline 
│ │ │ -001c6100: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ -001c6110: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ -001c6120: 6f6e 5f74 7970 6520 696e 0a20 2020 205b  on_type in.    [
│ │ │ -001c6130: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -001c6140: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -001c6150: 616e 222c 2022 636f 6e74 6169 6e65 7222  an", "container"
│ │ │ -001c6160: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ -001c6170: 2f74 6d70 2220 696e 2061 6e73 6962 6c65  /tmp" in ansible
│ │ │ -001c6180: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ -001c6190: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ -001c61a0: 207c 206c 6973 7427 0a20 202d 2028 222d   | list'.  - ("-
│ │ │ -001c61b0: 2d66 7374 6162 2220 7c20 6c65 6e67 7468  -fstab" | length
│ │ │ -001c61c0: 203d 3d20 3029 0a20 202d 2064 6576 6963   == 0).  - devic
│ │ │ -001c61d0: 655f 6e61 6d65 2e73 7464 6f75 7420 6973  e_name.stdout is
│ │ │ -001c61e0: 2064 6566 696e 6564 2061 6e64 2064 6576   defined and dev
│ │ │ -001c61f0: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ -001c6200: 6c69 6e65 7320 6973 2064 6566 696e 6564  lines is defined
│ │ │ -001c6210: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ -001c6220: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ -001c6230: 6820 3d3d 2030 290a 2020 7461 6773 3a0a  h == 0).  tags:.
│ │ │ -001c6240: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ -001c6250: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ -001c6260: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -001c6270: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -001c6280: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -001c6290: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ -001c62a0: 6f6e 5f76 6172 5f74 6d70 5f6e 6f65 7865  on_var_tmp_noexe
│ │ │ -001c62b0: 630a 2020 2d20 6e6f 5f72 6562 6f6f 745f  c.  - no_reboot_
│ │ │ -001c62c0: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ -001c62d0: 2741 6464 206e 6f65 7865 6320 4f70 7469  'Add noexec Opti
│ │ │ -001c62e0: 6f6e 2074 6f20 2f76 6172 2f74 6d70 3a20  on to /var/tmp: 
│ │ │ -001c62f0: 4d61 6b65 2073 7572 6520 6e6f 6578 6563  Make sure noexec
│ │ │ -001c6300: 206f 7074 696f 6e20 6973 2070 6172 7420   option is part 
│ │ │ -001c6310: 6f66 2074 6865 2074 6f0a 2020 2020 2f76  of the to.    /v
│ │ │ -001c6320: 6172 2f74 6d70 206f 7074 696f 6e73 270a  ar/tmp options'.
│ │ │ -001c6330: 2020 7365 745f 6661 6374 3a0a 2020 2020    set_fact:.    
│ │ │ -001c6340: 6d6f 756e 745f 696e 666f 3a20 277b 7b20  mount_info: '{{ 
│ │ │ -001c6350: 6d6f 756e 745f 696e 666f 207c 2063 6f6d  mount_info | com
│ │ │ -001c6360: 6269 6e65 2820 7b27 276f 7074 696f 6e73  bine( {''options
│ │ │ -001c6370: 2727 3a27 2727 277e 286d 6f75 6e74 5f69  '':''''~(mount_i
│ │ │ -001c6380: 6e66 6f2e 6f70 7469 6f6e 7320 7c0a 2020  nfo.options |.  
│ │ │ -001c6390: 2020 2020 6465 6661 756c 7428 2727 2727      default(''''
│ │ │ -001c63a0: 2929 7e28 2727 2c27 2720 6966 2028 6d6f  ))~('','' if (mo
│ │ │ -001c63b0: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ -001c63c0: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ -001c63d0: 2920 656c 7365 2027 2727 2729 7e27 276e  ) else '''')~''n
│ │ │ -001c63e0: 6f65 7865 6327 270a 2020 2020 2020 7d29  oexec''.      })
│ │ │ -001c63f0: 207d 7d27 0a20 2077 6865 6e3a 0a20 202d   }}'.  when:.  -
│ │ │ -001c6400: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ -001c6410: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001c6420: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001c6430: 2272 706d 2d6f 7374 7265 6522 2069 6e20  "rpm-ostree" in 
│ │ │ -001c6440: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001c6450: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001c6460: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -001c6470: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001c6480: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ -001c6490: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ -001c64a0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001c64b0: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001c64c0: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001c64d0: 6c65 5f70 726f 635f 636d 646c 696e 6520  le_proc_cmdline 
│ │ │ -001c64e0: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ -001c64f0: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ -001c6500: 6f6e 5f74 7970 6520 696e 0a20 2020 205b  on_type in.    [
│ │ │ -001c6510: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -001c6520: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -001c6530: 616e 222c 2022 636f 6e74 6169 6e65 7222  an", "container"
│ │ │ -001c6540: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ -001c6550: 2f74 6d70 2220 696e 2061 6e73 6962 6c65  /tmp" in ansible
│ │ │ -001c6560: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ -001c6570: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ -001c6580: 207c 206c 6973 7427 0a20 202d 206d 6f75   | list'.  - mou
│ │ │ -001c6590: 6e74 5f69 6e66 6f20 6973 2064 6566 696e  nt_info is defin
│ │ │ -001c65a0: 6564 2061 6e64 2022 6e6f 6578 6563 2220  ed and "noexec" 
│ │ │ -001c65b0: 6e6f 7420 696e 2028 6d6f 756e 745f 696e  not in (mount_in
│ │ │ -001c65c0: 666f 2e6f 7074 696f 6e73 207c 2064 6566  fo.options | def
│ │ │ -001c65d0: 6175 6c74 2827 2729 290a 2020 7461 6773  ault('')).  tags
│ │ │ -001c65e0: 3a0a 2020 2d20 636f 6e66 6967 7572 655f  :.  - configure_
│ │ │ -001c65f0: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001c6600: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001c6610: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001c6620: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001c6630: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001c6640: 7469 6f6e 5f76 6172 5f74 6d70 5f6e 6f65  tion_var_tmp_noe
│ │ │ -001c6650: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f  xec.  - no_reboo
│ │ │ -001c6660: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ -001c6670: 3a20 2741 6464 206e 6f65 7865 6320 4f70  : 'Add noexec Op
│ │ │ -001c6680: 7469 6f6e 2074 6f20 2f76 6172 2f74 6d70  tion to /var/tmp
│ │ │ -001c6690: 3a20 456e 7375 7265 202f 7661 722f 746d  : Ensure /var/tm
│ │ │ -001c66a0: 7020 6973 206d 6f75 6e74 6564 2077 6974  p is mounted wit
│ │ │ -001c66b0: 6820 6e6f 6578 6563 206f 7074 696f 6e27  h noexec option'
│ │ │ -001c66c0: 0a20 2061 6e73 6962 6c65 2e70 6f73 6978  .  ansible.posix
│ │ │ -001c66d0: 2e6d 6f75 6e74 3a0a 2020 2020 7061 7468  .mount:.    path
│ │ │ -001c66e0: 3a20 2f76 6172 2f74 6d70 0a20 2020 2073  : /var/tmp.    s
│ │ │ -001c66f0: 7263 3a20 277b 7b20 6d6f 756e 745f 696e  rc: '{{ mount_in
│ │ │ -001c6700: 666f 2e73 6f75 7263 6520 7c20 6465 6661  fo.source | defa
│ │ │ -001c6710: 756c 7428 2727 2727 2920 7d7d 270a 2020  ult('''') }}'.  
│ │ │ -001c6720: 2020 6f70 7473 3a20 277b 7b20 6d6f 756e    opts: '{{ moun
│ │ │ -001c6730: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ -001c6740: 2064 6566 6175 6c74 2827 2727 2729 207d   default('''') }
│ │ │ -001c6750: 7d27 0a20 2020 2073 7461 7465 3a20 6d6f  }'.    state: mo
│ │ │ -001c6760: 756e 7465 640a 2020 2020 6673 7479 7065  unted.    fstype
│ │ │ -001c6770: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001c6780: 2e66 7374 7970 6520 7c20 6465 6661 756c  .fstype | defaul
│ │ │ -001c6790: 7428 2727 2727 2920 7d7d 270a 2020 7265  t('''') }}'.  re
│ │ │ -001c67a0: 6769 7374 6572 3a20 6d6f 756e 745f 7265  gister: mount_re
│ │ │ -001c67b0: 7375 6c74 0a20 2066 6169 6c65 645f 7768  sult.  failed_wh
│ │ │ -001c67c0: 656e 3a0a 2020 2d20 6d6f 756e 745f 7265  en:.  - mount_re
│ │ │ -001c67d0: 7375 6c74 2069 7320 6661 696c 6564 0a20  sult is failed. 
│ │ │ -001c67e0: 202d 2027 2727 7461 7267 6574 2069 7320   - '''target is 
│ │ │ -001c67f0: 6275 7379 2727 206e 6f74 2069 6e20 286d  busy'' not in (m
│ │ │ -001c6800: 6f75 6e74 5f72 6573 756c 742e 6d73 6720  ount_result.msg 
│ │ │ -001c6810: 7c20 6465 6661 756c 7428 2727 2727 2929  | default(''''))
│ │ │ -001c6820: 270a 2020 2d20 2727 2761 6c72 6561 6479  '.  - '''already
│ │ │ -001c6830: 206d 6f75 6e74 6564 2727 206e 6f74 2069   mounted'' not i
│ │ │ -001c6840: 6e20 286d 6f75 6e74 5f72 6573 756c 742e  n (mount_result.
│ │ │ -001c6850: 6d73 6720 7c20 6465 6661 756c 7428 2727  msg | default(''
│ │ │ -001c6860: 2727 2929 270a 2020 7768 656e 3a0a 2020  ''))'.  when:.  
│ │ │ -001c6870: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ -001c6880: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -001c6890: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001c68a0: 2022 7270 6d2d 6f73 7472 6565 2220 696e   "rpm-ostree" in
│ │ │ -001c68b0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001c68c0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001c68d0: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ -001c68e0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001c68f0: 7320 616e 6420 6e6f 7420 226f 7065 6e73  s and not "opens
│ │ │ -001c6900: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ -001c6910: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001c6920: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001c6930: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ -001c6940: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ -001c6950: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ -001c6960: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ -001c6970: 696f 6e5f 7479 7065 2069 6e0a 2020 2020  ion_type in.    
│ │ │ -001c6980: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ -001c6990: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ -001c69a0: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572  man", "container
│ │ │ -001c69b0: 225d 2029 2029 0a20 202d 2027 222f 7661  "] ) ).  - '"/va
│ │ │ -001c69c0: 722f 746d 7022 2069 6e20 616e 7369 626c  r/tmp" in ansibl
│ │ │ -001c69d0: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ -001c69e0: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ -001c69f0: 2920 7c20 6c69 7374 270a 2020 2d20 6d6f  ) | list'.  - mo
│ │ │ -001c6a00: 756e 745f 696e 666f 2069 7320 6465 6669  unt_info is defi
│ │ │ -001c6a10: 6e65 640a 2020 2d20 2864 6576 6963 655f  ned.  - (device_
│ │ │ -001c6a20: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ -001c6a30: 6566 696e 6564 2061 6e64 2028 6465 7669  efined and (devi
│ │ │ -001c6a40: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ -001c6a50: 206c 656e 6774 6820 2667 743b 2030 2929   length > 0))
│ │ │ -001c6a60: 206f 7220 2822 2d2d 6673 7461 6222 0a20   or ("--fstab". 
│ │ │ -001c6a70: 2020 207c 206c 656e 6774 6820 3d3d 2030     | length == 0
│ │ │ -001c6a80: 290a 2020 7461 6773 3a0a 2020 2d20 636f  ).  tags:.  - co
│ │ │ -001c6a90: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -001c6aa0: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -001c6ab0: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -001c6ac0: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -001c6ad0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001c6ae0: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ -001c6af0: 5f74 6d70 5f6e 6f65 7865 630a 2020 2d20  _tmp_noexec.  - 
│ │ │ -001c6b00: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001c6b10: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation She │ │ │ -001c6bd0: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...
# Remediation i
│ │ │ -001c6ca0: 7320 6170 706c 6963 6162 6c65 206f 6e6c  s applicable onl
│ │ │ -001c6cb0: 7920 696e 2063 6572 7461 696e 2070 6c61  y in certain pla
│ │ │ -001c6cc0: 7466 6f72 6d73 0a69 6620 2820 2120 2820  tforms.if ( ! ( 
│ │ │ -001c6cd0: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ -001c6ce0: 206b 6572 6e65 6c20 3b7d 2026 616d 703b   kernel ;} &
│ │ │ -001c6cf0: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ -001c6d00: 6965 7420 2d71 2072 706d 2d6f 7374 7265  iet -q rpm-ostre
│ │ │ -001c6d10: 6520 3b7d 2026 616d 703b 2661 6d70 3b20  e ;} && 
│ │ │ -001c6d20: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ -001c6d30: 2062 6f6f 7463 203b 7d20 2661 6d70 3b26   bootc ;} &&
│ │ │ -001c6d40: 616d 703b 207b 2021 2072 706d 202d 2d71  amp; { ! rpm --q
│ │ │ -001c6d50: 7569 6574 202d 7120 6f70 656e 7368 6966  uiet -q openshif
│ │ │ -001c6d60: 742d 6b75 6265 6c65 7420 3b7d 2026 616d  t-kubelet ;} &am
│ │ │ -001c6d70: 703b 2661 6d70 3b20 285b 202d 6620 2f72  p;& ([ -f /r
│ │ │ -001c6d80: 756e 2f6f 7374 7265 652d 626f 6f74 6564  un/ostree-booted
│ │ │ -001c6d90: 205d 207c 7c20 5b20 2d4c 202f 6f73 7472   ] || [ -L /ostr
│ │ │ -001c6da0: 6565 205d 2920 2920 2661 6d70 3b26 616d  ee ]) ) &&am
│ │ │ -001c6db0: 703b 2021 2028 205b 202d 6620 2f2e 646f  p; ! ( [ -f /.do
│ │ │ -001c6dc0: 636b 6572 656e 7620 5d20 7c7c 205b 202d  ckerenv ] || [ -
│ │ │ -001c6dd0: 6620 2f72 756e 2f2e 636f 6e74 6169 6e65  f /run/.containe
│ │ │ -001c6de0: 7265 6e76 205d 2029 2029 2026 616d 703b  renv ] ) ) &
│ │ │ -001c6df0: 2661 6d70 3b20 7b20 2820 6669 6e64 6d6e  & { ( findmn
│ │ │ -001c6e00: 7420 2d2d 6b65 726e 656c 2022 2f76 6172  t --kernel "/var
│ │ │ -001c6e10: 2f74 6d70 2220 2667 743b 202f 6465 762f  /tmp" > /dev/
│ │ │ -001c6e20: 6e75 6c6c 207c 7c20 6669 6e64 6d6e 7420  null || findmnt 
│ │ │ -001c6e30: 2d2d 6673 7461 6220 222f 7661 722f 746d  --fstab "/var/tm
│ │ │ -001c6e40: 7022 2026 6774 3b20 2f64 6576 2f6e 756c  p" > /dev/nul
│ │ │ -001c6e50: 6c20 293b 207d 3b20 7468 656e 0a0a 6675  l ); }; then..fu
│ │ │ -001c6e60: 6e63 7469 6f6e 2070 6572 666f 726d 5f72  nction perform_r
│ │ │ -001c6e70: 656d 6564 6961 7469 6f6e 207b 0a0a 2020  emediation {..  
│ │ │ -001c6e80: 2020 0a20 2020 2020 2020 2023 2074 6865    .        # the
│ │ │ -001c6e90: 206d 6f75 6e74 2070 6f69 6e74 202f 7661   mount point /va
│ │ │ -001c6ea0: 722f 746d 7020 6861 7320 746f 2062 6520  r/tmp has to be 
│ │ │ -001c6eb0: 6465 6669 6e65 6420 696e 202f 6574 632f  defined in /etc/
│ │ │ -001c6ec0: 6673 7461 620a 2020 2020 2020 2020 2320  fstab.        # 
│ │ │ -001c6ed0: 6265 666f 7265 2074 6869 7320 7265 6d65  before this reme
│ │ │ -001c6ee0: 6469 6174 696f 6e20 6361 6e20 6265 2065  diation can be e
│ │ │ -001c6ef0: 7865 6375 7465 642e 2049 6e20 6361 7365  xecuted. In case
│ │ │ -001c6f00: 2069 7420 6973 206e 6f74 2064 6566 696e   it is not defin
│ │ │ -001c6f10: 6564 2c20 7468 650a 2020 2020 2020 2020  ed, the.        
│ │ │ -001c6f20: 2320 7265 6d65 6469 6174 696f 6e20 6162  # remediation ab
│ │ │ -001c6f30: 6f72 7473 2061 6e64 206e 6f20 6368 616e  orts and no chan
│ │ │ -001c6f40: 6765 7320 7265 6761 7264 696e 6720 7468  ges regarding th
│ │ │ -001c6f50: 6520 6d6f 756e 7420 706f 696e 7420 6172  e mount point ar
│ │ │ -001c6f60: 6520 646f 6e65 2e0a 2020 2020 2020 2020  e done..        
│ │ │ -001c6f70: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001c6f80: 685f 7265 6765 7870 3d22 2428 7072 696e  h_regexp="$(prin
│ │ │ -001c6f90: 7466 2022 5e5b 5b3a 7370 6163 653a 5d5d  tf "^[[:space:]]
│ │ │ -001c6fa0: 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163 653a  *[^#].*[[:space:
│ │ │ -001c6fb0: 5d5d 2573 5b5b 3a73 7061 6365 3a5d 5d22  ]]%s[[:space:]]"
│ │ │ -001c6fc0: 2022 2f76 6172 2f74 6d70 2229 220a 0a20   "/var/tmp")".. 
│ │ │ -001c6fd0: 2020 2067 7265 7020 2224 6d6f 756e 745f     grep "$mount_
│ │ │ -001c6fe0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001c6ff0: 7870 2220 2d71 202f 6574 632f 6673 7461  xp" -q /etc/fsta
│ │ │ -001c7000: 6220 5c0a 2020 2020 2020 2020 7c7c 207b  b \.        || {
│ │ │ -001c7010: 2065 6368 6f20 2254 6865 206d 6f75 6e74   echo "The mount
│ │ │ -001c7020: 2070 6f69 6e74 2027 2f76 6172 2f74 6d70   point '/var/tmp
│ │ │ -001c7030: 2720 6973 206e 6f74 2065 7665 6e20 696e  ' is not even in
│ │ │ -001c7040: 202f 6574 632f 6673 7461 622c 2073 6f20   /etc/fstab, so 
│ │ │ -001c7050: 7765 2063 616e 2774 2073 6574 2075 7020  we can't set up 
│ │ │ -001c7060: 6d6f 756e 7420 6f70 7469 6f6e 7322 2026  mount options" &
│ │ │ -001c7070: 6774 3b26 616d 703b 323b 0a20 2020 2020  gt;&2;.     
│ │ │ -001c7080: 2020 2020 2020 2020 2020 2065 6368 6f20             echo 
│ │ │ -001c7090: 224e 6f74 2072 656d 6564 6961 7469 6e67  "Not remediating
│ │ │ -001c70a0: 2c20 6265 6361 7573 6520 7468 6572 6520  , because there 
│ │ │ -001c70b0: 6973 206e 6f20 7265 636f 7264 206f 6620  is no record of 
│ │ │ -001c70c0: 2f76 6172 2f74 6d70 2069 6e20 2f65 7463  /var/tmp in /etc
│ │ │ -001c70d0: 2f66 7374 6162 2220 2667 743b 2661 6d70  /fstab" >&
│ │ │ -001c70e0: 3b32 3b20 7265 7475 726e 2031 3b20 7d0a  ;2; return 1; }.
│ │ │ -001c70f0: 2020 2020 0a0a 0a20 2020 206d 6f75 6e74      ...    mount
│ │ │ -001c7100: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001c7110: 6578 703d 2224 2870 7269 6e74 6620 225e  exp="$(printf "^
│ │ │ -001c7120: 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e 235d  [[:space:]]*[^#]
│ │ │ -001c7130: 2e2a 5b5b 3a73 7061 6365 3a5d 5d25 735b  .*[[:space:]]%s[
│ │ │ -001c7140: 5b3a 7370 6163 653a 5d5d 2220 2f76 6172  [:space:]]" /var
│ │ │ -001c7150: 2f74 6d70 2922 0a0a 2020 2020 2320 4966  /tmp)"..    # If
│ │ │ -001c7160: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ -001c7170: 2069 7320 6e6f 7420 696e 202f 6574 632f   is not in /etc/
│ │ │ -001c7180: 6673 7461 622c 2067 6574 2070 7265 7669  fstab, get previ
│ │ │ -001c7190: 6f75 7320 6d6f 756e 7420 6f70 7469 6f6e  ous mount option
│ │ │ -001c71a0: 7320 6672 6f6d 202f 6574 632f 6d74 6162  s from /etc/mtab
│ │ │ -001c71b0: 0a20 2020 2069 6620 2120 6772 6570 202d  .    if ! grep -
│ │ │ -001c71c0: 7120 2224 6d6f 756e 745f 706f 696e 745f  q "$mount_point_
│ │ │ -001c71d0: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ -001c71e0: 7463 2f66 7374 6162 3b20 7468 656e 0a20  tc/fstab; then. 
│ │ │ -001c71f0: 2020 2020 2020 2023 2072 756e 7469 6d65         # runtime
│ │ │ -001c7200: 206f 7074 7320 7769 7468 6f75 7420 736f   opts without so
│ │ │ -001c7210: 6d65 2061 7574 6f6d 6174 6963 206b 6572  me automatic ker
│ │ │ -001c7220: 6e65 6c2f 7573 6572 7370 6163 652d 6164  nel/userspace-ad
│ │ │ -001c7230: 6465 6420 6465 6661 756c 7473 0a20 2020  ded defaults.   
│ │ │ -001c7240: 2020 2020 2070 7265 7669 6f75 735f 6d6f       previous_mo
│ │ │ -001c7250: 756e 745f 6f70 7473 3d24 2867 7265 7020  unt_opts=$(grep 
│ │ │ -001c7260: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ -001c7270: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ -001c7280: 2f6d 7461 6220 7c20 6865 6164 202d 3120  /mtab | head -1 
│ │ │ -001c7290: 7c20 2061 776b 2027 7b70 7269 6e74 2024  |  awk '{print $
│ │ │ -001c72a0: 347d 2720 5c0a 2020 2020 2020 2020 2020  4}' \.          
│ │ │ -001c72b0: 2020 2020 2020 2020 2020 7c20 7365 6420            | sed 
│ │ │ -001c72c0: 2d45 2022 732f 2872 777c 6465 6661 756c  -E "s/(rw|defaul
│ │ │ -001c72d0: 7473 7c73 6563 6c61 6265 6c7c 6e6f 6578  ts|seclabel|noex
│ │ │ -001c72e0: 6563 2928 2c7c 2429 2f2f 673b 732f 2c24  ec)(,|$)//g;s/,$
│ │ │ -001c72f0: 2f2f 2229 0a20 2020 2020 2020 205b 2022  //").        [ "
│ │ │ -001c7300: 2470 7265 7669 6f75 735f 6d6f 756e 745f  $previous_mount_
│ │ │ -001c7310: 6f70 7473 2220 5d20 2661 6d70 3b26 616d  opts" ] &&am
│ │ │ -001c7320: 703b 2070 7265 7669 6f75 735f 6d6f 756e  p; previous_moun
│ │ │ -001c7330: 745f 6f70 7473 2b3d 222c 220a 2020 2020  t_opts+=",".    
│ │ │ -001c7340: 2020 2020 2320 496e 2069 736f 3936 3630      # In iso9660
│ │ │ -001c7350: 2066 696c 6573 7973 7465 6d73 206d 7461   filesystems mta
│ │ │ -001c7360: 6220 636f 756c 6420 6465 7363 7269 6265  b could describe
│ │ │ -001c7370: 2061 2022 626c 6f63 6b73 697a 6522 2076   a "blocksize" v
│ │ │ -001c7380: 616c 7565 2c20 7468 6973 2073 686f 756c  alue, this shoul
│ │ │ -001c7390: 6420 6265 2072 6566 6c65 6374 6564 2069  d be reflected i
│ │ │ -001c73a0: 6e0a 2020 2020 2020 2020 2320 6673 7461  n.        # fsta
│ │ │ -001c73b0: 6220 6173 2022 626c 6f63 6b22 2e20 2054  b as "block".  T
│ │ │ -001c73c0: 6865 206e 6578 7420 7661 7269 6162 6c65  he next variable
│ │ │ -001c73d0: 2069 7320 746f 2073 6174 6973 6679 2073   is to satisfy s
│ │ │ -001c73e0: 6865 6c6c 6368 6563 6b20 5343 3230 3530  hellcheck SC2050
│ │ │ -001c73f0: 2e0a 2020 2020 2020 2020 6673 5f74 7970  ..        fs_typ
│ │ │ -001c7400: 653d 2222 0a20 2020 2020 2020 2069 6620  e="".        if 
│ │ │ -001c7410: 5b20 2022 2466 735f 7479 7065 2220 3d3d  [  "$fs_type" ==
│ │ │ -001c7420: 2022 6973 6f39 3636 3022 205d 203b 2074   "iso9660" ] ; t
│ │ │ -001c7430: 6865 6e0a 2020 2020 2020 2020 2020 2020  hen.            
│ │ │ -001c7440: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001c7450: 7074 733d 2428 7365 6420 2773 2f62 6c6f  pts=$(sed 's/blo
│ │ │ -001c7460: 636b 7369 7a65 3d2f 626c 6f63 6b3d 2f27  cksize=/block=/'
│ │ │ -001c7470: 2026 6c74 3b26 6c74 3b26 6c74 3b20 2224   <<< "$
│ │ │ -001c7480: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001c7490: 7074 7322 290a 2020 2020 2020 2020 6669  pts").        fi
│ │ │ -001c74a0: 0a20 2020 2020 2020 2065 6368 6f20 2220  .        echo " 
│ │ │ -001c74b0: 2f76 6172 2f74 6d70 2020 6465 6661 756c  /var/tmp  defaul
│ │ │ -001c74c0: 7473 2c24 7b70 7265 7669 6f75 735f 6d6f  ts,${previous_mo
│ │ │ -001c74d0: 756e 745f 6f70 7473 7d6e 6f65 7865 6320  unt_opts}noexec 
│ │ │ -001c74e0: 3020 3022 2026 6774 3b26 6774 3b20 2f65  0 0" >> /e
│ │ │ -001c74f0: 7463 2f66 7374 6162 0a20 2020 2023 2049  tc/fstab.    # I
│ │ │ -001c7500: 6620 7468 6520 6d6f 756e 745f 6f70 7420  f the mount_opt 
│ │ │ -001c7510: 6f70 7469 6f6e 2069 7320 6e6f 7420 616c  option is not al
│ │ │ -001c7520: 7265 6164 7920 696e 2074 6865 206d 6f75  ready in the mou
│ │ │ -001c7530: 6e74 2070 6f69 6e74 2773 202f 6574 632f  nt point's /etc/
│ │ │ -001c7540: 6673 7461 6220 656e 7472 792c 2061 6464  fstab entry, add
│ │ │ -001c7550: 2069 740a 2020 2020 656c 6966 2021 2067   it.    elif ! g
│ │ │ -001c7560: 7265 7020 2224 6d6f 756e 745f 706f 696e  rep "$mount_poin
│ │ │ -001c7570: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ -001c7580: 2f65 7463 2f66 7374 6162 207c 2067 7265  /etc/fstab | gre
│ │ │ -001c7590: 7020 2d71 2022 6e6f 6578 6563 223b 2074  p -q "noexec"; t
│ │ │ -001c75a0: 6865 6e0a 2020 2020 2020 2020 7072 6576  hen.        prev
│ │ │ -001c75b0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d  ious_mount_opts=
│ │ │ -001c75c0: 2428 6772 6570 2022 246d 6f75 6e74 5f70  $(grep "$mount_p
│ │ │ -001c75d0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001c75e0: 7022 202f 6574 632f 6673 7461 6220 7c20  p" /etc/fstab | 
│ │ │ -001c75f0: 6177 6b20 277b 7072 696e 7420 2434 7d27  awk '{print $4}'
│ │ │ -001c7600: 290a 2020 2020 2020 2020 7365 6420 2d69  ).        sed -i
│ │ │ -001c7610: 2022 737c 5c28 247b 6d6f 756e 745f 706f   "s|\(${mount_po
│ │ │ -001c7620: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001c7630: 7d2e 2a24 7b70 7265 7669 6f75 735f 6d6f  }.*${previous_mo
│ │ │ -001c7640: 756e 745f 6f70 7473 7d5c 297c 5c31 2c6e  unt_opts}\)|\1,n
│ │ │ -001c7650: 6f65 7865 637c 2220 2f65 7463 2f66 7374  oexec|" /etc/fst
│ │ │ -001c7660: 6162 0a20 2020 2066 690a 0a0a 2020 2020  ab.    fi...    
│ │ │ -001c7670: 6966 206d 6b64 6972 202d 7020 222f 7661  if mkdir -p "/va
│ │ │ -001c7680: 722f 746d 7022 3b20 7468 656e 0a20 2020  r/tmp"; then.   
│ │ │ -001c7690: 2020 2020 2069 6620 6d6f 756e 7470 6f69       if mountpoi
│ │ │ -001c76a0: 6e74 202d 7120 222f 7661 722f 746d 7022  nt -q "/var/tmp"
│ │ │ -001c76b0: 3b20 7468 656e 0a20 2020 2020 2020 2020  ; then.         
│ │ │ -001c76c0: 2020 206d 6f75 6e74 202d 6f20 7265 6d6f     mount -o remo
│ │ │ -001c76d0: 756e 7420 2d2d 7461 7267 6574 2022 2f76  unt --target "/v
│ │ │ -001c76e0: 6172 2f74 6d70 220a 2020 2020 2020 2020  ar/tmp".        
│ │ │ -001c76f0: 6669 0a20 2020 2066 690a 7d0a 0a70 6572  fi.    fi.}..per
│ │ │ -001c7700: 666f 726d 5f72 656d 6564 6961 7469 6f6e  form_remediation
│ │ │ -001c7710: 0a0a 656c 7365 0a20 2020 2026 6774 3b26  ..else.    >&
│ │ │ -001c7720: 616d 703b 3220 6563 686f 2027 5265 6d65  amp;2 echo 'Reme
│ │ │ -001c7730: 6469 6174 696f 6e20 6973 206e 6f74 2061  diation is not a
│ │ │ -001c7740: 7070 6c69 6361 626c 652c 206e 6f74 6869  pplicable, nothi
│ │ │ -001c7750: 6e67 2077 6173 2064 6f6e 6527 0a66 690a  ng was done'.fi.
│ │ │ +001c53c0: 6961 7469 6f6e 2041 6e73 6962 6c65 2073  iation Ansible s
│ │ │ +001c53d0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62  nippet ...
R │ │ │ -001c6c60: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001c6c70: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c2f alse
- 
│ │ │ +001c5510: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ +001c5520: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ +001c5530: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ +001c5540: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ +001c5550: 6f0a 2020 7461 6773 3a0a 2020 2d20 636f  o.  tags:.  - co
│ │ │ +001c5560: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001c5570: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001c5580: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001c5590: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001c55a0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001c55b0: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ +001c55c0: 5f74 6d70 5f6e 6f65 7865 630a 2020 2d20  _tmp_noexec.  - 
│ │ │ +001c55d0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001c55e0: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ +001c55f0: 6f65 7865 6320 4f70 7469 6f6e 2074 6f20  oexec Option to 
│ │ │ +001c5600: 2f76 6172 2f74 6d70 3a20 4368 6563 6b20  /var/tmp: Check 
│ │ │ +001c5610: 696e 666f 726d 6174 696f 6e20 6173 736f  information asso
│ │ │ +001c5620: 6369 6174 6564 2074 6f20 6d6f 756e 7470  ciated to mountp
│ │ │ +001c5630: 6f69 6e74 270a 2020 616e 7369 626c 652e  oint'.  ansible.
│ │ │ +001c5640: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ +001c5650: 2066 696e 646d 6e74 202d 2d66 7374 6162   findmnt --fstab
│ │ │ +001c5660: 2027 2f76 6172 2f74 6d70 270a 2020 7265   '/var/tmp'.  re
│ │ │ +001c5670: 6769 7374 6572 3a20 6465 7669 6365 5f6e  gister: device_n
│ │ │ +001c5680: 616d 650a 2020 6661 696c 6564 5f77 6865  ame.  failed_whe
│ │ │ +001c5690: 6e3a 2064 6576 6963 655f 6e61 6d65 2e72  n: device_name.r
│ │ │ +001c56a0: 6320 2667 743b 2031 0a20 2063 6861 6e67  c > 1.  chang
│ │ │ +001c56b0: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ +001c56c0: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ +001c56d0: 7365 0a20 2077 6865 6e3a 0a20 202d 2028  se.  when:.  - (
│ │ │ +001c56e0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +001c56f0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001c5700: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ +001c5710: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ +001c5720: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001c5730: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ +001c5740: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ +001c5750: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001c5760: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ +001c5770: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ +001c5780: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001c5790: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ +001c57a0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001c57b0: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ +001c57c0: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ +001c57d0: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ +001c57e0: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ +001c57f0: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ +001c5800: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ +001c5810: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ +001c5820: 2920 290a 2020 2d20 2722 2f76 6172 2f74  ) ).  - '"/var/t
│ │ │ +001c5830: 6d70 2220 696e 2061 6e73 6962 6c65 5f6d  mp" in ansible_m
│ │ │ +001c5840: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ +001c5850: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ +001c5860: 206c 6973 7427 0a20 2074 6167 733a 0a20   list'.  tags:. 
│ │ │ +001c5870: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ +001c5880: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ +001c5890: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +001c58a0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +001c58b0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +001c58c0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ +001c58d0: 6e5f 7661 725f 746d 705f 6e6f 6578 6563  n_var_tmp_noexec
│ │ │ +001c58e0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +001c58f0: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ +001c5900: 4164 6420 6e6f 6578 6563 204f 7074 696f  Add noexec Optio
│ │ │ +001c5910: 6e20 746f 202f 7661 722f 746d 703a 2043  n to /var/tmp: C
│ │ │ +001c5920: 7265 6174 6520 6d6f 756e 745f 696e 666f  reate mount_info
│ │ │ +001c5930: 2064 6963 7469 6f6e 6172 7920 7661 7269   dictionary vari
│ │ │ +001c5940: 6162 6c65 270a 2020 7365 745f 6661 6374  able'.  set_fact
│ │ │ +001c5950: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ +001c5960: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001c5970: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d  |default({})|com
│ │ │ +001c5980: 6269 6e65 287b 6974 656d 2e30 3a20 6974  bine({item.0: it
│ │ │ +001c5990: 656d 2e31 7d29 207d 7d27 0a20 2077 6974  em.1}) }}'.  wit
│ │ │ +001c59a0: 685f 746f 6765 7468 6572 3a0a 2020 2d20  h_together:.  - 
│ │ │ +001c59b0: 277b 7b20 6465 7669 6365 5f6e 616d 652e  '{{ device_name.
│ │ │ +001c59c0: 7374 646f 7574 5f6c 696e 6573 5b30 5d2e  stdout_lines[0].
│ │ │ +001c59d0: 7370 6c69 7428 2920 7c20 6d61 7028 2727  split() | map(''
│ │ │ +001c59e0: 6c6f 7765 7227 2729 207c 206c 6973 7420  lower'') | list 
│ │ │ +001c59f0: 7d7d 270a 2020 2d20 277b 7b20 6465 7669  }}'.  - '{{ devi
│ │ │ +001c5a00: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ +001c5a10: 696e 6573 5b31 5d2e 7370 6c69 7428 2920  ines[1].split() 
│ │ │ +001c5a20: 7c20 6c69 7374 207d 7d27 0a20 2077 6865  | list }}'.  whe
│ │ │ +001c5a30: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +001c5a40: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001c5a50: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001c5a60: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ +001c5a70: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ +001c5a80: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001c5a90: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ +001c5aa0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001c5ab0: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ +001c5ac0: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +001c5ad0: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ +001c5ae0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001c5af0: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ +001c5b00: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ +001c5b10: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ +001c5b20: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ +001c5b30: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ +001c5b40: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ +001c5b50: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ +001c5b60: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ +001c5b70: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ +001c5b80: 2722 2f76 6172 2f74 6d70 2220 696e 2061  '"/var/tmp" in a
│ │ │ +001c5b90: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ +001c5ba0: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ +001c5bb0: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ +001c5bc0: 202d 2064 6576 6963 655f 6e61 6d65 2e73   - device_name.s
│ │ │ +001c5bd0: 7464 6f75 7420 6973 2064 6566 696e 6564  tdout is defined
│ │ │ +001c5be0: 2061 6e64 2064 6576 6963 655f 6e61 6d65   and device_name
│ │ │ +001c5bf0: 2e73 7464 6f75 745f 6c69 6e65 7320 6973  .stdout_lines is
│ │ │ +001c5c00: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ +001c5c10: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001c5c20: 207c 206c 656e 6774 6820 2667 743b 2030   | length > 0
│ │ │ +001c5c30: 290a 2020 7461 6773 3a0a 2020 2d20 636f  ).  tags:.  - co
│ │ │ +001c5c40: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001c5c50: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001c5c60: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001c5c70: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001c5c80: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001c5c90: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ +001c5ca0: 5f74 6d70 5f6e 6f65 7865 630a 2020 2d20  _tmp_noexec.  - 
│ │ │ +001c5cb0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001c5cc0: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ +001c5cd0: 6f65 7865 6320 4f70 7469 6f6e 2074 6f20  oexec Option to 
│ │ │ +001c5ce0: 2f76 6172 2f74 6d70 3a20 4966 202f 7661  /var/tmp: If /va
│ │ │ +001c5cf0: 722f 746d 7020 6e6f 7420 6d6f 756e 7465  r/tmp not mounte
│ │ │ +001c5d00: 642c 2063 7261 6674 206d 6f75 6e74 5f69  d, craft mount_i
│ │ │ +001c5d10: 6e66 6f0a 2020 2020 6d61 6e75 616c 6c79  nfo.    manually
│ │ │ +001c5d20: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ +001c5d30: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ +001c5d40: 7b20 6d6f 756e 745f 696e 666f 7c64 6566  { mount_info|def
│ │ │ +001c5d50: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65  ault({})|combine
│ │ │ +001c5d60: 287b 6974 656d 2e30 3a20 6974 656d 2e31  ({item.0: item.1
│ │ │ +001c5d70: 7d29 207d 7d27 0a20 2077 6974 685f 746f  }) }}'.  with_to
│ │ │ +001c5d80: 6765 7468 6572 3a0a 2020 2d20 2d20 7461  gether:.  - - ta
│ │ │ +001c5d90: 7267 6574 0a20 2020 202d 2073 6f75 7263  rget.    - sourc
│ │ │ +001c5da0: 650a 2020 2020 2d20 6673 7479 7065 0a20  e.    - fstype. 
│ │ │ +001c5db0: 2020 202d 206f 7074 696f 6e73 0a20 202d     - options.  -
│ │ │ +001c5dc0: 202d 202f 7661 722f 746d 700a 2020 2020   - /var/tmp.    
│ │ │ +001c5dd0: 2d20 2727 0a20 2020 202d 2027 270a 2020  - ''.    - ''.  
│ │ │ +001c5de0: 2020 2d20 6465 6661 756c 7473 0a20 2077    - defaults.  w
│ │ │ +001c5df0: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +001c5e00: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +001c5e10: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001c5e20: 6765 7320 616e 6420 2272 706d 2d6f 7374  ges and "rpm-ost
│ │ │ +001c5e30: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001c5e40: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001c5e50: 2020 2061 6e64 2022 626f 6f74 6322 2069     and "bootc" i
│ │ │ +001c5e60: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001c5e70: 7061 636b 6167 6573 2061 6e64 206e 6f74  packages and not
│ │ │ +001c5e80: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ +001c5e90: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ +001c5ea0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001c5eb0: 2020 2061 6e64 2022 6f73 7472 6565 2220     and "ostree" 
│ │ │ +001c5ec0: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ +001c5ed0: 636d 646c 696e 6520 2920 616e 6420 6e6f  cmdline ) and no
│ │ │ +001c5ee0: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ +001c5ef0: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ +001c5f00: 696e 0a20 2020 205b 2264 6f63 6b65 7222  in.    ["docker"
│ │ │ +001c5f10: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ +001c5f20: 222c 2022 706f 646d 616e 222c 2022 636f  ", "podman", "co
│ │ │ +001c5f30: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ +001c5f40: 2d20 2722 2f76 6172 2f74 6d70 2220 696e  - '"/var/tmp" in
│ │ │ +001c5f50: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ +001c5f60: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ +001c5f70: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ +001c5f80: 0a20 202d 2028 222d 2d66 7374 6162 2220  .  - ("--fstab" 
│ │ │ +001c5f90: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ +001c5fa0: 202d 2064 6576 6963 655f 6e61 6d65 2e73   - device_name.s
│ │ │ +001c5fb0: 7464 6f75 7420 6973 2064 6566 696e 6564  tdout is defined
│ │ │ +001c5fc0: 2061 6e64 2064 6576 6963 655f 6e61 6d65   and device_name
│ │ │ +001c5fd0: 2e73 7464 6f75 745f 6c69 6e65 7320 6973  .stdout_lines is
│ │ │ +001c5fe0: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ +001c5ff0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001c6000: 207c 206c 656e 6774 6820 3d3d 2030 290a   | length == 0).
│ │ │ +001c6010: 2020 7461 6773 3a0a 2020 2d20 636f 6e66    tags:.  - conf
│ │ │ +001c6020: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +001c6030: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ +001c6040: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ +001c6050: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ +001c6060: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ +001c6070: 756e 745f 6f70 7469 6f6e 5f76 6172 5f74  unt_option_var_t
│ │ │ +001c6080: 6d70 5f6e 6f65 7865 630a 2020 2d20 6e6f  mp_noexec.  - no
│ │ │ +001c6090: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +001c60a0: 2d20 6e61 6d65 3a20 2741 6464 206e 6f65  - name: 'Add noe
│ │ │ +001c60b0: 7865 6320 4f70 7469 6f6e 2074 6f20 2f76  xec Option to /v
│ │ │ +001c60c0: 6172 2f74 6d70 3a20 4d61 6b65 2073 7572  ar/tmp: Make sur
│ │ │ +001c60d0: 6520 6e6f 6578 6563 206f 7074 696f 6e20  e noexec option 
│ │ │ +001c60e0: 6973 2070 6172 7420 6f66 2074 6865 2074  is part of the t
│ │ │ +001c60f0: 6f0a 2020 2020 2f76 6172 2f74 6d70 206f  o.    /var/tmp o
│ │ │ +001c6100: 7074 696f 6e73 270a 2020 7365 745f 6661  ptions'.  set_fa
│ │ │ +001c6110: 6374 3a0a 2020 2020 6d6f 756e 745f 696e  ct:.    mount_in
│ │ │ +001c6120: 666f 3a20 277b 7b20 6d6f 756e 745f 696e  fo: '{{ mount_in
│ │ │ +001c6130: 666f 207c 2063 6f6d 6269 6e65 2820 7b27  fo | combine( {'
│ │ │ +001c6140: 276f 7074 696f 6e73 2727 3a27 2727 277e  'options'':''''~
│ │ │ +001c6150: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469  (mount_info.opti
│ │ │ +001c6160: 6f6e 7320 7c0a 2020 2020 2020 6465 6661  ons |.      defa
│ │ │ +001c6170: 756c 7428 2727 2727 2929 7e28 2727 2c27  ult(''''))~('','
│ │ │ +001c6180: 2720 6966 2028 6d6f 756e 745f 696e 666f  ' if (mount_info
│ │ │ +001c6190: 2e6f 7074 696f 6e73 207c 2064 6566 6175  .options | defau
│ │ │ +001c61a0: 6c74 2827 2727 2729 2920 656c 7365 2027  lt('''')) else '
│ │ │ +001c61b0: 2727 2729 7e27 276e 6f65 7865 6327 270a  ''')~''noexec''.
│ │ │ +001c61c0: 2020 2020 2020 7d29 207d 7d27 0a20 2077        }) }}'.  w
│ │ │ +001c61d0: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +001c61e0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +001c61f0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001c6200: 6765 7320 616e 6420 2272 706d 2d6f 7374  ges and "rpm-ost
│ │ │ +001c6210: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001c6220: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001c6230: 2020 2061 6e64 2022 626f 6f74 6322 2069     and "bootc" i
│ │ │ +001c6240: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001c6250: 7061 636b 6167 6573 2061 6e64 206e 6f74  packages and not
│ │ │ +001c6260: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ +001c6270: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ +001c6280: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001c6290: 2020 2061 6e64 2022 6f73 7472 6565 2220     and "ostree" 
│ │ │ +001c62a0: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ +001c62b0: 636d 646c 696e 6520 2920 616e 6420 6e6f  cmdline ) and no
│ │ │ +001c62c0: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ +001c62d0: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ +001c62e0: 696e 0a20 2020 205b 2264 6f63 6b65 7222  in.    ["docker"
│ │ │ +001c62f0: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ +001c6300: 222c 2022 706f 646d 616e 222c 2022 636f  ", "podman", "co
│ │ │ +001c6310: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ +001c6320: 2d20 2722 2f76 6172 2f74 6d70 2220 696e  - '"/var/tmp" in
│ │ │ +001c6330: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ +001c6340: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ +001c6350: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ +001c6360: 0a20 202d 206d 6f75 6e74 5f69 6e66 6f20  .  - mount_info 
│ │ │ +001c6370: 6973 2064 6566 696e 6564 2061 6e64 2022  is defined and "
│ │ │ +001c6380: 6e6f 6578 6563 2220 6e6f 7420 696e 2028  noexec" not in (
│ │ │ +001c6390: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ +001c63a0: 6e73 207c 2064 6566 6175 6c74 2827 2729  ns | default('')
│ │ │ +001c63b0: 290a 2020 7461 6773 3a0a 2020 2d20 636f  ).  tags:.  - co
│ │ │ +001c63c0: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001c63d0: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001c63e0: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001c63f0: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001c6400: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001c6410: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ +001c6420: 5f74 6d70 5f6e 6f65 7865 630a 2020 2d20  _tmp_noexec.  - 
│ │ │ +001c6430: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001c6440: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ +001c6450: 6f65 7865 6320 4f70 7469 6f6e 2074 6f20  oexec Option to 
│ │ │ +001c6460: 2f76 6172 2f74 6d70 3a20 456e 7375 7265  /var/tmp: Ensure
│ │ │ +001c6470: 202f 7661 722f 746d 7020 6973 206d 6f75   /var/tmp is mou
│ │ │ +001c6480: 6e74 6564 2077 6974 6820 6e6f 6578 6563  nted with noexec
│ │ │ +001c6490: 206f 7074 696f 6e27 0a20 2061 6e73 6962   option'.  ansib
│ │ │ +001c64a0: 6c65 2e70 6f73 6978 2e6d 6f75 6e74 3a0a  le.posix.mount:.
│ │ │ +001c64b0: 2020 2020 7061 7468 3a20 2f76 6172 2f74      path: /var/t
│ │ │ +001c64c0: 6d70 0a20 2020 2073 7263 3a20 277b 7b20  mp.    src: '{{ 
│ │ │ +001c64d0: 6d6f 756e 745f 696e 666f 2e73 6f75 7263  mount_info.sourc
│ │ │ +001c64e0: 6520 7c20 6465 6661 756c 7428 2727 2727  e | default(''''
│ │ │ +001c64f0: 2920 7d7d 270a 2020 2020 6f70 7473 3a20  ) }}'.    opts: 
│ │ │ +001c6500: 277b 7b20 6d6f 756e 745f 696e 666f 2e6f  '{{ mount_info.o
│ │ │ +001c6510: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ +001c6520: 2827 2727 2729 207d 7d27 0a20 2020 2073  ('''') }}'.    s
│ │ │ +001c6530: 7461 7465 3a20 6d6f 756e 7465 640a 2020  tate: mounted.  
│ │ │ +001c6540: 2020 6673 7479 7065 3a20 277b 7b20 6d6f    fstype: '{{ mo
│ │ │ +001c6550: 756e 745f 696e 666f 2e66 7374 7970 6520  unt_info.fstype 
│ │ │ +001c6560: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ +001c6570: 7d7d 270a 2020 7265 6769 7374 6572 3a20  }}'.  register: 
│ │ │ +001c6580: 6d6f 756e 745f 7265 7375 6c74 0a20 2066  mount_result.  f
│ │ │ +001c6590: 6169 6c65 645f 7768 656e 3a0a 2020 2d20  ailed_when:.  - 
│ │ │ +001c65a0: 6d6f 756e 745f 7265 7375 6c74 2069 7320  mount_result is 
│ │ │ +001c65b0: 6661 696c 6564 0a20 202d 2027 2727 7461  failed.  - '''ta
│ │ │ +001c65c0: 7267 6574 2069 7320 6275 7379 2727 206e  rget is busy'' n
│ │ │ +001c65d0: 6f74 2069 6e20 286d 6f75 6e74 5f72 6573  ot in (mount_res
│ │ │ +001c65e0: 756c 742e 6d73 6720 7c20 6465 6661 756c  ult.msg | defaul
│ │ │ +001c65f0: 7428 2727 2727 2929 270a 2020 2d20 2727  t(''''))'.  - ''
│ │ │ +001c6600: 2761 6c72 6561 6479 206d 6f75 6e74 6564  'already mounted
│ │ │ +001c6610: 2727 206e 6f74 2069 6e20 286d 6f75 6e74  '' not in (mount
│ │ │ +001c6620: 5f72 6573 756c 742e 6d73 6720 7c20 6465  _result.msg | de
│ │ │ +001c6630: 6661 756c 7428 2727 2727 2929 270a 2020  fault(''''))'.  
│ │ │ +001c6640: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ +001c6650: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ +001c6660: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001c6670: 6167 6573 2061 6e64 2022 7270 6d2d 6f73  ages and "rpm-os
│ │ │ +001c6680: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001c6690: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001c66a0: 2020 2020 616e 6420 2262 6f6f 7463 2220      and "bootc" 
│ │ │ +001c66b0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001c66c0: 2e70 6163 6b61 6765 7320 616e 6420 6e6f  .packages and no
│ │ │ +001c66d0: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ +001c66e0: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ +001c66f0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001c6700: 2020 2020 616e 6420 226f 7374 7265 6522      and "ostree"
│ │ │ +001c6710: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ +001c6720: 5f63 6d64 6c69 6e65 2029 2061 6e64 206e  _cmdline ) and n
│ │ │ +001c6730: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ +001c6740: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ +001c6750: 2069 6e0a 2020 2020 5b22 646f 636b 6572   in.    ["docker
│ │ │ +001c6760: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ +001c6770: 7a22 2c20 2270 6f64 6d61 6e22 2c20 2263  z", "podman", "c
│ │ │ +001c6780: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ +001c6790: 202d 2027 222f 7661 722f 746d 7022 2069   - '"/var/tmp" i
│ │ │ +001c67a0: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ +001c67b0: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ +001c67c0: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ +001c67d0: 270a 2020 2d20 6d6f 756e 745f 696e 666f  '.  - mount_info
│ │ │ +001c67e0: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ +001c67f0: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ +001c6800: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ +001c6810: 6e64 2028 6465 7669 6365 5f6e 616d 652e  nd (device_name.
│ │ │ +001c6820: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ +001c6830: 2667 743b 2030 2929 206f 7220 2822 2d2d  > 0)) or ("--
│ │ │ +001c6840: 6673 7461 6222 0a20 2020 207c 206c 656e  fstab".    | len
│ │ │ +001c6850: 6774 6820 3d3d 2030 290a 2020 7461 6773  gth == 0).  tags
│ │ │ +001c6860: 3a0a 2020 2d20 636f 6e66 6967 7572 655f  :.  - configure_
│ │ │ +001c6870: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ +001c6880: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ +001c6890: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +001c68a0: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +001c68b0: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ +001c68c0: 7469 6f6e 5f76 6172 5f74 6d70 5f6e 6f65  tion_var_tmp_noe
│ │ │ +001c68d0: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f  xec.  - no_reboo
│ │ │ +001c68e0: 745f 6e65 6564 6564 0a3c 2f63 6f64 653e  t_needed.
│ │ │ +001c68f0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +001c69a0: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ +001c69b0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +001c6a30: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
Comp │ │ │ +001c5460: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +001c5470: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +001c5490: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ +001c54b0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +001c54c0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +001c54e0: 2f74 683e 3c74 643e 636f 6e66 6967 7572 /th>configur │ │ │ +001c54f0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Reboot:false

# Remed │ │ │ +001c6a70: 6961 7469 6f6e 2069 7320 6170 706c 6963 iation is applic │ │ │ +001c6a80: 6162 6c65 206f 6e6c 7920 696e 2063 6572 able only in cer │ │ │ +001c6a90: 7461 696e 2070 6c61 7466 6f72 6d73 0a69 tain platforms.i │ │ │ +001c6aa0: 6620 2820 2120 2820 7b20 7270 6d20 2d2d f ( ! ( { rpm -- │ │ │ +001c6ab0: 7175 6965 7420 2d71 206b 6572 6e65 6c20 quiet -q kernel │ │ │ +001c6ac0: 3b7d 2026 616d 703b 2661 6d70 3b20 7b20 ;} && { │ │ │ +001c6ad0: 7270 6d20 2d2d 7175 6965 7420 2d71 2072 rpm --quiet -q r │ │ │ +001c6ae0: 706d 2d6f 7374 7265 6520 3b7d 2026 616d pm-ostree ;} &am │ │ │ +001c6af0: 703b 2661 6d70 3b20 7b20 7270 6d20 2d2d p;& { rpm -- │ │ │ +001c6b00: 7175 6965 7420 2d71 2062 6f6f 7463 203b quiet -q bootc ; │ │ │ +001c6b10: 7d20 2661 6d70 3b26 616d 703b 207b 2021 } && { ! │ │ │ +001c6b20: 2072 706d 202d 2d71 7569 6574 202d 7120 rpm --quiet -q │ │ │ +001c6b30: 6f70 656e 7368 6966 742d 6b75 6265 6c65 openshift-kubele │ │ │ +001c6b40: 7420 3b7d 2026 616d 703b 2661 6d70 3b20 t ;} && │ │ │ +001c6b50: 285b 202d 6620 2f72 756e 2f6f 7374 7265 ([ -f /run/ostre │ │ │ +001c6b60: 652d 626f 6f74 6564 205d 207c 7c20 5b20 e-booted ] || [ │ │ │ +001c6b70: 2d4c 202f 6f73 7472 6565 205d 2920 2920 -L /ostree ]) ) │ │ │ +001c6b80: 2661 6d70 3b26 616d 703b 2021 2028 205b && ! ( [ │ │ │ +001c6b90: 202d 6620 2f2e 646f 636b 6572 656e 7620 -f /.dockerenv │ │ │ +001c6ba0: 5d20 7c7c 205b 202d 6620 2f72 756e 2f2e ] || [ -f /run/. │ │ │ +001c6bb0: 636f 6e74 6169 6e65 7265 6e76 205d 2029 containerenv ] ) │ │ │ +001c6bc0: 2029 2026 616d 703b 2661 6d70 3b20 7b20 ) && { │ │ │ +001c6bd0: 2820 6669 6e64 6d6e 7420 2d2d 6b65 726e ( findmnt --kern │ │ │ +001c6be0: 656c 2022 2f76 6172 2f74 6d70 2220 2667 el "/var/tmp" &g │ │ │ +001c6bf0: 743b 202f 6465 762f 6e75 6c6c 207c 7c20 t; /dev/null || │ │ │ +001c6c00: 6669 6e64 6d6e 7420 2d2d 6673 7461 6220 findmnt --fstab │ │ │ +001c6c10: 222f 7661 722f 746d 7022 2026 6774 3b20 "/var/tmp" > │ │ │ +001c6c20: 2f64 6576 2f6e 756c 6c20 293b 207d 3b20 /dev/null ); }; │ │ │ +001c6c30: 7468 656e 0a0a 6675 6e63 7469 6f6e 2070 then..function p │ │ │ +001c6c40: 6572 666f 726d 5f72 656d 6564 6961 7469 erform_remediati │ │ │ +001c6c50: 6f6e 207b 0a0a 2020 2020 0a20 2020 2020 on {.. . │ │ │ +001c6c60: 2020 2023 2074 6865 206d 6f75 6e74 2070 # the mount p │ │ │ +001c6c70: 6f69 6e74 202f 7661 722f 746d 7020 6861 oint /var/tmp ha │ │ │ +001c6c80: 7320 746f 2062 6520 6465 6669 6e65 6420 s to be defined │ │ │ +001c6c90: 696e 202f 6574 632f 6673 7461 620a 2020 in /etc/fstab. │ │ │ +001c6ca0: 2020 2020 2020 2320 6265 666f 7265 2074 # before t │ │ │ +001c6cb0: 6869 7320 7265 6d65 6469 6174 696f 6e20 his remediation │ │ │ +001c6cc0: 6361 6e20 6265 2065 7865 6375 7465 642e can be executed. │ │ │ +001c6cd0: 2049 6e20 6361 7365 2069 7420 6973 206e In case it is n │ │ │ +001c6ce0: 6f74 2064 6566 696e 6564 2c20 7468 650a ot defined, the. │ │ │ +001c6cf0: 2020 2020 2020 2020 2320 7265 6d65 6469 # remedi │ │ │ +001c6d00: 6174 696f 6e20 6162 6f72 7473 2061 6e64 ation aborts and │ │ │ +001c6d10: 206e 6f20 6368 616e 6765 7320 7265 6761 no changes rega │ │ │ +001c6d20: 7264 696e 6720 7468 6520 6d6f 756e 7420 rding the mount │ │ │ +001c6d30: 706f 696e 7420 6172 6520 646f 6e65 2e0a point are done.. │ │ │ +001c6d40: 2020 2020 2020 2020 6d6f 756e 745f 706f mount_po │ │ │ +001c6d50: 696e 745f 6d61 7463 685f 7265 6765 7870 int_match_regexp │ │ │ +001c6d60: 3d22 2428 7072 696e 7466 2022 5e5b 5b3a ="$(printf "^[[: │ │ │ +001c6d70: 7370 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b space:]]*[^#].*[ │ │ │ +001c6d80: 5b3a 7370 6163 653a 5d5d 2573 5b5b 3a73 [:space:]]%s[[:s │ │ │ +001c6d90: 7061 6365 3a5d 5d22 2022 2f76 6172 2f74 pace:]]" "/var/t │ │ │ +001c6da0: 6d70 2229 220a 0a20 2020 2067 7265 7020 mp")".. grep │ │ │ +001c6db0: 2224 6d6f 756e 745f 706f 696e 745f 6d61 "$mount_point_ma │ │ │ +001c6dc0: 7463 685f 7265 6765 7870 2220 2d71 202f tch_regexp" -q / │ │ │ +001c6dd0: 6574 632f 6673 7461 6220 5c0a 2020 2020 etc/fstab \. │ │ │ +001c6de0: 2020 2020 7c7c 207b 2065 6368 6f20 2254 || { echo "T │ │ │ +001c6df0: 6865 206d 6f75 6e74 2070 6f69 6e74 2027 he mount point ' │ │ │ +001c6e00: 2f76 6172 2f74 6d70 2720 6973 206e 6f74 /var/tmp' is not │ │ │ +001c6e10: 2065 7665 6e20 696e 202f 6574 632f 6673 even in /etc/fs │ │ │ +001c6e20: 7461 622c 2073 6f20 7765 2063 616e 2774 tab, so we can't │ │ │ +001c6e30: 2073 6574 2075 7020 6d6f 756e 7420 6f70 set up mount op │ │ │ +001c6e40: 7469 6f6e 7322 2026 6774 3b26 616d 703b tions" >& │ │ │ +001c6e50: 323b 0a20 2020 2020 2020 2020 2020 2020 2;. │ │ │ +001c6e60: 2020 2065 6368 6f20 224e 6f74 2072 656d echo "Not rem │ │ │ +001c6e70: 6564 6961 7469 6e67 2c20 6265 6361 7573 ediating, becaus │ │ │ +001c6e80: 6520 7468 6572 6520 6973 206e 6f20 7265 e there is no re │ │ │ +001c6e90: 636f 7264 206f 6620 2f76 6172 2f74 6d70 cord of /var/tmp │ │ │ +001c6ea0: 2069 6e20 2f65 7463 2f66 7374 6162 2220 in /etc/fstab" │ │ │ +001c6eb0: 2667 743b 2661 6d70 3b32 3b20 7265 7475 >&2; retu │ │ │ +001c6ec0: 726e 2031 3b20 7d0a 2020 2020 0a0a 0a20 rn 1; }. ... │ │ │ +001c6ed0: 2020 206d 6f75 6e74 5f70 6f69 6e74 5f6d mount_point_m │ │ │ +001c6ee0: 6174 6368 5f72 6567 6578 703d 2224 2870 atch_regexp="$(p │ │ │ +001c6ef0: 7269 6e74 6620 225e 5b5b 3a73 7061 6365 rintf "^[[:space │ │ │ +001c6f00: 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061 :]]*[^#].*[[:spa │ │ │ +001c6f10: 6365 3a5d 5d25 735b 5b3a 7370 6163 653a ce:]]%s[[:space: │ │ │ +001c6f20: 5d5d 2220 2f76 6172 2f74 6d70 2922 0a0a ]]" /var/tmp)".. │ │ │ +001c6f30: 2020 2020 2320 4966 2074 6865 206d 6f75 # If the mou │ │ │ +001c6f40: 6e74 2070 6f69 6e74 2069 7320 6e6f 7420 nt point is not │ │ │ +001c6f50: 696e 202f 6574 632f 6673 7461 622c 2067 in /etc/fstab, g │ │ │ +001c6f60: 6574 2070 7265 7669 6f75 7320 6d6f 756e et previous moun │ │ │ +001c6f70: 7420 6f70 7469 6f6e 7320 6672 6f6d 202f t options from / │ │ │ +001c6f80: 6574 632f 6d74 6162 0a20 2020 2069 6620 etc/mtab. if │ │ │ +001c6f90: 2120 6772 6570 202d 7120 2224 6d6f 756e ! grep -q "$moun │ │ │ +001c6fa0: 745f 706f 696e 745f 6d61 7463 685f 7265 t_point_match_re │ │ │ +001c6fb0: 6765 7870 2220 2f65 7463 2f66 7374 6162 gexp" /etc/fstab │ │ │ +001c6fc0: 3b20 7468 656e 0a20 2020 2020 2020 2023 ; then. # │ │ │ +001c6fd0: 2072 756e 7469 6d65 206f 7074 7320 7769 runtime opts wi │ │ │ +001c6fe0: 7468 6f75 7420 736f 6d65 2061 7574 6f6d thout some autom │ │ │ +001c6ff0: 6174 6963 206b 6572 6e65 6c2f 7573 6572 atic kernel/user │ │ │ +001c7000: 7370 6163 652d 6164 6465 6420 6465 6661 space-added defa │ │ │ +001c7010: 756c 7473 0a20 2020 2020 2020 2070 7265 ults. pre │ │ │ +001c7020: 7669 6f75 735f 6d6f 756e 745f 6f70 7473 vious_mount_opts │ │ │ +001c7030: 3d24 2867 7265 7020 2224 6d6f 756e 745f =$(grep "$mount_ │ │ │ +001c7040: 706f 696e 745f 6d61 7463 685f 7265 6765 point_match_rege │ │ │ +001c7050: 7870 2220 2f65 7463 2f6d 7461 6220 7c20 xp" /etc/mtab | │ │ │ +001c7060: 6865 6164 202d 3120 7c20 2061 776b 2027 head -1 | awk ' │ │ │ +001c7070: 7b70 7269 6e74 2024 347d 2720 5c0a 2020 {print $4}' \. │ │ │ +001c7080: 2020 2020 2020 2020 2020 2020 2020 2020 │ │ │ +001c7090: 2020 7c20 7365 6420 2d45 2022 732f 2872 | sed -E "s/(r │ │ │ +001c70a0: 777c 6465 6661 756c 7473 7c73 6563 6c61 w|defaults|secla │ │ │ +001c70b0: 6265 6c7c 6e6f 6578 6563 2928 2c7c 2429 bel|noexec)(,|$) │ │ │ +001c70c0: 2f2f 673b 732f 2c24 2f2f 2229 0a20 2020 //g;s/,$//"). │ │ │ +001c70d0: 2020 2020 205b 2022 2470 7265 7669 6f75 [ "$previou │ │ │ +001c70e0: 735f 6d6f 756e 745f 6f70 7473 2220 5d20 s_mount_opts" ] │ │ │ +001c70f0: 2661 6d70 3b26 616d 703b 2070 7265 7669 && previ │ │ │ +001c7100: 6f75 735f 6d6f 756e 745f 6f70 7473 2b3d ous_mount_opts+= │ │ │ +001c7110: 222c 220a 2020 2020 2020 2020 2320 496e ",". # In │ │ │ +001c7120: 2069 736f 3936 3630 2066 696c 6573 7973 iso9660 filesys │ │ │ +001c7130: 7465 6d73 206d 7461 6220 636f 756c 6420 tems mtab could │ │ │ +001c7140: 6465 7363 7269 6265 2061 2022 626c 6f63 describe a "bloc │ │ │ +001c7150: 6b73 697a 6522 2076 616c 7565 2c20 7468 ksize" value, th │ │ │ +001c7160: 6973 2073 686f 756c 6420 6265 2072 6566 is should be ref │ │ │ +001c7170: 6c65 6374 6564 2069 6e0a 2020 2020 2020 lected in. │ │ │ +001c7180: 2020 2320 6673 7461 6220 6173 2022 626c # fstab as "bl │ │ │ +001c7190: 6f63 6b22 2e20 2054 6865 206e 6578 7420 ock". The next │ │ │ +001c71a0: 7661 7269 6162 6c65 2069 7320 746f 2073 variable is to s │ │ │ +001c71b0: 6174 6973 6679 2073 6865 6c6c 6368 6563 atisfy shellchec │ │ │ +001c71c0: 6b20 5343 3230 3530 2e0a 2020 2020 2020 k SC2050.. │ │ │ +001c71d0: 2020 6673 5f74 7970 653d 2222 0a20 2020 fs_type="". │ │ │ +001c71e0: 2020 2020 2069 6620 5b20 2022 2466 735f if [ "$fs_ │ │ │ +001c71f0: 7479 7065 2220 3d3d 2022 6973 6f39 3636 type" == "iso966 │ │ │ +001c7200: 3022 205d 203b 2074 6865 6e0a 2020 2020 0" ] ; then. │ │ │ +001c7210: 2020 2020 2020 2020 7072 6576 696f 7573 previous │ │ │ +001c7220: 5f6d 6f75 6e74 5f6f 7074 733d 2428 7365 _mount_opts=$(se │ │ │ +001c7230: 6420 2773 2f62 6c6f 636b 7369 7a65 3d2f d 's/blocksize=/ │ │ │ +001c7240: 626c 6f63 6b3d 2f27 2026 6c74 3b26 6c74 block=/' << │ │ │ +001c7250: 3b26 6c74 3b20 2224 7072 6576 696f 7573 ;< "$previous │ │ │ +001c7260: 5f6d 6f75 6e74 5f6f 7074 7322 290a 2020 _mount_opts"). │ │ │ +001c7270: 2020 2020 2020 6669 0a20 2020 2020 2020 fi. │ │ │ +001c7280: 2065 6368 6f20 2220 2f76 6172 2f74 6d70 echo " /var/tmp │ │ │ +001c7290: 2020 6465 6661 756c 7473 2c24 7b70 7265 defaults,${pre │ │ │ +001c72a0: 7669 6f75 735f 6d6f 756e 745f 6f70 7473 vious_mount_opts │ │ │ +001c72b0: 7d6e 6f65 7865 6320 3020 3022 2026 6774 }noexec 0 0" > │ │ │ +001c72c0: 3b26 6774 3b20 2f65 7463 2f66 7374 6162 ;> /etc/fstab │ │ │ +001c72d0: 0a20 2020 2023 2049 6620 7468 6520 6d6f . # If the mo │ │ │ +001c72e0: 756e 745f 6f70 7420 6f70 7469 6f6e 2069 unt_opt option i │ │ │ +001c72f0: 7320 6e6f 7420 616c 7265 6164 7920 696e s not already in │ │ │ +001c7300: 2074 6865 206d 6f75 6e74 2070 6f69 6e74 the mount point │ │ │ +001c7310: 2773 202f 6574 632f 6673 7461 6220 656e 's /etc/fstab en │ │ │ +001c7320: 7472 792c 2061 6464 2069 740a 2020 2020 try, add it. │ │ │ +001c7330: 656c 6966 2021 2067 7265 7020 2224 6d6f elif ! grep "$mo │ │ │ +001c7340: 756e 745f 706f 696e 745f 6d61 7463 685f unt_point_match_ │ │ │ +001c7350: 7265 6765 7870 2220 2f65 7463 2f66 7374 regexp" /etc/fst │ │ │ +001c7360: 6162 207c 2067 7265 7020 2d71 2022 6e6f ab | grep -q "no │ │ │ +001c7370: 6578 6563 223b 2074 6865 6e0a 2020 2020 exec"; then. │ │ │ +001c7380: 2020 2020 7072 6576 696f 7573 5f6d 6f75 previous_mou │ │ │ +001c7390: 6e74 5f6f 7074 733d 2428 6772 6570 2022 nt_opts=$(grep " │ │ │ +001c73a0: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174 $mount_point_mat │ │ │ +001c73b0: 6368 5f72 6567 6578 7022 202f 6574 632f ch_regexp" /etc/ │ │ │ +001c73c0: 6673 7461 6220 7c20 6177 6b20 277b 7072 fstab | awk '{pr │ │ │ +001c73d0: 696e 7420 2434 7d27 290a 2020 2020 2020 int $4}'). │ │ │ +001c73e0: 2020 7365 6420 2d69 2022 737c 5c28 247b sed -i "s|\(${ │ │ │ +001c73f0: 6d6f 756e 745f 706f 696e 745f 6d61 7463 mount_point_matc │ │ │ +001c7400: 685f 7265 6765 7870 7d2e 2a24 7b70 7265 h_regexp}.*${pre │ │ │ +001c7410: 7669 6f75 735f 6d6f 756e 745f 6f70 7473 vious_mount_opts │ │ │ +001c7420: 7d5c 297c 5c31 2c6e 6f65 7865 637c 2220 }\)|\1,noexec|" │ │ │ +001c7430: 2f65 7463 2f66 7374 6162 0a20 2020 2066 /etc/fstab. f │ │ │ +001c7440: 690a 0a0a 2020 2020 6966 206d 6b64 6972 i... if mkdir │ │ │ +001c7450: 202d 7020 222f 7661 722f 746d 7022 3b20 -p "/var/tmp"; │ │ │ +001c7460: 7468 656e 0a20 2020 2020 2020 2069 6620 then. if │ │ │ +001c7470: 6d6f 756e 7470 6f69 6e74 202d 7120 222f mountpoint -q "/ │ │ │ +001c7480: 7661 722f 746d 7022 3b20 7468 656e 0a20 var/tmp"; then. │ │ │ +001c7490: 2020 2020 2020 2020 2020 206d 6f75 6e74 mount │ │ │ +001c74a0: 202d 6f20 7265 6d6f 756e 7420 2d2d 7461 -o remount --ta │ │ │ +001c74b0: 7267 6574 2022 2f76 6172 2f74 6d70 220a rget "/var/tmp". │ │ │ +001c74c0: 2020 2020 2020 2020 6669 0a20 2020 2066 fi. f │ │ │ +001c74d0: 690a 7d0a 0a70 6572 666f 726d 5f72 656d i.}..perform_rem │ │ │ +001c74e0: 6564 6961 7469 6f6e 0a0a 656c 7365 0a20 ediation..else. │ │ │ +001c74f0: 2020 2026 6774 3b26 616d 703b 3220 6563 >&2 ec │ │ │ +001c7500: 686f 2027 5265 6d65 6469 6174 696f 6e20 ho 'Remediation │ │ │ +001c7510: 6973 206e 6f74 2061 7070 6c69 6361 626c is not applicabl │ │ │ +001c7520: 652c 206e 6f74 6869 6e67 2077 6173 2064 e, nothing was d │ │ │ +001c7530: 6f6e 6527 0a66 690a 3c2f 636f 6465 3e3c one'.fi.< │ │ │ +001c7540: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>

Remediat │ │ │ +001c75f0: 696f 6e20 416e 6163 6f6e 6461 2073 6e69 ion Anaconda sni │ │ │ +001c7600: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +001c7610: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +001c7640: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +001c76b0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption: │ │ │ +001c76d0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +001c7700: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Comple │ │ │ +001c7690: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +001c76a0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
high
Reb │ │ │ +001c76e0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +001c76f0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

.part / │ │ │ +001c7740: 7661 722f 746d 7020 2d2d 6d6f 756e 746f var/tmp --mounto │ │ │ +001c7750: 7074 696f 6e73 3d22 6e6f 6578 6563 220a ptions="noexec". │ │ │ 001c7760: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64

Remediation Ana │ │ │ -001c81a0: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ -001c81b0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -001c8230: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -001c8250: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr> │ │ │ -001c82a0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ -001c82d0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.part /var/tmp
│ │ │ -001c82f0: 202d 2d6d 6f75 6e74 6f70 7469 6f6e 733d   --mountoptions=
│ │ │ -001c8300: 226e 6f73 7569 6422 0a3c 2f63 6f64 653e  "nosuid".
│ │ │ -001c8310: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -001c83c0: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -001c83d0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -001c83e0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -001c8410: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
low
Disr │ │ │ -001c8260: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -001c8270: 6869 6768 3c2f 7464 3e3c 2f74 723e 3c74 high
Reboot:false
Str │ │ │ -001c82b0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ -001c82c0: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
< │ │ │ -001c8480: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption: │ │ │ -001c84a0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -001c84d0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Comple │ │ │ -001c8460: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -001c8470: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
high
Reb │ │ │ -001c84b0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -001c84c0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:configure< │ │ │ -001c84f0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -001c8510: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ -001c8520: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ -001c8530: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ -001c8540: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ -001c8550: 2020 7461 6773 3a0a 2020 2d20 636f 6e66    tags:.  - conf
│ │ │ -001c8560: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -001c8570: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -001c8580: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -001c8590: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -001c85a0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -001c85b0: 756e 745f 6f70 7469 6f6e 5f76 6172 5f74  unt_option_var_t
│ │ │ -001c85c0: 6d70 5f6e 6f73 7569 640a 2020 2d20 6e6f  mp_nosuid.  - no
│ │ │ -001c85d0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ -001c85e0: 2d20 6e61 6d65 3a20 2741 6464 206e 6f73  - name: 'Add nos
│ │ │ -001c85f0: 7569 6420 4f70 7469 6f6e 2074 6f20 2f76  uid Option to /v
│ │ │ -001c8600: 6172 2f74 6d70 3a20 4368 6563 6b20 696e  ar/tmp: Check in
│ │ │ -001c8610: 666f 726d 6174 696f 6e20 6173 736f 6369  formation associ
│ │ │ -001c8620: 6174 6564 2074 6f20 6d6f 756e 7470 6f69  ated to mountpoi
│ │ │ -001c8630: 6e74 270a 2020 616e 7369 626c 652e 6275  nt'.  ansible.bu
│ │ │ -001c8640: 696c 7469 6e2e 636f 6d6d 616e 643a 2066  iltin.command: f
│ │ │ -001c8650: 696e 646d 6e74 202d 2d66 7374 6162 2027  indmnt --fstab '
│ │ │ -001c8660: 2f76 6172 2f74 6d70 270a 2020 7265 6769  /var/tmp'.  regi
│ │ │ -001c8670: 7374 6572 3a20 6465 7669 6365 5f6e 616d  ster: device_nam
│ │ │ -001c8680: 650a 2020 6661 696c 6564 5f77 6865 6e3a  e.  failed_when:
│ │ │ -001c8690: 2064 6576 6963 655f 6e61 6d65 2e72 6320   device_name.rc 
│ │ │ -001c86a0: 2667 743b 2031 0a20 2063 6861 6e67 6564  > 1.  changed
│ │ │ -001c86b0: 5f77 6865 6e3a 2066 616c 7365 0a20 2063  _when: false.  c
│ │ │ -001c86c0: 6865 636b 5f6d 6f64 653a 2066 616c 7365  heck_mode: false
│ │ │ -001c86d0: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ -001c86e0: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ -001c86f0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001c8700: 6163 6b61 6765 7320 616e 6420 2272 706d  ackages and "rpm
│ │ │ -001c8710: 2d6f 7374 7265 6522 2069 6e20 616e 7369  -ostree" in ansi
│ │ │ -001c8720: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001c8730: 6573 0a20 2020 2061 6e64 2022 626f 6f74  es.    and "boot
│ │ │ -001c8740: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ -001c8750: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001c8760: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ -001c8770: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ -001c8780: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001c8790: 6573 0a20 2020 2061 6e64 2022 6f73 7472  es.    and "ostr
│ │ │ -001c87a0: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ -001c87b0: 726f 635f 636d 646c 696e 6520 2920 616e  roc_cmdline ) an
│ │ │ -001c87c0: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ -001c87d0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ -001c87e0: 7970 6520 696e 0a20 2020 205b 2264 6f63  ype in.    ["doc
│ │ │ -001c87f0: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ -001c8800: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ -001c8810: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ -001c8820: 290a 2020 2d20 2722 2f76 6172 2f74 6d70  ).  - '"/var/tmp
│ │ │ -001c8830: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ -001c8840: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ -001c8850: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ -001c8860: 6973 7427 0a20 2074 6167 733a 0a20 202d  ist'.  tags:.  -
│ │ │ -001c8870: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ -001c8880: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ -001c8890: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -001c88a0: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -001c88b0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -001c88c0: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ -001c88d0: 7661 725f 746d 705f 6e6f 7375 6964 0a20  var_tmp_nosuid. 
│ │ │ -001c88e0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -001c88f0: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ -001c8900: 6420 6e6f 7375 6964 204f 7074 696f 6e20  d nosuid Option 
│ │ │ -001c8910: 746f 202f 7661 722f 746d 703a 2043 7265  to /var/tmp: Cre
│ │ │ -001c8920: 6174 6520 6d6f 756e 745f 696e 666f 2064  ate mount_info d
│ │ │ -001c8930: 6963 7469 6f6e 6172 7920 7661 7269 6162  ictionary variab
│ │ │ -001c8940: 6c65 270a 2020 7365 745f 6661 6374 3a0a  le'.  set_fact:.
│ │ │ -001c8950: 2020 2020 6d6f 756e 745f 696e 666f 3a20      mount_info: 
│ │ │ -001c8960: 277b 7b20 6d6f 756e 745f 696e 666f 7c64  '{{ mount_info|d
│ │ │ -001c8970: 6566 6175 6c74 287b 7d29 7c63 6f6d 6269  efault({})|combi
│ │ │ -001c8980: 6e65 287b 6974 656d 2e30 3a20 6974 656d  ne({item.0: item
│ │ │ -001c8990: 2e31 7d29 207d 7d27 0a20 2077 6974 685f  .1}) }}'.  with_
│ │ │ -001c89a0: 746f 6765 7468 6572 3a0a 2020 2d20 277b  together:.  - '{
│ │ │ -001c89b0: 7b20 6465 7669 6365 5f6e 616d 652e 7374  { device_name.st
│ │ │ -001c89c0: 646f 7574 5f6c 696e 6573 5b30 5d2e 7370  dout_lines[0].sp
│ │ │ -001c89d0: 6c69 7428 2920 7c20 6d61 7028 2727 6c6f  lit() | map(''lo
│ │ │ -001c89e0: 7765 7227 2729 207c 206c 6973 7420 7d7d  wer'') | list }}
│ │ │ -001c89f0: 270a 2020 2d20 277b 7b20 6465 7669 6365  '.  - '{{ device
│ │ │ -001c8a00: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ -001c8a10: 6573 5b31 5d2e 7370 6c69 7428 2920 7c20  es[1].split() | 
│ │ │ -001c8a20: 6c69 7374 207d 7d27 0a20 2077 6865 6e3a  list }}'.  when:
│ │ │ -001c8a30: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ -001c8a40: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -001c8a50: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001c8a60: 616e 6420 2272 706d 2d6f 7374 7265 6522  and "rpm-ostree"
│ │ │ -001c8a70: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001c8a80: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001c8a90: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ -001c8aa0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001c8ab0: 6167 6573 2061 6e64 206e 6f74 2022 6f70  ages and not "op
│ │ │ -001c8ac0: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ -001c8ad0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001c8ae0: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001c8af0: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ -001c8b00: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ -001c8b10: 696e 6520 2920 616e 6420 6e6f 7420 2820  ine ) and not ( 
│ │ │ -001c8b20: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ -001c8b30: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20  zation_type in. 
│ │ │ -001c8b40: 2020 205b 2264 6f63 6b65 7222 2c20 226c     ["docker", "l
│ │ │ -001c8b50: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ -001c8b60: 706f 646d 616e 222c 2022 636f 6e74 6169  podman", "contai
│ │ │ -001c8b70: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ -001c8b80: 2f76 6172 2f74 6d70 2220 696e 2061 6e73  /var/tmp" in ans
│ │ │ -001c8b90: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ -001c8ba0: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ -001c8bb0: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ -001c8bc0: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ -001c8bd0: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ -001c8be0: 6e64 2064 6576 6963 655f 6e61 6d65 2e73  nd device_name.s
│ │ │ -001c8bf0: 7464 6f75 745f 6c69 6e65 7320 6973 2064  tdout_lines is d
│ │ │ -001c8c00: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ -001c8c10: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ -001c8c20: 206c 656e 6774 6820 2667 743b 2030 290a   length > 0).
│ │ │ -001c8c30: 2020 7461 6773 3a0a 2020 2d20 636f 6e66    tags:.  - conf
│ │ │ -001c8c40: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -001c8c50: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -001c8c60: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -001c8c70: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -001c8c80: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -001c8c90: 756e 745f 6f70 7469 6f6e 5f76 6172 5f74  unt_option_var_t
│ │ │ -001c8ca0: 6d70 5f6e 6f73 7569 640a 2020 2d20 6e6f  mp_nosuid.  - no
│ │ │ -001c8cb0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ -001c8cc0: 2d20 6e61 6d65 3a20 2741 6464 206e 6f73  - name: 'Add nos
│ │ │ -001c8cd0: 7569 6420 4f70 7469 6f6e 2074 6f20 2f76  uid Option to /v
│ │ │ -001c8ce0: 6172 2f74 6d70 3a20 4966 202f 7661 722f  ar/tmp: If /var/
│ │ │ -001c8cf0: 746d 7020 6e6f 7420 6d6f 756e 7465 642c  tmp not mounted,
│ │ │ -001c8d00: 2063 7261 6674 206d 6f75 6e74 5f69 6e66   craft mount_inf
│ │ │ -001c8d10: 6f0a 2020 2020 6d61 6e75 616c 6c79 270a  o.    manually'.
│ │ │ -001c8d20: 2020 7365 745f 6661 6374 3a0a 2020 2020    set_fact:.    
│ │ │ -001c8d30: 6d6f 756e 745f 696e 666f 3a20 277b 7b20  mount_info: '{{ 
│ │ │ -001c8d40: 6d6f 756e 745f 696e 666f 7c64 6566 6175  mount_info|defau
│ │ │ -001c8d50: 6c74 287b 7d29 7c63 6f6d 6269 6e65 287b  lt({})|combine({
│ │ │ -001c8d60: 6974 656d 2e30 3a20 6974 656d 2e31 7d29  item.0: item.1})
│ │ │ -001c8d70: 207d 7d27 0a20 2077 6974 685f 746f 6765   }}'.  with_toge
│ │ │ -001c8d80: 7468 6572 3a0a 2020 2d20 2d20 7461 7267  ther:.  - - targ
│ │ │ -001c8d90: 6574 0a20 2020 202d 2073 6f75 7263 650a  et.    - source.
│ │ │ -001c8da0: 2020 2020 2d20 6673 7479 7065 0a20 2020      - fstype.   
│ │ │ -001c8db0: 202d 206f 7074 696f 6e73 0a20 202d 202d   - options.  - -
│ │ │ -001c8dc0: 202f 7661 722f 746d 700a 2020 2020 2d20   /var/tmp.    - 
│ │ │ -001c8dd0: 2727 0a20 2020 202d 2027 270a 2020 2020  ''.    - ''.    
│ │ │ -001c8de0: 2d20 6465 6661 756c 7473 0a20 2077 6865  - defaults.  whe
│ │ │ -001c8df0: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ -001c8e00: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -001c8e10: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001c8e20: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ -001c8e30: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ -001c8e40: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001c8e50: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -001c8e60: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001c8e70: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ -001c8e80: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001c8e90: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001c8ea0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001c8eb0: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -001c8ec0: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -001c8ed0: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ -001c8ee0: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001c8ef0: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001c8f00: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ -001c8f10: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -001c8f20: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ -001c8f30: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001c8f40: 2722 2f76 6172 2f74 6d70 2220 696e 2061  '"/var/tmp" in a
│ │ │ -001c8f50: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ -001c8f60: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ -001c8f70: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ -001c8f80: 202d 2028 222d 2d66 7374 6162 2220 7c20   - ("--fstab" | 
│ │ │ -001c8f90: 6c65 6e67 7468 203d 3d20 3029 0a20 202d  length == 0).  -
│ │ │ -001c8fa0: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ -001c8fb0: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ -001c8fc0: 6e64 2064 6576 6963 655f 6e61 6d65 2e73  nd device_name.s
│ │ │ -001c8fd0: 7464 6f75 745f 6c69 6e65 7320 6973 2064  tdout_lines is d
│ │ │ -001c8fe0: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ -001c8ff0: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ -001c9000: 206c 656e 6774 6820 3d3d 2030 290a 2020   length == 0).  
│ │ │ -001c9010: 7461 6773 3a0a 2020 2d20 636f 6e66 6967  tags:.  - config
│ │ │ -001c9020: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001c9030: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001c9040: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001c9050: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001c9060: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001c9070: 745f 6f70 7469 6f6e 5f76 6172 5f74 6d70  t_option_var_tmp
│ │ │ -001c9080: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ -001c9090: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ -001c90a0: 6e61 6d65 3a20 2741 6464 206e 6f73 7569  name: 'Add nosui
│ │ │ -001c90b0: 6420 4f70 7469 6f6e 2074 6f20 2f76 6172  d Option to /var
│ │ │ -001c90c0: 2f74 6d70 3a20 4d61 6b65 2073 7572 6520  /tmp: Make sure 
│ │ │ -001c90d0: 6e6f 7375 6964 206f 7074 696f 6e20 6973  nosuid option is
│ │ │ -001c90e0: 2070 6172 7420 6f66 2074 6865 2074 6f0a   part of the to.
│ │ │ -001c90f0: 2020 2020 2f76 6172 2f74 6d70 206f 7074      /var/tmp opt
│ │ │ -001c9100: 696f 6e73 270a 2020 7365 745f 6661 6374  ions'.  set_fact
│ │ │ -001c9110: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ -001c9120: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001c9130: 207c 2063 6f6d 6269 6e65 2820 7b27 276f   | combine( {''o
│ │ │ -001c9140: 7074 696f 6e73 2727 3a27 2727 277e 286d  ptions'':''''~(m
│ │ │ -001c9150: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -001c9160: 7320 7c0a 2020 2020 2020 6465 6661 756c  s |.      defaul
│ │ │ -001c9170: 7428 2727 2727 2929 7e28 2727 2c27 2720  t(''''))~('','' 
│ │ │ -001c9180: 6966 2028 6d6f 756e 745f 696e 666f 2e6f  if (mount_info.o
│ │ │ -001c9190: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ -001c91a0: 2827 2727 2729 2920 656c 7365 2027 2727  ('''')) else '''
│ │ │ -001c91b0: 2729 7e27 276e 6f73 7569 6427 270a 2020  ')~''nosuid''.  
│ │ │ -001c91c0: 2020 2020 7d29 207d 7d27 0a20 2077 6865      }) }}'.  whe
│ │ │ -001c91d0: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ -001c91e0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -001c91f0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001c9200: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ -001c9210: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ -001c9220: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001c9230: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -001c9240: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001c9250: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ -001c9260: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001c9270: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001c9280: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001c9290: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -001c92a0: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -001c92b0: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ -001c92c0: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001c92d0: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001c92e0: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ -001c92f0: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -001c9300: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ -001c9310: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001c9320: 2722 2f76 6172 2f74 6d70 2220 696e 2061  '"/var/tmp" in a
│ │ │ -001c9330: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ -001c9340: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ -001c9350: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ -001c9360: 202d 206d 6f75 6e74 5f69 6e66 6f20 6973   - mount_info is
│ │ │ -001c9370: 2064 6566 696e 6564 2061 6e64 2022 6e6f   defined and "no
│ │ │ -001c9380: 7375 6964 2220 6e6f 7420 696e 2028 6d6f  suid" not in (mo
│ │ │ -001c9390: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ -001c93a0: 207c 2064 6566 6175 6c74 2827 2729 290a   | default('')).
│ │ │ -001c93b0: 2020 7461 6773 3a0a 2020 2d20 636f 6e66    tags:.  - conf
│ │ │ -001c93c0: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -001c93d0: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -001c93e0: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -001c93f0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -001c9400: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -001c9410: 756e 745f 6f70 7469 6f6e 5f76 6172 5f74  unt_option_var_t
│ │ │ -001c9420: 6d70 5f6e 6f73 7569 640a 2020 2d20 6e6f  mp_nosuid.  - no
│ │ │ -001c9430: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ -001c9440: 2d20 6e61 6d65 3a20 2741 6464 206e 6f73  - name: 'Add nos
│ │ │ -001c9450: 7569 6420 4f70 7469 6f6e 2074 6f20 2f76  uid Option to /v
│ │ │ -001c9460: 6172 2f74 6d70 3a20 456e 7375 7265 202f  ar/tmp: Ensure /
│ │ │ -001c9470: 7661 722f 746d 7020 6973 206d 6f75 6e74  var/tmp is mount
│ │ │ -001c9480: 6564 2077 6974 6820 6e6f 7375 6964 206f  ed with nosuid o
│ │ │ -001c9490: 7074 696f 6e27 0a20 2061 6e73 6962 6c65  ption'.  ansible
│ │ │ -001c94a0: 2e70 6f73 6978 2e6d 6f75 6e74 3a0a 2020  .posix.mount:.  
│ │ │ -001c94b0: 2020 7061 7468 3a20 2f76 6172 2f74 6d70    path: /var/tmp
│ │ │ -001c94c0: 0a20 2020 2073 7263 3a20 277b 7b20 6d6f  .    src: '{{ mo
│ │ │ -001c94d0: 756e 745f 696e 666f 2e73 6f75 7263 6520  unt_info.source 
│ │ │ -001c94e0: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ -001c94f0: 7d7d 270a 2020 2020 6f70 7473 3a20 277b  }}'.    opts: '{
│ │ │ -001c9500: 7b20 6d6f 756e 745f 696e 666f 2e6f 7074  { mount_info.opt
│ │ │ -001c9510: 696f 6e73 207c 2064 6566 6175 6c74 2827  ions | default('
│ │ │ -001c9520: 2727 2729 207d 7d27 0a20 2020 2073 7461  ''') }}'.    sta
│ │ │ -001c9530: 7465 3a20 6d6f 756e 7465 640a 2020 2020  te: mounted.    
│ │ │ -001c9540: 6673 7479 7065 3a20 277b 7b20 6d6f 756e  fstype: '{{ moun
│ │ │ -001c9550: 745f 696e 666f 2e66 7374 7970 6520 7c20  t_info.fstype | 
│ │ │ -001c9560: 6465 6661 756c 7428 2727 2727 2920 7d7d  default('''') }}
│ │ │ -001c9570: 270a 2020 7265 6769 7374 6572 3a20 6d6f  '.  register: mo
│ │ │ -001c9580: 756e 745f 7265 7375 6c74 0a20 2066 6169  unt_result.  fai
│ │ │ -001c9590: 6c65 645f 7768 656e 3a0a 2020 2d20 6d6f  led_when:.  - mo
│ │ │ -001c95a0: 756e 745f 7265 7375 6c74 2069 7320 6661  unt_result is fa
│ │ │ -001c95b0: 696c 6564 0a20 202d 2027 2727 7461 7267  iled.  - '''targ
│ │ │ -001c95c0: 6574 2069 7320 6275 7379 2727 206e 6f74  et is busy'' not
│ │ │ -001c95d0: 2069 6e20 286d 6f75 6e74 5f72 6573 756c   in (mount_resul
│ │ │ -001c95e0: 742e 6d73 6720 7c20 6465 6661 756c 7428  t.msg | default(
│ │ │ -001c95f0: 2727 2727 2929 270a 2020 2d20 2727 2761  ''''))'.  - '''a
│ │ │ -001c9600: 6c72 6561 6479 206d 6f75 6e74 6564 2727  lready mounted''
│ │ │ -001c9610: 206e 6f74 2069 6e20 286d 6f75 6e74 5f72   not in (mount_r
│ │ │ -001c9620: 6573 756c 742e 6d73 6720 7c20 6465 6661  esult.msg | defa
│ │ │ -001c9630: 756c 7428 2727 2727 2929 270a 2020 7768  ult(''''))'.  wh
│ │ │ -001c9640: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ -001c9650: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -001c9660: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001c9670: 6573 2061 6e64 2022 7270 6d2d 6f73 7472  es and "rpm-ostr
│ │ │ -001c9680: 6565 2220 696e 2061 6e73 6962 6c65 5f66  ee" in ansible_f
│ │ │ -001c9690: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -001c96a0: 2020 616e 6420 2262 6f6f 7463 2220 696e    and "bootc" in
│ │ │ -001c96b0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001c96c0: 6163 6b61 6765 7320 616e 6420 6e6f 7420  ackages and not 
│ │ │ -001c96d0: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ -001c96e0: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ -001c96f0: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -001c9700: 2020 616e 6420 226f 7374 7265 6522 2069    and "ostree" i
│ │ │ -001c9710: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ -001c9720: 6d64 6c69 6e65 2029 2061 6e64 206e 6f74  mdline ) and not
│ │ │ -001c9730: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ -001c9740: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ -001c9750: 6e0a 2020 2020 5b22 646f 636b 6572 222c  n.    ["docker",
│ │ │ -001c9760: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ -001c9770: 2c20 2270 6f64 6d61 6e22 2c20 2263 6f6e  , "podman", "con
│ │ │ -001c9780: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ -001c9790: 2027 222f 7661 722f 746d 7022 2069 6e20   '"/var/tmp" in 
│ │ │ -001c97a0: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ -001c97b0: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ -001c97c0: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ -001c97d0: 2020 2d20 6d6f 756e 745f 696e 666f 2069    - mount_info i
│ │ │ -001c97e0: 7320 6465 6669 6e65 640a 2020 2d20 2864  s defined.  - (d
│ │ │ -001c97f0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001c9800: 7420 6973 2064 6566 696e 6564 2061 6e64  t is defined and
│ │ │ -001c9810: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ -001c9820: 646f 7574 207c 206c 656e 6774 6820 2667  dout | length &g
│ │ │ -001c9830: 743b 2030 2929 206f 7220 2822 2d2d 6673  t; 0)) or ("--fs
│ │ │ -001c9840: 7461 6222 0a20 2020 207c 206c 656e 6774  tab".    | lengt
│ │ │ -001c9850: 6820 3d3d 2030 290a 2020 7461 6773 3a0a  h == 0).  tags:.
│ │ │ -001c9860: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ -001c9870: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ -001c9880: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -001c9890: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -001c98a0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -001c98b0: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ -001c98c0: 6f6e 5f76 6172 5f74 6d70 5f6e 6f73 7569  on_var_tmp_nosui
│ │ │ -001c98d0: 640a 2020 2d20 6e6f 5f72 6562 6f6f 745f  d.  - no_reboot_
│ │ │ -001c98e0: 6e65 6564 6564 0a3c 2f63 6f64 653e 3c2f  needed.
Remediati │ │ │ -001c99a0: 6f6e 2053 6865 6c6c 2073 6372 6970 7420 on Shell script │ │ │ -001c99b0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Reboot:false< │ │ │ -001c9a50: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
# Remedia
│ │ │ -001c9a70: 7469 6f6e 2069 7320 6170 706c 6963 6162  tion is applicab
│ │ │ -001c9a80: 6c65 206f 6e6c 7920 696e 2063 6572 7461  le only in certa
│ │ │ -001c9a90: 696e 2070 6c61 7466 6f72 6d73 0a69 6620  in platforms.if 
│ │ │ -001c9aa0: 2820 2120 2820 7b20 7270 6d20 2d2d 7175  ( ! ( { rpm --qu
│ │ │ -001c9ab0: 6965 7420 2d71 206b 6572 6e65 6c20 3b7d  iet -q kernel ;}
│ │ │ -001c9ac0: 2026 616d 703b 2661 6d70 3b20 7b20 7270   && { rp
│ │ │ -001c9ad0: 6d20 2d2d 7175 6965 7420 2d71 2072 706d  m --quiet -q rpm
│ │ │ -001c9ae0: 2d6f 7374 7265 6520 3b7d 2026 616d 703b  -ostree ;} &
│ │ │ -001c9af0: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ -001c9b00: 6965 7420 2d71 2062 6f6f 7463 203b 7d20  iet -q bootc ;} 
│ │ │ -001c9b10: 2661 6d70 3b26 616d 703b 207b 2021 2072  && { ! r
│ │ │ -001c9b20: 706d 202d 2d71 7569 6574 202d 7120 6f70  pm --quiet -q op
│ │ │ -001c9b30: 656e 7368 6966 742d 6b75 6265 6c65 7420  enshift-kubelet 
│ │ │ -001c9b40: 3b7d 2026 616d 703b 2661 6d70 3b20 285b  ;} && ([
│ │ │ -001c9b50: 202d 6620 2f72 756e 2f6f 7374 7265 652d   -f /run/ostree-
│ │ │ -001c9b60: 626f 6f74 6564 205d 207c 7c20 5b20 2d4c  booted ] || [ -L
│ │ │ -001c9b70: 202f 6f73 7472 6565 205d 2920 2920 2661   /ostree ]) ) &a
│ │ │ -001c9b80: 6d70 3b26 616d 703b 2021 2028 205b 202d  mp;& ! ( [ -
│ │ │ -001c9b90: 6620 2f2e 646f 636b 6572 656e 7620 5d20  f /.dockerenv ] 
│ │ │ -001c9ba0: 7c7c 205b 202d 6620 2f72 756e 2f2e 636f  || [ -f /run/.co
│ │ │ -001c9bb0: 6e74 6169 6e65 7265 6e76 205d 2029 2029  ntainerenv ] ) )
│ │ │ -001c9bc0: 2026 616d 703b 2661 6d70 3b20 7b20 2820   && { ( 
│ │ │ -001c9bd0: 6669 6e64 6d6e 7420 2d2d 6b65 726e 656c  findmnt --kernel
│ │ │ -001c9be0: 2022 2f76 6172 2f74 6d70 2220 2667 743b   "/var/tmp" >
│ │ │ -001c9bf0: 202f 6465 762f 6e75 6c6c 207c 7c20 6669   /dev/null || fi
│ │ │ -001c9c00: 6e64 6d6e 7420 2d2d 6673 7461 6220 222f  ndmnt --fstab "/
│ │ │ -001c9c10: 7661 722f 746d 7022 2026 6774 3b20 2f64  var/tmp" > /d
│ │ │ -001c9c20: 6576 2f6e 756c 6c20 293b 207d 3b20 7468  ev/null ); }; th
│ │ │ -001c9c30: 656e 0a0a 6675 6e63 7469 6f6e 2070 6572  en..function per
│ │ │ -001c9c40: 666f 726d 5f72 656d 6564 6961 7469 6f6e  form_remediation
│ │ │ -001c9c50: 207b 0a0a 2020 2020 0a20 2020 2020 2020   {..    .       
│ │ │ -001c9c60: 2023 2074 6865 206d 6f75 6e74 2070 6f69   # the mount poi
│ │ │ -001c9c70: 6e74 202f 7661 722f 746d 7020 6861 7320  nt /var/tmp has 
│ │ │ -001c9c80: 746f 2062 6520 6465 6669 6e65 6420 696e  to be defined in
│ │ │ -001c9c90: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ -001c9ca0: 2020 2020 2320 6265 666f 7265 2074 6869      # before thi
│ │ │ -001c9cb0: 7320 7265 6d65 6469 6174 696f 6e20 6361  s remediation ca
│ │ │ -001c9cc0: 6e20 6265 2065 7865 6375 7465 642e 2049  n be executed. I
│ │ │ -001c9cd0: 6e20 6361 7365 2069 7420 6973 206e 6f74  n case it is not
│ │ │ -001c9ce0: 2064 6566 696e 6564 2c20 7468 650a 2020   defined, the.  
│ │ │ -001c9cf0: 2020 2020 2020 2320 7265 6d65 6469 6174        # remediat
│ │ │ -001c9d00: 696f 6e20 6162 6f72 7473 2061 6e64 206e  ion aborts and n
│ │ │ -001c9d10: 6f20 6368 616e 6765 7320 7265 6761 7264  o changes regard
│ │ │ -001c9d20: 696e 6720 7468 6520 6d6f 756e 7420 706f  ing the mount po
│ │ │ -001c9d30: 696e 7420 6172 6520 646f 6e65 2e0a 2020  int are done..  
│ │ │ -001c9d40: 2020 2020 2020 6d6f 756e 745f 706f 696e        mount_poin
│ │ │ -001c9d50: 745f 6d61 7463 685f 7265 6765 7870 3d22  t_match_regexp="
│ │ │ -001c9d60: 2428 7072 696e 7466 2022 5e5b 5b3a 7370  $(printf "^[[:sp
│ │ │ -001c9d70: 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a  ace:]]*[^#].*[[:
│ │ │ -001c9d80: 7370 6163 653a 5d5d 2573 5b5b 3a73 7061  space:]]%s[[:spa
│ │ │ -001c9d90: 6365 3a5d 5d22 2022 2f76 6172 2f74 6d70  ce:]]" "/var/tmp
│ │ │ -001c9da0: 2229 220a 0a20 2020 2067 7265 7020 2224  ")"..    grep "$
│ │ │ -001c9db0: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001c9dc0: 685f 7265 6765 7870 2220 2d71 202f 6574  h_regexp" -q /et
│ │ │ -001c9dd0: 632f 6673 7461 6220 5c0a 2020 2020 2020  c/fstab \.      
│ │ │ -001c9de0: 2020 7c7c 207b 2065 6368 6f20 2254 6865    || { echo "The
│ │ │ -001c9df0: 206d 6f75 6e74 2070 6f69 6e74 2027 2f76   mount point '/v
│ │ │ -001c9e00: 6172 2f74 6d70 2720 6973 206e 6f74 2065  ar/tmp' is not e
│ │ │ -001c9e10: 7665 6e20 696e 202f 6574 632f 6673 7461  ven in /etc/fsta
│ │ │ -001c9e20: 622c 2073 6f20 7765 2063 616e 2774 2073  b, so we can't s
│ │ │ -001c9e30: 6574 2075 7020 6d6f 756e 7420 6f70 7469  et up mount opti
│ │ │ -001c9e40: 6f6e 7322 2026 6774 3b26 616d 703b 323b  ons" >&2;
│ │ │ -001c9e50: 0a20 2020 2020 2020 2020 2020 2020 2020  .               
│ │ │ -001c9e60: 2065 6368 6f20 224e 6f74 2072 656d 6564   echo "Not remed
│ │ │ -001c9e70: 6961 7469 6e67 2c20 6265 6361 7573 6520  iating, because 
│ │ │ -001c9e80: 7468 6572 6520 6973 206e 6f20 7265 636f  there is no reco
│ │ │ -001c9e90: 7264 206f 6620 2f76 6172 2f74 6d70 2069  rd of /var/tmp i
│ │ │ -001c9ea0: 6e20 2f65 7463 2f66 7374 6162 2220 2667  n /etc/fstab" &g
│ │ │ -001c9eb0: 743b 2661 6d70 3b32 3b20 7265 7475 726e  t;&2; return
│ │ │ -001c9ec0: 2031 3b20 7d0a 2020 2020 0a0a 0a20 2020   1; }.    ...   
│ │ │ -001c9ed0: 206d 6f75 6e74 5f70 6f69 6e74 5f6d 6174   mount_point_mat
│ │ │ -001c9ee0: 6368 5f72 6567 6578 703d 2224 2870 7269  ch_regexp="$(pri
│ │ │ -001c9ef0: 6e74 6620 225e 5b5b 3a73 7061 6365 3a5d  ntf "^[[:space:]
│ │ │ -001c9f00: 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061 6365  ]*[^#].*[[:space
│ │ │ -001c9f10: 3a5d 5d25 735b 5b3a 7370 6163 653a 5d5d  :]]%s[[:space:]]
│ │ │ -001c9f20: 2220 2f76 6172 2f74 6d70 2922 0a0a 2020  " /var/tmp)"..  
│ │ │ -001c9f30: 2020 2320 4966 2074 6865 206d 6f75 6e74    # If the mount
│ │ │ -001c9f40: 2070 6f69 6e74 2069 7320 6e6f 7420 696e   point is not in
│ │ │ -001c9f50: 202f 6574 632f 6673 7461 622c 2067 6574   /etc/fstab, get
│ │ │ -001c9f60: 2070 7265 7669 6f75 7320 6d6f 756e 7420   previous mount 
│ │ │ -001c9f70: 6f70 7469 6f6e 7320 6672 6f6d 202f 6574  options from /et
│ │ │ -001c9f80: 632f 6d74 6162 0a20 2020 2069 6620 2120  c/mtab.    if ! 
│ │ │ -001c9f90: 6772 6570 202d 7120 2224 6d6f 756e 745f  grep -q "$mount_
│ │ │ -001c9fa0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001c9fb0: 7870 2220 2f65 7463 2f66 7374 6162 3b20  xp" /etc/fstab; 
│ │ │ -001c9fc0: 7468 656e 0a20 2020 2020 2020 2023 2072  then.        # r
│ │ │ -001c9fd0: 756e 7469 6d65 206f 7074 7320 7769 7468  untime opts with
│ │ │ -001c9fe0: 6f75 7420 736f 6d65 2061 7574 6f6d 6174  out some automat
│ │ │ -001c9ff0: 6963 206b 6572 6e65 6c2f 7573 6572 7370  ic kernel/usersp
│ │ │ -001ca000: 6163 652d 6164 6465 6420 6465 6661 756c  ace-added defaul
│ │ │ -001ca010: 7473 0a20 2020 2020 2020 2070 7265 7669  ts.        previ
│ │ │ -001ca020: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ -001ca030: 2867 7265 7020 2224 6d6f 756e 745f 706f  (grep "$mount_po
│ │ │ -001ca040: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001ca050: 2220 2f65 7463 2f6d 7461 6220 7c20 6865  " /etc/mtab | he
│ │ │ -001ca060: 6164 202d 3120 7c20 2061 776b 2027 7b70  ad -1 |  awk '{p
│ │ │ -001ca070: 7269 6e74 2024 347d 2720 5c0a 2020 2020  rint $4}' \.    
│ │ │ -001ca080: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -001ca090: 7c20 7365 6420 2d45 2022 732f 2872 777c  | sed -E "s/(rw|
│ │ │ -001ca0a0: 6465 6661 756c 7473 7c73 6563 6c61 6265  defaults|seclabe
│ │ │ -001ca0b0: 6c7c 6e6f 7375 6964 2928 2c7c 2429 2f2f  l|nosuid)(,|$)//
│ │ │ -001ca0c0: 673b 732f 2c24 2f2f 2229 0a20 2020 2020  g;s/,$//").     
│ │ │ -001ca0d0: 2020 205b 2022 2470 7265 7669 6f75 735f     [ "$previous_
│ │ │ -001ca0e0: 6d6f 756e 745f 6f70 7473 2220 5d20 2661  mount_opts" ] &a
│ │ │ -001ca0f0: 6d70 3b26 616d 703b 2070 7265 7669 6f75  mp;& previou
│ │ │ -001ca100: 735f 6d6f 756e 745f 6f70 7473 2b3d 222c  s_mount_opts+=",
│ │ │ -001ca110: 220a 2020 2020 2020 2020 2320 496e 2069  ".        # In i
│ │ │ -001ca120: 736f 3936 3630 2066 696c 6573 7973 7465  so9660 filesyste
│ │ │ -001ca130: 6d73 206d 7461 6220 636f 756c 6420 6465  ms mtab could de
│ │ │ -001ca140: 7363 7269 6265 2061 2022 626c 6f63 6b73  scribe a "blocks
│ │ │ -001ca150: 697a 6522 2076 616c 7565 2c20 7468 6973  ize" value, this
│ │ │ -001ca160: 2073 686f 756c 6420 6265 2072 6566 6c65   should be refle
│ │ │ -001ca170: 6374 6564 2069 6e0a 2020 2020 2020 2020  cted in.        
│ │ │ -001ca180: 2320 6673 7461 6220 6173 2022 626c 6f63  # fstab as "bloc
│ │ │ -001ca190: 6b22 2e20 2054 6865 206e 6578 7420 7661  k".  The next va
│ │ │ -001ca1a0: 7269 6162 6c65 2069 7320 746f 2073 6174  riable is to sat
│ │ │ -001ca1b0: 6973 6679 2073 6865 6c6c 6368 6563 6b20  isfy shellcheck 
│ │ │ -001ca1c0: 5343 3230 3530 2e0a 2020 2020 2020 2020  SC2050..        
│ │ │ -001ca1d0: 6673 5f74 7970 653d 2222 0a20 2020 2020  fs_type="".     
│ │ │ -001ca1e0: 2020 2069 6620 5b20 2022 2466 735f 7479     if [  "$fs_ty
│ │ │ -001ca1f0: 7065 2220 3d3d 2022 6973 6f39 3636 3022  pe" == "iso9660"
│ │ │ -001ca200: 205d 203b 2074 6865 6e0a 2020 2020 2020   ] ; then.      
│ │ │ -001ca210: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ -001ca220: 6f75 6e74 5f6f 7074 733d 2428 7365 6420  ount_opts=$(sed 
│ │ │ -001ca230: 2773 2f62 6c6f 636b 7369 7a65 3d2f 626c  's/blocksize=/bl
│ │ │ -001ca240: 6f63 6b3d 2f27 2026 6c74 3b26 6c74 3b26  ock=/' <<&
│ │ │ -001ca250: 6c74 3b20 2224 7072 6576 696f 7573 5f6d  lt; "$previous_m
│ │ │ -001ca260: 6f75 6e74 5f6f 7074 7322 290a 2020 2020  ount_opts").    
│ │ │ -001ca270: 2020 2020 6669 0a20 2020 2020 2020 2065      fi.        e
│ │ │ -001ca280: 6368 6f20 2220 2f76 6172 2f74 6d70 2020  cho " /var/tmp  
│ │ │ -001ca290: 6465 6661 756c 7473 2c24 7b70 7265 7669  defaults,${previ
│ │ │ -001ca2a0: 6f75 735f 6d6f 756e 745f 6f70 7473 7d6e  ous_mount_opts}n
│ │ │ -001ca2b0: 6f73 7569 6420 3020 3022 2026 6774 3b26  osuid 0 0" >&
│ │ │ -001ca2c0: 6774 3b20 2f65 7463 2f66 7374 6162 0a20  gt; /etc/fstab. 
│ │ │ -001ca2d0: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ -001ca2e0: 745f 6f70 7420 6f70 7469 6f6e 2069 7320  t_opt option is 
│ │ │ -001ca2f0: 6e6f 7420 616c 7265 6164 7920 696e 2074  not already in t
│ │ │ -001ca300: 6865 206d 6f75 6e74 2070 6f69 6e74 2773  he mount point's
│ │ │ -001ca310: 202f 6574 632f 6673 7461 6220 656e 7472   /etc/fstab entr
│ │ │ -001ca320: 792c 2061 6464 2069 740a 2020 2020 656c  y, add it.    el
│ │ │ -001ca330: 6966 2021 2067 7265 7020 2224 6d6f 756e  if ! grep "$moun
│ │ │ -001ca340: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001ca350: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ -001ca360: 207c 2067 7265 7020 2d71 2022 6e6f 7375   | grep -q "nosu
│ │ │ -001ca370: 6964 223b 2074 6865 6e0a 2020 2020 2020  id"; then.      
│ │ │ -001ca380: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ -001ca390: 5f6f 7074 733d 2428 6772 6570 2022 246d  _opts=$(grep "$m
│ │ │ -001ca3a0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001ca3b0: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ -001ca3c0: 7461 6220 7c20 6177 6b20 277b 7072 696e  tab | awk '{prin
│ │ │ -001ca3d0: 7420 2434 7d27 290a 2020 2020 2020 2020  t $4}').        
│ │ │ -001ca3e0: 7365 6420 2d69 2022 737c 5c28 247b 6d6f  sed -i "s|\(${mo
│ │ │ -001ca3f0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001ca400: 7265 6765 7870 7d2e 2a24 7b70 7265 7669  regexp}.*${previ
│ │ │ -001ca410: 6f75 735f 6d6f 756e 745f 6f70 7473 7d5c  ous_mount_opts}\
│ │ │ -001ca420: 297c 5c31 2c6e 6f73 7569 647c 2220 2f65  )|\1,nosuid|" /e
│ │ │ -001ca430: 7463 2f66 7374 6162 0a20 2020 2066 690a  tc/fstab.    fi.
│ │ │ -001ca440: 0a0a 2020 2020 6966 206d 6b64 6972 202d  ..    if mkdir -
│ │ │ -001ca450: 7020 222f 7661 722f 746d 7022 3b20 7468  p "/var/tmp"; th
│ │ │ -001ca460: 656e 0a20 2020 2020 2020 2069 6620 6d6f  en.        if mo
│ │ │ -001ca470: 756e 7470 6f69 6e74 202d 7120 222f 7661  untpoint -q "/va
│ │ │ -001ca480: 722f 746d 7022 3b20 7468 656e 0a20 2020  r/tmp"; then.   
│ │ │ -001ca490: 2020 2020 2020 2020 206d 6f75 6e74 202d           mount -
│ │ │ -001ca4a0: 6f20 7265 6d6f 756e 7420 2d2d 7461 7267  o remount --targ
│ │ │ -001ca4b0: 6574 2022 2f76 6172 2f74 6d70 220a 2020  et "/var/tmp".  
│ │ │ -001ca4c0: 2020 2020 2020 6669 0a20 2020 2066 690a        fi.    fi.
│ │ │ -001ca4d0: 7d0a 0a70 6572 666f 726d 5f72 656d 6564  }..perform_remed
│ │ │ -001ca4e0: 6961 7469 6f6e 0a0a 656c 7365 0a20 2020  iation..else.   
│ │ │ -001ca4f0: 2026 6774 3b26 616d 703b 3220 6563 686f   >&2 echo
│ │ │ -001ca500: 2027 5265 6d65 6469 6174 696f 6e20 6973   'Remediation is
│ │ │ -001ca510: 206e 6f74 2061 7070 6c69 6361 626c 652c   not applicable,
│ │ │ -001ca520: 206e 6f74 6869 6e67 2077 6173 2064 6f6e   nothing was don
│ │ │ -001ca530: 6527 0a66 690a 3c2f 636f 6465 3e3c 2f70  e'.fi.

Remediation Ans │ │ │ +001c81a0: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ +001c81b0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity:< │ │ │ +001c82a0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
low
Disru │ │ │ +001c8260: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e68 ption:h │ │ │ +001c8270: 6967 683c 2f74 643e 3c2f 7472 3e3c 7472 igh
Reboot:false
Stra │ │ │ +001c82b0: 7465 6779 3a3c 2f74 683e 3c74 643e 636f tegy:co │ │ │ +001c82c0: 6e66 6967 7572 653c 2f74 643e 3c2f 7472 nfigure
- name: Gath
│ │ │ +001c82f0: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ +001c8300: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ +001c8310: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ +001c8320: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ +001c8330: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +001c8340: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +001c8350: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +001c8360: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +001c8370: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001c8380: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ +001c8390: 6f6e 5f76 6172 5f74 6d70 5f6e 6f73 7569  on_var_tmp_nosui
│ │ │ +001c83a0: 640a 2020 2d20 6e6f 5f72 6562 6f6f 745f  d.  - no_reboot_
│ │ │ +001c83b0: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ +001c83c0: 2741 6464 206e 6f73 7569 6420 4f70 7469  'Add nosuid Opti
│ │ │ +001c83d0: 6f6e 2074 6f20 2f76 6172 2f74 6d70 3a20  on to /var/tmp: 
│ │ │ +001c83e0: 4368 6563 6b20 696e 666f 726d 6174 696f  Check informatio
│ │ │ +001c83f0: 6e20 6173 736f 6369 6174 6564 2074 6f20  n associated to 
│ │ │ +001c8400: 6d6f 756e 7470 6f69 6e74 270a 2020 616e  mountpoint'.  an
│ │ │ +001c8410: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ +001c8420: 6d6d 616e 643a 2066 696e 646d 6e74 202d  mmand: findmnt -
│ │ │ +001c8430: 2d66 7374 6162 2027 2f76 6172 2f74 6d70  -fstab '/var/tmp
│ │ │ +001c8440: 270a 2020 7265 6769 7374 6572 3a20 6465  '.  register: de
│ │ │ +001c8450: 7669 6365 5f6e 616d 650a 2020 6661 696c  vice_name.  fail
│ │ │ +001c8460: 6564 5f77 6865 6e3a 2064 6576 6963 655f  ed_when: device_
│ │ │ +001c8470: 6e61 6d65 2e72 6320 2667 743b 2031 0a20  name.rc > 1. 
│ │ │ +001c8480: 2063 6861 6e67 6564 5f77 6865 6e3a 2066   changed_when: f
│ │ │ +001c8490: 616c 7365 0a20 2063 6865 636b 5f6d 6f64  alse.  check_mod
│ │ │ +001c84a0: 653a 2066 616c 7365 0a20 2077 6865 6e3a  e: false.  when:
│ │ │ +001c84b0: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ +001c84c0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +001c84d0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001c84e0: 616e 6420 2272 706d 2d6f 7374 7265 6522  and "rpm-ostree"
│ │ │ +001c84f0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001c8500: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001c8510: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ +001c8520: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001c8530: 6167 6573 2061 6e64 206e 6f74 2022 6f70  ages and not "op
│ │ │ +001c8540: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ +001c8550: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001c8560: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001c8570: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ +001c8580: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ +001c8590: 696e 6520 2920 616e 6420 6e6f 7420 2820  ine ) and not ( 
│ │ │ +001c85a0: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ +001c85b0: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20  zation_type in. 
│ │ │ +001c85c0: 2020 205b 2264 6f63 6b65 7222 2c20 226c     ["docker", "l
│ │ │ +001c85d0: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ +001c85e0: 706f 646d 616e 222c 2022 636f 6e74 6169  podman", "contai
│ │ │ +001c85f0: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ +001c8600: 2f76 6172 2f74 6d70 2220 696e 2061 6e73  /var/tmp" in ans
│ │ │ +001c8610: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ +001c8620: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ +001c8630: 6e74 2229 207c 206c 6973 7427 0a20 2074  nt") | list'.  t
│ │ │ +001c8640: 6167 733a 0a20 202d 2063 6f6e 6669 6775  ags:.  - configu
│ │ │ +001c8650: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +001c8660: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +001c8670: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +001c8680: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +001c8690: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +001c86a0: 5f6f 7074 696f 6e5f 7661 725f 746d 705f  _option_var_tmp_
│ │ │ +001c86b0: 6e6f 7375 6964 0a20 202d 206e 6f5f 7265  nosuid.  - no_re
│ │ │ +001c86c0: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ +001c86d0: 616d 653a 2027 4164 6420 6e6f 7375 6964  ame: 'Add nosuid
│ │ │ +001c86e0: 204f 7074 696f 6e20 746f 202f 7661 722f   Option to /var/
│ │ │ +001c86f0: 746d 703a 2043 7265 6174 6520 6d6f 756e  tmp: Create moun
│ │ │ +001c8700: 745f 696e 666f 2064 6963 7469 6f6e 6172  t_info dictionar
│ │ │ +001c8710: 7920 7661 7269 6162 6c65 270a 2020 7365  y variable'.  se
│ │ │ +001c8720: 745f 6661 6374 3a0a 2020 2020 6d6f 756e  t_fact:.    moun
│ │ │ +001c8730: 745f 696e 666f 3a20 277b 7b20 6d6f 756e  t_info: '{{ moun
│ │ │ +001c8740: 745f 696e 666f 7c64 6566 6175 6c74 287b  t_info|default({
│ │ │ +001c8750: 7d29 7c63 6f6d 6269 6e65 287b 6974 656d  })|combine({item
│ │ │ +001c8760: 2e30 3a20 6974 656d 2e31 7d29 207d 7d27  .0: item.1}) }}'
│ │ │ +001c8770: 0a20 2077 6974 685f 746f 6765 7468 6572  .  with_together
│ │ │ +001c8780: 3a0a 2020 2d20 277b 7b20 6465 7669 6365  :.  - '{{ device
│ │ │ +001c8790: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ +001c87a0: 6573 5b30 5d2e 7370 6c69 7428 2920 7c20  es[0].split() | 
│ │ │ +001c87b0: 6d61 7028 2727 6c6f 7765 7227 2729 207c  map(''lower'') |
│ │ │ +001c87c0: 206c 6973 7420 7d7d 270a 2020 2d20 277b   list }}'.  - '{
│ │ │ +001c87d0: 7b20 6465 7669 6365 5f6e 616d 652e 7374  { device_name.st
│ │ │ +001c87e0: 646f 7574 5f6c 696e 6573 5b31 5d2e 7370  dout_lines[1].sp
│ │ │ +001c87f0: 6c69 7428 2920 7c20 6c69 7374 207d 7d27  lit() | list }}'
│ │ │ +001c8800: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ +001c8810: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ +001c8820: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001c8830: 6163 6b61 6765 7320 616e 6420 2272 706d  ackages and "rpm
│ │ │ +001c8840: 2d6f 7374 7265 6522 2069 6e20 616e 7369  -ostree" in ansi
│ │ │ +001c8850: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001c8860: 6573 0a20 2020 2061 6e64 2022 626f 6f74  es.    and "boot
│ │ │ +001c8870: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ +001c8880: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001c8890: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ +001c88a0: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ +001c88b0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001c88c0: 6573 0a20 2020 2061 6e64 2022 6f73 7472  es.    and "ostr
│ │ │ +001c88d0: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ +001c88e0: 726f 635f 636d 646c 696e 6520 2920 616e  roc_cmdline ) an
│ │ │ +001c88f0: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ +001c8900: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ +001c8910: 7970 6520 696e 0a20 2020 205b 2264 6f63  ype in.    ["doc
│ │ │ +001c8920: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ +001c8930: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ +001c8940: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ +001c8950: 290a 2020 2d20 2722 2f76 6172 2f74 6d70  ).  - '"/var/tmp
│ │ │ +001c8960: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ +001c8970: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ +001c8980: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ +001c8990: 6973 7427 0a20 202d 2064 6576 6963 655f  ist'.  - device_
│ │ │ +001c89a0: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ +001c89b0: 6566 696e 6564 2061 6e64 2064 6576 6963  efined and devic
│ │ │ +001c89c0: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ +001c89d0: 6e65 7320 6973 2064 6566 696e 6564 0a20  nes is defined. 
│ │ │ +001c89e0: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ +001c89f0: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ +001c8a00: 2667 743b 2030 290a 2020 7461 6773 3a0a  > 0).  tags:.
│ │ │ +001c8a10: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +001c8a20: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +001c8a30: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +001c8a40: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +001c8a50: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001c8a60: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ +001c8a70: 6f6e 5f76 6172 5f74 6d70 5f6e 6f73 7569  on_var_tmp_nosui
│ │ │ +001c8a80: 640a 2020 2d20 6e6f 5f72 6562 6f6f 745f  d.  - no_reboot_
│ │ │ +001c8a90: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ +001c8aa0: 2741 6464 206e 6f73 7569 6420 4f70 7469  'Add nosuid Opti
│ │ │ +001c8ab0: 6f6e 2074 6f20 2f76 6172 2f74 6d70 3a20  on to /var/tmp: 
│ │ │ +001c8ac0: 4966 202f 7661 722f 746d 7020 6e6f 7420  If /var/tmp not 
│ │ │ +001c8ad0: 6d6f 756e 7465 642c 2063 7261 6674 206d  mounted, craft m
│ │ │ +001c8ae0: 6f75 6e74 5f69 6e66 6f0a 2020 2020 6d61  ount_info.    ma
│ │ │ +001c8af0: 6e75 616c 6c79 270a 2020 7365 745f 6661  nually'.  set_fa
│ │ │ +001c8b00: 6374 3a0a 2020 2020 6d6f 756e 745f 696e  ct:.    mount_in
│ │ │ +001c8b10: 666f 3a20 277b 7b20 6d6f 756e 745f 696e  fo: '{{ mount_in
│ │ │ +001c8b20: 666f 7c64 6566 6175 6c74 287b 7d29 7c63  fo|default({})|c
│ │ │ +001c8b30: 6f6d 6269 6e65 287b 6974 656d 2e30 3a20  ombine({item.0: 
│ │ │ +001c8b40: 6974 656d 2e31 7d29 207d 7d27 0a20 2077  item.1}) }}'.  w
│ │ │ +001c8b50: 6974 685f 746f 6765 7468 6572 3a0a 2020  ith_together:.  
│ │ │ +001c8b60: 2d20 2d20 7461 7267 6574 0a20 2020 202d  - - target.    -
│ │ │ +001c8b70: 2073 6f75 7263 650a 2020 2020 2d20 6673   source.    - fs
│ │ │ +001c8b80: 7479 7065 0a20 2020 202d 206f 7074 696f  type.    - optio
│ │ │ +001c8b90: 6e73 0a20 202d 202d 202f 7661 722f 746d  ns.  - - /var/tm
│ │ │ +001c8ba0: 700a 2020 2020 2d20 2727 0a20 2020 202d  p.    - ''.    -
│ │ │ +001c8bb0: 2027 270a 2020 2020 2d20 6465 6661 756c   ''.    - defaul
│ │ │ +001c8bc0: 7473 0a20 2077 6865 6e3a 0a20 202d 2028  ts.  when:.  - (
│ │ │ +001c8bd0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +001c8be0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001c8bf0: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ +001c8c00: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ +001c8c10: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001c8c20: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ +001c8c30: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ +001c8c40: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001c8c50: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ +001c8c60: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ +001c8c70: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001c8c80: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ +001c8c90: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001c8ca0: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ +001c8cb0: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ +001c8cc0: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ +001c8cd0: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ +001c8ce0: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ +001c8cf0: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ +001c8d00: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ +001c8d10: 2920 290a 2020 2d20 2722 2f76 6172 2f74  ) ).  - '"/var/t
│ │ │ +001c8d20: 6d70 2220 696e 2061 6e73 6962 6c65 5f6d  mp" in ansible_m
│ │ │ +001c8d30: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ +001c8d40: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ +001c8d50: 206c 6973 7427 0a20 202d 2028 222d 2d66   list'.  - ("--f
│ │ │ +001c8d60: 7374 6162 2220 7c20 6c65 6e67 7468 203d  stab" | length =
│ │ │ +001c8d70: 3d20 3029 0a20 202d 2064 6576 6963 655f  = 0).  - device_
│ │ │ +001c8d80: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ +001c8d90: 6566 696e 6564 2061 6e64 2064 6576 6963  efined and devic
│ │ │ +001c8da0: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ +001c8db0: 6e65 7320 6973 2064 6566 696e 6564 0a20  nes is defined. 
│ │ │ +001c8dc0: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ +001c8dd0: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ +001c8de0: 3d3d 2030 290a 2020 7461 6773 3a0a 2020  == 0).  tags:.  
│ │ │ +001c8df0: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001c8e00: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001c8e10: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001c8e20: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001c8e30: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001c8e40: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001c8e50: 5f76 6172 5f74 6d70 5f6e 6f73 7569 640a  _var_tmp_nosuid.
│ │ │ +001c8e60: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001c8e70: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001c8e80: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ +001c8e90: 2074 6f20 2f76 6172 2f74 6d70 3a20 4d61   to /var/tmp: Ma
│ │ │ +001c8ea0: 6b65 2073 7572 6520 6e6f 7375 6964 206f  ke sure nosuid o
│ │ │ +001c8eb0: 7074 696f 6e20 6973 2070 6172 7420 6f66  ption is part of
│ │ │ +001c8ec0: 2074 6865 2074 6f0a 2020 2020 2f76 6172   the to.    /var
│ │ │ +001c8ed0: 2f74 6d70 206f 7074 696f 6e73 270a 2020  /tmp options'.  
│ │ │ +001c8ee0: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ +001c8ef0: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ +001c8f00: 756e 745f 696e 666f 207c 2063 6f6d 6269  unt_info | combi
│ │ │ +001c8f10: 6e65 2820 7b27 276f 7074 696f 6e73 2727  ne( {''options''
│ │ │ +001c8f20: 3a27 2727 277e 286d 6f75 6e74 5f69 6e66  :''''~(mount_inf
│ │ │ +001c8f30: 6f2e 6f70 7469 6f6e 7320 7c0a 2020 2020  o.options |.    
│ │ │ +001c8f40: 2020 6465 6661 756c 7428 2727 2727 2929    default(''''))
│ │ │ +001c8f50: 7e28 2727 2c27 2720 6966 2028 6d6f 756e  ~('','' if (moun
│ │ │ +001c8f60: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ +001c8f70: 2064 6566 6175 6c74 2827 2727 2729 2920   default('''')) 
│ │ │ +001c8f80: 656c 7365 2027 2727 2729 7e27 276e 6f73  else '''')~''nos
│ │ │ +001c8f90: 7569 6427 270a 2020 2020 2020 7d29 207d  uid''.      }) }
│ │ │ +001c8fa0: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028  }'.  when:.  - (
│ │ │ +001c8fb0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +001c8fc0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001c8fd0: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ +001c8fe0: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ +001c8ff0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001c9000: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ +001c9010: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ +001c9020: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001c9030: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ +001c9040: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ +001c9050: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001c9060: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ +001c9070: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001c9080: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ +001c9090: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ +001c90a0: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ +001c90b0: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ +001c90c0: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ +001c90d0: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ +001c90e0: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ +001c90f0: 2920 290a 2020 2d20 2722 2f76 6172 2f74  ) ).  - '"/var/t
│ │ │ +001c9100: 6d70 2220 696e 2061 6e73 6962 6c65 5f6d  mp" in ansible_m
│ │ │ +001c9110: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ +001c9120: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ +001c9130: 206c 6973 7427 0a20 202d 206d 6f75 6e74   list'.  - mount
│ │ │ +001c9140: 5f69 6e66 6f20 6973 2064 6566 696e 6564  _info is defined
│ │ │ +001c9150: 2061 6e64 2022 6e6f 7375 6964 2220 6e6f   and "nosuid" no
│ │ │ +001c9160: 7420 696e 2028 6d6f 756e 745f 696e 666f  t in (mount_info
│ │ │ +001c9170: 2e6f 7074 696f 6e73 207c 2064 6566 6175  .options | defau
│ │ │ +001c9180: 6c74 2827 2729 290a 2020 7461 6773 3a0a  lt('')).  tags:.
│ │ │ +001c9190: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +001c91a0: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +001c91b0: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +001c91c0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +001c91d0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001c91e0: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ +001c91f0: 6f6e 5f76 6172 5f74 6d70 5f6e 6f73 7569  on_var_tmp_nosui
│ │ │ +001c9200: 640a 2020 2d20 6e6f 5f72 6562 6f6f 745f  d.  - no_reboot_
│ │ │ +001c9210: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ +001c9220: 2741 6464 206e 6f73 7569 6420 4f70 7469  'Add nosuid Opti
│ │ │ +001c9230: 6f6e 2074 6f20 2f76 6172 2f74 6d70 3a20  on to /var/tmp: 
│ │ │ +001c9240: 456e 7375 7265 202f 7661 722f 746d 7020  Ensure /var/tmp 
│ │ │ +001c9250: 6973 206d 6f75 6e74 6564 2077 6974 6820  is mounted with 
│ │ │ +001c9260: 6e6f 7375 6964 206f 7074 696f 6e27 0a20  nosuid option'. 
│ │ │ +001c9270: 2061 6e73 6962 6c65 2e70 6f73 6978 2e6d   ansible.posix.m
│ │ │ +001c9280: 6f75 6e74 3a0a 2020 2020 7061 7468 3a20  ount:.    path: 
│ │ │ +001c9290: 2f76 6172 2f74 6d70 0a20 2020 2073 7263  /var/tmp.    src
│ │ │ +001c92a0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001c92b0: 2e73 6f75 7263 6520 7c20 6465 6661 756c  .source | defaul
│ │ │ +001c92c0: 7428 2727 2727 2920 7d7d 270a 2020 2020  t('''') }}'.    
│ │ │ +001c92d0: 6f70 7473 3a20 277b 7b20 6d6f 756e 745f  opts: '{{ mount_
│ │ │ +001c92e0: 696e 666f 2e6f 7074 696f 6e73 207c 2064  info.options | d
│ │ │ +001c92f0: 6566 6175 6c74 2827 2727 2729 207d 7d27  efault('''') }}'
│ │ │ +001c9300: 0a20 2020 2073 7461 7465 3a20 6d6f 756e  .    state: moun
│ │ │ +001c9310: 7465 640a 2020 2020 6673 7479 7065 3a20  ted.    fstype: 
│ │ │ +001c9320: 277b 7b20 6d6f 756e 745f 696e 666f 2e66  '{{ mount_info.f
│ │ │ +001c9330: 7374 7970 6520 7c20 6465 6661 756c 7428  stype | default(
│ │ │ +001c9340: 2727 2727 2920 7d7d 270a 2020 7265 6769  '''') }}'.  regi
│ │ │ +001c9350: 7374 6572 3a20 6d6f 756e 745f 7265 7375  ster: mount_resu
│ │ │ +001c9360: 6c74 0a20 2066 6169 6c65 645f 7768 656e  lt.  failed_when
│ │ │ +001c9370: 3a0a 2020 2d20 6d6f 756e 745f 7265 7375  :.  - mount_resu
│ │ │ +001c9380: 6c74 2069 7320 6661 696c 6564 0a20 202d  lt is failed.  -
│ │ │ +001c9390: 2027 2727 7461 7267 6574 2069 7320 6275   '''target is bu
│ │ │ +001c93a0: 7379 2727 206e 6f74 2069 6e20 286d 6f75  sy'' not in (mou
│ │ │ +001c93b0: 6e74 5f72 6573 756c 742e 6d73 6720 7c20  nt_result.msg | 
│ │ │ +001c93c0: 6465 6661 756c 7428 2727 2727 2929 270a  default(''''))'.
│ │ │ +001c93d0: 2020 2d20 2727 2761 6c72 6561 6479 206d    - '''already m
│ │ │ +001c93e0: 6f75 6e74 6564 2727 206e 6f74 2069 6e20  ounted'' not in 
│ │ │ +001c93f0: 286d 6f75 6e74 5f72 6573 756c 742e 6d73  (mount_result.ms
│ │ │ +001c9400: 6720 7c20 6465 6661 756c 7428 2727 2727  g | default(''''
│ │ │ +001c9410: 2929 270a 2020 7768 656e 3a0a 2020 2d20  ))'.  when:.  - 
│ │ │ +001c9420: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ +001c9430: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001c9440: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001c9450: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ +001c9460: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001c9470: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ +001c9480: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +001c9490: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001c94a0: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ +001c94b0: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ +001c94c0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001c94d0: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ +001c94e0: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001c94f0: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ +001c9500: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ +001c9510: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ +001c9520: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ +001c9530: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +001c9540: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +001c9550: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ +001c9560: 2029 2029 0a20 202d 2027 222f 7661 722f   ) ).  - '"/var/
│ │ │ +001c9570: 746d 7022 2069 6e20 616e 7369 626c 655f  tmp" in ansible_
│ │ │ +001c9580: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ +001c9590: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ +001c95a0: 7c20 6c69 7374 270a 2020 2d20 6d6f 756e  | list'.  - moun
│ │ │ +001c95b0: 745f 696e 666f 2069 7320 6465 6669 6e65  t_info is define
│ │ │ +001c95c0: 640a 2020 2d20 2864 6576 6963 655f 6e61  d.  - (device_na
│ │ │ +001c95d0: 6d65 2e73 7464 6f75 7420 6973 2064 6566  me.stdout is def
│ │ │ +001c95e0: 696e 6564 2061 6e64 2028 6465 7669 6365  ined and (device
│ │ │ +001c95f0: 5f6e 616d 652e 7374 646f 7574 207c 206c  _name.stdout | l
│ │ │ +001c9600: 656e 6774 6820 2667 743b 2030 2929 206f  ength > 0)) o
│ │ │ +001c9610: 7220 2822 2d2d 6673 7461 6222 0a20 2020  r ("--fstab".   
│ │ │ +001c9620: 207c 206c 656e 6774 6820 3d3d 2030 290a   | length == 0).
│ │ │ +001c9630: 2020 7461 6773 3a0a 2020 2d20 636f 6e66    tags:.  - conf
│ │ │ +001c9640: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +001c9650: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ +001c9660: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ +001c9670: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ +001c9680: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ +001c9690: 756e 745f 6f70 7469 6f6e 5f76 6172 5f74  unt_option_var_t
│ │ │ +001c96a0: 6d70 5f6e 6f73 7569 640a 2020 2d20 6e6f  mp_nosuid.  - no
│ │ │ +001c96b0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a3c  _reboot_needed.<
│ │ │ +001c96c0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +001c9770: 656d 6564 6961 7469 6f6e 2053 6865 6c6c emediation Shell │ │ │ +001c9780: 2073 6372 6970 7420 e287 b23c 2f61 3e3c script ...< │ │ │ +001c9790: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
#
│ │ │ +001c9840: 2052 656d 6564 6961 7469 6f6e 2069 7320   Remediation is 
│ │ │ +001c9850: 6170 706c 6963 6162 6c65 206f 6e6c 7920  applicable only 
│ │ │ +001c9860: 696e 2063 6572 7461 696e 2070 6c61 7466  in certain platf
│ │ │ +001c9870: 6f72 6d73 0a69 6620 2820 2120 2820 7b20  orms.if ( ! ( { 
│ │ │ +001c9880: 7270 6d20 2d2d 7175 6965 7420 2d71 206b  rpm --quiet -q k
│ │ │ +001c9890: 6572 6e65 6c20 3b7d 2026 616d 703b 2661  ernel ;} &&a
│ │ │ +001c98a0: 6d70 3b20 7b20 7270 6d20 2d2d 7175 6965  mp; { rpm --quie
│ │ │ +001c98b0: 7420 2d71 2072 706d 2d6f 7374 7265 6520  t -q rpm-ostree 
│ │ │ +001c98c0: 3b7d 2026 616d 703b 2661 6d70 3b20 7b20  ;} && { 
│ │ │ +001c98d0: 7270 6d20 2d2d 7175 6965 7420 2d71 2062  rpm --quiet -q b
│ │ │ +001c98e0: 6f6f 7463 203b 7d20 2661 6d70 3b26 616d  ootc ;} &&am
│ │ │ +001c98f0: 703b 207b 2021 2072 706d 202d 2d71 7569  p; { ! rpm --qui
│ │ │ +001c9900: 6574 202d 7120 6f70 656e 7368 6966 742d  et -q openshift-
│ │ │ +001c9910: 6b75 6265 6c65 7420 3b7d 2026 616d 703b  kubelet ;} &
│ │ │ +001c9920: 2661 6d70 3b20 285b 202d 6620 2f72 756e  & ([ -f /run
│ │ │ +001c9930: 2f6f 7374 7265 652d 626f 6f74 6564 205d  /ostree-booted ]
│ │ │ +001c9940: 207c 7c20 5b20 2d4c 202f 6f73 7472 6565   || [ -L /ostree
│ │ │ +001c9950: 205d 2920 2920 2661 6d70 3b26 616d 703b   ]) ) &&
│ │ │ +001c9960: 2021 2028 205b 202d 6620 2f2e 646f 636b   ! ( [ -f /.dock
│ │ │ +001c9970: 6572 656e 7620 5d20 7c7c 205b 202d 6620  erenv ] || [ -f 
│ │ │ +001c9980: 2f72 756e 2f2e 636f 6e74 6169 6e65 7265  /run/.containere
│ │ │ +001c9990: 6e76 205d 2029 2029 2026 616d 703b 2661  nv ] ) ) &&a
│ │ │ +001c99a0: 6d70 3b20 7b20 2820 6669 6e64 6d6e 7420  mp; { ( findmnt 
│ │ │ +001c99b0: 2d2d 6b65 726e 656c 2022 2f76 6172 2f74  --kernel "/var/t
│ │ │ +001c99c0: 6d70 2220 2667 743b 202f 6465 762f 6e75  mp" > /dev/nu
│ │ │ +001c99d0: 6c6c 207c 7c20 6669 6e64 6d6e 7420 2d2d  ll || findmnt --
│ │ │ +001c99e0: 6673 7461 6220 222f 7661 722f 746d 7022  fstab "/var/tmp"
│ │ │ +001c99f0: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20   > /dev/null 
│ │ │ +001c9a00: 293b 207d 3b20 7468 656e 0a0a 6675 6e63  ); }; then..func
│ │ │ +001c9a10: 7469 6f6e 2070 6572 666f 726d 5f72 656d  tion perform_rem
│ │ │ +001c9a20: 6564 6961 7469 6f6e 207b 0a0a 2020 2020  ediation {..    
│ │ │ +001c9a30: 0a20 2020 2020 2020 2023 2074 6865 206d  .        # the m
│ │ │ +001c9a40: 6f75 6e74 2070 6f69 6e74 202f 7661 722f  ount point /var/
│ │ │ +001c9a50: 746d 7020 6861 7320 746f 2062 6520 6465  tmp has to be de
│ │ │ +001c9a60: 6669 6e65 6420 696e 202f 6574 632f 6673  fined in /etc/fs
│ │ │ +001c9a70: 7461 620a 2020 2020 2020 2020 2320 6265  tab.        # be
│ │ │ +001c9a80: 666f 7265 2074 6869 7320 7265 6d65 6469  fore this remedi
│ │ │ +001c9a90: 6174 696f 6e20 6361 6e20 6265 2065 7865  ation can be exe
│ │ │ +001c9aa0: 6375 7465 642e 2049 6e20 6361 7365 2069  cuted. In case i
│ │ │ +001c9ab0: 7420 6973 206e 6f74 2064 6566 696e 6564  t is not defined
│ │ │ +001c9ac0: 2c20 7468 650a 2020 2020 2020 2020 2320  , the.        # 
│ │ │ +001c9ad0: 7265 6d65 6469 6174 696f 6e20 6162 6f72  remediation abor
│ │ │ +001c9ae0: 7473 2061 6e64 206e 6f20 6368 616e 6765  ts and no change
│ │ │ +001c9af0: 7320 7265 6761 7264 696e 6720 7468 6520  s regarding the 
│ │ │ +001c9b00: 6d6f 756e 7420 706f 696e 7420 6172 6520  mount point are 
│ │ │ +001c9b10: 646f 6e65 2e0a 2020 2020 2020 2020 6d6f  done..        mo
│ │ │ +001c9b20: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001c9b30: 7265 6765 7870 3d22 2428 7072 696e 7466  regexp="$(printf
│ │ │ +001c9b40: 2022 5e5b 5b3a 7370 6163 653a 5d5d 2a5b   "^[[:space:]]*[
│ │ │ +001c9b50: 5e23 5d2e 2a5b 5b3a 7370 6163 653a 5d5d  ^#].*[[:space:]]
│ │ │ +001c9b60: 2573 5b5b 3a73 7061 6365 3a5d 5d22 2022  %s[[:space:]]" "
│ │ │ +001c9b70: 2f76 6172 2f74 6d70 2229 220a 0a20 2020  /var/tmp")"..   
│ │ │ +001c9b80: 2067 7265 7020 2224 6d6f 756e 745f 706f   grep "$mount_po
│ │ │ +001c9b90: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001c9ba0: 2220 2d71 202f 6574 632f 6673 7461 6220  " -q /etc/fstab 
│ │ │ +001c9bb0: 5c0a 2020 2020 2020 2020 7c7c 207b 2065  \.        || { e
│ │ │ +001c9bc0: 6368 6f20 2254 6865 206d 6f75 6e74 2070  cho "The mount p
│ │ │ +001c9bd0: 6f69 6e74 2027 2f76 6172 2f74 6d70 2720  oint '/var/tmp' 
│ │ │ +001c9be0: 6973 206e 6f74 2065 7665 6e20 696e 202f  is not even in /
│ │ │ +001c9bf0: 6574 632f 6673 7461 622c 2073 6f20 7765  etc/fstab, so we
│ │ │ +001c9c00: 2063 616e 2774 2073 6574 2075 7020 6d6f   can't set up mo
│ │ │ +001c9c10: 756e 7420 6f70 7469 6f6e 7322 2026 6774  unt options" >
│ │ │ +001c9c20: 3b26 616d 703b 323b 0a20 2020 2020 2020  ;&2;.       
│ │ │ +001c9c30: 2020 2020 2020 2020 2065 6368 6f20 224e           echo "N
│ │ │ +001c9c40: 6f74 2072 656d 6564 6961 7469 6e67 2c20  ot remediating, 
│ │ │ +001c9c50: 6265 6361 7573 6520 7468 6572 6520 6973  because there is
│ │ │ +001c9c60: 206e 6f20 7265 636f 7264 206f 6620 2f76   no record of /v
│ │ │ +001c9c70: 6172 2f74 6d70 2069 6e20 2f65 7463 2f66  ar/tmp in /etc/f
│ │ │ +001c9c80: 7374 6162 2220 2667 743b 2661 6d70 3b32  stab" >&2
│ │ │ +001c9c90: 3b20 7265 7475 726e 2031 3b20 7d0a 2020  ; return 1; }.  
│ │ │ +001c9ca0: 2020 0a0a 0a20 2020 206d 6f75 6e74 5f70    ...    mount_p
│ │ │ +001c9cb0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001c9cc0: 703d 2224 2870 7269 6e74 6620 225e 5b5b  p="$(printf "^[[
│ │ │ +001c9cd0: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a  :space:]]*[^#].*
│ │ │ +001c9ce0: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a  [[:space:]]%s[[:
│ │ │ +001c9cf0: 7370 6163 653a 5d5d 2220 2f76 6172 2f74  space:]]" /var/t
│ │ │ +001c9d00: 6d70 2922 0a0a 2020 2020 2320 4966 2074  mp)"..    # If t
│ │ │ +001c9d10: 6865 206d 6f75 6e74 2070 6f69 6e74 2069  he mount point i
│ │ │ +001c9d20: 7320 6e6f 7420 696e 202f 6574 632f 6673  s not in /etc/fs
│ │ │ +001c9d30: 7461 622c 2067 6574 2070 7265 7669 6f75  tab, get previou
│ │ │ +001c9d40: 7320 6d6f 756e 7420 6f70 7469 6f6e 7320  s mount options 
│ │ │ +001c9d50: 6672 6f6d 202f 6574 632f 6d74 6162 0a20  from /etc/mtab. 
│ │ │ +001c9d60: 2020 2069 6620 2120 6772 6570 202d 7120     if ! grep -q 
│ │ │ +001c9d70: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ +001c9d80: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ +001c9d90: 2f66 7374 6162 3b20 7468 656e 0a20 2020  /fstab; then.   
│ │ │ +001c9da0: 2020 2020 2023 2072 756e 7469 6d65 206f       # runtime o
│ │ │ +001c9db0: 7074 7320 7769 7468 6f75 7420 736f 6d65  pts without some
│ │ │ +001c9dc0: 2061 7574 6f6d 6174 6963 206b 6572 6e65   automatic kerne
│ │ │ +001c9dd0: 6c2f 7573 6572 7370 6163 652d 6164 6465  l/userspace-adde
│ │ │ +001c9de0: 6420 6465 6661 756c 7473 0a20 2020 2020  d defaults.     
│ │ │ +001c9df0: 2020 2070 7265 7669 6f75 735f 6d6f 756e     previous_moun
│ │ │ +001c9e00: 745f 6f70 7473 3d24 2867 7265 7020 2224  t_opts=$(grep "$
│ │ │ +001c9e10: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001c9e20: 685f 7265 6765 7870 2220 2f65 7463 2f6d  h_regexp" /etc/m
│ │ │ +001c9e30: 7461 6220 7c20 6865 6164 202d 3120 7c20  tab | head -1 | 
│ │ │ +001c9e40: 2061 776b 2027 7b70 7269 6e74 2024 347d   awk '{print $4}
│ │ │ +001c9e50: 2720 5c0a 2020 2020 2020 2020 2020 2020  ' \.            
│ │ │ +001c9e60: 2020 2020 2020 2020 7c20 7365 6420 2d45          | sed -E
│ │ │ +001c9e70: 2022 732f 2872 777c 6465 6661 756c 7473   "s/(rw|defaults
│ │ │ +001c9e80: 7c73 6563 6c61 6265 6c7c 6e6f 7375 6964  |seclabel|nosuid
│ │ │ +001c9e90: 2928 2c7c 2429 2f2f 673b 732f 2c24 2f2f  )(,|$)//g;s/,$//
│ │ │ +001c9ea0: 2229 0a20 2020 2020 2020 205b 2022 2470  ").        [ "$p
│ │ │ +001c9eb0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001c9ec0: 7473 2220 5d20 2661 6d70 3b26 616d 703b  ts" ] &&
│ │ │ +001c9ed0: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ +001c9ee0: 6f70 7473 2b3d 222c 220a 2020 2020 2020  opts+=",".      
│ │ │ +001c9ef0: 2020 2320 496e 2069 736f 3936 3630 2066    # In iso9660 f
│ │ │ +001c9f00: 696c 6573 7973 7465 6d73 206d 7461 6220  ilesystems mtab 
│ │ │ +001c9f10: 636f 756c 6420 6465 7363 7269 6265 2061  could describe a
│ │ │ +001c9f20: 2022 626c 6f63 6b73 697a 6522 2076 616c   "blocksize" val
│ │ │ +001c9f30: 7565 2c20 7468 6973 2073 686f 756c 6420  ue, this should 
│ │ │ +001c9f40: 6265 2072 6566 6c65 6374 6564 2069 6e0a  be reflected in.
│ │ │ +001c9f50: 2020 2020 2020 2020 2320 6673 7461 6220          # fstab 
│ │ │ +001c9f60: 6173 2022 626c 6f63 6b22 2e20 2054 6865  as "block".  The
│ │ │ +001c9f70: 206e 6578 7420 7661 7269 6162 6c65 2069   next variable i
│ │ │ +001c9f80: 7320 746f 2073 6174 6973 6679 2073 6865  s to satisfy she
│ │ │ +001c9f90: 6c6c 6368 6563 6b20 5343 3230 3530 2e0a  llcheck SC2050..
│ │ │ +001c9fa0: 2020 2020 2020 2020 6673 5f74 7970 653d          fs_type=
│ │ │ +001c9fb0: 2222 0a20 2020 2020 2020 2069 6620 5b20  "".        if [ 
│ │ │ +001c9fc0: 2022 2466 735f 7479 7065 2220 3d3d 2022   "$fs_type" == "
│ │ │ +001c9fd0: 6973 6f39 3636 3022 205d 203b 2074 6865  iso9660" ] ; the
│ │ │ +001c9fe0: 6e0a 2020 2020 2020 2020 2020 2020 7072  n.            pr
│ │ │ +001c9ff0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001ca000: 733d 2428 7365 6420 2773 2f62 6c6f 636b  s=$(sed 's/block
│ │ │ +001ca010: 7369 7a65 3d2f 626c 6f63 6b3d 2f27 2026  size=/block=/' &
│ │ │ +001ca020: 6c74 3b26 6c74 3b26 6c74 3b20 2224 7072  lt;<< "$pr
│ │ │ +001ca030: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001ca040: 7322 290a 2020 2020 2020 2020 6669 0a20  s").        fi. 
│ │ │ +001ca050: 2020 2020 2020 2065 6368 6f20 2220 2f76         echo " /v
│ │ │ +001ca060: 6172 2f74 6d70 2020 6465 6661 756c 7473  ar/tmp  defaults
│ │ │ +001ca070: 2c24 7b70 7265 7669 6f75 735f 6d6f 756e  ,${previous_moun
│ │ │ +001ca080: 745f 6f70 7473 7d6e 6f73 7569 6420 3020  t_opts}nosuid 0 
│ │ │ +001ca090: 3022 2026 6774 3b26 6774 3b20 2f65 7463  0" >> /etc
│ │ │ +001ca0a0: 2f66 7374 6162 0a20 2020 2023 2049 6620  /fstab.    # If 
│ │ │ +001ca0b0: 7468 6520 6d6f 756e 745f 6f70 7420 6f70  the mount_opt op
│ │ │ +001ca0c0: 7469 6f6e 2069 7320 6e6f 7420 616c 7265  tion is not alre
│ │ │ +001ca0d0: 6164 7920 696e 2074 6865 206d 6f75 6e74  ady in the mount
│ │ │ +001ca0e0: 2070 6f69 6e74 2773 202f 6574 632f 6673   point's /etc/fs
│ │ │ +001ca0f0: 7461 6220 656e 7472 792c 2061 6464 2069  tab entry, add i
│ │ │ +001ca100: 740a 2020 2020 656c 6966 2021 2067 7265  t.    elif ! gre
│ │ │ +001ca110: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ +001ca120: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ +001ca130: 7463 2f66 7374 6162 207c 2067 7265 7020  tc/fstab | grep 
│ │ │ +001ca140: 2d71 2022 6e6f 7375 6964 223b 2074 6865  -q "nosuid"; the
│ │ │ +001ca150: 6e0a 2020 2020 2020 2020 7072 6576 696f  n.        previo
│ │ │ +001ca160: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ +001ca170: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ +001ca180: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ +001ca190: 202f 6574 632f 6673 7461 6220 7c20 6177   /etc/fstab | aw
│ │ │ +001ca1a0: 6b20 277b 7072 696e 7420 2434 7d27 290a  k '{print $4}').
│ │ │ +001ca1b0: 2020 2020 2020 2020 7365 6420 2d69 2022          sed -i "
│ │ │ +001ca1c0: 737c 5c28 247b 6d6f 756e 745f 706f 696e  s|\(${mount_poin
│ │ │ +001ca1d0: 745f 6d61 7463 685f 7265 6765 7870 7d2e  t_match_regexp}.
│ │ │ +001ca1e0: 2a24 7b70 7265 7669 6f75 735f 6d6f 756e  *${previous_moun
│ │ │ +001ca1f0: 745f 6f70 7473 7d5c 297c 5c31 2c6e 6f73  t_opts}\)|\1,nos
│ │ │ +001ca200: 7569 647c 2220 2f65 7463 2f66 7374 6162  uid|" /etc/fstab
│ │ │ +001ca210: 0a20 2020 2066 690a 0a0a 2020 2020 6966  .    fi...    if
│ │ │ +001ca220: 206d 6b64 6972 202d 7020 222f 7661 722f   mkdir -p "/var/
│ │ │ +001ca230: 746d 7022 3b20 7468 656e 0a20 2020 2020  tmp"; then.     
│ │ │ +001ca240: 2020 2069 6620 6d6f 756e 7470 6f69 6e74     if mountpoint
│ │ │ +001ca250: 202d 7120 222f 7661 722f 746d 7022 3b20   -q "/var/tmp"; 
│ │ │ +001ca260: 7468 656e 0a20 2020 2020 2020 2020 2020  then.           
│ │ │ +001ca270: 206d 6f75 6e74 202d 6f20 7265 6d6f 756e   mount -o remoun
│ │ │ +001ca280: 7420 2d2d 7461 7267 6574 2022 2f76 6172  t --target "/var
│ │ │ +001ca290: 2f74 6d70 220a 2020 2020 2020 2020 6669  /tmp".        fi
│ │ │ +001ca2a0: 0a20 2020 2066 690a 7d0a 0a70 6572 666f  .    fi.}..perfo
│ │ │ +001ca2b0: 726d 5f72 656d 6564 6961 7469 6f6e 0a0a  rm_remediation..
│ │ │ +001ca2c0: 656c 7365 0a20 2020 2026 6774 3b26 616d  else.    >&am
│ │ │ +001ca2d0: 703b 3220 6563 686f 2027 5265 6d65 6469  p;2 echo 'Remedi
│ │ │ +001ca2e0: 6174 696f 6e20 6973 206e 6f74 2061 7070  ation is not app
│ │ │ +001ca2f0: 6c69 6361 626c 652c 206e 6f74 6869 6e67  licable, nothing
│ │ │ +001ca300: 2077 6173 2064 6f6e 6527 0a66 690a 3c2f   was done'.fi.
Re │ │ │ +001ca3c0: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ +001ca3d0: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
Reb │ │ │ +001c9810: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +001c9820: 7365 3c2f 7464 3e3c 2f74 723e 3c2f 7461 se
│ │ │ +001ca470: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 < │ │ │ +001ca4b0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +001ca4c0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
.
│ │ │ +001ca510: 7061 7274 202f 7661 722f 746d 7020 2d2d  part /var/tmp --
│ │ │ +001ca520: 6d6f 756e 746f 7074 696f 6e73 3d22 6e6f  mountoptions="no
│ │ │ +001ca530: 7375 6964 220a 3c2f 636f 6465 3e3c 2f70  suid".

< │ │ │ 001ca550: 2f74 643e 3c2f 7472 3e3c 2f74 626f 6479 /td>
│ │ │ +001ca460: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +001ca490: 696f 6e3a 3c2f 7468 3e3c 7464 3e68 6967 ion:hig │ │ │ +001ca4a0: 683c 2f74 643e 3c2f 7472 3e3c 7472 3e3c h
Strate │ │ │ +001ca4e0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +001ca4f0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
│ │ │ -001d6030: 5265 6d65 6469 6174 696f 6e20 4f53 4275 Remediation OSBu │ │ │ -001d6040: 696c 6420 426c 7565 7072 696e 7420 736e ild Blueprint sn │ │ │ -001d6050: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
.[[p
│ │ │ -001d60a0: 6163 6b61 6765 735d 5d0a 6e61 6d65 203d  ackages]].name =
│ │ │ -001d60b0: 2022 6c69 6273 656c 696e 7578 220a 7665   "libselinux".ve
│ │ │ -001d60c0: 7273 696f 6e20 3d20 222a 220a 3c2f 636f  rsion = "*".
< │ │ │ -001d60e0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -001d60f0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -001d6100: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -001d6110: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -001d6120: 6435 3136 2220 7461 6269 6e64 6578 3d22 d516" tabindex=" │ │ │ -001d6130: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -001d6140: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -001d6150: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -001d6160: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -001d6170: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -001d6180: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ -001d6190: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -001d61a0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -001d6240: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -001d6290: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ -001d6220: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -001d6250: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -001d6270: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -001d6280: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -001d62a0: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -001d62b0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.pac
│ │ │ -001d62d0: 6b61 6765 202d 2d61 6464 3d6c 6962 7365  kage --add=libse
│ │ │ -001d62e0: 6c69 6e75 780a 3c2f 636f 6465 3e3c 2f70  linux.

Remediatio │ │ │ -001d63a0: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ -001d63b0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -001d6440: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -001d6460: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -001d6470: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -001d6480: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -001d6490: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -001d64b0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
include inst
│ │ │ -001d64f0: 616c 6c5f 6c69 6273 656c 696e 7578 0a0a  all_libselinux..
│ │ │ -001d6500: 636c 6173 7320 696e 7374 616c 6c5f 6c69  class install_li
│ │ │ -001d6510: 6273 656c 696e 7578 207b 0a20 2070 6163  bselinux {.  pac
│ │ │ -001d6520: 6b61 6765 207b 2027 6c69 6273 656c 696e  kage { 'libselin
│ │ │ -001d6530: 7578 273a 0a20 2020 2065 6e73 7572 6520  ux':.    ensure 
│ │ │ -001d6540: 3d26 6774 3b20 2769 6e73 7461 6c6c 6564  => 'installed
│ │ │ -001d6550: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e  ',.  }.}.
│ │ │ -001d6560: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -001d6610: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -001d6620: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -001d6630: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -001d6660: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -001d66d0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -001d66f0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -001d6720: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ -001d6740: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ -001d66b0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -001d66c0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -001d6700: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -001d6710: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
- name: │ │ │ -001d6760: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ -001d6770: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ -001d6780: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ -001d6790: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ -001d67a0: 6773 3a0a 2020 2d20 5043 492d 4453 5376 gs:. - PCI-DSSv │ │ │ -001d67b0: 342d 312e 320a 2020 2d20 5043 492d 4453 4-1.2. - PCI-DS │ │ │ -001d67c0: 5376 342d 312e 322e 360a 2020 2d20 656e Sv4-1.2.6. - en │ │ │ -001d67d0: 6162 6c65 5f73 7472 6174 6567 790a 2020 able_strategy. │ │ │ -001d67e0: 2d20 6869 6768 5f73 6576 6572 6974 790a - high_severity. │ │ │ -001d67f0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ -001d6800: 7479 0a20 202d 206c 6f77 5f64 6973 7275 ty. - low_disru │ │ │ -001d6810: 7074 696f 6e0a 2020 2d20 6e6f 5f72 6562 ption. - no_reb │ │ │ -001d6820: 6f6f 745f 6e65 6564 6564 0a20 202d 2070 oot_needed. - p │ │ │ -001d6830: 6163 6b61 6765 5f6c 6962 7365 6c69 6e75 ackage_libselinu │ │ │ -001d6840: 785f 696e 7374 616c 6c65 640a 0a2d 206e x_installed..- n │ │ │ -001d6850: 616d 653a 2045 6e73 7572 6520 6c69 6273 ame: Ensure libs │ │ │ -001d6860: 656c 696e 7578 2069 7320 696e 7374 616c elinux is instal │ │ │ -001d6870: 6c65 640a 2020 616e 7369 626c 652e 6275 led. ansible.bu │ │ │ -001d6880: 696c 7469 6e2e 7061 636b 6167 653a 0a20 iltin.package:. │ │ │ -001d6890: 2020 206e 616d 653a 206c 6962 7365 6c69 name: libseli │ │ │ -001d68a0: 6e75 780a 2020 2020 7374 6174 653a 2070 nux. state: p │ │ │ -001d68b0: 7265 7365 6e74 0a20 2077 6865 6e3a 2027 resent. when: ' │ │ │ -001d68c0: 226b 6572 6e65 6c22 2069 6e20 616e 7369 "kernel" in ansi │ │ │ -001d68d0: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -001d68e0: 6573 270a 2020 7461 6773 3a0a 2020 2d20 es'. tags:. - │ │ │ -001d68f0: 5043 492d 4453 5376 342d 312e 320a 2020 PCI-DSSv4-1.2. │ │ │ -001d6900: 2d20 5043 492d 4453 5376 342d 312e 322e - PCI-DSSv4-1.2. │ │ │ -001d6910: 360a 2020 2d20 656e 6162 6c65 5f73 7472 6. - enable_str │ │ │ -001d6920: 6174 6567 790a 2020 2d20 6869 6768 5f73 ategy. - high_s │ │ │ -001d6930: 6576 6572 6974 790a 2020 2d20 6c6f 775f everity. - low_ │ │ │ -001d6940: 636f 6d70 6c65 7869 7479 0a20 202d 206c complexity. - l │ │ │ -001d6950: 6f77 5f64 6973 7275 7074 696f 6e0a 2020 ow_disruption. │ │ │ -001d6960: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ -001d6970: 6564 0a20 202d 2070 6163 6b61 6765 5f6c ed. - package_l │ │ │ -001d6980: 6962 7365 6c69 6e75 785f 696e 7374 616c ibselinux_instal │ │ │ -001d6990: 6c65 640a 3c2f 636f 6465 3e3c 2f70 7265 led.
Remediation │ │ │ -001d6a50: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ -001d6a60: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -001d6b30: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -001d6b40: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -001d6b90: 2320 5265 6d65 6469 6174 696f 6e20 6973  # Remediation is
│ │ │ -001d6ba0: 2061 7070 6c69 6361 626c 6520 6f6e 6c79   applicable only
│ │ │ -001d6bb0: 2069 6e20 6365 7274 6169 6e20 706c 6174   in certain plat
│ │ │ -001d6bc0: 666f 726d 730a 6966 2072 706d 202d 2d71  forms.if rpm --q
│ │ │ -001d6bd0: 7569 6574 202d 7120 6b65 726e 656c 3b20  uiet -q kernel; 
│ │ │ -001d6be0: 7468 656e 0a0a 6966 2021 2072 706d 202d  then..if ! rpm -
│ │ │ -001d6bf0: 7120 2d2d 7175 6965 7420 226c 6962 7365  q --quiet "libse
│ │ │ -001d6c00: 6c69 6e75 7822 203b 2074 6865 6e0a 2020  linux" ; then.  
│ │ │ -001d6c10: 2020 646e 6620 696e 7374 616c 6c20 2d79    dnf install -y
│ │ │ -001d6c20: 2022 6c69 6273 656c 696e 7578 220a 6669   "libselinux".fi
│ │ │ -001d6c30: 0a0a 656c 7365 0a20 2020 2026 6774 3b26  ..else.    >&
│ │ │ -001d6c40: 616d 703b 3220 6563 686f 2027 5265 6d65  amp;2 echo 'Reme
│ │ │ -001d6c50: 6469 6174 696f 6e20 6973 206e 6f74 2061  diation is not a
│ │ │ -001d6c60: 7070 6c69 6361 626c 652c 206e 6f74 6869  pplicable, nothi
│ │ │ -001d6c70: 6e67 2077 6173 2064 6f6e 6527 0a66 690a  ng was done'.fi.
│ │ │ +001d6030: 5265 6d65 6469 6174 696f 6e20 416e 7369  Remediation Ansi
│ │ │ +001d6040: 626c 6520 736e 6970 7065 7420 e287 b23c  ble snippet ...<
│ │ │ +001d6050: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173  /a>
low
Disru │ │ │ -001d6b10: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -001d6b20: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -001d6b60: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -001d6b70: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ +001d6120: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +001d6130: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
-
│ │ │ +001d6180: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +001d6190: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +001d61a0: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ +001d61b0: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ +001d61c0: 746f 0a20 2074 6167 733a 0a20 202d 2050  to.  tags:.  - P
│ │ │ +001d61d0: 4349 2d44 5353 7634 2d31 2e32 0a20 202d  CI-DSSv4-1.2.  -
│ │ │ +001d61e0: 2050 4349 2d44 5353 7634 2d31 2e32 2e36   PCI-DSSv4-1.2.6
│ │ │ +001d61f0: 0a20 202d 2065 6e61 626c 655f 7374 7261  .  - enable_stra
│ │ │ +001d6200: 7465 6779 0a20 202d 2068 6967 685f 7365  tegy.  - high_se
│ │ │ +001d6210: 7665 7269 7479 0a20 202d 206c 6f77 5f63  verity.  - low_c
│ │ │ +001d6220: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ +001d6230: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +001d6240: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +001d6250: 640a 2020 2d20 7061 636b 6167 655f 6c69  d.  - package_li
│ │ │ +001d6260: 6273 656c 696e 7578 5f69 6e73 7461 6c6c  bselinux_install
│ │ │ +001d6270: 6564 0a0a 2d20 6e61 6d65 3a20 456e 7375  ed..- name: Ensu
│ │ │ +001d6280: 7265 206c 6962 7365 6c69 6e75 7820 6973  re libselinux is
│ │ │ +001d6290: 2069 6e73 7461 6c6c 6564 0a20 2061 6e73   installed.  ans
│ │ │ +001d62a0: 6962 6c65 2e62 7569 6c74 696e 2e70 6163  ible.builtin.pac
│ │ │ +001d62b0: 6b61 6765 3a0a 2020 2020 6e61 6d65 3a20  kage:.    name: 
│ │ │ +001d62c0: 6c69 6273 656c 696e 7578 0a20 2020 2073  libselinux.    s
│ │ │ +001d62d0: 7461 7465 3a20 7072 6573 656e 740a 2020  tate: present.  
│ │ │ +001d62e0: 7768 656e 3a20 2722 6b65 726e 656c 2220  when: '"kernel" 
│ │ │ +001d62f0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001d6300: 2e70 6163 6b61 6765 7327 0a20 2074 6167  .packages'.  tag
│ │ │ +001d6310: 733a 0a20 202d 2050 4349 2d44 5353 7634  s:.  - PCI-DSSv4
│ │ │ +001d6320: 2d31 2e32 0a20 202d 2050 4349 2d44 5353  -1.2.  - PCI-DSS
│ │ │ +001d6330: 7634 2d31 2e32 2e36 0a20 202d 2065 6e61  v4-1.2.6.  - ena
│ │ │ +001d6340: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ +001d6350: 2068 6967 685f 7365 7665 7269 7479 0a20   high_severity. 
│ │ │ +001d6360: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +001d6370: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ +001d6380: 7469 6f6e 0a20 202d 206e 6f5f 7265 626f  tion.  - no_rebo
│ │ │ +001d6390: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ +001d63a0: 636b 6167 655f 6c69 6273 656c 696e 7578  ckage_libselinux
│ │ │ +001d63b0: 5f69 6e73 7461 6c6c 6564 0a3c 2f63 6f64  _installed.
Remed │ │ │ +001d6470: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ +001d6480: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
Complexity:low
Disrup │ │ │ +001d6100: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +001d6110: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +001d6150: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +001d6160: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
│ │ │ +001d6530: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +001d6550: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +001d6580: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +001d6510: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +001d6520: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +001d6540: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +001d6560: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +001d6570: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

include │ │ │ +001d65c0: 2069 6e73 7461 6c6c 5f6c 6962 7365 6c69 install_libseli │ │ │ +001d65d0: 6e75 780a 0a63 6c61 7373 2069 6e73 7461 nux..class insta │ │ │ +001d65e0: 6c6c 5f6c 6962 7365 6c69 6e75 7820 7b0a ll_libselinux {. │ │ │ +001d65f0: 2020 7061 636b 6167 6520 7b20 276c 6962 package { 'lib │ │ │ +001d6600: 7365 6c69 6e75 7827 3a0a 2020 2020 656e selinux':. en │ │ │ +001d6610: 7375 7265 203d 2667 743b 2027 696e 7374 sure => 'inst │ │ │ +001d6620: 616c 6c65 6427 2c0a 2020 7d0a 7d0a 3c2f alled',. }.}.

Re │ │ │ +001d66e0: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ +001d66f0: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ +001d6700: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +001d6710: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001d6720: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001d6730: 7365 2220 6964 3d22 6964 3531 3722 3e3c se" id="id517">< │ │ │ +001d6740: 7072 653e 3c63 6f64 653e 0a5b 5b70 6163 pre>.[[pac │ │ │ +001d6750: 6b61 6765 735d 5d0a 6e61 6d65 203d 2022 kages]].name = " │ │ │ +001d6760: 6c69 6273 656c 696e 7578 220a 7665 7273 libselinux".vers │ │ │ +001d6770: 696f 6e20 3d20 222a 220a 3c2f 636f 6465 ion = "*".
Remedi │ │ │ +001d6830: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ +001d6840: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
│ │ │ +001d68c0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +001d68d0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +001d68e0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +001d6920: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +001d6930: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +001d6950: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ +001d6970: 3c63 6f64 653e 2320 5265 6d65 6469 6174  # Remediat
│ │ │ +001d6980: 696f 6e20 6973 2061 7070 6c69 6361 626c  ion is applicabl
│ │ │ +001d6990: 6520 6f6e 6c79 2069 6e20 6365 7274 6169  e only in certai
│ │ │ +001d69a0: 6e20 706c 6174 666f 726d 730a 6966 2072  n platforms.if r
│ │ │ +001d69b0: 706d 202d 2d71 7569 6574 202d 7120 6b65  pm --quiet -q ke
│ │ │ +001d69c0: 726e 656c 3b20 7468 656e 0a0a 6966 2021  rnel; then..if !
│ │ │ +001d69d0: 2072 706d 202d 7120 2d2d 7175 6965 7420   rpm -q --quiet 
│ │ │ +001d69e0: 226c 6962 7365 6c69 6e75 7822 203b 2074  "libselinux" ; t
│ │ │ +001d69f0: 6865 6e0a 2020 2020 646e 6620 696e 7374  hen.    dnf inst
│ │ │ +001d6a00: 616c 6c20 2d79 2022 6c69 6273 656c 696e  all -y "libselin
│ │ │ +001d6a10: 7578 220a 6669 0a0a 656c 7365 0a20 2020  ux".fi..else.   
│ │ │ +001d6a20: 2026 6774 3b26 616d 703b 3220 6563 686f   >&2 echo
│ │ │ +001d6a30: 2027 5265 6d65 6469 6174 696f 6e20 6973   'Remediation is
│ │ │ +001d6a40: 206e 6f74 2061 7070 6c69 6361 626c 652c   not applicable,
│ │ │ +001d6a50: 206e 6f74 6869 6e67 2077 6173 2064 6f6e   nothing was don
│ │ │ +001d6a60: 6527 0a66 690a 3c2f 636f 6465 3e3c 2f70  e'.fi.

Remediatio │ │ │ +001d6b20: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ +001d6b30: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +001d6bb0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +001d6bc0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +001d6bd0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +001d6c10: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +001d6c20: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +001d6c40: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ +001d6c60: 3c63 6f64 653e 0a70 6163 6b61 6765 202d  .package -
│ │ │ +001d6c70: 2d61 6464 3d6c 6962 7365 6c69 6e75 780a  -add=libselinux.
│ │ │  001d6c80: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
Remediation A │ │ │ -001d7540: 6e61 636f 6e64 6120 736e 6970 7065 7420 naconda snippet │ │ │ -001d7550: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -001d75e0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -001d7600: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -001d7620: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -001d7650: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -001d7660: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
..package --
│ │ │ -001d7690: 7265 6d6f 7665 3d6d 6373 7472 616e 730a  remove=mcstrans.
│ │ │ -001d76a0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -001d7750: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ -001d7760: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
│ │ │ -001d7800: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ -001d78a0: 696e 636c 7564 6520 7265 6d6f 7665 5f6d  include remove_m
│ │ │ -001d78b0: 6373 7472 616e 730a 0a63 6c61 7373 2072  cstrans..class r
│ │ │ -001d78c0: 656d 6f76 655f 6d63 7374 7261 6e73 207b  emove_mcstrans {
│ │ │ -001d78d0: 0a20 2070 6163 6b61 6765 207b 2027 6d63  .  package { 'mc
│ │ │ -001d78e0: 7374 7261 6e73 273a 0a20 2020 2065 6e73  strans':.    ens
│ │ │ -001d78f0: 7572 6520 3d26 6774 3b20 2770 7572 6765  ure => 'purge
│ │ │ -001d7900: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  d',.  }.}.
Remedi │ │ │ -001d79c0: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -001d79d0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -001d77f0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -001d7820: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -001d7830: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -001d7870: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -001d7880: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
│ │ │ -001d7a80: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -001d7aa0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -001d7ad0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -001d7a60: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -001d7a70: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -001d7a90: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -001d7ab0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -001d7ac0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -001d7b00: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -001d7b10: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -001d7b20: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -001d7b30: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -001d7b40: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -001d7b50: 7461 6773 3a0a 2020 2d20 6469 7361 626c tags:. - disabl │ │ │ -001d7b60: 655f 7374 7261 7465 6779 0a20 202d 206c e_strategy. - l │ │ │ -001d7b70: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ -001d7b80: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e - low_disruption │ │ │ -001d7b90: 0a20 202d 206c 6f77 5f73 6576 6572 6974 . - low_severit │ │ │ -001d7ba0: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f y. - no_reboot_ │ │ │ -001d7bb0: 6e65 6564 6564 0a20 202d 2070 6163 6b61 needed. - packa │ │ │ -001d7bc0: 6765 5f6d 6373 7472 616e 735f 7265 6d6f ge_mcstrans_remo │ │ │ -001d7bd0: 7665 640a 0a2d 206e 616d 653a 2027 556e ved..- name: 'Un │ │ │ -001d7be0: 696e 7374 616c 6c20 6d63 7374 7261 6e73 install mcstrans │ │ │ -001d7bf0: 2050 6163 6b61 6765 3a20 456e 7375 7265 Package: Ensure │ │ │ -001d7c00: 206d 6373 7472 616e 7320 6973 2072 656d mcstrans is rem │ │ │ -001d7c10: 6f76 6564 270a 2020 616e 7369 626c 652e oved'. ansible. │ │ │ -001d7c20: 6275 696c 7469 6e2e 7061 636b 6167 653a builtin.package: │ │ │ -001d7c30: 0a20 2020 206e 616d 653a 206d 6373 7472 . name: mcstr │ │ │ -001d7c40: 616e 730a 2020 2020 7374 6174 653a 2061 ans. state: a │ │ │ -001d7c50: 6273 656e 740a 2020 7768 656e 3a20 2722 bsent. when: '" │ │ │ -001d7c60: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ -001d7c70: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -001d7c80: 7327 0a20 2074 6167 733a 0a20 202d 2064 s'. tags:. - d │ │ │ -001d7c90: 6973 6162 6c65 5f73 7472 6174 6567 790a isable_strategy. │ │ │ -001d7ca0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ -001d7cb0: 7479 0a20 202d 206c 6f77 5f64 6973 7275 ty. - low_disru │ │ │ -001d7cc0: 7074 696f 6e0a 2020 2d20 6c6f 775f 7365 ption. - low_se │ │ │ -001d7cd0: 7665 7269 7479 0a20 202d 206e 6f5f 7265 verity. - no_re │ │ │ -001d7ce0: 626f 6f74 5f6e 6565 6465 640a 2020 2d20 boot_needed. - │ │ │ -001d7cf0: 7061 636b 6167 655f 6d63 7374 7261 6e73 package_mcstrans │ │ │ -001d7d00: 5f72 656d 6f76 6564 0a3c 2f63 6f64 653e _removed. │ │ │ -001d7d10: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063
Remedia │ │ │ -001d7dc0: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ -001d7dd0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -001d7e50: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -001d7e60: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -001d7e80: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -001d7e90: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -001d7eb0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -001d7ed0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ -001d7f00: 3c63 6f64 653e 2320 5265 6d65 6469 6174  # Remediat
│ │ │ -001d7f10: 696f 6e20 6973 2061 7070 6c69 6361 626c  ion is applicabl
│ │ │ -001d7f20: 6520 6f6e 6c79 2069 6e20 6365 7274 6169  e only in certai
│ │ │ -001d7f30: 6e20 706c 6174 666f 726d 730a 6966 2072  n platforms.if r
│ │ │ -001d7f40: 706d 202d 2d71 7569 6574 202d 7120 6b65  pm --quiet -q ke
│ │ │ -001d7f50: 726e 656c 3b20 7468 656e 0a0a 2320 4341  rnel; then..# CA
│ │ │ -001d7f60: 5554 494f 4e3a 2054 6869 7320 7265 6d65  UTION: This reme
│ │ │ -001d7f70: 6469 6174 696f 6e20 7363 7269 7074 2077  diation script w
│ │ │ -001d7f80: 696c 6c20 7265 6d6f 7665 206d 6373 7472  ill remove mcstr
│ │ │ -001d7f90: 616e 730a 2320 6672 6f6d 2074 6865 2073  ans.# from the s
│ │ │ -001d7fa0: 7973 7465 6d2c 2061 6e64 206d 6179 2072  ystem, and may r
│ │ │ -001d7fb0: 656d 6f76 6520 616e 7920 7061 636b 6167  emove any packag
│ │ │ -001d7fc0: 6573 0a23 2074 6861 7420 6465 7065 6e64  es.# that depend
│ │ │ -001d7fd0: 206f 6e20 6d63 7374 7261 6e73 2e20 4578   on mcstrans. Ex
│ │ │ -001d7fe0: 6563 7574 6520 7468 6973 0a23 2072 656d  ecute this.# rem
│ │ │ -001d7ff0: 6564 6961 7469 6f6e 2041 4654 4552 2074  ediation AFTER t
│ │ │ -001d8000: 6573 7469 6e67 206f 6e20 6120 6e6f 6e2d  esting on a non-
│ │ │ -001d8010: 7072 6f64 7563 7469 6f6e 0a23 2073 7973  production.# sys
│ │ │ -001d8020: 7465 6d21 0a0a 0a69 6620 7270 6d20 2d71  tem!...if rpm -q
│ │ │ -001d8030: 202d 2d71 7569 6574 2022 6d63 7374 7261   --quiet "mcstra
│ │ │ -001d8040: 6e73 2220 3b20 7468 656e 0a64 6e66 2072  ns" ; then.dnf r
│ │ │ -001d8050: 656d 6f76 6520 2d79 202d 2d6e 6f61 7574  emove -y --noaut
│ │ │ -001d8060: 6f72 656d 6f76 6520 226d 6373 7472 616e  oremove "mcstran
│ │ │ -001d8070: 7322 0a66 690a 0a65 6c73 650a 2020 2020  s".fi..else.    
│ │ │ -001d8080: 2667 743b 2661 6d70 3b32 2065 6368 6f20  >&2 echo 
│ │ │ -001d8090: 2752 656d 6564 6961 7469 6f6e 2069 7320  'Remediation is 
│ │ │ -001d80a0: 6e6f 7420 6170 706c 6963 6162 6c65 2c20  not applicable, 
│ │ │ -001d80b0: 6e6f 7468 696e 6720 7761 7320 646f 6e65  nothing was done
│ │ │ -001d80c0: 270a 6669 0a3c 2f63 6f64 653e 3c2f 7072  '.fi.
│ │ │ +001d75d0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +001d75f0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +001d7640: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +001d7670: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +001d75e0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +001d7600: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +001d7650: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +001d7660: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
- name: Gathe
│ │ │ +001d7690: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ +001d76a0: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ +001d76b0: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ +001d76c0: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ +001d76d0: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ +001d76e0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +001d76f0: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +001d7700: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +001d7710: 775f 7365 7665 7269 7479 0a20 202d 206e  w_severity.  - n
│ │ │ +001d7720: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +001d7730: 2020 2d20 7061 636b 6167 655f 6d63 7374    - package_mcst
│ │ │ +001d7740: 7261 6e73 5f72 656d 6f76 6564 0a0a 2d20  rans_removed..- 
│ │ │ +001d7750: 6e61 6d65 3a20 2755 6e69 6e73 7461 6c6c  name: 'Uninstall
│ │ │ +001d7760: 206d 6373 7472 616e 7320 5061 636b 6167   mcstrans Packag
│ │ │ +001d7770: 653a 2045 6e73 7572 6520 6d63 7374 7261  e: Ensure mcstra
│ │ │ +001d7780: 6e73 2069 7320 7265 6d6f 7665 6427 0a20  ns is removed'. 
│ │ │ +001d7790: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +001d77a0: 2e70 6163 6b61 6765 3a0a 2020 2020 6e61  .package:.    na
│ │ │ +001d77b0: 6d65 3a20 6d63 7374 7261 6e73 0a20 2020  me: mcstrans.   
│ │ │ +001d77c0: 2073 7461 7465 3a20 6162 7365 6e74 0a20   state: absent. 
│ │ │ +001d77d0: 2077 6865 6e3a 2027 226b 6572 6e65 6c22   when: '"kernel"
│ │ │ +001d77e0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001d77f0: 732e 7061 636b 6167 6573 270a 2020 7461  s.packages'.  ta
│ │ │ +001d7800: 6773 3a0a 2020 2d20 6469 7361 626c 655f  gs:.  - disable_
│ │ │ +001d7810: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ +001d7820: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001d7830: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +001d7840: 202d 206c 6f77 5f73 6576 6572 6974 790a   - low_severity.
│ │ │ +001d7850: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001d7860: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ +001d7870: 5f6d 6373 7472 616e 735f 7265 6d6f 7665  _mcstrans_remove
│ │ │ +001d7880: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ +001d7890: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ +001d7940: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ +001d7950: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ +001d7a20: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +001d7a30: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.include remove
│ │ │ +001d7a90: 5f6d 6373 7472 616e 730a 0a63 6c61 7373  _mcstrans..class
│ │ │ +001d7aa0: 2072 656d 6f76 655f 6d63 7374 7261 6e73   remove_mcstrans
│ │ │ +001d7ab0: 207b 0a20 2070 6163 6b61 6765 207b 2027   {.  package { '
│ │ │ +001d7ac0: 6d63 7374 7261 6e73 273a 0a20 2020 2065  mcstrans':.    e
│ │ │ +001d7ad0: 6e73 7572 6520 3d26 6774 3b20 2770 7572  nsure => 'pur
│ │ │ +001d7ae0: 6765 6427 2c0a 2020 7d0a 7d0a 3c2f 636f  ged',.  }.}.
< │ │ │ +001d7b00: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +001d7b10: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +001d7b20: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +001d7b30: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +001d7b40: 6435 3233 2220 7461 6269 6e64 6578 3d22 d523" tabindex=" │ │ │ +001d7b50: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +001d7b60: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +001d7b70: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +001d7b80: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +001d7b90: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +001d7ba0: 6469 6174 696f 6e20 5368 656c 6c20 7363 diation Shell sc │ │ │ +001d7bb0: 7269 7074 20e2 87b2 3c2f 613e 3c62 723e ript ...
│ │ │ +001d7bc0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +001d7bf0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
low
Disru │ │ │ +001d7a00: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +001d7a10: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +001d7a50: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +001d7a60: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ +001d7c60: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +001d7c80: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +001d7cb0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +001d7c40: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +001d7c50: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +001d7c90: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001d7ca0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

# Remed │ │ │ +001d7cf0: 6961 7469 6f6e 2069 7320 6170 706c 6963 iation is applic │ │ │ +001d7d00: 6162 6c65 206f 6e6c 7920 696e 2063 6572 able only in cer │ │ │ +001d7d10: 7461 696e 2070 6c61 7466 6f72 6d73 0a69 tain platforms.i │ │ │ +001d7d20: 6620 7270 6d20 2d2d 7175 6965 7420 2d71 f rpm --quiet -q │ │ │ +001d7d30: 206b 6572 6e65 6c3b 2074 6865 6e0a 0a23 kernel; then..# │ │ │ +001d7d40: 2043 4155 5449 4f4e 3a20 5468 6973 2072 CAUTION: This r │ │ │ +001d7d50: 656d 6564 6961 7469 6f6e 2073 6372 6970 emediation scrip │ │ │ +001d7d60: 7420 7769 6c6c 2072 656d 6f76 6520 6d63 t will remove mc │ │ │ +001d7d70: 7374 7261 6e73 0a23 2066 726f 6d20 7468 strans.# from th │ │ │ +001d7d80: 6520 7379 7374 656d 2c20 616e 6420 6d61 e system, and ma │ │ │ +001d7d90: 7920 7265 6d6f 7665 2061 6e79 2070 6163 y remove any pac │ │ │ +001d7da0: 6b61 6765 730a 2320 7468 6174 2064 6570 kages.# that dep │ │ │ +001d7db0: 656e 6420 6f6e 206d 6373 7472 616e 732e end on mcstrans. │ │ │ +001d7dc0: 2045 7865 6375 7465 2074 6869 730a 2320 Execute this.# │ │ │ +001d7dd0: 7265 6d65 6469 6174 696f 6e20 4146 5445 remediation AFTE │ │ │ +001d7de0: 5220 7465 7374 696e 6720 6f6e 2061 206e R testing on a n │ │ │ +001d7df0: 6f6e 2d70 726f 6475 6374 696f 6e0a 2320 on-production.# │ │ │ +001d7e00: 7379 7374 656d 210a 0a0a 6966 2072 706d system!...if rpm │ │ │ +001d7e10: 202d 7120 2d2d 7175 6965 7420 226d 6373 -q --quiet "mcs │ │ │ +001d7e20: 7472 616e 7322 203b 2074 6865 6e0a 646e trans" ; then.dn │ │ │ +001d7e30: 6620 7265 6d6f 7665 202d 7920 2d2d 6e6f f remove -y --no │ │ │ +001d7e40: 6175 746f 7265 6d6f 7665 2022 6d63 7374 autoremove "mcst │ │ │ +001d7e50: 7261 6e73 220a 6669 0a0a 656c 7365 0a20 rans".fi..else. │ │ │ +001d7e60: 2020 2026 6774 3b26 616d 703b 3220 6563 >&2 ec │ │ │ +001d7e70: 686f 2027 5265 6d65 6469 6174 696f 6e20 ho 'Remediation │ │ │ +001d7e80: 6973 206e 6f74 2061 7070 6c69 6361 626c is not applicabl │ │ │ +001d7e90: 652c 206e 6f74 6869 6e67 2077 6173 2064 e, nothing was d │ │ │ +001d7ea0: 6f6e 6527 0a66 690a 3c2f 636f 6465 3e3c one'.fi.< │ │ │ +001d7eb0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>

Remediat │ │ │ +001d7f60: 696f 6e20 416e 6163 6f6e 6461 2073 6e69 ion Anaconda sni │ │ │ +001d7f70: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +001d7f80: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +001d7fb0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +001d8020: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +001d8040: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +001d8070: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +001d8000: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +001d8010: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +001d8050: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001d8060: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

..packa │ │ │ +001d80b0: 6765 202d 2d72 656d 6f76 653d 6d63 7374 ge --remove=mcst │ │ │ +001d80c0: 7261 6e73 0a3c 2f63 6f64 653e 3c2f 7072 rans.

│ │ │ 001d80f0: 3c2f 7461 626c 653e 3c2f 7464 3e3c 2f74 Remedi │ │ │ -001d8a20: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ -001d8a30: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -001d8ac0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -001d8ad0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -001d8af0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -001d8b10: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -001d8b20: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -001d8b60: 3c70 7265 3e3c 636f 6465 3e0a 0a70 6163
..pac
│ │ │ -001d8b70: 6b61 6765 202d 2d72 656d 6f76 653d 7365  kage --remove=se
│ │ │ -001d8b80: 7472 6f75 626c 6573 686f 6f74 0a3c 2f63  troubleshoot.
│ │ │ -001d8ba0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -001d8c40: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ -001d8c50: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -001d8c60: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -001d8ce0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -001d8d10: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -001d8d30: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001d8d40: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -001d8d60: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -001d8d70: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.inc
│ │ │ -001d8d90: 6c75 6465 2072 656d 6f76 655f 7365 7472  lude remove_setr
│ │ │ -001d8da0: 6f75 626c 6573 686f 6f74 0a0a 636c 6173  oubleshoot..clas
│ │ │ -001d8db0: 7320 7265 6d6f 7665 5f73 6574 726f 7562  s remove_setroub
│ │ │ -001d8dc0: 6c65 7368 6f6f 7420 7b0a 2020 7061 636b  leshoot {.  pack
│ │ │ -001d8dd0: 6167 6520 7b20 2773 6574 726f 7562 6c65  age { 'setrouble
│ │ │ -001d8de0: 7368 6f6f 7427 3a0a 2020 2020 656e 7375  shoot':.    ensu
│ │ │ -001d8df0: 7265 203d 2667 743b 2027 7075 7267 6564  re => 'purged
│ │ │ -001d8e00: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e  ',.  }.}.
│ │ │ -001d8e10: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -001d8ec0: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -001d8ed0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -001d8ee0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -001d8f10: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -001d8f80: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -001d8fa0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -001d8fd0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -001d8f60: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -001d8f70: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -001d8fb0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -001d8fc0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

- name: │ │ │ -001d9010: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ -001d9020: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ -001d9030: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ -001d9040: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ -001d9050: 6167 733a 0a20 202d 2064 6973 6162 6c65 ags:. - disable │ │ │ -001d9060: 5f73 7472 6174 6567 790a 2020 2d20 6c6f _strategy. - lo │ │ │ -001d9070: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ -001d9080: 206c 6f77 5f64 6973 7275 7074 696f 6e0a low_disruption. │ │ │ -001d9090: 2020 2d20 6c6f 775f 7365 7665 7269 7479 - low_severity │ │ │ -001d90a0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ -001d90b0: 6565 6465 640a 2020 2d20 7061 636b 6167 eeded. - packag │ │ │ -001d90c0: 655f 7365 7472 6f75 626c 6573 686f 6f74 e_setroubleshoot │ │ │ -001d90d0: 5f72 656d 6f76 6564 0a0a 2d20 6e61 6d65 _removed..- name │ │ │ -001d90e0: 3a20 2755 6e69 6e73 7461 6c6c 2073 6574 : 'Uninstall set │ │ │ -001d90f0: 726f 7562 6c65 7368 6f6f 7420 5061 636b roubleshoot Pack │ │ │ -001d9100: 6167 653a 2045 6e73 7572 6520 7365 7472 age: Ensure setr │ │ │ -001d9110: 6f75 626c 6573 686f 6f74 2069 7320 7265 oubleshoot is re │ │ │ -001d9120: 6d6f 7665 6427 0a20 2061 6e73 6962 6c65 moved'. ansible │ │ │ -001d9130: 2e62 7569 6c74 696e 2e70 6163 6b61 6765 .builtin.package │ │ │ -001d9140: 3a0a 2020 2020 6e61 6d65 3a20 7365 7472 :. name: setr │ │ │ -001d9150: 6f75 626c 6573 686f 6f74 0a20 2020 2073 oubleshoot. s │ │ │ -001d9160: 7461 7465 3a20 6162 7365 6e74 0a20 2077 tate: absent. w │ │ │ -001d9170: 6865 6e3a 2027 226b 6572 6e65 6c22 2069 hen: '"kernel" i │ │ │ -001d9180: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001d9190: 7061 636b 6167 6573 270a 2020 7461 6773 packages'. tags │ │ │ -001d91a0: 3a0a 2020 2d20 6469 7361 626c 655f 7374 :. - disable_st │ │ │ -001d91b0: 7261 7465 6779 0a20 202d 206c 6f77 5f63 rategy. - low_c │ │ │ -001d91c0: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f omplexity. - lo │ │ │ -001d91d0: 775f 6469 7372 7570 7469 6f6e 0a20 202d w_disruption. - │ │ │ -001d91e0: 206c 6f77 5f73 6576 6572 6974 790a 2020 low_severity. │ │ │ -001d91f0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ -001d9200: 6564 0a20 202d 2070 6163 6b61 6765 5f73 ed. - package_s │ │ │ -001d9210: 6574 726f 7562 6c65 7368 6f6f 745f 7265 etroubleshoot_re │ │ │ -001d9220: 6d6f 7665 640a 3c2f 636f 6465 3e3c 2f70 moved.

Remediatio │ │ │ -001d92e0: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ -001d92f0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -001d9370: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -001d9390: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -001d93e0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -001d9410: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -001d9380: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -001d93a0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -001d93f0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -001d9400: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
# Remediation
│ │ │ -001d9430: 2069 7320 6170 706c 6963 6162 6c65 206f   is applicable o
│ │ │ -001d9440: 6e6c 7920 696e 2063 6572 7461 696e 2070  nly in certain p
│ │ │ -001d9450: 6c61 7466 6f72 6d73 0a69 6620 7270 6d20  latforms.if rpm 
│ │ │ -001d9460: 2d2d 7175 6965 7420 2d71 206b 6572 6e65  --quiet -q kerne
│ │ │ -001d9470: 6c3b 2074 6865 6e0a 0a23 2043 4155 5449  l; then..# CAUTI
│ │ │ -001d9480: 4f4e 3a20 5468 6973 2072 656d 6564 6961  ON: This remedia
│ │ │ -001d9490: 7469 6f6e 2073 6372 6970 7420 7769 6c6c  tion script will
│ │ │ -001d94a0: 2072 656d 6f76 6520 7365 7472 6f75 626c   remove setroubl
│ │ │ -001d94b0: 6573 686f 6f74 0a23 2066 726f 6d20 7468  eshoot.# from th
│ │ │ -001d94c0: 6520 7379 7374 656d 2c20 616e 6420 6d61  e system, and ma
│ │ │ -001d94d0: 7920 7265 6d6f 7665 2061 6e79 2070 6163  y remove any pac
│ │ │ -001d94e0: 6b61 6765 730a 2320 7468 6174 2064 6570  kages.# that dep
│ │ │ -001d94f0: 656e 6420 6f6e 2073 6574 726f 7562 6c65  end on setrouble
│ │ │ -001d9500: 7368 6f6f 742e 2045 7865 6375 7465 2074  shoot. Execute t
│ │ │ -001d9510: 6869 730a 2320 7265 6d65 6469 6174 696f  his.# remediatio
│ │ │ -001d9520: 6e20 4146 5445 5220 7465 7374 696e 6720  n AFTER testing 
│ │ │ -001d9530: 6f6e 2061 206e 6f6e 2d70 726f 6475 6374  on a non-product
│ │ │ -001d9540: 696f 6e0a 2320 7379 7374 656d 210a 0a0a  ion.# system!...
│ │ │ -001d9550: 6966 2072 706d 202d 7120 2d2d 7175 6965  if rpm -q --quie
│ │ │ -001d9560: 7420 2273 6574 726f 7562 6c65 7368 6f6f  t "setroubleshoo
│ │ │ -001d9570: 7422 203b 2074 6865 6e0a 646e 6620 7265  t" ; then.dnf re
│ │ │ -001d9580: 6d6f 7665 202d 7920 2d2d 6e6f 6175 746f  move -y --noauto
│ │ │ -001d9590: 7265 6d6f 7665 2022 7365 7472 6f75 626c  remove "setroubl
│ │ │ -001d95a0: 6573 686f 6f74 220a 6669 0a0a 656c 7365  eshoot".fi..else
│ │ │ -001d95b0: 0a20 2020 2026 6774 3b26 616d 703b 3220  .    >&2 
│ │ │ -001d95c0: 6563 686f 2027 5265 6d65 6469 6174 696f  echo 'Remediatio
│ │ │ -001d95d0: 6e20 6973 206e 6f74 2061 7070 6c69 6361  n is not applica
│ │ │ -001d95e0: 626c 652c 206e 6f74 6869 6e67 2077 6173  ble, nothing was
│ │ │ -001d95f0: 2064 6f6e 6527 0a66 690a 3c2f 636f 6465   done'.fi.
│ │ │ +001d8ae0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +001d8b00: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +001d8b30: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +001d8ac0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +001d8ad0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +001d8af0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +001d8b10: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +001d8b20: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ +001d8b60: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ +001d8b70: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ +001d8b80: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ +001d8b90: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ +001d8ba0: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ +001d8bb0: 7461 6773 3a0a 2020 2d20 6469 7361 626c tags:. - disabl │ │ │ +001d8bc0: 655f 7374 7261 7465 6779 0a20 202d 206c e_strategy. - l │ │ │ +001d8bd0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ +001d8be0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e - low_disruption │ │ │ +001d8bf0: 0a20 202d 206c 6f77 5f73 6576 6572 6974 . - low_severit │ │ │ +001d8c00: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f y. - no_reboot_ │ │ │ +001d8c10: 6e65 6564 6564 0a20 202d 2070 6163 6b61 needed. - packa │ │ │ +001d8c20: 6765 5f73 6574 726f 7562 6c65 7368 6f6f ge_setroubleshoo │ │ │ +001d8c30: 745f 7265 6d6f 7665 640a 0a2d 206e 616d t_removed..- nam │ │ │ +001d8c40: 653a 2027 556e 696e 7374 616c 6c20 7365 e: 'Uninstall se │ │ │ +001d8c50: 7472 6f75 626c 6573 686f 6f74 2050 6163 troubleshoot Pac │ │ │ +001d8c60: 6b61 6765 3a20 456e 7375 7265 2073 6574 kage: Ensure set │ │ │ +001d8c70: 726f 7562 6c65 7368 6f6f 7420 6973 2072 roubleshoot is r │ │ │ +001d8c80: 656d 6f76 6564 270a 2020 616e 7369 626c emoved'. ansibl │ │ │ +001d8c90: 652e 6275 696c 7469 6e2e 7061 636b 6167 e.builtin.packag │ │ │ +001d8ca0: 653a 0a20 2020 206e 616d 653a 2073 6574 e:. name: set │ │ │ +001d8cb0: 726f 7562 6c65 7368 6f6f 740a 2020 2020 roubleshoot. │ │ │ +001d8cc0: 7374 6174 653a 2061 6273 656e 740a 2020 state: absent. │ │ │ +001d8cd0: 7768 656e 3a20 2722 6b65 726e 656c 2220 when: '"kernel" │ │ │ +001d8ce0: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ +001d8cf0: 2e70 6163 6b61 6765 7327 0a20 2074 6167 .packages'. tag │ │ │ +001d8d00: 733a 0a20 202d 2064 6973 6162 6c65 5f73 s:. - disable_s │ │ │ +001d8d10: 7472 6174 6567 790a 2020 2d20 6c6f 775f trategy. - low_ │ │ │ +001d8d20: 636f 6d70 6c65 7869 7479 0a20 202d 206c complexity. - l │ │ │ +001d8d30: 6f77 5f64 6973 7275 7074 696f 6e0a 2020 ow_disruption. │ │ │ +001d8d40: 2d20 6c6f 775f 7365 7665 7269 7479 0a20 - low_severity. │ │ │ +001d8d50: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ +001d8d60: 6465 640a 2020 2d20 7061 636b 6167 655f ded. - package_ │ │ │ +001d8d70: 7365 7472 6f75 626c 6573 686f 6f74 5f72 setroubleshoot_r │ │ │ +001d8d80: 656d 6f76 6564 0a3c 2f63 6f64 653e 3c2f emoved.
Remediati │ │ │ +001d8e40: 6f6e 2050 7570 7065 7420 736e 6970 7065 on Puppet snippe │ │ │ +001d8e50: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +001d8ed0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +001d8ee0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +001d8f00: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +001d8f10: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +001d8f30: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +001d8f50: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ +001d8f80: 3c63 6f64 653e 0a69 6e63 6c75 6465 2072  .include r
│ │ │ +001d8f90: 656d 6f76 655f 7365 7472 6f75 626c 6573  emove_setroubles
│ │ │ +001d8fa0: 686f 6f74 0a0a 636c 6173 7320 7265 6d6f  hoot..class remo
│ │ │ +001d8fb0: 7665 5f73 6574 726f 7562 6c65 7368 6f6f  ve_setroubleshoo
│ │ │ +001d8fc0: 7420 7b0a 2020 7061 636b 6167 6520 7b20  t {.  package { 
│ │ │ +001d8fd0: 2773 6574 726f 7562 6c65 7368 6f6f 7427  'setroubleshoot'
│ │ │ +001d8fe0: 3a0a 2020 2020 656e 7375 7265 203d 2667  :.    ensure =&g
│ │ │ +001d8ff0: 743b 2027 7075 7267 6564 272c 0a20 207d  t; 'purged',.  }
│ │ │ +001d9000: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e  .}.
│ │ │ +001d9010: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation S │ │ │ +001d90c0: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ +001d90d0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ +001d91a0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +001d91b0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ +001d9200: 2320 5265 6d65 6469 6174 696f 6e20 6973  # Remediation is
│ │ │ +001d9210: 2061 7070 6c69 6361 626c 6520 6f6e 6c79   applicable only
│ │ │ +001d9220: 2069 6e20 6365 7274 6169 6e20 706c 6174   in certain plat
│ │ │ +001d9230: 666f 726d 730a 6966 2072 706d 202d 2d71  forms.if rpm --q
│ │ │ +001d9240: 7569 6574 202d 7120 6b65 726e 656c 3b20  uiet -q kernel; 
│ │ │ +001d9250: 7468 656e 0a0a 2320 4341 5554 494f 4e3a  then..# CAUTION:
│ │ │ +001d9260: 2054 6869 7320 7265 6d65 6469 6174 696f   This remediatio
│ │ │ +001d9270: 6e20 7363 7269 7074 2077 696c 6c20 7265  n script will re
│ │ │ +001d9280: 6d6f 7665 2073 6574 726f 7562 6c65 7368  move setroublesh
│ │ │ +001d9290: 6f6f 740a 2320 6672 6f6d 2074 6865 2073  oot.# from the s
│ │ │ +001d92a0: 7973 7465 6d2c 2061 6e64 206d 6179 2072  ystem, and may r
│ │ │ +001d92b0: 656d 6f76 6520 616e 7920 7061 636b 6167  emove any packag
│ │ │ +001d92c0: 6573 0a23 2074 6861 7420 6465 7065 6e64  es.# that depend
│ │ │ +001d92d0: 206f 6e20 7365 7472 6f75 626c 6573 686f   on setroublesho
│ │ │ +001d92e0: 6f74 2e20 4578 6563 7574 6520 7468 6973  ot. Execute this
│ │ │ +001d92f0: 0a23 2072 656d 6564 6961 7469 6f6e 2041  .# remediation A
│ │ │ +001d9300: 4654 4552 2074 6573 7469 6e67 206f 6e20  FTER testing on 
│ │ │ +001d9310: 6120 6e6f 6e2d 7072 6f64 7563 7469 6f6e  a non-production
│ │ │ +001d9320: 0a23 2073 7973 7465 6d21 0a0a 0a69 6620  .# system!...if 
│ │ │ +001d9330: 7270 6d20 2d71 202d 2d71 7569 6574 2022  rpm -q --quiet "
│ │ │ +001d9340: 7365 7472 6f75 626c 6573 686f 6f74 2220  setroubleshoot" 
│ │ │ +001d9350: 3b20 7468 656e 0a64 6e66 2072 656d 6f76  ; then.dnf remov
│ │ │ +001d9360: 6520 2d79 202d 2d6e 6f61 7574 6f72 656d  e -y --noautorem
│ │ │ +001d9370: 6f76 6520 2273 6574 726f 7562 6c65 7368  ove "setroublesh
│ │ │ +001d9380: 6f6f 7422 0a66 690a 0a65 6c73 650a 2020  oot".fi..else.  
│ │ │ +001d9390: 2020 2667 743b 2661 6d70 3b32 2065 6368    >&2 ech
│ │ │ +001d93a0: 6f20 2752 656d 6564 6961 7469 6f6e 2069  o 'Remediation i
│ │ │ +001d93b0: 7320 6e6f 7420 6170 706c 6963 6162 6c65  s not applicable
│ │ │ +001d93c0: 2c20 6e6f 7468 696e 6720 7761 7320 646f  , nothing was do
│ │ │ +001d93d0: 6e65 270a 6669 0a3c 2f63 6f64 653e 3c2f  ne'.fi.Remediati
│ │ │ +001d9490: 6f6e 2041 6e61 636f 6e64 6120 736e 6970  on Anaconda snip
│ │ │ +001d94a0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c  pet ...
< │ │ │ +001d94b0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001d94c0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001d94d0: 7365 2220 6964 3d22 6964 3532 3922 3e3c se" id="id529">< │ │ │ +001d94e0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001d94f0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001d9500: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001d9510: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +001d9520: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:Strategy: │ │ │ +001d95b0: 3c74 643e 6469 7361 626c 653c 2f74 643e │ │ │ +001d95c0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Complexity:low
Disrup │ │ │ +001d9180: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +001d9190: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +001d91d0: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ +001d91e0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complex │ │ │ +001d9530: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +001d9540: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ +001d9580: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +001d9590: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
disable
..packag │ │ │ +001d95e0: 6520 2d2d 7265 6d6f 7665 3d73 6574 726f e --remove=setro │ │ │ +001d95f0: 7562 6c65 7368 6f6f 740a 3c2f 636f 6465 ubleshoot.
Rem │ │ │ -001e2bb0: 6564 6961 7469 6f6e 2041 6e61 636f 6e64 ediation Anacond │ │ │ -001e2bc0: 6120 736e 6970 7065 7420 e287 b23c 2f61 a snippet ...
< │ │ │ -001e2c60: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -001e2c70: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -001e2cc0: 3c74 723e 3c74 683e 5374 7261 7465 6779
..
│ │ │ -001e2d00: 7061 636b 6167 6520 2d2d 7265 6d6f 7665  package --remove
│ │ │ -001e2d10: 3d61 7661 6869 0a3c 2f63 6f64 653e 3c2f  =avahi.Remediati
│ │ │ -001e2dd0: 6f6e 2050 7570 7065 7420 736e 6970 7065  on Puppet snippe
│ │ │ -001e2de0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469  t ...
< │ │ │ -001e2e60: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ -001e2ea0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 disable
C │ │ │ -001e2c50: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -001e2c80: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -001e2c90: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -001e2cd0: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ -001e2ce0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexit │ │ │ -001e2e70: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ -001e2e90: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ -001e2ec0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ -001e2ee0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
│ │ │ -001e2f10: 3c63 6f64 653e 0a69 6e63 6c75 6465 2072  .include r
│ │ │ -001e2f20: 656d 6f76 655f 6176 6168 690a 0a63 6c61  emove_avahi..cla
│ │ │ -001e2f30: 7373 2072 656d 6f76 655f 6176 6168 6920  ss remove_avahi 
│ │ │ -001e2f40: 7b0a 2020 7061 636b 6167 6520 7b20 2761  {.  package { 'a
│ │ │ -001e2f50: 7661 6869 273a 0a20 2020 2065 6e73 7572  vahi':.    ensur
│ │ │ -001e2f60: 6520 3d26 6774 3b20 2770 7572 6765 6427  e => 'purged'
│ │ │ -001e2f70: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ -001e2f80: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ -001e3030: 696f 6e20 416e 7369 626c 6520 736e 6970 ion Ansible snip │ │ │ -001e3040: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -001e3050: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -001e3060: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -001e3070: 7365 2220 6964 3d22 6964 3534 3322 3e3c se" id="id543">< │ │ │ -001e3080: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -001e3090: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -001e30a0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -001e30b0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -001e30c0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -001e30d0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -001e30e0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -001e3120: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -001e3130: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -001e3150: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ -001e3160: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 - name: │ │ │ -001e3180: 2755 6e69 6e73 7461 6c6c 2061 7661 6869 'Uninstall avahi │ │ │ -001e3190: 2053 6572 7665 7220 5061 636b 6167 653a Server Package: │ │ │ -001e31a0: 2045 6e73 7572 6520 6176 6168 6920 6973 Ensure avahi is │ │ │ -001e31b0: 2072 656d 6f76 6564 270a 2020 616e 7369 removed'. ansi │ │ │ -001e31c0: 626c 652e 6275 696c 7469 6e2e 7061 636b ble.builtin.pack │ │ │ -001e31d0: 6167 653a 0a20 2020 206e 616d 653a 2061 age:. name: a │ │ │ -001e31e0: 7661 6869 0a20 2020 2073 7461 7465 3a20 vahi. state: │ │ │ -001e31f0: 6162 7365 6e74 0a20 2074 6167 733a 0a20 absent. tags:. │ │ │ -001e3200: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ -001e3210: 4d2d 3628 6129 0a20 202d 204e 4953 542d M-6(a). - NIST- │ │ │ -001e3220: 3830 302d 3533 2d43 4d2d 3728 6129 0a20 800-53-CM-7(a). │ │ │ -001e3230: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ -001e3240: 4d2d 3728 6229 0a20 202d 2064 6973 6162 M-7(b). - disab │ │ │ -001e3250: 6c65 5f73 7472 6174 6567 790a 2020 2d20 le_strategy. - │ │ │ -001e3260: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20 low_complexity. │ │ │ -001e3270: 202d 206c 6f77 5f64 6973 7275 7074 696f - low_disruptio │ │ │ -001e3280: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576 n. - medium_sev │ │ │ -001e3290: 6572 6974 790a 2020 2d20 6e6f 5f72 6562 erity. - no_reb │ │ │ -001e32a0: 6f6f 745f 6e65 6564 6564 0a20 202d 2070 oot_needed. - p │ │ │ -001e32b0: 6163 6b61 6765 5f61 7661 6869 5f72 656d ackage_avahi_rem │ │ │ -001e32c0: 6f76 6564 0a3c 2f63 6f64 653e 3c2f 7072 oved.
Remediation │ │ │ -001e3380: 2053 6865 6c6c 2073 6372 6970 7420 e287 Shell script .. │ │ │ -001e3390: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -001e3410: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -001e3430: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -001e3480: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -001e34b0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.# CAUTION: Th
│ │ │ -001e34d0: 6973 2072 656d 6564 6961 7469 6f6e 2073  is remediation s
│ │ │ -001e34e0: 6372 6970 7420 7769 6c6c 2072 656d 6f76  cript will remov
│ │ │ -001e34f0: 6520 6176 6168 690a 2320 6672 6f6d 2074  e avahi.# from t
│ │ │ -001e3500: 6865 2073 7973 7465 6d2c 2061 6e64 206d  he system, and m
│ │ │ -001e3510: 6179 2072 656d 6f76 6520 616e 7920 7061  ay remove any pa
│ │ │ -001e3520: 636b 6167 6573 0a23 2074 6861 7420 6465  ckages.# that de
│ │ │ -001e3530: 7065 6e64 206f 6e20 6176 6168 692e 2045  pend on avahi. E
│ │ │ -001e3540: 7865 6375 7465 2074 6869 730a 2320 7265  xecute this.# re
│ │ │ -001e3550: 6d65 6469 6174 696f 6e20 4146 5445 5220  mediation AFTER 
│ │ │ -001e3560: 7465 7374 696e 6720 6f6e 2061 206e 6f6e  testing on a non
│ │ │ -001e3570: 2d70 726f 6475 6374 696f 6e0a 2320 7379  -production.# sy
│ │ │ -001e3580: 7374 656d 210a 0a0a 6966 2072 706d 202d  stem!...if rpm -
│ │ │ -001e3590: 7120 2d2d 7175 6965 7420 2261 7661 6869  q --quiet "avahi
│ │ │ -001e35a0: 2220 3b20 7468 656e 0a64 6e66 2072 656d  " ; then.dnf rem
│ │ │ -001e35b0: 6f76 6520 2d79 202d 2d6e 6f61 7574 6f72  ove -y --noautor
│ │ │ -001e35c0: 656d 6f76 6520 2261 7661 6869 220a 6669  emove "avahi".fi
│ │ │ +001e2bb0: 6564 6961 7469 6f6e 2041 6e73 6962 6c65  ediation Ansible
│ │ │ +001e2bc0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e   snippet ...
│ │ │ +001e2bd0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22  
low
Disr │ │ │ -001e3440: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -001e3450: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -001e3490: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -001e34a0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
low< │ │ │ +001e2c70: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +001e2cc0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
- n
│ │ │ +001e2d00: 616d 653a 2027 556e 696e 7374 616c 6c20  ame: 'Uninstall 
│ │ │ +001e2d10: 6176 6168 6920 5365 7276 6572 2050 6163  avahi Server Pac
│ │ │ +001e2d20: 6b61 6765 3a20 456e 7375 7265 2061 7661  kage: Ensure ava
│ │ │ +001e2d30: 6869 2069 7320 7265 6d6f 7665 6427 0a20  hi is removed'. 
│ │ │ +001e2d40: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +001e2d50: 2e70 6163 6b61 6765 3a0a 2020 2020 6e61  .package:.    na
│ │ │ +001e2d60: 6d65 3a20 6176 6168 690a 2020 2020 7374  me: avahi.    st
│ │ │ +001e2d70: 6174 653a 2061 6273 656e 740a 2020 7461  ate: absent.  ta
│ │ │ +001e2d80: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +001e2d90: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +001e2da0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001e2db0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001e2dc0: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ +001e2dd0: 6469 7361 626c 655f 7374 7261 7465 6779  disable_strategy
│ │ │ +001e2de0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001e2df0: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +001e2e00: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +001e2e10: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ +001e2e20: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +001e2e30: 2020 2d20 7061 636b 6167 655f 6176 6168    - package_avah
│ │ │ +001e2e40: 695f 7265 6d6f 7665 640a 3c2f 636f 6465  i_removed.
Remedi │ │ │ +001e2f00: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ +001e2f10: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +001e2f20: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +001e2f50: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Co │ │ │ +001e2c50: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +001e2c80: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +001e2ca0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +001e2cb0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +001e2cd0: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +001e2ce0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ +001e2fc0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +001e2fe0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +001e3010: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +001e2fa0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +001e2fb0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +001e2ff0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001e3000: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

.includ │ │ │ +001e3050: 6520 7265 6d6f 7665 5f61 7661 6869 0a0a e remove_avahi.. │ │ │ +001e3060: 636c 6173 7320 7265 6d6f 7665 5f61 7661 class remove_ava │ │ │ +001e3070: 6869 207b 0a20 2070 6163 6b61 6765 207b hi {. package { │ │ │ +001e3080: 2027 6176 6168 6927 3a0a 2020 2020 656e 'avahi':. en │ │ │ +001e3090: 7375 7265 203d 2667 743b 2027 7075 7267 sure => 'purg │ │ │ +001e30a0: 6564 272c 0a20 207d 0a7d 0a3c 2f63 6f64 ed',. }.}.

Remed │ │ │ +001e3160: 6961 7469 6f6e 2053 6865 6c6c 2073 6372 iation Shell scr │ │ │ +001e3170: 6970 7420 e287 b23c 2f61 3e3c 6272 3e3c ipt ...
< │ │ │ +001e3180: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001e3190: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001e31a0: 7365 2220 6964 3d22 6964 3534 3322 3e3c se" id="id543">< │ │ │ +001e31b0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001e31c0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001e31d0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001e31e0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +001e31f0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +001e3200: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +001e3210: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ +001e3250: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +001e3260: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ +001e3280: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ +001e3290: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 .# CAUTI │ │ │ +001e32b0: 4f4e 3a20 5468 6973 2072 656d 6564 6961 ON: This remedia │ │ │ +001e32c0: 7469 6f6e 2073 6372 6970 7420 7769 6c6c tion script will │ │ │ +001e32d0: 2072 656d 6f76 6520 6176 6168 690a 2320 remove avahi.# │ │ │ +001e32e0: 6672 6f6d 2074 6865 2073 7973 7465 6d2c from the system, │ │ │ +001e32f0: 2061 6e64 206d 6179 2072 656d 6f76 6520 and may remove │ │ │ +001e3300: 616e 7920 7061 636b 6167 6573 0a23 2074 any packages.# t │ │ │ +001e3310: 6861 7420 6465 7065 6e64 206f 6e20 6176 hat depend on av │ │ │ +001e3320: 6168 692e 2045 7865 6375 7465 2074 6869 ahi. Execute thi │ │ │ +001e3330: 730a 2320 7265 6d65 6469 6174 696f 6e20 s.# remediation │ │ │ +001e3340: 4146 5445 5220 7465 7374 696e 6720 6f6e AFTER testing on │ │ │ +001e3350: 2061 206e 6f6e 2d70 726f 6475 6374 696f a non-productio │ │ │ +001e3360: 6e0a 2320 7379 7374 656d 210a 0a0a 6966 n.# system!...if │ │ │ +001e3370: 2072 706d 202d 7120 2d2d 7175 6965 7420 rpm -q --quiet │ │ │ +001e3380: 2261 7661 6869 2220 3b20 7468 656e 0a64 "avahi" ; then.d │ │ │ +001e3390: 6e66 2072 656d 6f76 6520 2d79 202d 2d6e nf remove -y --n │ │ │ +001e33a0: 6f61 7574 6f72 656d 6f76 6520 2261 7661 oautoremove "ava │ │ │ +001e33b0: 6869 220a 6669 0a3c 2f63 6f64 653e 3c2f hi".fi.
Remediati │ │ │ +001e3470: 6f6e 2041 6e61 636f 6e64 6120 736e 6970 on Anaconda snip │ │ │ +001e3480: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +001e3490: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001e34a0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001e34b0: 7365 2220 6964 3d22 6964 3534 3422 3e3c se" id="id544">< │ │ │ +001e34c0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001e34d0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001e34e0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001e34f0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +001e3500: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +001e3510: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +001e3520: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ +001e3560: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +001e3570: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ +001e3590: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ +001e35a0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 ..packag │ │ │ +001e35c0: 6520 2d2d 7265 6d6f 7665 3d61 7661 6869 e --remove=avahi │ │ │ 001e35d0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .
< │ │ │ 001e35f0: 2f74 723e 3c2f 7462 6f64 793e 3c2f 7461 /tr>Remediation │ │ │ -001efb70: 4f53 4275 696c 6420 426c 7565 7072 696e OSBuild Blueprin │ │ │ -001efb80: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...

│ │ │ -001efbd0: 0a5b 6375 7374 6f6d 697a 6174 696f 6e73  .[customizations
│ │ │ -001efbe0: 2e73 6572 7669 6365 735d 0a65 6e61 626c  .services].enabl
│ │ │ -001efbf0: 6564 203d 205b 2263 726f 6e64 225d 0a3c  ed = ["crond"].<
│ │ │ -001efc00: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -001efcb0: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ -001efcc0: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
< │ │ │ -001efd60: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -001efd70: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -001efdc0: 3c74 723e 3c74 683e 5374 7261 7465 6779
inc
│ │ │ -001efe00: 6c75 6465 2065 6e61 626c 655f 6372 6f6e  lude enable_cron
│ │ │ -001efe10: 640a 0a63 6c61 7373 2065 6e61 626c 655f  d..class enable_
│ │ │ -001efe20: 6372 6f6e 6420 7b0a 2020 7365 7276 6963  crond {.  servic
│ │ │ -001efe30: 6520 7b27 6372 6f6e 6427 3a0a 2020 2020  e {'crond':.    
│ │ │ -001efe40: 656e 6162 6c65 203d 2667 743b 2074 7275  enable => tru
│ │ │ -001efe50: 652c 0a20 2020 2065 6e73 7572 6520 3d26  e,.    ensure =&
│ │ │ -001efe60: 6774 3b20 2772 756e 6e69 6e67 272c 0a20  gt; 'running',. 
│ │ │ -001efe70: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.Remediation
│ │ │ -001eff30: 2041 6e73 6962 6c65 2073 6e69 7070 6574   Ansible snippet
│ │ │ -001eff40: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
< │ │ │ -001f0000: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -001f0010: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
C │ │ │ -001efd50: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -001efd80: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -001efd90: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -001efdd0: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -001efde0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexity │ │ │ -001effd0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ -001efff0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ -001f0020: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ -001f0040: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
- name: Gath
│ │ │ -001f0080: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ -001f0090: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ -001f00a0: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ -001f00b0: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ -001f00c0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001f00d0: 434d 2d36 2861 290a 2020 2d20 656e 6162  CM-6(a).  - enab
│ │ │ -001f00e0: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ -001f00f0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001f0100: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -001f0110: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ -001f0120: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ -001f0130: 6f6f 745f 6e65 6564 6564 0a20 202d 2073  oot_needed.  - s
│ │ │ -001f0140: 6572 7669 6365 5f63 726f 6e64 5f65 6e61  ervice_crond_ena
│ │ │ -001f0150: 626c 6564 0a0a 2d20 6e61 6d65 3a20 456e  bled..- name: En
│ │ │ -001f0160: 6162 6c65 2063 726f 6e20 5365 7276 6963  able cron Servic
│ │ │ -001f0170: 6520 2d20 456e 6162 6c65 2073 6572 7669  e - Enable servi
│ │ │ -001f0180: 6365 2063 726f 6e64 0a20 2062 6c6f 636b  ce crond.  block
│ │ │ -001f0190: 3a0a 0a20 202d 206e 616d 653a 2047 6174  :..  - name: Gat
│ │ │ -001f01a0: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ -001f01b0: 6661 6374 730a 2020 2020 616e 7369 626c  facts.    ansibl
│ │ │ -001f01c0: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ -001f01d0: 655f 6661 6374 733a 0a20 2020 2020 206d  e_facts:.      m
│ │ │ -001f01e0: 616e 6167 6572 3a20 6175 746f 0a0a 2020  anager: auto..  
│ │ │ -001f01f0: 2d20 6e61 6d65 3a20 456e 6162 6c65 2063  - name: Enable c
│ │ │ -001f0200: 726f 6e20 5365 7276 6963 6520 2d20 456e  ron Service - En
│ │ │ -001f0210: 6162 6c65 2053 6572 7669 6365 2063 726f  able Service cro
│ │ │ -001f0220: 6e64 0a20 2020 2061 6e73 6962 6c65 2e62  nd.    ansible.b
│ │ │ -001f0230: 7569 6c74 696e 2e73 7973 7465 6d64 3a0a  uiltin.systemd:.
│ │ │ -001f0240: 2020 2020 2020 6e61 6d65 3a20 6372 6f6e        name: cron
│ │ │ -001f0250: 640a 2020 2020 2020 656e 6162 6c65 643a  d.      enabled:
│ │ │ -001f0260: 2074 7275 650a 2020 2020 2020 7374 6174   true.      stat
│ │ │ -001f0270: 653a 2073 7461 7274 6564 0a20 2020 2020  e: started.     
│ │ │ -001f0280: 206d 6173 6b65 643a 2066 616c 7365 0a20   masked: false. 
│ │ │ -001f0290: 2020 2077 6865 6e3a 0a20 2020 202d 2027     when:.    - '
│ │ │ -001f02a0: 2263 726f 6e69 6522 2069 6e20 616e 7369  "cronie" in ansi
│ │ │ -001f02b0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001f02c0: 6573 270a 2020 7461 6773 3a0a 2020 2d20  es'.  tags:.  - 
│ │ │ -001f02d0: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -001f02e0: 2861 290a 2020 2d20 656e 6162 6c65 5f73  (a).  - enable_s
│ │ │ -001f02f0: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ -001f0300: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ -001f0310: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -001f0320: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -001f0330: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ -001f0340: 6e65 6564 6564 0a20 202d 2073 6572 7669  needed.  - servi
│ │ │ -001f0350: 6365 5f63 726f 6e64 5f65 6e61 626c 6564  ce_crond_enabled
│ │ │ -001f0360: 0a20 202d 2073 7065 6369 616c 5f73 6572  .  - special_ser
│ │ │ -001f0370: 7669 6365 5f62 6c6f 636b 0a20 2077 6865  vice_block.  whe
│ │ │ -001f0380: 6e3a 2027 226b 6572 6e65 6c22 2069 6e20  n: '"kernel" in 
│ │ │ -001f0390: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001f03a0: 636b 6167 6573 270a 3c2f 636f 6465 3e3c  ckages'.<
│ │ │ +001efb70: 416e 7369 626c 6520 736e 6970 7065 7420  Ansible snippet 
│ │ │ +001efb80: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620  ...
Complexity: │ │ │ +001efc10: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +001efc30: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +001efc50: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +001efc80: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +001efc90: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ +001efca0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
- name: Gathe
│ │ │ +001efcc0: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ +001efcd0: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ +001efce0: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ +001efcf0: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ +001efd00: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001efd10: 4d2d 3628 6129 0a20 202d 2065 6e61 626c  M-6(a).  - enabl
│ │ │ +001efd20: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ +001efd30: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +001efd40: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +001efd50: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +001efd60: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ +001efd70: 6f74 5f6e 6565 6465 640a 2020 2d20 7365  ot_needed.  - se
│ │ │ +001efd80: 7276 6963 655f 6372 6f6e 645f 656e 6162  rvice_crond_enab
│ │ │ +001efd90: 6c65 640a 0a2d 206e 616d 653a 2045 6e61  led..- name: Ena
│ │ │ +001efda0: 626c 6520 6372 6f6e 2053 6572 7669 6365  ble cron Service
│ │ │ +001efdb0: 202d 2045 6e61 626c 6520 7365 7276 6963   - Enable servic
│ │ │ +001efdc0: 6520 6372 6f6e 640a 2020 626c 6f63 6b3a  e crond.  block:
│ │ │ +001efdd0: 0a0a 2020 2d20 6e61 6d65 3a20 4761 7468  ..  - name: Gath
│ │ │ +001efde0: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ +001efdf0: 6163 7473 0a20 2020 2061 6e73 6962 6c65  acts.    ansible
│ │ │ +001efe00: 2e62 7569 6c74 696e 2e70 6163 6b61 6765  .builtin.package
│ │ │ +001efe10: 5f66 6163 7473 3a0a 2020 2020 2020 6d61  _facts:.      ma
│ │ │ +001efe20: 6e61 6765 723a 2061 7574 6f0a 0a20 202d  nager: auto..  -
│ │ │ +001efe30: 206e 616d 653a 2045 6e61 626c 6520 6372   name: Enable cr
│ │ │ +001efe40: 6f6e 2053 6572 7669 6365 202d 2045 6e61  on Service - Ena
│ │ │ +001efe50: 626c 6520 5365 7276 6963 6520 6372 6f6e  ble Service cron
│ │ │ +001efe60: 640a 2020 2020 616e 7369 626c 652e 6275  d.    ansible.bu
│ │ │ +001efe70: 696c 7469 6e2e 7379 7374 656d 643a 0a20  iltin.systemd:. 
│ │ │ +001efe80: 2020 2020 206e 616d 653a 2063 726f 6e64       name: crond
│ │ │ +001efe90: 0a20 2020 2020 2065 6e61 626c 6564 3a20  .      enabled: 
│ │ │ +001efea0: 7472 7565 0a20 2020 2020 2073 7461 7465  true.      state
│ │ │ +001efeb0: 3a20 7374 6172 7465 640a 2020 2020 2020  : started.      
│ │ │ +001efec0: 6d61 736b 6564 3a20 6661 6c73 650a 2020  masked: false.  
│ │ │ +001efed0: 2020 7768 656e 3a0a 2020 2020 2d20 2722    when:.    - '"
│ │ │ +001efee0: 6372 6f6e 6965 2220 696e 2061 6e73 6962  cronie" in ansib
│ │ │ +001efef0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001eff00: 7327 0a20 2074 6167 733a 0a20 202d 204e  s'.  tags:.  - N
│ │ │ +001eff10: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +001eff20: 6129 0a20 202d 2065 6e61 626c 655f 7374  a).  - enable_st
│ │ │ +001eff30: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ +001eff40: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ +001eff50: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +001eff60: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +001eff70: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +001eff80: 6565 6465 640a 2020 2d20 7365 7276 6963  eeded.  - servic
│ │ │ +001eff90: 655f 6372 6f6e 645f 656e 6162 6c65 640a  e_crond_enabled.
│ │ │ +001effa0: 2020 2d20 7370 6563 6961 6c5f 7365 7276    - special_serv
│ │ │ +001effb0: 6963 655f 626c 6f63 6b0a 2020 7768 656e  ice_block.  when
│ │ │ +001effc0: 3a20 2722 6b65 726e 656c 2220 696e 2061  : '"kernel" in a
│ │ │ +001effd0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001effe0: 6b61 6765 7327 0a3c 2f63 6f64 653e 3c2f  kages'.
Remediati │ │ │ +001f00a0: 6f6e 2050 7570 7065 7420 736e 6970 7065 on Puppet snippe │ │ │ +001f00b0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +001f0130: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +001f0140: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +001f0160: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +001f0170: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +001f0190: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +001f01b0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ +001f01e0: 636f 6465 3e69 6e63 6c75 6465 2065 6e61  code>include ena
│ │ │ +001f01f0: 626c 655f 6372 6f6e 640a 0a63 6c61 7373  ble_crond..class
│ │ │ +001f0200: 2065 6e61 626c 655f 6372 6f6e 6420 7b0a   enable_crond {.
│ │ │ +001f0210: 2020 7365 7276 6963 6520 7b27 6372 6f6e    service {'cron
│ │ │ +001f0220: 6427 3a0a 2020 2020 656e 6162 6c65 203d  d':.    enable =
│ │ │ +001f0230: 2667 743b 2074 7275 652c 0a20 2020 2065  > true,.    e
│ │ │ +001f0240: 6e73 7572 6520 3d26 6774 3b20 2772 756e  nsure => 'run
│ │ │ +001f0250: 6e69 6e67 272c 0a20 207d 0a7d 0a3c 2f63  ning',.  }.}.
│ │ │ +001f0270: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +001f0310: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ +001f0320: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ +001f0330: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...

.[custo │ │ │ +001f0380: 6d69 7a61 7469 6f6e 732e 7365 7276 6963 mizations.servic │ │ │ +001f0390: 6573 5d0a 656e 6162 6c65 6420 3d20 5b22 es].enabled = [" │ │ │ +001f03a0: 6372 6f6e 6422 5d0a 3c2f 636f 6465 3e3c crond"].< │ │ │ 001f03b0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>

Remedia │ │ │ -0020cb30: 7469 6f6e 2041 6e61 636f 6e64 6120 736e tion Anaconda sn │ │ │ -0020cb40: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -0020cbf0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -0020cc10: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -0020cc40: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -0020cbd0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -0020cbe0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -0020cc00: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -0020cc20: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -0020cc30: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -0020cc70: 7072 653e 3c63 6f64 653e 0a0a 7061 636b pre>..pack │ │ │ -0020cc80: 6167 6520 2d2d 7265 6d6f 7665 3d64 6863 age --remove=dhc │ │ │ -0020cc90: 700a 3c2f 636f 6465 3e3c 2f70 7265 3e3c p.< │ │ │ -0020cca0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ -0020cd50: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ -0020cd60: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -0020ce30: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -0020ce40: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.include remove
│ │ │ -0020cea0: 5f64 6863 700a 0a63 6c61 7373 2072 656d  _dhcp..class rem
│ │ │ -0020ceb0: 6f76 655f 6468 6370 207b 0a20 2070 6163  ove_dhcp {.  pac
│ │ │ -0020cec0: 6b61 6765 207b 2027 6468 6370 273a 0a20  kage { 'dhcp':. 
│ │ │ -0020ced0: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ -0020cee0: 2770 7572 6765 6427 2c0a 2020 7d0a 7d0a  'purged',.  }.}.
│ │ │ -0020cef0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -0020cfa0: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -0020cfb0: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -0020cfc0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
low
Disru │ │ │ -0020ce10: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -0020ce20: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -0020ce60: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -0020ce70: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ -0020d090: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0020d0a0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -0020d0f0: 2d20 6e61 6d65 3a20 2755 6e69 6e73 7461  - name: 'Uninsta
│ │ │ -0020d100: 6c6c 2044 4843 5020 5365 7276 6572 2050  ll DHCP Server P
│ │ │ -0020d110: 6163 6b61 6765 3a20 456e 7375 7265 2064  ackage: Ensure d
│ │ │ -0020d120: 6863 7020 6973 2072 656d 6f76 6564 270a  hcp is removed'.
│ │ │ -0020d130: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -0020d140: 6e2e 7061 636b 6167 653a 0a20 2020 206e  n.package:.    n
│ │ │ -0020d150: 616d 653a 2064 6863 700a 2020 2020 7374  ame: dhcp.    st
│ │ │ -0020d160: 6174 653a 2061 6273 656e 740a 2020 7461  ate: absent.  ta
│ │ │ -0020d170: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -0020d180: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -0020d190: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -0020d1a0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -0020d1b0: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ -0020d1c0: 5043 492d 4453 5376 342d 322e 320a 2020  PCI-DSSv4-2.2.  
│ │ │ -0020d1d0: 2d20 5043 492d 4453 5376 342d 322e 322e  - PCI-DSSv4-2.2.
│ │ │ -0020d1e0: 340a 2020 2d20 6469 7361 626c 655f 7374  4.  - disable_st
│ │ │ -0020d1f0: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ -0020d200: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -0020d210: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -0020d220: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -0020d230: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -0020d240: 6565 6465 640a 2020 2d20 7061 636b 6167  eeded.  - packag
│ │ │ -0020d250: 655f 6468 6370 5f72 656d 6f76 6564 0a3c  e_dhcp_removed.<
│ │ │ -0020d260: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -0020d310: 656d 6564 6961 7469 6f6e 2053 6865 6c6c emediation Shell │ │ │ -0020d320: 2073 6372 6970 7420 e287 b23c 2f61 3e3c script ...< │ │ │ -0020d330: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Complexity:low
Disrup │ │ │ -0020d070: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0020d080: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0020d0c0: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -0020d0d0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Com │ │ │ -0020d3b0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -0020d3e0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -0020d400: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -0020d410: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -0020d430: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -0020d440: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.# C
│ │ │ -0020d460: 4155 5449 4f4e 3a20 5468 6973 2072 656d  AUTION: This rem
│ │ │ -0020d470: 6564 6961 7469 6f6e 2073 6372 6970 7420  ediation script 
│ │ │ -0020d480: 7769 6c6c 2072 656d 6f76 6520 6468 6370  will remove dhcp
│ │ │ -0020d490: 0a23 2066 726f 6d20 7468 6520 7379 7374  .# from the syst
│ │ │ -0020d4a0: 656d 2c20 616e 6420 6d61 7920 7265 6d6f  em, and may remo
│ │ │ -0020d4b0: 7665 2061 6e79 2070 6163 6b61 6765 730a  ve any packages.
│ │ │ -0020d4c0: 2320 7468 6174 2064 6570 656e 6420 6f6e  # that depend on
│ │ │ -0020d4d0: 2064 6863 702e 2045 7865 6375 7465 2074   dhcp. Execute t
│ │ │ -0020d4e0: 6869 730a 2320 7265 6d65 6469 6174 696f  his.# remediatio
│ │ │ -0020d4f0: 6e20 4146 5445 5220 7465 7374 696e 6720  n AFTER testing 
│ │ │ -0020d500: 6f6e 2061 206e 6f6e 2d70 726f 6475 6374  on a non-product
│ │ │ -0020d510: 696f 6e0a 2320 7379 7374 656d 210a 0a0a  ion.# system!...
│ │ │ -0020d520: 6966 2072 706d 202d 7120 2d2d 7175 6965  if rpm -q --quie
│ │ │ -0020d530: 7420 2264 6863 7022 203b 2074 6865 6e0a  t "dhcp" ; then.
│ │ │ -0020d540: 646e 6620 7265 6d6f 7665 202d 7920 2d2d  dnf remove -y --
│ │ │ -0020d550: 6e6f 6175 746f 7265 6d6f 7665 2022 6468  noautoremove "dh
│ │ │ -0020d560: 6370 220a 6669 0a3c 2f63 6f64 653e 3c2f  cp".fi.
│ │ │ +0020cb50: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +0020cb80: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +0020cbf0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +0020cc10: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +0020cc40: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +0020cbd0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +0020cbe0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +0020cc20: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +0020cc30: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

- name: │ │ │ +0020cc80: 2027 556e 696e 7374 616c 6c20 4448 4350 'Uninstall DHCP │ │ │ +0020cc90: 2053 6572 7665 7220 5061 636b 6167 653a Server Package: │ │ │ +0020cca0: 2045 6e73 7572 6520 6468 6370 2069 7320 Ensure dhcp is │ │ │ +0020ccb0: 7265 6d6f 7665 6427 0a20 2061 6e73 6962 removed'. ansib │ │ │ +0020ccc0: 6c65 2e62 7569 6c74 696e 2e70 6163 6b61 le.builtin.packa │ │ │ +0020ccd0: 6765 3a0a 2020 2020 6e61 6d65 3a20 6468 ge:. name: dh │ │ │ +0020cce0: 6370 0a20 2020 2073 7461 7465 3a20 6162 cp. state: ab │ │ │ +0020ccf0: 7365 6e74 0a20 2074 6167 733a 0a20 202d sent. tags:. - │ │ │ +0020cd00: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ +0020cd10: 3628 6129 0a20 202d 204e 4953 542d 3830 6(a). - NIST-80 │ │ │ +0020cd20: 302d 3533 2d43 4d2d 3728 6129 0a20 202d 0-53-CM-7(a). - │ │ │ +0020cd30: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ +0020cd40: 3728 6229 0a20 202d 2050 4349 2d44 5353 7(b). - PCI-DSS │ │ │ +0020cd50: 7634 2d32 2e32 0a20 202d 2050 4349 2d44 v4-2.2. - PCI-D │ │ │ +0020cd60: 5353 7634 2d32 2e32 2e34 0a20 202d 2064 SSv4-2.2.4. - d │ │ │ +0020cd70: 6973 6162 6c65 5f73 7472 6174 6567 790a isable_strategy. │ │ │ +0020cd80: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ +0020cd90: 7479 0a20 202d 206c 6f77 5f64 6973 7275 ty. - low_disru │ │ │ +0020cda0: 7074 696f 6e0a 2020 2d20 6d65 6469 756d ption. - medium │ │ │ +0020cdb0: 5f73 6576 6572 6974 790a 2020 2d20 6e6f _severity. - no │ │ │ +0020cdc0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20 _reboot_needed. │ │ │ +0020cdd0: 202d 2070 6163 6b61 6765 5f64 6863 705f - package_dhcp_ │ │ │ +0020cde0: 7265 6d6f 7665 640a 3c2f 636f 6465 3e3c removed.< │ │ │ +0020cdf0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>

Remediat │ │ │ +0020cea0: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ +0020ceb0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +0020cf30: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +0020cf40: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +0020cf50: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +0020cf90: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +0020cfa0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +0020cfc0: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +0020cfd0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.include 
│ │ │ +0020cff0: 7265 6d6f 7665 5f64 6863 700a 0a63 6c61  remove_dhcp..cla
│ │ │ +0020d000: 7373 2072 656d 6f76 655f 6468 6370 207b  ss remove_dhcp {
│ │ │ +0020d010: 0a20 2070 6163 6b61 6765 207b 2027 6468  .  package { 'dh
│ │ │ +0020d020: 6370 273a 0a20 2020 2065 6e73 7572 6520  cp':.    ensure 
│ │ │ +0020d030: 3d26 6774 3b20 2770 7572 6765 6427 2c0a  => 'purged',.
│ │ │ +0020d040: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediatio │ │ │ +0020d100: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ +0020d110: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +0020d190: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +0020d1b0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +0020d200: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +0020d230: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +0020d1a0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +0020d1c0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +0020d210: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +0020d220: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.# CAUTION: T
│ │ │ +0020d250: 6869 7320 7265 6d65 6469 6174 696f 6e20  his remediation 
│ │ │ +0020d260: 7363 7269 7074 2077 696c 6c20 7265 6d6f  script will remo
│ │ │ +0020d270: 7665 2064 6863 700a 2320 6672 6f6d 2074  ve dhcp.# from t
│ │ │ +0020d280: 6865 2073 7973 7465 6d2c 2061 6e64 206d  he system, and m
│ │ │ +0020d290: 6179 2072 656d 6f76 6520 616e 7920 7061  ay remove any pa
│ │ │ +0020d2a0: 636b 6167 6573 0a23 2074 6861 7420 6465  ckages.# that de
│ │ │ +0020d2b0: 7065 6e64 206f 6e20 6468 6370 2e20 4578  pend on dhcp. Ex
│ │ │ +0020d2c0: 6563 7574 6520 7468 6973 0a23 2072 656d  ecute this.# rem
│ │ │ +0020d2d0: 6564 6961 7469 6f6e 2041 4654 4552 2074  ediation AFTER t
│ │ │ +0020d2e0: 6573 7469 6e67 206f 6e20 6120 6e6f 6e2d  esting on a non-
│ │ │ +0020d2f0: 7072 6f64 7563 7469 6f6e 0a23 2073 7973  production.# sys
│ │ │ +0020d300: 7465 6d21 0a0a 0a69 6620 7270 6d20 2d71  tem!...if rpm -q
│ │ │ +0020d310: 202d 2d71 7569 6574 2022 6468 6370 2220   --quiet "dhcp" 
│ │ │ +0020d320: 3b20 7468 656e 0a64 6e66 2072 656d 6f76  ; then.dnf remov
│ │ │ +0020d330: 6520 2d79 202d 2d6e 6f61 7574 6f72 656d  e -y --noautorem
│ │ │ +0020d340: 6f76 6520 2264 6863 7022 0a66 690a 3c2f  ove "dhcp".fi.
Re │ │ │ +0020d400: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ +0020d410: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
│ │ │ +0020d4b0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ +0020d550: 0a70 6163 6b61 6765 202d 2d72 656d 6f76  .package --remov
│ │ │ +0020d560: 653d 6468 6370 0a3c 2f63 6f64 653e 3c2f  e=dhcp.
│ │ │  0020d580: 3c2f 7464 3e3c 2f74 723e 3c2f 7462 6f64  
│ │ │ +0020d4a0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +0020d4d0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +0020d4e0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +0020d520: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +0020d530: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ 0020d5a0: 2f74 723e 3c74 7220 6461 7461 2d74 742d /tr>Remediation A │ │ │ -0020eb20: 6e61 636f 6e64 6120 736e 6970 7065 7420 naconda snippet │ │ │ -0020eb30: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...

Complexity: │ │ │ -0020ebc0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -0020ebe0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -0020ec00: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -0020ec30: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -0020ec40: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
..package --
│ │ │ -0020ec70: 7265 6d6f 7665 3d62 696e 640a 3c2f 636f  remove=bind.
< │ │ │ -0020ec90: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -0020eca0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -0020ecb0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -0020ecc0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -0020ecd0: 6436 3338 2220 7461 6269 6e64 6578 3d22 d638" tabindex=" │ │ │ -0020ece0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -0020ecf0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -0020ed00: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -0020ed10: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -0020ed20: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -0020ed30: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ -0020ed40: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -0020edd0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -0020ede0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -0020ee00: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -0020ee20: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -0020ee30: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -0020ee70: 3c70 7265 3e3c 636f 6465 3e0a 696e 636c
.incl
│ │ │ -0020ee80: 7564 6520 7265 6d6f 7665 5f62 696e 640a  ude remove_bind.
│ │ │ -0020ee90: 0a63 6c61 7373 2072 656d 6f76 655f 6269  .class remove_bi
│ │ │ -0020eea0: 6e64 207b 0a20 2070 6163 6b61 6765 207b  nd {.  package {
│ │ │ -0020eeb0: 2027 6269 6e64 273a 0a20 2020 2065 6e73   'bind':.    ens
│ │ │ -0020eec0: 7572 6520 3d26 6774 3b20 2770 7572 6765  ure => 'purge
│ │ │ -0020eed0: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  d',.  }.}.
Remedi │ │ │ -0020ef90: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -0020efa0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -0020f050: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -0020f070: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -0020f0a0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -0020f030: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -0020f040: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -0020f060: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -0020f080: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -0020f090: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -0020f0d0: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -0020f0e0: 3a20 2755 6e69 6e73 7461 6c6c 2062 696e : 'Uninstall bin │ │ │ -0020f0f0: 6420 5061 636b 6167 653a 2045 6e73 7572 d Package: Ensur │ │ │ -0020f100: 6520 6269 6e64 2069 7320 7265 6d6f 7665 e bind is remove │ │ │ -0020f110: 6427 0a20 2061 6e73 6962 6c65 2e62 7569 d'. ansible.bui │ │ │ -0020f120: 6c74 696e 2e70 6163 6b61 6765 3a0a 2020 ltin.package:. │ │ │ -0020f130: 2020 6e61 6d65 3a20 6269 6e64 0a20 2020 name: bind. │ │ │ -0020f140: 2073 7461 7465 3a20 6162 7365 6e74 0a20 state: absent. │ │ │ -0020f150: 2074 6167 733a 0a20 202d 204e 4953 542d tags:. - NIST- │ │ │ -0020f160: 3830 302d 3533 2d43 4d2d 3628 6129 0a20 800-53-CM-6(a). │ │ │ -0020f170: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ -0020f180: 4d2d 3728 6129 0a20 202d 204e 4953 542d M-7(a). - NIST- │ │ │ -0020f190: 3830 302d 3533 2d43 4d2d 3728 6229 0a20 800-53-CM-7(b). │ │ │ -0020f1a0: 202d 2064 6973 6162 6c65 5f73 7472 6174 - disable_strat │ │ │ -0020f1b0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70 egy. - low_comp │ │ │ -0020f1c0: 6c65 7869 7479 0a20 202d 206c 6f77 5f64 lexity. - low_d │ │ │ -0020f1d0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f isruption. - lo │ │ │ -0020f1e0: 775f 7365 7665 7269 7479 0a20 202d 206e w_severity. - n │ │ │ -0020f1f0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a o_reboot_needed. │ │ │ -0020f200: 2020 2d20 7061 636b 6167 655f 6269 6e64 - package_bind │ │ │ -0020f210: 5f72 656d 6f76 6564 0a3c 2f63 6f64 653e _removed. │ │ │ -0020f220: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063
Remedia │ │ │ -0020f2d0: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ -0020f2e0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -0020f360: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -0020f370: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -0020f390: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -0020f3a0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -0020f3c0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -0020f3e0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ -0020f410: 3c63 6f64 653e 0a23 2043 4155 5449 4f4e  .# CAUTION
│ │ │ -0020f420: 3a20 5468 6973 2072 656d 6564 6961 7469  : This remediati
│ │ │ -0020f430: 6f6e 2073 6372 6970 7420 7769 6c6c 2072  on script will r
│ │ │ -0020f440: 656d 6f76 6520 6269 6e64 0a23 2066 726f  emove bind.# fro
│ │ │ -0020f450: 6d20 7468 6520 7379 7374 656d 2c20 616e  m the system, an
│ │ │ -0020f460: 6420 6d61 7920 7265 6d6f 7665 2061 6e79  d may remove any
│ │ │ -0020f470: 2070 6163 6b61 6765 730a 2320 7468 6174   packages.# that
│ │ │ -0020f480: 2064 6570 656e 6420 6f6e 2062 696e 642e   depend on bind.
│ │ │ -0020f490: 2045 7865 6375 7465 2074 6869 730a 2320   Execute this.# 
│ │ │ -0020f4a0: 7265 6d65 6469 6174 696f 6e20 4146 5445  remediation AFTE
│ │ │ -0020f4b0: 5220 7465 7374 696e 6720 6f6e 2061 206e  R testing on a n
│ │ │ -0020f4c0: 6f6e 2d70 726f 6475 6374 696f 6e0a 2320  on-production.# 
│ │ │ -0020f4d0: 7379 7374 656d 210a 0a0a 6966 2072 706d  system!...if rpm
│ │ │ -0020f4e0: 202d 7120 2d2d 7175 6965 7420 2262 696e   -q --quiet "bin
│ │ │ -0020f4f0: 6422 203b 2074 6865 6e0a 646e 6620 7265  d" ; then.dnf re
│ │ │ -0020f500: 6d6f 7665 202d 7920 2d2d 6e6f 6175 746f  move -y --noauto
│ │ │ -0020f510: 7265 6d6f 7665 2022 6269 6e64 220a 6669  remove "bind".fi
│ │ │ +0020eb20: 6e73 6962 6c65 2073 6e69 7070 6574 20e2  nsible snippet .
│ │ │ +0020eb30: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063  ..
│ │ │ +0020ebb0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +0020ebd0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +0020ec20: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +0020ec50: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +0020ebc0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +0020ebe0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +0020ec30: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +0020ec40: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
- name: 'Unin
│ │ │ +0020ec70: 7374 616c 6c20 6269 6e64 2050 6163 6b61  stall bind Packa
│ │ │ +0020ec80: 6765 3a20 456e 7375 7265 2062 696e 6420  ge: Ensure bind 
│ │ │ +0020ec90: 6973 2072 656d 6f76 6564 270a 2020 616e  is removed'.  an
│ │ │ +0020eca0: 7369 626c 652e 6275 696c 7469 6e2e 7061  sible.builtin.pa
│ │ │ +0020ecb0: 636b 6167 653a 0a20 2020 206e 616d 653a  ckage:.    name:
│ │ │ +0020ecc0: 2062 696e 640a 2020 2020 7374 6174 653a   bind.    state:
│ │ │ +0020ecd0: 2061 6273 656e 740a 2020 7461 6773 3a0a   absent.  tags:.
│ │ │ +0020ece0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +0020ecf0: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ +0020ed00: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ +0020ed10: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +0020ed20: 434d 2d37 2862 290a 2020 2d20 6469 7361  CM-7(b).  - disa
│ │ │ +0020ed30: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ +0020ed40: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +0020ed50: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +0020ed60: 6f6e 0a20 202d 206c 6f77 5f73 6576 6572  on.  - low_sever
│ │ │ +0020ed70: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ +0020ed80: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ +0020ed90: 6b61 6765 5f62 696e 645f 7265 6d6f 7665  kage_bind_remove
│ │ │ +0020eda0: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ +0020edb0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ +0020ee60: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ +0020ee70: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ +0020ef40: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +0020ef50: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.include remove
│ │ │ +0020efb0: 5f62 696e 640a 0a63 6c61 7373 2072 656d  _bind..class rem
│ │ │ +0020efc0: 6f76 655f 6269 6e64 207b 0a20 2070 6163  ove_bind {.  pac
│ │ │ +0020efd0: 6b61 6765 207b 2027 6269 6e64 273a 0a20  kage { 'bind':. 
│ │ │ +0020efe0: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ +0020eff0: 2770 7572 6765 6427 2c0a 2020 7d0a 7d0a  'purged',.  }.}.
│ │ │ +0020f000: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +0020f0b0: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ +0020f0c0: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ +0020f0d0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low
Disru │ │ │ +0020ef20: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +0020ef30: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +0020ef70: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +0020ef80: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
low< │ │ │ +0020f170: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0020f1c0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.# 
│ │ │ +0020f200: 4341 5554 494f 4e3a 2054 6869 7320 7265  CAUTION: This re
│ │ │ +0020f210: 6d65 6469 6174 696f 6e20 7363 7269 7074  mediation script
│ │ │ +0020f220: 2077 696c 6c20 7265 6d6f 7665 2062 696e   will remove bin
│ │ │ +0020f230: 640a 2320 6672 6f6d 2074 6865 2073 7973  d.# from the sys
│ │ │ +0020f240: 7465 6d2c 2061 6e64 206d 6179 2072 656d  tem, and may rem
│ │ │ +0020f250: 6f76 6520 616e 7920 7061 636b 6167 6573  ove any packages
│ │ │ +0020f260: 0a23 2074 6861 7420 6465 7065 6e64 206f  .# that depend o
│ │ │ +0020f270: 6e20 6269 6e64 2e20 4578 6563 7574 6520  n bind. Execute 
│ │ │ +0020f280: 7468 6973 0a23 2072 656d 6564 6961 7469  this.# remediati
│ │ │ +0020f290: 6f6e 2041 4654 4552 2074 6573 7469 6e67  on AFTER testing
│ │ │ +0020f2a0: 206f 6e20 6120 6e6f 6e2d 7072 6f64 7563   on a non-produc
│ │ │ +0020f2b0: 7469 6f6e 0a23 2073 7973 7465 6d21 0a0a  tion.# system!..
│ │ │ +0020f2c0: 0a69 6620 7270 6d20 2d71 202d 2d71 7569  .if rpm -q --qui
│ │ │ +0020f2d0: 6574 2022 6269 6e64 2220 3b20 7468 656e  et "bind" ; then
│ │ │ +0020f2e0: 0a64 6e66 2072 656d 6f76 6520 2d79 202d  .dnf remove -y -
│ │ │ +0020f2f0: 2d6e 6f61 7574 6f72 656d 6f76 6520 2262  -noautoremove "b
│ │ │ +0020f300: 696e 6422 0a66 690a 3c2f 636f 6465 3e3c  ind".fi.<
│ │ │ +0020f310: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ +0020f3c0: 696f 6e20 416e 6163 6f6e 6461 2073 6e69  ion Anaconda sni
│ │ │ +0020f3d0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e  ppet ...
│ │ │ +0020f3e0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +0020f410: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Co │ │ │ +0020f150: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0020f180: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0020f1a0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0020f1b0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0020f1d0: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +0020f1e0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ +0020f480: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +0020f4a0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +0020f4d0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +0020f460: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +0020f470: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +0020f4b0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +0020f4c0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

..packa │ │ │ +0020f510: 6765 202d 2d72 656d 6f76 653d 6269 6e64 ge --remove=bind │ │ │ 0020f520: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .

< │ │ │ 0020f540: 2f74 723e 3c2f 7462 6f64 793e 3c2f 7461 /tr> │ │ │ -0020fdc0: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ -0020fdd0: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ -0020fde0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -0020feb0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -0020fec0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
..package --rem
│ │ │ -0020ff20: 6f76 653d 646e 736d 6173 710a 3c2f 636f  ove=dnsmasq.
< │ │ │ -0020ff40: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -0020ff50: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -0020ff60: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -0020ff70: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -0020ff80: 6436 3433 2220 7461 6269 6e64 6578 3d22 d643" tabindex=" │ │ │ -0020ff90: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -0020ffa0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -0020ffb0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -0020ffc0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -0020ffd0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -0020ffe0: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ -0020fff0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
low
Disru │ │ │ -0020fe90: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -0020fea0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -0020fee0: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -0020fef0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Comp │ │ │ -00210080: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -00210090: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -002100b0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -002100d0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -002100e0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -00210120: 3c70 7265 3e3c 636f 6465 3e0a 696e 636c
.incl
│ │ │ -00210130: 7564 6520 7265 6d6f 7665 5f64 6e73 6d61  ude remove_dnsma
│ │ │ -00210140: 7371 0a0a 636c 6173 7320 7265 6d6f 7665  sq..class remove
│ │ │ -00210150: 5f64 6e73 6d61 7371 207b 0a20 2070 6163  _dnsmasq {.  pac
│ │ │ -00210160: 6b61 6765 207b 2027 646e 736d 6173 7127  kage { 'dnsmasq'
│ │ │ -00210170: 3a0a 2020 2020 656e 7375 7265 203d 2667  :.    ensure =&g
│ │ │ -00210180: 743b 2027 7075 7267 6564 272c 0a20 207d  t; 'purged',.  }
│ │ │ -00210190: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e  .}.
│ │ │ -002101a0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation A │ │ │ -00210250: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ -00210260: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -002102e0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -00210300: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -00210350: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -00210380: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -002102f0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -00210310: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -00210360: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -00210370: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
- name: 'Unin
│ │ │ -002103a0: 7374 616c 6c20 646e 736d 6173 7120 5061  stall dnsmasq Pa
│ │ │ -002103b0: 636b 6167 653a 2045 6e73 7572 6520 646e  ckage: Ensure dn
│ │ │ -002103c0: 736d 6173 7120 6973 2072 656d 6f76 6564  smasq is removed
│ │ │ -002103d0: 270a 2020 616e 7369 626c 652e 6275 696c  '.  ansible.buil
│ │ │ -002103e0: 7469 6e2e 7061 636b 6167 653a 0a20 2020  tin.package:.   
│ │ │ -002103f0: 206e 616d 653a 2064 6e73 6d61 7371 0a20   name: dnsmasq. 
│ │ │ -00210400: 2020 2073 7461 7465 3a20 6162 7365 6e74     state: absent
│ │ │ -00210410: 0a20 2074 6167 733a 0a20 202d 2064 6973  .  tags:.  - dis
│ │ │ -00210420: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ -00210430: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -00210440: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -00210450: 696f 6e0a 2020 2d20 6c6f 775f 7365 7665  ion.  - low_seve
│ │ │ -00210460: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -00210470: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ -00210480: 636b 6167 655f 646e 736d 6173 715f 7265  ckage_dnsmasq_re
│ │ │ -00210490: 6d6f 7665 640a 3c2f 636f 6465 3e3c 2f70  moved.

Remediatio │ │ │ -00210550: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ -00210560: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -002105e0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -00210600: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -00210650: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -00210680: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -002105f0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -00210610: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -00210660: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -00210670: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.# CAUTION: T
│ │ │ -002106a0: 6869 7320 7265 6d65 6469 6174 696f 6e20  his remediation 
│ │ │ -002106b0: 7363 7269 7074 2077 696c 6c20 7265 6d6f  script will remo
│ │ │ -002106c0: 7665 2064 6e73 6d61 7371 0a23 2066 726f  ve dnsmasq.# fro
│ │ │ -002106d0: 6d20 7468 6520 7379 7374 656d 2c20 616e  m the system, an
│ │ │ -002106e0: 6420 6d61 7920 7265 6d6f 7665 2061 6e79  d may remove any
│ │ │ -002106f0: 2070 6163 6b61 6765 730a 2320 7468 6174   packages.# that
│ │ │ -00210700: 2064 6570 656e 6420 6f6e 2064 6e73 6d61   depend on dnsma
│ │ │ -00210710: 7371 2e20 4578 6563 7574 6520 7468 6973  sq. Execute this
│ │ │ -00210720: 0a23 2072 656d 6564 6961 7469 6f6e 2041  .# remediation A
│ │ │ -00210730: 4654 4552 2074 6573 7469 6e67 206f 6e20  FTER testing on 
│ │ │ -00210740: 6120 6e6f 6e2d 7072 6f64 7563 7469 6f6e  a non-production
│ │ │ -00210750: 0a23 2073 7973 7465 6d21 0a0a 0a69 6620  .# system!...if 
│ │ │ -00210760: 7270 6d20 2d71 202d 2d71 7569 6574 2022  rpm -q --quiet "
│ │ │ -00210770: 646e 736d 6173 7122 203b 2074 6865 6e0a  dnsmasq" ; then.
│ │ │ -00210780: 646e 6620 7265 6d6f 7665 202d 7920 2d2d  dnf remove -y --
│ │ │ -00210790: 6e6f 6175 746f 7265 6d6f 7665 2022 646e  noautoremove "dn
│ │ │ -002107a0: 736d 6173 7122 0a66 690a 3c2f 636f 6465  smasq".fi.
< │ │ │ +0020feb0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +0020fec0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ +0020ff10: 2d20 6e61 6d65 3a20 2755 6e69 6e73 7461  - name: 'Uninsta
│ │ │ +0020ff20: 6c6c 2064 6e73 6d61 7371 2050 6163 6b61  ll dnsmasq Packa
│ │ │ +0020ff30: 6765 3a20 456e 7375 7265 2064 6e73 6d61  ge: Ensure dnsma
│ │ │ +0020ff40: 7371 2069 7320 7265 6d6f 7665 6427 0a20  sq is removed'. 
│ │ │ +0020ff50: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +0020ff60: 2e70 6163 6b61 6765 3a0a 2020 2020 6e61  .package:.    na
│ │ │ +0020ff70: 6d65 3a20 646e 736d 6173 710a 2020 2020  me: dnsmasq.    
│ │ │ +0020ff80: 7374 6174 653a 2061 6273 656e 740a 2020  state: absent.  
│ │ │ +0020ff90: 7461 6773 3a0a 2020 2d20 6469 7361 626c  tags:.  - disabl
│ │ │ +0020ffa0: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ +0020ffb0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +0020ffc0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +0020ffd0: 0a20 202d 206c 6f77 5f73 6576 6572 6974  .  - low_severit
│ │ │ +0020ffe0: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +0020fff0: 6e65 6564 6564 0a20 202d 2070 6163 6b61  needed.  - packa
│ │ │ +00210000: 6765 5f64 6e73 6d61 7371 5f72 656d 6f76  ge_dnsmasq_remov
│ │ │ +00210010: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e  ed.
│ │ │ +00210020: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation P │ │ │ +002100d0: 7570 7065 7420 736e 6970 7065 7420 e287 uppet snippet .. │ │ │ +002100e0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
Complexity:low
Disrup │ │ │ +0020fe90: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +0020fea0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +0020fee0: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ +0020fef0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ +00210160: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +00210180: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +002101d0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ +00210200: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.include remov
│ │ │ +00210220: 655f 646e 736d 6173 710a 0a63 6c61 7373  e_dnsmasq..class
│ │ │ +00210230: 2072 656d 6f76 655f 646e 736d 6173 7120   remove_dnsmasq 
│ │ │ +00210240: 7b0a 2020 7061 636b 6167 6520 7b20 2764  {.  package { 'd
│ │ │ +00210250: 6e73 6d61 7371 273a 0a20 2020 2065 6e73  nsmasq':.    ens
│ │ │ +00210260: 7572 6520 3d26 6774 3b20 2770 7572 6765  ure => 'purge
│ │ │ +00210270: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  d',.  }.}.
Remedi │ │ │ +00210330: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ +00210340: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
│ │ │ +002103c0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 < │ │ │ +00210450: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +00210460: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
low
Disr │ │ │ +00210190: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +002101a0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +002101e0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ +002101f0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Complexi │ │ │ +002103d0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +002103e0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +00210420: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +00210430: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
.# CAUTIO
│ │ │ +00210480: 4e3a 2054 6869 7320 7265 6d65 6469 6174  N: This remediat
│ │ │ +00210490: 696f 6e20 7363 7269 7074 2077 696c 6c20  ion script will 
│ │ │ +002104a0: 7265 6d6f 7665 2064 6e73 6d61 7371 0a23  remove dnsmasq.#
│ │ │ +002104b0: 2066 726f 6d20 7468 6520 7379 7374 656d   from the system
│ │ │ +002104c0: 2c20 616e 6420 6d61 7920 7265 6d6f 7665  , and may remove
│ │ │ +002104d0: 2061 6e79 2070 6163 6b61 6765 730a 2320   any packages.# 
│ │ │ +002104e0: 7468 6174 2064 6570 656e 6420 6f6e 2064  that depend on d
│ │ │ +002104f0: 6e73 6d61 7371 2e20 4578 6563 7574 6520  nsmasq. Execute 
│ │ │ +00210500: 7468 6973 0a23 2072 656d 6564 6961 7469  this.# remediati
│ │ │ +00210510: 6f6e 2041 4654 4552 2074 6573 7469 6e67  on AFTER testing
│ │ │ +00210520: 206f 6e20 6120 6e6f 6e2d 7072 6f64 7563   on a non-produc
│ │ │ +00210530: 7469 6f6e 0a23 2073 7973 7465 6d21 0a0a  tion.# system!..
│ │ │ +00210540: 0a69 6620 7270 6d20 2d71 202d 2d71 7569  .if rpm -q --qui
│ │ │ +00210550: 6574 2022 646e 736d 6173 7122 203b 2074  et "dnsmasq" ; t
│ │ │ +00210560: 6865 6e0a 646e 6620 7265 6d6f 7665 202d  hen.dnf remove -
│ │ │ +00210570: 7920 2d2d 6e6f 6175 746f 7265 6d6f 7665  y --noautoremove
│ │ │ +00210580: 2022 646e 736d 6173 7122 0a66 690a 3c2f   "dnsmasq".fi.
Re │ │ │ +00210640: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ +00210650: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
│ │ │ +002106f0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ +00210790: 0a70 6163 6b61 6765 202d 2d72 656d 6f76  .package --remov
│ │ │ +002107a0: 653d 646e 736d 6173 710a 3c2f 636f 6465  e=dnsmasq.
│ │ │ +002106e0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00210710: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00210720: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00210760: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +00210770: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Remediatio │ │ │ -00211e60: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ -00211e70: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...

│ │ │ -00211ef0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -00211f00: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -00211f10: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -00211f50: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -00211f60: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -00211f80: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -00211f90: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
..package
│ │ │ -00211fb0: 202d 2d72 656d 6f76 653d 7673 6674 7064   --remove=vsftpd
│ │ │ -00211fc0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Pup │ │ │ -00212080: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ -00212090: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -00212160: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00212170: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -002121c0: 0a69 6e63 6c75 6465 2072 656d 6f76 655f  .include remove_
│ │ │ -002121d0: 7673 6674 7064 0a0a 636c 6173 7320 7265  vsftpd..class re
│ │ │ -002121e0: 6d6f 7665 5f76 7366 7470 6420 7b0a 2020  move_vsftpd {.  
│ │ │ -002121f0: 7061 636b 6167 6520 7b20 2776 7366 7470  package { 'vsftp
│ │ │ -00212200: 6427 3a0a 2020 2020 656e 7375 7265 203d  d':.    ensure =
│ │ │ -00212210: 2667 743b 2027 7075 7267 6564 272c 0a20  > 'purged',. 
│ │ │ -00212220: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.Remediation
│ │ │ -002122e0: 2041 6e73 6962 6c65 2073 6e69 7070 6574   Ansible snippet
│ │ │ -002122f0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
< │ │ │ -002123b0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -002123c0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
Complexity:low
Disrup │ │ │ -00212140: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00212150: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00212190: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -002121a0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexity │ │ │ -00212380: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ -002123a0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ -002123d0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ -002123f0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -00212420: 636f 6465 3e2d 206e 616d 653a 2027 556e  code>- name: 'Un
│ │ │ -00212430: 696e 7374 616c 6c20 7673 6674 7064 2050  install vsftpd P
│ │ │ -00212440: 6163 6b61 6765 3a20 456e 7375 7265 2076  ackage: Ensure v
│ │ │ -00212450: 7366 7470 6420 6973 2072 656d 6f76 6564  sftpd is removed
│ │ │ -00212460: 270a 2020 616e 7369 626c 652e 6275 696c  '.  ansible.buil
│ │ │ -00212470: 7469 6e2e 7061 636b 6167 653a 0a20 2020  tin.package:.   
│ │ │ -00212480: 206e 616d 653a 2076 7366 7470 640a 2020   name: vsftpd.  
│ │ │ -00212490: 2020 7374 6174 653a 2061 6273 656e 740a    state: absent.
│ │ │ -002124a0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -002124b0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -002124c0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -002124d0: 434d 2d37 0a20 202d 204e 4953 542d 3830  CM-7.  - NIST-80
│ │ │ -002124e0: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ -002124f0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -00212500: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ -00212510: 302d 3533 2d43 4d2d 372e 3128 6969 290a  0-53-CM-7.1(ii).
│ │ │ -00212520: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -00212530: 4941 2d35 2831 2928 6329 0a20 202d 204e  IA-5(1)(c).  - N
│ │ │ -00212540: 4953 542d 3830 302d 3533 2d49 412d 3528  IST-800-53-IA-5(
│ │ │ -00212550: 3129 2e31 2876 290a 2020 2d20 6469 7361  1).1(v).  - disa
│ │ │ -00212560: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ -00212570: 2068 6967 685f 7365 7665 7269 7479 0a20   high_severity. 
│ │ │ -00212580: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -00212590: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -002125a0: 7469 6f6e 0a20 202d 206e 6f5f 7265 626f  tion.  - no_rebo
│ │ │ -002125b0: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ -002125c0: 636b 6167 655f 7673 6674 7064 5f72 656d  ckage_vsftpd_rem
│ │ │ -002125d0: 6f76 6564 0a3c 2f63 6f64 653e 3c2f 7072  oved.
Remediation │ │ │ -00212690: 2053 6865 6c6c 2073 6372 6970 7420 e287 Shell script .. │ │ │ -002126a0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -00212720: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -00212740: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -00212790: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -002127c0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.# CAUTION: Th
│ │ │ -002127e0: 6973 2072 656d 6564 6961 7469 6f6e 2073  is remediation s
│ │ │ -002127f0: 6372 6970 7420 7769 6c6c 2072 656d 6f76  cript will remov
│ │ │ -00212800: 6520 7673 6674 7064 0a23 2066 726f 6d20  e vsftpd.# from 
│ │ │ -00212810: 7468 6520 7379 7374 656d 2c20 616e 6420  the system, and 
│ │ │ -00212820: 6d61 7920 7265 6d6f 7665 2061 6e79 2070  may remove any p
│ │ │ -00212830: 6163 6b61 6765 730a 2320 7468 6174 2064  ackages.# that d
│ │ │ -00212840: 6570 656e 6420 6f6e 2076 7366 7470 642e  epend on vsftpd.
│ │ │ -00212850: 2045 7865 6375 7465 2074 6869 730a 2320   Execute this.# 
│ │ │ -00212860: 7265 6d65 6469 6174 696f 6e20 4146 5445  remediation AFTE
│ │ │ -00212870: 5220 7465 7374 696e 6720 6f6e 2061 206e  R testing on a n
│ │ │ -00212880: 6f6e 2d70 726f 6475 6374 696f 6e0a 2320  on-production.# 
│ │ │ -00212890: 7379 7374 656d 210a 0a0a 6966 2072 706d  system!...if rpm
│ │ │ -002128a0: 202d 7120 2d2d 7175 6965 7420 2276 7366   -q --quiet "vsf
│ │ │ -002128b0: 7470 6422 203b 2074 6865 6e0a 646e 6620  tpd" ; then.dnf 
│ │ │ -002128c0: 7265 6d6f 7665 202d 7920 2d2d 6e6f 6175  remove -y --noau
│ │ │ -002128d0: 746f 7265 6d6f 7665 2022 7673 6674 7064  toremove "vsftpd
│ │ │ -002128e0: 220a 6669 0a3c 2f63 6f64 653e 3c2f 7072  ".fi.
< │ │ │ +00211ef0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ +00211f30: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 disable
low
Disr │ │ │ -00212750: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00212760: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -002127a0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -002127b0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Complexit │ │ │ +00211f00: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ +00211f20: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ +00211f50: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ +00211f70: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
│ │ │ +00211fa0: 3c63 6f64 653e 2d20 6e61 6d65 3a20 2755  - name: 'U
│ │ │ +00211fb0: 6e69 6e73 7461 6c6c 2076 7366 7470 6420  ninstall vsftpd 
│ │ │ +00211fc0: 5061 636b 6167 653a 2045 6e73 7572 6520  Package: Ensure 
│ │ │ +00211fd0: 7673 6674 7064 2069 7320 7265 6d6f 7665  vsftpd is remove
│ │ │ +00211fe0: 6427 0a20 2061 6e73 6962 6c65 2e62 7569  d'.  ansible.bui
│ │ │ +00211ff0: 6c74 696e 2e70 6163 6b61 6765 3a0a 2020  ltin.package:.  
│ │ │ +00212000: 2020 6e61 6d65 3a20 7673 6674 7064 0a20    name: vsftpd. 
│ │ │ +00212010: 2020 2073 7461 7465 3a20 6162 7365 6e74     state: absent
│ │ │ +00212020: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +00212030: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +00212040: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +00212050: 2d43 4d2d 370a 2020 2d20 4e49 5354 2d38  -CM-7.  - NIST-8
│ │ │ +00212060: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ +00212070: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +00212080: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ +00212090: 3030 2d35 332d 434d 2d37 2e31 2869 6929  00-53-CM-7.1(ii)
│ │ │ +002120a0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +002120b0: 2d49 412d 3528 3129 2863 290a 2020 2d20  -IA-5(1)(c).  - 
│ │ │ +002120c0: 4e49 5354 2d38 3030 2d35 332d 4941 2d35  NIST-800-53-IA-5
│ │ │ +002120d0: 2831 292e 3128 7629 0a20 202d 2064 6973  (1).1(v).  - dis
│ │ │ +002120e0: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ +002120f0: 2d20 6869 6768 5f73 6576 6572 6974 790a  - high_severity.
│ │ │ +00212100: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +00212110: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ +00212120: 7074 696f 6e0a 2020 2d20 6e6f 5f72 6562  ption.  - no_reb
│ │ │ +00212130: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ +00212140: 6163 6b61 6765 5f76 7366 7470 645f 7265  ackage_vsftpd_re
│ │ │ +00212150: 6d6f 7665 640a 3c2f 636f 6465 3e3c 2f70  moved.

Remediatio │ │ │ +00212210: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ +00212220: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ +002122b0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +002122d0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +002122e0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +002122f0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +00212300: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +00212320: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +00212350: 636f 6465 3e0a 696e 636c 7564 6520 7265  code>.include re
│ │ │ +00212360: 6d6f 7665 5f76 7366 7470 640a 0a63 6c61  move_vsftpd..cla
│ │ │ +00212370: 7373 2072 656d 6f76 655f 7673 6674 7064  ss remove_vsftpd
│ │ │ +00212380: 207b 0a20 2070 6163 6b61 6765 207b 2027   {.  package { '
│ │ │ +00212390: 7673 6674 7064 273a 0a20 2020 2065 6e73  vsftpd':.    ens
│ │ │ +002123a0: 7572 6520 3d26 6774 3b20 2770 7572 6765  ure => 'purge
│ │ │ +002123b0: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  d',.  }.}.
Remedi │ │ │ +00212470: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ +00212480: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
│ │ │ +00212500: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +00212510: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +00212520: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +00212560: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +00212570: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +00212590: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +002125a0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.# CAUTIO
│ │ │ +002125c0: 4e3a 2054 6869 7320 7265 6d65 6469 6174  N: This remediat
│ │ │ +002125d0: 696f 6e20 7363 7269 7074 2077 696c 6c20  ion script will 
│ │ │ +002125e0: 7265 6d6f 7665 2076 7366 7470 640a 2320  remove vsftpd.# 
│ │ │ +002125f0: 6672 6f6d 2074 6865 2073 7973 7465 6d2c  from the system,
│ │ │ +00212600: 2061 6e64 206d 6179 2072 656d 6f76 6520   and may remove 
│ │ │ +00212610: 616e 7920 7061 636b 6167 6573 0a23 2074  any packages.# t
│ │ │ +00212620: 6861 7420 6465 7065 6e64 206f 6e20 7673  hat depend on vs
│ │ │ +00212630: 6674 7064 2e20 4578 6563 7574 6520 7468  ftpd. Execute th
│ │ │ +00212640: 6973 0a23 2072 656d 6564 6961 7469 6f6e  is.# remediation
│ │ │ +00212650: 2041 4654 4552 2074 6573 7469 6e67 206f   AFTER testing o
│ │ │ +00212660: 6e20 6120 6e6f 6e2d 7072 6f64 7563 7469  n a non-producti
│ │ │ +00212670: 6f6e 0a23 2073 7973 7465 6d21 0a0a 0a69  on.# system!...i
│ │ │ +00212680: 6620 7270 6d20 2d71 202d 2d71 7569 6574  f rpm -q --quiet
│ │ │ +00212690: 2022 7673 6674 7064 2220 3b20 7468 656e   "vsftpd" ; then
│ │ │ +002126a0: 0a64 6e66 2072 656d 6f76 6520 2d79 202d  .dnf remove -y -
│ │ │ +002126b0: 2d6e 6f61 7574 6f72 656d 6f76 6520 2276  -noautoremove "v
│ │ │ +002126c0: 7366 7470 6422 0a66 690a 3c2f 636f 6465  sftpd".fi.
Remedi │ │ │ +00212780: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ +00212790: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +00212820: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +00212830: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +00212850: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +00212870: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +00212880: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +002128c0: 3c70 7265 3e3c 636f 6465 3e0a 0a70 6163
..pac
│ │ │ +002128d0: 6b61 6765 202d 2d72 656d 6f76 653d 7673  kage --remove=vs
│ │ │ +002128e0: 6674 7064 0a3c 2f63 6f64 653e 3c2f 7072  ftpd.
│ │ │ 00212910: 3c2f 7461 626c 653e 3c2f 7464 3e3c 2f74 Remediation │ │ │ -002132f0: 2041 6e61 636f 6e64 6120 736e 6970 7065 Anaconda snippe │ │ │ -00213300: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -00213380: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -00213390: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -002133b0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -002133c0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -002133e0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -00213400: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ -00213430: 3c63 6f64 653e 0a0a 7061 636b 6167 6520  ..package 
│ │ │ -00213440: 2d2d 7265 6d6f 7665 3d66 7470 0a3c 2f63  --remove=ftp.
│ │ │ -00213460: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -00213500: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ -00213510: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -00213520: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -002135a0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -002135d0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -002135f0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -00213600: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -00213620: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -00213630: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.inc
│ │ │ -00213650: 6c75 6465 2072 656d 6f76 655f 6674 700a  lude remove_ftp.
│ │ │ -00213660: 0a63 6c61 7373 2072 656d 6f76 655f 6674  .class remove_ft
│ │ │ -00213670: 7020 7b0a 2020 7061 636b 6167 6520 7b20  p {.  package { 
│ │ │ -00213680: 2766 7470 273a 0a20 2020 2065 6e73 7572  'ftp':.    ensur
│ │ │ -00213690: 6520 3d26 6774 3b20 2770 7572 6765 6427  e => 'purged'
│ │ │ -002136a0: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ -002136b0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ -00213760: 696f 6e20 416e 7369 626c 6520 736e 6970 ion Ansible snip │ │ │ -00213770: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00213780: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00213790: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -002137a0: 7365 2220 6964 3d22 6964 3635 3422 3e3c se" id="id654">< │ │ │ -002137b0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -002137c0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -002137d0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -002137e0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -002137f0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -00213800: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -00213810: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -00213850: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -00213860: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -00213880: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ -00213890: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 - name: │ │ │ -002138b0: 2752 656d 6f76 6520 6674 7020 5061 636b 'Remove ftp Pack │ │ │ -002138c0: 6167 653a 2045 6e73 7572 6520 6674 7020 age: Ensure ftp │ │ │ -002138d0: 6973 2072 656d 6f76 6564 270a 2020 616e is removed'. an │ │ │ -002138e0: 7369 626c 652e 6275 696c 7469 6e2e 7061 sible.builtin.pa │ │ │ -002138f0: 636b 6167 653a 0a20 2020 206e 616d 653a ckage:. name: │ │ │ -00213900: 2066 7470 0a20 2020 2073 7461 7465 3a20 ftp. state: │ │ │ -00213910: 6162 7365 6e74 0a20 2074 6167 733a 0a20 absent. tags:. │ │ │ -00213920: 202d 2050 4349 2d44 5353 7634 2d32 2e32 - PCI-DSSv4-2.2 │ │ │ -00213930: 0a20 202d 2050 4349 2d44 5353 7634 2d32 . - PCI-DSSv4-2 │ │ │ -00213940: 2e32 2e34 0a20 202d 2064 6973 6162 6c65 .2.4. - disable │ │ │ -00213950: 5f73 7472 6174 6567 790a 2020 2d20 6c6f _strategy. - lo │ │ │ -00213960: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ -00213970: 206c 6f77 5f64 6973 7275 7074 696f 6e0a low_disruption. │ │ │ -00213980: 2020 2d20 6c6f 775f 7365 7665 7269 7479 - low_severity │ │ │ -00213990: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ -002139a0: 6565 6465 640a 2020 2d20 7061 636b 6167 eeded. - packag │ │ │ -002139b0: 655f 6674 705f 7265 6d6f 7665 640a 3c2f e_ftp_removed.
Re │ │ │ -00213a70: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ -00213a80: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
Comp │ │ │ -00213b10: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -00213b20: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -00213b40: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -00213b60: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -00213b70: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -00213bb0: 3c70 7265 3e3c 636f 6465 3e0a 2320 4341
.# CA
│ │ │ -00213bc0: 5554 494f 4e3a 2054 6869 7320 7265 6d65  UTION: This reme
│ │ │ -00213bd0: 6469 6174 696f 6e20 7363 7269 7074 2077  diation script w
│ │ │ -00213be0: 696c 6c20 7265 6d6f 7665 2066 7470 0a23  ill remove ftp.#
│ │ │ -00213bf0: 2066 726f 6d20 7468 6520 7379 7374 656d   from the system
│ │ │ -00213c00: 2c20 616e 6420 6d61 7920 7265 6d6f 7665  , and may remove
│ │ │ -00213c10: 2061 6e79 2070 6163 6b61 6765 730a 2320   any packages.# 
│ │ │ -00213c20: 7468 6174 2064 6570 656e 6420 6f6e 2066  that depend on f
│ │ │ -00213c30: 7470 2e20 4578 6563 7574 6520 7468 6973  tp. Execute this
│ │ │ -00213c40: 0a23 2072 656d 6564 6961 7469 6f6e 2041  .# remediation A
│ │ │ -00213c50: 4654 4552 2074 6573 7469 6e67 206f 6e20  FTER testing on 
│ │ │ -00213c60: 6120 6e6f 6e2d 7072 6f64 7563 7469 6f6e  a non-production
│ │ │ -00213c70: 0a23 2073 7973 7465 6d21 0a0a 0a69 6620  .# system!...if 
│ │ │ -00213c80: 7270 6d20 2d71 202d 2d71 7569 6574 2022  rpm -q --quiet "
│ │ │ -00213c90: 6674 7022 203b 2074 6865 6e0a 646e 6620  ftp" ; then.dnf 
│ │ │ -00213ca0: 7265 6d6f 7665 202d 7920 2d2d 6e6f 6175  remove -y --noau
│ │ │ -00213cb0: 746f 7265 6d6f 7665 2022 6674 7022 0a66  toremove "ftp".f
│ │ │ -00213cc0: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +002132f0: 2041 6e73 6962 6c65 2073 6e69 7070 6574 Ansible snippet │ │ │ +00213300: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ +00213390: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +002133b0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +002133c0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +002133d0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +002133e0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +00213400: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +00213430: 636f 6465 3e2d 206e 616d 653a 2027 5265  code>- name: 'Re
│ │ │ +00213440: 6d6f 7665 2066 7470 2050 6163 6b61 6765  move ftp Package
│ │ │ +00213450: 3a20 456e 7375 7265 2066 7470 2069 7320  : Ensure ftp is 
│ │ │ +00213460: 7265 6d6f 7665 6427 0a20 2061 6e73 6962  removed'.  ansib
│ │ │ +00213470: 6c65 2e62 7569 6c74 696e 2e70 6163 6b61  le.builtin.packa
│ │ │ +00213480: 6765 3a0a 2020 2020 6e61 6d65 3a20 6674  ge:.    name: ft
│ │ │ +00213490: 700a 2020 2020 7374 6174 653a 2061 6273  p.    state: abs
│ │ │ +002134a0: 656e 740a 2020 7461 6773 3a0a 2020 2d20  ent.  tags:.  - 
│ │ │ +002134b0: 5043 492d 4453 5376 342d 322e 320a 2020  PCI-DSSv4-2.2.  
│ │ │ +002134c0: 2d20 5043 492d 4453 5376 342d 322e 322e  - PCI-DSSv4-2.2.
│ │ │ +002134d0: 340a 2020 2d20 6469 7361 626c 655f 7374  4.  - disable_st
│ │ │ +002134e0: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ +002134f0: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ +00213500: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +00213510: 206c 6f77 5f73 6576 6572 6974 790a 2020   low_severity.  
│ │ │ +00213520: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +00213530: 6564 0a20 202d 2070 6163 6b61 6765 5f66  ed.  - package_f
│ │ │ +00213540: 7470 5f72 656d 6f76 6564 0a3c 2f63 6f64  tp_removed.
Remed │ │ │ +00213600: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ +00213610: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ +002136c0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +002136e0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +00213710: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +002136a0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +002136b0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +002136d0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +002136f0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +00213700: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ +00213740: 7072 653e 3c63 6f64 653e 0a69 6e63 6c75 pre>.inclu │ │ │ +00213750: 6465 2072 656d 6f76 655f 6674 700a 0a63 de remove_ftp..c │ │ │ +00213760: 6c61 7373 2072 656d 6f76 655f 6674 7020 lass remove_ftp │ │ │ +00213770: 7b0a 2020 7061 636b 6167 6520 7b20 2766 {. package { 'f │ │ │ +00213780: 7470 273a 0a20 2020 2065 6e73 7572 6520 tp':. ensure │ │ │ +00213790: 3d26 6774 3b20 2770 7572 6765 6427 2c0a => 'purged',. │ │ │ +002137a0: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 }.}.

Remediatio │ │ │ +00213860: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ +00213870: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +002138f0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +00213910: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +00213960: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +00213990: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +00213900: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00213920: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +00213970: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +00213980: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.# CAUTION: T
│ │ │ +002139b0: 6869 7320 7265 6d65 6469 6174 696f 6e20  his remediation 
│ │ │ +002139c0: 7363 7269 7074 2077 696c 6c20 7265 6d6f  script will remo
│ │ │ +002139d0: 7665 2066 7470 0a23 2066 726f 6d20 7468  ve ftp.# from th
│ │ │ +002139e0: 6520 7379 7374 656d 2c20 616e 6420 6d61  e system, and ma
│ │ │ +002139f0: 7920 7265 6d6f 7665 2061 6e79 2070 6163  y remove any pac
│ │ │ +00213a00: 6b61 6765 730a 2320 7468 6174 2064 6570  kages.# that dep
│ │ │ +00213a10: 656e 6420 6f6e 2066 7470 2e20 4578 6563  end on ftp. Exec
│ │ │ +00213a20: 7574 6520 7468 6973 0a23 2072 656d 6564  ute this.# remed
│ │ │ +00213a30: 6961 7469 6f6e 2041 4654 4552 2074 6573  iation AFTER tes
│ │ │ +00213a40: 7469 6e67 206f 6e20 6120 6e6f 6e2d 7072  ting on a non-pr
│ │ │ +00213a50: 6f64 7563 7469 6f6e 0a23 2073 7973 7465  oduction.# syste
│ │ │ +00213a60: 6d21 0a0a 0a69 6620 7270 6d20 2d71 202d  m!...if rpm -q -
│ │ │ +00213a70: 2d71 7569 6574 2022 6674 7022 203b 2074  -quiet "ftp" ; t
│ │ │ +00213a80: 6865 6e0a 646e 6620 7265 6d6f 7665 202d  hen.dnf remove -
│ │ │ +00213a90: 7920 2d2d 6e6f 6175 746f 7265 6d6f 7665  y --noautoremove
│ │ │ +00213aa0: 2022 6674 7022 0a66 690a 3c2f 636f 6465   "ftp".fi.
Remedi │ │ │ +00213b60: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ +00213b70: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +00213c00: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +00213c10: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +00213c30: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +00213c50: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +00213c60: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +00213ca0: 3c70 7265 3e3c 636f 6465 3e0a 0a70 6163
..pac
│ │ │ +00213cb0: 6b61 6765 202d 2d72 656d 6f76 653d 6674  kage --remove=ft
│ │ │ +00213cc0: 700a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  p.
< │ │ │ 00213cd0: 2f64 6976 3e3c 2f64 6976 3e3c 2f74 643e /div>
│ │ │ 00213ce0: 3c2f 7472 3e3c 2f74 626f 6479 3e3c 2f74 < │ │ │ 00213d00: 7472 2064 6174 612d 7474 2d69 643d 2263 tr data-tt-id="c │ │ │ 00213d10: 6869 6c64 7265 6e2d 7863 6364 665f 6f72 hildren-xccdf_or │ │ │ 00213d20: 672e 7373 6770 726f 6a65 6374 2e63 6f6e g.ssgproject.con │ │ │ 00213d30: 7465 6e74 5f67 726f 7570 5f68 7474 7022 tent_group_http" │ │ │ @@ -136488,176 +136488,176 @@ │ │ │ 00215270: 2d74 6172 6765 743d 2223 6964 3635 3722 -target="#id657" │ │ │ 00215280: 2074 6162 696e 6465 783d 2230 2220 726f tabindex="0" ro │ │ │ 00215290: 6c65 3d22 6275 7474 6f6e 2220 6172 6961 le="button" aria │ │ │ 002152a0: 2d65 7870 616e 6465 643d 2266 616c 7365 -expanded="false │ │ │ 002152b0: 2220 7469 746c 653d 2241 6374 6976 6174 " title="Activat │ │ │ 002152c0: 6520 746f 2072 6576 6561 6c22 2068 7265 e to reveal" hre │ │ │ 002152d0: 663d 2223 2122 3e52 656d 6564 6961 7469 f="#!">Remediati │ │ │ -002152e0: 6f6e 2041 6e61 636f 6e64 6120 736e 6970 on Anaconda snip │ │ │ -002152f0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00215300: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00215310: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00215320: 7365 2220 6964 3d22 6964 3635 3722 3e3c se" id="id657">< │ │ │ -00215330: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -00215340: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -00215350: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -00215360: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -00215370: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -00215380: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -00215390: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -002153d0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -002153e0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -00215400: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ -00215410: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 ..packag │ │ │ -00215430: 6520 2d2d 7265 6d6f 7665 3d68 7474 7064 e --remove=httpd │ │ │ -00215440: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .Remediation Pup │ │ │ -00215500: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ -00215510: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -002155e0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -002155f0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -00215640: 0a69 6e63 6c75 6465 2072 656d 6f76 655f  .include remove_
│ │ │ -00215650: 6874 7470 640a 0a63 6c61 7373 2072 656d  httpd..class rem
│ │ │ -00215660: 6f76 655f 6874 7470 6420 7b0a 2020 7061  ove_httpd {.  pa
│ │ │ -00215670: 636b 6167 6520 7b20 2768 7474 7064 273a  ckage { 'httpd':
│ │ │ -00215680: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ -00215690: 3b20 2770 7572 6765 6427 2c0a 2020 7d0a  ; 'purged',.  }.
│ │ │ -002156a0: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -002156b0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -00215760: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -00215770: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
Complexity:low
Disrup │ │ │ -002155c0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -002155d0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00215610: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -00215620: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ -002157f0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -00215810: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -00215860: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -00215890: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: 'Unins
│ │ │ -002158b0: 7461 6c6c 2068 7474 7064 2050 6163 6b61  tall httpd Packa
│ │ │ -002158c0: 6765 3a20 456e 7375 7265 2068 7474 7064  ge: Ensure httpd
│ │ │ -002158d0: 2069 7320 7265 6d6f 7665 6427 0a20 2061   is removed'.  a
│ │ │ -002158e0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ -002158f0: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ -00215900: 3a20 6874 7470 640a 2020 2020 7374 6174  : httpd.    stat
│ │ │ -00215910: 653a 2061 6273 656e 740a 2020 7461 6773  e: absent.  tags
│ │ │ -00215920: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -00215930: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ -00215940: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ -00215950: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -00215960: 332d 434d 2d37 2862 290a 2020 2d20 6469  3-CM-7(b).  - di
│ │ │ -00215970: 7361 626c 655f 7374 7261 7465 6779 0a20  sable_strategy. 
│ │ │ -00215980: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -00215990: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -002159a0: 7469 6f6e 0a20 202d 206e 6f5f 7265 626f  tion.  - no_rebo
│ │ │ -002159b0: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ -002159c0: 636b 6167 655f 6874 7470 645f 7265 6d6f  ckage_httpd_remo
│ │ │ -002159d0: 7665 640a 2020 2d20 756e 6b6e 6f77 6e5f  ved.  - unknown_
│ │ │ -002159e0: 7365 7665 7269 7479 0a3c 2f63 6f64 653e  severity.
│ │ │ -002159f0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -00215aa0: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ -00215ab0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -00215b30: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr> │ │ │ -00215b70: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 disable
low
Disr │ │ │ -00215820: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00215830: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -00215870: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -00215880: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Complexit │ │ │ -00215b40: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ -00215b60: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ -00215b90: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ -00215bb0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
│ │ │ -00215be0: 3c63 6f64 653e 0a23 2043 4155 5449 4f4e  .# CAUTION
│ │ │ -00215bf0: 3a20 5468 6973 2072 656d 6564 6961 7469  : This remediati
│ │ │ -00215c00: 6f6e 2073 6372 6970 7420 7769 6c6c 2072  on script will r
│ │ │ -00215c10: 656d 6f76 6520 6874 7470 640a 2320 6672  emove httpd.# fr
│ │ │ -00215c20: 6f6d 2074 6865 2073 7973 7465 6d2c 2061  om the system, a
│ │ │ -00215c30: 6e64 206d 6179 2072 656d 6f76 6520 616e  nd may remove an
│ │ │ -00215c40: 7920 7061 636b 6167 6573 0a23 2074 6861  y packages.# tha
│ │ │ -00215c50: 7420 6465 7065 6e64 206f 6e20 6874 7470  t depend on http
│ │ │ -00215c60: 642e 2045 7865 6375 7465 2074 6869 730a  d. Execute this.
│ │ │ -00215c70: 2320 7265 6d65 6469 6174 696f 6e20 4146  # remediation AF
│ │ │ -00215c80: 5445 5220 7465 7374 696e 6720 6f6e 2061  TER testing on a
│ │ │ -00215c90: 206e 6f6e 2d70 726f 6475 6374 696f 6e0a   non-production.
│ │ │ -00215ca0: 2320 7379 7374 656d 210a 0a0a 6966 2072  # system!...if r
│ │ │ -00215cb0: 706d 202d 7120 2d2d 7175 6965 7420 2268  pm -q --quiet "h
│ │ │ -00215cc0: 7474 7064 2220 3b20 7468 656e 0a64 6e66  ttpd" ; then.dnf
│ │ │ -00215cd0: 2072 656d 6f76 6520 2d79 202d 2d6e 6f61   remove -y --noa
│ │ │ -00215ce0: 7574 6f72 656d 6f76 6520 2268 7474 7064  utoremove "httpd
│ │ │ -00215cf0: 220a 6669 0a3c 2f63 6f64 653e 3c2f 7072  ".fi.
│ │ │ +00215370: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +00215380: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +00215390: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +002153d0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +002153e0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +00215400: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +00215410: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
- name: '
│ │ │ +00215430: 556e 696e 7374 616c 6c20 6874 7470 6420  Uninstall httpd 
│ │ │ +00215440: 5061 636b 6167 653a 2045 6e73 7572 6520  Package: Ensure 
│ │ │ +00215450: 6874 7470 6420 6973 2072 656d 6f76 6564  httpd is removed
│ │ │ +00215460: 270a 2020 616e 7369 626c 652e 6275 696c  '.  ansible.buil
│ │ │ +00215470: 7469 6e2e 7061 636b 6167 653a 0a20 2020  tin.package:.   
│ │ │ +00215480: 206e 616d 653a 2068 7474 7064 0a20 2020   name: httpd.   
│ │ │ +00215490: 2073 7461 7465 3a20 6162 7365 6e74 0a20   state: absent. 
│ │ │ +002154a0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +002154b0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +002154c0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +002154d0: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +002154e0: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +002154f0: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ +00215500: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +00215510: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +00215520: 6973 7275 7074 696f 6e0a 2020 2d20 6e6f  isruption.  - no
│ │ │ +00215530: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ +00215540: 202d 2070 6163 6b61 6765 5f68 7474 7064   - package_httpd
│ │ │ +00215550: 5f72 656d 6f76 6564 0a20 202d 2075 6e6b  _removed.  - unk
│ │ │ +00215560: 6e6f 776e 5f73 6576 6572 6974 790a 3c2f  nown_severity.
Re │ │ │ +00215620: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ +00215630: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +00215640: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +002156e0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +00215730: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.in
│ │ │ +00215770: 636c 7564 6520 7265 6d6f 7665 5f68 7474  clude remove_htt
│ │ │ +00215780: 7064 0a0a 636c 6173 7320 7265 6d6f 7665  pd..class remove
│ │ │ +00215790: 5f68 7474 7064 207b 0a20 2070 6163 6b61  _httpd {.  packa
│ │ │ +002157a0: 6765 207b 2027 6874 7470 6427 3a0a 2020  ge { 'httpd':.  
│ │ │ +002157b0: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ +002157c0: 7075 7267 6564 272c 0a20 207d 0a7d 0a3c  purged',.  }.}.<
│ │ │ +002157d0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +00215880: 656d 6564 6961 7469 6f6e 2053 6865 6c6c emediation Shell │ │ │ +00215890: 2073 6372 6970 7420 e287 b23c 2f61 3e3c script ...< │ │ │ +002158a0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Co │ │ │ +002156c0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +002156f0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +00215710: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +00215720: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +00215740: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +00215750: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Com │ │ │ +00215920: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +00215950: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +00215970: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +00215980: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +002159a0: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +002159b0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.# C
│ │ │ +002159d0: 4155 5449 4f4e 3a20 5468 6973 2072 656d  AUTION: This rem
│ │ │ +002159e0: 6564 6961 7469 6f6e 2073 6372 6970 7420  ediation script 
│ │ │ +002159f0: 7769 6c6c 2072 656d 6f76 6520 6874 7470  will remove http
│ │ │ +00215a00: 640a 2320 6672 6f6d 2074 6865 2073 7973  d.# from the sys
│ │ │ +00215a10: 7465 6d2c 2061 6e64 206d 6179 2072 656d  tem, and may rem
│ │ │ +00215a20: 6f76 6520 616e 7920 7061 636b 6167 6573  ove any packages
│ │ │ +00215a30: 0a23 2074 6861 7420 6465 7065 6e64 206f  .# that depend o
│ │ │ +00215a40: 6e20 6874 7470 642e 2045 7865 6375 7465  n httpd. Execute
│ │ │ +00215a50: 2074 6869 730a 2320 7265 6d65 6469 6174   this.# remediat
│ │ │ +00215a60: 696f 6e20 4146 5445 5220 7465 7374 696e  ion AFTER testin
│ │ │ +00215a70: 6720 6f6e 2061 206e 6f6e 2d70 726f 6475  g on a non-produ
│ │ │ +00215a80: 6374 696f 6e0a 2320 7379 7374 656d 210a  ction.# system!.
│ │ │ +00215a90: 0a0a 6966 2072 706d 202d 7120 2d2d 7175  ..if rpm -q --qu
│ │ │ +00215aa0: 6965 7420 2268 7474 7064 2220 3b20 7468  iet "httpd" ; th
│ │ │ +00215ab0: 656e 0a64 6e66 2072 656d 6f76 6520 2d79  en.dnf remove -y
│ │ │ +00215ac0: 202d 2d6e 6f61 7574 6f72 656d 6f76 6520   --noautoremove 
│ │ │ +00215ad0: 2268 7474 7064 220a 6669 0a3c 2f63 6f64  "httpd".fi.
Remed │ │ │ +00215b90: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ +00215ba0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +00215bb0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ +00215c30: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +00215c60: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +00215c80: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +00215c90: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +00215cb0: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +00215cc0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
..pa
│ │ │ +00215ce0: 636b 6167 6520 2d2d 7265 6d6f 7665 3d68  ckage --remove=h
│ │ │ +00215cf0: 7474 7064 0a3c 2f63 6f64 653e 3c2f 7072  ttpd.
│ │ │ 00215d20: 3c2f 7461 626c 653e 3c2f 7464 3e3c 2f74 Remediat │ │ │ -00216d90: 696f 6e20 416e 6163 6f6e 6461 2073 6e69 ion Anaconda sni │ │ │ -00216da0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -00216db0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -00216de0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -00216e50: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -00216e70: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -00216ea0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -00216e30: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -00216e40: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -00216e80: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -00216e90: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

..packa │ │ │ -00216ee0: 6765 202d 2d72 656d 6f76 653d 6e67 696e ge --remove=ngin │ │ │ -00216ef0: 780a 3c2f 636f 6465 3e3c 2f70 7265 3e3c x.< │ │ │ -00216f00: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ -00216fb0: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ -00216fc0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61

Complexity: │ │ │ -00217090: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -002170a0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.include remove
│ │ │ -00217100: 5f6e 6769 6e78 0a0a 636c 6173 7320 7265  _nginx..class re
│ │ │ -00217110: 6d6f 7665 5f6e 6769 6e78 207b 0a20 2070  move_nginx {.  p
│ │ │ -00217120: 6163 6b61 6765 207b 2027 6e67 696e 7827  ackage { 'nginx'
│ │ │ -00217130: 3a0a 2020 2020 656e 7375 7265 203d 2667  :.    ensure =&g
│ │ │ -00217140: 743b 2027 7075 7267 6564 272c 0a20 207d  t; 'purged',.  }
│ │ │ -00217150: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e  .}.
│ │ │ -00217160: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation A │ │ │ -00217210: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ -00217220: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
low
Disru │ │ │ -00217070: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -00217080: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -002170c0: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -002170d0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ -002172a0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -002172c0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -00217310: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -00217340: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -002172b0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -002172d0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -00217320: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -00217330: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
- name: 'Unin
│ │ │ -00217360: 7374 616c 6c20 6e67 696e 7820 5061 636b  stall nginx Pack
│ │ │ -00217370: 6167 653a 2045 6e73 7572 6520 6e67 696e  age: Ensure ngin
│ │ │ -00217380: 7820 6973 2072 656d 6f76 6564 270a 2020  x is removed'.  
│ │ │ -00217390: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -002173a0: 7061 636b 6167 653a 0a20 2020 206e 616d  package:.    nam
│ │ │ -002173b0: 653a 206e 6769 6e78 0a20 2020 2073 7461  e: nginx.    sta
│ │ │ -002173c0: 7465 3a20 6162 7365 6e74 0a20 2074 6167  te: absent.  tag
│ │ │ -002173d0: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ -002173e0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ -002173f0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -00217400: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -00217410: 3533 2d43 4d2d 3728 6229 0a20 202d 2064  53-CM-7(b).  - d
│ │ │ -00217420: 6973 6162 6c65 5f73 7472 6174 6567 790a  isable_strategy.
│ │ │ -00217430: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -00217440: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ -00217450: 7074 696f 6e0a 2020 2d20 6e6f 5f72 6562  ption.  - no_reb
│ │ │ -00217460: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ -00217470: 6163 6b61 6765 5f6e 6769 6e78 5f72 656d  ackage_nginx_rem
│ │ │ -00217480: 6f76 6564 0a20 202d 2075 6e6b 6e6f 776e  oved.  - unknown
│ │ │ -00217490: 5f73 6576 6572 6974 790a 3c2f 636f 6465  _severity.
Remedi │ │ │ -00217550: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ -00217560: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
│ │ │ -002175e0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -002175f0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -00217600: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -00217640: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -00217650: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -00217670: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -00217680: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.# CAUTIO
│ │ │ -002176a0: 4e3a 2054 6869 7320 7265 6d65 6469 6174  N: This remediat
│ │ │ -002176b0: 696f 6e20 7363 7269 7074 2077 696c 6c20  ion script will 
│ │ │ -002176c0: 7265 6d6f 7665 206e 6769 6e78 0a23 2066  remove nginx.# f
│ │ │ -002176d0: 726f 6d20 7468 6520 7379 7374 656d 2c20  rom the system, 
│ │ │ -002176e0: 616e 6420 6d61 7920 7265 6d6f 7665 2061  and may remove a
│ │ │ -002176f0: 6e79 2070 6163 6b61 6765 730a 2320 7468  ny packages.# th
│ │ │ -00217700: 6174 2064 6570 656e 6420 6f6e 206e 6769  at depend on ngi
│ │ │ -00217710: 6e78 2e20 4578 6563 7574 6520 7468 6973  nx. Execute this
│ │ │ -00217720: 0a23 2072 656d 6564 6961 7469 6f6e 2041  .# remediation A
│ │ │ -00217730: 4654 4552 2074 6573 7469 6e67 206f 6e20  FTER testing on 
│ │ │ -00217740: 6120 6e6f 6e2d 7072 6f64 7563 7469 6f6e  a non-production
│ │ │ -00217750: 0a23 2073 7973 7465 6d21 0a0a 0a69 6620  .# system!...if 
│ │ │ -00217760: 7270 6d20 2d71 202d 2d71 7569 6574 2022  rpm -q --quiet "
│ │ │ -00217770: 6e67 696e 7822 203b 2074 6865 6e0a 646e  nginx" ; then.dn
│ │ │ -00217780: 6620 7265 6d6f 7665 202d 7920 2d2d 6e6f  f remove -y --no
│ │ │ -00217790: 6175 746f 7265 6d6f 7665 2022 6e67 696e  autoremove "ngin
│ │ │ -002177a0: 7822 0a66 690a 3c2f 636f 6465 3e3c 2f70  x".fi.


< │ │ │ +00216db0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +00216dc0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +00216dd0: 7365 2220 6964 3d22 6964 3636 3222 3e3c se" id="id662">< │ │ │ +00216de0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +00216df0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +00216e00: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +00216e10: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +00216e20: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +00216e30: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +00216e40: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ +00216e80: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +00216e90: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ +00216eb0: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ +00216ec0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 - name: │ │ │ +00216ee0: 2755 6e69 6e73 7461 6c6c 206e 6769 6e78 'Uninstall nginx │ │ │ +00216ef0: 2050 6163 6b61 6765 3a20 456e 7375 7265 Package: Ensure │ │ │ +00216f00: 206e 6769 6e78 2069 7320 7265 6d6f 7665 nginx is remove │ │ │ +00216f10: 6427 0a20 2061 6e73 6962 6c65 2e62 7569 d'. ansible.bui │ │ │ +00216f20: 6c74 696e 2e70 6163 6b61 6765 3a0a 2020 ltin.package:. │ │ │ +00216f30: 2020 6e61 6d65 3a20 6e67 696e 780a 2020 name: nginx. │ │ │ +00216f40: 2020 7374 6174 653a 2061 6273 656e 740a state: absent. │ │ │ +00216f50: 2020 7461 6773 3a0a 2020 2d20 4e49 5354 tags:. - NIST │ │ │ +00216f60: 2d38 3030 2d35 332d 434d 2d36 2861 290a -800-53-CM-6(a). │ │ │ +00216f70: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ +00216f80: 434d 2d37 2861 290a 2020 2d20 4e49 5354 CM-7(a). - NIST │ │ │ +00216f90: 2d38 3030 2d35 332d 434d 2d37 2862 290a -800-53-CM-7(b). │ │ │ +00216fa0: 2020 2d20 6469 7361 626c 655f 7374 7261 - disable_stra │ │ │ +00216fb0: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d tegy. - low_com │ │ │ +00216fc0: 706c 6578 6974 790a 2020 2d20 6c6f 775f plexity. - low_ │ │ │ +00216fd0: 6469 7372 7570 7469 6f6e 0a20 202d 206e disruption. - n │ │ │ +00216fe0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a o_reboot_needed. │ │ │ +00216ff0: 2020 2d20 7061 636b 6167 655f 6e67 696e - package_ngin │ │ │ +00217000: 785f 7265 6d6f 7665 640a 2020 2d20 756e x_removed. - un │ │ │ +00217010: 6b6e 6f77 6e5f 7365 7665 7269 7479 0a3c known_severity.< │ │ │ +00217020: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469 /code>
R │ │ │ +002170d0: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ +002170e0: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
< │ │ │ +00217180: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00217190: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +002171e0: 3c74 723e 3c74 683e 5374 7261 7465 6779
.i
│ │ │ +00217220: 6e63 6c75 6465 2072 656d 6f76 655f 6e67  nclude remove_ng
│ │ │ +00217230: 696e 780a 0a63 6c61 7373 2072 656d 6f76  inx..class remov
│ │ │ +00217240: 655f 6e67 696e 7820 7b0a 2020 7061 636b  e_nginx {.  pack
│ │ │ +00217250: 6167 6520 7b20 276e 6769 6e78 273a 0a20  age { 'nginx':. 
│ │ │ +00217260: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ +00217270: 2770 7572 6765 6427 2c0a 2020 7d0a 7d0a  'purged',.  }.}.
│ │ │ +00217280: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +00217330: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ +00217340: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ +00217350: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
C │ │ │ +00217170: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +002171a0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +002171b0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +002171f0: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ +00217200: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
low< │ │ │ +002173f0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +00217440: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.# 
│ │ │ +00217480: 4341 5554 494f 4e3a 2054 6869 7320 7265  CAUTION: This re
│ │ │ +00217490: 6d65 6469 6174 696f 6e20 7363 7269 7074  mediation script
│ │ │ +002174a0: 2077 696c 6c20 7265 6d6f 7665 206e 6769   will remove ngi
│ │ │ +002174b0: 6e78 0a23 2066 726f 6d20 7468 6520 7379  nx.# from the sy
│ │ │ +002174c0: 7374 656d 2c20 616e 6420 6d61 7920 7265  stem, and may re
│ │ │ +002174d0: 6d6f 7665 2061 6e79 2070 6163 6b61 6765  move any package
│ │ │ +002174e0: 730a 2320 7468 6174 2064 6570 656e 6420  s.# that depend 
│ │ │ +002174f0: 6f6e 206e 6769 6e78 2e20 4578 6563 7574  on nginx. Execut
│ │ │ +00217500: 6520 7468 6973 0a23 2072 656d 6564 6961  e this.# remedia
│ │ │ +00217510: 7469 6f6e 2041 4654 4552 2074 6573 7469  tion AFTER testi
│ │ │ +00217520: 6e67 206f 6e20 6120 6e6f 6e2d 7072 6f64  ng on a non-prod
│ │ │ +00217530: 7563 7469 6f6e 0a23 2073 7973 7465 6d21  uction.# system!
│ │ │ +00217540: 0a0a 0a69 6620 7270 6d20 2d71 202d 2d71  ...if rpm -q --q
│ │ │ +00217550: 7569 6574 2022 6e67 696e 7822 203b 2074  uiet "nginx" ; t
│ │ │ +00217560: 6865 6e0a 646e 6620 7265 6d6f 7665 202d  hen.dnf remove -
│ │ │ +00217570: 7920 2d2d 6e6f 6175 746f 7265 6d6f 7665  y --noautoremove
│ │ │ +00217580: 2022 6e67 696e 7822 0a66 690a 3c2f 636f   "nginx".fi.
< │ │ │ +002175a0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +002175b0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +002175c0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +002175d0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +002175e0: 6436 3635 2220 7461 6269 6e64 6578 3d22 d665" tabindex=" │ │ │ +002175f0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +00217600: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +00217610: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +00217620: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +00217630: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +00217640: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ +00217650: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +00217660: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
Co │ │ │ +002173d0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +00217400: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +00217420: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +00217430: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +00217450: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +00217460: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
low< │ │ │ +00217700: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +00217750: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
..p
│ │ │ +00217790: 6163 6b61 6765 202d 2d72 656d 6f76 653d  ackage --remove=
│ │ │ +002177a0: 6e67 696e 780a 3c2f 636f 6465 3e3c 2f70  nginx.

< │ │ │ 002177c0: 2f74 643e 3c2f 7472 3e3c 2f74 626f 6479 /td>
Co │ │ │ +002176e0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +00217710: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +00217730: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +00217740: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +00217760: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +00217770: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Re │ │ │ -00218740: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ -00218750: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
│ │ │ -002187f0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ -00218890: 0a70 6163 6b61 6765 202d 2d72 656d 6f76  .package --remov
│ │ │ -002188a0: 653d 6379 7275 732d 696d 6170 640a 3c2f  e=cyrus-imapd.
Re │ │ │ -00218960: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ -00218970: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -00218980: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
│ │ │ -002187e0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00218810: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00218820: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00218860: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -00218870: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
low< │ │ │ -00218a20: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -00218a70: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.in
│ │ │ -00218ab0: 636c 7564 6520 7265 6d6f 7665 5f63 7972  clude remove_cyr
│ │ │ -00218ac0: 7573 2d69 6d61 7064 0a0a 636c 6173 7320  us-imapd..class 
│ │ │ -00218ad0: 7265 6d6f 7665 5f63 7972 7573 2d69 6d61  remove_cyrus-ima
│ │ │ -00218ae0: 7064 207b 0a20 2070 6163 6b61 6765 207b  pd {.  package {
│ │ │ -00218af0: 2027 6379 7275 732d 696d 6170 6427 3a0a   'cyrus-imapd':.
│ │ │ -00218b00: 2020 2020 656e 7375 7265 203d 2667 743b      ensure =>
│ │ │ -00218b10: 2027 7075 7267 6564 272c 0a20 207d 0a7d   'purged',.  }.}
│ │ │ -00218b20: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Ans │ │ │ -00218be0: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ -00218bf0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Co │ │ │ -00218a00: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -00218a30: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -00218a50: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -00218a60: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -00218a80: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -00218a90: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexity: │ │ │ -00218cc0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -00218cd0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
- name: 'Uninst
│ │ │ -00218d30: 616c 6c20 6379 7275 732d 696d 6170 6420  all cyrus-imapd 
│ │ │ -00218d40: 5061 636b 6167 653a 2045 6e73 7572 6520  Package: Ensure 
│ │ │ -00218d50: 6379 7275 732d 696d 6170 6420 6973 2072  cyrus-imapd is r
│ │ │ -00218d60: 656d 6f76 6564 270a 2020 616e 7369 626c  emoved'.  ansibl
│ │ │ -00218d70: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ -00218d80: 653a 0a20 2020 206e 616d 653a 2063 7972  e:.    name: cyr
│ │ │ -00218d90: 7573 2d69 6d61 7064 0a20 2020 2073 7461  us-imapd.    sta
│ │ │ -00218da0: 7465 3a20 6162 7365 6e74 0a20 2074 6167  te: absent.  tag
│ │ │ -00218db0: 733a 0a20 202d 2064 6973 6162 6c65 5f73  s:.  - disable_s
│ │ │ -00218dc0: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ -00218dd0: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ -00218de0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -00218df0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -00218e00: 6564 0a20 202d 2070 6163 6b61 6765 5f63  ed.  - package_c
│ │ │ -00218e10: 7972 7573 2d69 6d61 7064 5f72 656d 6f76  yrus-imapd_remov
│ │ │ -00218e20: 6564 0a20 202d 2075 6e6b 6e6f 776e 5f73  ed.  - unknown_s
│ │ │ -00218e30: 6576 6572 6974 790a 3c2f 636f 6465 3e3c  everity.<
│ │ │ -00218e40: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ -00218ef0: 696f 6e20 5368 656c 6c20 7363 7269 7074  ion Shell script
│ │ │ -00218f00: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
< │ │ │ -00218fc0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00218fd0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
low
Disru │ │ │ -00218ca0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -00218cb0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -00218cf0: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -00218d00: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexity │ │ │ -00218f90: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ -00218fb0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ -00218fe0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ -00219000: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -00219030: 636f 6465 3e0a 2320 4341 5554 494f 4e3a  code>.# CAUTION:
│ │ │ -00219040: 2054 6869 7320 7265 6d65 6469 6174 696f   This remediatio
│ │ │ -00219050: 6e20 7363 7269 7074 2077 696c 6c20 7265  n script will re
│ │ │ -00219060: 6d6f 7665 2063 7972 7573 2d69 6d61 7064  move cyrus-imapd
│ │ │ -00219070: 0a23 2066 726f 6d20 7468 6520 7379 7374  .# from the syst
│ │ │ -00219080: 656d 2c20 616e 6420 6d61 7920 7265 6d6f  em, and may remo
│ │ │ -00219090: 7665 2061 6e79 2070 6163 6b61 6765 730a  ve any packages.
│ │ │ -002190a0: 2320 7468 6174 2064 6570 656e 6420 6f6e  # that depend on
│ │ │ -002190b0: 2063 7972 7573 2d69 6d61 7064 2e20 4578   cyrus-imapd. Ex
│ │ │ -002190c0: 6563 7574 6520 7468 6973 0a23 2072 656d  ecute this.# rem
│ │ │ -002190d0: 6564 6961 7469 6f6e 2041 4654 4552 2074  ediation AFTER t
│ │ │ -002190e0: 6573 7469 6e67 206f 6e20 6120 6e6f 6e2d  esting on a non-
│ │ │ -002190f0: 7072 6f64 7563 7469 6f6e 0a23 2073 7973  production.# sys
│ │ │ -00219100: 7465 6d21 0a0a 0a69 6620 7270 6d20 2d71  tem!...if rpm -q
│ │ │ -00219110: 202d 2d71 7569 6574 2022 6379 7275 732d   --quiet "cyrus-
│ │ │ -00219120: 696d 6170 6422 203b 2074 6865 6e0a 646e  imapd" ; then.dn
│ │ │ -00219130: 6620 7265 6d6f 7665 202d 7920 2d2d 6e6f  f remove -y --no
│ │ │ -00219140: 6175 746f 7265 6d6f 7665 2022 6379 7275  autoremove "cyru
│ │ │ -00219150: 732d 696d 6170 6422 0a66 690a 3c2f 636f  s-imapd".fi.
< │ │ │ +002187f0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00218800: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +00218850: 3c74 723e 3c74 683e 5374 7261 7465 6779
- 
│ │ │ +00218890: 6e61 6d65 3a20 2755 6e69 6e73 7461 6c6c  name: 'Uninstall
│ │ │ +002188a0: 2063 7972 7573 2d69 6d61 7064 2050 6163   cyrus-imapd Pac
│ │ │ +002188b0: 6b61 6765 3a20 456e 7375 7265 2063 7972  kage: Ensure cyr
│ │ │ +002188c0: 7573 2d69 6d61 7064 2069 7320 7265 6d6f  us-imapd is remo
│ │ │ +002188d0: 7665 6427 0a20 2061 6e73 6962 6c65 2e62  ved'.  ansible.b
│ │ │ +002188e0: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a  uiltin.package:.
│ │ │ +002188f0: 2020 2020 6e61 6d65 3a20 6379 7275 732d      name: cyrus-
│ │ │ +00218900: 696d 6170 640a 2020 2020 7374 6174 653a  imapd.    state:
│ │ │ +00218910: 2061 6273 656e 740a 2020 7461 6773 3a0a   absent.  tags:.
│ │ │ +00218920: 2020 2d20 6469 7361 626c 655f 7374 7261    - disable_stra
│ │ │ +00218930: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ +00218940: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +00218950: 6469 7372 7570 7469 6f6e 0a20 202d 206e  disruption.  - n
│ │ │ +00218960: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +00218970: 2020 2d20 7061 636b 6167 655f 6379 7275    - package_cyru
│ │ │ +00218980: 732d 696d 6170 645f 7265 6d6f 7665 640a  s-imapd_removed.
│ │ │ +00218990: 2020 2d20 756e 6b6e 6f77 6e5f 7365 7665    - unknown_seve
│ │ │ +002189a0: 7269 7479 0a3c 2f63 6f64 653e 3c2f 7072  rity.Remediation
│ │ │ +00218a60: 2050 7570 7065 7420 736e 6970 7065 7420   Puppet snippet 
│ │ │ +00218a70: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620  ...
low< │ │ │ +00218b40: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
C │ │ │ +002187e0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +00218810: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +00218820: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +00218860: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ +00218870: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexity: │ │ │ +00218b00: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ +00218b20: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:false
St │ │ │ +00218b70: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +00218b80: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
.include rem
│ │ │ +00218bb0: 6f76 655f 6379 7275 732d 696d 6170 640a  ove_cyrus-imapd.
│ │ │ +00218bc0: 0a63 6c61 7373 2072 656d 6f76 655f 6379  .class remove_cy
│ │ │ +00218bd0: 7275 732d 696d 6170 6420 7b0a 2020 7061  rus-imapd {.  pa
│ │ │ +00218be0: 636b 6167 6520 7b20 2763 7972 7573 2d69  ckage { 'cyrus-i
│ │ │ +00218bf0: 6d61 7064 273a 0a20 2020 2065 6e73 7572  mapd':.    ensur
│ │ │ +00218c00: 6520 3d26 6774 3b20 2770 7572 6765 6427  e => 'purged'
│ │ │ +00218c10: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ +00218c20: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ +00218cd0: 696f 6e20 5368 656c 6c20 7363 7269 7074 ion Shell script │ │ │ +00218ce0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ +00218d70: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +00218d90: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +00218da0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00218db0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +00218dc0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +00218de0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +00218e10: 636f 6465 3e0a 2320 4341 5554 494f 4e3a  code>.# CAUTION:
│ │ │ +00218e20: 2054 6869 7320 7265 6d65 6469 6174 696f   This remediatio
│ │ │ +00218e30: 6e20 7363 7269 7074 2077 696c 6c20 7265  n script will re
│ │ │ +00218e40: 6d6f 7665 2063 7972 7573 2d69 6d61 7064  move cyrus-imapd
│ │ │ +00218e50: 0a23 2066 726f 6d20 7468 6520 7379 7374  .# from the syst
│ │ │ +00218e60: 656d 2c20 616e 6420 6d61 7920 7265 6d6f  em, and may remo
│ │ │ +00218e70: 7665 2061 6e79 2070 6163 6b61 6765 730a  ve any packages.
│ │ │ +00218e80: 2320 7468 6174 2064 6570 656e 6420 6f6e  # that depend on
│ │ │ +00218e90: 2063 7972 7573 2d69 6d61 7064 2e20 4578   cyrus-imapd. Ex
│ │ │ +00218ea0: 6563 7574 6520 7468 6973 0a23 2072 656d  ecute this.# rem
│ │ │ +00218eb0: 6564 6961 7469 6f6e 2041 4654 4552 2074  ediation AFTER t
│ │ │ +00218ec0: 6573 7469 6e67 206f 6e20 6120 6e6f 6e2d  esting on a non-
│ │ │ +00218ed0: 7072 6f64 7563 7469 6f6e 0a23 2073 7973  production.# sys
│ │ │ +00218ee0: 7465 6d21 0a0a 0a69 6620 7270 6d20 2d71  tem!...if rpm -q
│ │ │ +00218ef0: 202d 2d71 7569 6574 2022 6379 7275 732d   --quiet "cyrus-
│ │ │ +00218f00: 696d 6170 6422 203b 2074 6865 6e0a 646e  imapd" ; then.dn
│ │ │ +00218f10: 6620 7265 6d6f 7665 202d 7920 2d2d 6e6f  f remove -y --no
│ │ │ +00218f20: 6175 746f 7265 6d6f 7665 2022 6379 7275  autoremove "cyru
│ │ │ +00218f30: 732d 696d 6170 6422 0a66 690a 3c2f 636f  s-imapd".fi.
< │ │ │ +00218f50: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +00218f60: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +00218f70: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +00218f80: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +00218f90: 6436 3730 2220 7461 6269 6e64 6578 3d22 d670" tabindex=" │ │ │ +00218fa0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +00218fb0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +00218fc0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +00218fd0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +00218fe0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +00218ff0: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ +00219000: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +00219010: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +002190b0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +00219100: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
..p
│ │ │ +00219140: 6163 6b61 6765 202d 2d72 656d 6f76 653d  ackage --remove=
│ │ │ +00219150: 6379 7275 732d 696d 6170 640a 3c2f 636f  cyrus-imapd.
< │ │ │ 00219170: 2f64 6976 3e3c 2f74 643e 3c2f 7472 3e3c /div>< │ │ │ 00219180: 2f74 626f 6479 3e3c 2f74 6162 6c65 3e3c /tbody>
Co │ │ │ +00219090: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +002190c0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +002190e0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +002190f0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +00219110: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +00219120: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ 00219190: 2f74 643e 3c2f 7472 3e3c 7472 2064 6174 /td> │ │ │ -00219ce0: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ -00219cf0: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ -00219d00: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -00219dd0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -00219de0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
..package --rem
│ │ │ -00219e40: 6f76 653d 646f 7665 636f 740a 3c2f 636f  ove=dovecot.
< │ │ │ -00219e60: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -00219e70: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -00219e80: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -00219e90: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -00219ea0: 6436 3733 2220 7461 6269 6e64 6578 3d22 d673" tabindex=" │ │ │ -00219eb0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -00219ec0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -00219ed0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -00219ee0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -00219ef0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -00219f00: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ -00219f10: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
low
Disru │ │ │ -00219db0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -00219dc0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -00219e00: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -00219e10: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Comp │ │ │ -00219fa0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -00219fb0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -00219fd0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -00219ff0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -0021a000: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -0021a040: 3c70 7265 3e3c 636f 6465 3e0a 696e 636c
.incl
│ │ │ -0021a050: 7564 6520 7265 6d6f 7665 5f64 6f76 6563  ude remove_dovec
│ │ │ -0021a060: 6f74 0a0a 636c 6173 7320 7265 6d6f 7665  ot..class remove
│ │ │ -0021a070: 5f64 6f76 6563 6f74 207b 0a20 2070 6163  _dovecot {.  pac
│ │ │ -0021a080: 6b61 6765 207b 2027 646f 7665 636f 7427  kage { 'dovecot'
│ │ │ -0021a090: 3a0a 2020 2020 656e 7375 7265 203d 2667  :.    ensure =&g
│ │ │ -0021a0a0: 743b 2027 7075 7267 6564 272c 0a20 207d  t; 'purged',.  }
│ │ │ -0021a0b0: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e  .}.
│ │ │ -0021a0c0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation A │ │ │ -0021a170: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ -0021a180: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -0021a200: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -0021a220: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -0021a270: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -0021a2a0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -0021a210: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -0021a230: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -0021a280: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -0021a290: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
- name: 'Unin
│ │ │ -0021a2c0: 7374 616c 6c20 646f 7665 636f 7420 5061  stall dovecot Pa
│ │ │ -0021a2d0: 636b 6167 653a 2045 6e73 7572 6520 646f  ckage: Ensure do
│ │ │ -0021a2e0: 7665 636f 7420 6973 2072 656d 6f76 6564  vecot is removed
│ │ │ -0021a2f0: 270a 2020 616e 7369 626c 652e 6275 696c  '.  ansible.buil
│ │ │ -0021a300: 7469 6e2e 7061 636b 6167 653a 0a20 2020  tin.package:.   
│ │ │ -0021a310: 206e 616d 653a 2064 6f76 6563 6f74 0a20   name: dovecot. 
│ │ │ -0021a320: 2020 2073 7461 7465 3a20 6162 7365 6e74     state: absent
│ │ │ -0021a330: 0a20 2074 6167 733a 0a20 202d 2064 6973  .  tags:.  - dis
│ │ │ -0021a340: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ -0021a350: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -0021a360: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -0021a370: 696f 6e0a 2020 2d20 6e6f 5f72 6562 6f6f  ion.  - no_reboo
│ │ │ -0021a380: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ -0021a390: 6b61 6765 5f64 6f76 6563 6f74 5f72 656d  kage_dovecot_rem
│ │ │ -0021a3a0: 6f76 6564 0a20 202d 2075 6e6b 6e6f 776e  oved.  - unknown
│ │ │ -0021a3b0: 5f73 6576 6572 6974 790a 3c2f 636f 6465  _severity.
Remedi │ │ │ -0021a470: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ -0021a480: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
│ │ │ -0021a500: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -0021a510: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -0021a520: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -0021a560: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -0021a570: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -0021a590: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -0021a5a0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.# CAUTIO
│ │ │ -0021a5c0: 4e3a 2054 6869 7320 7265 6d65 6469 6174  N: This remediat
│ │ │ -0021a5d0: 696f 6e20 7363 7269 7074 2077 696c 6c20  ion script will 
│ │ │ -0021a5e0: 7265 6d6f 7665 2064 6f76 6563 6f74 0a23  remove dovecot.#
│ │ │ -0021a5f0: 2066 726f 6d20 7468 6520 7379 7374 656d   from the system
│ │ │ -0021a600: 2c20 616e 6420 6d61 7920 7265 6d6f 7665  , and may remove
│ │ │ -0021a610: 2061 6e79 2070 6163 6b61 6765 730a 2320   any packages.# 
│ │ │ -0021a620: 7468 6174 2064 6570 656e 6420 6f6e 2064  that depend on d
│ │ │ -0021a630: 6f76 6563 6f74 2e20 4578 6563 7574 6520  ovecot. Execute 
│ │ │ -0021a640: 7468 6973 0a23 2072 656d 6564 6961 7469  this.# remediati
│ │ │ -0021a650: 6f6e 2041 4654 4552 2074 6573 7469 6e67  on AFTER testing
│ │ │ -0021a660: 206f 6e20 6120 6e6f 6e2d 7072 6f64 7563   on a non-produc
│ │ │ -0021a670: 7469 6f6e 0a23 2073 7973 7465 6d21 0a0a  tion.# system!..
│ │ │ -0021a680: 0a69 6620 7270 6d20 2d71 202d 2d71 7569  .if rpm -q --qui
│ │ │ -0021a690: 6574 2022 646f 7665 636f 7422 203b 2074  et "dovecot" ; t
│ │ │ -0021a6a0: 6865 6e0a 646e 6620 7265 6d6f 7665 202d  hen.dnf remove -
│ │ │ -0021a6b0: 7920 2d2d 6e6f 6175 746f 7265 6d6f 7665  y --noautoremove
│ │ │ -0021a6c0: 2022 646f 7665 636f 7422 0a66 690a 3c2f   "dovecot".fi.
< │ │ │ +00219dd0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +00219de0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ +00219e30: 2d20 6e61 6d65 3a20 2755 6e69 6e73 7461  - name: 'Uninsta
│ │ │ +00219e40: 6c6c 2064 6f76 6563 6f74 2050 6163 6b61  ll dovecot Packa
│ │ │ +00219e50: 6765 3a20 456e 7375 7265 2064 6f76 6563  ge: Ensure dovec
│ │ │ +00219e60: 6f74 2069 7320 7265 6d6f 7665 6427 0a20  ot is removed'. 
│ │ │ +00219e70: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +00219e80: 2e70 6163 6b61 6765 3a0a 2020 2020 6e61  .package:.    na
│ │ │ +00219e90: 6d65 3a20 646f 7665 636f 740a 2020 2020  me: dovecot.    
│ │ │ +00219ea0: 7374 6174 653a 2061 6273 656e 740a 2020  state: absent.  
│ │ │ +00219eb0: 7461 6773 3a0a 2020 2d20 6469 7361 626c  tags:.  - disabl
│ │ │ +00219ec0: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ +00219ed0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +00219ee0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +00219ef0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +00219f00: 6565 6465 640a 2020 2d20 7061 636b 6167  eeded.  - packag
│ │ │ +00219f10: 655f 646f 7665 636f 745f 7265 6d6f 7665  e_dovecot_remove
│ │ │ +00219f20: 640a 2020 2d20 756e 6b6e 6f77 6e5f 7365  d.  - unknown_se
│ │ │ +00219f30: 7665 7269 7479 0a3c 2f63 6f64 653e 3c2f  verity.Remediati
│ │ │ +00219ff0: 6f6e 2050 7570 7065 7420 736e 6970 7065  on Puppet snippe
│ │ │ +0021a000: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469  t ...
< │ │ │ +0021a080: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ +0021a0c0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 disable
Complexity:low
Disrup │ │ │ +00219db0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +00219dc0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +00219e00: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ +00219e10: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexit │ │ │ +0021a090: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ +0021a0b0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ +0021a0e0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ +0021a100: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
│ │ │ +0021a130: 3c63 6f64 653e 0a69 6e63 6c75 6465 2072  .include r
│ │ │ +0021a140: 656d 6f76 655f 646f 7665 636f 740a 0a63  emove_dovecot..c
│ │ │ +0021a150: 6c61 7373 2072 656d 6f76 655f 646f 7665  lass remove_dove
│ │ │ +0021a160: 636f 7420 7b0a 2020 7061 636b 6167 6520  cot {.  package 
│ │ │ +0021a170: 7b20 2764 6f76 6563 6f74 273a 0a20 2020  { 'dovecot':.   
│ │ │ +0021a180: 2065 6e73 7572 6520 3d26 6774 3b20 2770   ensure => 'p
│ │ │ +0021a190: 7572 6765 6427 2c0a 2020 7d0a 7d0a 3c2f  urged',.  }.}.
Re │ │ │ +0021a250: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ +0021a260: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
Comp │ │ │ +0021a2f0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +0021a300: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +0021a320: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +0021a340: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +0021a350: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +0021a390: 3c70 7265 3e3c 636f 6465 3e0a 2320 4341
.# CA
│ │ │ +0021a3a0: 5554 494f 4e3a 2054 6869 7320 7265 6d65  UTION: This reme
│ │ │ +0021a3b0: 6469 6174 696f 6e20 7363 7269 7074 2077  diation script w
│ │ │ +0021a3c0: 696c 6c20 7265 6d6f 7665 2064 6f76 6563  ill remove dovec
│ │ │ +0021a3d0: 6f74 0a23 2066 726f 6d20 7468 6520 7379  ot.# from the sy
│ │ │ +0021a3e0: 7374 656d 2c20 616e 6420 6d61 7920 7265  stem, and may re
│ │ │ +0021a3f0: 6d6f 7665 2061 6e79 2070 6163 6b61 6765  move any package
│ │ │ +0021a400: 730a 2320 7468 6174 2064 6570 656e 6420  s.# that depend 
│ │ │ +0021a410: 6f6e 2064 6f76 6563 6f74 2e20 4578 6563  on dovecot. Exec
│ │ │ +0021a420: 7574 6520 7468 6973 0a23 2072 656d 6564  ute this.# remed
│ │ │ +0021a430: 6961 7469 6f6e 2041 4654 4552 2074 6573  iation AFTER tes
│ │ │ +0021a440: 7469 6e67 206f 6e20 6120 6e6f 6e2d 7072  ting on a non-pr
│ │ │ +0021a450: 6f64 7563 7469 6f6e 0a23 2073 7973 7465  oduction.# syste
│ │ │ +0021a460: 6d21 0a0a 0a69 6620 7270 6d20 2d71 202d  m!...if rpm -q -
│ │ │ +0021a470: 2d71 7569 6574 2022 646f 7665 636f 7422  -quiet "dovecot"
│ │ │ +0021a480: 203b 2074 6865 6e0a 646e 6620 7265 6d6f   ; then.dnf remo
│ │ │ +0021a490: 7665 202d 7920 2d2d 6e6f 6175 746f 7265  ve -y --noautore
│ │ │ +0021a4a0: 6d6f 7665 2022 646f 7665 636f 7422 0a66  move "dovecot".f
│ │ │ +0021a4b0: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +0021a4c0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ +0021a570: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ +0021a580: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +0021a600: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +0021a620: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +0021a670: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +0021a6a0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +0021a610: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +0021a630: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +0021a680: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +0021a690: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
..package --r
│ │ │ +0021a6c0: 656d 6f76 653d 646f 7665 636f 740a 3c2f  emove=dovecot.
R │ │ │ -0021ba40: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ -0021ba50: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ -0021ba60: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -0021bb30: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0021bb40: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -0021bb90: 0a0a 7061 636b 6167 6520 2d2d 7265 6d6f  ..package --remo
│ │ │ -0021bba0: 7665 3d6f 7065 6e6c 6461 702d 636c 6965  ve=openldap-clie
│ │ │ -0021bbb0: 6e74 730a 3c2f 636f 6465 3e3c 2f70 7265  nts.
Remediation │ │ │ -0021bc70: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ -0021bc80: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
Complexity:low
Disrup │ │ │ -0021bb10: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0021bb20: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0021bb60: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -0021bb70: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
│ │ │ -0021bd00: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -0021bd20: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -0021bd70: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -0021bda0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -0021bd10: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -0021bd30: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -0021bd80: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -0021bd90: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.include remo
│ │ │ -0021bdc0: 7665 5f6f 7065 6e6c 6461 702d 636c 6965  ve_openldap-clie
│ │ │ -0021bdd0: 6e74 730a 0a63 6c61 7373 2072 656d 6f76  nts..class remov
│ │ │ -0021bde0: 655f 6f70 656e 6c64 6170 2d63 6c69 656e  e_openldap-clien
│ │ │ -0021bdf0: 7473 207b 0a20 2070 6163 6b61 6765 207b  ts {.  package {
│ │ │ -0021be00: 2027 6f70 656e 6c64 6170 2d63 6c69 656e   'openldap-clien
│ │ │ -0021be10: 7473 273a 0a20 2020 2065 6e73 7572 6520  ts':.    ensure 
│ │ │ -0021be20: 3d26 6774 3b20 2770 7572 6765 6427 2c0a  => 'purged',.
│ │ │ -0021be30: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediatio │ │ │ -0021bef0: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ -0021bf00: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -0021bf80: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -0021bf90: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -0021bfb0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -0021bfc0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -0021bfe0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -0021c000: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ -0021c030: 3c63 6f64 653e 2d20 6e61 6d65 3a20 2745  - name: 'E
│ │ │ -0021c040: 6e73 7572 6520 4c44 4150 2063 6c69 656e  nsure LDAP clien
│ │ │ -0021c050: 7420 6973 206e 6f74 2069 6e73 7461 6c6c  t is not install
│ │ │ -0021c060: 6564 3a20 456e 7375 7265 206f 7065 6e6c  ed: Ensure openl
│ │ │ -0021c070: 6461 702d 636c 6965 6e74 7320 6973 2072  dap-clients is r
│ │ │ -0021c080: 656d 6f76 6564 270a 2020 616e 7369 626c  emoved'.  ansibl
│ │ │ -0021c090: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ -0021c0a0: 653a 0a20 2020 206e 616d 653a 206f 7065  e:.    name: ope
│ │ │ -0021c0b0: 6e6c 6461 702d 636c 6965 6e74 730a 2020  nldap-clients.  
│ │ │ -0021c0c0: 2020 7374 6174 653a 2061 6273 656e 740a    state: absent.
│ │ │ -0021c0d0: 2020 7461 6773 3a0a 2020 2d20 6469 7361    tags:.  - disa
│ │ │ -0021c0e0: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ -0021c0f0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -0021c100: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -0021c110: 6f6e 0a20 202d 206c 6f77 5f73 6576 6572  on.  - low_sever
│ │ │ -0021c120: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ -0021c130: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ -0021c140: 6b61 6765 5f6f 7065 6e6c 6461 702d 636c  kage_openldap-cl
│ │ │ -0021c150: 6965 6e74 735f 7265 6d6f 7665 640a 3c2f  ients_removed.
Re │ │ │ -0021c210: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ -0021c220: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
Comp │ │ │ -0021c2b0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -0021c2c0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -0021c2e0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -0021c300: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -0021c310: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -0021c350: 3c70 7265 3e3c 636f 6465 3e0a 2320 4341
.# CA
│ │ │ -0021c360: 5554 494f 4e3a 2054 6869 7320 7265 6d65  UTION: This reme
│ │ │ -0021c370: 6469 6174 696f 6e20 7363 7269 7074 2077  diation script w
│ │ │ -0021c380: 696c 6c20 7265 6d6f 7665 206f 7065 6e6c  ill remove openl
│ │ │ -0021c390: 6461 702d 636c 6965 6e74 730a 2320 6672  dap-clients.# fr
│ │ │ -0021c3a0: 6f6d 2074 6865 2073 7973 7465 6d2c 2061  om the system, a
│ │ │ -0021c3b0: 6e64 206d 6179 2072 656d 6f76 6520 616e  nd may remove an
│ │ │ -0021c3c0: 7920 7061 636b 6167 6573 0a23 2074 6861  y packages.# tha
│ │ │ -0021c3d0: 7420 6465 7065 6e64 206f 6e20 6f70 656e  t depend on open
│ │ │ -0021c3e0: 6c64 6170 2d63 6c69 656e 7473 2e20 4578  ldap-clients. Ex
│ │ │ -0021c3f0: 6563 7574 6520 7468 6973 0a23 2072 656d  ecute this.# rem
│ │ │ -0021c400: 6564 6961 7469 6f6e 2041 4654 4552 2074  ediation AFTER t
│ │ │ -0021c410: 6573 7469 6e67 206f 6e20 6120 6e6f 6e2d  esting on a non-
│ │ │ -0021c420: 7072 6f64 7563 7469 6f6e 0a23 2073 7973  production.# sys
│ │ │ -0021c430: 7465 6d21 0a0a 0a69 6620 7270 6d20 2d71  tem!...if rpm -q
│ │ │ -0021c440: 202d 2d71 7569 6574 2022 6f70 656e 6c64   --quiet "openld
│ │ │ -0021c450: 6170 2d63 6c69 656e 7473 2220 3b20 7468  ap-clients" ; th
│ │ │ -0021c460: 656e 0a64 6e66 2072 656d 6f76 6520 2d79  en.dnf remove -y
│ │ │ -0021c470: 202d 2d6e 6f61 7574 6f72 656d 6f76 6520   --noautoremove 
│ │ │ -0021c480: 226f 7065 6e6c 6461 702d 636c 6965 6e74  "openldap-client
│ │ │ -0021c490: 7322 0a66 690a 3c2f 636f 6465 3e3c 2f70  s".fi.


│ │ │ +0021baf0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ +0021bb90: 206e 616d 653a 2027 456e 7375 7265 204c   name: 'Ensure L
│ │ │ +0021bba0: 4441 5020 636c 6965 6e74 2069 7320 6e6f  DAP client is no
│ │ │ +0021bbb0: 7420 696e 7374 616c 6c65 643a 2045 6e73  t installed: Ens
│ │ │ +0021bbc0: 7572 6520 6f70 656e 6c64 6170 2d63 6c69  ure openldap-cli
│ │ │ +0021bbd0: 656e 7473 2069 7320 7265 6d6f 7665 6427  ents is removed'
│ │ │ +0021bbe0: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ +0021bbf0: 696e 2e70 6163 6b61 6765 3a0a 2020 2020  in.package:.    
│ │ │ +0021bc00: 6e61 6d65 3a20 6f70 656e 6c64 6170 2d63  name: openldap-c
│ │ │ +0021bc10: 6c69 656e 7473 0a20 2020 2073 7461 7465  lients.    state
│ │ │ +0021bc20: 3a20 6162 7365 6e74 0a20 2074 6167 733a  : absent.  tags:
│ │ │ +0021bc30: 0a20 202d 2064 6973 6162 6c65 5f73 7472  .  - disable_str
│ │ │ +0021bc40: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ +0021bc50: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ +0021bc60: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +0021bc70: 6c6f 775f 7365 7665 7269 7479 0a20 202d  low_severity.  -
│ │ │ +0021bc80: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +0021bc90: 640a 2020 2d20 7061 636b 6167 655f 6f70  d.  - package_op
│ │ │ +0021bca0: 656e 6c64 6170 2d63 6c69 656e 7473 5f72  enldap-clients_r
│ │ │ +0021bcb0: 656d 6f76 6564 0a3c 2f63 6f64 653e 3c2f  emoved.Remediati
│ │ │ +0021bd70: 6f6e 2050 7570 7065 7420 736e 6970 7065  on Puppet snippe
│ │ │ +0021bd80: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469  t ...
< │ │ │ +0021be00: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ +0021be40: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 disable
│ │ │ +0021bae0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +0021bb10: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +0021bb20: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +0021bb60: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +0021bb70: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexit │ │ │ +0021be10: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ +0021be30: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ +0021be60: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ +0021be80: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
│ │ │ +0021beb0: 3c63 6f64 653e 0a69 6e63 6c75 6465 2072  .include r
│ │ │ +0021bec0: 656d 6f76 655f 6f70 656e 6c64 6170 2d63  emove_openldap-c
│ │ │ +0021bed0: 6c69 656e 7473 0a0a 636c 6173 7320 7265  lients..class re
│ │ │ +0021bee0: 6d6f 7665 5f6f 7065 6e6c 6461 702d 636c  move_openldap-cl
│ │ │ +0021bef0: 6965 6e74 7320 7b0a 2020 7061 636b 6167  ients {.  packag
│ │ │ +0021bf00: 6520 7b20 276f 7065 6e6c 6461 702d 636c  e { 'openldap-cl
│ │ │ +0021bf10: 6965 6e74 7327 3a0a 2020 2020 656e 7375  ients':.    ensu
│ │ │ +0021bf20: 7265 203d 2667 743b 2027 7075 7267 6564  re => 'purged
│ │ │ +0021bf30: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e  ',.  }.}.
│ │ │ +0021bf40: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +0021bff0: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ +0021c000: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +0021c080: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +0021c090: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +0021c0b0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +0021c0c0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +0021c0e0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +0021c100: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ +0021c130: 3c63 6f64 653e 0a23 2043 4155 5449 4f4e  .# CAUTION
│ │ │ +0021c140: 3a20 5468 6973 2072 656d 6564 6961 7469  : This remediati
│ │ │ +0021c150: 6f6e 2073 6372 6970 7420 7769 6c6c 2072  on script will r
│ │ │ +0021c160: 656d 6f76 6520 6f70 656e 6c64 6170 2d63  emove openldap-c
│ │ │ +0021c170: 6c69 656e 7473 0a23 2066 726f 6d20 7468  lients.# from th
│ │ │ +0021c180: 6520 7379 7374 656d 2c20 616e 6420 6d61  e system, and ma
│ │ │ +0021c190: 7920 7265 6d6f 7665 2061 6e79 2070 6163  y remove any pac
│ │ │ +0021c1a0: 6b61 6765 730a 2320 7468 6174 2064 6570  kages.# that dep
│ │ │ +0021c1b0: 656e 6420 6f6e 206f 7065 6e6c 6461 702d  end on openldap-
│ │ │ +0021c1c0: 636c 6965 6e74 732e 2045 7865 6375 7465  clients. Execute
│ │ │ +0021c1d0: 2074 6869 730a 2320 7265 6d65 6469 6174   this.# remediat
│ │ │ +0021c1e0: 696f 6e20 4146 5445 5220 7465 7374 696e  ion AFTER testin
│ │ │ +0021c1f0: 6720 6f6e 2061 206e 6f6e 2d70 726f 6475  g on a non-produ
│ │ │ +0021c200: 6374 696f 6e0a 2320 7379 7374 656d 210a  ction.# system!.
│ │ │ +0021c210: 0a0a 6966 2072 706d 202d 7120 2d2d 7175  ..if rpm -q --qu
│ │ │ +0021c220: 6965 7420 226f 7065 6e6c 6461 702d 636c  iet "openldap-cl
│ │ │ +0021c230: 6965 6e74 7322 203b 2074 6865 6e0a 646e  ients" ; then.dn
│ │ │ +0021c240: 6620 7265 6d6f 7665 202d 7920 2d2d 6e6f  f remove -y --no
│ │ │ +0021c250: 6175 746f 7265 6d6f 7665 2022 6f70 656e  autoremove "open
│ │ │ +0021c260: 6c64 6170 2d63 6c69 656e 7473 220a 6669  ldap-clients".fi
│ │ │ +0021c270: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Ana │ │ │ +0021c330: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ +0021c340: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ +0021c3c0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +0021c3e0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +0021c430: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ +0021c460: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
..package --re
│ │ │ +0021c480: 6d6f 7665 3d6f 7065 6e6c 6461 702d 636c  move=openldap-cl
│ │ │ +0021c490: 6965 6e74 730a 3c2f 636f 6465 3e3c 2f70  ients.

< │ │ │ 0021c4b0: 2f74 643e 3c2f 7472 3e3c 2f74 626f 6479 /td>
low
Disr │ │ │ +0021c3f0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +0021c400: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +0021c440: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ +0021c450: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Re │ │ │ -00220de0: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ -00220df0: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ -00220e00: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00220e10: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00220e20: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00220e30: 7365 2220 6964 3d22 6964 3638 3622 3e3c se" id="id686">< │ │ │ -00220e40: 7072 653e 3c63 6f64 653e 0a5b 6375 7374 pre>.[cust │ │ │ -00220e50: 6f6d 697a 6174 696f 6e73 2e73 6572 7669 omizations.servi │ │ │ -00220e60: 6365 735d 0a6d 6173 6b65 6420 3d20 5b22 ces].masked = [" │ │ │ -00220e70: 7270 6362 696e 6422 5d0a 3c2f 636f 6465 rpcbind"].
Remedi │ │ │ -00220f30: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ -00220f40: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -00220f50: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -00220f80: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -00220ff0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -00221010: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -00221040: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ -00221060: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ -00220fd0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -00220fe0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -00221020: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -00221030: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
include │ │ │ -00221080: 6469 7361 626c 655f 7270 6362 696e 640a disable_rpcbind. │ │ │ -00221090: 0a63 6c61 7373 2064 6973 6162 6c65 5f72 .class disable_r │ │ │ -002210a0: 7063 6269 6e64 207b 0a20 2073 6572 7669 pcbind {. servi │ │ │ -002210b0: 6365 207b 2772 7063 6269 6e64 273a 0a20 ce {'rpcbind':. │ │ │ -002210c0: 2020 2065 6e61 626c 6520 3d26 6774 3b20 enable => │ │ │ -002210d0: 6661 6c73 652c 0a20 2020 2065 6e73 7572 false,. ensur │ │ │ -002210e0: 6520 3d26 6774 3b20 2773 746f 7070 6564 e => 'stopped │ │ │ -002210f0: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e ',. }.}. │ │ │ -00221100: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063
Remedia │ │ │ -002211b0: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -002211c0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -002211d0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -00221200: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -00221270: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -00221290: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -002212c0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -00221250: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -00221260: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -002212a0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -002212b0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

- name: │ │ │ -00221300: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ -00221310: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ -00221320: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ -00221330: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ -00221340: 6167 733a 0a20 202d 2050 4349 2d44 5353 ags:. - PCI-DSS │ │ │ -00221350: 7634 2d32 2e32 0a20 202d 2050 4349 2d44 v4-2.2. - PCI-D │ │ │ -00221360: 5353 7634 2d32 2e32 2e34 0a20 202d 2064 SSv4-2.2.4. - d │ │ │ -00221370: 6973 6162 6c65 5f73 7472 6174 6567 790a isable_strategy. │ │ │ -00221380: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ -00221390: 7479 0a20 202d 206c 6f77 5f64 6973 7275 ty. - low_disru │ │ │ -002213a0: 7074 696f 6e0a 2020 2d20 6c6f 775f 7365 ption. - low_se │ │ │ -002213b0: 7665 7269 7479 0a20 202d 206e 6f5f 7265 verity. - no_re │ │ │ -002213c0: 626f 6f74 5f6e 6565 6465 640a 2020 2d20 boot_needed. - │ │ │ -002213d0: 7365 7276 6963 655f 7270 6362 696e 645f service_rpcbind_ │ │ │ -002213e0: 6469 7361 626c 6564 0a0a 2d20 6e61 6d65 disabled..- name │ │ │ -002213f0: 3a20 4469 7361 626c 6520 7270 6362 696e : Disable rpcbin │ │ │ -00221400: 6420 5365 7276 6963 6520 2d20 4469 7361 d Service - Disa │ │ │ -00221410: 626c 6520 7365 7276 6963 6520 7270 6362 ble service rpcb │ │ │ -00221420: 696e 640a 2020 626c 6f63 6b3a 0a0a 2020 ind. block:.. │ │ │ -00221430: 2d20 6e61 6d65 3a20 4469 7361 626c 6520 - name: Disable │ │ │ -00221440: 7270 6362 696e 6420 5365 7276 6963 6520 rpcbind Service │ │ │ -00221450: 2d20 436f 6c6c 6563 7420 7379 7374 656d - Collect system │ │ │ -00221460: 6420 5365 7276 6963 6573 2050 7265 7365 d Services Prese │ │ │ -00221470: 6e74 2069 6e20 7468 6520 5379 7374 656d nt in the System │ │ │ -00221480: 0a20 2020 2061 6e73 6962 6c65 2e62 7569 . ansible.bui │ │ │ -00221490: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 7379 ltin.command: sy │ │ │ -002214a0: 7374 656d 6374 6c20 2d71 206c 6973 742d stemctl -q list- │ │ │ -002214b0: 756e 6974 2d66 696c 6573 202d 2d74 7970 unit-files --typ │ │ │ -002214c0: 6520 7365 7276 6963 650a 2020 2020 7265 e service. re │ │ │ -002214d0: 6769 7374 6572 3a20 7365 7276 6963 655f gister: service_ │ │ │ -002214e0: 6578 6973 7473 0a20 2020 2063 6861 6e67 exists. chang │ │ │ -002214f0: 6564 5f77 6865 6e3a 2066 616c 7365 0a20 ed_when: false. │ │ │ -00221500: 2020 2066 6169 6c65 645f 7768 656e 3a20 failed_when: │ │ │ -00221510: 7365 7276 6963 655f 6578 6973 7473 2e72 service_exists.r │ │ │ -00221520: 6320 6e6f 7420 696e 205b 302c 2031 5d0a c not in [0, 1]. │ │ │ -00221530: 2020 2020 6368 6563 6b5f 6d6f 6465 3a20 check_mode: │ │ │ -00221540: 6661 6c73 650a 0a20 202d 206e 616d 653a false.. - name: │ │ │ -00221550: 2044 6973 6162 6c65 2072 7063 6269 6e64 Disable rpcbind │ │ │ -00221560: 2053 6572 7669 6365 202d 2045 6e73 7572 Service - Ensur │ │ │ -00221570: 6520 7270 6362 696e 642e 7365 7276 6963 e rpcbind.servic │ │ │ -00221580: 6520 6973 204d 6173 6b65 640a 2020 2020 e is Masked. │ │ │ -00221590: 616e 7369 626c 652e 6275 696c 7469 6e2e ansible.builtin. │ │ │ -002215a0: 7379 7374 656d 643a 0a20 2020 2020 206e systemd:. n │ │ │ -002215b0: 616d 653a 2072 7063 6269 6e64 2e73 6572 ame: rpcbind.ser │ │ │ -002215c0: 7669 6365 0a20 2020 2020 2073 7461 7465 vice. state │ │ │ -002215d0: 3a20 7374 6f70 7065 640a 2020 2020 2020 : stopped. │ │ │ -002215e0: 656e 6162 6c65 643a 2066 616c 7365 0a20 enabled: false. │ │ │ -002215f0: 2020 2020 206d 6173 6b65 643a 2074 7275 masked: tru │ │ │ -00221600: 650a 2020 2020 7768 656e 3a20 7365 7276 e. when: serv │ │ │ -00221610: 6963 655f 6578 6973 7473 2e73 7464 6f75 ice_exists.stdou │ │ │ -00221620: 745f 6c69 6e65 7320 6973 2073 6561 7263 t_lines is searc │ │ │ -00221630: 6828 2272 7063 6269 6e64 2e73 6572 7669 h("rpcbind.servi │ │ │ -00221640: 6365 222c 206d 756c 7469 6c69 6e65 3d54 ce", multiline=T │ │ │ -00221650: 7275 6529 0a0a 2020 2d20 6e61 6d65 3a20 rue).. - name: │ │ │ -00221660: 556e 6974 2053 6f63 6b65 7420 4578 6973 Unit Socket Exis │ │ │ -00221670: 7473 202d 2072 7063 6269 6e64 2e73 6f63 ts - rpcbind.soc │ │ │ -00221680: 6b65 740a 2020 2020 616e 7369 626c 652e ket. ansible. │ │ │ -00221690: 6275 696c 7469 6e2e 636f 6d6d 616e 643a builtin.command: │ │ │ -002216a0: 2073 7973 7465 6d63 746c 202d 7120 6c69 systemctl -q li │ │ │ -002216b0: 7374 2d75 6e69 742d 6669 6c65 7320 7270 st-unit-files rp │ │ │ -002216c0: 6362 696e 642e 736f 636b 6574 0a20 2020 cbind.socket. │ │ │ -002216d0: 2072 6567 6973 7465 723a 2073 6f63 6b65 register: socke │ │ │ -002216e0: 745f 6669 6c65 5f65 7869 7374 730a 2020 t_file_exists. │ │ │ -002216f0: 2020 6368 616e 6765 645f 7768 656e 3a20 changed_when: │ │ │ -00221700: 6661 6c73 650a 2020 2020 6661 696c 6564 false. failed │ │ │ -00221710: 5f77 6865 6e3a 2073 6f63 6b65 745f 6669 _when: socket_fi │ │ │ -00221720: 6c65 5f65 7869 7374 732e 7263 206e 6f74 le_exists.rc not │ │ │ -00221730: 2069 6e20 5b30 2c20 315d 0a20 2020 2063 in [0, 1]. c │ │ │ -00221740: 6865 636b 5f6d 6f64 653a 2066 616c 7365 heck_mode: false │ │ │ -00221750: 0a0a 2020 2d20 6e61 6d65 3a20 4469 7361 .. - name: Disa │ │ │ -00221760: 626c 6520 7270 6362 696e 6420 5365 7276 ble rpcbind Serv │ │ │ -00221770: 6963 6520 2d20 4469 7361 626c 6520 536f ice - Disable So │ │ │ -00221780: 636b 6574 2072 7063 6269 6e64 0a20 2020 cket rpcbind. │ │ │ -00221790: 2061 6e73 6962 6c65 2e62 7569 6c74 696e ansible.builtin │ │ │ -002217a0: 2e73 7973 7465 6d64 3a0a 2020 2020 2020 .systemd:. │ │ │ -002217b0: 6e61 6d65 3a20 7270 6362 696e 642e 736f name: rpcbind.so │ │ │ -002217c0: 636b 6574 0a20 2020 2020 2065 6e61 626c cket. enabl │ │ │ -002217d0: 6564 3a20 6661 6c73 650a 2020 2020 2020 ed: false. │ │ │ -002217e0: 7374 6174 653a 2073 746f 7070 6564 0a20 state: stopped. │ │ │ -002217f0: 2020 2020 206d 6173 6b65 643a 2074 7275 masked: tru │ │ │ -00221800: 650a 2020 2020 7768 656e 3a20 736f 636b e. when: sock │ │ │ -00221810: 6574 5f66 696c 655f 6578 6973 7473 2e73 et_file_exists.s │ │ │ -00221820: 7464 6f75 745f 6c69 6e65 7320 6973 2073 tdout_lines is s │ │ │ -00221830: 6561 7263 6828 2272 7063 6269 6e64 2e73 earch("rpcbind.s │ │ │ -00221840: 6f63 6b65 7422 2c20 6d75 6c74 696c 696e ocket", multilin │ │ │ -00221850: 653d 5472 7565 290a 2020 7461 6773 3a0a e=True). tags:. │ │ │ -00221860: 2020 2d20 5043 492d 4453 5376 342d 322e - PCI-DSSv4-2. │ │ │ -00221870: 320a 2020 2d20 5043 492d 4453 5376 342d 2. - PCI-DSSv4- │ │ │ -00221880: 322e 322e 340a 2020 2d20 6469 7361 626c 2.2.4. - disabl │ │ │ -00221890: 655f 7374 7261 7465 6779 0a20 202d 206c e_strategy. - l │ │ │ -002218a0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ -002218b0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e - low_disruption │ │ │ -002218c0: 0a20 202d 206c 6f77 5f73 6576 6572 6974 . - low_severit │ │ │ -002218d0: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f y. - no_reboot_ │ │ │ -002218e0: 6e65 6564 6564 0a20 202d 2073 6572 7669 needed. - servi │ │ │ -002218f0: 6365 5f72 7063 6269 6e64 5f64 6973 6162 ce_rpcbind_disab │ │ │ -00221900: 6c65 640a 2020 2d20 7370 6563 6961 6c5f led. - special_ │ │ │ -00221910: 7365 7276 6963 655f 626c 6f63 6b0a 2020 service_block. │ │ │ -00221920: 7768 656e 3a20 2722 6b65 726e 656c 2220 when: '"kernel" │ │ │ -00221930: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ -00221940: 2e70 6163 6b61 6765 7327 0a3c 2f63 6f64 .packages'.

< │ │ │ +00220e90: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00220ea0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +00220ef0: 3c74 723e 3c74 683e 5374 7261 7465 6779
- 
│ │ │ +00220f30: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ +00220f40: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ +00220f50: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ +00220f60: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ +00220f70: 6f0a 2020 7461 6773 3a0a 2020 2d20 5043  o.  tags:.  - PC
│ │ │ +00220f80: 492d 4453 5376 342d 322e 320a 2020 2d20  I-DSSv4-2.2.  - 
│ │ │ +00220f90: 5043 492d 4453 5376 342d 322e 322e 340a  PCI-DSSv4-2.2.4.
│ │ │ +00220fa0: 2020 2d20 6469 7361 626c 655f 7374 7261    - disable_stra
│ │ │ +00220fb0: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ +00220fc0: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +00220fd0: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +00220fe0: 6f77 5f73 6576 6572 6974 790a 2020 2d20  ow_severity.  - 
│ │ │ +00220ff0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +00221000: 0a20 202d 2073 6572 7669 6365 5f72 7063  .  - service_rpc
│ │ │ +00221010: 6269 6e64 5f64 6973 6162 6c65 640a 0a2d  bind_disabled..-
│ │ │ +00221020: 206e 616d 653a 2044 6973 6162 6c65 2072   name: Disable r
│ │ │ +00221030: 7063 6269 6e64 2053 6572 7669 6365 202d  pcbind Service -
│ │ │ +00221040: 2044 6973 6162 6c65 2073 6572 7669 6365   Disable service
│ │ │ +00221050: 2072 7063 6269 6e64 0a20 2062 6c6f 636b   rpcbind.  block
│ │ │ +00221060: 3a0a 0a20 202d 206e 616d 653a 2044 6973  :..  - name: Dis
│ │ │ +00221070: 6162 6c65 2072 7063 6269 6e64 2053 6572  able rpcbind Ser
│ │ │ +00221080: 7669 6365 202d 2043 6f6c 6c65 6374 2073  vice - Collect s
│ │ │ +00221090: 7973 7465 6d64 2053 6572 7669 6365 7320  ystemd Services 
│ │ │ +002210a0: 5072 6573 656e 7420 696e 2074 6865 2053  Present in the S
│ │ │ +002210b0: 7973 7465 6d0a 2020 2020 616e 7369 626c  ystem.    ansibl
│ │ │ +002210c0: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ +002210d0: 643a 2073 7973 7465 6d63 746c 202d 7120  d: systemctl -q 
│ │ │ +002210e0: 6c69 7374 2d75 6e69 742d 6669 6c65 7320  list-unit-files 
│ │ │ +002210f0: 2d2d 7479 7065 2073 6572 7669 6365 0a20  --type service. 
│ │ │ +00221100: 2020 2072 6567 6973 7465 723a 2073 6572     register: ser
│ │ │ +00221110: 7669 6365 5f65 7869 7374 730a 2020 2020  vice_exists.    
│ │ │ +00221120: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ +00221130: 6c73 650a 2020 2020 6661 696c 6564 5f77  lse.    failed_w
│ │ │ +00221140: 6865 6e3a 2073 6572 7669 6365 5f65 7869  hen: service_exi
│ │ │ +00221150: 7374 732e 7263 206e 6f74 2069 6e20 5b30  sts.rc not in [0
│ │ │ +00221160: 2c20 315d 0a20 2020 2063 6865 636b 5f6d  , 1].    check_m
│ │ │ +00221170: 6f64 653a 2066 616c 7365 0a0a 2020 2d20  ode: false..  - 
│ │ │ +00221180: 6e61 6d65 3a20 4469 7361 626c 6520 7270  name: Disable rp
│ │ │ +00221190: 6362 696e 6420 5365 7276 6963 6520 2d20  cbind Service - 
│ │ │ +002211a0: 456e 7375 7265 2072 7063 6269 6e64 2e73  Ensure rpcbind.s
│ │ │ +002211b0: 6572 7669 6365 2069 7320 4d61 736b 6564  ervice is Masked
│ │ │ +002211c0: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ +002211d0: 6c74 696e 2e73 7973 7465 6d64 3a0a 2020  ltin.systemd:.  
│ │ │ +002211e0: 2020 2020 6e61 6d65 3a20 7270 6362 696e      name: rpcbin
│ │ │ +002211f0: 642e 7365 7276 6963 650a 2020 2020 2020  d.service.      
│ │ │ +00221200: 7374 6174 653a 2073 746f 7070 6564 0a20  state: stopped. 
│ │ │ +00221210: 2020 2020 2065 6e61 626c 6564 3a20 6661       enabled: fa
│ │ │ +00221220: 6c73 650a 2020 2020 2020 6d61 736b 6564  lse.      masked
│ │ │ +00221230: 3a20 7472 7565 0a20 2020 2077 6865 6e3a  : true.    when:
│ │ │ +00221240: 2073 6572 7669 6365 5f65 7869 7374 732e   service_exists.
│ │ │ +00221250: 7374 646f 7574 5f6c 696e 6573 2069 7320  stdout_lines is 
│ │ │ +00221260: 7365 6172 6368 2822 7270 6362 696e 642e  search("rpcbind.
│ │ │ +00221270: 7365 7276 6963 6522 2c20 6d75 6c74 696c  service", multil
│ │ │ +00221280: 696e 653d 5472 7565 290a 0a20 202d 206e  ine=True)..  - n
│ │ │ +00221290: 616d 653a 2055 6e69 7420 536f 636b 6574  ame: Unit Socket
│ │ │ +002212a0: 2045 7869 7374 7320 2d20 7270 6362 696e   Exists - rpcbin
│ │ │ +002212b0: 642e 736f 636b 6574 0a20 2020 2061 6e73  d.socket.    ans
│ │ │ +002212c0: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d  ible.builtin.com
│ │ │ +002212d0: 6d61 6e64 3a20 7379 7374 656d 6374 6c20  mand: systemctl 
│ │ │ +002212e0: 2d71 206c 6973 742d 756e 6974 2d66 696c  -q list-unit-fil
│ │ │ +002212f0: 6573 2072 7063 6269 6e64 2e73 6f63 6b65  es rpcbind.socke
│ │ │ +00221300: 740a 2020 2020 7265 6769 7374 6572 3a20  t.    register: 
│ │ │ +00221310: 736f 636b 6574 5f66 696c 655f 6578 6973  socket_file_exis
│ │ │ +00221320: 7473 0a20 2020 2063 6861 6e67 6564 5f77  ts.    changed_w
│ │ │ +00221330: 6865 6e3a 2066 616c 7365 0a20 2020 2066  hen: false.    f
│ │ │ +00221340: 6169 6c65 645f 7768 656e 3a20 736f 636b  ailed_when: sock
│ │ │ +00221350: 6574 5f66 696c 655f 6578 6973 7473 2e72  et_file_exists.r
│ │ │ +00221360: 6320 6e6f 7420 696e 205b 302c 2031 5d0a  c not in [0, 1].
│ │ │ +00221370: 2020 2020 6368 6563 6b5f 6d6f 6465 3a20      check_mode: 
│ │ │ +00221380: 6661 6c73 650a 0a20 202d 206e 616d 653a  false..  - name:
│ │ │ +00221390: 2044 6973 6162 6c65 2072 7063 6269 6e64   Disable rpcbind
│ │ │ +002213a0: 2053 6572 7669 6365 202d 2044 6973 6162   Service - Disab
│ │ │ +002213b0: 6c65 2053 6f63 6b65 7420 7270 6362 696e  le Socket rpcbin
│ │ │ +002213c0: 640a 2020 2020 616e 7369 626c 652e 6275  d.    ansible.bu
│ │ │ +002213d0: 696c 7469 6e2e 7379 7374 656d 643a 0a20  iltin.systemd:. 
│ │ │ +002213e0: 2020 2020 206e 616d 653a 2072 7063 6269       name: rpcbi
│ │ │ +002213f0: 6e64 2e73 6f63 6b65 740a 2020 2020 2020  nd.socket.      
│ │ │ +00221400: 656e 6162 6c65 643a 2066 616c 7365 0a20  enabled: false. 
│ │ │ +00221410: 2020 2020 2073 7461 7465 3a20 7374 6f70       state: stop
│ │ │ +00221420: 7065 640a 2020 2020 2020 6d61 736b 6564  ped.      masked
│ │ │ +00221430: 3a20 7472 7565 0a20 2020 2077 6865 6e3a  : true.    when:
│ │ │ +00221440: 2073 6f63 6b65 745f 6669 6c65 5f65 7869   socket_file_exi
│ │ │ +00221450: 7374 732e 7374 646f 7574 5f6c 696e 6573  sts.stdout_lines
│ │ │ +00221460: 2069 7320 7365 6172 6368 2822 7270 6362   is search("rpcb
│ │ │ +00221470: 696e 642e 736f 636b 6574 222c 206d 756c  ind.socket", mul
│ │ │ +00221480: 7469 6c69 6e65 3d54 7275 6529 0a20 2074  tiline=True).  t
│ │ │ +00221490: 6167 733a 0a20 202d 2050 4349 2d44 5353  ags:.  - PCI-DSS
│ │ │ +002214a0: 7634 2d32 2e32 0a20 202d 2050 4349 2d44  v4-2.2.  - PCI-D
│ │ │ +002214b0: 5353 7634 2d32 2e32 2e34 0a20 202d 2064  SSv4-2.2.4.  - d
│ │ │ +002214c0: 6973 6162 6c65 5f73 7472 6174 6567 790a  isable_strategy.
│ │ │ +002214d0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +002214e0: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ +002214f0: 7074 696f 6e0a 2020 2d20 6c6f 775f 7365  ption.  - low_se
│ │ │ +00221500: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ +00221510: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ +00221520: 7365 7276 6963 655f 7270 6362 696e 645f  service_rpcbind_
│ │ │ +00221530: 6469 7361 626c 6564 0a20 202d 2073 7065  disabled.  - spe
│ │ │ +00221540: 6369 616c 5f73 6572 7669 6365 5f62 6c6f  cial_service_blo
│ │ │ +00221550: 636b 0a20 2077 6865 6e3a 2027 226b 6572  ck.  when: '"ker
│ │ │ +00221560: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +00221570: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ +00221580: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +00221630: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +00221640: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
C │ │ │ +00220e80: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +00220eb0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +00220ec0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +00220f00: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ +00220f10: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ +002216e0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
in
│ │ │ +00221780: 636c 7564 6520 6469 7361 626c 655f 7270  clude disable_rp
│ │ │ +00221790: 6362 696e 640a 0a63 6c61 7373 2064 6973  cbind..class dis
│ │ │ +002217a0: 6162 6c65 5f72 7063 6269 6e64 207b 0a20  able_rpcbind {. 
│ │ │ +002217b0: 2073 6572 7669 6365 207b 2772 7063 6269   service {'rpcbi
│ │ │ +002217c0: 6e64 273a 0a20 2020 2065 6e61 626c 6520  nd':.    enable 
│ │ │ +002217d0: 3d26 6774 3b20 6661 6c73 652c 0a20 2020  => false,.   
│ │ │ +002217e0: 2065 6e73 7572 6520 3d26 6774 3b20 2773   ensure => 's
│ │ │ +002217f0: 746f 7070 6564 272c 0a20 207d 0a7d 0a3c  topped',.  }.}.<
│ │ │ +00221800: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +002218b0: 656d 6564 6961 7469 6f6e 204f 5342 7569 emediation OSBui │ │ │ +002218c0: 6c64 2042 6c75 6570 7269 6e74 2073 6e69 ld Blueprint sni │ │ │ +002218d0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +002218e0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +00221910: 3c70 7265 3e3c 636f 6465 3e0a 5b63 7573
.[cus
│ │ │ +00221920: 746f 6d69 7a61 7469 6f6e 732e 7365 7276  tomizations.serv
│ │ │ +00221930: 6963 6573 5d0a 6d61 736b 6564 203d 205b  ices].masked = [
│ │ │ +00221940: 2272 7063 6269 6e64 225d 0a3c 2f63 6f64  "rpcbind"].
Remediation OS │ │ │ -00223500: 4275 696c 6420 426c 7565 7072 696e 7420 Build Blueprint │ │ │ -00223510: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -00223520: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
.[
│ │ │ -00223560: 6375 7374 6f6d 697a 6174 696f 6e73 2e73  customizations.s
│ │ │ -00223570: 6572 7669 6365 735d 0a6d 6173 6b65 6420  ervices].masked 
│ │ │ -00223580: 3d20 5b22 6e66 732d 7365 7276 6572 225d  = ["nfs-server"]
│ │ │ -00223590: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Pup │ │ │ -00223650: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ -00223660: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ +002216d0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00221700: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00221710: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00221750: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ +00221760: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ -00223730: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00223740: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
i
│ │ │ -00223790: 6e63 6c75 6465 2064 6973 6162 6c65 5f6e  nclude disable_n
│ │ │ -002237a0: 6673 2d73 6572 7665 720a 0a63 6c61 7373  fs-server..class
│ │ │ -002237b0: 2064 6973 6162 6c65 5f6e 6673 2d73 6572   disable_nfs-ser
│ │ │ -002237c0: 7665 7220 7b0a 2020 7365 7276 6963 6520  ver {.  service 
│ │ │ -002237d0: 7b27 6e66 732d 7365 7276 6572 273a 0a20  {'nfs-server':. 
│ │ │ -002237e0: 2020 2065 6e61 626c 6520 3d26 6774 3b20     enable => 
│ │ │ -002237f0: 6661 6c73 652c 0a20 2020 2065 6e73 7572  false,.    ensur
│ │ │ -00223800: 6520 3d26 6774 3b20 2773 746f 7070 6564  e => 'stopped
│ │ │ -00223810: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e  ',.  }.}.
│ │ │ -00223820: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -002238d0: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -002238e0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -002238f0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -00223920: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Complexity:low
Disrup │ │ │ -00223710: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00223720: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00223760: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -00223770: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ -00223990: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -002239b0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -002239e0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -00223970: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -00223980: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -002239c0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -002239d0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

- name: │ │ │ -00223a20: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ -00223a30: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ -00223a40: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ -00223a50: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ -00223a60: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ -00223a70: 302d 3533 2d43 4d2d 3628 6129 0a20 202d 0-53-CM-6(a). - │ │ │ -00223a80: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ -00223a90: 3728 6129 0a20 202d 204e 4953 542d 3830 7(a). - NIST-80 │ │ │ -00223aa0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d 0-53-CM-7(b). - │ │ │ -00223ab0: 2064 6973 6162 6c65 5f73 7472 6174 6567 disable_strateg │ │ │ -00223ac0: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65 y. - low_comple │ │ │ -00223ad0: 7869 7479 0a20 202d 206c 6f77 5f64 6973 xity. - low_dis │ │ │ -00223ae0: 7275 7074 696f 6e0a 2020 2d20 6e6f 5f72 ruption. - no_r │ │ │ -00223af0: 6562 6f6f 745f 6e65 6564 6564 0a20 202d eboot_needed. - │ │ │ -00223b00: 2073 6572 7669 6365 5f6e 6673 5f64 6973 service_nfs_dis │ │ │ -00223b10: 6162 6c65 640a 2020 2d20 756e 6b6e 6f77 abled. - unknow │ │ │ -00223b20: 6e5f 7365 7665 7269 7479 0a0a 2d20 6e61 n_severity..- na │ │ │ -00223b30: 6d65 3a20 4469 7361 626c 6520 4e65 7477 me: Disable Netw │ │ │ -00223b40: 6f72 6b20 4669 6c65 2053 7973 7465 6d20 ork File System │ │ │ -00223b50: 286e 6673 2920 2d20 4469 7361 626c 6520 (nfs) - Disable │ │ │ -00223b60: 7365 7276 6963 6520 6e66 732d 7365 7276 service nfs-serv │ │ │ -00223b70: 6572 0a20 2062 6c6f 636b 3a0a 0a20 202d er. block:.. - │ │ │ -00223b80: 206e 616d 653a 2044 6973 6162 6c65 204e name: Disable N │ │ │ -00223b90: 6574 776f 726b 2046 696c 6520 5379 7374 etwork File Syst │ │ │ -00223ba0: 656d 2028 6e66 7329 202d 2043 6f6c 6c65 em (nfs) - Colle │ │ │ -00223bb0: 6374 2073 7973 7465 6d64 2053 6572 7669 ct systemd Servi │ │ │ -00223bc0: 6365 7320 5072 6573 656e 7420 696e 0a20 ces Present in. │ │ │ -00223bd0: 2020 2020 2074 6865 2053 7973 7465 6d0a the System. │ │ │ -00223be0: 2020 2020 616e 7369 626c 652e 6275 696c ansible.buil │ │ │ -00223bf0: 7469 6e2e 636f 6d6d 616e 643a 2073 7973 tin.command: sys │ │ │ -00223c00: 7465 6d63 746c 202d 7120 6c69 7374 2d75 temctl -q list-u │ │ │ -00223c10: 6e69 742d 6669 6c65 7320 2d2d 7479 7065 nit-files --type │ │ │ -00223c20: 2073 6572 7669 6365 0a20 2020 2072 6567 service. reg │ │ │ -00223c30: 6973 7465 723a 2073 6572 7669 6365 5f65 ister: service_e │ │ │ -00223c40: 7869 7374 730a 2020 2020 6368 616e 6765 xists. change │ │ │ -00223c50: 645f 7768 656e 3a20 6661 6c73 650a 2020 d_when: false. │ │ │ -00223c60: 2020 6661 696c 6564 5f77 6865 6e3a 2073 failed_when: s │ │ │ -00223c70: 6572 7669 6365 5f65 7869 7374 732e 7263 ervice_exists.rc │ │ │ -00223c80: 206e 6f74 2069 6e20 5b30 2c20 315d 0a20 not in [0, 1]. │ │ │ -00223c90: 2020 2063 6865 636b 5f6d 6f64 653a 2066 check_mode: f │ │ │ -00223ca0: 616c 7365 0a0a 2020 2d20 6e61 6d65 3a20 alse.. - name: │ │ │ -00223cb0: 4469 7361 626c 6520 4e65 7477 6f72 6b20 Disable Network │ │ │ -00223cc0: 4669 6c65 2053 7973 7465 6d20 286e 6673 File System (nfs │ │ │ -00223cd0: 2920 2d20 456e 7375 7265 206e 6673 2d73 ) - Ensure nfs-s │ │ │ -00223ce0: 6572 7665 722e 7365 7276 6963 6520 6973 erver.service is │ │ │ -00223cf0: 204d 6173 6b65 640a 2020 2020 616e 7369 Masked. ansi │ │ │ -00223d00: 626c 652e 6275 696c 7469 6e2e 7379 7374 ble.builtin.syst │ │ │ -00223d10: 656d 643a 0a20 2020 2020 206e 616d 653a emd:. name: │ │ │ -00223d20: 206e 6673 2d73 6572 7665 722e 7365 7276 nfs-server.serv │ │ │ -00223d30: 6963 650a 2020 2020 2020 7374 6174 653a ice. state: │ │ │ -00223d40: 2073 746f 7070 6564 0a20 2020 2020 2065 stopped. e │ │ │ -00223d50: 6e61 626c 6564 3a20 6661 6c73 650a 2020 nabled: false. │ │ │ -00223d60: 2020 2020 6d61 736b 6564 3a20 7472 7565 masked: true │ │ │ -00223d70: 0a20 2020 2077 6865 6e3a 2073 6572 7669 . when: servi │ │ │ -00223d80: 6365 5f65 7869 7374 732e 7374 646f 7574 ce_exists.stdout │ │ │ -00223d90: 5f6c 696e 6573 2069 7320 7365 6172 6368 _lines is search │ │ │ -00223da0: 2822 6e66 732d 7365 7276 6572 2e73 6572 ("nfs-server.ser │ │ │ -00223db0: 7669 6365 222c 206d 756c 7469 6c69 6e65 vice", multiline │ │ │ -00223dc0: 3d54 7275 6529 0a0a 2020 2d20 6e61 6d65 =True).. - name │ │ │ -00223dd0: 3a20 556e 6974 2053 6f63 6b65 7420 4578 : Unit Socket Ex │ │ │ -00223de0: 6973 7473 202d 206e 6673 2d73 6572 7665 ists - nfs-serve │ │ │ -00223df0: 722e 736f 636b 6574 0a20 2020 2061 6e73 r.socket. ans │ │ │ -00223e00: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d ible.builtin.com │ │ │ -00223e10: 6d61 6e64 3a20 7379 7374 656d 6374 6c20 mand: systemctl │ │ │ -00223e20: 2d71 206c 6973 742d 756e 6974 2d66 696c -q list-unit-fil │ │ │ -00223e30: 6573 206e 6673 2d73 6572 7665 722e 736f es nfs-server.so │ │ │ -00223e40: 636b 6574 0a20 2020 2072 6567 6973 7465 cket. registe │ │ │ -00223e50: 723a 2073 6f63 6b65 745f 6669 6c65 5f65 r: socket_file_e │ │ │ -00223e60: 7869 7374 730a 2020 2020 6368 616e 6765 xists. change │ │ │ -00223e70: 645f 7768 656e 3a20 6661 6c73 650a 2020 d_when: false. │ │ │ -00223e80: 2020 6661 696c 6564 5f77 6865 6e3a 2073 failed_when: s │ │ │ -00223e90: 6f63 6b65 745f 6669 6c65 5f65 7869 7374 ocket_file_exist │ │ │ -00223ea0: 732e 7263 206e 6f74 2069 6e20 5b30 2c20 s.rc not in [0, │ │ │ -00223eb0: 315d 0a20 2020 2063 6865 636b 5f6d 6f64 1]. check_mod │ │ │ -00223ec0: 653a 2066 616c 7365 0a0a 2020 2d20 6e61 e: false.. - na │ │ │ -00223ed0: 6d65 3a20 4469 7361 626c 6520 4e65 7477 me: Disable Netw │ │ │ -00223ee0: 6f72 6b20 4669 6c65 2053 7973 7465 6d20 ork File System │ │ │ -00223ef0: 286e 6673 2920 2d20 4469 7361 626c 6520 (nfs) - Disable │ │ │ -00223f00: 536f 636b 6574 206e 6673 2d73 6572 7665 Socket nfs-serve │ │ │ -00223f10: 720a 2020 2020 616e 7369 626c 652e 6275 r. ansible.bu │ │ │ -00223f20: 696c 7469 6e2e 7379 7374 656d 643a 0a20 iltin.systemd:. │ │ │ -00223f30: 2020 2020 206e 616d 653a 206e 6673 2d73 name: nfs-s │ │ │ -00223f40: 6572 7665 722e 736f 636b 6574 0a20 2020 erver.socket. │ │ │ -00223f50: 2020 2065 6e61 626c 6564 3a20 6661 6c73 enabled: fals │ │ │ -00223f60: 650a 2020 2020 2020 7374 6174 653a 2073 e. state: s │ │ │ -00223f70: 746f 7070 6564 0a20 2020 2020 206d 6173 topped. mas │ │ │ -00223f80: 6b65 643a 2074 7275 650a 2020 2020 7768 ked: true. wh │ │ │ -00223f90: 656e 3a20 736f 636b 6574 5f66 696c 655f en: socket_file_ │ │ │ -00223fa0: 6578 6973 7473 2e73 7464 6f75 745f 6c69 exists.stdout_li │ │ │ -00223fb0: 6e65 7320 6973 2073 6561 7263 6828 226e nes is search("n │ │ │ -00223fc0: 6673 2d73 6572 7665 722e 736f 636b 6574 fs-server.socket │ │ │ -00223fd0: 222c 206d 756c 7469 6c69 6e65 3d54 7275 ", multiline=Tru │ │ │ -00223fe0: 6529 0a20 2074 6167 733a 0a20 202d 204e e). tags:. - N │ │ │ -00223ff0: 4953 542d 3830 302d 3533 2d43 4d2d 3628 IST-800-53-CM-6( │ │ │ -00224000: 6129 0a20 202d 204e 4953 542d 3830 302d a). - NIST-800- │ │ │ -00224010: 3533 2d43 4d2d 3728 6129 0a20 202d 204e 53-CM-7(a). - N │ │ │ -00224020: 4953 542d 3830 302d 3533 2d43 4d2d 3728 IST-800-53-CM-7( │ │ │ -00224030: 6229 0a20 202d 2064 6973 6162 6c65 5f73 b). - disable_s │ │ │ -00224040: 7472 6174 6567 790a 2020 2d20 6c6f 775f trategy. - low_ │ │ │ -00224050: 636f 6d70 6c65 7869 7479 0a20 202d 206c complexity. - l │ │ │ -00224060: 6f77 5f64 6973 7275 7074 696f 6e0a 2020 ow_disruption. │ │ │ -00224070: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ -00224080: 6564 0a20 202d 2073 6572 7669 6365 5f6e ed. - service_n │ │ │ -00224090: 6673 5f64 6973 6162 6c65 640a 2020 2d20 fs_disabled. - │ │ │ -002240a0: 7370 6563 6961 6c5f 7365 7276 6963 655f special_service_ │ │ │ -002240b0: 626c 6f63 6b0a 2020 2d20 756e 6b6e 6f77 block. - unknow │ │ │ -002240c0: 6e5f 7365 7665 7269 7479 0a20 2077 6865 n_severity. whe │ │ │ -002240d0: 6e3a 2027 226b 6572 6e65 6c22 2069 6e20 n: '"kernel" in │ │ │ -002240e0: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -002240f0: 636b 6167 6573 270a 3c2f 636f 6465 3e3c ckages'.< │ │ │ +002234f0: 223e 5265 6d65 6469 6174 696f 6e20 416e ">Remediation An │ │ │ +00223500: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ +00223510: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .

< │ │ │ +00223590: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +002235b0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +00223600: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ +00223630: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ +00223650: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ +00223660: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ +00223670: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ +00223680: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ +00223690: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +002236a0: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ +002236b0: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ +002236c0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +002236d0: 2d37 2862 290a 2020 2d20 6469 7361 626c  -7(b).  - disabl
│ │ │ +002236e0: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ +002236f0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +00223700: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +00223710: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +00223720: 6565 6465 640a 2020 2d20 7365 7276 6963  eeded.  - servic
│ │ │ +00223730: 655f 6e66 735f 6469 7361 626c 6564 0a20  e_nfs_disabled. 
│ │ │ +00223740: 202d 2075 6e6b 6e6f 776e 5f73 6576 6572   - unknown_sever
│ │ │ +00223750: 6974 790a 0a2d 206e 616d 653a 2044 6973  ity..- name: Dis
│ │ │ +00223760: 6162 6c65 204e 6574 776f 726b 2046 696c  able Network Fil
│ │ │ +00223770: 6520 5379 7374 656d 2028 6e66 7329 202d  e System (nfs) -
│ │ │ +00223780: 2044 6973 6162 6c65 2073 6572 7669 6365   Disable service
│ │ │ +00223790: 206e 6673 2d73 6572 7665 720a 2020 626c   nfs-server.  bl
│ │ │ +002237a0: 6f63 6b3a 0a0a 2020 2d20 6e61 6d65 3a20  ock:..  - name: 
│ │ │ +002237b0: 4469 7361 626c 6520 4e65 7477 6f72 6b20  Disable Network 
│ │ │ +002237c0: 4669 6c65 2053 7973 7465 6d20 286e 6673  File System (nfs
│ │ │ +002237d0: 2920 2d20 436f 6c6c 6563 7420 7379 7374  ) - Collect syst
│ │ │ +002237e0: 656d 6420 5365 7276 6963 6573 2050 7265  emd Services Pre
│ │ │ +002237f0: 7365 6e74 2069 6e0a 2020 2020 2020 7468  sent in.      th
│ │ │ +00223800: 6520 5379 7374 656d 0a20 2020 2061 6e73  e System.    ans
│ │ │ +00223810: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d  ible.builtin.com
│ │ │ +00223820: 6d61 6e64 3a20 7379 7374 656d 6374 6c20  mand: systemctl 
│ │ │ +00223830: 2d71 206c 6973 742d 756e 6974 2d66 696c  -q list-unit-fil
│ │ │ +00223840: 6573 202d 2d74 7970 6520 7365 7276 6963  es --type servic
│ │ │ +00223850: 650a 2020 2020 7265 6769 7374 6572 3a20  e.    register: 
│ │ │ +00223860: 7365 7276 6963 655f 6578 6973 7473 0a20  service_exists. 
│ │ │ +00223870: 2020 2063 6861 6e67 6564 5f77 6865 6e3a     changed_when:
│ │ │ +00223880: 2066 616c 7365 0a20 2020 2066 6169 6c65   false.    faile
│ │ │ +00223890: 645f 7768 656e 3a20 7365 7276 6963 655f  d_when: service_
│ │ │ +002238a0: 6578 6973 7473 2e72 6320 6e6f 7420 696e  exists.rc not in
│ │ │ +002238b0: 205b 302c 2031 5d0a 2020 2020 6368 6563   [0, 1].    chec
│ │ │ +002238c0: 6b5f 6d6f 6465 3a20 6661 6c73 650a 0a20  k_mode: false.. 
│ │ │ +002238d0: 202d 206e 616d 653a 2044 6973 6162 6c65   - name: Disable
│ │ │ +002238e0: 204e 6574 776f 726b 2046 696c 6520 5379   Network File Sy
│ │ │ +002238f0: 7374 656d 2028 6e66 7329 202d 2045 6e73  stem (nfs) - Ens
│ │ │ +00223900: 7572 6520 6e66 732d 7365 7276 6572 2e73  ure nfs-server.s
│ │ │ +00223910: 6572 7669 6365 2069 7320 4d61 736b 6564  ervice is Masked
│ │ │ +00223920: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ +00223930: 6c74 696e 2e73 7973 7465 6d64 3a0a 2020  ltin.systemd:.  
│ │ │ +00223940: 2020 2020 6e61 6d65 3a20 6e66 732d 7365      name: nfs-se
│ │ │ +00223950: 7276 6572 2e73 6572 7669 6365 0a20 2020  rver.service.   
│ │ │ +00223960: 2020 2073 7461 7465 3a20 7374 6f70 7065     state: stoppe
│ │ │ +00223970: 640a 2020 2020 2020 656e 6162 6c65 643a  d.      enabled:
│ │ │ +00223980: 2066 616c 7365 0a20 2020 2020 206d 6173   false.      mas
│ │ │ +00223990: 6b65 643a 2074 7275 650a 2020 2020 7768  ked: true.    wh
│ │ │ +002239a0: 656e 3a20 7365 7276 6963 655f 6578 6973  en: service_exis
│ │ │ +002239b0: 7473 2e73 7464 6f75 745f 6c69 6e65 7320  ts.stdout_lines 
│ │ │ +002239c0: 6973 2073 6561 7263 6828 226e 6673 2d73  is search("nfs-s
│ │ │ +002239d0: 6572 7665 722e 7365 7276 6963 6522 2c20  erver.service", 
│ │ │ +002239e0: 6d75 6c74 696c 696e 653d 5472 7565 290a  multiline=True).
│ │ │ +002239f0: 0a20 202d 206e 616d 653a 2055 6e69 7420  .  - name: Unit 
│ │ │ +00223a00: 536f 636b 6574 2045 7869 7374 7320 2d20  Socket Exists - 
│ │ │ +00223a10: 6e66 732d 7365 7276 6572 2e73 6f63 6b65  nfs-server.socke
│ │ │ +00223a20: 740a 2020 2020 616e 7369 626c 652e 6275  t.    ansible.bu
│ │ │ +00223a30: 696c 7469 6e2e 636f 6d6d 616e 643a 2073  iltin.command: s
│ │ │ +00223a40: 7973 7465 6d63 746c 202d 7120 6c69 7374  ystemctl -q list
│ │ │ +00223a50: 2d75 6e69 742d 6669 6c65 7320 6e66 732d  -unit-files nfs-
│ │ │ +00223a60: 7365 7276 6572 2e73 6f63 6b65 740a 2020  server.socket.  
│ │ │ +00223a70: 2020 7265 6769 7374 6572 3a20 736f 636b    register: sock
│ │ │ +00223a80: 6574 5f66 696c 655f 6578 6973 7473 0a20  et_file_exists. 
│ │ │ +00223a90: 2020 2063 6861 6e67 6564 5f77 6865 6e3a     changed_when:
│ │ │ +00223aa0: 2066 616c 7365 0a20 2020 2066 6169 6c65   false.    faile
│ │ │ +00223ab0: 645f 7768 656e 3a20 736f 636b 6574 5f66  d_when: socket_f
│ │ │ +00223ac0: 696c 655f 6578 6973 7473 2e72 6320 6e6f  ile_exists.rc no
│ │ │ +00223ad0: 7420 696e 205b 302c 2031 5d0a 2020 2020  t in [0, 1].    
│ │ │ +00223ae0: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73  check_mode: fals
│ │ │ +00223af0: 650a 0a20 202d 206e 616d 653a 2044 6973  e..  - name: Dis
│ │ │ +00223b00: 6162 6c65 204e 6574 776f 726b 2046 696c  able Network Fil
│ │ │ +00223b10: 6520 5379 7374 656d 2028 6e66 7329 202d  e System (nfs) -
│ │ │ +00223b20: 2044 6973 6162 6c65 2053 6f63 6b65 7420   Disable Socket 
│ │ │ +00223b30: 6e66 732d 7365 7276 6572 0a20 2020 2061  nfs-server.    a
│ │ │ +00223b40: 6e73 6962 6c65 2e62 7569 6c74 696e 2e73  nsible.builtin.s
│ │ │ +00223b50: 7973 7465 6d64 3a0a 2020 2020 2020 6e61  ystemd:.      na
│ │ │ +00223b60: 6d65 3a20 6e66 732d 7365 7276 6572 2e73  me: nfs-server.s
│ │ │ +00223b70: 6f63 6b65 740a 2020 2020 2020 656e 6162  ocket.      enab
│ │ │ +00223b80: 6c65 643a 2066 616c 7365 0a20 2020 2020  led: false.     
│ │ │ +00223b90: 2073 7461 7465 3a20 7374 6f70 7065 640a   state: stopped.
│ │ │ +00223ba0: 2020 2020 2020 6d61 736b 6564 3a20 7472        masked: tr
│ │ │ +00223bb0: 7565 0a20 2020 2077 6865 6e3a 2073 6f63  ue.    when: soc
│ │ │ +00223bc0: 6b65 745f 6669 6c65 5f65 7869 7374 732e  ket_file_exists.
│ │ │ +00223bd0: 7374 646f 7574 5f6c 696e 6573 2069 7320  stdout_lines is 
│ │ │ +00223be0: 7365 6172 6368 2822 6e66 732d 7365 7276  search("nfs-serv
│ │ │ +00223bf0: 6572 2e73 6f63 6b65 7422 2c20 6d75 6c74  er.socket", mult
│ │ │ +00223c00: 696c 696e 653d 5472 7565 290a 2020 7461  iline=True).  ta
│ │ │ +00223c10: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +00223c20: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +00223c30: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +00223c40: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +00223c50: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ +00223c60: 6469 7361 626c 655f 7374 7261 7465 6779  disable_strategy
│ │ │ +00223c70: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +00223c80: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +00223c90: 7570 7469 6f6e 0a20 202d 206e 6f5f 7265  uption.  - no_re
│ │ │ +00223ca0: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ +00223cb0: 7365 7276 6963 655f 6e66 735f 6469 7361  service_nfs_disa
│ │ │ +00223cc0: 626c 6564 0a20 202d 2073 7065 6369 616c  bled.  - special
│ │ │ +00223cd0: 5f73 6572 7669 6365 5f62 6c6f 636b 0a20  _service_block. 
│ │ │ +00223ce0: 202d 2075 6e6b 6e6f 776e 5f73 6576 6572   - unknown_sever
│ │ │ +00223cf0: 6974 790a 2020 7768 656e 3a20 2722 6b65  ity.  when: '"ke
│ │ │ +00223d00: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +00223d10: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ +00223d20: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Pup │ │ │ +00223de0: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ +00223df0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
low
Disr │ │ │ +002235c0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +002235d0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +00223610: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ +00223620: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
< │ │ │ +00223ec0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +00223ed0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
i
│ │ │ +00223f20: 6e63 6c75 6465 2064 6973 6162 6c65 5f6e  nclude disable_n
│ │ │ +00223f30: 6673 2d73 6572 7665 720a 0a63 6c61 7373  fs-server..class
│ │ │ +00223f40: 2064 6973 6162 6c65 5f6e 6673 2d73 6572   disable_nfs-ser
│ │ │ +00223f50: 7665 7220 7b0a 2020 7365 7276 6963 6520  ver {.  service 
│ │ │ +00223f60: 7b27 6e66 732d 7365 7276 6572 273a 0a20  {'nfs-server':. 
│ │ │ +00223f70: 2020 2065 6e61 626c 6520 3d26 6774 3b20     enable => 
│ │ │ +00223f80: 6661 6c73 652c 0a20 2020 2065 6e73 7572  false,.    ensur
│ │ │ +00223f90: 6520 3d26 6774 3b20 2773 746f 7070 6564  e => 'stopped
│ │ │ +00223fa0: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e  ',.  }.}.
│ │ │ +00223fb0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +00224060: 7469 6f6e 204f 5342 7569 6c64 2042 6c75 tion OSBuild Blu │ │ │ +00224070: 6570 7269 6e74 2073 6e69 7070 6574 20e2 eprint snippet . │ │ │ +00224080: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
<
│ │ │ +002240c0: 636f 6465 3e0a 5b63 7573 746f 6d69 7a61  code>.[customiza
│ │ │ +002240d0: 7469 6f6e 732e 7365 7276 6963 6573 5d0a  tions.services].
│ │ │ +002240e0: 6d61 736b 6564 203d 205b 226e 6673 2d73  masked = ["nfs-s
│ │ │ +002240f0: 6572 7665 7222 5d0a 3c2f 636f 6465 3e3c  erver"].<
│ │ │  00224100: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Rem │ │ │ -0022e1d0: 6564 6961 7469 6f6e 2041 6e61 636f 6e64 ediation Anacond │ │ │ -0022e1e0: 6120 736e 6970 7065 7420 e287 b23c 2f61 a snippet ...
Complexity:low
Disrup │ │ │ +00223ea0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +00223eb0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +00223ef0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +00223f00: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ -0022e280: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0022e290: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -0022e2e0: 3c74 723e 3c74 683e 5374 7261 7465 6779
..
│ │ │ -0022e320: 7061 636b 6167 6520 2d2d 7265 6d6f 7665  package --remove
│ │ │ -0022e330: 3d74 656c 6e65 742d 7365 7276 6572 0a3c  =telnet-server.<
│ │ │ -0022e340: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -0022e3f0: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ -0022e400: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
C │ │ │ -0022e270: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -0022e2a0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -0022e2b0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -0022e2f0: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ -0022e300: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ -0022e4a0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0022e4b0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -0022e500: 3c74 723e 3c74 683e 5374 7261 7465 6779
.i
│ │ │ -0022e540: 6e63 6c75 6465 2072 656d 6f76 655f 7465  nclude remove_te
│ │ │ -0022e550: 6c6e 6574 2d73 6572 7665 720a 0a63 6c61  lnet-server..cla
│ │ │ -0022e560: 7373 2072 656d 6f76 655f 7465 6c6e 6574  ss remove_telnet
│ │ │ -0022e570: 2d73 6572 7665 7220 7b0a 2020 7061 636b  -server {.  pack
│ │ │ -0022e580: 6167 6520 7b20 2774 656c 6e65 742d 7365  age { 'telnet-se
│ │ │ -0022e590: 7276 6572 273a 0a20 2020 2065 6e73 7572  rver':.    ensur
│ │ │ -0022e5a0: 6520 3d26 6774 3b20 2770 7572 6765 6427  e => 'purged'
│ │ │ -0022e5b0: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ -0022e5c0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ -0022e670: 696f 6e20 416e 7369 626c 6520 736e 6970  ion Ansible snip
│ │ │ -0022e680: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c  pet ...
< │ │ │ -0022e690: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -0022e6a0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -0022e6b0: 7365 2220 6964 3d22 6964 3730 3722 3e3c se" id="id707">< │ │ │ -0022e6c0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -0022e6d0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -0022e6e0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -0022e6f0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -0022e700: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:Strategy: │ │ │ -0022e790: 3c74 643e 6469 7361 626c 653c 2f74 643e │ │ │ -0022e7a0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
C │ │ │ -0022e490: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -0022e4c0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -0022e4d0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -0022e510: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ -0022e520: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complex │ │ │ -0022e710: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -0022e720: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ -0022e760: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -0022e770: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
disable
- name: │ │ │ -0022e7c0: 2755 6e69 6e73 7461 6c6c 2074 656c 6e65 'Uninstall telne │ │ │ -0022e7d0: 742d 7365 7276 6572 2050 6163 6b61 6765 t-server Package │ │ │ -0022e7e0: 3a20 456e 7375 7265 2074 656c 6e65 742d : Ensure telnet- │ │ │ -0022e7f0: 7365 7276 6572 2069 7320 7265 6d6f 7665 server is remove │ │ │ -0022e800: 6427 0a20 2061 6e73 6962 6c65 2e62 7569 d'. ansible.bui │ │ │ -0022e810: 6c74 696e 2e70 6163 6b61 6765 3a0a 2020 ltin.package:. │ │ │ -0022e820: 2020 6e61 6d65 3a20 7465 6c6e 6574 2d73 name: telnet-s │ │ │ -0022e830: 6572 7665 720a 2020 2020 7374 6174 653a erver. state: │ │ │ -0022e840: 2061 6273 656e 740a 2020 7461 6773 3a0a absent. tags:. │ │ │ -0022e850: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -0022e860: 434d 2d36 2861 290a 2020 2d20 4e49 5354 CM-6(a). - NIST │ │ │ -0022e870: 2d38 3030 2d35 332d 434d 2d37 2861 290a -800-53-CM-7(a). │ │ │ -0022e880: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -0022e890: 434d 2d37 2862 290a 2020 2d20 5043 492d CM-7(b). - PCI- │ │ │ -0022e8a0: 4453 532d 5265 712d 322e 322e 320a 2020 DSS-Req-2.2.2. │ │ │ -0022e8b0: 2d20 5043 492d 4453 5376 342d 322e 320a - PCI-DSSv4-2.2. │ │ │ -0022e8c0: 2020 2d20 5043 492d 4453 5376 342d 322e - PCI-DSSv4-2. │ │ │ -0022e8d0: 322e 340a 2020 2d20 6469 7361 626c 655f 2.4. - disable_ │ │ │ -0022e8e0: 7374 7261 7465 6779 0a20 202d 2068 6967 strategy. - hig │ │ │ -0022e8f0: 685f 7365 7665 7269 7479 0a20 202d 206c h_severity. - l │ │ │ -0022e900: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ -0022e910: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e - low_disruption │ │ │ -0022e920: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ -0022e930: 6565 6465 640a 2020 2d20 7061 636b 6167 eeded. - packag │ │ │ -0022e940: 655f 7465 6c6e 6574 2d73 6572 7665 725f e_telnet-server_ │ │ │ -0022e950: 7265 6d6f 7665 640a 3c2f 636f 6465 3e3c removed.< │ │ │ -0022e960: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>
Remediat │ │ │ -0022ea10: 696f 6e20 5368 656c 6c20 7363 7269 7074 ion Shell script │ │ │ -0022ea20: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -0022eab0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -0022ead0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -0022eae0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0022eaf0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -0022eb00: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -0022eb20: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -0022eb50: 636f 6465 3e0a 2320 4341 5554 494f 4e3a  code>.# CAUTION:
│ │ │ -0022eb60: 2054 6869 7320 7265 6d65 6469 6174 696f   This remediatio
│ │ │ -0022eb70: 6e20 7363 7269 7074 2077 696c 6c20 7265  n script will re
│ │ │ -0022eb80: 6d6f 7665 2074 656c 6e65 742d 7365 7276  move telnet-serv
│ │ │ -0022eb90: 6572 0a23 2066 726f 6d20 7468 6520 7379  er.# from the sy
│ │ │ -0022eba0: 7374 656d 2c20 616e 6420 6d61 7920 7265  stem, and may re
│ │ │ -0022ebb0: 6d6f 7665 2061 6e79 2070 6163 6b61 6765  move any package
│ │ │ -0022ebc0: 730a 2320 7468 6174 2064 6570 656e 6420  s.# that depend 
│ │ │ -0022ebd0: 6f6e 2074 656c 6e65 742d 7365 7276 6572  on telnet-server
│ │ │ -0022ebe0: 2e20 4578 6563 7574 6520 7468 6973 0a23  . Execute this.#
│ │ │ -0022ebf0: 2072 656d 6564 6961 7469 6f6e 2041 4654   remediation AFT
│ │ │ -0022ec00: 4552 2074 6573 7469 6e67 206f 6e20 6120  ER testing on a 
│ │ │ -0022ec10: 6e6f 6e2d 7072 6f64 7563 7469 6f6e 0a23  non-production.#
│ │ │ -0022ec20: 2073 7973 7465 6d21 0a0a 0a69 6620 7270   system!...if rp
│ │ │ -0022ec30: 6d20 2d71 202d 2d71 7569 6574 2022 7465  m -q --quiet "te
│ │ │ -0022ec40: 6c6e 6574 2d73 6572 7665 7222 203b 2074  lnet-server" ; t
│ │ │ -0022ec50: 6865 6e0a 646e 6620 7265 6d6f 7665 202d  hen.dnf remove -
│ │ │ -0022ec60: 7920 2d2d 6e6f 6175 746f 7265 6d6f 7665  y --noautoremove
│ │ │ -0022ec70: 2022 7465 6c6e 6574 2d73 6572 7665 7222   "telnet-server"
│ │ │ -0022ec80: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.
│ │ │ +0022e1f0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +0022e290: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0022e2e0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
- n
│ │ │ +0022e320: 616d 653a 2027 556e 696e 7374 616c 6c20  ame: 'Uninstall 
│ │ │ +0022e330: 7465 6c6e 6574 2d73 6572 7665 7220 5061  telnet-server Pa
│ │ │ +0022e340: 636b 6167 653a 2045 6e73 7572 6520 7465  ckage: Ensure te
│ │ │ +0022e350: 6c6e 6574 2d73 6572 7665 7220 6973 2072  lnet-server is r
│ │ │ +0022e360: 656d 6f76 6564 270a 2020 616e 7369 626c  emoved'.  ansibl
│ │ │ +0022e370: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ +0022e380: 653a 0a20 2020 206e 616d 653a 2074 656c  e:.    name: tel
│ │ │ +0022e390: 6e65 742d 7365 7276 6572 0a20 2020 2073  net-server.    s
│ │ │ +0022e3a0: 7461 7465 3a20 6162 7365 6e74 0a20 2074  tate: absent.  t
│ │ │ +0022e3b0: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +0022e3c0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +0022e3d0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +0022e3e0: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ +0022e3f0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ +0022e400: 2050 4349 2d44 5353 2d52 6571 2d32 2e32   PCI-DSS-Req-2.2
│ │ │ +0022e410: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ +0022e420: 2d32 2e32 0a20 202d 2050 4349 2d44 5353  -2.2.  - PCI-DSS
│ │ │ +0022e430: 7634 2d32 2e32 2e34 0a20 202d 2064 6973  v4-2.2.4.  - dis
│ │ │ +0022e440: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ +0022e450: 2d20 6869 6768 5f73 6576 6572 6974 790a  - high_severity.
│ │ │ +0022e460: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +0022e470: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ +0022e480: 7074 696f 6e0a 2020 2d20 6e6f 5f72 6562  ption.  - no_reb
│ │ │ +0022e490: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ +0022e4a0: 6163 6b61 6765 5f74 656c 6e65 742d 7365  ackage_telnet-se
│ │ │ +0022e4b0: 7276 6572 5f72 656d 6f76 6564 0a3c 2f63  rver_removed.
│ │ │ +0022e4d0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +0022e570: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ +0022e580: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +0022e590: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Co │ │ │ +0022e270: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0022e2a0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0022e2c0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0022e2d0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0022e2f0: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +0022e300: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Com │ │ │ +0022e610: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +0022e640: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +0022e660: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +0022e670: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +0022e690: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +0022e6a0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.inc
│ │ │ +0022e6c0: 6c75 6465 2072 656d 6f76 655f 7465 6c6e  lude remove_teln
│ │ │ +0022e6d0: 6574 2d73 6572 7665 720a 0a63 6c61 7373  et-server..class
│ │ │ +0022e6e0: 2072 656d 6f76 655f 7465 6c6e 6574 2d73   remove_telnet-s
│ │ │ +0022e6f0: 6572 7665 7220 7b0a 2020 7061 636b 6167  erver {.  packag
│ │ │ +0022e700: 6520 7b20 2774 656c 6e65 742d 7365 7276  e { 'telnet-serv
│ │ │ +0022e710: 6572 273a 0a20 2020 2065 6e73 7572 6520  er':.    ensure 
│ │ │ +0022e720: 3d26 6774 3b20 2770 7572 6765 6427 2c0a  => 'purged',.
│ │ │ +0022e730: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediatio │ │ │ +0022e7f0: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ +0022e800: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +0022e880: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +0022e8a0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +0022e8f0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +0022e920: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +0022e890: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +0022e8b0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +0022e900: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +0022e910: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.# CAUTION: T
│ │ │ +0022e940: 6869 7320 7265 6d65 6469 6174 696f 6e20  his remediation 
│ │ │ +0022e950: 7363 7269 7074 2077 696c 6c20 7265 6d6f  script will remo
│ │ │ +0022e960: 7665 2074 656c 6e65 742d 7365 7276 6572  ve telnet-server
│ │ │ +0022e970: 0a23 2066 726f 6d20 7468 6520 7379 7374  .# from the syst
│ │ │ +0022e980: 656d 2c20 616e 6420 6d61 7920 7265 6d6f  em, and may remo
│ │ │ +0022e990: 7665 2061 6e79 2070 6163 6b61 6765 730a  ve any packages.
│ │ │ +0022e9a0: 2320 7468 6174 2064 6570 656e 6420 6f6e  # that depend on
│ │ │ +0022e9b0: 2074 656c 6e65 742d 7365 7276 6572 2e20   telnet-server. 
│ │ │ +0022e9c0: 4578 6563 7574 6520 7468 6973 0a23 2072  Execute this.# r
│ │ │ +0022e9d0: 656d 6564 6961 7469 6f6e 2041 4654 4552  emediation AFTER
│ │ │ +0022e9e0: 2074 6573 7469 6e67 206f 6e20 6120 6e6f   testing on a no
│ │ │ +0022e9f0: 6e2d 7072 6f64 7563 7469 6f6e 0a23 2073  n-production.# s
│ │ │ +0022ea00: 7973 7465 6d21 0a0a 0a69 6620 7270 6d20  ystem!...if rpm 
│ │ │ +0022ea10: 2d71 202d 2d71 7569 6574 2022 7465 6c6e  -q --quiet "teln
│ │ │ +0022ea20: 6574 2d73 6572 7665 7222 203b 2074 6865  et-server" ; the
│ │ │ +0022ea30: 6e0a 646e 6620 7265 6d6f 7665 202d 7920  n.dnf remove -y 
│ │ │ +0022ea40: 2d2d 6e6f 6175 746f 7265 6d6f 7665 2022  --noautoremove "
│ │ │ +0022ea50: 7465 6c6e 6574 2d73 6572 7665 7222 0a66  telnet-server".f
│ │ │ +0022ea60: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +0022ea70: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ +0022eb20: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ +0022eb30: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +0022ebb0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +0022ebd0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +0022ec20: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +0022ec50: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +0022ebc0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +0022ebe0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +0022ec30: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +0022ec40: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
..package --r
│ │ │ +0022ec70: 656d 6f76 653d 7465 6c6e 6574 2d73 6572  emove=telnet-ser
│ │ │ +0022ec80: 7665 720a 3c2f 636f 6465 3e3c 2f70 7265  ver.
< │ │ │ 0022ecb0: 2f74 6162 6c65 3e3c 2f74 643e 3c2f 7472 /table>Remediatio │ │ │ -0022f860: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ -0022f870: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -0022f8f0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -0022f900: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -0022f910: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -0022f950: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -0022f960: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -0022f980: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -0022f990: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
..package
│ │ │ -0022f9b0: 202d 2d72 656d 6f76 653d 7465 6c6e 6574   --remove=telnet
│ │ │ -0022f9c0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Pup │ │ │ -0022fa80: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ -0022fa90: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -0022fb60: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0022fb70: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -0022fbc0: 0a69 6e63 6c75 6465 2072 656d 6f76 655f  .include remove_
│ │ │ -0022fbd0: 7465 6c6e 6574 0a0a 636c 6173 7320 7265  telnet..class re
│ │ │ -0022fbe0: 6d6f 7665 5f74 656c 6e65 7420 7b0a 2020  move_telnet {.  
│ │ │ -0022fbf0: 7061 636b 6167 6520 7b20 2774 656c 6e65  package { 'telne
│ │ │ -0022fc00: 7427 3a0a 2020 2020 656e 7375 7265 203d  t':.    ensure =
│ │ │ -0022fc10: 2667 743b 2027 7075 7267 6564 272c 0a20  > 'purged',. 
│ │ │ -0022fc20: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.Remediation
│ │ │ -0022fce0: 2041 6e73 6962 6c65 2073 6e69 7070 6574   Ansible snippet
│ │ │ -0022fcf0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
< │ │ │ -0022fdb0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0022fdc0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
Complexity:low
Disrup │ │ │ -0022fb40: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0022fb50: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0022fb90: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -0022fba0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexity │ │ │ -0022fd80: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ -0022fda0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ -0022fdd0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ -0022fdf0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -0022fe20: 636f 6465 3e2d 206e 616d 653a 2027 5265  code>- name: 'Re
│ │ │ -0022fe30: 6d6f 7665 2074 656c 6e65 7420 436c 6965  move telnet Clie
│ │ │ -0022fe40: 6e74 733a 2045 6e73 7572 6520 7465 6c6e  nts: Ensure teln
│ │ │ -0022fe50: 6574 2069 7320 7265 6d6f 7665 6427 0a20  et is removed'. 
│ │ │ -0022fe60: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -0022fe70: 2e70 6163 6b61 6765 3a0a 2020 2020 6e61  .package:.    na
│ │ │ -0022fe80: 6d65 3a20 7465 6c6e 6574 0a20 2020 2073  me: telnet.    s
│ │ │ -0022fe90: 7461 7465 3a20 6162 7365 6e74 0a20 2074  tate: absent.  t
│ │ │ -0022fea0: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -0022feb0: 302d 3137 312d 332e 312e 3133 0a20 202d  0-171-3.1.13.  -
│ │ │ -0022fec0: 2050 4349 2d44 5353 7634 2d32 2e32 0a20   PCI-DSSv4-2.2. 
│ │ │ -0022fed0: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ -0022fee0: 2e34 0a20 202d 2064 6973 6162 6c65 5f73  .4.  - disable_s
│ │ │ -0022fef0: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ -0022ff00: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ -0022ff10: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -0022ff20: 2d20 6c6f 775f 7365 7665 7269 7479 0a20  - low_severity. 
│ │ │ -0022ff30: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -0022ff40: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ -0022ff50: 7465 6c6e 6574 5f72 656d 6f76 6564 0a3c  telnet_removed.<
│ │ │ -0022ff60: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -00230010: 656d 6564 6961 7469 6f6e 2053 6865 6c6c emediation Shell │ │ │ -00230020: 2073 6372 6970 7420 e287 b23c 2f61 3e3c script ...< │ │ │ -00230030: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -002300b0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -002300e0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -00230100: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -00230110: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -00230130: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -00230140: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.# C
│ │ │ -00230160: 4155 5449 4f4e 3a20 5468 6973 2072 656d  AUTION: This rem
│ │ │ -00230170: 6564 6961 7469 6f6e 2073 6372 6970 7420  ediation script 
│ │ │ -00230180: 7769 6c6c 2072 656d 6f76 6520 7465 6c6e  will remove teln
│ │ │ -00230190: 6574 0a23 2066 726f 6d20 7468 6520 7379  et.# from the sy
│ │ │ -002301a0: 7374 656d 2c20 616e 6420 6d61 7920 7265  stem, and may re
│ │ │ -002301b0: 6d6f 7665 2061 6e79 2070 6163 6b61 6765  move any package
│ │ │ -002301c0: 730a 2320 7468 6174 2064 6570 656e 6420  s.# that depend 
│ │ │ -002301d0: 6f6e 2074 656c 6e65 742e 2045 7865 6375  on telnet. Execu
│ │ │ -002301e0: 7465 2074 6869 730a 2320 7265 6d65 6469  te this.# remedi
│ │ │ -002301f0: 6174 696f 6e20 4146 5445 5220 7465 7374  ation AFTER test
│ │ │ -00230200: 696e 6720 6f6e 2061 206e 6f6e 2d70 726f  ing on a non-pro
│ │ │ -00230210: 6475 6374 696f 6e0a 2320 7379 7374 656d  duction.# system
│ │ │ -00230220: 210a 0a0a 6966 2072 706d 202d 7120 2d2d  !...if rpm -q --
│ │ │ -00230230: 7175 6965 7420 2274 656c 6e65 7422 203b  quiet "telnet" ;
│ │ │ -00230240: 2074 6865 6e0a 646e 6620 7265 6d6f 7665   then.dnf remove
│ │ │ -00230250: 202d 7920 2d2d 6e6f 6175 746f 7265 6d6f   -y --noautoremo
│ │ │ -00230260: 7665 2022 7465 6c6e 6574 220a 6669 0a3c  ve "telnet".fi.<
│ │ │ +0022f860: 6e20 416e 7369 626c 6520 736e 6970 7065  n Ansible snippe
│ │ │ +0022f870: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469  t ...
< │ │ │ +0022f8f0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +0022f900: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +0022f920: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +0022f930: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +0022f950: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +0022f970: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ +0022f9a0: 3c63 6f64 653e 2d20 6e61 6d65 3a20 2752  - name: 'R
│ │ │ +0022f9b0: 656d 6f76 6520 7465 6c6e 6574 2043 6c69  emove telnet Cli
│ │ │ +0022f9c0: 656e 7473 3a20 456e 7375 7265 2074 656c  ents: Ensure tel
│ │ │ +0022f9d0: 6e65 7420 6973 2072 656d 6f76 6564 270a  net is removed'.
│ │ │ +0022f9e0: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +0022f9f0: 6e2e 7061 636b 6167 653a 0a20 2020 206e  n.package:.    n
│ │ │ +0022fa00: 616d 653a 2074 656c 6e65 740a 2020 2020  ame: telnet.    
│ │ │ +0022fa10: 7374 6174 653a 2061 6273 656e 740a 2020  state: absent.  
│ │ │ +0022fa20: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +0022fa30: 3030 2d31 3731 2d33 2e31 2e31 330a 2020  00-171-3.1.13.  
│ │ │ +0022fa40: 2d20 5043 492d 4453 5376 342d 322e 320a  - PCI-DSSv4-2.2.
│ │ │ +0022fa50: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ +0022fa60: 322e 340a 2020 2d20 6469 7361 626c 655f  2.4.  - disable_
│ │ │ +0022fa70: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ +0022fa80: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +0022fa90: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +0022faa0: 202d 206c 6f77 5f73 6576 6572 6974 790a   - low_severity.
│ │ │ +0022fab0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +0022fac0: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ +0022fad0: 5f74 656c 6e65 745f 7265 6d6f 7665 640a  _telnet_removed.
│ │ │ +0022fae0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +0022fb90: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +0022fba0: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
│ │ │ +0022fc40: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ +0022fce0: 696e 636c 7564 6520 7265 6d6f 7665 5f74  include remove_t
│ │ │ +0022fcf0: 656c 6e65 740a 0a63 6c61 7373 2072 656d  elnet..class rem
│ │ │ +0022fd00: 6f76 655f 7465 6c6e 6574 207b 0a20 2070  ove_telnet {.  p
│ │ │ +0022fd10: 6163 6b61 6765 207b 2027 7465 6c6e 6574  ackage { 'telnet
│ │ │ +0022fd20: 273a 0a20 2020 2065 6e73 7572 6520 3d26  ':.    ensure =&
│ │ │ +0022fd30: 6774 3b20 2770 7572 6765 6427 2c0a 2020  gt; 'purged',.  
│ │ │ +0022fd40: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Remediation │ │ │ +0022fe00: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ +0022fe10: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
│ │ │ +0022fc30: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +0022fc60: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +0022fc70: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +0022fcb0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +0022fcc0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity: │ │ │ +0022fee0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +0022fef0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.# CAUTION: Thi
│ │ │ +0022ff50: 7320 7265 6d65 6469 6174 696f 6e20 7363  s remediation sc
│ │ │ +0022ff60: 7269 7074 2077 696c 6c20 7265 6d6f 7665  ript will remove
│ │ │ +0022ff70: 2074 656c 6e65 740a 2320 6672 6f6d 2074   telnet.# from t
│ │ │ +0022ff80: 6865 2073 7973 7465 6d2c 2061 6e64 206d  he system, and m
│ │ │ +0022ff90: 6179 2072 656d 6f76 6520 616e 7920 7061  ay remove any pa
│ │ │ +0022ffa0: 636b 6167 6573 0a23 2074 6861 7420 6465  ckages.# that de
│ │ │ +0022ffb0: 7065 6e64 206f 6e20 7465 6c6e 6574 2e20  pend on telnet. 
│ │ │ +0022ffc0: 4578 6563 7574 6520 7468 6973 0a23 2072  Execute this.# r
│ │ │ +0022ffd0: 656d 6564 6961 7469 6f6e 2041 4654 4552  emediation AFTER
│ │ │ +0022ffe0: 2074 6573 7469 6e67 206f 6e20 6120 6e6f   testing on a no
│ │ │ +0022fff0: 6e2d 7072 6f64 7563 7469 6f6e 0a23 2073  n-production.# s
│ │ │ +00230000: 7973 7465 6d21 0a0a 0a69 6620 7270 6d20  ystem!...if rpm 
│ │ │ +00230010: 2d71 202d 2d71 7569 6574 2022 7465 6c6e  -q --quiet "teln
│ │ │ +00230020: 6574 2220 3b20 7468 656e 0a64 6e66 2072  et" ; then.dnf r
│ │ │ +00230030: 656d 6f76 6520 2d79 202d 2d6e 6f61 7574  emove -y --noaut
│ │ │ +00230040: 6f72 656d 6f76 6520 2274 656c 6e65 7422  oremove "telnet"
│ │ │ +00230050: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.
Remediation │ │ │ +00230110: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ +00230120: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
< │ │ │ +002301e0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +002301f0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
low
Disru │ │ │ +0022fec0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +0022fed0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +0022ff10: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +0022ff20: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexity │ │ │ +002301b0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ +002301d0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ +00230200: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ +00230220: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +00230250: 636f 6465 3e0a 0a70 6163 6b61 6765 202d  code>..package -
│ │ │ +00230260: 2d72 656d 6f76 653d 7465 6c6e 6574 0a3c  -remove=telnet.<
│ │ │  00230270: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
│ │ │ -002317d0: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ -002317e0: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ -002317f0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -002318c0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -002318d0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
..package --rem
│ │ │ -00231930: 6f76 653d 7466 7470 2d73 6572 7665 720a  ove=tftp-server.
│ │ │ -00231940: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -002319f0: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ -00231a00: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
low
Disru │ │ │ -002318a0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -002318b0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -002318f0: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -00231900: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ -00231aa0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ -00231b40: 696e 636c 7564 6520 7265 6d6f 7665 5f74  include remove_t
│ │ │ -00231b50: 6674 702d 7365 7276 6572 0a0a 636c 6173  ftp-server..clas
│ │ │ -00231b60: 7320 7265 6d6f 7665 5f74 6674 702d 7365  s remove_tftp-se
│ │ │ -00231b70: 7276 6572 207b 0a20 2070 6163 6b61 6765  rver {.  package
│ │ │ -00231b80: 207b 2027 7466 7470 2d73 6572 7665 7227   { 'tftp-server'
│ │ │ -00231b90: 3a0a 2020 2020 656e 7375 7265 203d 2667  :.    ensure =&g
│ │ │ -00231ba0: 743b 2027 7075 7267 6564 272c 0a20 207d  t; 'purged',.  }
│ │ │ -00231bb0: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e  .}.
│ │ │ -00231bc0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation A │ │ │ -00231c70: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ -00231c80: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -00231a90: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00231ac0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00231ad0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00231b10: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -00231b20: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
│ │ │ -00231d00: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -00231d20: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -00231d70: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -00231da0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -00231d10: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -00231d30: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -00231d80: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -00231d90: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
- name: 'Unin
│ │ │ -00231dc0: 7374 616c 6c20 7466 7470 2d73 6572 7665  stall tftp-serve
│ │ │ -00231dd0: 7220 5061 636b 6167 653a 2045 6e73 7572  r Package: Ensur
│ │ │ -00231de0: 6520 7466 7470 2d73 6572 7665 7220 6973  e tftp-server is
│ │ │ -00231df0: 2072 656d 6f76 6564 270a 2020 616e 7369   removed'.  ansi
│ │ │ -00231e00: 626c 652e 6275 696c 7469 6e2e 7061 636b  ble.builtin.pack
│ │ │ -00231e10: 6167 653a 0a20 2020 206e 616d 653a 2074  age:.    name: t
│ │ │ -00231e20: 6674 702d 7365 7276 6572 0a20 2020 2073  ftp-server.    s
│ │ │ -00231e30: 7461 7465 3a20 6162 7365 6e74 0a20 2074  tate: absent.  t
│ │ │ -00231e40: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -00231e50: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -00231e60: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -00231e70: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -00231e80: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ -00231e90: 2050 4349 2d44 5353 7634 2d32 2e32 0a20   PCI-DSSv4-2.2. 
│ │ │ -00231ea0: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ -00231eb0: 2e34 0a20 202d 2064 6973 6162 6c65 5f73  .4.  - disable_s
│ │ │ -00231ec0: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -00231ed0: 5f73 6576 6572 6974 790a 2020 2d20 6c6f  _severity.  - lo
│ │ │ -00231ee0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -00231ef0: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -00231f00: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -00231f10: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ -00231f20: 5f74 6674 702d 7365 7276 6572 5f72 656d  _tftp-server_rem
│ │ │ -00231f30: 6f76 6564 0a3c 2f63 6f64 653e 3c2f 7072  oved.
Remediation │ │ │ -00231ff0: 2053 6865 6c6c 2073 6372 6970 7420 e287 Shell script .. │ │ │ -00232000: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -00232080: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -002320a0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -002320f0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -00232120: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.# CAUTION: Th
│ │ │ -00232140: 6973 2072 656d 6564 6961 7469 6f6e 2073  is remediation s
│ │ │ -00232150: 6372 6970 7420 7769 6c6c 2072 656d 6f76  cript will remov
│ │ │ -00232160: 6520 7466 7470 2d73 6572 7665 720a 2320  e tftp-server.# 
│ │ │ -00232170: 6672 6f6d 2074 6865 2073 7973 7465 6d2c  from the system,
│ │ │ -00232180: 2061 6e64 206d 6179 2072 656d 6f76 6520   and may remove 
│ │ │ -00232190: 616e 7920 7061 636b 6167 6573 0a23 2074  any packages.# t
│ │ │ -002321a0: 6861 7420 6465 7065 6e64 206f 6e20 7466  hat depend on tf
│ │ │ -002321b0: 7470 2d73 6572 7665 722e 2045 7865 6375  tp-server. Execu
│ │ │ -002321c0: 7465 2074 6869 730a 2320 7265 6d65 6469  te this.# remedi
│ │ │ -002321d0: 6174 696f 6e20 4146 5445 5220 7465 7374  ation AFTER test
│ │ │ -002321e0: 696e 6720 6f6e 2061 206e 6f6e 2d70 726f  ing on a non-pro
│ │ │ -002321f0: 6475 6374 696f 6e0a 2320 7379 7374 656d  duction.# system
│ │ │ -00232200: 210a 0a0a 6966 2072 706d 202d 7120 2d2d  !...if rpm -q --
│ │ │ -00232210: 7175 6965 7420 2274 6674 702d 7365 7276  quiet "tftp-serv
│ │ │ -00232220: 6572 2220 3b20 7468 656e 0a64 6e66 2072  er" ; then.dnf r
│ │ │ -00232230: 656d 6f76 6520 2d79 202d 2d6e 6f61 7574  emove -y --noaut
│ │ │ -00232240: 6f72 656d 6f76 6520 2274 6674 702d 7365  oremove "tftp-se
│ │ │ -00232250: 7276 6572 220a 6669 0a3c 2f63 6f64 653e  rver".fi.
│ │ │ +002317d0: 5265 6d65 6469 6174 696f 6e20 416e 7369  Remediation Ansi
│ │ │ +002317e0: 626c 6520 736e 6970 7065 7420 e287 b23c  ble snippet ...<
│ │ │ +002317f0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173  /a>
low
Disr │ │ │ -002320b0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -002320c0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -00232100: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -00232110: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
< │ │ │ +002318c0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +002318d0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ +00231920: 2d20 6e61 6d65 3a20 2755 6e69 6e73 7461  - name: 'Uninsta
│ │ │ +00231930: 6c6c 2074 6674 702d 7365 7276 6572 2050  ll tftp-server P
│ │ │ +00231940: 6163 6b61 6765 3a20 456e 7375 7265 2074  ackage: Ensure t
│ │ │ +00231950: 6674 702d 7365 7276 6572 2069 7320 7265  ftp-server is re
│ │ │ +00231960: 6d6f 7665 6427 0a20 2061 6e73 6962 6c65  moved'.  ansible
│ │ │ +00231970: 2e62 7569 6c74 696e 2e70 6163 6b61 6765  .builtin.package
│ │ │ +00231980: 3a0a 2020 2020 6e61 6d65 3a20 7466 7470  :.    name: tftp
│ │ │ +00231990: 2d73 6572 7665 720a 2020 2020 7374 6174  -server.    stat
│ │ │ +002319a0: 653a 2061 6273 656e 740a 2020 7461 6773  e: absent.  tags
│ │ │ +002319b0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +002319c0: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +002319d0: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ +002319e0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +002319f0: 332d 434d 2d37 2862 290a 2020 2d20 5043  3-CM-7(b).  - PC
│ │ │ +00231a00: 492d 4453 5376 342d 322e 320a 2020 2d20  I-DSSv4-2.2.  - 
│ │ │ +00231a10: 5043 492d 4453 5376 342d 322e 322e 340a  PCI-DSSv4-2.2.4.
│ │ │ +00231a20: 2020 2d20 6469 7361 626c 655f 7374 7261    - disable_stra
│ │ │ +00231a30: 7465 6779 0a20 202d 2068 6967 685f 7365  tegy.  - high_se
│ │ │ +00231a40: 7665 7269 7479 0a20 202d 206c 6f77 5f63  verity.  - low_c
│ │ │ +00231a50: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ +00231a60: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +00231a70: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +00231a80: 640a 2020 2d20 7061 636b 6167 655f 7466  d.  - package_tf
│ │ │ +00231a90: 7470 2d73 6572 7665 725f 7265 6d6f 7665  tp-server_remove
│ │ │ +00231aa0: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ +00231ab0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ +00231b60: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ +00231b70: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity:low
Disrup │ │ │ +002318a0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +002318b0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +002318f0: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ +00231900: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexity: │ │ │ +00231c40: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00231c50: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.include remove
│ │ │ +00231cb0: 5f74 6674 702d 7365 7276 6572 0a0a 636c  _tftp-server..cl
│ │ │ +00231cc0: 6173 7320 7265 6d6f 7665 5f74 6674 702d  ass remove_tftp-
│ │ │ +00231cd0: 7365 7276 6572 207b 0a20 2070 6163 6b61  server {.  packa
│ │ │ +00231ce0: 6765 207b 2027 7466 7470 2d73 6572 7665  ge { 'tftp-serve
│ │ │ +00231cf0: 7227 3a0a 2020 2020 656e 7375 7265 203d  r':.    ensure =
│ │ │ +00231d00: 2667 743b 2027 7075 7267 6564 272c 0a20  > 'purged',. 
│ │ │ +00231d10: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.Remediation
│ │ │ +00231dd0: 2053 6865 6c6c 2073 6372 6970 7420 e287   Shell script ..
│ │ │ +00231de0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
low
Disru │ │ │ +00231c20: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00231c30: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00231c70: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +00231c80: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ +00231e60: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +00231e80: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +00231ed0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ +00231f00: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.# CAUTION: Th
│ │ │ +00231f20: 6973 2072 656d 6564 6961 7469 6f6e 2073  is remediation s
│ │ │ +00231f30: 6372 6970 7420 7769 6c6c 2072 656d 6f76  cript will remov
│ │ │ +00231f40: 6520 7466 7470 2d73 6572 7665 720a 2320  e tftp-server.# 
│ │ │ +00231f50: 6672 6f6d 2074 6865 2073 7973 7465 6d2c  from the system,
│ │ │ +00231f60: 2061 6e64 206d 6179 2072 656d 6f76 6520   and may remove 
│ │ │ +00231f70: 616e 7920 7061 636b 6167 6573 0a23 2074  any packages.# t
│ │ │ +00231f80: 6861 7420 6465 7065 6e64 206f 6e20 7466  hat depend on tf
│ │ │ +00231f90: 7470 2d73 6572 7665 722e 2045 7865 6375  tp-server. Execu
│ │ │ +00231fa0: 7465 2074 6869 730a 2320 7265 6d65 6469  te this.# remedi
│ │ │ +00231fb0: 6174 696f 6e20 4146 5445 5220 7465 7374  ation AFTER test
│ │ │ +00231fc0: 696e 6720 6f6e 2061 206e 6f6e 2d70 726f  ing on a non-pro
│ │ │ +00231fd0: 6475 6374 696f 6e0a 2320 7379 7374 656d  duction.# system
│ │ │ +00231fe0: 210a 0a0a 6966 2072 706d 202d 7120 2d2d  !...if rpm -q --
│ │ │ +00231ff0: 7175 6965 7420 2274 6674 702d 7365 7276  quiet "tftp-serv
│ │ │ +00232000: 6572 2220 3b20 7468 656e 0a64 6e66 2072  er" ; then.dnf r
│ │ │ +00232010: 656d 6f76 6520 2d79 202d 2d6e 6f61 7574  emove -y --noaut
│ │ │ +00232020: 6f72 656d 6f76 6520 2274 6674 702d 7365  oremove "tftp-se
│ │ │ +00232030: 7276 6572 220a 6669 0a3c 2f63 6f64 653e  rver".fi.
│ │ │ +00232040: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +002320f0: 7469 6f6e 2041 6e61 636f 6e64 6120 736e tion Anaconda sn │ │ │ +00232100: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
low
Disr │ │ │ +00231e90: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +00231ea0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +00231ee0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ +00231ef0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
│ │ │ +002321b0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +002321d0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +00232200: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +00232190: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +002321a0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +002321c0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +002321e0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +002321f0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ +00232230: 7072 653e 3c63 6f64 653e 0a0a 7061 636b pre>..pack │ │ │ +00232240: 6167 6520 2d2d 7265 6d6f 7665 3d74 6674 age --remove=tft │ │ │ +00232250: 702d 7365 7276 6572 0a3c 2f63 6f64 653e p-server. │ │ │ 00232260: 3c2f 7072 653e 3c2f 6469 763e 3c2f 6469
Remediation │ │ │ -00232a70: 2041 6e61 636f 6e64 6120 736e 6970 7065 Anaconda snippe │ │ │ -00232a80: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -00232b00: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -00232b10: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -00232b30: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -00232b40: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -00232b60: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -00232b80: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ -00232bb0: 3c63 6f64 653e 0a0a 7061 636b 6167 6520  ..package 
│ │ │ -00232bc0: 2d2d 7265 6d6f 7665 3d72 7379 6e63 0a3c  --remove=rsync.<
│ │ │ -00232bd0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -00232c80: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ -00232c90: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
< │ │ │ -00232d30: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00232d40: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -00232d90: 3c74 723e 3c74 683e 5374 7261 7465 6779
.i
│ │ │ -00232dd0: 6e63 6c75 6465 2072 656d 6f76 655f 7273  nclude remove_rs
│ │ │ -00232de0: 796e 630a 0a63 6c61 7373 2072 656d 6f76  ync..class remov
│ │ │ -00232df0: 655f 7273 796e 6320 7b0a 2020 7061 636b  e_rsync {.  pack
│ │ │ -00232e00: 6167 6520 7b20 2772 7379 6e63 273a 0a20  age { 'rsync':. 
│ │ │ -00232e10: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ -00232e20: 2770 7572 6765 6427 2c0a 2020 7d0a 7d0a  'purged',.  }.}.
│ │ │ -00232e30: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -00232ee0: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -00232ef0: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -00232f00: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
C │ │ │ -00232d20: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -00232d50: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -00232d60: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -00232da0: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ -00232db0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ -00232fd0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00232fe0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -00233030: 2d20 6e61 6d65 3a20 2755 6e69 6e73 7461  - name: 'Uninsta
│ │ │ -00233040: 6c6c 2072 7379 6e63 2050 6163 6b61 6765  ll rsync Package
│ │ │ -00233050: 3a20 456e 7375 7265 2072 7379 6e63 2069  : Ensure rsync i
│ │ │ -00233060: 7320 7265 6d6f 7665 6427 0a20 2061 6e73  s removed'.  ans
│ │ │ -00233070: 6962 6c65 2e62 7569 6c74 696e 2e70 6163  ible.builtin.pac
│ │ │ -00233080: 6b61 6765 3a0a 2020 2020 6e61 6d65 3a20  kage:.    name: 
│ │ │ -00233090: 7273 796e 630a 2020 2020 7374 6174 653a  rsync.    state:
│ │ │ -002330a0: 2061 6273 656e 740a 2020 7461 6773 3a0a   absent.  tags:.
│ │ │ -002330b0: 2020 2d20 6469 7361 626c 655f 7374 7261    - disable_stra
│ │ │ -002330c0: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ -002330d0: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ -002330e0: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -002330f0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -00233100: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -00233110: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ -00233120: 7273 796e 635f 7265 6d6f 7665 640a 3c2f  rsync_removed.
Re │ │ │ -002331e0: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ -002331f0: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
Complexity:low
Disrup │ │ │ -00232fb0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00232fc0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00233000: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -00233010: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Comp │ │ │ -00233280: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -00233290: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -002332b0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -002332d0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -002332e0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -00233320: 3c70 7265 3e3c 636f 6465 3e0a 2320 4341
.# CA
│ │ │ -00233330: 5554 494f 4e3a 2054 6869 7320 7265 6d65  UTION: This reme
│ │ │ -00233340: 6469 6174 696f 6e20 7363 7269 7074 2077  diation script w
│ │ │ -00233350: 696c 6c20 7265 6d6f 7665 2072 7379 6e63  ill remove rsync
│ │ │ -00233360: 0a23 2066 726f 6d20 7468 6520 7379 7374  .# from the syst
│ │ │ -00233370: 656d 2c20 616e 6420 6d61 7920 7265 6d6f  em, and may remo
│ │ │ -00233380: 7665 2061 6e79 2070 6163 6b61 6765 730a  ve any packages.
│ │ │ -00233390: 2320 7468 6174 2064 6570 656e 6420 6f6e  # that depend on
│ │ │ -002333a0: 2072 7379 6e63 2e20 4578 6563 7574 6520   rsync. Execute 
│ │ │ -002333b0: 7468 6973 0a23 2072 656d 6564 6961 7469  this.# remediati
│ │ │ -002333c0: 6f6e 2041 4654 4552 2074 6573 7469 6e67  on AFTER testing
│ │ │ -002333d0: 206f 6e20 6120 6e6f 6e2d 7072 6f64 7563   on a non-produc
│ │ │ -002333e0: 7469 6f6e 0a23 2073 7973 7465 6d21 0a0a  tion.# system!..
│ │ │ -002333f0: 0a69 6620 7270 6d20 2d71 202d 2d71 7569  .if rpm -q --qui
│ │ │ -00233400: 6574 2022 7273 796e 6322 203b 2074 6865  et "rsync" ; the
│ │ │ -00233410: 6e0a 646e 6620 7265 6d6f 7665 202d 7920  n.dnf remove -y 
│ │ │ -00233420: 2d2d 6e6f 6175 746f 7265 6d6f 7665 2022  --noautoremove "
│ │ │ -00233430: 7273 796e 6322 0a66 690a 3c2f 636f 6465  rsync".fi.
Complexity │ │ │ +00232b10: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +00232b30: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +00232b40: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00232b50: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +00232b60: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +00232b80: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +00232bb0: 636f 6465 3e2d 206e 616d 653a 2027 556e  code>- name: 'Un
│ │ │ +00232bc0: 696e 7374 616c 6c20 7273 796e 6320 5061  install rsync Pa
│ │ │ +00232bd0: 636b 6167 653a 2045 6e73 7572 6520 7273  ckage: Ensure rs
│ │ │ +00232be0: 796e 6320 6973 2072 656d 6f76 6564 270a  ync is removed'.
│ │ │ +00232bf0: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +00232c00: 6e2e 7061 636b 6167 653a 0a20 2020 206e  n.package:.    n
│ │ │ +00232c10: 616d 653a 2072 7379 6e63 0a20 2020 2073  ame: rsync.    s
│ │ │ +00232c20: 7461 7465 3a20 6162 7365 6e74 0a20 2074  tate: absent.  t
│ │ │ +00232c30: 6167 733a 0a20 202d 2064 6973 6162 6c65  ags:.  - disable
│ │ │ +00232c40: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ +00232c50: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +00232c60: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +00232c70: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +00232c80: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ +00232c90: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ +00232ca0: 6b61 6765 5f72 7379 6e63 5f72 656d 6f76  kage_rsync_remov
│ │ │ +00232cb0: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e  ed.
│ │ │ +00232cc0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation P │ │ │ +00232d70: 7570 7065 7420 736e 6970 7065 7420 e287 uppet snippet .. │ │ │ +00232d80: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ +00232e00: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +00232e20: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +00232e70: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ +00232ea0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.include remov
│ │ │ +00232ec0: 655f 7273 796e 630a 0a63 6c61 7373 2072  e_rsync..class r
│ │ │ +00232ed0: 656d 6f76 655f 7273 796e 6320 7b0a 2020  emove_rsync {.  
│ │ │ +00232ee0: 7061 636b 6167 6520 7b20 2772 7379 6e63  package { 'rsync
│ │ │ +00232ef0: 273a 0a20 2020 2065 6e73 7572 6520 3d26  ':.    ensure =&
│ │ │ +00232f00: 6774 3b20 2770 7572 6765 6427 2c0a 2020  gt; 'purged',.  
│ │ │ +00232f10: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Remediation │ │ │ +00232fd0: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ +00232fe0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
low
Disr │ │ │ +00232e30: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +00232e40: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +00232e80: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ +00232e90: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Complexity: │ │ │ +002330b0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +002330c0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.# CAUTION: Thi
│ │ │ +00233120: 7320 7265 6d65 6469 6174 696f 6e20 7363  s remediation sc
│ │ │ +00233130: 7269 7074 2077 696c 6c20 7265 6d6f 7665  ript will remove
│ │ │ +00233140: 2072 7379 6e63 0a23 2066 726f 6d20 7468   rsync.# from th
│ │ │ +00233150: 6520 7379 7374 656d 2c20 616e 6420 6d61  e system, and ma
│ │ │ +00233160: 7920 7265 6d6f 7665 2061 6e79 2070 6163  y remove any pac
│ │ │ +00233170: 6b61 6765 730a 2320 7468 6174 2064 6570  kages.# that dep
│ │ │ +00233180: 656e 6420 6f6e 2072 7379 6e63 2e20 4578  end on rsync. Ex
│ │ │ +00233190: 6563 7574 6520 7468 6973 0a23 2072 656d  ecute this.# rem
│ │ │ +002331a0: 6564 6961 7469 6f6e 2041 4654 4552 2074  ediation AFTER t
│ │ │ +002331b0: 6573 7469 6e67 206f 6e20 6120 6e6f 6e2d  esting on a non-
│ │ │ +002331c0: 7072 6f64 7563 7469 6f6e 0a23 2073 7973  production.# sys
│ │ │ +002331d0: 7465 6d21 0a0a 0a69 6620 7270 6d20 2d71  tem!...if rpm -q
│ │ │ +002331e0: 202d 2d71 7569 6574 2022 7273 796e 6322   --quiet "rsync"
│ │ │ +002331f0: 203b 2074 6865 6e0a 646e 6620 7265 6d6f   ; then.dnf remo
│ │ │ +00233200: 7665 202d 7920 2d2d 6e6f 6175 746f 7265  ve -y --noautore
│ │ │ +00233210: 6d6f 7665 2022 7273 796e 6322 0a66 690a  move "rsync".fi.
│ │ │ +00233220: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +002332d0: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ +002332e0: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ +002332f0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
low
Disru │ │ │ +00233090: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +002330a0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +002330e0: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +002330f0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexity: │ │ │ +002333c0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +002333d0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
..package --rem
│ │ │ +00233430: 6f76 653d 7273 796e 630a 3c2f 636f 6465  ove=rsync.
low
Disru │ │ │ +002333a0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +002333b0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +002333f0: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +00233400: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
R │ │ │ -002346a0: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ -002346b0: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ -002346c0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -00234790: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -002347a0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -002347f0: 0a0a 7061 636b 6167 6520 2d2d 7265 6d6f  ..package --remo
│ │ │ -00234800: 7665 3d63 7570 730a 3c2f 636f 6465 3e3c  ve=cups.<
│ │ │ -00234810: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ -002348c0: 696f 6e20 5075 7070 6574 2073 6e69 7070  ion Puppet snipp
│ │ │ -002348d0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...
│ │ │ -00234950: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ -002349e0: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -002349f0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
Complexity:low
Disrup │ │ │ -00234770: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00234780: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -002347c0: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -002347d0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexi │ │ │ -00234960: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -00234970: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ -002349b0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -002349c0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
.include 
│ │ │ -00234a10: 7265 6d6f 7665 5f63 7570 730a 0a63 6c61  remove_cups..cla
│ │ │ -00234a20: 7373 2072 656d 6f76 655f 6375 7073 207b  ss remove_cups {
│ │ │ -00234a30: 0a20 2070 6163 6b61 6765 207b 2027 6375  .  package { 'cu
│ │ │ -00234a40: 7073 273a 0a20 2020 2065 6e73 7572 6520  ps':.    ensure 
│ │ │ -00234a50: 3d26 6774 3b20 2770 7572 6765 6427 2c0a  => 'purged',.
│ │ │ -00234a60: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediatio │ │ │ -00234b20: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ -00234b30: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -00234bb0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -00234bc0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -00234be0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -00234bf0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -00234c10: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -00234c30: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ -00234c60: 3c63 6f64 653e 2d20 6e61 6d65 3a20 2755  - name: 'U
│ │ │ -00234c70: 6e69 6e73 7461 6c6c 2043 5550 5320 5061  ninstall CUPS Pa
│ │ │ -00234c80: 636b 6167 653a 2045 6e73 7572 6520 6375  ckage: Ensure cu
│ │ │ -00234c90: 7073 2069 7320 7265 6d6f 7665 6427 0a20  ps is removed'. 
│ │ │ -00234ca0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -00234cb0: 2e70 6163 6b61 6765 3a0a 2020 2020 6e61  .package:.    na
│ │ │ -00234cc0: 6d65 3a20 6375 7073 0a20 2020 2073 7461  me: cups.    sta
│ │ │ -00234cd0: 7465 3a20 6162 7365 6e74 0a20 2074 6167  te: absent.  tag
│ │ │ -00234ce0: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ -00234cf0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ -00234d00: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -00234d10: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -00234d20: 3533 2d43 4d2d 3728 6229 0a20 202d 2064  53-CM-7(b).  - d
│ │ │ -00234d30: 6973 6162 6c65 5f73 7472 6174 6567 790a  isable_strategy.
│ │ │ -00234d40: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -00234d50: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ -00234d60: 7074 696f 6e0a 2020 2d20 6e6f 5f72 6562  ption.  - no_reb
│ │ │ -00234d70: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ -00234d80: 6163 6b61 6765 5f63 7570 735f 7265 6d6f  ackage_cups_remo
│ │ │ -00234d90: 7665 640a 2020 2d20 756e 6b6e 6f77 6e5f  ved.  - unknown_
│ │ │ -00234da0: 7365 7665 7269 7479 0a3c 2f63 6f64 653e  severity.
│ │ │ -00234db0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -00234e60: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ -00234e70: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -00234ef0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -00234f00: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -00234f20: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -00234f30: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -00234f50: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -00234f70: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ -00234fa0: 3c63 6f64 653e 0a23 2043 4155 5449 4f4e  .# CAUTION
│ │ │ -00234fb0: 3a20 5468 6973 2072 656d 6564 6961 7469  : This remediati
│ │ │ -00234fc0: 6f6e 2073 6372 6970 7420 7769 6c6c 2072  on script will r
│ │ │ -00234fd0: 656d 6f76 6520 6375 7073 0a23 2066 726f  emove cups.# fro
│ │ │ -00234fe0: 6d20 7468 6520 7379 7374 656d 2c20 616e  m the system, an
│ │ │ -00234ff0: 6420 6d61 7920 7265 6d6f 7665 2061 6e79  d may remove any
│ │ │ -00235000: 2070 6163 6b61 6765 730a 2320 7468 6174   packages.# that
│ │ │ -00235010: 2064 6570 656e 6420 6f6e 2063 7570 732e   depend on cups.
│ │ │ -00235020: 2045 7865 6375 7465 2074 6869 730a 2320   Execute this.# 
│ │ │ -00235030: 7265 6d65 6469 6174 696f 6e20 4146 5445  remediation AFTE
│ │ │ -00235040: 5220 7465 7374 696e 6720 6f6e 2061 206e  R testing on a n
│ │ │ -00235050: 6f6e 2d70 726f 6475 6374 696f 6e0a 2320  on-production.# 
│ │ │ -00235060: 7379 7374 656d 210a 0a0a 6966 2072 706d  system!...if rpm
│ │ │ -00235070: 202d 7120 2d2d 7175 6965 7420 2263 7570   -q --quiet "cup
│ │ │ -00235080: 7322 203b 2074 6865 6e0a 646e 6620 7265  s" ; then.dnf re
│ │ │ -00235090: 6d6f 7665 202d 7920 2d2d 6e6f 6175 746f  move -y --noauto
│ │ │ -002350a0: 7265 6d6f 7665 2022 6375 7073 220a 6669  remove "cups".fi
│ │ │ +002346a0: 656d 6564 6961 7469 6f6e 2041 6e73 6962  emediation Ansib
│ │ │ +002346b0: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f  le snippet ...
│ │ │ +00234750: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ +002347f0: 206e 616d 653a 2027 556e 696e 7374 616c   name: 'Uninstal
│ │ │ +00234800: 6c20 4355 5053 2050 6163 6b61 6765 3a20  l CUPS Package: 
│ │ │ +00234810: 456e 7375 7265 2063 7570 7320 6973 2072  Ensure cups is r
│ │ │ +00234820: 656d 6f76 6564 270a 2020 616e 7369 626c  emoved'.  ansibl
│ │ │ +00234830: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ +00234840: 653a 0a20 2020 206e 616d 653a 2063 7570  e:.    name: cup
│ │ │ +00234850: 730a 2020 2020 7374 6174 653a 2061 6273  s.    state: abs
│ │ │ +00234860: 656e 740a 2020 7461 6773 3a0a 2020 2d20  ent.  tags:.  - 
│ │ │ +00234870: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +00234880: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +00234890: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ +002348a0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +002348b0: 2862 290a 2020 2d20 6469 7361 626c 655f  (b).  - disable_
│ │ │ +002348c0: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ +002348d0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +002348e0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +002348f0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +00234900: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ +00234910: 6375 7073 5f72 656d 6f76 6564 0a20 202d  cups_removed.  -
│ │ │ +00234920: 2075 6e6b 6e6f 776e 5f73 6576 6572 6974   unknown_severit
│ │ │ +00234930: 790a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  y.
< │ │ │ +00234940: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ +002349f0: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ +00234a00: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
│ │ │ +00234740: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00234770: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00234780: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +002347c0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +002347d0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity: │ │ │ +00234ad0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00234ae0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.include remove
│ │ │ +00234b40: 5f63 7570 730a 0a63 6c61 7373 2072 656d  _cups..class rem
│ │ │ +00234b50: 6f76 655f 6375 7073 207b 0a20 2070 6163  ove_cups {.  pac
│ │ │ +00234b60: 6b61 6765 207b 2027 6375 7073 273a 0a20  kage { 'cups':. 
│ │ │ +00234b70: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ +00234b80: 2770 7572 6765 6427 2c0a 2020 7d0a 7d0a  'purged',.  }.}.
│ │ │ +00234b90: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +00234c40: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ +00234c50: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ +00234c60: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low
Disru │ │ │ +00234ab0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00234ac0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00234b00: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +00234b10: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
low< │ │ │ +00234d00: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +00234d50: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.# 
│ │ │ +00234d90: 4341 5554 494f 4e3a 2054 6869 7320 7265  CAUTION: This re
│ │ │ +00234da0: 6d65 6469 6174 696f 6e20 7363 7269 7074  mediation script
│ │ │ +00234db0: 2077 696c 6c20 7265 6d6f 7665 2063 7570   will remove cup
│ │ │ +00234dc0: 730a 2320 6672 6f6d 2074 6865 2073 7973  s.# from the sys
│ │ │ +00234dd0: 7465 6d2c 2061 6e64 206d 6179 2072 656d  tem, and may rem
│ │ │ +00234de0: 6f76 6520 616e 7920 7061 636b 6167 6573  ove any packages
│ │ │ +00234df0: 0a23 2074 6861 7420 6465 7065 6e64 206f  .# that depend o
│ │ │ +00234e00: 6e20 6375 7073 2e20 4578 6563 7574 6520  n cups. Execute 
│ │ │ +00234e10: 7468 6973 0a23 2072 656d 6564 6961 7469  this.# remediati
│ │ │ +00234e20: 6f6e 2041 4654 4552 2074 6573 7469 6e67  on AFTER testing
│ │ │ +00234e30: 206f 6e20 6120 6e6f 6e2d 7072 6f64 7563   on a non-produc
│ │ │ +00234e40: 7469 6f6e 0a23 2073 7973 7465 6d21 0a0a  tion.# system!..
│ │ │ +00234e50: 0a69 6620 7270 6d20 2d71 202d 2d71 7569  .if rpm -q --qui
│ │ │ +00234e60: 6574 2022 6375 7073 2220 3b20 7468 656e  et "cups" ; then
│ │ │ +00234e70: 0a64 6e66 2072 656d 6f76 6520 2d79 202d  .dnf remove -y -
│ │ │ +00234e80: 2d6e 6f61 7574 6f72 656d 6f76 6520 2263  -noautoremove "c
│ │ │ +00234e90: 7570 7322 0a66 690a 3c2f 636f 6465 3e3c  ups".fi.<
│ │ │ +00234ea0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ +00234f50: 696f 6e20 416e 6163 6f6e 6461 2073 6e69  ion Anaconda sni
│ │ │ +00234f60: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e  ppet ...
│ │ │ +00234f70: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +00234fa0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Co │ │ │ +00234ce0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +00234d10: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +00234d30: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +00234d40: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +00234d60: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +00234d70: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ +00235010: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +00235030: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +00235060: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +00234ff0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +00235000: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +00235040: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +00235050: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

..packa │ │ │ +002350a0: 6765 202d 2d72 656d 6f76 653d 6375 7073 ge --remove=cups │ │ │ 002350b0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .

< │ │ │ 002350d0: 2f74 723e 3c2f 7462 6f64 793e 3c2f 7461 /tr>Remediation │ │ │ -00236140: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ -00236150: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -002361e0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -00236200: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -00236210: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00236220: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -00236230: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -00236250: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -00236280: 636f 6465 3e0a 0a70 6163 6b61 6765 202d  code>..package -
│ │ │ -00236290: 2d72 656d 6f76 653d 7371 7569 640a 3c2f  -remove=squid.
Re │ │ │ -00236350: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ -00236360: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -00236370: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -00236410: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -00236460: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.in
│ │ │ -002364a0: 636c 7564 6520 7265 6d6f 7665 5f73 7175  clude remove_squ
│ │ │ -002364b0: 6964 0a0a 636c 6173 7320 7265 6d6f 7665  id..class remove
│ │ │ -002364c0: 5f73 7175 6964 207b 0a20 2070 6163 6b61  _squid {.  packa
│ │ │ -002364d0: 6765 207b 2027 7371 7569 6427 3a0a 2020  ge { 'squid':.  
│ │ │ -002364e0: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ -002364f0: 7075 7267 6564 272c 0a20 207d 0a7d 0a3c  purged',.  }.}.<
│ │ │ -00236500: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -002365b0: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -002365c0: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
Co │ │ │ -002363f0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -00236420: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -00236440: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -00236450: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -00236470: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -00236480: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ -00236660: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ -00236700: 206e 616d 653a 2027 556e 696e 7374 616c   name: 'Uninstal
│ │ │ -00236710: 6c20 7371 7569 6420 5061 636b 6167 653a  l squid Package:
│ │ │ -00236720: 2045 6e73 7572 6520 7371 7569 6420 6973   Ensure squid is
│ │ │ -00236730: 2072 656d 6f76 6564 270a 2020 616e 7369   removed'.  ansi
│ │ │ -00236740: 626c 652e 6275 696c 7469 6e2e 7061 636b  ble.builtin.pack
│ │ │ -00236750: 6167 653a 0a20 2020 206e 616d 653a 2073  age:.    name: s
│ │ │ -00236760: 7175 6964 0a20 2020 2073 7461 7465 3a20  quid.    state: 
│ │ │ -00236770: 6162 7365 6e74 0a20 2074 6167 733a 0a20  absent.  tags:. 
│ │ │ -00236780: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ -00236790: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ -002367a0: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -002367b0: 6973 7275 7074 696f 6e0a 2020 2d20 6e6f  isruption.  - no
│ │ │ -002367c0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ -002367d0: 202d 2070 6163 6b61 6765 5f73 7175 6964   - package_squid
│ │ │ -002367e0: 5f72 656d 6f76 6564 0a20 202d 2075 6e6b  _removed.  - unk
│ │ │ -002367f0: 6e6f 776e 5f73 6576 6572 6974 790a 3c2f  nown_severity.
Re │ │ │ -002368b0: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ -002368c0: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
│ │ │ -00236650: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00236680: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00236690: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -002366d0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -002366e0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Comp │ │ │ -00236950: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -00236960: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -00236980: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -002369a0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -002369b0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -002369f0: 3c70 7265 3e3c 636f 6465 3e0a 2320 4341
.# CA
│ │ │ -00236a00: 5554 494f 4e3a 2054 6869 7320 7265 6d65  UTION: This reme
│ │ │ -00236a10: 6469 6174 696f 6e20 7363 7269 7074 2077  diation script w
│ │ │ -00236a20: 696c 6c20 7265 6d6f 7665 2073 7175 6964  ill remove squid
│ │ │ -00236a30: 0a23 2066 726f 6d20 7468 6520 7379 7374  .# from the syst
│ │ │ -00236a40: 656d 2c20 616e 6420 6d61 7920 7265 6d6f  em, and may remo
│ │ │ -00236a50: 7665 2061 6e79 2070 6163 6b61 6765 730a  ve any packages.
│ │ │ -00236a60: 2320 7468 6174 2064 6570 656e 6420 6f6e  # that depend on
│ │ │ -00236a70: 2073 7175 6964 2e20 4578 6563 7574 6520   squid. Execute 
│ │ │ -00236a80: 7468 6973 0a23 2072 656d 6564 6961 7469  this.# remediati
│ │ │ -00236a90: 6f6e 2041 4654 4552 2074 6573 7469 6e67  on AFTER testing
│ │ │ -00236aa0: 206f 6e20 6120 6e6f 6e2d 7072 6f64 7563   on a non-produc
│ │ │ -00236ab0: 7469 6f6e 0a23 2073 7973 7465 6d21 0a0a  tion.# system!..
│ │ │ -00236ac0: 0a69 6620 7270 6d20 2d71 202d 2d71 7569  .if rpm -q --qui
│ │ │ -00236ad0: 6574 2022 7371 7569 6422 203b 2074 6865  et "squid" ; the
│ │ │ -00236ae0: 6e0a 646e 6620 7265 6d6f 7665 202d 7920  n.dnf remove -y 
│ │ │ -00236af0: 2d2d 6e6f 6175 746f 7265 6d6f 7665 2022  --noautoremove "
│ │ │ -00236b00: 7371 7569 6422 0a66 690a 3c2f 636f 6465  squid".fi.
Complexity: │ │ │ +002361e0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +00236200: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +00236220: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +00236250: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +00236260: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
- name: 'Uni
│ │ │ +00236290: 6e73 7461 6c6c 2073 7175 6964 2050 6163  nstall squid Pac
│ │ │ +002362a0: 6b61 6765 3a20 456e 7375 7265 2073 7175  kage: Ensure squ
│ │ │ +002362b0: 6964 2069 7320 7265 6d6f 7665 6427 0a20  id is removed'. 
│ │ │ +002362c0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +002362d0: 2e70 6163 6b61 6765 3a0a 2020 2020 6e61  .package:.    na
│ │ │ +002362e0: 6d65 3a20 7371 7569 640a 2020 2020 7374  me: squid.    st
│ │ │ +002362f0: 6174 653a 2061 6273 656e 740a 2020 7461  ate: absent.  ta
│ │ │ +00236300: 6773 3a0a 2020 2d20 6469 7361 626c 655f  gs:.  - disable_
│ │ │ +00236310: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ +00236320: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +00236330: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +00236340: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +00236350: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ +00236360: 7371 7569 645f 7265 6d6f 7665 640a 2020  squid_removed.  
│ │ │ +00236370: 2d20 756e 6b6e 6f77 6e5f 7365 7665 7269  - unknown_severi
│ │ │ +00236380: 7479 0a3c 2f63 6f64 653e 3c2f 7072 653e  ty.
│ │ │ +00236390: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation P │ │ │ +00236440: 7570 7065 7420 736e 6970 7065 7420 e287 uppet snippet .. │ │ │ +00236450: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ +002364d0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +002364f0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +00236540: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ +00236570: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.include remov
│ │ │ +00236590: 655f 7371 7569 640a 0a63 6c61 7373 2072  e_squid..class r
│ │ │ +002365a0: 656d 6f76 655f 7371 7569 6420 7b0a 2020  emove_squid {.  
│ │ │ +002365b0: 7061 636b 6167 6520 7b20 2773 7175 6964  package { 'squid
│ │ │ +002365c0: 273a 0a20 2020 2065 6e73 7572 6520 3d26  ':.    ensure =&
│ │ │ +002365d0: 6774 3b20 2770 7572 6765 6427 2c0a 2020  gt; 'purged',.  
│ │ │ +002365e0: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Remediation │ │ │ +002366a0: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ +002366b0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
low
Disr │ │ │ +00236500: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +00236510: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +00236550: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ +00236560: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Complexity: │ │ │ +00236780: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00236790: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.# CAUTION: Thi
│ │ │ +002367f0: 7320 7265 6d65 6469 6174 696f 6e20 7363  s remediation sc
│ │ │ +00236800: 7269 7074 2077 696c 6c20 7265 6d6f 7665  ript will remove
│ │ │ +00236810: 2073 7175 6964 0a23 2066 726f 6d20 7468   squid.# from th
│ │ │ +00236820: 6520 7379 7374 656d 2c20 616e 6420 6d61  e system, and ma
│ │ │ +00236830: 7920 7265 6d6f 7665 2061 6e79 2070 6163  y remove any pac
│ │ │ +00236840: 6b61 6765 730a 2320 7468 6174 2064 6570  kages.# that dep
│ │ │ +00236850: 656e 6420 6f6e 2073 7175 6964 2e20 4578  end on squid. Ex
│ │ │ +00236860: 6563 7574 6520 7468 6973 0a23 2072 656d  ecute this.# rem
│ │ │ +00236870: 6564 6961 7469 6f6e 2041 4654 4552 2074  ediation AFTER t
│ │ │ +00236880: 6573 7469 6e67 206f 6e20 6120 6e6f 6e2d  esting on a non-
│ │ │ +00236890: 7072 6f64 7563 7469 6f6e 0a23 2073 7973  production.# sys
│ │ │ +002368a0: 7465 6d21 0a0a 0a69 6620 7270 6d20 2d71  tem!...if rpm -q
│ │ │ +002368b0: 202d 2d71 7569 6574 2022 7371 7569 6422   --quiet "squid"
│ │ │ +002368c0: 203b 2074 6865 6e0a 646e 6620 7265 6d6f   ; then.dnf remo
│ │ │ +002368d0: 7665 202d 7920 2d2d 6e6f 6175 746f 7265  ve -y --noautore
│ │ │ +002368e0: 6d6f 7665 2022 7371 7569 6422 0a66 690a  move "squid".fi.
│ │ │ +002368f0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +002369a0: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ +002369b0: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ +002369c0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
low
Disru │ │ │ +00236760: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00236770: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +002367b0: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +002367c0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexity: │ │ │ +00236a90: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00236aa0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
..package --rem
│ │ │ +00236b00: 6f76 653d 7371 7569 640a 3c2f 636f 6465  ove=squid.
low
Disru │ │ │ +00236a70: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00236a80: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00236ac0: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +00236ad0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
R │ │ │ -00237c40: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ -00237c50: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ -00237c60: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -00237d30: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00237d40: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -00237d90: 0a0a 7061 636b 6167 6520 2d2d 7265 6d6f  ..package --remo
│ │ │ -00237da0: 7665 3d73 616d 6261 0a3c 2f63 6f64 653e  ve=samba.
│ │ │ -00237db0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -00237e60: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ -00237e70: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00237e80: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00237e90: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00237ea0: 7365 2220 6964 3d22 6964 3733 3622 3e3c se" id="id736">< │ │ │ -00237eb0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -00237ec0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -00237ed0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -00237ee0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -00237ef0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Disruption:Strategy: │ │ │ -00237f80: 3c74 643e 6469 7361 626c 653c 2f74 643e │ │ │ -00237f90: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Complexity:low
Disrup │ │ │ -00237d10: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00237d20: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00237d60: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -00237d70: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complex │ │ │ -00237f00: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -00237f10: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ -00237f50: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -00237f60: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
disable
.include │ │ │ -00237fb0: 2072 656d 6f76 655f 7361 6d62 610a 0a63 remove_samba..c │ │ │ -00237fc0: 6c61 7373 2072 656d 6f76 655f 7361 6d62 lass remove_samb │ │ │ -00237fd0: 6120 7b0a 2020 7061 636b 6167 6520 7b20 a {. package { │ │ │ -00237fe0: 2773 616d 6261 273a 0a20 2020 2065 6e73 'samba':. ens │ │ │ -00237ff0: 7572 6520 3d26 6774 3b20 2770 7572 6765 ure => 'purge │ │ │ -00238000: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 d',. }.}.
Remedi │ │ │ -002380c0: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -002380d0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -00238180: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -002381a0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -002381d0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -00238160: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -00238170: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00238190: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -002381b0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -002381c0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -00238200: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -00238210: 3a20 2755 6e69 6e73 7461 6c6c 2053 616d : 'Uninstall Sam │ │ │ -00238220: 6261 2050 6163 6b61 6765 3a20 456e 7375 ba Package: Ensu │ │ │ -00238230: 7265 2073 616d 6261 2069 7320 7265 6d6f re samba is remo │ │ │ -00238240: 7665 6427 0a20 2061 6e73 6962 6c65 2e62 ved'. ansible.b │ │ │ -00238250: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a uiltin.package:. │ │ │ -00238260: 2020 2020 6e61 6d65 3a20 7361 6d62 610a name: samba. │ │ │ -00238270: 2020 2020 7374 6174 653a 2061 6273 656e state: absen │ │ │ -00238280: 740a 2020 7461 6773 3a0a 2020 2d20 6469 t. tags:. - di │ │ │ -00238290: 7361 626c 655f 7374 7261 7465 6779 0a20 sable_strategy. │ │ │ -002382a0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ -002382b0: 790a 2020 2d20 6c6f 775f 6469 7372 7570 y. - low_disrup │ │ │ -002382c0: 7469 6f6e 0a20 202d 206e 6f5f 7265 626f tion. - no_rebo │ │ │ -002382d0: 6f74 5f6e 6565 6465 640a 2020 2d20 7061 ot_needed. - pa │ │ │ -002382e0: 636b 6167 655f 7361 6d62 615f 7265 6d6f ckage_samba_remo │ │ │ -002382f0: 7665 640a 2020 2d20 756e 6b6e 6f77 6e5f ved. - unknown_ │ │ │ -00238300: 7365 7665 7269 7479 0a3c 2f63 6f64 653e severity. │ │ │ -00238310: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063
Remedia │ │ │ -002383c0: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ -002383d0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -00238450: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -00238460: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -00238480: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -00238490: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -002384b0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -002384d0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ -00238500: 3c63 6f64 653e 0a23 2043 4155 5449 4f4e  .# CAUTION
│ │ │ -00238510: 3a20 5468 6973 2072 656d 6564 6961 7469  : This remediati
│ │ │ -00238520: 6f6e 2073 6372 6970 7420 7769 6c6c 2072  on script will r
│ │ │ -00238530: 656d 6f76 6520 7361 6d62 610a 2320 6672  emove samba.# fr
│ │ │ -00238540: 6f6d 2074 6865 2073 7973 7465 6d2c 2061  om the system, a
│ │ │ -00238550: 6e64 206d 6179 2072 656d 6f76 6520 616e  nd may remove an
│ │ │ -00238560: 7920 7061 636b 6167 6573 0a23 2074 6861  y packages.# tha
│ │ │ -00238570: 7420 6465 7065 6e64 206f 6e20 7361 6d62  t depend on samb
│ │ │ -00238580: 612e 2045 7865 6375 7465 2074 6869 730a  a. Execute this.
│ │ │ -00238590: 2320 7265 6d65 6469 6174 696f 6e20 4146  # remediation AF
│ │ │ -002385a0: 5445 5220 7465 7374 696e 6720 6f6e 2061  TER testing on a
│ │ │ -002385b0: 206e 6f6e 2d70 726f 6475 6374 696f 6e0a   non-production.
│ │ │ -002385c0: 2320 7379 7374 656d 210a 0a0a 6966 2072  # system!...if r
│ │ │ -002385d0: 706d 202d 7120 2d2d 7175 6965 7420 2273  pm -q --quiet "s
│ │ │ -002385e0: 616d 6261 2220 3b20 7468 656e 0a64 6e66  amba" ; then.dnf
│ │ │ -002385f0: 2072 656d 6f76 6520 2d79 202d 2d6e 6f61   remove -y --noa
│ │ │ -00238600: 7574 6f72 656d 6f76 6520 2273 616d 6261  utoremove "samba
│ │ │ -00238610: 220a 6669 0a3c 2f63 6f64 653e 3c2f 7072  ".fi.
│ │ │ +00237cf0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ +00237d90: 206e 616d 653a 2027 556e 696e 7374 616c   name: 'Uninstal
│ │ │ +00237da0: 6c20 5361 6d62 6120 5061 636b 6167 653a  l Samba Package:
│ │ │ +00237db0: 2045 6e73 7572 6520 7361 6d62 6120 6973   Ensure samba is
│ │ │ +00237dc0: 2072 656d 6f76 6564 270a 2020 616e 7369   removed'.  ansi
│ │ │ +00237dd0: 626c 652e 6275 696c 7469 6e2e 7061 636b  ble.builtin.pack
│ │ │ +00237de0: 6167 653a 0a20 2020 206e 616d 653a 2073  age:.    name: s
│ │ │ +00237df0: 616d 6261 0a20 2020 2073 7461 7465 3a20  amba.    state: 
│ │ │ +00237e00: 6162 7365 6e74 0a20 2074 6167 733a 0a20  absent.  tags:. 
│ │ │ +00237e10: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ +00237e20: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +00237e30: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +00237e40: 6973 7275 7074 696f 6e0a 2020 2d20 6e6f  isruption.  - no
│ │ │ +00237e50: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ +00237e60: 202d 2070 6163 6b61 6765 5f73 616d 6261   - package_samba
│ │ │ +00237e70: 5f72 656d 6f76 6564 0a20 202d 2075 6e6b  _removed.  - unk
│ │ │ +00237e80: 6e6f 776e 5f73 6576 6572 6974 790a 3c2f  nown_severity.
Re │ │ │ +00237f40: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ +00237f50: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +00237f60: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
│ │ │ +00237ce0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00237d10: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00237d20: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00237d60: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +00237d70: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
low< │ │ │ +00238000: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +00238050: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.in
│ │ │ +00238090: 636c 7564 6520 7265 6d6f 7665 5f73 616d  clude remove_sam
│ │ │ +002380a0: 6261 0a0a 636c 6173 7320 7265 6d6f 7665  ba..class remove
│ │ │ +002380b0: 5f73 616d 6261 207b 0a20 2070 6163 6b61  _samba {.  packa
│ │ │ +002380c0: 6765 207b 2027 7361 6d62 6127 3a0a 2020  ge { 'samba':.  
│ │ │ +002380d0: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ +002380e0: 7075 7267 6564 272c 0a20 207d 0a7d 0a3c  purged',.  }.}.<
│ │ │ +002380f0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +002381a0: 656d 6564 6961 7469 6f6e 2053 6865 6c6c emediation Shell │ │ │ +002381b0: 2073 6372 6970 7420 e287 b23c 2f61 3e3c script ...< │ │ │ +002381c0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Co │ │ │ +00237fe0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +00238010: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +00238030: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +00238040: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +00238060: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +00238070: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Com │ │ │ +00238240: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +00238270: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +00238290: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +002382a0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +002382c0: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +002382d0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.# C
│ │ │ +002382f0: 4155 5449 4f4e 3a20 5468 6973 2072 656d  AUTION: This rem
│ │ │ +00238300: 6564 6961 7469 6f6e 2073 6372 6970 7420  ediation script 
│ │ │ +00238310: 7769 6c6c 2072 656d 6f76 6520 7361 6d62  will remove samb
│ │ │ +00238320: 610a 2320 6672 6f6d 2074 6865 2073 7973  a.# from the sys
│ │ │ +00238330: 7465 6d2c 2061 6e64 206d 6179 2072 656d  tem, and may rem
│ │ │ +00238340: 6f76 6520 616e 7920 7061 636b 6167 6573  ove any packages
│ │ │ +00238350: 0a23 2074 6861 7420 6465 7065 6e64 206f  .# that depend o
│ │ │ +00238360: 6e20 7361 6d62 612e 2045 7865 6375 7465  n samba. Execute
│ │ │ +00238370: 2074 6869 730a 2320 7265 6d65 6469 6174   this.# remediat
│ │ │ +00238380: 696f 6e20 4146 5445 5220 7465 7374 696e  ion AFTER testin
│ │ │ +00238390: 6720 6f6e 2061 206e 6f6e 2d70 726f 6475  g on a non-produ
│ │ │ +002383a0: 6374 696f 6e0a 2320 7379 7374 656d 210a  ction.# system!.
│ │ │ +002383b0: 0a0a 6966 2072 706d 202d 7120 2d2d 7175  ..if rpm -q --qu
│ │ │ +002383c0: 6965 7420 2273 616d 6261 2220 3b20 7468  iet "samba" ; th
│ │ │ +002383d0: 656e 0a64 6e66 2072 656d 6f76 6520 2d79  en.dnf remove -y
│ │ │ +002383e0: 202d 2d6e 6f61 7574 6f72 656d 6f76 6520   --noautoremove 
│ │ │ +002383f0: 2273 616d 6261 220a 6669 0a3c 2f63 6f64  "samba".fi.
Remed │ │ │ +002384b0: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ +002384c0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +002384d0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ +00238550: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +00238580: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +002385a0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +002385b0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +002385d0: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +002385e0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
..pa
│ │ │ +00238600: 636b 6167 6520 2d2d 7265 6d6f 7665 3d73  ckage --remove=s
│ │ │ +00238610: 616d 6261 0a3c 2f63 6f64 653e 3c2f 7072  amba.
│ │ │ 00238640: 3c2f 7461 626c 653e 3c2f 7464 3e3c 2f74 Remed │ │ │ -00239730: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ -00239740: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -00239750: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -002397d0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -00239800: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -00239820: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -00239830: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -00239850: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -00239860: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
..pa
│ │ │ -00239880: 636b 6167 6520 2d2d 7265 6d6f 7665 3d6e  ckage --remove=n
│ │ │ -00239890: 6574 2d73 6e6d 700a 3c2f 636f 6465 3e3c  et-snmp.<
│ │ │ -002398a0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ -00239950: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ -00239960: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -002399e0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -002399f0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -00239a00: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -00239a40: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -00239a50: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -00239a70: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -00239a80: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.include 
│ │ │ -00239aa0: 7265 6d6f 7665 5f6e 6574 2d73 6e6d 700a  remove_net-snmp.
│ │ │ -00239ab0: 0a63 6c61 7373 2072 656d 6f76 655f 6e65  .class remove_ne
│ │ │ -00239ac0: 742d 736e 6d70 207b 0a20 2070 6163 6b61  t-snmp {.  packa
│ │ │ -00239ad0: 6765 207b 2027 6e65 742d 736e 6d70 273a  ge { 'net-snmp':
│ │ │ -00239ae0: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ -00239af0: 3b20 2770 7572 6765 6427 2c0a 2020 7d0a  ; 'purged',.  }.
│ │ │ -00239b00: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -00239b10: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -00239bc0: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -00239bd0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -00239c50: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -00239c70: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -00239cc0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -00239cf0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: 'Unins
│ │ │ -00239d10: 7461 6c6c 206e 6574 2d73 6e6d 7020 5061  tall net-snmp Pa
│ │ │ -00239d20: 636b 6167 653a 2045 6e73 7572 6520 6e65  ckage: Ensure ne
│ │ │ -00239d30: 742d 736e 6d70 2069 7320 7265 6d6f 7665  t-snmp is remove
│ │ │ -00239d40: 6427 0a20 2061 6e73 6962 6c65 2e62 7569  d'.  ansible.bui
│ │ │ -00239d50: 6c74 696e 2e70 6163 6b61 6765 3a0a 2020  ltin.package:.  
│ │ │ -00239d60: 2020 6e61 6d65 3a20 6e65 742d 736e 6d70    name: net-snmp
│ │ │ -00239d70: 0a20 2020 2073 7461 7465 3a20 6162 7365  .    state: abse
│ │ │ -00239d80: 6e74 0a20 2074 6167 733a 0a20 202d 2050  nt.  tags:.  - P
│ │ │ -00239d90: 4349 2d44 5353 7634 2d32 2e32 0a20 202d  CI-DSSv4-2.2.  -
│ │ │ -00239da0: 2050 4349 2d44 5353 7634 2d32 2e32 2e34   PCI-DSSv4-2.2.4
│ │ │ -00239db0: 0a20 202d 2064 6973 6162 6c65 5f73 7472  .  - disable_str
│ │ │ -00239dc0: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ -00239dd0: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ -00239de0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -00239df0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -00239e00: 0a20 202d 2070 6163 6b61 6765 5f6e 6574  .  - package_net
│ │ │ -00239e10: 2d73 6e6d 705f 7265 6d6f 7665 640a 2020  -snmp_removed.  
│ │ │ -00239e20: 2d20 756e 6b6e 6f77 6e5f 7365 7665 7269  - unknown_severi
│ │ │ -00239e30: 7479 0a3c 2f63 6f64 653e 3c2f 7072 653e  ty.
│ │ │ -00239e40: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation S │ │ │ -00239ef0: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ -00239f00: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
low
Disr │ │ │ -00239c80: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00239c90: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -00239cd0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -00239ce0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
< │ │ │ -00239fd0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00239fe0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -0023a030: 0a23 2043 4155 5449 4f4e 3a20 5468 6973  .# CAUTION: This
│ │ │ -0023a040: 2072 656d 6564 6961 7469 6f6e 2073 6372   remediation scr
│ │ │ -0023a050: 6970 7420 7769 6c6c 2072 656d 6f76 6520  ipt will remove 
│ │ │ -0023a060: 6e65 742d 736e 6d70 0a23 2066 726f 6d20  net-snmp.# from 
│ │ │ -0023a070: 7468 6520 7379 7374 656d 2c20 616e 6420  the system, and 
│ │ │ -0023a080: 6d61 7920 7265 6d6f 7665 2061 6e79 2070  may remove any p
│ │ │ -0023a090: 6163 6b61 6765 730a 2320 7468 6174 2064  ackages.# that d
│ │ │ -0023a0a0: 6570 656e 6420 6f6e 206e 6574 2d73 6e6d  epend on net-snm
│ │ │ -0023a0b0: 702e 2045 7865 6375 7465 2074 6869 730a  p. Execute this.
│ │ │ -0023a0c0: 2320 7265 6d65 6469 6174 696f 6e20 4146  # remediation AF
│ │ │ -0023a0d0: 5445 5220 7465 7374 696e 6720 6f6e 2061  TER testing on a
│ │ │ -0023a0e0: 206e 6f6e 2d70 726f 6475 6374 696f 6e0a   non-production.
│ │ │ -0023a0f0: 2320 7379 7374 656d 210a 0a0a 6966 2072  # system!...if r
│ │ │ -0023a100: 706d 202d 7120 2d2d 7175 6965 7420 226e  pm -q --quiet "n
│ │ │ -0023a110: 6574 2d73 6e6d 7022 203b 2074 6865 6e0a  et-snmp" ; then.
│ │ │ -0023a120: 646e 6620 7265 6d6f 7665 202d 7920 2d2d  dnf remove -y --
│ │ │ -0023a130: 6e6f 6175 746f 7265 6d6f 7665 2022 6e65  noautoremove "ne
│ │ │ -0023a140: 742d 736e 6d70 220a 6669 0a3c 2f63 6f64  t-snmp".fi.
Complexity:low
Disrup │ │ │ -00239fb0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00239fc0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0023a000: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -0023a010: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Comp │ │ │ +002397d0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +002397e0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +00239800: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +00239820: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +00239830: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +00239870: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ +00239880: 653a 2027 556e 696e 7374 616c 6c20 6e65  e: 'Uninstall ne
│ │ │ +00239890: 742d 736e 6d70 2050 6163 6b61 6765 3a20  t-snmp Package: 
│ │ │ +002398a0: 456e 7375 7265 206e 6574 2d73 6e6d 7020  Ensure net-snmp 
│ │ │ +002398b0: 6973 2072 656d 6f76 6564 270a 2020 616e  is removed'.  an
│ │ │ +002398c0: 7369 626c 652e 6275 696c 7469 6e2e 7061  sible.builtin.pa
│ │ │ +002398d0: 636b 6167 653a 0a20 2020 206e 616d 653a  ckage:.    name:
│ │ │ +002398e0: 206e 6574 2d73 6e6d 700a 2020 2020 7374   net-snmp.    st
│ │ │ +002398f0: 6174 653a 2061 6273 656e 740a 2020 7461  ate: absent.  ta
│ │ │ +00239900: 6773 3a0a 2020 2d20 5043 492d 4453 5376  gs:.  - PCI-DSSv
│ │ │ +00239910: 342d 322e 320a 2020 2d20 5043 492d 4453  4-2.2.  - PCI-DS
│ │ │ +00239920: 5376 342d 322e 322e 340a 2020 2d20 6469  Sv4-2.2.4.  - di
│ │ │ +00239930: 7361 626c 655f 7374 7261 7465 6779 0a20  sable_strategy. 
│ │ │ +00239940: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +00239950: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ +00239960: 7469 6f6e 0a20 202d 206e 6f5f 7265 626f  tion.  - no_rebo
│ │ │ +00239970: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ +00239980: 636b 6167 655f 6e65 742d 736e 6d70 5f72  ckage_net-snmp_r
│ │ │ +00239990: 656d 6f76 6564 0a20 202d 2075 6e6b 6e6f  emoved.  - unkno
│ │ │ +002399a0: 776e 5f73 6576 6572 6974 790a 3c2f 636f  wn_severity.
< │ │ │ +002399c0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +002399d0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +002399e0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +002399f0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +00239a00: 6437 3431 2220 7461 6269 6e64 6578 3d22 d741" tabindex=" │ │ │ +00239a10: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +00239a20: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +00239a30: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +00239a40: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +00239a50: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +00239a60: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ +00239a70: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +00239b00: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +00239b10: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +00239b30: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +00239b50: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +00239b60: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +00239ba0: 3c70 7265 3e3c 636f 6465 3e0a 696e 636c
.incl
│ │ │ +00239bb0: 7564 6520 7265 6d6f 7665 5f6e 6574 2d73  ude remove_net-s
│ │ │ +00239bc0: 6e6d 700a 0a63 6c61 7373 2072 656d 6f76  nmp..class remov
│ │ │ +00239bd0: 655f 6e65 742d 736e 6d70 207b 0a20 2070  e_net-snmp {.  p
│ │ │ +00239be0: 6163 6b61 6765 207b 2027 6e65 742d 736e  ackage { 'net-sn
│ │ │ +00239bf0: 6d70 273a 0a20 2020 2065 6e73 7572 6520  mp':.    ensure 
│ │ │ +00239c00: 3d26 6774 3b20 2770 7572 6765 6427 2c0a  => 'purged',.
│ │ │ +00239c10: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediatio │ │ │ +00239cd0: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ +00239ce0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +00239d60: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +00239d80: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +00239dd0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +00239e00: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +00239d70: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00239d90: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +00239de0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +00239df0: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.# CAUTION: T
│ │ │ +00239e20: 6869 7320 7265 6d65 6469 6174 696f 6e20  his remediation 
│ │ │ +00239e30: 7363 7269 7074 2077 696c 6c20 7265 6d6f  script will remo
│ │ │ +00239e40: 7665 206e 6574 2d73 6e6d 700a 2320 6672  ve net-snmp.# fr
│ │ │ +00239e50: 6f6d 2074 6865 2073 7973 7465 6d2c 2061  om the system, a
│ │ │ +00239e60: 6e64 206d 6179 2072 656d 6f76 6520 616e  nd may remove an
│ │ │ +00239e70: 7920 7061 636b 6167 6573 0a23 2074 6861  y packages.# tha
│ │ │ +00239e80: 7420 6465 7065 6e64 206f 6e20 6e65 742d  t depend on net-
│ │ │ +00239e90: 736e 6d70 2e20 4578 6563 7574 6520 7468  snmp. Execute th
│ │ │ +00239ea0: 6973 0a23 2072 656d 6564 6961 7469 6f6e  is.# remediation
│ │ │ +00239eb0: 2041 4654 4552 2074 6573 7469 6e67 206f   AFTER testing o
│ │ │ +00239ec0: 6e20 6120 6e6f 6e2d 7072 6f64 7563 7469  n a non-producti
│ │ │ +00239ed0: 6f6e 0a23 2073 7973 7465 6d21 0a0a 0a69  on.# system!...i
│ │ │ +00239ee0: 6620 7270 6d20 2d71 202d 2d71 7569 6574  f rpm -q --quiet
│ │ │ +00239ef0: 2022 6e65 742d 736e 6d70 2220 3b20 7468   "net-snmp" ; th
│ │ │ +00239f00: 656e 0a64 6e66 2072 656d 6f76 6520 2d79  en.dnf remove -y
│ │ │ +00239f10: 202d 2d6e 6f61 7574 6f72 656d 6f76 6520   --noautoremove 
│ │ │ +00239f20: 226e 6574 2d73 6e6d 7022 0a66 690a 3c2f  "net-snmp".fi.
Re │ │ │ +00239fe0: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ +00239ff0: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
│ │ │ +0023a090: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ +0023a130: 0a70 6163 6b61 6765 202d 2d72 656d 6f76  .package --remov
│ │ │ +0023a140: 653d 6e65 742d 736e 6d70 0a3c 2f63 6f64  e=net-snmp.
│ │ │ +0023a080: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +0023a0b0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +0023a0c0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +0023a100: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +0023a110: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Remed │ │ │ -0023a990: 6961 7469 6f6e 204f 5342 7569 6c64 2042 iation OSBuild B │ │ │ -0023a9a0: 6c75 6570 7269 6e74 2073 6e69 7070 6574 lueprint snippet │ │ │ -0023a9b0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...

.[customi
│ │ │ -0023aa00: 7a61 7469 6f6e 732e 7365 7276 6963 6573  zations.services
│ │ │ -0023aa10: 5d0a 6d61 736b 6564 203d 205b 2273 6e6d  ].masked = ["snm
│ │ │ -0023aa20: 7064 225d 0a3c 2f63 6f64 653e 3c2f 7072  pd"].
Remediation │ │ │ -0023aae0: 2050 7570 7065 7420 736e 6970 7065 7420 Puppet snippet │ │ │ -0023aaf0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -0023ab80: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -0023aba0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -0023abc0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -0023abf0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -0023ac00: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ -0023ac10: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
include disab
│ │ │ -0023ac30: 6c65 5f73 6e6d 7064 0a0a 636c 6173 7320  le_snmpd..class 
│ │ │ -0023ac40: 6469 7361 626c 655f 736e 6d70 6420 7b0a  disable_snmpd {.
│ │ │ -0023ac50: 2020 7365 7276 6963 6520 7b27 736e 6d70    service {'snmp
│ │ │ -0023ac60: 6427 3a0a 2020 2020 656e 6162 6c65 203d  d':.    enable =
│ │ │ -0023ac70: 2667 743b 2066 616c 7365 2c0a 2020 2020  > false,.    
│ │ │ -0023ac80: 656e 7375 7265 203d 2667 743b 2027 7374  ensure => 'st
│ │ │ -0023ac90: 6f70 7065 6427 2c0a 2020 7d0a 7d0a 3c2f  opped',.  }.}.
Re │ │ │ -0023ad50: 6d65 6469 6174 696f 6e20 416e 7369 626c mediation Ansibl │ │ │ -0023ad60: 6520 736e 6970 7065 7420 e287 b23c 2f61 e snippet ...
< │ │ │ -0023ae00: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0023ae10: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -0023ae60: 3c74 723e 3c74 683e 5374 7261 7465 6779
- 
│ │ │ -0023aea0: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ -0023aeb0: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ -0023aec0: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ -0023aed0: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ -0023aee0: 6f0a 2020 7461 6773 3a0a 2020 2d20 6469  o.  tags:.  - di
│ │ │ -0023aef0: 7361 626c 655f 7374 7261 7465 6779 0a20  sable_strategy. 
│ │ │ -0023af00: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -0023af10: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -0023af20: 7469 6f6e 0a20 202d 206c 6f77 5f73 6576  tion.  - low_sev
│ │ │ -0023af30: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ -0023af40: 6f6f 745f 6e65 6564 6564 0a20 202d 2073  oot_needed.  - s
│ │ │ -0023af50: 6572 7669 6365 5f73 6e6d 7064 5f64 6973  ervice_snmpd_dis
│ │ │ -0023af60: 6162 6c65 640a 0a2d 206e 616d 653a 2044  abled..- name: D
│ │ │ -0023af70: 6973 6162 6c65 2073 6e6d 7064 2053 6572  isable snmpd Ser
│ │ │ -0023af80: 7669 6365 202d 2044 6973 6162 6c65 2073  vice - Disable s
│ │ │ -0023af90: 6572 7669 6365 2073 6e6d 7064 0a20 2062  ervice snmpd.  b
│ │ │ -0023afa0: 6c6f 636b 3a0a 0a20 202d 206e 616d 653a  lock:..  - name:
│ │ │ -0023afb0: 2044 6973 6162 6c65 2073 6e6d 7064 2053   Disable snmpd S
│ │ │ -0023afc0: 6572 7669 6365 202d 2043 6f6c 6c65 6374  ervice - Collect
│ │ │ -0023afd0: 2073 7973 7465 6d64 2053 6572 7669 6365   systemd Service
│ │ │ -0023afe0: 7320 5072 6573 656e 7420 696e 2074 6865  s Present in the
│ │ │ -0023aff0: 2053 7973 7465 6d0a 2020 2020 616e 7369   System.    ansi
│ │ │ -0023b000: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ -0023b010: 616e 643a 2073 7973 7465 6d63 746c 202d  and: systemctl -
│ │ │ -0023b020: 7120 6c69 7374 2d75 6e69 742d 6669 6c65  q list-unit-file
│ │ │ -0023b030: 7320 2d2d 7479 7065 2073 6572 7669 6365  s --type service
│ │ │ -0023b040: 0a20 2020 2072 6567 6973 7465 723a 2073  .    register: s
│ │ │ -0023b050: 6572 7669 6365 5f65 7869 7374 730a 2020  ervice_exists.  
│ │ │ -0023b060: 2020 6368 616e 6765 645f 7768 656e 3a20    changed_when: 
│ │ │ -0023b070: 6661 6c73 650a 2020 2020 6661 696c 6564  false.    failed
│ │ │ -0023b080: 5f77 6865 6e3a 2073 6572 7669 6365 5f65  _when: service_e
│ │ │ -0023b090: 7869 7374 732e 7263 206e 6f74 2069 6e20  xists.rc not in 
│ │ │ -0023b0a0: 5b30 2c20 315d 0a20 2020 2063 6865 636b  [0, 1].    check
│ │ │ -0023b0b0: 5f6d 6f64 653a 2066 616c 7365 0a0a 2020  _mode: false..  
│ │ │ -0023b0c0: 2d20 6e61 6d65 3a20 4469 7361 626c 6520  - name: Disable 
│ │ │ -0023b0d0: 736e 6d70 6420 5365 7276 6963 6520 2d20  snmpd Service - 
│ │ │ -0023b0e0: 456e 7375 7265 2073 6e6d 7064 2e73 6572  Ensure snmpd.ser
│ │ │ -0023b0f0: 7669 6365 2069 7320 4d61 736b 6564 0a20  vice is Masked. 
│ │ │ -0023b100: 2020 2061 6e73 6962 6c65 2e62 7569 6c74     ansible.built
│ │ │ -0023b110: 696e 2e73 7973 7465 6d64 3a0a 2020 2020  in.systemd:.    
│ │ │ -0023b120: 2020 6e61 6d65 3a20 736e 6d70 642e 7365    name: snmpd.se
│ │ │ -0023b130: 7276 6963 650a 2020 2020 2020 7374 6174  rvice.      stat
│ │ │ -0023b140: 653a 2073 746f 7070 6564 0a20 2020 2020  e: stopped.     
│ │ │ -0023b150: 2065 6e61 626c 6564 3a20 6661 6c73 650a   enabled: false.
│ │ │ -0023b160: 2020 2020 2020 6d61 736b 6564 3a20 7472        masked: tr
│ │ │ -0023b170: 7565 0a20 2020 2077 6865 6e3a 2073 6572  ue.    when: ser
│ │ │ -0023b180: 7669 6365 5f65 7869 7374 732e 7374 646f  vice_exists.stdo
│ │ │ -0023b190: 7574 5f6c 696e 6573 2069 7320 7365 6172  ut_lines is sear
│ │ │ -0023b1a0: 6368 2822 736e 6d70 642e 7365 7276 6963  ch("snmpd.servic
│ │ │ -0023b1b0: 6522 2c20 6d75 6c74 696c 696e 653d 5472  e", multiline=Tr
│ │ │ -0023b1c0: 7565 290a 0a20 202d 206e 616d 653a 2055  ue)..  - name: U
│ │ │ -0023b1d0: 6e69 7420 536f 636b 6574 2045 7869 7374  nit Socket Exist
│ │ │ -0023b1e0: 7320 2d20 736e 6d70 642e 736f 636b 6574  s - snmpd.socket
│ │ │ -0023b1f0: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ -0023b200: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 7379  ltin.command: sy
│ │ │ -0023b210: 7374 656d 6374 6c20 2d71 206c 6973 742d  stemctl -q list-
│ │ │ -0023b220: 756e 6974 2d66 696c 6573 2073 6e6d 7064  unit-files snmpd
│ │ │ -0023b230: 2e73 6f63 6b65 740a 2020 2020 7265 6769  .socket.    regi
│ │ │ -0023b240: 7374 6572 3a20 736f 636b 6574 5f66 696c  ster: socket_fil
│ │ │ -0023b250: 655f 6578 6973 7473 0a20 2020 2063 6861  e_exists.    cha
│ │ │ -0023b260: 6e67 6564 5f77 6865 6e3a 2066 616c 7365  nged_when: false
│ │ │ -0023b270: 0a20 2020 2066 6169 6c65 645f 7768 656e  .    failed_when
│ │ │ -0023b280: 3a20 736f 636b 6574 5f66 696c 655f 6578  : socket_file_ex
│ │ │ -0023b290: 6973 7473 2e72 6320 6e6f 7420 696e 205b  ists.rc not in [
│ │ │ -0023b2a0: 302c 2031 5d0a 2020 2020 6368 6563 6b5f  0, 1].    check_
│ │ │ -0023b2b0: 6d6f 6465 3a20 6661 6c73 650a 0a20 202d  mode: false..  -
│ │ │ -0023b2c0: 206e 616d 653a 2044 6973 6162 6c65 2073   name: Disable s
│ │ │ -0023b2d0: 6e6d 7064 2053 6572 7669 6365 202d 2044  nmpd Service - D
│ │ │ -0023b2e0: 6973 6162 6c65 2053 6f63 6b65 7420 736e  isable Socket sn
│ │ │ -0023b2f0: 6d70 640a 2020 2020 616e 7369 626c 652e  mpd.    ansible.
│ │ │ -0023b300: 6275 696c 7469 6e2e 7379 7374 656d 643a  builtin.systemd:
│ │ │ -0023b310: 0a20 2020 2020 206e 616d 653a 2073 6e6d  .      name: snm
│ │ │ -0023b320: 7064 2e73 6f63 6b65 740a 2020 2020 2020  pd.socket.      
│ │ │ -0023b330: 656e 6162 6c65 643a 2066 616c 7365 0a20  enabled: false. 
│ │ │ -0023b340: 2020 2020 2073 7461 7465 3a20 7374 6f70       state: stop
│ │ │ -0023b350: 7065 640a 2020 2020 2020 6d61 736b 6564  ped.      masked
│ │ │ -0023b360: 3a20 7472 7565 0a20 2020 2077 6865 6e3a  : true.    when:
│ │ │ -0023b370: 2073 6f63 6b65 745f 6669 6c65 5f65 7869   socket_file_exi
│ │ │ -0023b380: 7374 732e 7374 646f 7574 5f6c 696e 6573  sts.stdout_lines
│ │ │ -0023b390: 2069 7320 7365 6172 6368 2822 736e 6d70   is search("snmp
│ │ │ -0023b3a0: 642e 736f 636b 6574 222c 206d 756c 7469  d.socket", multi
│ │ │ -0023b3b0: 6c69 6e65 3d54 7275 6529 0a20 2074 6167  line=True).  tag
│ │ │ -0023b3c0: 733a 0a20 202d 2064 6973 6162 6c65 5f73  s:.  - disable_s
│ │ │ -0023b3d0: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ -0023b3e0: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ -0023b3f0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -0023b400: 2d20 6c6f 775f 7365 7665 7269 7479 0a20  - low_severity. 
│ │ │ -0023b410: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -0023b420: 6465 640a 2020 2d20 7365 7276 6963 655f  ded.  - service_
│ │ │ -0023b430: 736e 6d70 645f 6469 7361 626c 6564 0a20  snmpd_disabled. 
│ │ │ -0023b440: 202d 2073 7065 6369 616c 5f73 6572 7669   - special_servi
│ │ │ -0023b450: 6365 5f62 6c6f 636b 0a20 2077 6865 6e3a  ce_block.  when:
│ │ │ -0023b460: 2028 2022 6e65 742d 736e 6d70 2220 696e   ( "net-snmp" in
│ │ │ -0023b470: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -0023b480: 6163 6b61 6765 7320 616e 6420 226b 6572  ackages and "ker
│ │ │ -0023b490: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -0023b4a0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -0023b4b0: 2020 2029 0a3c 2f63 6f64 653e 3c2f 7072     ).
C │ │ │ -0023adf0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -0023ae20: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -0023ae30: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -0023ae70: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ -0023ae80: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Comp │ │ │ +0023aa30: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +0023aa40: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +0023aa60: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +0023aa80: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +0023aa90: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +0023aad0: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ +0023aae0: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ +0023aaf0: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ +0023ab00: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ +0023ab10: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ +0023ab20: 2074 6167 733a 0a20 202d 2064 6973 6162   tags:.  - disab
│ │ │ +0023ab30: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ +0023ab40: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +0023ab50: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +0023ab60: 6e0a 2020 2d20 6c6f 775f 7365 7665 7269  n.  - low_severi
│ │ │ +0023ab70: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ +0023ab80: 5f6e 6565 6465 640a 2020 2d20 7365 7276  _needed.  - serv
│ │ │ +0023ab90: 6963 655f 736e 6d70 645f 6469 7361 626c  ice_snmpd_disabl
│ │ │ +0023aba0: 6564 0a0a 2d20 6e61 6d65 3a20 4469 7361  ed..- name: Disa
│ │ │ +0023abb0: 626c 6520 736e 6d70 6420 5365 7276 6963  ble snmpd Servic
│ │ │ +0023abc0: 6520 2d20 4469 7361 626c 6520 7365 7276  e - Disable serv
│ │ │ +0023abd0: 6963 6520 736e 6d70 640a 2020 626c 6f63  ice snmpd.  bloc
│ │ │ +0023abe0: 6b3a 0a0a 2020 2d20 6e61 6d65 3a20 4469  k:..  - name: Di
│ │ │ +0023abf0: 7361 626c 6520 736e 6d70 6420 5365 7276  sable snmpd Serv
│ │ │ +0023ac00: 6963 6520 2d20 436f 6c6c 6563 7420 7379  ice - Collect sy
│ │ │ +0023ac10: 7374 656d 6420 5365 7276 6963 6573 2050  stemd Services P
│ │ │ +0023ac20: 7265 7365 6e74 2069 6e20 7468 6520 5379  resent in the Sy
│ │ │ +0023ac30: 7374 656d 0a20 2020 2061 6e73 6962 6c65  stem.    ansible
│ │ │ +0023ac40: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ +0023ac50: 3a20 7379 7374 656d 6374 6c20 2d71 206c  : systemctl -q l
│ │ │ +0023ac60: 6973 742d 756e 6974 2d66 696c 6573 202d  ist-unit-files -
│ │ │ +0023ac70: 2d74 7970 6520 7365 7276 6963 650a 2020  -type service.  
│ │ │ +0023ac80: 2020 7265 6769 7374 6572 3a20 7365 7276    register: serv
│ │ │ +0023ac90: 6963 655f 6578 6973 7473 0a20 2020 2063  ice_exists.    c
│ │ │ +0023aca0: 6861 6e67 6564 5f77 6865 6e3a 2066 616c  hanged_when: fal
│ │ │ +0023acb0: 7365 0a20 2020 2066 6169 6c65 645f 7768  se.    failed_wh
│ │ │ +0023acc0: 656e 3a20 7365 7276 6963 655f 6578 6973  en: service_exis
│ │ │ +0023acd0: 7473 2e72 6320 6e6f 7420 696e 205b 302c  ts.rc not in [0,
│ │ │ +0023ace0: 2031 5d0a 2020 2020 6368 6563 6b5f 6d6f   1].    check_mo
│ │ │ +0023acf0: 6465 3a20 6661 6c73 650a 0a20 202d 206e  de: false..  - n
│ │ │ +0023ad00: 616d 653a 2044 6973 6162 6c65 2073 6e6d  ame: Disable snm
│ │ │ +0023ad10: 7064 2053 6572 7669 6365 202d 2045 6e73  pd Service - Ens
│ │ │ +0023ad20: 7572 6520 736e 6d70 642e 7365 7276 6963  ure snmpd.servic
│ │ │ +0023ad30: 6520 6973 204d 6173 6b65 640a 2020 2020  e is Masked.    
│ │ │ +0023ad40: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +0023ad50: 7379 7374 656d 643a 0a20 2020 2020 206e  systemd:.      n
│ │ │ +0023ad60: 616d 653a 2073 6e6d 7064 2e73 6572 7669  ame: snmpd.servi
│ │ │ +0023ad70: 6365 0a20 2020 2020 2073 7461 7465 3a20  ce.      state: 
│ │ │ +0023ad80: 7374 6f70 7065 640a 2020 2020 2020 656e  stopped.      en
│ │ │ +0023ad90: 6162 6c65 643a 2066 616c 7365 0a20 2020  abled: false.   
│ │ │ +0023ada0: 2020 206d 6173 6b65 643a 2074 7275 650a     masked: true.
│ │ │ +0023adb0: 2020 2020 7768 656e 3a20 7365 7276 6963      when: servic
│ │ │ +0023adc0: 655f 6578 6973 7473 2e73 7464 6f75 745f  e_exists.stdout_
│ │ │ +0023add0: 6c69 6e65 7320 6973 2073 6561 7263 6828  lines is search(
│ │ │ +0023ade0: 2273 6e6d 7064 2e73 6572 7669 6365 222c  "snmpd.service",
│ │ │ +0023adf0: 206d 756c 7469 6c69 6e65 3d54 7275 6529   multiline=True)
│ │ │ +0023ae00: 0a0a 2020 2d20 6e61 6d65 3a20 556e 6974  ..  - name: Unit
│ │ │ +0023ae10: 2053 6f63 6b65 7420 4578 6973 7473 202d   Socket Exists -
│ │ │ +0023ae20: 2073 6e6d 7064 2e73 6f63 6b65 740a 2020   snmpd.socket.  
│ │ │ +0023ae30: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +0023ae40: 6e2e 636f 6d6d 616e 643a 2073 7973 7465  n.command: syste
│ │ │ +0023ae50: 6d63 746c 202d 7120 6c69 7374 2d75 6e69  mctl -q list-uni
│ │ │ +0023ae60: 742d 6669 6c65 7320 736e 6d70 642e 736f  t-files snmpd.so
│ │ │ +0023ae70: 636b 6574 0a20 2020 2072 6567 6973 7465  cket.    registe
│ │ │ +0023ae80: 723a 2073 6f63 6b65 745f 6669 6c65 5f65  r: socket_file_e
│ │ │ +0023ae90: 7869 7374 730a 2020 2020 6368 616e 6765  xists.    change
│ │ │ +0023aea0: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ +0023aeb0: 2020 6661 696c 6564 5f77 6865 6e3a 2073    failed_when: s
│ │ │ +0023aec0: 6f63 6b65 745f 6669 6c65 5f65 7869 7374  ocket_file_exist
│ │ │ +0023aed0: 732e 7263 206e 6f74 2069 6e20 5b30 2c20  s.rc not in [0, 
│ │ │ +0023aee0: 315d 0a20 2020 2063 6865 636b 5f6d 6f64  1].    check_mod
│ │ │ +0023aef0: 653a 2066 616c 7365 0a0a 2020 2d20 6e61  e: false..  - na
│ │ │ +0023af00: 6d65 3a20 4469 7361 626c 6520 736e 6d70  me: Disable snmp
│ │ │ +0023af10: 6420 5365 7276 6963 6520 2d20 4469 7361  d Service - Disa
│ │ │ +0023af20: 626c 6520 536f 636b 6574 2073 6e6d 7064  ble Socket snmpd
│ │ │ +0023af30: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ +0023af40: 6c74 696e 2e73 7973 7465 6d64 3a0a 2020  ltin.systemd:.  
│ │ │ +0023af50: 2020 2020 6e61 6d65 3a20 736e 6d70 642e      name: snmpd.
│ │ │ +0023af60: 736f 636b 6574 0a20 2020 2020 2065 6e61  socket.      ena
│ │ │ +0023af70: 626c 6564 3a20 6661 6c73 650a 2020 2020  bled: false.    
│ │ │ +0023af80: 2020 7374 6174 653a 2073 746f 7070 6564    state: stopped
│ │ │ +0023af90: 0a20 2020 2020 206d 6173 6b65 643a 2074  .      masked: t
│ │ │ +0023afa0: 7275 650a 2020 2020 7768 656e 3a20 736f  rue.    when: so
│ │ │ +0023afb0: 636b 6574 5f66 696c 655f 6578 6973 7473  cket_file_exists
│ │ │ +0023afc0: 2e73 7464 6f75 745f 6c69 6e65 7320 6973  .stdout_lines is
│ │ │ +0023afd0: 2073 6561 7263 6828 2273 6e6d 7064 2e73   search("snmpd.s
│ │ │ +0023afe0: 6f63 6b65 7422 2c20 6d75 6c74 696c 696e  ocket", multilin
│ │ │ +0023aff0: 653d 5472 7565 290a 2020 7461 6773 3a0a  e=True).  tags:.
│ │ │ +0023b000: 2020 2d20 6469 7361 626c 655f 7374 7261    - disable_stra
│ │ │ +0023b010: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ +0023b020: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +0023b030: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +0023b040: 6f77 5f73 6576 6572 6974 790a 2020 2d20  ow_severity.  - 
│ │ │ +0023b050: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +0023b060: 0a20 202d 2073 6572 7669 6365 5f73 6e6d  .  - service_snm
│ │ │ +0023b070: 7064 5f64 6973 6162 6c65 640a 2020 2d20  pd_disabled.  - 
│ │ │ +0023b080: 7370 6563 6961 6c5f 7365 7276 6963 655f  special_service_
│ │ │ +0023b090: 626c 6f63 6b0a 2020 7768 656e 3a20 2820  block.  when: ( 
│ │ │ +0023b0a0: 226e 6574 2d73 6e6d 7022 2069 6e20 616e  "net-snmp" in an
│ │ │ +0023b0b0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +0023b0c0: 6167 6573 2061 6e64 2022 6b65 726e 656c  ages and "kernel
│ │ │ +0023b0d0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +0023b0e0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +0023b0f0: 290a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  ).
< │ │ │ +0023b100: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ +0023b1b0: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ +0023b1c0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ +0023b290: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +0023b2a0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +0023b2f0: 696e 636c 7564 6520 6469 7361 626c 655f  include disable_
│ │ │ +0023b300: 736e 6d70 640a 0a63 6c61 7373 2064 6973  snmpd..class dis
│ │ │ +0023b310: 6162 6c65 5f73 6e6d 7064 207b 0a20 2073  able_snmpd {.  s
│ │ │ +0023b320: 6572 7669 6365 207b 2773 6e6d 7064 273a  ervice {'snmpd':
│ │ │ +0023b330: 0a20 2020 2065 6e61 626c 6520 3d26 6774  .    enable =>
│ │ │ +0023b340: 3b20 6661 6c73 652c 0a20 2020 2065 6e73  ; false,.    ens
│ │ │ +0023b350: 7572 6520 3d26 6774 3b20 2773 746f 7070  ure => 'stopp
│ │ │ +0023b360: 6564 272c 0a20 207d 0a7d 0a3c 2f63 6f64  ed',.  }.}.
Remed │ │ │ +0023b420: 6961 7469 6f6e 204f 5342 7569 6c64 2042 iation OSBuild B │ │ │ +0023b430: 6c75 6570 7269 6e74 2073 6e69 7070 6574 lueprint snippet │ │ │ +0023b440: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
.[customi
│ │ │ +0023b490: 7a61 7469 6f6e 732e 7365 7276 6963 6573  zations.services
│ │ │ +0023b4a0: 5d0a 6d61 736b 6564 203d 205b 2273 6e6d  ].masked = ["snm
│ │ │ +0023b4b0: 7064 225d 0a3c 2f63 6f64 653e 3c2f 7072  pd"].
Remediation Pu │ │ │ -0026dd70: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ -0026dd80: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
include ssh_p
│ │ │ -0026ddd0: 7269 7661 7465 5f6b 6579 5f70 6572 6d73  rivate_key_perms
│ │ │ -0026dde0: 0a0a 636c 6173 7320 7373 685f 7072 6976  ..class ssh_priv
│ │ │ -0026ddf0: 6174 655f 6b65 795f 7065 726d 7320 7b0a  ate_key_perms {.
│ │ │ -0026de00: 2020 6578 6563 207b 2027 7373 6864 5f70    exec { 'sshd_p
│ │ │ -0026de10: 7269 765f 6b65 7927 3a0a 2020 2020 636f  riv_key':.    co
│ │ │ -0026de20: 6d6d 616e 6420 3d26 6774 3b20 2263 686d  mmand => "chm
│ │ │ -0026de30: 6f64 2030 3634 3020 2f65 7463 2f73 7368  od 0640 /etc/ssh
│ │ │ -0026de40: 2f2a 5f6b 6579 222c 0a20 2020 2070 6174  /*_key",.    pat
│ │ │ -0026de50: 6820 2020 203d 2667 743b 2027 2f62 696e  h    => '/bin
│ │ │ -0026de60: 3a2f 7573 722f 6269 6e27 0a20 207d 0a7d  :/usr/bin'.  }.}
│ │ │ -0026de70: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Ans │ │ │ -0026df30: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ -0026df40: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
low
Disru │ │ │ +0023b270: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +0023b280: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +0023b2c0: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +0023b2d0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexity: │ │ │ -0026e010: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -0026e020: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f │ │ │ -0026e060: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
low
Disru │ │ │ -0026dff0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -0026e000: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -0026e040: 6567 793a 3c2f 7468 3e3c 7464 3e63 6f6e egy:con │ │ │ -0026e050: 6669 6775 7265 3c2f 7464 3e3c 2f74 723e figure
- name: Gathe
│ │ │ -0026e080: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ -0026e090: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ -0026e0a0: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ -0026e0b0: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ -0026e0c0: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ -0026e0d0: 332e 312e 3133 0a20 202d 204e 4953 542d  3.1.13.  - NIST-
│ │ │ -0026e0e0: 3830 302d 3137 312d 332e 3133 2e31 300a  800-171-3.13.10.
│ │ │ -0026e0f0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -0026e100: 4143 2d31 3728 6129 0a20 202d 204e 4953  AC-17(a).  - NIS
│ │ │ -0026e110: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ -0026e120: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -0026e130: 2d43 4d2d 3628 6129 0a20 202d 2050 4349  -CM-6(a).  - PCI
│ │ │ -0026e140: 2d44 5353 2d52 6571 2d32 2e32 2e34 0a20  -DSS-Req-2.2.4. 
│ │ │ -0026e150: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ -0026e160: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ -0026e170: 2e32 2e36 0a20 202d 2063 6f6e 6669 6775  .2.6.  - configu
│ │ │ -0026e180: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ -0026e190: 6669 6c65 5f70 6572 6d69 7373 696f 6e73  file_permissions
│ │ │ -0026e1a0: 5f73 7368 645f 7072 6976 6174 655f 6b65  _sshd_private_ke
│ │ │ -0026e1b0: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -0026e1c0: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -0026e1d0: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ -0026e1e0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -0026e1f0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -0026e200: 0a0a 2d20 6e61 6d65 3a20 4669 6e64 2072  ..- name: Find r
│ │ │ -0026e210: 6f6f 743a 726f 6f74 2d6f 776e 6564 206b  oot:root-owned k
│ │ │ -0026e220: 6579 730a 2020 616e 7369 626c 652e 6275  eys.  ansible.bu
│ │ │ -0026e230: 696c 7469 6e2e 636f 6d6d 616e 643a 2066  iltin.command: f
│ │ │ -0026e240: 696e 6420 2d48 202f 6574 632f 7373 682f  ind -H /etc/ssh/
│ │ │ -0026e250: 202d 6d61 7864 6570 7468 2031 202d 7573   -maxdepth 1 -us
│ │ │ -0026e260: 6572 2072 6f6f 7420 2d72 6567 6578 2022  er root -regex "
│ │ │ -0026e270: 2e2a 5f6b 6579 2422 0a20 2020 202d 7479  .*_key$".    -ty
│ │ │ -0026e280: 7065 2066 202d 6772 6f75 7020 726f 6f74  pe f -group root
│ │ │ -0026e290: 202d 7065 726d 202f 752b 7873 2c67 2b78   -perm /u+xs,g+x
│ │ │ -0026e2a0: 7772 732c 6f2b 7877 7274 0a20 2072 6567  wrs,o+xwrt.  reg
│ │ │ -0026e2b0: 6973 7465 723a 2072 6f6f 745f 6f77 6e65  ister: root_owne
│ │ │ -0026e2c0: 645f 6b65 7973 0a20 2063 6861 6e67 6564  d_keys.  changed
│ │ │ -0026e2d0: 5f77 6865 6e3a 2066 616c 7365 0a20 2066  _when: false.  f
│ │ │ -0026e2e0: 6169 6c65 645f 7768 656e 3a20 6661 6c73  ailed_when: fals
│ │ │ -0026e2f0: 650a 2020 6368 6563 6b5f 6d6f 6465 3a20  e.  check_mode: 
│ │ │ -0026e300: 6661 6c73 650a 2020 7768 656e 3a20 2722  false.  when: '"
│ │ │ -0026e310: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -0026e320: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -0026e330: 7327 0a20 2074 6167 733a 0a20 202d 204e  s'.  tags:.  - N
│ │ │ -0026e340: 4953 542d 3830 302d 3137 312d 332e 312e  IST-800-171-3.1.
│ │ │ -0026e350: 3133 0a20 202d 204e 4953 542d 3830 302d  13.  - NIST-800-
│ │ │ -0026e360: 3137 312d 332e 3133 2e31 300a 2020 2d20  171-3.13.10.  - 
│ │ │ -0026e370: 4e49 5354 2d38 3030 2d35 332d 4143 2d31  NIST-800-53-AC-1
│ │ │ -0026e380: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -0026e390: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ -0026e3a0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -0026e3b0: 3628 6129 0a20 202d 2050 4349 2d44 5353  6(a).  - PCI-DSS
│ │ │ -0026e3c0: 2d52 6571 2d32 2e32 2e34 0a20 202d 2050  -Req-2.2.4.  - P
│ │ │ -0026e3d0: 4349 2d44 5353 7634 2d32 2e32 0a20 202d  CI-DSSv4-2.2.  -
│ │ │ -0026e3e0: 2050 4349 2d44 5353 7634 2d32 2e32 2e36   PCI-DSSv4-2.2.6
│ │ │ -0026e3f0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -0026e400: 7472 6174 6567 790a 2020 2d20 6669 6c65  trategy.  - file
│ │ │ -0026e410: 5f70 6572 6d69 7373 696f 6e73 5f73 7368  _permissions_ssh
│ │ │ -0026e420: 645f 7072 6976 6174 655f 6b65 790a 2020  d_private_key.  
│ │ │ -0026e430: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -0026e440: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -0026e450: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ -0026e460: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ -0026e470: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ -0026e480: 6e61 6d65 3a20 5365 7420 7065 726d 6973  name: Set permis
│ │ │ -0026e490: 7369 6f6e 7320 666f 7220 726f 6f74 3a72  sions for root:r
│ │ │ -0026e4a0: 6f6f 742d 6f77 6e65 6420 6b65 7973 0a20  oot-owned keys. 
│ │ │ -0026e4b0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -0026e4c0: 2e66 696c 653a 0a20 2020 2070 6174 683a  .file:.    path:
│ │ │ -0026e4d0: 2027 7b7b 2069 7465 6d20 7d7d 270a 2020   '{{ item }}'.  
│ │ │ -0026e4e0: 2020 6d6f 6465 3a20 752d 7873 2c67 2d78    mode: u-xs,g-x
│ │ │ -0026e4f0: 7772 732c 6f2d 7877 7274 0a20 2020 2073  wrs,o-xwrt.    s
│ │ │ -0026e500: 7461 7465 3a20 6669 6c65 0a20 2077 6974  tate: file.  wit
│ │ │ -0026e510: 685f 6974 656d 733a 0a20 202d 2027 7b7b  h_items:.  - '{{
│ │ │ -0026e520: 2072 6f6f 745f 6f77 6e65 645f 6b65 7973   root_owned_keys
│ │ │ -0026e530: 2e73 7464 6f75 745f 6c69 6e65 7320 7d7d  .stdout_lines }}
│ │ │ -0026e540: 270a 2020 7768 656e 3a20 2722 6b65 726e  '.  when: '"kern
│ │ │ -0026e550: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -0026e560: 6163 7473 2e70 6163 6b61 6765 7327 0a20  acts.packages'. 
│ │ │ -0026e570: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -0026e580: 3830 302d 3137 312d 332e 312e 3133 0a20  800-171-3.1.13. 
│ │ │ -0026e590: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ -0026e5a0: 332e 3133 2e31 300a 2020 2d20 4e49 5354  3.13.10.  - NIST
│ │ │ -0026e5b0: 2d38 3030 2d35 332d 4143 2d31 3728 6129  -800-53-AC-17(a)
│ │ │ -0026e5c0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -0026e5d0: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ -0026e5e0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -0026e5f0: 0a20 202d 2050 4349 2d44 5353 2d52 6571  .  - PCI-DSS-Req
│ │ │ -0026e600: 2d32 2e32 2e34 0a20 202d 2050 4349 2d44  -2.2.4.  - PCI-D
│ │ │ -0026e610: 5353 7634 2d32 2e32 0a20 202d 2050 4349  SSv4-2.2.  - PCI
│ │ │ -0026e620: 2d44 5353 7634 2d32 2e32 2e36 0a20 202d  -DSSv4-2.2.6.  -
│ │ │ -0026e630: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ -0026e640: 6567 790a 2020 2d20 6669 6c65 5f70 6572  egy.  - file_per
│ │ │ -0026e650: 6d69 7373 696f 6e73 5f73 7368 645f 7072  missions_sshd_pr
│ │ │ -0026e660: 6976 6174 655f 6b65 790a 2020 2d20 6c6f  ivate_key.  - lo
│ │ │ -0026e670: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -0026e680: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -0026e690: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -0026e6a0: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ -0026e6b0: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ -0026e6c0: 3a20 4669 6e64 2072 6f6f 743a 7373 685f  : Find root:ssh_
│ │ │ -0026e6d0: 6b65 7973 2d6f 776e 6564 206b 6579 730a  keys-owned keys.
│ │ │ -0026e6e0: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -0026e6f0: 6e2e 636f 6d6d 616e 643a 2066 696e 6420  n.command: find 
│ │ │ -0026e700: 2d48 202f 6574 632f 7373 682f 202d 6d61  -H /etc/ssh/ -ma
│ │ │ -0026e710: 7864 6570 7468 2031 202d 7573 6572 2072  xdepth 1 -user r
│ │ │ -0026e720: 6f6f 7420 2d72 6567 6578 2022 2e2a 5f6b  oot -regex ".*_k
│ │ │ -0026e730: 6579 2422 0a20 2020 202d 7479 7065 2066  ey$".    -type f
│ │ │ -0026e740: 202d 6772 6f75 7020 7373 685f 6b65 7973   -group ssh_keys
│ │ │ -0026e750: 202d 7065 726d 202f 752b 7873 2c67 2b78   -perm /u+xs,g+x
│ │ │ -0026e760: 7773 2c6f 2b78 7772 740a 2020 7265 6769  ws,o+xwrt.  regi
│ │ │ -0026e770: 7374 6572 3a20 6465 6469 6361 7465 645f  ster: dedicated_
│ │ │ -0026e780: 6772 6f75 705f 6f77 6e65 645f 6b65 7973  group_owned_keys
│ │ │ -0026e790: 0a20 2063 6861 6e67 6564 5f77 6865 6e3a  .  changed_when:
│ │ │ -0026e7a0: 2066 616c 7365 0a20 2066 6169 6c65 645f   false.  failed_
│ │ │ -0026e7b0: 7768 656e 3a20 6661 6c73 650a 2020 6368  when: false.  ch
│ │ │ -0026e7c0: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a  eck_mode: false.
│ │ │ -0026e7d0: 2020 7768 656e 3a20 2722 6b65 726e 656c    when: '"kernel
│ │ │ -0026e7e0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -0026e7f0: 7473 2e70 6163 6b61 6765 7327 0a20 2074  ts.packages'.  t
│ │ │ -0026e800: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -0026e810: 302d 3137 312d 332e 312e 3133 0a20 202d  0-171-3.1.13.  -
│ │ │ -0026e820: 204e 4953 542d 3830 302d 3137 312d 332e   NIST-800-171-3.
│ │ │ -0026e830: 3133 2e31 300a 2020 2d20 4e49 5354 2d38  13.10.  - NIST-8
│ │ │ -0026e840: 3030 2d35 332d 4143 2d31 3728 6129 0a20  00-53-AC-17(a). 
│ │ │ -0026e850: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -0026e860: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ -0026e870: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -0026e880: 202d 2050 4349 2d44 5353 2d52 6571 2d32   - PCI-DSS-Req-2
│ │ │ -0026e890: 2e32 2e34 0a20 202d 2050 4349 2d44 5353  .2.4.  - PCI-DSS
│ │ │ -0026e8a0: 7634 2d32 2e32 0a20 202d 2050 4349 2d44  v4-2.2.  - PCI-D
│ │ │ -0026e8b0: 5353 7634 2d32 2e32 2e36 0a20 202d 2063  SSv4-2.2.6.  - c
│ │ │ -0026e8c0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -0026e8d0: 790a 2020 2d20 6669 6c65 5f70 6572 6d69  y.  - file_permi
│ │ │ -0026e8e0: 7373 696f 6e73 5f73 7368 645f 7072 6976  ssions_sshd_priv
│ │ │ -0026e8f0: 6174 655f 6b65 790a 2020 2d20 6c6f 775f  ate_key.  - low_
│ │ │ -0026e900: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ -0026e910: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -0026e920: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -0026e930: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ -0026e940: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ -0026e950: 5365 7420 7065 726d 6973 7369 6f6e 7320  Set permissions 
│ │ │ -0026e960: 666f 7220 726f 6f74 3a73 7368 5f6b 6579  for root:ssh_key
│ │ │ -0026e970: 732d 6f77 6e65 6420 6b65 7973 0a20 2061  s-owned keys.  a
│ │ │ -0026e980: 6e73 6962 6c65 2e62 7569 6c74 696e 2e66  nsible.builtin.f
│ │ │ -0026e990: 696c 653a 0a20 2020 2070 6174 683a 2027  ile:.    path: '
│ │ │ -0026e9a0: 7b7b 2069 7465 6d20 7d7d 270a 2020 2020  {{ item }}'.    
│ │ │ -0026e9b0: 6d6f 6465 3a20 752d 7873 2c67 2d78 7773  mode: u-xs,g-xws
│ │ │ -0026e9c0: 2c6f 2d78 7772 740a 2020 2020 7374 6174  ,o-xwrt.    stat
│ │ │ -0026e9d0: 653a 2066 696c 650a 2020 7769 7468 5f69  e: file.  with_i
│ │ │ -0026e9e0: 7465 6d73 3a0a 2020 2d20 277b 7b20 6465  tems:.  - '{{ de
│ │ │ -0026e9f0: 6469 6361 7465 645f 6772 6f75 705f 6f77  dicated_group_ow
│ │ │ -0026ea00: 6e65 645f 6b65 7973 2e73 7464 6f75 745f  ned_keys.stdout_
│ │ │ -0026ea10: 6c69 6e65 7320 7d7d 270a 2020 7768 656e  lines }}'.  when
│ │ │ -0026ea20: 3a20 2722 6b65 726e 656c 2220 696e 2061  : '"kernel" in a
│ │ │ -0026ea30: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -0026ea40: 6b61 6765 7327 0a20 2074 6167 733a 0a20  kages'.  tags:. 
│ │ │ -0026ea50: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ -0026ea60: 332e 312e 3133 0a20 202d 204e 4953 542d  3.1.13.  - NIST-
│ │ │ -0026ea70: 3830 302d 3137 312d 332e 3133 2e31 300a  800-171-3.13.10.
│ │ │ -0026ea80: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -0026ea90: 4143 2d31 3728 6129 0a20 202d 204e 4953  AC-17(a).  - NIS
│ │ │ -0026eaa0: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ -0026eab0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -0026eac0: 2d43 4d2d 3628 6129 0a20 202d 2050 4349  -CM-6(a).  - PCI
│ │ │ -0026ead0: 2d44 5353 2d52 6571 2d32 2e32 2e34 0a20  -DSS-Req-2.2.4. 
│ │ │ -0026eae0: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ -0026eaf0: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ -0026eb00: 2e32 2e36 0a20 202d 2063 6f6e 6669 6775  .2.6.  - configu
│ │ │ -0026eb10: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ -0026eb20: 6669 6c65 5f70 6572 6d69 7373 696f 6e73  file_permissions
│ │ │ -0026eb30: 5f73 7368 645f 7072 6976 6174 655f 6b65  _sshd_private_ke
│ │ │ -0026eb40: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -0026eb50: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -0026eb60: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ -0026eb70: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -0026eb80: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +0026dd60: 223e 5265 6d65 6469 6174 696f 6e20 416e  ">Remediation An
│ │ │ +0026dd70: 7369 626c 6520 736e 6970 7065 7420 e287  sible snippet ..
│ │ │ +0026dd80: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
< │ │ │ +0026de00: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +0026de20: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +0026de70: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
low
Disr │ │ │ +0026de30: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +0026de40: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +0026de80: 7465 6779 3a3c 2f74 683e 3c74 643e 636f tegy:co │ │ │ +0026de90: 6e66 6967 7572 653c 2f74 643e 3c2f 7472 nfigure
- name: Gath
│ │ │ +0026dec0: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ +0026ded0: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ +0026dee0: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ +0026def0: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ +0026df00: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ +0026df10: 2d33 2e31 2e31 330a 2020 2d20 4e49 5354  -3.1.13.  - NIST
│ │ │ +0026df20: 2d38 3030 2d31 3731 2d33 2e31 332e 3130  -800-171-3.13.10
│ │ │ +0026df30: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +0026df40: 2d41 432d 3137 2861 290a 2020 2d20 4e49  -AC-17(a).  - NI
│ │ │ +0026df50: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ +0026df60: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +0026df70: 332d 434d 2d36 2861 290a 2020 2d20 5043  3-CM-6(a).  - PC
│ │ │ +0026df80: 492d 4453 532d 5265 712d 322e 322e 340a  I-DSS-Req-2.2.4.
│ │ │ +0026df90: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ +0026dfa0: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ +0026dfb0: 322e 322e 360a 2020 2d20 636f 6e66 6967  2.2.6.  - config
│ │ │ +0026dfc0: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +0026dfd0: 2066 696c 655f 7065 726d 6973 7369 6f6e   file_permission
│ │ │ +0026dfe0: 735f 7373 6864 5f70 7269 7661 7465 5f6b  s_sshd_private_k
│ │ │ +0026dff0: 6579 0a20 202d 206c 6f77 5f63 6f6d 706c  ey.  - low_compl
│ │ │ +0026e000: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ +0026e010: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ +0026e020: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +0026e030: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +0026e040: 640a 0a2d 206e 616d 653a 2046 696e 6420  d..- name: Find 
│ │ │ +0026e050: 726f 6f74 3a72 6f6f 742d 6f77 6e65 6420  root:root-owned 
│ │ │ +0026e060: 6b65 7973 0a20 2061 6e73 6962 6c65 2e62  keys.  ansible.b
│ │ │ +0026e070: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ +0026e080: 6669 6e64 202d 4820 2f65 7463 2f73 7368  find -H /etc/ssh
│ │ │ +0026e090: 2f20 2d6d 6178 6465 7074 6820 3120 2d75  / -maxdepth 1 -u
│ │ │ +0026e0a0: 7365 7220 726f 6f74 202d 7265 6765 7820  ser root -regex 
│ │ │ +0026e0b0: 222e 2a5f 6b65 7924 220a 2020 2020 2d74  ".*_key$".    -t
│ │ │ +0026e0c0: 7970 6520 6620 2d67 726f 7570 2072 6f6f  ype f -group roo
│ │ │ +0026e0d0: 7420 2d70 6572 6d20 2f75 2b78 732c 672b  t -perm /u+xs,g+
│ │ │ +0026e0e0: 7877 7273 2c6f 2b78 7772 740a 2020 7265  xwrs,o+xwrt.  re
│ │ │ +0026e0f0: 6769 7374 6572 3a20 726f 6f74 5f6f 776e  gister: root_own
│ │ │ +0026e100: 6564 5f6b 6579 730a 2020 6368 616e 6765  ed_keys.  change
│ │ │ +0026e110: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ +0026e120: 6661 696c 6564 5f77 6865 6e3a 2066 616c  failed_when: fal
│ │ │ +0026e130: 7365 0a20 2063 6865 636b 5f6d 6f64 653a  se.  check_mode:
│ │ │ +0026e140: 2066 616c 7365 0a20 2077 6865 6e3a 2027   false.  when: '
│ │ │ +0026e150: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +0026e160: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +0026e170: 6573 270a 2020 7461 6773 3a0a 2020 2d20  es'.  tags:.  - 
│ │ │ +0026e180: 4e49 5354 2d38 3030 2d31 3731 2d33 2e31  NIST-800-171-3.1
│ │ │ +0026e190: 2e31 330a 2020 2d20 4e49 5354 2d38 3030  .13.  - NIST-800
│ │ │ +0026e1a0: 2d31 3731 2d33 2e31 332e 3130 0a20 202d  -171-3.13.10.  -
│ │ │ +0026e1b0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +0026e1c0: 3137 2861 290a 2020 2d20 4e49 5354 2d38  17(a).  - NIST-8
│ │ │ +0026e1d0: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ +0026e1e0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +0026e1f0: 2d36 2861 290a 2020 2d20 5043 492d 4453  -6(a).  - PCI-DS
│ │ │ +0026e200: 532d 5265 712d 322e 322e 340a 2020 2d20  S-Req-2.2.4.  - 
│ │ │ +0026e210: 5043 492d 4453 5376 342d 322e 320a 2020  PCI-DSSv4-2.2.  
│ │ │ +0026e220: 2d20 5043 492d 4453 5376 342d 322e 322e  - PCI-DSSv4-2.2.
│ │ │ +0026e230: 360a 2020 2d20 636f 6e66 6967 7572 655f  6.  - configure_
│ │ │ +0026e240: 7374 7261 7465 6779 0a20 202d 2066 696c  strategy.  - fil
│ │ │ +0026e250: 655f 7065 726d 6973 7369 6f6e 735f 7373  e_permissions_ss
│ │ │ +0026e260: 6864 5f70 7269 7661 7465 5f6b 6579 0a20  hd_private_key. 
│ │ │ +0026e270: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +0026e280: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ +0026e290: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ +0026e2a0: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ +0026e2b0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +0026e2c0: 206e 616d 653a 2053 6574 2070 6572 6d69   name: Set permi
│ │ │ +0026e2d0: 7373 696f 6e73 2066 6f72 2072 6f6f 743a  ssions for root:
│ │ │ +0026e2e0: 726f 6f74 2d6f 776e 6564 206b 6579 730a  root-owned keys.
│ │ │ +0026e2f0: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +0026e300: 6e2e 6669 6c65 3a0a 2020 2020 7061 7468  n.file:.    path
│ │ │ +0026e310: 3a20 277b 7b20 6974 656d 207d 7d27 0a20  : '{{ item }}'. 
│ │ │ +0026e320: 2020 206d 6f64 653a 2075 2d78 732c 672d     mode: u-xs,g-
│ │ │ +0026e330: 7877 7273 2c6f 2d78 7772 740a 2020 2020  xwrs,o-xwrt.    
│ │ │ +0026e340: 7374 6174 653a 2066 696c 650a 2020 7769  state: file.  wi
│ │ │ +0026e350: 7468 5f69 7465 6d73 3a0a 2020 2d20 277b  th_items:.  - '{
│ │ │ +0026e360: 7b20 726f 6f74 5f6f 776e 6564 5f6b 6579  { root_owned_key
│ │ │ +0026e370: 732e 7374 646f 7574 5f6c 696e 6573 207d  s.stdout_lines }
│ │ │ +0026e380: 7d27 0a20 2077 6865 6e3a 2027 226b 6572  }'.  when: '"ker
│ │ │ +0026e390: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +0026e3a0: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ +0026e3b0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +0026e3c0: 2d38 3030 2d31 3731 2d33 2e31 2e31 330a  -800-171-3.1.13.
│ │ │ +0026e3d0: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ +0026e3e0: 2d33 2e31 332e 3130 0a20 202d 204e 4953  -3.13.10.  - NIS
│ │ │ +0026e3f0: 542d 3830 302d 3533 2d41 432d 3137 2861  T-800-53-AC-17(a
│ │ │ +0026e400: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +0026e410: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ +0026e420: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +0026e430: 290a 2020 2d20 5043 492d 4453 532d 5265  ).  - PCI-DSS-Re
│ │ │ +0026e440: 712d 322e 322e 340a 2020 2d20 5043 492d  q-2.2.4.  - PCI-
│ │ │ +0026e450: 4453 5376 342d 322e 320a 2020 2d20 5043  DSSv4-2.2.  - PC
│ │ │ +0026e460: 492d 4453 5376 342d 322e 322e 360a 2020  I-DSSv4-2.2.6.  
│ │ │ +0026e470: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +0026e480: 7465 6779 0a20 202d 2066 696c 655f 7065  tegy.  - file_pe
│ │ │ +0026e490: 726d 6973 7369 6f6e 735f 7373 6864 5f70  rmissions_sshd_p
│ │ │ +0026e4a0: 7269 7661 7465 5f6b 6579 0a20 202d 206c  rivate_key.  - l
│ │ │ +0026e4b0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +0026e4c0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +0026e4d0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +0026e4e0: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ +0026e4f0: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +0026e500: 653a 2046 696e 6420 726f 6f74 3a73 7368  e: Find root:ssh
│ │ │ +0026e510: 5f6b 6579 732d 6f77 6e65 6420 6b65 7973  _keys-owned keys
│ │ │ +0026e520: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ +0026e530: 696e 2e63 6f6d 6d61 6e64 3a20 6669 6e64  in.command: find
│ │ │ +0026e540: 202d 4820 2f65 7463 2f73 7368 2f20 2d6d   -H /etc/ssh/ -m
│ │ │ +0026e550: 6178 6465 7074 6820 3120 2d75 7365 7220  axdepth 1 -user 
│ │ │ +0026e560: 726f 6f74 202d 7265 6765 7820 222e 2a5f  root -regex ".*_
│ │ │ +0026e570: 6b65 7924 220a 2020 2020 2d74 7970 6520  key$".    -type 
│ │ │ +0026e580: 6620 2d67 726f 7570 2073 7368 5f6b 6579  f -group ssh_key
│ │ │ +0026e590: 7320 2d70 6572 6d20 2f75 2b78 732c 672b  s -perm /u+xs,g+
│ │ │ +0026e5a0: 7877 732c 6f2b 7877 7274 0a20 2072 6567  xws,o+xwrt.  reg
│ │ │ +0026e5b0: 6973 7465 723a 2064 6564 6963 6174 6564  ister: dedicated
│ │ │ +0026e5c0: 5f67 726f 7570 5f6f 776e 6564 5f6b 6579  _group_owned_key
│ │ │ +0026e5d0: 730a 2020 6368 616e 6765 645f 7768 656e  s.  changed_when
│ │ │ +0026e5e0: 3a20 6661 6c73 650a 2020 6661 696c 6564  : false.  failed
│ │ │ +0026e5f0: 5f77 6865 6e3a 2066 616c 7365 0a20 2063  _when: false.  c
│ │ │ +0026e600: 6865 636b 5f6d 6f64 653a 2066 616c 7365  heck_mode: false
│ │ │ +0026e610: 0a20 2077 6865 6e3a 2027 226b 6572 6e65  .  when: '"kerne
│ │ │ +0026e620: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +0026e630: 6374 732e 7061 636b 6167 6573 270a 2020  cts.packages'.  
│ │ │ +0026e640: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +0026e650: 3030 2d31 3731 2d33 2e31 2e31 330a 2020  00-171-3.1.13.  
│ │ │ +0026e660: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33  - NIST-800-171-3
│ │ │ +0026e670: 2e31 332e 3130 0a20 202d 204e 4953 542d  .13.10.  - NIST-
│ │ │ +0026e680: 3830 302d 3533 2d41 432d 3137 2861 290a  800-53-AC-17(a).
│ │ │ +0026e690: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +0026e6a0: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ +0026e6b0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +0026e6c0: 2020 2d20 5043 492d 4453 532d 5265 712d    - PCI-DSS-Req-
│ │ │ +0026e6d0: 322e 322e 340a 2020 2d20 5043 492d 4453  2.2.4.  - PCI-DS
│ │ │ +0026e6e0: 5376 342d 322e 320a 2020 2d20 5043 492d  Sv4-2.2.  - PCI-
│ │ │ +0026e6f0: 4453 5376 342d 322e 322e 360a 2020 2d20  DSSv4-2.2.6.  - 
│ │ │ +0026e700: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +0026e710: 6779 0a20 202d 2066 696c 655f 7065 726d  gy.  - file_perm
│ │ │ +0026e720: 6973 7369 6f6e 735f 7373 6864 5f70 7269  issions_sshd_pri
│ │ │ +0026e730: 7661 7465 5f6b 6579 0a20 202d 206c 6f77  vate_key.  - low
│ │ │ +0026e740: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +0026e750: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +0026e760: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +0026e770: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ +0026e780: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ +0026e790: 2053 6574 2070 6572 6d69 7373 696f 6e73   Set permissions
│ │ │ +0026e7a0: 2066 6f72 2072 6f6f 743a 7373 685f 6b65   for root:ssh_ke
│ │ │ +0026e7b0: 7973 2d6f 776e 6564 206b 6579 730a 2020  ys-owned keys.  
│ │ │ +0026e7c0: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +0026e7d0: 6669 6c65 3a0a 2020 2020 7061 7468 3a20  file:.    path: 
│ │ │ +0026e7e0: 277b 7b20 6974 656d 207d 7d27 0a20 2020  '{{ item }}'.   
│ │ │ +0026e7f0: 206d 6f64 653a 2075 2d78 732c 672d 7877   mode: u-xs,g-xw
│ │ │ +0026e800: 732c 6f2d 7877 7274 0a20 2020 2073 7461  s,o-xwrt.    sta
│ │ │ +0026e810: 7465 3a20 6669 6c65 0a20 2077 6974 685f  te: file.  with_
│ │ │ +0026e820: 6974 656d 733a 0a20 202d 2027 7b7b 2064  items:.  - '{{ d
│ │ │ +0026e830: 6564 6963 6174 6564 5f67 726f 7570 5f6f  edicated_group_o
│ │ │ +0026e840: 776e 6564 5f6b 6579 732e 7374 646f 7574  wned_keys.stdout
│ │ │ +0026e850: 5f6c 696e 6573 207d 7d27 0a20 2077 6865  _lines }}'.  whe
│ │ │ +0026e860: 6e3a 2027 226b 6572 6e65 6c22 2069 6e20  n: '"kernel" in 
│ │ │ +0026e870: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +0026e880: 636b 6167 6573 270a 2020 7461 6773 3a0a  ckages'.  tags:.
│ │ │ +0026e890: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ +0026e8a0: 2d33 2e31 2e31 330a 2020 2d20 4e49 5354  -3.1.13.  - NIST
│ │ │ +0026e8b0: 2d38 3030 2d31 3731 2d33 2e31 332e 3130  -800-171-3.13.10
│ │ │ +0026e8c0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +0026e8d0: 2d41 432d 3137 2861 290a 2020 2d20 4e49  -AC-17(a).  - NI
│ │ │ +0026e8e0: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ +0026e8f0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +0026e900: 332d 434d 2d36 2861 290a 2020 2d20 5043  3-CM-6(a).  - PC
│ │ │ +0026e910: 492d 4453 532d 5265 712d 322e 322e 340a  I-DSS-Req-2.2.4.
│ │ │ +0026e920: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ +0026e930: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ +0026e940: 322e 322e 360a 2020 2d20 636f 6e66 6967  2.2.6.  - config
│ │ │ +0026e950: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +0026e960: 2066 696c 655f 7065 726d 6973 7369 6f6e   file_permission
│ │ │ +0026e970: 735f 7373 6864 5f70 7269 7661 7465 5f6b  s_sshd_private_k
│ │ │ +0026e980: 6579 0a20 202d 206c 6f77 5f63 6f6d 706c  ey.  - low_compl
│ │ │ +0026e990: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ +0026e9a0: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ +0026e9b0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +0026e9c0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +0026e9d0: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ +0026e9e0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ +0026ea90: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ +0026eaa0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
include ssh_p
│ │ │ +0026eaf0: 7269 7661 7465 5f6b 6579 5f70 6572 6d73  rivate_key_perms
│ │ │ +0026eb00: 0a0a 636c 6173 7320 7373 685f 7072 6976  ..class ssh_priv
│ │ │ +0026eb10: 6174 655f 6b65 795f 7065 726d 7320 7b0a  ate_key_perms {.
│ │ │ +0026eb20: 2020 6578 6563 207b 2027 7373 6864 5f70    exec { 'sshd_p
│ │ │ +0026eb30: 7269 765f 6b65 7927 3a0a 2020 2020 636f  riv_key':.    co
│ │ │ +0026eb40: 6d6d 616e 6420 3d26 6774 3b20 2263 686d  mmand => "chm
│ │ │ +0026eb50: 6f64 2030 3634 3020 2f65 7463 2f73 7368  od 0640 /etc/ssh
│ │ │ +0026eb60: 2f2a 5f6b 6579 222c 0a20 2020 2070 6174  /*_key",.    pat
│ │ │ +0026eb70: 6820 2020 203d 2667 743b 2027 2f62 696e  h    => '/bin
│ │ │ +0026eb80: 3a2f 7573 722f 6269 6e27 0a20 207d 0a7d  :/usr/bin'.  }.}
│ │ │  0026eb90: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Pup │ │ │ -00270010: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ -00270020: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
include ssh_pu
│ │ │ -00270070: 626c 6963 5f6b 6579 5f70 6572 6d73 0a0a  blic_key_perms..
│ │ │ -00270080: 636c 6173 7320 7373 685f 7075 626c 6963  class ssh_public
│ │ │ -00270090: 5f6b 6579 5f70 6572 6d73 207b 0a20 2065  _key_perms {.  e
│ │ │ -002700a0: 7865 6320 7b20 2773 7368 645f 7075 625f  xec { 'sshd_pub_
│ │ │ -002700b0: 6b65 7927 3a0a 2020 2020 636f 6d6d 616e  key':.    comman
│ │ │ -002700c0: 6420 3d26 6774 3b20 2263 686d 6f64 2030  d => "chmod 0
│ │ │ -002700d0: 3634 3420 2f65 7463 2f73 7368 2f2a 2e70  644 /etc/ssh/*.p
│ │ │ -002700e0: 7562 222c 0a20 2020 2070 6174 6820 2020  ub",.    path   
│ │ │ -002700f0: 203d 2667 743b 2027 2f62 696e 3a2f 7573   => '/bin:/us
│ │ │ -00270100: 722f 6269 6e27 0a20 207d 0a7d 0a3c 2f63  r/bin'.  }.}.
│ │ │ -00270120: 3c61 2063 6c61 7373 3d22 6274 6e20 6274
Rem │ │ │ -002701c0: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -002701d0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -002701e0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -00270280: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -002702d0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
-
│ │ │ -00270310: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ -00270320: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ -00270330: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ -00270340: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ -00270350: 746f 0a20 2074 6167 733a 0a20 202d 204e  to.  tags:.  - N
│ │ │ -00270360: 4953 542d 3830 302d 3137 312d 332e 312e  IST-800-171-3.1.
│ │ │ -00270370: 3133 0a20 202d 204e 4953 542d 3830 302d  13.  - NIST-800-
│ │ │ -00270380: 3137 312d 332e 3133 2e31 300a 2020 2d20  171-3.13.10.  - 
│ │ │ -00270390: 4e49 5354 2d38 3030 2d35 332d 4143 2d31  NIST-800-53-AC-1
│ │ │ -002703a0: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -002703b0: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ -002703c0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -002703d0: 3628 6129 0a20 202d 2050 4349 2d44 5353  6(a).  - PCI-DSS
│ │ │ -002703e0: 2d52 6571 2d32 2e32 2e34 0a20 202d 2050  -Req-2.2.4.  - P
│ │ │ -002703f0: 4349 2d44 5353 7634 2d32 2e32 0a20 202d  CI-DSSv4-2.2.  -
│ │ │ -00270400: 2050 4349 2d44 5353 7634 2d32 2e32 2e36   PCI-DSSv4-2.2.6
│ │ │ -00270410: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -00270420: 7472 6174 6567 790a 2020 2d20 6669 6c65  trategy.  - file
│ │ │ -00270430: 5f70 6572 6d69 7373 696f 6e73 5f73 7368  _permissions_ssh
│ │ │ -00270440: 645f 7075 625f 6b65 790a 2020 2d20 6c6f  d_pub_key.  - lo
│ │ │ -00270450: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -00270460: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -00270470: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -00270480: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ -00270490: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ -002704a0: 3a20 4669 6e64 202f 6574 632f 7373 682f  : Find /etc/ssh/
│ │ │ -002704b0: 2066 696c 6528 7329 0a20 2061 6e73 6962   file(s).  ansib
│ │ │ -002704c0: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61  le.builtin.comma
│ │ │ -002704d0: 6e64 3a20 6669 6e64 202d 5020 2f65 7463  nd: find -P /etc
│ │ │ -002704e0: 2f73 7368 2f20 2d6d 6178 6465 7074 6820  /ssh/ -maxdepth 
│ │ │ -002704f0: 3120 2d70 6572 6d20 2f75 2b78 732c 672b  1 -perm /u+xs,g+
│ │ │ -00270500: 7877 732c 6f2b 7877 7420 202d 7479 7065  xws,o+xwt  -type
│ │ │ -00270510: 0a20 2020 2066 202d 7265 6765 7874 7970  .    f -regextyp
│ │ │ -00270520: 6520 706f 7369 782d 6578 7465 6e64 6564  e posix-extended
│ │ │ -00270530: 202d 7265 6765 7820 225e 2e2a 5c2e 7075   -regex "^.*\.pu
│ │ │ -00270540: 6224 220a 2020 7265 6769 7374 6572 3a20  b$".  register: 
│ │ │ -00270550: 6669 6c65 735f 666f 756e 640a 2020 6368  files_found.  ch
│ │ │ -00270560: 616e 6765 645f 7768 656e 3a20 6661 6c73  anged_when: fals
│ │ │ -00270570: 650a 2020 6661 696c 6564 5f77 6865 6e3a  e.  failed_when:
│ │ │ -00270580: 2066 616c 7365 0a20 2063 6865 636b 5f6d   false.  check_m
│ │ │ -00270590: 6f64 653a 2066 616c 7365 0a20 2077 6865  ode: false.  whe
│ │ │ -002705a0: 6e3a 2027 226b 6572 6e65 6c22 2069 6e20  n: '"kernel" in 
│ │ │ -002705b0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -002705c0: 636b 6167 6573 270a 2020 7461 6773 3a0a  ckages'.  tags:.
│ │ │ -002705d0: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ -002705e0: 2d33 2e31 2e31 330a 2020 2d20 4e49 5354  -3.1.13.  - NIST
│ │ │ -002705f0: 2d38 3030 2d31 3731 2d33 2e31 332e 3130  -800-171-3.13.10
│ │ │ -00270600: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -00270610: 2d41 432d 3137 2861 290a 2020 2d20 4e49  -AC-17(a).  - NI
│ │ │ -00270620: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ -00270630: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -00270640: 332d 434d 2d36 2861 290a 2020 2d20 5043  3-CM-6(a).  - PC
│ │ │ -00270650: 492d 4453 532d 5265 712d 322e 322e 340a  I-DSS-Req-2.2.4.
│ │ │ -00270660: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ -00270670: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ -00270680: 322e 322e 360a 2020 2d20 636f 6e66 6967  2.2.6.  - config
│ │ │ -00270690: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -002706a0: 2066 696c 655f 7065 726d 6973 7369 6f6e   file_permission
│ │ │ -002706b0: 735f 7373 6864 5f70 7562 5f6b 6579 0a20  s_sshd_pub_key. 
│ │ │ -002706c0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -002706d0: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -002706e0: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ -002706f0: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ -00270700: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -00270710: 206e 616d 653a 2053 6574 2070 6572 6d69   name: Set permi
│ │ │ -00270720: 7373 696f 6e73 2066 6f72 202f 6574 632f  ssions for /etc/
│ │ │ -00270730: 7373 682f 2066 696c 6528 7329 0a20 2061  ssh/ file(s).  a
│ │ │ -00270740: 6e73 6962 6c65 2e62 7569 6c74 696e 2e66  nsible.builtin.f
│ │ │ -00270750: 696c 653a 0a20 2020 2070 6174 683a 2027  ile:.    path: '
│ │ │ -00270760: 7b7b 2069 7465 6d20 7d7d 270a 2020 2020  {{ item }}'.    
│ │ │ -00270770: 6d6f 6465 3a20 752d 7873 2c67 2d78 7773  mode: u-xs,g-xws
│ │ │ -00270780: 2c6f 2d78 7774 0a20 2020 2073 7461 7465  ,o-xwt.    state
│ │ │ -00270790: 3a20 6669 6c65 0a20 2077 6974 685f 6974  : file.  with_it
│ │ │ -002707a0: 656d 733a 0a20 202d 2027 7b7b 2066 696c  ems:.  - '{{ fil
│ │ │ -002707b0: 6573 5f66 6f75 6e64 2e73 7464 6f75 745f  es_found.stdout_
│ │ │ -002707c0: 6c69 6e65 7320 7d7d 270a 2020 7768 656e  lines }}'.  when
│ │ │ -002707d0: 3a20 2722 6b65 726e 656c 2220 696e 2061  : '"kernel" in a
│ │ │ -002707e0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -002707f0: 6b61 6765 7327 0a20 2074 6167 733a 0a20  kages'.  tags:. 
│ │ │ -00270800: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ -00270810: 332e 312e 3133 0a20 202d 204e 4953 542d  3.1.13.  - NIST-
│ │ │ -00270820: 3830 302d 3137 312d 332e 3133 2e31 300a  800-171-3.13.10.
│ │ │ -00270830: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -00270840: 4143 2d31 3728 6129 0a20 202d 204e 4953  AC-17(a).  - NIS
│ │ │ -00270850: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ -00270860: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -00270870: 2d43 4d2d 3628 6129 0a20 202d 2050 4349  -CM-6(a).  - PCI
│ │ │ -00270880: 2d44 5353 2d52 6571 2d32 2e32 2e34 0a20  -DSS-Req-2.2.4. 
│ │ │ -00270890: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ -002708a0: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ -002708b0: 2e32 2e36 0a20 202d 2063 6f6e 6669 6775  .2.6.  - configu
│ │ │ -002708c0: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ -002708d0: 6669 6c65 5f70 6572 6d69 7373 696f 6e73  file_permissions
│ │ │ -002708e0: 5f73 7368 645f 7075 625f 6b65 790a 2020  _sshd_pub_key.  
│ │ │ -002708f0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -00270900: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -00270910: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ -00270920: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ -00270930: 6562 6f6f 745f 6e65 6564 6564 0a3c 2f63  eboot_needed.Remediation Ans
│ │ │ +00270010: 6962 6c65 2073 6e69 7070 6574 20e2 87b2  ible snippet ...
│ │ │ +00270020: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
Co │ │ │ -00270260: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -00270290: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -002702b0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -002702c0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -002702e0: 3c2f 7468 3e3c 7464 3e63 6f6e 6669 6775 configu │ │ │ -002702f0: 7265 3c2f 7464 3e3c 2f74 723e 3c2f 7461 re
Complexity: │ │ │ +002700f0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00270100: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f │ │ │ +00270140: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
low
Disru │ │ │ +002700d0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +002700e0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00270120: 6567 793a 3c2f 7468 3e3c 7464 3e63 6f6e egy:con │ │ │ +00270130: 6669 6775 7265 3c2f 7464 3e3c 2f74 723e figure
- name: Gathe
│ │ │ +00270160: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ +00270170: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ +00270180: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ +00270190: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ +002701a0: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ +002701b0: 332e 312e 3133 0a20 202d 204e 4953 542d  3.1.13.  - NIST-
│ │ │ +002701c0: 3830 302d 3137 312d 332e 3133 2e31 300a  800-171-3.13.10.
│ │ │ +002701d0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +002701e0: 4143 2d31 3728 6129 0a20 202d 204e 4953  AC-17(a).  - NIS
│ │ │ +002701f0: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ +00270200: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +00270210: 2d43 4d2d 3628 6129 0a20 202d 2050 4349  -CM-6(a).  - PCI
│ │ │ +00270220: 2d44 5353 2d52 6571 2d32 2e32 2e34 0a20  -DSS-Req-2.2.4. 
│ │ │ +00270230: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ +00270240: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ +00270250: 2e32 2e36 0a20 202d 2063 6f6e 6669 6775  .2.6.  - configu
│ │ │ +00270260: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +00270270: 6669 6c65 5f70 6572 6d69 7373 696f 6e73  file_permissions
│ │ │ +00270280: 5f73 7368 645f 7075 625f 6b65 790a 2020  _sshd_pub_key.  
│ │ │ +00270290: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +002702a0: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +002702b0: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ +002702c0: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ +002702d0: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +002702e0: 6e61 6d65 3a20 4669 6e64 202f 6574 632f  name: Find /etc/
│ │ │ +002702f0: 7373 682f 2066 696c 6528 7329 0a20 2061  ssh/ file(s).  a
│ │ │ +00270300: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ +00270310: 6f6d 6d61 6e64 3a20 6669 6e64 202d 5020  ommand: find -P 
│ │ │ +00270320: 2f65 7463 2f73 7368 2f20 2d6d 6178 6465  /etc/ssh/ -maxde
│ │ │ +00270330: 7074 6820 3120 2d70 6572 6d20 2f75 2b78  pth 1 -perm /u+x
│ │ │ +00270340: 732c 672b 7877 732c 6f2b 7877 7420 202d  s,g+xws,o+xwt  -
│ │ │ +00270350: 7479 7065 0a20 2020 2066 202d 7265 6765  type.    f -rege
│ │ │ +00270360: 7874 7970 6520 706f 7369 782d 6578 7465  xtype posix-exte
│ │ │ +00270370: 6e64 6564 202d 7265 6765 7820 225e 2e2a  nded -regex "^.*
│ │ │ +00270380: 5c2e 7075 6224 220a 2020 7265 6769 7374  \.pub$".  regist
│ │ │ +00270390: 6572 3a20 6669 6c65 735f 666f 756e 640a  er: files_found.
│ │ │ +002703a0: 2020 6368 616e 6765 645f 7768 656e 3a20    changed_when: 
│ │ │ +002703b0: 6661 6c73 650a 2020 6661 696c 6564 5f77  false.  failed_w
│ │ │ +002703c0: 6865 6e3a 2066 616c 7365 0a20 2063 6865  hen: false.  che
│ │ │ +002703d0: 636b 5f6d 6f64 653a 2066 616c 7365 0a20  ck_mode: false. 
│ │ │ +002703e0: 2077 6865 6e3a 2027 226b 6572 6e65 6c22   when: '"kernel"
│ │ │ +002703f0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +00270400: 732e 7061 636b 6167 6573 270a 2020 7461  s.packages'.  ta
│ │ │ +00270410: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +00270420: 2d31 3731 2d33 2e31 2e31 330a 2020 2d20  -171-3.1.13.  - 
│ │ │ +00270430: 4e49 5354 2d38 3030 2d31 3731 2d33 2e31  NIST-800-171-3.1
│ │ │ +00270440: 332e 3130 0a20 202d 204e 4953 542d 3830  3.10.  - NIST-80
│ │ │ +00270450: 302d 3533 2d41 432d 3137 2861 290a 2020  0-53-AC-17(a).  
│ │ │ +00270460: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +00270470: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ +00270480: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ +00270490: 2d20 5043 492d 4453 532d 5265 712d 322e  - PCI-DSS-Req-2.
│ │ │ +002704a0: 322e 340a 2020 2d20 5043 492d 4453 5376  2.4.  - PCI-DSSv
│ │ │ +002704b0: 342d 322e 320a 2020 2d20 5043 492d 4453  4-2.2.  - PCI-DS
│ │ │ +002704c0: 5376 342d 322e 322e 360a 2020 2d20 636f  Sv4-2.2.6.  - co
│ │ │ +002704d0: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +002704e0: 0a20 202d 2066 696c 655f 7065 726d 6973  .  - file_permis
│ │ │ +002704f0: 7369 6f6e 735f 7373 6864 5f70 7562 5f6b  sions_sshd_pub_k
│ │ │ +00270500: 6579 0a20 202d 206c 6f77 5f63 6f6d 706c  ey.  - low_compl
│ │ │ +00270510: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ +00270520: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ +00270530: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +00270540: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +00270550: 640a 0a2d 206e 616d 653a 2053 6574 2070  d..- name: Set p
│ │ │ +00270560: 6572 6d69 7373 696f 6e73 2066 6f72 202f  ermissions for /
│ │ │ +00270570: 6574 632f 7373 682f 2066 696c 6528 7329  etc/ssh/ file(s)
│ │ │ +00270580: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ +00270590: 696e 2e66 696c 653a 0a20 2020 2070 6174  in.file:.    pat
│ │ │ +002705a0: 683a 2027 7b7b 2069 7465 6d20 7d7d 270a  h: '{{ item }}'.
│ │ │ +002705b0: 2020 2020 6d6f 6465 3a20 752d 7873 2c67      mode: u-xs,g
│ │ │ +002705c0: 2d78 7773 2c6f 2d78 7774 0a20 2020 2073  -xws,o-xwt.    s
│ │ │ +002705d0: 7461 7465 3a20 6669 6c65 0a20 2077 6974  tate: file.  wit
│ │ │ +002705e0: 685f 6974 656d 733a 0a20 202d 2027 7b7b  h_items:.  - '{{
│ │ │ +002705f0: 2066 696c 6573 5f66 6f75 6e64 2e73 7464   files_found.std
│ │ │ +00270600: 6f75 745f 6c69 6e65 7320 7d7d 270a 2020  out_lines }}'.  
│ │ │ +00270610: 7768 656e 3a20 2722 6b65 726e 656c 2220  when: '"kernel" 
│ │ │ +00270620: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +00270630: 2e70 6163 6b61 6765 7327 0a20 2074 6167  .packages'.  tag
│ │ │ +00270640: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +00270650: 3137 312d 332e 312e 3133 0a20 202d 204e  171-3.1.13.  - N
│ │ │ +00270660: 4953 542d 3830 302d 3137 312d 332e 3133  IST-800-171-3.13
│ │ │ +00270670: 2e31 300a 2020 2d20 4e49 5354 2d38 3030  .10.  - NIST-800
│ │ │ +00270680: 2d35 332d 4143 2d31 3728 6129 0a20 202d  -53-AC-17(a).  -
│ │ │ +00270690: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +002706a0: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ +002706b0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +002706c0: 2050 4349 2d44 5353 2d52 6571 2d32 2e32   PCI-DSS-Req-2.2
│ │ │ +002706d0: 2e34 0a20 202d 2050 4349 2d44 5353 7634  .4.  - PCI-DSSv4
│ │ │ +002706e0: 2d32 2e32 0a20 202d 2050 4349 2d44 5353  -2.2.  - PCI-DSS
│ │ │ +002706f0: 7634 2d32 2e32 2e36 0a20 202d 2063 6f6e  v4-2.2.6.  - con
│ │ │ +00270700: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +00270710: 2020 2d20 6669 6c65 5f70 6572 6d69 7373    - file_permiss
│ │ │ +00270720: 696f 6e73 5f73 7368 645f 7075 625f 6b65  ions_sshd_pub_ke
│ │ │ +00270730: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ +00270740: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ +00270750: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ +00270760: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +00270770: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +00270780: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Pup │ │ │ +00270840: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ +00270850: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
include ssh_pu
│ │ │ +002708a0: 626c 6963 5f6b 6579 5f70 6572 6d73 0a0a  blic_key_perms..
│ │ │ +002708b0: 636c 6173 7320 7373 685f 7075 626c 6963  class ssh_public
│ │ │ +002708c0: 5f6b 6579 5f70 6572 6d73 207b 0a20 2065  _key_perms {.  e
│ │ │ +002708d0: 7865 6320 7b20 2773 7368 645f 7075 625f  xec { 'sshd_pub_
│ │ │ +002708e0: 6b65 7927 3a0a 2020 2020 636f 6d6d 616e  key':.    comman
│ │ │ +002708f0: 6420 3d26 6774 3b20 2263 686d 6f64 2030  d => "chmod 0
│ │ │ +00270900: 3634 3420 2f65 7463 2f73 7368 2f2a 2e70  644 /etc/ssh/*.p
│ │ │ +00270910: 7562 222c 0a20 2020 2070 6174 6820 2020  ub",.    path   
│ │ │ +00270920: 203d 2667 743b 2027 2f62 696e 3a2f 7573   => '/bin:/us
│ │ │ +00270930: 722f 6269 6e27 0a20 207d 0a7d 0a3c 2f63  r/bin'.  }.}.
│ │ │ 00270950: 3c61 2063 6c61 7373 3d22 6274 6e20 6274
'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -177,14 +153,31 @@ │ │ │ │ - PCI-DSSv4-11.5.2 │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_aide_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_aide │ │ │ │ + │ │ │ │ +class install_aide { │ │ │ │ + package { 'aide': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "aide" │ │ │ │ +version = "*" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -192,14 +185,21 @@ │ │ │ │ if ! rpm -q --quiet "aide" ; then │ │ │ │ dnf install -y "aide" │ │ │ │ fi │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +package --add=aide │ │ │ │ ****** RRuullee? ?  BBuuiilldd aanndd TTeesstt AAIIDDEE DDaattaabbaassee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ Run the following command to generate a new database: │ │ │ │ $ sudo /usr/sbin/aide --init │ │ │ │ By default, the database will be written to the file /var/lib/aide/aide.db.new.gz. Storing the database, │ │ │ │ the configuration file /etc/aide.conf, and the binary /usr/sbin/aide (or hashes of these files), in a │ │ │ │ secure location (such as on read-only media) provides additional assurance about their integrity. The │ │ │ │ newly-generated database can be installed as follows: │ │ │ │ @@ -1076,38 +1076,14 @@ │ │ │ │ _n_i_s_t CM-6(a) │ │ │ │ _o_s_p_p FMT_MOF_EXT.1 │ │ │ │ _o_s_-_s_r_g SRG-OS-000324-GPOS-00125 │ │ │ │ References: _a_n_s_s_i R33 │ │ │ │ _c_i_s 4.3.1 │ │ │ │ _i_s_m 1386 │ │ │ │ _p_c_i_d_s_s_4 2.2.6, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "sudo" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -package --add=sudo │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_sudo │ │ │ │ - │ │ │ │ -class install_sudo { │ │ │ │ - package { 'sudo': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -1134,14 +1110,31 @@ │ │ │ │ - PCI-DSSv4-2.2.6 │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_sudo_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_sudo │ │ │ │ + │ │ │ │ +class install_sudo { │ │ │ │ + package { 'sudo': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "sudo" │ │ │ │ +version = "*" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -1149,14 +1142,21 @@ │ │ │ │ if ! rpm -q --quiet "sudo" ; then │ │ │ │ dnf install -y "sudo" │ │ │ │ fi │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +package --add=sudo │ │ │ │ ****** RRuullee? ?  EEnnssuurree OOnnllyy UUsseerrss LLooggggeedd IInn TToo RReeaall ttttyy CCaann EExxeeccuuttee SSuuddoo -- ssuuddoo uussee__ppttyy ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The sudo use_pty tag, when specified, will only execute sudo commands from users logged in to a real tty. │ │ │ │ This should be enabled by making sure that the use_pty tag exists in /etc/sudoers configuration file or any │ │ │ │ sudo configuration snippets in /etc/sudoers.d/. │ │ │ │ Rationale: Requiring that sudo commands be run in a pseudo-terminal can prevent an attacker from retaining │ │ │ │ access to the user's terminal after the main program has finished executing. │ │ │ │ Severity:  medium │ │ │ │ @@ -14521,31 +14521,14 @@ │ │ │ │ Rationale: determine cause of failure and any information necessary to return to operations with least │ │ │ │ disruption to system processes. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_service_systemd-journald_enabled │ │ │ │ _n_i_s_t SC-24 │ │ │ │ References: _o_s_-_s_r_g SRG-OS-000269-GPOS-00103 │ │ │ │ _c_i_s 5.1.2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -enabled = ["systemd-journald"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include enable_systemd-journald │ │ │ │ - │ │ │ │ -class enable_systemd-journald { │ │ │ │ - service {'systemd-journald': │ │ │ │ - enable => true, │ │ │ │ - ensure => 'running', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -14580,14 +14563,31 @@ │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_systemd-journald_enabled │ │ │ │ - special_service_block │ │ │ │ when: '"kernel" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include enable_systemd-journald │ │ │ │ + │ │ │ │ +class enable_systemd-journald { │ │ │ │ + service {'systemd-journald': │ │ │ │ + enable => true, │ │ │ │ + ensure => 'running', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +enabled = ["systemd-journald"] │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -15439,38 +15439,14 @@ │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 SR 2.10, SR 2.11, SR 2.12, SR 2.8, SR 2.9 │ │ │ │ References: _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.4.1, A.12.4.2, A.12.4.3, A.12.4.4, A.12.7.1 │ │ │ │ _n_i_s_t CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.PT-1 │ │ │ │ _o_s_-_s_r_g SRG-OS-000479-GPOS-00224, SRG-OS-000051-GPOS-00024, SRG-OS-000480-GPOS-00227 │ │ │ │ _c_i_s 5.1.1.1 │ │ │ │ _i_s_m 1409 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "rsyslog" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -package --add=rsyslog │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_rsyslog │ │ │ │ - │ │ │ │ -class install_rsyslog { │ │ │ │ - package { 'rsyslog': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -15493,14 +15469,31 @@ │ │ │ │ - NIST-800-53-CM-6(a) │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_rsyslog_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_rsyslog │ │ │ │ + │ │ │ │ +class install_rsyslog { │ │ │ │ + package { 'rsyslog': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "rsyslog" │ │ │ │ +version = "*" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -15508,14 +15501,21 @@ │ │ │ │ if ! rpm -q --quiet "rsyslog" ; then │ │ │ │ dnf install -y "rsyslog" │ │ │ │ fi │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +package --add=rsyslog │ │ │ │ ****** RRuullee? ?  EEnnssuurree rrssyysslloogg DDeeffaauulltt FFiillee PPeerrmmiissssiioonnss CCoonnffiigguurreedd ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ rsyslog will create logfiles that do not already exist on the system. This settings controls what │ │ │ │ permissions will be applied to these newly created files. │ │ │ │ Rationale: It is important to ensure that log files have the correct permissions to ensure that sensitive │ │ │ │ data is archived and protected. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_rsyslog_filecreatemode │ │ │ │ @@ -25226,21 +25226,14 @@ │ │ │ │ which controls mounting of /home. │ │ │ │ Rationale: The only legitimate location for device files is the /dev directory located on the root │ │ │ │ partition. The only exception to this is chroot jails. │ │ │ │ Severity:  unknown │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_mount_option_home_nodev │ │ │ │ References: _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ _c_i_s 1.1.7.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /home --mountoptions="nodev" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -25426,14 +25419,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /home --mountoptions="nodev" │ │ │ │ ****** RRuullee? ?  AAdddd nnoossuuiidd OOppttiioonn ttoo //hhoommee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nosuid mount option can be used to prevent execution of setuid programs in /home. The SUID and SGID │ │ │ │ permissions should not be required in these user data directories. Add the nosuid option to the fourth │ │ │ │ column of /etc/fstab for the line which controls mounting of /home. │ │ │ │ Rationale: The presence of SUID and SGID executables should be tightly controlled. Users should not be │ │ │ │ able to execute SUID or SGID binaries from user home directory partitions. │ │ │ │ Severity:  medium │ │ │ │ @@ -25453,21 +25453,14 @@ │ │ │ │ _n_e_r_c_-_c_i_p CIP-003-8 R5.1.1, CIP-003-8 R5.3, CIP-004-6 R2.3, CIP-007-3 R2.1, CIP-007- │ │ │ │ 3 R2.2, CIP-007-3 R2.3, CIP-007-3 R5.1, CIP-007-3 R5.1.1, CIP-007-3 R5.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a), AC-6, AC-6(1), MP-7 │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-2, PR.PT-3 │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154, SRG-OS-000480-GPOS-00227 │ │ │ │ _a_n_s_s_i R28 │ │ │ │ _c_i_s 1.1.7.3 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /home --mountoptions="nosuid" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -25689,14 +25682,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /home --mountoptions="nosuid" │ │ │ │ ****** RRuullee? ?  AAdddd nnooddeevv OOppttiioonn ttoo //ttmmpp ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nodev mount option can be used to prevent device files from being created in /tmp. Legitimate │ │ │ │ character and block devices should not exist within temporary directories like /tmp. Add the nodev option │ │ │ │ to the fourth column of /etc/fstab for the line which controls mounting of /tmp. │ │ │ │ Rationale: The only legitimate location for device files is the /dev directory located on the root │ │ │ │ partition. The only exception to this is chroot jails. │ │ │ │ Severity:  medium │ │ │ │ @@ -25715,21 +25715,14 @@ │ │ │ │ A.8.2.2, A.8.2.3, A.8.3.1, A.8.3.3, A.9.1.2 │ │ │ │ _n_e_r_c_-_c_i_p CIP-003-8 R5.1.1, CIP-003-8 R5.3, CIP-004-6 R2.3, CIP-007-3 R2.1, CIP-007- │ │ │ │ 3 R2.2, CIP-007-3 R2.3, CIP-007-3 R5.1, CIP-007-3 R5.1.1, CIP-007-3 R5.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a), AC-6, AC-6(1), MP-7 │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-2, PR.PT-3 │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ _c_i_s 1.1.2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /tmp --mountoptions="nodev" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -25950,14 +25943,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /tmp --mountoptions="nodev" │ │ │ │ ****** RRuullee? ?  AAdddd nnooeexxeecc OOppttiioonn ttoo //ttmmpp ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The noexec mount option can be used to prevent binaries from being executed out of /tmp. Add the noexec │ │ │ │ option to the fourth column of /etc/fstab for the line which controls mounting of /tmp. │ │ │ │ Rationale: Allowing users to execute binaries from world-writable directories such as /tmp should never be │ │ │ │ necessary in normal operation and can expose the system to potential compromise. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_mount_option_tmp_noexec │ │ │ │ @@ -25976,21 +25976,14 @@ │ │ │ │ _n_e_r_c_-_c_i_p CIP-003-8 R5.1.1, CIP-003-8 R5.3, CIP-004-6 R2.3, CIP-007-3 R2.1, CIP-007- │ │ │ │ 3 R2.2, CIP-007-3 R2.3, CIP-007-3 R5.1, CIP-007-3 R5.1.1, CIP-007-3 R5.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a), AC-6, AC-6(1), MP-7 │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-2, PR.PT-3 │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ _a_n_s_s_i R28 │ │ │ │ _c_i_s 1.1.2.3 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /tmp --mountoptions="noexec" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -26211,14 +26204,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /tmp --mountoptions="noexec" │ │ │ │ ****** RRuullee? ?  AAdddd nnoossuuiidd OOppttiioonn ttoo //ttmmpp ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nosuid mount option can be used to prevent execution of setuid programs in /tmp. The SUID and SGID │ │ │ │ permissions should not be required in these world-writable directories. Add the nosuid option to the │ │ │ │ fourth column of /etc/fstab for the line which controls mounting of /tmp. │ │ │ │ Rationale: The presence of SUID and SGID executables should be tightly controlled. Users should not be │ │ │ │ able to execute SUID or SGID binaries from temporary storage partitions. │ │ │ │ Severity:  medium │ │ │ │ @@ -26238,21 +26238,14 @@ │ │ │ │ _n_e_r_c_-_c_i_p CIP-003-8 R5.1.1, CIP-003-8 R5.3, CIP-004-6 R2.3, CIP-007-3 R2.1, CIP-007- │ │ │ │ 3 R2.2, CIP-007-3 R2.3, CIP-007-3 R5.1, CIP-007-3 R5.1.1, CIP-007-3 R5.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a), AC-6, AC-6(1), MP-7 │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-2, PR.PT-3 │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ _a_n_s_s_i R28 │ │ │ │ _c_i_s 1.1.2.4 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /tmp --mountoptions="nosuid" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -26474,14 +26467,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /tmp --mountoptions="nosuid" │ │ │ │ ****** RRuullee? ?  AAdddd nnooddeevv OOppttiioonn ttoo //vvaarr//lloogg//aauuddiitt ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nodev mount option can be used to prevent device files from being created in /var/log/audit. Legitimate │ │ │ │ character and block devices should exist only in the /dev directory on the root partition or within chroot │ │ │ │ jails built for system services. Add the nodev option to the fourth column of /etc/fstab for the line which │ │ │ │ controls mounting of /var/log/audit. │ │ │ │ Rationale: The only legitimate location for device files is the /dev directory located on the root │ │ │ │ partition. The only exception to this is chroot jails. │ │ │ │ @@ -26490,21 +26490,14 @@ │ │ │ │ _n_e_r_c_-_c_i_p CIP-003-8 R5.1.1, CIP-003-8 R5.3, CIP-004-6 R2.3, CIP-007-3 R2.1, CIP-007-3 R2.2, CIP- │ │ │ │ 007-3 R2.3, CIP-007-3 R5.1, CIP-007-3 R5.1.1, CIP-007-3 R5.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a), AC-6, AC-6(1), MP-7 │ │ │ │ References: _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-2, PR.PT-3 │ │ │ │ _o_s_p_p FMT_SMF_EXT.1 │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ _c_i_s 1.1.6.3 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /var/log/audit --mountoptions="nodev" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -26729,14 +26722,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /var/log/audit --mountoptions="nodev" │ │ │ │ ****** RRuullee? ?  AAdddd nnooeexxeecc OOppttiioonn ttoo //vvaarr//lloogg//aauuddiitt ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The noexec mount option can be used to prevent binaries from being executed out of /var/log/audit. Add the │ │ │ │ noexec option to the fourth column of /etc/fstab for the line which controls mounting of /var/log/audit. │ │ │ │ Allowing users to execute binaries from directories containing audit log files such as /var/ │ │ │ │ Rationale: log/audit should never be necessary in normal operation and can expose the system to potential │ │ │ │ compromise. │ │ │ │ Severity:  medium │ │ │ │ @@ -26744,21 +26744,14 @@ │ │ │ │ _n_e_r_c_-_c_i_p CIP-003-8 R5.1.1, CIP-003-8 R5.3, CIP-004-6 R2.3, CIP-007-3 R2.1, CIP-007-3 R2.2, CIP- │ │ │ │ 007-3 R2.3, CIP-007-3 R5.1, CIP-007-3 R5.1.1, CIP-007-3 R5.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a), AC-6, AC-6(1), MP-7 │ │ │ │ References: _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-2, PR.PT-3 │ │ │ │ _o_s_p_p FMT_SMF_EXT.1 │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ _c_i_s 1.1.6.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /var/log/audit --mountoptions="noexec" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -26983,14 +26976,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /var/log/audit --mountoptions="noexec" │ │ │ │ ****** RRuullee? ?  AAdddd nnoossuuiidd OOppttiioonn ttoo //vvaarr//lloogg//aauuddiitt ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nosuid mount option can be used to prevent execution of setuid programs in /var/log/audit. The SUID and │ │ │ │ SGID permissions should not be required in directories containing audit log files. Add the nosuid option to │ │ │ │ the fourth column of /etc/fstab for the line which controls mounting of /var/log/audit. │ │ │ │ Rationale: The presence of SUID and SGID executables should be tightly controlled. Users should not be │ │ │ │ able to execute SUID or SGID binaries from partitions designated for audit log files. │ │ │ │ Severity:  medium │ │ │ │ @@ -26998,21 +26998,14 @@ │ │ │ │ _n_e_r_c_-_c_i_p CIP-003-8 R5.1.1, CIP-003-8 R5.3, CIP-004-6 R2.3, CIP-007-3 R2.1, CIP-007-3 R2.2, CIP- │ │ │ │ 007-3 R2.3, CIP-007-3 R5.1, CIP-007-3 R5.1.1, CIP-007-3 R5.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a), AC-6, AC-6(1), MP-7 │ │ │ │ References: _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-2, PR.PT-3 │ │ │ │ _o_s_p_p FMT_SMF_EXT.1 │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ _c_i_s 1.1.6.4 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /var/log/audit --mountoptions="nosuid" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -27237,14 +27230,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /var/log/audit --mountoptions="nosuid" │ │ │ │ ****** RRuullee? ?  AAdddd nnooddeevv OOppttiioonn ttoo //vvaarr//lloogg ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nodev mount option can be used to prevent device files from being created in /var/log. Legitimate │ │ │ │ character and block devices should exist only in the /dev directory on the root partition or within chroot │ │ │ │ jails built for system services. Add the nodev option to the fourth column of /etc/fstab for the line which │ │ │ │ controls mounting of /var/log. │ │ │ │ Rationale: The only legitimate location for device files is the /dev directory located on the root │ │ │ │ partition. The only exception to this is chroot jails. │ │ │ │ @@ -27252,21 +27252,14 @@ │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_mount_option_var_log_nodev │ │ │ │ _n_e_r_c_-_c_i_p CIP-003-8 R5.1.1, CIP-003-8 R5.3, CIP-004-6 R2.3, CIP-007-3 R2.1, CIP-007-3 R2.2, CIP- │ │ │ │ 007-3 R2.3, CIP-007-3 R5.1, CIP-007-3 R5.1.1, CIP-007-3 R5.1.2 │ │ │ │ References: _n_i_s_t CM-7(a), CM-7(b), CM-6(a), AC-6, AC-6(1), MP-7 │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-2, PR.PT-3 │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ _c_i_s 1.1.5.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /var/log --mountoptions="nodev" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -27489,14 +27482,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /var/log --mountoptions="nodev" │ │ │ │ ****** RRuullee? ?  AAdddd nnooeexxeecc OOppttiioonn ttoo //vvaarr//lloogg ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The noexec mount option can be used to prevent binaries from being executed out of /var/log. Add the noexec │ │ │ │ option to the fourth column of /etc/fstab for the line which controls mounting of /var/log. │ │ │ │ Allowing users to execute binaries from directories containing log files such as /var/log │ │ │ │ Rationale: should never be necessary in normal operation and can expose the system to potential │ │ │ │ compromise. │ │ │ │ Severity:  medium │ │ │ │ @@ -27504,21 +27504,14 @@ │ │ │ │ _n_e_r_c_-_c_i_p CIP-003-8 R5.1.1, CIP-003-8 R5.3, CIP-004-6 R2.3, CIP-007-3 R2.1, CIP-007-3 R2.2, CIP- │ │ │ │ 007-3 R2.3, CIP-007-3 R5.1, CIP-007-3 R5.1.1, CIP-007-3 R5.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a), AC-6, AC-6(1), MP-7 │ │ │ │ References: _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-2, PR.PT-3 │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ _a_n_s_s_i R28 │ │ │ │ _c_i_s 1.1.5.3 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /var/log --mountoptions="noexec" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -27742,14 +27735,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /var/log --mountoptions="noexec" │ │ │ │ ****** RRuullee? ?  AAdddd nnoossuuiidd OOppttiioonn ttoo //vvaarr//lloogg ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nosuid mount option can be used to prevent execution of setuid programs in /var/log. The SUID and SGID │ │ │ │ permissions should not be required in directories containing log files. Add the nosuid option to the fourth │ │ │ │ column of /etc/fstab for the line which controls mounting of /var/log. │ │ │ │ Rationale: The presence of SUID and SGID executables should be tightly controlled. Users should not be │ │ │ │ able to execute SUID or SGID binaries from partitions designated for log files. │ │ │ │ Severity:  medium │ │ │ │ @@ -27757,21 +27757,14 @@ │ │ │ │ _n_e_r_c_-_c_i_p CIP-003-8 R5.1.1, CIP-003-8 R5.3, CIP-004-6 R2.3, CIP-007-3 R2.1, CIP-007-3 R2.2, CIP- │ │ │ │ 007-3 R2.3, CIP-007-3 R5.1, CIP-007-3 R5.1.1, CIP-007-3 R5.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a), AC-6, AC-6(1), MP-7 │ │ │ │ References: _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-2, PR.PT-3 │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ _a_n_s_s_i R28 │ │ │ │ _c_i_s 1.1.5.4 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /var/log --mountoptions="nosuid" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -27995,14 +27988,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /var/log --mountoptions="nosuid" │ │ │ │ ****** RRuullee? ?  AAdddd nnooddeevv OOppttiioonn ttoo //vvaarr ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nodev mount option can be used to prevent device files from being created in /var. Legitimate character │ │ │ │ and block devices should exist only in the /dev directory on the root partition or within chroot jails │ │ │ │ built for system services. Add the nodev option to the fourth column of /etc/fstab for the line which │ │ │ │ controls mounting of /var. │ │ │ │ Rationale: The only legitimate location for device files is the /dev directory located on the root │ │ │ │ partition. The only exception to this is chroot jails. │ │ │ │ @@ -28010,21 +28010,14 @@ │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_mount_option_var_nodev │ │ │ │ _n_e_r_c_-_c_i_p CIP-003-8 R5.1.1, CIP-003-8 R5.3, CIP-004-6 R2.3, CIP-007-3 R2.1, CIP-007-3 R2.2, CIP- │ │ │ │ 007-3 R2.3, CIP-007-3 R5.1, CIP-007-3 R5.1.1, CIP-007-3 R5.1.2 │ │ │ │ References: _n_i_s_t CM-7(a), CM-7(b), CM-6(a), AC-6, AC-6(1), MP-7 │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-2, PR.PT-3 │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ _c_i_s 1.1.3.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /var --mountoptions="nodev" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -28244,30 +28237,30 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /var --mountoptions="nodev" │ │ │ │ ****** RRuullee? ?  AAdddd nnoossuuiidd OOppttiioonn ttoo //vvaarr ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nosuid mount option can be used to prevent execution of setuid programs in /var. The SUID and SGID │ │ │ │ permissions should not be required for this directory. Add the nosuid option to the fourth column of /etc/ │ │ │ │ fstab for the line which controls mounting of /var. │ │ │ │ Rationale: The presence of SUID and SGID executables should be tightly controlled. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_mount_option_var_nosuid │ │ │ │ References: _a_n_s_s_i R28 │ │ │ │ _c_i_s 1.1.3.3 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /var --mountoptions="nosuid" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -28453,31 +28446,31 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /var --mountoptions="nosuid" │ │ │ │ ****** RRuullee? ?  AAdddd nnooddeevv OOppttiioonn ttoo //vvaarr//ttmmpp ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nodev mount option can be used to prevent device files from being created in /var/tmp. Legitimate │ │ │ │ character and block devices should not exist within temporary directories like /var/tmp. Add the nodev │ │ │ │ option to the fourth column of /etc/fstab for the line which controls mounting of /var/tmp. │ │ │ │ Rationale: The only legitimate location for device files is the /dev directory located on the root │ │ │ │ partition. The only exception to this is chroot jails. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_mount_option_var_tmp_nodev │ │ │ │ References: _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ _c_i_s 1.1.4.4 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /var/tmp --mountoptions="nodev" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -28664,31 +28657,31 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /var/tmp --mountoptions="nodev" │ │ │ │ ****** RRuullee? ?  AAdddd nnooeexxeecc OOppttiioonn ttoo //vvaarr//ttmmpp ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The noexec mount option can be used to prevent binaries from being executed out of /var/tmp. Add the │ │ │ │ noexec option to the fourth column of /etc/fstab for the line which controls mounting of /var/tmp. │ │ │ │ Rationale: Allowing users to execute binaries from world-writable directories such as /var/tmp should │ │ │ │ never be necessary in normal operation and can expose the system to potential compromise. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_mount_option_var_tmp_noexec │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ References: _a_n_s_s_i R28 │ │ │ │ _c_i_s 1.1.4.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /var/tmp --mountoptions="noexec" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -28876,32 +28869,32 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /var/tmp --mountoptions="noexec" │ │ │ │ ****** RRuullee? ?  AAdddd nnoossuuiidd OOppttiioonn ttoo //vvaarr//ttmmpp ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nosuid mount option can be used to prevent execution of setuid programs in /var/tmp. The SUID and SGID │ │ │ │ permissions should not be required in these world-writable directories. Add the nosuid option to the │ │ │ │ fourth column of /etc/fstab for the line which controls mounting of /var/tmp. │ │ │ │ Rationale: The presence of SUID and SGID executables should be tightly controlled. Users should not be │ │ │ │ able to execute SUID or SGID binaries from temporary storage partitions. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_mount_option_var_tmp_nosuid │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ References: _a_n_s_s_i R28 │ │ │ │ _c_i_s 1.1.4.3 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /var/tmp --mountoptions="nosuid" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -29089,14 +29082,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /var/tmp --mountoptions="nosuid" │ │ │ │ Group   Restrict Programs from Dangerous Execution Patterns   Group contains 2 groups and 4 rules │ │ │ │ _[_r_e_f_]   The recommendations in this section are designed to ensure that the system's features to protect │ │ │ │ against potentially dangerous program execution are activated. These protections are applied at the system │ │ │ │ initialization or kernel level, and defend against certain types of badly-configured or compromised │ │ │ │ programs. │ │ │ │ Group   Disable Core Dumps   Group contains 2 rules │ │ │ │ _[_r_e_f_]   A core dump file is the memory image of an executable program when it was terminated by the │ │ │ │ @@ -29968,38 +29968,14 @@ │ │ │ │ Security-enhanced Linux is a feature of the Linux kernel and a number of utilities with │ │ │ │ Rationale: enhanced security functionality designed to add mandatory access controls to Linux. The │ │ │ │ libselinux package contains the core library of the Security-enhanced Linux system. │ │ │ │ Severity:  high │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_libselinux_installed │ │ │ │ References: _c_i_s 1.6.1.1 │ │ │ │ _p_c_i_d_s_s_4 1.2.6, 1.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "libselinux" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -package --add=libselinux │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_libselinux │ │ │ │ - │ │ │ │ -class install_libselinux { │ │ │ │ - package { 'libselinux': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -30024,14 +30000,31 @@ │ │ │ │ - PCI-DSSv4-1.2.6 │ │ │ │ - enable_strategy │ │ │ │ - high_severity │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - package_libselinux_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_libselinux │ │ │ │ + │ │ │ │ +class install_libselinux { │ │ │ │ + package { 'libselinux': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "libselinux" │ │ │ │ +version = "*" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -30039,45 +30032,31 @@ │ │ │ │ if ! rpm -q --quiet "libselinux" ; then │ │ │ │ dnf install -y "libselinux" │ │ │ │ fi │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +package --add=libselinux │ │ │ │ ****** RRuullee? ?  UUnniinnssttaallll mmccssttrraannss PPaacckkaaggee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The mcstransd daemon provides category label information to client processes requesting information. The │ │ │ │ label translations are defined in /etc/selinux/targeted/setrans.conf. The mcstrans package can be removed │ │ │ │ with the following command: │ │ │ │ $ sudo dnf remove mcstrans │ │ │ │ Rationale: Since this service is not used very often, disable it to reduce the amount of potentially │ │ │ │ vulnerable code running on the system. │ │ │ │ Severity:  low │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_mcstrans_removed │ │ │ │ References: _c_i_s 1.6.1.8 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=mcstrans │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_mcstrans │ │ │ │ - │ │ │ │ -class remove_mcstrans { │ │ │ │ - package { 'mcstrans': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -30098,14 +30077,27 @@ │ │ │ │ tags: │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_mcstrans_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_mcstrans │ │ │ │ + │ │ │ │ +class remove_mcstrans { │ │ │ │ + package { 'mcstrans': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -30120,46 +30112,33 @@ │ │ │ │ if rpm -q --quiet "mcstrans" ; then │ │ │ │ dnf remove -y --noautoremove "mcstrans" │ │ │ │ fi │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=mcstrans │ │ │ │ ****** RRuullee? ?  UUnniinnssttaallll sseettrroouubblleesshhoooott PPaacckkaaggee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The SETroubleshoot service notifies desktop users of SELinux denials. The service provides information │ │ │ │ around configuration errors, unauthorized intrusions, and other potential errors. The setroubleshoot │ │ │ │ package can be removed with the following command: │ │ │ │ $ sudo dnf remove setroubleshoot │ │ │ │ Rationale: The SETroubleshoot service is an unnecessary daemon to have running on a server, especially if │ │ │ │ X Windows is removed or disabled. │ │ │ │ Severity:  low │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_setroubleshoot_removed │ │ │ │ References: _a_n_s_s_i R49 │ │ │ │ _c_i_s 1.6.1.7 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=setroubleshoot │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_setroubleshoot │ │ │ │ - │ │ │ │ -class remove_setroubleshoot { │ │ │ │ - package { 'setroubleshoot': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -30180,14 +30159,27 @@ │ │ │ │ tags: │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_setroubleshoot_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_setroubleshoot │ │ │ │ + │ │ │ │ +class remove_setroubleshoot { │ │ │ │ + package { 'setroubleshoot': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -30202,14 +30194,22 @@ │ │ │ │ if rpm -q --quiet "setroubleshoot" ; then │ │ │ │ dnf remove -y --noautoremove "setroubleshoot" │ │ │ │ fi │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=setroubleshoot │ │ │ │ ****** RRuullee? ?  EEnnssuurree SSEELLiinnuuxx NNoott DDiissaabblleedd iinn //eettcc//ddeeffaauulltt//ggrruubb ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ SELinux can be disabled at boot time by an argument in /etc/default/grub. Remove any instances of │ │ │ │ selinux=0 from the kernel arguments in that file to prevent SELinux from being disabled at boot. │ │ │ │ Disabling a major host protection feature, such as SELinux, at boot time prevents it from │ │ │ │ Rationale: confining system services at boot time. Further, it increases the chances that it will remain │ │ │ │ off during system operation. │ │ │ │ Severity:  medium │ │ │ │ @@ -30760,35 +30760,14 @@ │ │ │ │ References: SR 1.1, SR 1.10, SR 1.11, SR 1.12, SR 1.13, SR 1.2, SR 1.3, SR 1.4, SR 1.5, SR │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 1.6, SR 1.7, SR 1.8, SR 1.9, SR 2.1, SR 2.2, SR 2.3, SR 2.4, SR 2.5, SR 2.6, SR │ │ │ │ 2.7, SR 7.6 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.1.2, A.12.5.1, A.12.6.2, A.14.2.2, A.14.2.3, A.14.2.4, A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-3 │ │ │ │ _c_i_s 2.2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=avahi │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_avahi │ │ │ │ - │ │ │ │ -class remove_avahi { │ │ │ │ - package { 'avahi': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall avahi Server Package: Ensure avahi is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -30800,14 +30779,27 @@ │ │ │ │ - NIST-800-53-CM-7(b) │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_avahi_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_avahi │ │ │ │ + │ │ │ │ +class remove_avahi { │ │ │ │ + package { 'avahi': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove avahi │ │ │ │ @@ -30816,14 +30808,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "avahi" ; then │ │ │ │ dnf remove -y --noautoremove "avahi" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=avahi │ │ │ │ Group   Cron and At Daemons   Group contains 1 group and 28 rules │ │ │ │ _[_r_e_f_]   The cron and at services are used to allow commands to be executed at a later time. The cron │ │ │ │ service is required by almost all systems to perform necessary maintenance tasks, while at may or may not │ │ │ │ be required on a given system. Both daemons should be configured defensively. │ │ │ │ Group   Restrict at and cron to Authorized Users if Necessary   Group contains 9 rules │ │ │ │ _[_r_e_f_]   The /etc/cron.allow and /etc/at.allow files contain lists of users who are allowed to use cron and │ │ │ │ at to delay execution of processes. If these files exist and if the corresponding files /etc/cron.deny and │ │ │ │ @@ -31602,31 +31602,14 @@ │ │ │ │ SR 1.1, SR 1.10, SR 1.11, SR 1.12, SR 1.13, SR 1.2, SR 1.3, SR 1.4, SR 1.5, SR │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 1.6, SR 1.7, SR 1.8, SR 1.9, SR 2.1, SR 2.2, SR 2.3, SR 2.4, SR 2.5, SR 2.6, SR │ │ │ │ 2.7, SR 7.6 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.1.2, A.12.5.1, A.12.6.2, A.14.2.2, A.14.2.3, A.14.2.4, A.9.1.2 │ │ │ │ _n_i_s_t CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-3 │ │ │ │ _c_i_s 4.1.1 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -enabled = ["crond"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include enable_crond │ │ │ │ - │ │ │ │ -class enable_crond { │ │ │ │ - service {'crond': │ │ │ │ - enable => true, │ │ │ │ - ensure => 'running', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -31661,14 +31644,31 @@ │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_crond_enabled │ │ │ │ - special_service_block │ │ │ │ when: '"kernel" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include enable_crond │ │ │ │ + │ │ │ │ +class enable_crond { │ │ │ │ + service {'crond': │ │ │ │ + enable => true, │ │ │ │ + ensure => 'running', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +enabled = ["crond"] │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -33466,35 +33466,14 @@ │ │ │ │ 2.7, SR 7.6 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.1.2, A.12.5.1, A.12.6.2, A.14.2.2, A.14.2.3, A.14.2.4, A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-3 │ │ │ │ _a_n_s_s_i R62 │ │ │ │ _c_i_s 2.2.4 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=dhcp │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_dhcp │ │ │ │ - │ │ │ │ -class remove_dhcp { │ │ │ │ - package { 'dhcp': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall DHCP Server Package: Ensure dhcp is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -33508,14 +33487,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_dhcp_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_dhcp │ │ │ │ + │ │ │ │ +class remove_dhcp { │ │ │ │ + package { 'dhcp': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove dhcp │ │ │ │ @@ -33524,14 +33516,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "dhcp" ; then │ │ │ │ dnf remove -y --noautoremove "dhcp" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=dhcp │ │ │ │ Group   DNS Server   Group contains 1 group and 2 rules │ │ │ │ _[_r_e_f_]   Most organizations have an operational need to run at least one nameserver. However, there are many │ │ │ │ common attacks involving DNS server software, and this server software should be disabled on any system on │ │ │ │ which it is not needed. │ │ │ │ Group   Disable DNS Server   Group contains 1 rule │ │ │ │ _[_r_e_f_]   DNS software should be disabled on any systems which does not need to be a nameserver. Note that │ │ │ │ the BIND DNS server software is not installed on Amazon Linux 2023 by default. The remainder of this │ │ │ │ @@ -33553,35 +33553,14 @@ │ │ │ │ References: SR 1.1, SR 1.10, SR 1.11, SR 1.12, SR 1.13, SR 1.2, SR 1.3, SR 1.4, SR 1.5, SR │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 1.6, SR 1.7, SR 1.8, SR 1.9, SR 2.1, SR 2.2, SR 2.3, SR 2.4, SR 2.5, SR 2.6, SR │ │ │ │ 2.7, SR 7.6 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.1.2, A.12.5.1, A.12.6.2, A.14.2.2, A.14.2.3, A.14.2.4, A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-3 │ │ │ │ _c_i_s 2.2.5 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=bind │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_bind │ │ │ │ - │ │ │ │ -class remove_bind { │ │ │ │ - package { 'bind': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall bind Package: Ensure bind is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -33593,14 +33572,27 @@ │ │ │ │ - NIST-800-53-CM-7(b) │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_bind_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_bind │ │ │ │ + │ │ │ │ +class remove_bind { │ │ │ │ + package { 'bind': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove bind │ │ │ │ @@ -33609,61 +33601,61 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "bind" ; then │ │ │ │ dnf remove -y --noautoremove "bind" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=bind │ │ │ │ ****** RRuullee? ?  UUnniinnssttaallll ddnnssmmaassqq PPaacckkaaggee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ dnsmasq is a lightweight tool that provides DNS caching, DNS forwarding and DHCP (Dynamic Host │ │ │ │ Configuration Protocol) services. │ │ │ │ The dnsmasq package can be removed with the following command: │ │ │ │ $ sudo dnf remove dnsmasq │ │ │ │ Rationale: Unless a system is specifically designated to act as a DNS caching, DNS forwarding and/or DHCP │ │ │ │ server, it is recommended that the package be removed to reduce the potential attack surface. │ │ │ │ Severity:  low │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_dnsmasq_removed │ │ │ │ References: _c_i_s 2.2.14 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=dnsmasq │ │ │ │ +- name: 'Uninstall dnsmasq Package: Ensure dnsmasq is removed' │ │ │ │ + ansible.builtin.package: │ │ │ │ + name: dnsmasq │ │ │ │ + state: absent │ │ │ │ + tags: │ │ │ │ + - disable_strategy │ │ │ │ + - low_complexity │ │ │ │ + - low_disruption │ │ │ │ + - low_severity │ │ │ │ + - no_reboot_needed │ │ │ │ + - package_dnsmasq_removed │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ include remove_dnsmasq │ │ │ │ │ │ │ │ class remove_dnsmasq { │ │ │ │ package { 'dnsmasq': │ │ │ │ ensure => 'purged', │ │ │ │ } │ │ │ │ } │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ -- name: 'Uninstall dnsmasq Package: Ensure dnsmasq is removed' │ │ │ │ - ansible.builtin.package: │ │ │ │ - name: dnsmasq │ │ │ │ - state: absent │ │ │ │ - tags: │ │ │ │ - - disable_strategy │ │ │ │ - - low_complexity │ │ │ │ - - low_disruption │ │ │ │ - - low_severity │ │ │ │ - - no_reboot_needed │ │ │ │ - - package_dnsmasq_removed │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove dnsmasq │ │ │ │ @@ -33672,14 +33664,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "dnsmasq" ; then │ │ │ │ dnf remove -y --noautoremove "dnsmasq" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=dnsmasq │ │ │ │ Group   FTP Server   Group contains 1 group and 2 rules │ │ │ │ _[_r_e_f_]   FTP is a common method for allowing remote access to files. Like telnet, the FTP protocol is │ │ │ │ unencrypted, which means that passwords and other data transmitted during the session can be captured and │ │ │ │ that the session is vulnerable to hijacking. Therefore, running the FTP server software is not recommended. │ │ │ │ │ │ │ │ │ │ │ │ However, there are some FTP server configurations which may be appropriate for some environments, │ │ │ │ @@ -33703,35 +33703,14 @@ │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 1.6, SR 1.7, SR 1.8, SR 1.9, SR 2.1, SR 2.2, SR 2.3, SR 2.4, SR 2.5, SR 2.6, SR │ │ │ │ 2.7, SR 7.6 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.1.2, A.12.5.1, A.12.6.2, A.14.2.2, A.14.2.3, A.14.2.4, A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a), IA-5(1)(c), IA-5(1).1(v), CM-7, CM-7.1(ii) │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-3 │ │ │ │ _o_s_-_s_r_g SRG-OS-000074-GPOS-00042, SRG-OS-000095-GPOS-00049, SRG-OS-000480-GPOS-00227 │ │ │ │ _c_i_s 2.2.6 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=vsftpd │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_vsftpd │ │ │ │ - │ │ │ │ -class remove_vsftpd { │ │ │ │ - package { 'vsftpd': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall vsftpd Package: Ensure vsftpd is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -33747,14 +33726,27 @@ │ │ │ │ - NIST-800-53-IA-5(1).1(v) │ │ │ │ - disable_strategy │ │ │ │ - high_severity │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - package_vsftpd_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_vsftpd │ │ │ │ + │ │ │ │ +class remove_vsftpd { │ │ │ │ + package { 'vsftpd': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove vsftpd │ │ │ │ @@ -33763,49 +33755,36 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "vsftpd" ; then │ │ │ │ dnf remove -y --noautoremove "vsftpd" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=vsftpd │ │ │ │ ****** RRuullee? ?  RReemmoovvee ffttpp PPaacckkaaggee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ FTP (File Transfer Protocol) is a traditional and widely used standard tool for transferring files between │ │ │ │ a server and clients over a network, especially where no authentication is necessary (permits anonymous │ │ │ │ users to connect to a server). │ │ │ │ The ftp package can be removed with the following command: │ │ │ │ $ sudo dnf remove ftp │ │ │ │ FTP does not protect the confidentiality of data or authentication credentials. It is │ │ │ │ Rationale: recommended SFTP be used if file transfer is required. Unless there is a need to run the system │ │ │ │ as a FTP server (for example, to allow anonymous downloads), it is recommended that the package │ │ │ │ be removed to reduce the potential attack surface. │ │ │ │ Severity:  low │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_ftp_removed │ │ │ │ References: _c_i_s 2.3.3 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=ftp │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_ftp │ │ │ │ - │ │ │ │ -class remove_ftp { │ │ │ │ - package { 'ftp': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Remove ftp Package: Ensure ftp is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -33816,14 +33795,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_ftp_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_ftp │ │ │ │ + │ │ │ │ +class remove_ftp { │ │ │ │ + package { 'ftp': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove ftp │ │ │ │ @@ -33832,14 +33824,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "ftp" ; then │ │ │ │ dnf remove -y --noautoremove "ftp" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=ftp │ │ │ │ Group   Web Server   Group contains 2 groups and 2 rules │ │ │ │ _[_r_e_f_]   The web server is responsible for providing access to content via the HTTP protocol. Web servers │ │ │ │ represent a significant security risk because: │ │ │ │ │ │ │ │ * The HTTP port is commonly probed by malicious sources │ │ │ │ * Web server software is very complex, and includes a long history of vulnerabilities │ │ │ │ * The HTTP protocol is unencrypted and vulnerable to passive monitoring │ │ │ │ @@ -33865,35 +33865,14 @@ │ │ │ │ References: SR 1.1, SR 1.10, SR 1.11, SR 1.12, SR 1.13, SR 1.2, SR 1.3, SR 1.4, SR 1.5, SR │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 1.6, SR 1.7, SR 1.8, SR 1.9, SR 2.1, SR 2.2, SR 2.3, SR 2.4, SR 2.5, SR 2.6, SR │ │ │ │ 2.7, SR 7.6 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.1.2, A.12.5.1, A.12.6.2, A.14.2.2, A.14.2.3, A.14.2.4, A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-3 │ │ │ │ _c_i_s 2.2.8 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=httpd │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_httpd │ │ │ │ - │ │ │ │ -class remove_httpd { │ │ │ │ - package { 'httpd': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall httpd Package: Ensure httpd is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -33905,14 +33884,27 @@ │ │ │ │ - NIST-800-53-CM-7(b) │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - package_httpd_removed │ │ │ │ - unknown_severity │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_httpd │ │ │ │ + │ │ │ │ +class remove_httpd { │ │ │ │ + package { 'httpd': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove httpd │ │ │ │ @@ -33921,14 +33913,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "httpd" ; then │ │ │ │ dnf remove -y --noautoremove "httpd" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=httpd │ │ │ │ Group   Disable NGINX if Possible   Group contains 1 rule │ │ │ │ _[_r_e_f_]   If NGINX was installed and activated, but the system does not need to act as a web server, then it │ │ │ │ should be removed from the system. │ │ │ │ ****** RRuullee? ?  UUnniinnssttaallll nnggiinnxx PPaacckkaaggee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nginx package can be removed with the following command: │ │ │ │ $ sudo dnf remove nginx │ │ │ │ Rationale: If there is no need to make the web server software available, removing it provides a safeguard │ │ │ │ @@ -33943,35 +33943,14 @@ │ │ │ │ References: SR 1.1, SR 1.10, SR 1.11, SR 1.12, SR 1.13, SR 1.2, SR 1.3, SR 1.4, SR 1.5, SR │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 1.6, SR 1.7, SR 1.8, SR 1.9, SR 2.1, SR 2.2, SR 2.3, SR 2.4, SR 2.5, SR 2.6, SR │ │ │ │ 2.7, SR 7.6 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.1.2, A.12.5.1, A.12.6.2, A.14.2.2, A.14.2.3, A.14.2.4, A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-3 │ │ │ │ _c_i_s 2.2.8 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=nginx │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_nginx │ │ │ │ - │ │ │ │ -class remove_nginx { │ │ │ │ - package { 'nginx': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall nginx Package: Ensure nginx is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -33983,14 +33962,27 @@ │ │ │ │ - NIST-800-53-CM-7(b) │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - package_nginx_removed │ │ │ │ - unknown_severity │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_nginx │ │ │ │ + │ │ │ │ +class remove_nginx { │ │ │ │ + package { 'nginx': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove nginx │ │ │ │ @@ -33999,65 +33991,65 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "nginx" ; then │ │ │ │ dnf remove -y --noautoremove "nginx" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=nginx │ │ │ │ Group   IMAP and POP3 Server   Group contains 2 groups and 2 rules │ │ │ │ _[_r_e_f_]   Dovecot provides IMAP and POP3 services. It is not installed by default. The project page at _h_t_t_p_:_/ │ │ │ │ _/_w_w_w_._d_o_v_e_c_o_t_._o_r_g contains more detailed information about Dovecot configuration. │ │ │ │ Group   Disable Cyrus IMAP   Group contains 1 rule │ │ │ │ _[_r_e_f_]   If the system does not need to operate as an IMAP or POP3 server, the Cyrus IMAP software should be │ │ │ │ removed. │ │ │ │ ****** RRuullee? ?  UUnniinnssttaallll ccyyrruuss--iimmaappdd PPaacckkaaggee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The cyrus-imapd package can be removed with the following command: │ │ │ │ $ sudo dnf remove cyrus-imapd │ │ │ │ Rationale: If there is no need to make the cyrus-imapd software available, removing it provides a │ │ │ │ safeguard against its activation. │ │ │ │ Severity:  unknown │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_cyrus-imapd_removed │ │ │ │ References: _c_i_s 2.2.9 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=cyrus-imapd │ │ │ │ +- name: 'Uninstall cyrus-imapd Package: Ensure cyrus-imapd is removed' │ │ │ │ + ansible.builtin.package: │ │ │ │ + name: cyrus-imapd │ │ │ │ + state: absent │ │ │ │ + tags: │ │ │ │ + - disable_strategy │ │ │ │ + - low_complexity │ │ │ │ + - low_disruption │ │ │ │ + - no_reboot_needed │ │ │ │ + - package_cyrus-imapd_removed │ │ │ │ + - unknown_severity │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ include remove_cyrus-imapd │ │ │ │ │ │ │ │ class remove_cyrus-imapd { │ │ │ │ package { 'cyrus-imapd': │ │ │ │ ensure => 'purged', │ │ │ │ } │ │ │ │ } │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ -- name: 'Uninstall cyrus-imapd Package: Ensure cyrus-imapd is removed' │ │ │ │ - ansible.builtin.package: │ │ │ │ - name: cyrus-imapd │ │ │ │ - state: absent │ │ │ │ - tags: │ │ │ │ - - disable_strategy │ │ │ │ - - low_complexity │ │ │ │ - - low_disruption │ │ │ │ - - no_reboot_needed │ │ │ │ - - package_cyrus-imapd_removed │ │ │ │ - - unknown_severity │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove cyrus-imapd │ │ │ │ @@ -34066,62 +34058,62 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "cyrus-imapd" ; then │ │ │ │ dnf remove -y --noautoremove "cyrus-imapd" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=cyrus-imapd │ │ │ │ Group   Disable Dovecot   Group contains 1 rule │ │ │ │ _[_r_e_f_]   If the system does not need to operate as an IMAP or POP3 server, the dovecot software should be │ │ │ │ disabled and removed. │ │ │ │ ****** RRuullee? ?  UUnniinnssttaallll ddoovveeccoott PPaacckkaaggee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The dovecot package can be removed with the following command: │ │ │ │ $ sudo dnf remove dovecot │ │ │ │ Rationale: If there is no need to make the Dovecot software available, removing it provides a safeguard │ │ │ │ against its activation. │ │ │ │ Severity:  unknown │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_dovecot_removed │ │ │ │ References: _c_i_s 2.2.9 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=dovecot │ │ │ │ +- name: 'Uninstall dovecot Package: Ensure dovecot is removed' │ │ │ │ + ansible.builtin.package: │ │ │ │ + name: dovecot │ │ │ │ + state: absent │ │ │ │ + tags: │ │ │ │ + - disable_strategy │ │ │ │ + - low_complexity │ │ │ │ + - low_disruption │ │ │ │ + - no_reboot_needed │ │ │ │ + - package_dovecot_removed │ │ │ │ + - unknown_severity │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ include remove_dovecot │ │ │ │ │ │ │ │ class remove_dovecot { │ │ │ │ package { 'dovecot': │ │ │ │ ensure => 'purged', │ │ │ │ } │ │ │ │ } │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ -- name: 'Uninstall dovecot Package: Ensure dovecot is removed' │ │ │ │ - ansible.builtin.package: │ │ │ │ - name: dovecot │ │ │ │ - state: absent │ │ │ │ - tags: │ │ │ │ - - disable_strategy │ │ │ │ - - low_complexity │ │ │ │ - - low_disruption │ │ │ │ - - no_reboot_needed │ │ │ │ - - package_dovecot_removed │ │ │ │ - - unknown_severity │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove dovecot │ │ │ │ @@ -34130,14 +34122,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "dovecot" ; then │ │ │ │ dnf remove -y --noautoremove "dovecot" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=dovecot │ │ │ │ Group   LDAP   Group contains 1 group and 1 rule │ │ │ │ _[_r_e_f_]   LDAP is a popular directory service, that is, a standardized way of looking up information from a │ │ │ │ central database. Amazon Linux 2023 includes software that enables a system to act as both an LDAP client │ │ │ │ and server. │ │ │ │ Group   Configure OpenLDAP Clients   Group contains 1 rule │ │ │ │ _[_r_e_f_]   This section provides information on which security settings are important to configure in OpenLDAP │ │ │ │ clients by manually editing the appropriate configuration files. Amazon Linux 2023 provides an automated │ │ │ │ @@ -34154,51 +34154,43 @@ │ │ │ │ command: │ │ │ │ $ sudo dnf remove openldap-clients │ │ │ │ Rationale: If the system does not need to act as an LDAP client, it is recommended that the software is │ │ │ │ removed to reduce the potential attack surface. │ │ │ │ Severity:  low │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_openldap-clients_removed │ │ │ │ References: _c_i_s 2.3.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=openldap-clients │ │ │ │ +- name: 'Ensure LDAP client is not installed: Ensure openldap-clients is removed' │ │ │ │ + ansible.builtin.package: │ │ │ │ + name: openldap-clients │ │ │ │ + state: absent │ │ │ │ + tags: │ │ │ │ + - disable_strategy │ │ │ │ + - low_complexity │ │ │ │ + - low_disruption │ │ │ │ + - low_severity │ │ │ │ + - no_reboot_needed │ │ │ │ + - package_openldap-clients_removed │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ include remove_openldap-clients │ │ │ │ │ │ │ │ class remove_openldap-clients { │ │ │ │ package { 'openldap-clients': │ │ │ │ ensure => 'purged', │ │ │ │ } │ │ │ │ } │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ -- name: 'Ensure LDAP client is not installed: Ensure openldap-clients is removed' │ │ │ │ - ansible.builtin.package: │ │ │ │ - name: openldap-clients │ │ │ │ - state: absent │ │ │ │ - tags: │ │ │ │ - - disable_strategy │ │ │ │ - - low_complexity │ │ │ │ - - low_disruption │ │ │ │ - - low_severity │ │ │ │ - - no_reboot_needed │ │ │ │ - - package_openldap-clients_removed │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove openldap-clients │ │ │ │ @@ -34207,14 +34199,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "openldap-clients" ; then │ │ │ │ dnf remove -y --noautoremove "openldap-clients" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=openldap-clients │ │ │ │ Group   Mail Server Software   Group contains 1 group and 2 rules │ │ │ │ _[_r_e_f_]   Mail servers are used to send and receive email over the network. Mail is a very common service, │ │ │ │ and Mail Transfer Agents (MTAs) are obvious targets of network attack. Ensure that systems are not running │ │ │ │ MTAs unnecessarily, and configure needed MTAs as defensively as possible. │ │ │ │ │ │ │ │ Very few systems at any site should be configured to directly receive email over the network. Users should │ │ │ │ instead use mail client programs to retrieve email from a central server that supports protocols such as │ │ │ │ @@ -34382,31 +34382,14 @@ │ │ │ │ $ sudo systemctl mask --now rpcbind.service │ │ │ │ Rationale: If the system does not require rpc based services, it is recommended that rpcbind be disabled │ │ │ │ to reduce the attack surface. │ │ │ │ Severity:  low │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_service_rpcbind_disabled │ │ │ │ References: _c_i_s 2.2.17 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -masked = ["rpcbind"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include disable_rpcbind │ │ │ │ - │ │ │ │ -class disable_rpcbind { │ │ │ │ - service {'rpcbind': │ │ │ │ - enable => false, │ │ │ │ - ensure => 'stopped', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -34460,14 +34443,31 @@ │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_rpcbind_disabled │ │ │ │ - special_service_block │ │ │ │ when: '"kernel" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include disable_rpcbind │ │ │ │ + │ │ │ │ +class disable_rpcbind { │ │ │ │ + service {'rpcbind': │ │ │ │ + enable => false, │ │ │ │ + ensure => 'stopped', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +masked = ["rpcbind"] │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -34515,31 +34515,14 @@ │ │ │ │ References: SR 1.1, SR 1.10, SR 1.11, SR 1.12, SR 1.13, SR 1.2, SR 1.3, SR 1.4, SR 1.5, SR │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 1.6, SR 1.7, SR 1.8, SR 1.9, SR 2.1, SR 2.2, SR 2.3, SR 2.4, SR 2.5, SR 2.6, SR │ │ │ │ 2.7 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.6.1.2, A.7.1.1, A.9.1.2, A.9.2.1, A.9.2.3, A.9.4.1, A.9.4.4, A.9.4.5 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-4, PR.AC-6, PR.PT-3 │ │ │ │ _c_i_s 2.2.16 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -masked = ["nfs-server"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include disable_nfs-server │ │ │ │ - │ │ │ │ -class disable_nfs-server { │ │ │ │ - service {'nfs-server': │ │ │ │ - enable => false, │ │ │ │ - ensure => 'stopped', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -34596,14 +34579,31 @@ │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - service_nfs_disabled │ │ │ │ - special_service_block │ │ │ │ - unknown_severity │ │ │ │ when: '"kernel" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include disable_nfs-server │ │ │ │ + │ │ │ │ +class disable_nfs-server { │ │ │ │ + service {'nfs-server': │ │ │ │ + enable => false, │ │ │ │ + ensure => 'stopped', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +masked = ["nfs-server"] │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -35316,35 +35316,14 @@ │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-3, PR.IP-1, PR.PT-3, PR.PT-4 │ │ │ │ _p_c_i_d_s_s Req-2.2.2 │ │ │ │ _o_s_-_s_r_g SRG-OS-000095-GPOS-00049 │ │ │ │ _a_n_s_s_i R62 │ │ │ │ _c_i_s 2.2.13 │ │ │ │ _i_s_m 1409 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=telnet-server │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_telnet-server │ │ │ │ - │ │ │ │ -class remove_telnet-server { │ │ │ │ - package { 'telnet-server': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall telnet-server Package: Ensure telnet-server is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -35359,14 +35338,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - high_severity │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - package_telnet-server_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_telnet-server │ │ │ │ + │ │ │ │ +class remove_telnet-server { │ │ │ │ + package { 'telnet-server': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove telnet-server │ │ │ │ @@ -35375,14 +35367,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "telnet-server" ; then │ │ │ │ dnf remove -y --noautoremove "telnet-server" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=telnet-server │ │ │ │ ****** RRuullee? ?  RReemmoovvee tteellnneett CClliieennttss ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The telnet client allows users to start connections to other systems via the telnet protocol. │ │ │ │ The telnet protocol is insecure and unencrypted. The use of an unencrypted transmission medium │ │ │ │ Rationale: could allow an unauthorized user to steal credentials. The ssh package provides an encrypted │ │ │ │ session and stronger security and is included in Amazon Linux 2023. │ │ │ │ Severity:  low │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_telnet_removed │ │ │ │ @@ -35390,35 +35390,14 @@ │ │ │ │ _h_i_p_a_a 164.308(a)(4)(i), 164.308(b)(1), 164.308(b)(3), 164.310(b), 164.312(e)(1), │ │ │ │ 164.312(e)(2)(ii) │ │ │ │ References: _i_s_o_2_7_0_0_1_-_2_0_1_3 A.8.2.3, A.13.1.1, A.13.2.1, A.13.2.3, A.14.1.2, A.14.1.3 │ │ │ │ _a_n_s_s_i R62 │ │ │ │ _c_i_s 2.3.1 │ │ │ │ _i_s_m 1409 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=telnet │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_telnet │ │ │ │ - │ │ │ │ -class remove_telnet { │ │ │ │ - package { 'telnet': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Remove telnet Clients: Ensure telnet is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -35430,14 +35409,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_telnet_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_telnet │ │ │ │ + │ │ │ │ +class remove_telnet { │ │ │ │ + package { 'telnet': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove telnet │ │ │ │ @@ -35446,14 +35438,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "telnet" ; then │ │ │ │ dnf remove -y --noautoremove "telnet" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=telnet │ │ │ │ Group   TFTP Server   Group contains 1 rule │ │ │ │ _[_r_e_f_]   TFTP is a lightweight version of the FTP protocol which has traditionally been used to configure │ │ │ │ networking equipment. However, TFTP provides little security, and modern versions of networking operating │ │ │ │ systems frequently support configuration via SSH or other more secure protocols. A TFTP server should be │ │ │ │ run only if no more secure method of supporting existing equipment can be found. │ │ │ │ ****** RRuullee? ?  UUnniinnssttaallll ttffttpp--sseerrvveerr PPaacckkaaggee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The tftp-server package can be removed with the following command: │ │ │ │ @@ -35481,35 +35481,14 @@ │ │ │ │ A.14.2.3, A.14.2.4, A.6.2.1, A.6.2.2, A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-3, PR.IP-1, PR.PT-3, PR.PT-4 │ │ │ │ _o_s_-_s_r_g SRG-OS-000480-GPOS-00227 │ │ │ │ _a_n_s_s_i R62 │ │ │ │ _c_i_s 2.2.7 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=tftp-server │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_tftp-server │ │ │ │ - │ │ │ │ -class remove_tftp-server { │ │ │ │ - package { 'tftp-server': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall tftp-server Package: Ensure tftp-server is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -35523,14 +35502,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - high_severity │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - package_tftp-server_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_tftp-server │ │ │ │ + │ │ │ │ +class remove_tftp-server { │ │ │ │ + package { 'tftp-server': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove tftp-server │ │ │ │ @@ -35539,59 +35531,59 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "tftp-server" ; then │ │ │ │ dnf remove -y --noautoremove "tftp-server" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=tftp-server │ │ │ │ ****** RRuullee? ?  UUnniinnssttaallll rrssyynncc PPaacckkaaggee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The rsyncd service can be used to synchronize files between systems over network links. The rsync package │ │ │ │ can be removed with the following command: │ │ │ │ $ sudo dnf remove rsync │ │ │ │ Rationale: The rsyncd service presents a security risk as it uses unencrypted protocols for communication. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_rsync_removed │ │ │ │ References: _c_i_s 2.2.18 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=rsync │ │ │ │ +- name: 'Uninstall rsync Package: Ensure rsync is removed' │ │ │ │ + ansible.builtin.package: │ │ │ │ + name: rsync │ │ │ │ + state: absent │ │ │ │ + tags: │ │ │ │ + - disable_strategy │ │ │ │ + - low_complexity │ │ │ │ + - low_disruption │ │ │ │ + - medium_severity │ │ │ │ + - no_reboot_needed │ │ │ │ + - package_rsync_removed │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ include remove_rsync │ │ │ │ │ │ │ │ class remove_rsync { │ │ │ │ package { 'rsync': │ │ │ │ ensure => 'purged', │ │ │ │ } │ │ │ │ } │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ -- name: 'Uninstall rsync Package: Ensure rsync is removed' │ │ │ │ - ansible.builtin.package: │ │ │ │ - name: rsync │ │ │ │ - state: absent │ │ │ │ - tags: │ │ │ │ - - disable_strategy │ │ │ │ - - low_complexity │ │ │ │ - - low_disruption │ │ │ │ - - medium_severity │ │ │ │ - - no_reboot_needed │ │ │ │ - - package_rsync_removed │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove rsync │ │ │ │ @@ -35600,14 +35592,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "rsync" ; then │ │ │ │ dnf remove -y --noautoremove "rsync" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=rsync │ │ │ │ Group   Print Support   Group contains 1 rule │ │ │ │ _[_r_e_f_]   The Common Unix Printing System (CUPS) service provides both local and network printing support. A │ │ │ │ system running the CUPS service can accept print jobs from other systems, process them, and send them to │ │ │ │ the appropriate printer. It also provides an interface for remote administration through a web browser. The │ │ │ │ CUPS service is installed and activated by default. The project homepage and more detailed documentation │ │ │ │ are available at _h_t_t_p_:_/_/_w_w_w_._c_u_p_s_._o_r_g. │ │ │ │ │ │ │ │ @@ -35627,35 +35627,14 @@ │ │ │ │ References: SR 1.1, SR 1.10, SR 1.11, SR 1.12, SR 1.13, SR 1.2, SR 1.3, SR 1.4, SR 1.5, SR │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 1.6, SR 1.7, SR 1.8, SR 1.9, SR 2.1, SR 2.2, SR 2.3, SR 2.4, SR 2.5, SR 2.6, SR │ │ │ │ 2.7, SR 7.6 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.1.2, A.12.5.1, A.12.6.2, A.14.2.2, A.14.2.3, A.14.2.4, A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-3 │ │ │ │ _c_i_s 2.2.3 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=cups │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_cups │ │ │ │ - │ │ │ │ -class remove_cups { │ │ │ │ - package { 'cups': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall CUPS Package: Ensure cups is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -35667,14 +35646,27 @@ │ │ │ │ - NIST-800-53-CM-7(b) │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - package_cups_removed │ │ │ │ - unknown_severity │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_cups │ │ │ │ + │ │ │ │ +class remove_cups { │ │ │ │ + package { 'cups': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove cups │ │ │ │ @@ -35683,14 +35675,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "cups" ; then │ │ │ │ dnf remove -y --noautoremove "cups" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=cups │ │ │ │ Group   Proxy Server   Group contains 1 group and 1 rule │ │ │ │ _[_r_e_f_]   A proxy server is a very desirable target for a potential adversary because much (or all) sensitive │ │ │ │ data for a given infrastructure may flow through it. Therefore, if one is required, the system acting as a │ │ │ │ proxy server should be dedicated to that purpose alone and be stored in a physically secure location. The │ │ │ │ system's default proxy server software is Squid, and provided in an RPM package of the same name. │ │ │ │ Group   Disable Squid if Possible   Group contains 1 rule │ │ │ │ _[_r_e_f_]   If Squid was installed and activated, but the system does not need to act as a proxy server, then │ │ │ │ @@ -35700,51 +35700,43 @@ │ │ │ │ $ sudo dnf remove squid │ │ │ │ Rationale: If there is no need to make the proxy server software available, removing it provides a │ │ │ │ safeguard against its activation. │ │ │ │ Severity:  unknown │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_squid_removed │ │ │ │ References: _c_i_s 2.2.11 │ │ │ │ _i_s_m 1409 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=squid │ │ │ │ +- name: 'Uninstall squid Package: Ensure squid is removed' │ │ │ │ + ansible.builtin.package: │ │ │ │ + name: squid │ │ │ │ + state: absent │ │ │ │ + tags: │ │ │ │ + - disable_strategy │ │ │ │ + - low_complexity │ │ │ │ + - low_disruption │ │ │ │ + - no_reboot_needed │ │ │ │ + - package_squid_removed │ │ │ │ + - unknown_severity │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ include remove_squid │ │ │ │ │ │ │ │ class remove_squid { │ │ │ │ package { 'squid': │ │ │ │ ensure => 'purged', │ │ │ │ } │ │ │ │ } │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ -- name: 'Uninstall squid Package: Ensure squid is removed' │ │ │ │ - ansible.builtin.package: │ │ │ │ - name: squid │ │ │ │ - state: absent │ │ │ │ - tags: │ │ │ │ - - disable_strategy │ │ │ │ - - low_complexity │ │ │ │ - - low_disruption │ │ │ │ - - no_reboot_needed │ │ │ │ - - package_squid_removed │ │ │ │ - - unknown_severity │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove squid │ │ │ │ @@ -35753,14 +35745,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "squid" ; then │ │ │ │ dnf remove -y --noautoremove "squid" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=squid │ │ │ │ Group   Samba(SMB) Microsoft Windows File Sharing Server   Group contains 1 group and 1 rule │ │ │ │ _[_r_e_f_]   When properly configured, the Samba service allows Linux systems to provide file and print sharing │ │ │ │ to Microsoft Windows systems. There are two software packages that provide Samba support. The first, samba- │ │ │ │ client, provides a series of command line tools that enable a client system to access Samba shares. The │ │ │ │ second, simply labeled samba, provides the Samba service. It is this second package that allows a Linux │ │ │ │ system to act as an Active Directory server, a domain controller, or as a domain member. Only the samba- │ │ │ │ client package is installed by default. │ │ │ │ @@ -35772,51 +35772,43 @@ │ │ │ │ The samba package can be removed with the following command: │ │ │ │ $ sudo dnf remove samba │ │ │ │ Rationale: If there is no need to make the Samba software available, removing it provides a safeguard │ │ │ │ against its activation. │ │ │ │ Severity:  unknown │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_samba_removed │ │ │ │ References: _c_i_s 2.2.10 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=samba │ │ │ │ +- name: 'Uninstall Samba Package: Ensure samba is removed' │ │ │ │ + ansible.builtin.package: │ │ │ │ + name: samba │ │ │ │ + state: absent │ │ │ │ + tags: │ │ │ │ + - disable_strategy │ │ │ │ + - low_complexity │ │ │ │ + - low_disruption │ │ │ │ + - no_reboot_needed │ │ │ │ + - package_samba_removed │ │ │ │ + - unknown_severity │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ include remove_samba │ │ │ │ │ │ │ │ class remove_samba { │ │ │ │ package { 'samba': │ │ │ │ ensure => 'purged', │ │ │ │ } │ │ │ │ } │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ -- name: 'Uninstall Samba Package: Ensure samba is removed' │ │ │ │ - ansible.builtin.package: │ │ │ │ - name: samba │ │ │ │ - state: absent │ │ │ │ - tags: │ │ │ │ - - disable_strategy │ │ │ │ - - low_complexity │ │ │ │ - - low_disruption │ │ │ │ - - no_reboot_needed │ │ │ │ - - package_samba_removed │ │ │ │ - - unknown_severity │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove samba │ │ │ │ @@ -35825,14 +35817,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "samba" ; then │ │ │ │ dnf remove -y --noautoremove "samba" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=samba │ │ │ │ Group   SNMP Server   Group contains 1 group and 2 rules │ │ │ │ _[_r_e_f_]   The Simple Network Management Protocol allows administrators to monitor the state of network │ │ │ │ devices, including computers. Older versions of SNMP were well-known for weak security, such as plaintext │ │ │ │ transmission of the community string (used for authentication) and usage of easily-guessable choices for │ │ │ │ the community string. │ │ │ │ Group   Disable SNMP Server if Possible   Group contains 2 rules │ │ │ │ _[_r_e_f_]   The system includes an SNMP daemon that allows for its remote monitoring, though it not installed │ │ │ │ @@ -35844,35 +35844,14 @@ │ │ │ │ $ sudo dnf remove net-snmp │ │ │ │ Rationale: If there is no need to run SNMP server software, removing the package provides a safeguard │ │ │ │ against its activation. │ │ │ │ Severity:  unknown │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_net-snmp_removed │ │ │ │ References: _c_i_s 2.2.12 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=net-snmp │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_net-snmp │ │ │ │ - │ │ │ │ -class remove_net-snmp { │ │ │ │ - package { 'net-snmp': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall net-snmp Package: Ensure net-snmp is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -35883,14 +35862,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - package_net-snmp_removed │ │ │ │ - unknown_severity │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_net-snmp │ │ │ │ + │ │ │ │ +class remove_net-snmp { │ │ │ │ + package { 'net-snmp': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove net-snmp │ │ │ │ @@ -35899,40 +35891,31 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "net-snmp" ; then │ │ │ │ dnf remove -y --noautoremove "net-snmp" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=net-snmp │ │ │ │ ****** RRuullee? ?  DDiissaabbllee ssnnmmppdd SSeerrvviiccee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The snmpd service can be disabled with the following command: │ │ │ │ $ sudo systemctl mask --now snmpd.service │ │ │ │ Rationale: Running SNMP software provides a network-based avenue of attack, and should be disabled if not │ │ │ │ needed. │ │ │ │ Severity:  low │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_service_snmpd_disabled │ │ │ │ References: _c_i_s 2.2.12 │ │ │ │ _i_s_m 1311 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -masked = ["snmpd"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include disable_snmpd │ │ │ │ - │ │ │ │ -class disable_snmpd { │ │ │ │ - service {'snmpd': │ │ │ │ - enable => false, │ │ │ │ - ensure => 'stopped', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -35983,14 +35966,31 @@ │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_snmpd_disabled │ │ │ │ - special_service_block │ │ │ │ when: ( "net-snmp" in ansible_facts.packages and "kernel" in ansible_facts.packages │ │ │ │ ) │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include disable_snmpd │ │ │ │ + │ │ │ │ +class disable_snmpd { │ │ │ │ + service {'snmpd': │ │ │ │ + enable => false, │ │ │ │ + ensure => 'stopped', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +masked = ["snmpd"] │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if ( ( rpm --quiet -q net-snmp && rpm --quiet -q kernel ) ); then │ │ │ │ @@ -39860,23 +39860,14 @@ │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-4, PR.DS-5 │ │ │ │ _p_c_i_d_s_s Req-2.2.4 │ │ │ │ _o_s_-_s_r_g SRG-OS-000480-GPOS-00227 │ │ │ │ _a_n_s_s_i R50 │ │ │ │ _c_i_s 4.2.2 │ │ │ │ _i_s_m 1449 │ │ │ │ _p_c_i_d_s_s_4 2.2.6, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -include ssh_private_key_perms │ │ │ │ - │ │ │ │ -class ssh_private_key_perms { │ │ │ │ - exec { 'sshd_priv_key': │ │ │ │ - command => "chmod 0640 /etc/ssh/*_key", │ │ │ │ - path => '/bin:/usr/bin' │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -39988,14 +39979,23 @@ │ │ │ │ - PCI-DSSv4-2.2.6 │ │ │ │ - configure_strategy │ │ │ │ - file_permissions_sshd_private_key │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +include ssh_private_key_perms │ │ │ │ + │ │ │ │ +class ssh_private_key_perms { │ │ │ │ + exec { 'sshd_priv_key': │ │ │ │ + command => "chmod 0640 /etc/ssh/*_key", │ │ │ │ + path => '/bin:/usr/bin' │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ │ │ │ │ for keyfile in /etc/ssh/*_key; do │ │ │ │ test -f "$keyfile" || continue │ │ │ │ if test root:root = "$(stat -c "%U:%G" "$keyfile")"; then │ │ │ │ @@ -40034,23 +40034,14 @@ │ │ │ │ _n_i_s_t AC-17(a), CM-6(a), AC-6(1) │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-4, PR.DS-5 │ │ │ │ _p_c_i_d_s_s Req-2.2.4 │ │ │ │ _o_s_-_s_r_g SRG-OS-000480-GPOS-00227 │ │ │ │ _a_n_s_s_i R50 │ │ │ │ _c_i_s 4.2.3 │ │ │ │ _p_c_i_d_s_s_4 2.2.6, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -include ssh_public_key_perms │ │ │ │ - │ │ │ │ -class ssh_public_key_perms { │ │ │ │ - exec { 'sshd_pub_key': │ │ │ │ - command => "chmod 0644 /etc/ssh/*.pub", │ │ │ │ - path => '/bin:/usr/bin' │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -40114,14 +40105,23 @@ │ │ │ │ - PCI-DSSv4-2.2.6 │ │ │ │ - configure_strategy │ │ │ │ - file_permissions_sshd_pub_key │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +include ssh_public_key_perms │ │ │ │ + │ │ │ │ +class ssh_public_key_perms { │ │ │ │ + exec { 'sshd_pub_key': │ │ │ │ + command => "chmod 0644 /etc/ssh/*.pub", │ │ │ │ + path => '/bin:/usr/bin' │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ ├── ./usr/share/doc/ssg-nondebian/ssg-alinux2-guide-pci-dss.html │ │ │ @@ -15456,133 +15456,133 @@ │ │ │ 0003c5f0: 6c6c 6170 7365 2220 6461 7461 2d74 6172 llapse" data-tar │ │ │ 0003c600: 6765 743d 2223 6964 3522 2074 6162 696e get="#id5" tabin │ │ │ 0003c610: 6465 783d 2230 2220 726f 6c65 3d22 6275 dex="0" role="bu │ │ │ 0003c620: 7474 6f6e 2220 6172 6961 2d65 7870 616e tton" aria-expan │ │ │ 0003c630: 6465 643d 2266 616c 7365 2220 7469 746c ded="false" titl │ │ │ 0003c640: 653d 2241 6374 6976 6174 6520 746f 2072 e="Activate to r │ │ │ 0003c650: 6576 6561 6c22 2068 7265 663d 2223 2122 eveal" href="#!" │ │ │ -0003c660: 3e52 656d 6564 6961 7469 6f6e 204f 5342 >Remediation OSB │ │ │ -0003c670: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ -0003c680: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
│ │ │ -0003c6c0: 3c70 7265 3e3c 636f 6465 3e0a 5b5b 7061
.[[pa
│ │ │ -0003c6d0: 636b 6167 6573 5d5d 0a6e 616d 6520 3d20  ckages]].name = 
│ │ │ -0003c6e0: 2261 6964 6522 0a76 6572 7369 6f6e 203d  "aide".version =
│ │ │ -0003c6f0: 2022 2a22 0a3c 2f63 6f64 653e 3c2f 7072   "*".
Remediation P │ │ │ -0003c7b0: 7570 7065 7420 736e 6970 7065 7420 e287 uppet snippet .. │ │ │ -0003c7c0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -0003c890: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0003c8a0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
i
│ │ │ -0003c8f0: 6e63 6c75 6465 2069 6e73 7461 6c6c 5f61  nclude install_a
│ │ │ -0003c900: 6964 650a 0a63 6c61 7373 2069 6e73 7461  ide..class insta
│ │ │ -0003c910: 6c6c 5f61 6964 6520 7b0a 2020 7061 636b  ll_aide {.  pack
│ │ │ -0003c920: 6167 6520 7b20 2761 6964 6527 3a0a 2020  age { 'aide':.  
│ │ │ -0003c930: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ -0003c940: 696e 7374 616c 6c65 6427 2c0a 2020 7d0a  installed',.  }.
│ │ │ -0003c950: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -0003c960: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div> │ │ │ -0003ca00: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -0003ca10: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -0003ca20: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
Complexity:low
Disrup │ │ │ -0003c870: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0003c880: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0003c8c0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -0003c8d0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ -0003cab0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0003cac0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -0003cb10: 3c74 723e 3c74 683e 5374 7261 7465 6779
- n
│ │ │ -0003cb50: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ -0003cb60: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ -0003cb70: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -0003cb80: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ -0003cb90: 0a20 2074 6167 733a 0a20 202d 2043 4a49  .  tags:.  - CJI
│ │ │ -0003cba0: 532d 352e 3130 2e31 2e33 0a20 202d 204e  S-5.10.1.3.  - N
│ │ │ -0003cbb0: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -0003cbc0: 6129 0a20 202d 2050 4349 2d44 5353 2d52  a).  - PCI-DSS-R
│ │ │ -0003cbd0: 6571 2d31 312e 350a 2020 2d20 5043 492d  eq-11.5.  - PCI-
│ │ │ -0003cbe0: 4453 5376 342d 3131 2e35 2e32 0a20 202d  DSSv4-11.5.2.  -
│ │ │ -0003cbf0: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ -0003cc00: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -0003cc10: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ -0003cc20: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ -0003cc30: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ -0003cc40: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -0003cc50: 2020 2d20 7061 636b 6167 655f 6169 6465    - package_aide
│ │ │ -0003cc60: 5f69 6e73 7461 6c6c 6564 0a0a 2d20 6e61  _installed..- na
│ │ │ -0003cc70: 6d65 3a20 456e 7375 7265 2061 6964 6520  me: Ensure aide 
│ │ │ -0003cc80: 6973 2069 6e73 7461 6c6c 6564 0a20 2061  is installed.  a
│ │ │ -0003cc90: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ -0003cca0: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ -0003ccb0: 3a20 6169 6465 0a20 2020 2073 7461 7465  : aide.    state
│ │ │ -0003ccc0: 3a20 7072 6573 656e 740a 2020 7768 656e  : present.  when
│ │ │ -0003ccd0: 3a20 2722 6b65 726e 656c 2220 696e 2061  : '"kernel" in a
│ │ │ -0003cce0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -0003ccf0: 6b61 6765 7327 0a20 2074 6167 733a 0a20  kages'.  tags:. 
│ │ │ -0003cd00: 202d 2043 4a49 532d 352e 3130 2e31 2e33   - CJIS-5.10.1.3
│ │ │ -0003cd10: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -0003cd20: 2d43 4d2d 3628 6129 0a20 202d 2050 4349  -CM-6(a).  - PCI
│ │ │ -0003cd30: 2d44 5353 2d52 6571 2d31 312e 350a 2020  -DSS-Req-11.5.  
│ │ │ -0003cd40: 2d20 5043 492d 4453 5376 342d 3131 2e35  - PCI-DSSv4-11.5
│ │ │ -0003cd50: 2e32 0a20 202d 2065 6e61 626c 655f 7374  .2.  - enable_st
│ │ │ -0003cd60: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ -0003cd70: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -0003cd80: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -0003cd90: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -0003cda0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -0003cdb0: 6565 6465 640a 2020 2d20 7061 636b 6167  eeded.  - packag
│ │ │ -0003cdc0: 655f 6169 6465 5f69 6e73 7461 6c6c 6564  e_aide_installed
│ │ │ +0003c660: 3e52 656d 6564 6961 7469 6f6e 2041 6e73  >Remediation Ans
│ │ │ +0003c670: 6962 6c65 2073 6e69 7070 6574 20e2 87b2  ible snippet ...
│ │ │ +0003c680: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
C │ │ │ -0003caa0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -0003cad0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -0003cae0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -0003cb20: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -0003cb30: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ +0003c710: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
- 
│ │ │ +0003c7b0: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ +0003c7c0: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ +0003c7d0: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ +0003c7e0: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ +0003c7f0: 6f0a 2020 7461 6773 3a0a 2020 2d20 434a  o.  tags:.  - CJ
│ │ │ +0003c800: 4953 2d35 2e31 302e 312e 330a 2020 2d20  IS-5.10.1.3.  - 
│ │ │ +0003c810: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +0003c820: 2861 290a 2020 2d20 5043 492d 4453 532d  (a).  - PCI-DSS-
│ │ │ +0003c830: 5265 712d 3131 2e35 0a20 202d 2050 4349  Req-11.5.  - PCI
│ │ │ +0003c840: 2d44 5353 7634 2d31 312e 352e 320a 2020  -DSSv4-11.5.2.  
│ │ │ +0003c850: 2d20 656e 6162 6c65 5f73 7472 6174 6567  - enable_strateg
│ │ │ +0003c860: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ +0003c870: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ +0003c880: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ +0003c890: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +0003c8a0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +0003c8b0: 0a20 202d 2070 6163 6b61 6765 5f61 6964  .  - package_aid
│ │ │ +0003c8c0: 655f 696e 7374 616c 6c65 640a 0a2d 206e  e_installed..- n
│ │ │ +0003c8d0: 616d 653a 2045 6e73 7572 6520 6169 6465  ame: Ensure aide
│ │ │ +0003c8e0: 2069 7320 696e 7374 616c 6c65 640a 2020   is installed.  
│ │ │ +0003c8f0: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +0003c900: 7061 636b 6167 653a 0a20 2020 206e 616d  package:.    nam
│ │ │ +0003c910: 653a 2061 6964 650a 2020 2020 7374 6174  e: aide.    stat
│ │ │ +0003c920: 653a 2070 7265 7365 6e74 0a20 2077 6865  e: present.  whe
│ │ │ +0003c930: 6e3a 2027 226b 6572 6e65 6c22 2069 6e20  n: '"kernel" in 
│ │ │ +0003c940: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +0003c950: 636b 6167 6573 270a 2020 7461 6773 3a0a  ckages'.  tags:.
│ │ │ +0003c960: 2020 2d20 434a 4953 2d35 2e31 302e 312e    - CJIS-5.10.1.
│ │ │ +0003c970: 330a 2020 2d20 4e49 5354 2d38 3030 2d35  3.  - NIST-800-5
│ │ │ +0003c980: 332d 434d 2d36 2861 290a 2020 2d20 5043  3-CM-6(a).  - PC
│ │ │ +0003c990: 492d 4453 532d 5265 712d 3131 2e35 0a20  I-DSS-Req-11.5. 
│ │ │ +0003c9a0: 202d 2050 4349 2d44 5353 7634 2d31 312e   - PCI-DSSv4-11.
│ │ │ +0003c9b0: 352e 320a 2020 2d20 656e 6162 6c65 5f73  5.2.  - enable_s
│ │ │ +0003c9c0: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ +0003c9d0: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +0003c9e0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +0003c9f0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +0003ca00: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +0003ca10: 6e65 6564 6564 0a20 202d 2070 6163 6b61  needed.  - packa
│ │ │ +0003ca20: 6765 5f61 6964 655f 696e 7374 616c 6c65  ge_aide_installe
│ │ │ +0003ca30: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ +0003ca40: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div> │ │ │ +0003cae0: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +0003caf0: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
│ │ │ +0003c700: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +0003c730: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +0003c740: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +0003c780: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ +0003c790: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
low< │ │ │ +0003cba0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0003cbf0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +0003cb80: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0003cbb0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0003cbd0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0003cbe0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0003cc00: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +0003cc10: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
incl
│ │ │ +0003cc30: 7564 6520 696e 7374 616c 6c5f 6169 6465  ude install_aide
│ │ │ +0003cc40: 0a0a 636c 6173 7320 696e 7374 616c 6c5f  ..class install_
│ │ │ +0003cc50: 6169 6465 207b 0a20 2070 6163 6b61 6765  aide {.  package
│ │ │ +0003cc60: 207b 2027 6169 6465 273a 0a20 2020 2065   { 'aide':.    e
│ │ │ +0003cc70: 6e73 7572 6520 3d26 6774 3b20 2769 6e73  nsure => 'ins
│ │ │ +0003cc80: 7461 6c6c 6564 272c 0a20 207d 0a7d 0a3c  talled',.  }.}.<
│ │ │ +0003cc90: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Rem │ │ │ +0003cd40: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ +0003cd50: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ +0003cd60: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
.[[packag
│ │ │ +0003cdb0: 6573 5d5d 0a6e 616d 6520 3d20 2261 6964  es]].name = "aid
│ │ │ +0003cdc0: 6522 0a76 6572 7369 6f6e 203d 2022 2a22  e".version = "*"
│ │ │  0003cdd0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
< │ │ │ 0003cdf0: 2f74 723e 3c2f 7462 6f64 793e 3c2f 7461 /tr>Remediation │ │ │ -0008fd70: 204f 5342 7569 6c64 2042 6c75 6570 7269 OSBuild Bluepri │ │ │ -0008fd80: 6e74 2073 6e69 7070 6574 20e2 87b2 3c2f nt snippet ...

│ │ │ -0008fdd0: 0a5b 5b70 6163 6b61 6765 735d 5d0a 6e61  .[[packages]].na
│ │ │ -0008fde0: 6d65 203d 2022 6c6f 6772 6f74 6174 6522  me = "logrotate"
│ │ │ -0008fdf0: 0a76 6572 7369 6f6e 203d 2022 2a22 0a3c  .version = "*".<
│ │ │ -0008fe00: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Re │ │ │ -0008feb0: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ -0008fec0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -0008fed0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
Com │ │ │ -0008ff50: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -0008ff80: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -0008ffa0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -0008ffb0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -0008ffd0: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -0008fff0: 3c70 7265 3e3c 636f 6465 3e69 6e63 6c75
inclu
│ │ │ -00090000: 6465 2069 6e73 7461 6c6c 5f6c 6f67 726f  de install_logro
│ │ │ -00090010: 7461 7465 0a0a 636c 6173 7320 696e 7374  tate..class inst
│ │ │ -00090020: 616c 6c5f 6c6f 6772 6f74 6174 6520 7b0a  all_logrotate {.
│ │ │ -00090030: 2020 7061 636b 6167 6520 7b20 276c 6f67    package { 'log
│ │ │ -00090040: 726f 7461 7465 273a 0a20 2020 2065 6e73  rotate':.    ens
│ │ │ -00090050: 7572 6520 3d26 6774 3b20 2769 6e73 7461  ure => 'insta
│ │ │ -00090060: 6c6c 6564 272c 0a20 207d 0a7d 0a3c 2f63  lled',.  }.}.
│ │ │ -00090080: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -00090120: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -00090130: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -00090140: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -000901e0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -00090230: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ -000901c0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -000901f0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -00090210: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -00090220: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -00090240: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -00090250: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -00090270: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ -00090280: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ -00090290: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ -000902a0: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ -000902b0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -000902c0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -000902d0: 2020 2d20 5043 492d 4453 532d 5265 712d    - PCI-DSS-Req-
│ │ │ -000902e0: 3130 2e37 0a20 202d 2050 4349 2d44 5353  10.7.  - PCI-DSS
│ │ │ -000902f0: 7634 2d31 302e 350a 2020 2d20 5043 492d  v4-10.5.  - PCI-
│ │ │ -00090300: 4453 5376 342d 3130 2e35 2e31 0a20 202d  DSSv4-10.5.1.  -
│ │ │ -00090310: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ -00090320: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -00090330: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ -00090340: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ -00090350: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ -00090360: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -00090370: 2020 2d20 7061 636b 6167 655f 6c6f 6772    - package_logr
│ │ │ -00090380: 6f74 6174 655f 696e 7374 616c 6c65 640a  otate_installed.
│ │ │ -00090390: 0a2d 206e 616d 653a 2045 6e73 7572 6520  .- name: Ensure 
│ │ │ -000903a0: 6c6f 6772 6f74 6174 6520 6973 2069 6e73  logrotate is ins
│ │ │ -000903b0: 7461 6c6c 6564 0a20 2061 6e73 6962 6c65  talled.  ansible
│ │ │ -000903c0: 2e62 7569 6c74 696e 2e70 6163 6b61 6765  .builtin.package
│ │ │ -000903d0: 3a0a 2020 2020 6e61 6d65 3a20 6c6f 6772  :.    name: logr
│ │ │ -000903e0: 6f74 6174 650a 2020 2020 7374 6174 653a  otate.    state:
│ │ │ -000903f0: 2070 7265 7365 6e74 0a20 2077 6865 6e3a   present.  when:
│ │ │ -00090400: 2027 226b 6572 6e65 6c22 2069 6e20 616e   '"kernel" in an
│ │ │ -00090410: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -00090420: 6167 6573 270a 2020 7461 6773 3a0a 2020  ages'.  tags:.  
│ │ │ -00090430: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -00090440: 2d36 2861 290a 2020 2d20 5043 492d 4453  -6(a).  - PCI-DS
│ │ │ -00090450: 532d 5265 712d 3130 2e37 0a20 202d 2050  S-Req-10.7.  - P
│ │ │ -00090460: 4349 2d44 5353 7634 2d31 302e 350a 2020  CI-DSSv4-10.5.  
│ │ │ -00090470: 2d20 5043 492d 4453 5376 342d 3130 2e35  - PCI-DSSv4-10.5
│ │ │ -00090480: 2e31 0a20 202d 2065 6e61 626c 655f 7374  .1.  - enable_st
│ │ │ -00090490: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ -000904a0: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -000904b0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -000904c0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -000904d0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -000904e0: 6565 6465 640a 2020 2d20 7061 636b 6167  eeded.  - packag
│ │ │ -000904f0: 655f 6c6f 6772 6f74 6174 655f 696e 7374  e_logrotate_inst
│ │ │ -00090500: 616c 6c65 640a 3c2f 636f 6465 3e3c 2f70  alled.


Complexity: │ │ │ +0008fe10: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +0008fe30: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +0008fe50: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +0008fe80: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +0008fe90: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ +0008fea0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
- name: Gathe
│ │ │ +0008fec0: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ +0008fed0: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ +0008fee0: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ +0008fef0: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ +0008ff00: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +0008ff10: 4d2d 3628 6129 0a20 202d 2050 4349 2d44  M-6(a).  - PCI-D
│ │ │ +0008ff20: 5353 2d52 6571 2d31 302e 370a 2020 2d20  SS-Req-10.7.  - 
│ │ │ +0008ff30: 5043 492d 4453 5376 342d 3130 2e35 0a20  PCI-DSSv4-10.5. 
│ │ │ +0008ff40: 202d 2050 4349 2d44 5353 7634 2d31 302e   - PCI-DSSv4-10.
│ │ │ +0008ff50: 352e 310a 2020 2d20 656e 6162 6c65 5f73  5.1.  - enable_s
│ │ │ +0008ff60: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ +0008ff70: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +0008ff80: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +0008ff90: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +0008ffa0: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +0008ffb0: 6e65 6564 6564 0a20 202d 2070 6163 6b61  needed.  - packa
│ │ │ +0008ffc0: 6765 5f6c 6f67 726f 7461 7465 5f69 6e73  ge_logrotate_ins
│ │ │ +0008ffd0: 7461 6c6c 6564 0a0a 2d20 6e61 6d65 3a20  talled..- name: 
│ │ │ +0008ffe0: 456e 7375 7265 206c 6f67 726f 7461 7465  Ensure logrotate
│ │ │ +0008fff0: 2069 7320 696e 7374 616c 6c65 640a 2020   is installed.  
│ │ │ +00090000: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +00090010: 7061 636b 6167 653a 0a20 2020 206e 616d  package:.    nam
│ │ │ +00090020: 653a 206c 6f67 726f 7461 7465 0a20 2020  e: logrotate.   
│ │ │ +00090030: 2073 7461 7465 3a20 7072 6573 656e 740a   state: present.
│ │ │ +00090040: 2020 7768 656e 3a20 2722 6b65 726e 656c    when: '"kernel
│ │ │ +00090050: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +00090060: 7473 2e70 6163 6b61 6765 7327 0a20 2074  ts.packages'.  t
│ │ │ +00090070: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +00090080: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +00090090: 2050 4349 2d44 5353 2d52 6571 2d31 302e   PCI-DSS-Req-10.
│ │ │ +000900a0: 370a 2020 2d20 5043 492d 4453 5376 342d  7.  - PCI-DSSv4-
│ │ │ +000900b0: 3130 2e35 0a20 202d 2050 4349 2d44 5353  10.5.  - PCI-DSS
│ │ │ +000900c0: 7634 2d31 302e 352e 310a 2020 2d20 656e  v4-10.5.1.  - en
│ │ │ +000900d0: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ +000900e0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +000900f0: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +00090100: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ +00090110: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ +00090120: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ +00090130: 2070 6163 6b61 6765 5f6c 6f67 726f 7461   package_logrota
│ │ │ +00090140: 7465 5f69 6e73 7461 6c6c 6564 0a3c 2f63  te_installed.
│ │ │ +00090160: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Reme │ │ │ +00090200: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ +00090210: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
│ │ │ +000902c0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +000902e0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +00090310: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +000902a0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +000902b0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +000902d0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +000902f0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +00090300: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

include │ │ │ +00090350: 2069 6e73 7461 6c6c 5f6c 6f67 726f 7461 install_logrota │ │ │ +00090360: 7465 0a0a 636c 6173 7320 696e 7374 616c te..class instal │ │ │ +00090370: 6c5f 6c6f 6772 6f74 6174 6520 7b0a 2020 l_logrotate {. │ │ │ +00090380: 7061 636b 6167 6520 7b20 276c 6f67 726f package { 'logro │ │ │ +00090390: 7461 7465 273a 0a20 2020 2065 6e73 7572 tate':. ensur │ │ │ +000903a0: 6520 3d26 6774 3b20 2769 6e73 7461 6c6c e => 'install │ │ │ +000903b0: 6564 272c 0a20 207d 0a7d 0a3c 2f63 6f64 ed',. }.}.

Remed │ │ │ +00090470: 6961 7469 6f6e 204f 5342 7569 6c64 2042 iation OSBuild B │ │ │ +00090480: 6c75 6570 7269 6e74 2073 6e69 7070 6574 lueprint snippet │ │ │ +00090490: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
.[[packag
│ │ │ +000904e0: 6573 5d5d 0a6e 616d 6520 3d20 226c 6f67  es]].name = "log
│ │ │ +000904f0: 726f 7461 7465 220a 7665 7273 696f 6e20  rotate".version 
│ │ │ +00090500: 3d20 222a 220a 3c2f 636f 6465 3e3c 2f70  = "*".

< │ │ │ 00090520: 2f74 643e 3c2f 7472 3e3c 2f74 626f 6479 /td>Remedi │ │ │ -000932c0: 6174 696f 6e20 4f53 4275 696c 6420 426c ation OSBuild Bl │ │ │ -000932d0: 7565 7072 696e 7420 736e 6970 7065 7420 ueprint snippet │ │ │ -000932e0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
│ │ │ -00093320: 3c63 6f64 653e 0a5b 5b70 6163 6b61 6765  .[[package
│ │ │ -00093330: 735d 5d0a 6e61 6d65 203d 2022 6669 7265  s]].name = "fire
│ │ │ -00093340: 7761 6c6c 6422 0a76 6572 7369 6f6e 203d  walld".version =
│ │ │ -00093350: 2022 2a22 0a3c 2f63 6f64 653e 3c2f 7072   "*".
Remediation │ │ │ -00093410: 2050 7570 7065 7420 736e 6970 7065 7420 Puppet snippet │ │ │ -00093420: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -000934b0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -000934d0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -000934f0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -00093520: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -00093530: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ -00093540: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
include insta
│ │ │ -00093560: 6c6c 5f66 6972 6577 616c 6c64 0a0a 636c  ll_firewalld..cl
│ │ │ -00093570: 6173 7320 696e 7374 616c 6c5f 6669 7265  ass install_fire
│ │ │ -00093580: 7761 6c6c 6420 7b0a 2020 7061 636b 6167  walld {.  packag
│ │ │ -00093590: 6520 7b20 2766 6972 6577 616c 6c64 273a  e { 'firewalld':
│ │ │ -000935a0: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ -000935b0: 3b20 2769 6e73 7461 6c6c 6564 272c 0a20  ; 'installed',. 
│ │ │ -000935c0: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.
Remediation │ │ │ -00093680: 2041 6e73 6962 6c65 2073 6e69 7070 6574 Ansible snippet │ │ │ -00093690: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -00093720: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -00093740: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -00093750: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00093760: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -00093770: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -00093790: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
- name: Gath
│ │ │ -000937d0: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ -000937e0: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ -000937f0: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ -00093800: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ -00093810: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -00093820: 434d 2d36 2861 290a 2020 2d20 5043 492d  CM-6(a).  - PCI-
│ │ │ -00093830: 4453 5376 342d 312e 320a 2020 2d20 5043  DSSv4-1.2.  - PC
│ │ │ -00093840: 492d 4453 5376 342d 312e 322e 310a 2020  I-DSSv4-1.2.1.  
│ │ │ -00093850: 2d20 656e 6162 6c65 5f73 7472 6174 6567  - enable_strateg
│ │ │ -00093860: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -00093870: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -00093880: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ -00093890: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -000938a0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -000938b0: 0a20 202d 2070 6163 6b61 6765 5f66 6972  .  - package_fir
│ │ │ -000938c0: 6577 616c 6c64 5f69 6e73 7461 6c6c 6564  ewalld_installed
│ │ │ -000938d0: 0a0a 2d20 6e61 6d65 3a20 456e 7375 7265  ..- name: Ensure
│ │ │ -000938e0: 2066 6972 6577 616c 6c64 2069 7320 696e   firewalld is in
│ │ │ -000938f0: 7374 616c 6c65 640a 2020 616e 7369 626c  stalled.  ansibl
│ │ │ -00093900: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ -00093910: 653a 0a20 2020 206e 616d 653a 2066 6972  e:.    name: fir
│ │ │ -00093920: 6577 616c 6c64 0a20 2020 2073 7461 7465  ewalld.    state
│ │ │ -00093930: 3a20 7072 6573 656e 740a 2020 7768 656e  : present.  when
│ │ │ -00093940: 3a20 2722 6b65 726e 656c 2220 696e 2061  : '"kernel" in a
│ │ │ -00093950: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -00093960: 6b61 6765 7327 0a20 2074 6167 733a 0a20  kages'.  tags:. 
│ │ │ -00093970: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -00093980: 4d2d 3628 6129 0a20 202d 2050 4349 2d44  M-6(a).  - PCI-D
│ │ │ -00093990: 5353 7634 2d31 2e32 0a20 202d 2050 4349  SSv4-1.2.  - PCI
│ │ │ -000939a0: 2d44 5353 7634 2d31 2e32 2e31 0a20 202d  -DSSv4-1.2.1.  -
│ │ │ -000939b0: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ -000939c0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -000939d0: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ -000939e0: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ -000939f0: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ -00093a00: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -00093a10: 2020 2d20 7061 636b 6167 655f 6669 7265    - package_fire
│ │ │ -00093a20: 7761 6c6c 645f 696e 7374 616c 6c65 640a  walld_installed.
│ │ │ +000932c0: 6174 696f 6e20 416e 7369 626c 6520 736e  ation Ansible sn
│ │ │ +000932d0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272  ippet ...
│ │ │ +00093380: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +000933a0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +000933d0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +00093360: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +00093370: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +00093390: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +000933b0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +000933c0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

- name: │ │ │ +00093410: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ +00093420: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ +00093430: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ +00093440: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ +00093450: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ +00093460: 302d 3533 2d43 4d2d 3628 6129 0a20 202d 0-53-CM-6(a). - │ │ │ +00093470: 2050 4349 2d44 5353 7634 2d31 2e32 0a20 PCI-DSSv4-1.2. │ │ │ +00093480: 202d 2050 4349 2d44 5353 7634 2d31 2e32 - PCI-DSSv4-1.2 │ │ │ +00093490: 2e31 0a20 202d 2065 6e61 626c 655f 7374 .1. - enable_st │ │ │ +000934a0: 7261 7465 6779 0a20 202d 206c 6f77 5f63 rategy. - low_c │ │ │ +000934b0: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f omplexity. - lo │ │ │ +000934c0: 775f 6469 7372 7570 7469 6f6e 0a20 202d w_disruption. - │ │ │ +000934d0: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ +000934e0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ +000934f0: 6565 6465 640a 2020 2d20 7061 636b 6167 eeded. - packag │ │ │ +00093500: 655f 6669 7265 7761 6c6c 645f 696e 7374 e_firewalld_inst │ │ │ +00093510: 616c 6c65 640a 0a2d 206e 616d 653a 2045 alled..- name: E │ │ │ +00093520: 6e73 7572 6520 6669 7265 7761 6c6c 6420 nsure firewalld │ │ │ +00093530: 6973 2069 6e73 7461 6c6c 6564 0a20 2061 is installed. a │ │ │ +00093540: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70 nsible.builtin.p │ │ │ +00093550: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65 ackage:. name │ │ │ +00093560: 3a20 6669 7265 7761 6c6c 640a 2020 2020 : firewalld. │ │ │ +00093570: 7374 6174 653a 2070 7265 7365 6e74 0a20 state: present. │ │ │ +00093580: 2077 6865 6e3a 2027 226b 6572 6e65 6c22 when: '"kernel" │ │ │ +00093590: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +000935a0: 732e 7061 636b 6167 6573 270a 2020 7461 s.packages'. ta │ │ │ +000935b0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ +000935c0: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ +000935d0: 5043 492d 4453 5376 342d 312e 320a 2020 PCI-DSSv4-1.2. │ │ │ +000935e0: 2d20 5043 492d 4453 5376 342d 312e 322e - PCI-DSSv4-1.2. │ │ │ +000935f0: 310a 2020 2d20 656e 6162 6c65 5f73 7472 1. - enable_str │ │ │ +00093600: 6174 6567 790a 2020 2d20 6c6f 775f 636f ategy. - low_co │ │ │ +00093610: 6d70 6c65 7869 7479 0a20 202d 206c 6f77 mplexity. - low │ │ │ +00093620: 5f64 6973 7275 7074 696f 6e0a 2020 2d20 _disruption. - │ │ │ +00093630: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ +00093640: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ +00093650: 6564 6564 0a20 202d 2070 6163 6b61 6765 eded. - package │ │ │ +00093660: 5f66 6972 6577 616c 6c64 5f69 6e73 7461 _firewalld_insta │ │ │ +00093670: 6c6c 6564 0a3c 2f63 6f64 653e 3c2f 7072 lled.

Remediation │ │ │ +00093730: 2050 7570 7065 7420 736e 6970 7065 7420 Puppet snippet │ │ │ +00093740: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ +000937d0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +000937f0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +00093810: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +00093840: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +00093850: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ +00093860: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
include insta
│ │ │ +00093880: 6c6c 5f66 6972 6577 616c 6c64 0a0a 636c  ll_firewalld..cl
│ │ │ +00093890: 6173 7320 696e 7374 616c 6c5f 6669 7265  ass install_fire
│ │ │ +000938a0: 7761 6c6c 6420 7b0a 2020 7061 636b 6167  walld {.  packag
│ │ │ +000938b0: 6520 7b20 2766 6972 6577 616c 6c64 273a  e { 'firewalld':
│ │ │ +000938c0: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ +000938d0: 3b20 2769 6e73 7461 6c6c 6564 272c 0a20  ; 'installed',. 
│ │ │ +000938e0: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.
Remediation │ │ │ +000939a0: 204f 5342 7569 6c64 2042 6c75 6570 7269 OSBuild Bluepri │ │ │ +000939b0: 6e74 2073 6e69 7070 6574 20e2 87b2 3c2f nt snippet ...
.[[packages]].n
│ │ │ +00093a10: 616d 6520 3d20 2266 6972 6577 616c 6c64  ame = "firewalld
│ │ │ +00093a20: 220a 7665 7273 696f 6e20 3d20 222a 220a  ".version = "*".
│ │ │  00093a30: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
Remediation │ │ │ -00094a10: 4f53 4275 696c 6420 426c 7565 7072 696e OSBuild Blueprin │ │ │ -00094a20: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...


│ │ │ -00094a70: 0a5b 6375 7374 6f6d 697a 6174 696f 6e73  .[customizations
│ │ │ -00094a80: 2e73 6572 7669 6365 735d 0a65 6e61 626c  .services].enabl
│ │ │ -00094a90: 6564 203d 205b 2266 6972 6577 616c 6c64  ed = ["firewalld
│ │ │ -00094aa0: 225d 0a3c 2f63 6f64 653e 3c2f 7072 653e  "].
│ │ │ -00094ab0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation P │ │ │ -00094b60: 7570 7065 7420 736e 6970 7065 7420 e287 uppet snippet .. │ │ │ -00094b70: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -00094bf0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -00094c10: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -00094c60: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
include enable_
│ │ │ -00094cb0: 6669 7265 7761 6c6c 640a 0a63 6c61 7373  firewalld..class
│ │ │ -00094cc0: 2065 6e61 626c 655f 6669 7265 7761 6c6c   enable_firewall
│ │ │ -00094cd0: 6420 7b0a 2020 7365 7276 6963 6520 7b27  d {.  service {'
│ │ │ -00094ce0: 6669 7265 7761 6c6c 6427 3a0a 2020 2020  firewalld':.    
│ │ │ -00094cf0: 656e 6162 6c65 203d 2667 743b 2074 7275  enable => tru
│ │ │ -00094d00: 652c 0a20 2020 2065 6e73 7572 6520 3d26  e,.    ensure =&
│ │ │ -00094d10: 6774 3b20 2772 756e 6e69 6e67 272c 0a20  gt; 'running',. 
│ │ │ -00094d20: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.Remediation
│ │ │ -00094de0: 2041 6e73 6962 6c65 2073 6e69 7070 6574   Ansible snippet
│ │ │ -00094df0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
< │ │ │ -00094eb0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00094ec0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
low
Disr │ │ │ -00094c20: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00094c30: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -00094c70: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ -00094c80: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexity │ │ │ -00094e80: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ -00094ea0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ -00094ed0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ -00094ef0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
- name: Gath
│ │ │ -00094f30: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ -00094f40: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ -00094f50: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ -00094f60: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ -00094f70: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ -00094f80: 2d33 2e31 2e33 0a20 202d 204e 4953 542d  -3.1.3.  - NIST-
│ │ │ -00094f90: 3830 302d 3137 312d 332e 342e 370a 2020  800-171-3.4.7.  
│ │ │ -00094fa0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -00094fb0: 2d34 0a20 202d 204e 4953 542d 3830 302d  -4.  - NIST-800-
│ │ │ -00094fc0: 3533 2d43 412d 3328 3529 0a20 202d 204e  53-CA-3(5).  - N
│ │ │ -00094fd0: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -00094fe0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -00094ff0: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ -00095000: 4953 542d 3830 302d 3533 2d53 432d 3728  IST-800-53-SC-7(
│ │ │ -00095010: 3231 290a 2020 2d20 5043 492d 4453 5376  21).  - PCI-DSSv
│ │ │ -00095020: 342d 312e 320a 2020 2d20 5043 492d 4453  4-1.2.  - PCI-DS
│ │ │ -00095030: 5376 342d 312e 322e 310a 2020 2d20 656e  Sv4-1.2.1.  - en
│ │ │ -00095040: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ -00095050: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -00095060: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -00095070: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ -00095080: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ -00095090: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ -000950a0: 2073 6572 7669 6365 5f66 6972 6577 616c   service_firewal
│ │ │ -000950b0: 6c64 5f65 6e61 626c 6564 0a0a 2d20 6e61  ld_enabled..- na
│ │ │ -000950c0: 6d65 3a20 5665 7269 6679 2066 6972 6577  me: Verify firew
│ │ │ -000950d0: 616c 6c64 2045 6e61 626c 6564 202d 2045  alld Enabled - E
│ │ │ -000950e0: 6e61 626c 6520 7365 7276 6963 6520 6669  nable service fi
│ │ │ -000950f0: 7265 7761 6c6c 640a 2020 626c 6f63 6b3a  rewalld.  block:
│ │ │ -00095100: 0a0a 2020 2d20 6e61 6d65 3a20 4761 7468  ..  - name: Gath
│ │ │ -00095110: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ -00095120: 6163 7473 0a20 2020 2061 6e73 6962 6c65  acts.    ansible
│ │ │ -00095130: 2e62 7569 6c74 696e 2e70 6163 6b61 6765  .builtin.package
│ │ │ -00095140: 5f66 6163 7473 3a0a 2020 2020 2020 6d61  _facts:.      ma
│ │ │ -00095150: 6e61 6765 723a 2061 7574 6f0a 0a20 202d  nager: auto..  -
│ │ │ -00095160: 206e 616d 653a 2056 6572 6966 7920 6669   name: Verify fi
│ │ │ -00095170: 7265 7761 6c6c 6420 456e 6162 6c65 6420  rewalld Enabled 
│ │ │ -00095180: 2d20 456e 6162 6c65 2053 6572 7669 6365  - Enable Service
│ │ │ -00095190: 2066 6972 6577 616c 6c64 0a20 2020 2061   firewalld.    a
│ │ │ -000951a0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e73  nsible.builtin.s
│ │ │ -000951b0: 7973 7465 6d64 3a0a 2020 2020 2020 6e61  ystemd:.      na
│ │ │ -000951c0: 6d65 3a20 6669 7265 7761 6c6c 640a 2020  me: firewalld.  
│ │ │ -000951d0: 2020 2020 656e 6162 6c65 643a 2074 7275      enabled: tru
│ │ │ -000951e0: 650a 2020 2020 2020 7374 6174 653a 2073  e.      state: s
│ │ │ -000951f0: 7461 7274 6564 0a20 2020 2020 206d 6173  tarted.      mas
│ │ │ -00095200: 6b65 643a 2066 616c 7365 0a20 2020 2077  ked: false.    w
│ │ │ -00095210: 6865 6e3a 0a20 2020 202d 2027 2266 6972  hen:.    - '"fir
│ │ │ -00095220: 6577 616c 6c64 2220 696e 2061 6e73 6962  ewalld" in ansib
│ │ │ -00095230: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -00095240: 7327 0a20 2074 6167 733a 0a20 202d 204e  s'.  tags:.  - N
│ │ │ -00095250: 4953 542d 3830 302d 3137 312d 332e 312e  IST-800-171-3.1.
│ │ │ -00095260: 330a 2020 2d20 4e49 5354 2d38 3030 2d31  3.  - NIST-800-1
│ │ │ -00095270: 3731 2d33 2e34 2e37 0a20 202d 204e 4953  71-3.4.7.  - NIS
│ │ │ -00095280: 542d 3830 302d 3533 2d41 432d 340a 2020  T-800-53-AC-4.  
│ │ │ -00095290: 2d20 4e49 5354 2d38 3030 2d35 332d 4341  - NIST-800-53-CA
│ │ │ -000952a0: 2d33 2835 290a 2020 2d20 4e49 5354 2d38  -3(5).  - NIST-8
│ │ │ -000952b0: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ -000952c0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -000952d0: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ -000952e0: 3030 2d35 332d 5343 2d37 2832 3129 0a20  00-53-SC-7(21). 
│ │ │ -000952f0: 202d 2050 4349 2d44 5353 7634 2d31 2e32   - PCI-DSSv4-1.2
│ │ │ -00095300: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ -00095310: 2e32 2e31 0a20 202d 2065 6e61 626c 655f  .2.1.  - enable_
│ │ │ -00095320: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ -00095330: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -00095340: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -00095350: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -00095360: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ -00095370: 5f6e 6565 6465 640a 2020 2d20 7365 7276  _needed.  - serv
│ │ │ -00095380: 6963 655f 6669 7265 7761 6c6c 645f 656e  ice_firewalld_en
│ │ │ -00095390: 6162 6c65 640a 2020 2d20 7370 6563 6961  abled.  - specia
│ │ │ -000953a0: 6c5f 7365 7276 6963 655f 626c 6f63 6b0a  l_service_block.
│ │ │ -000953b0: 2020 7768 656e 3a0a 2020 2d20 2722 6b65    when:.  - '"ke
│ │ │ -000953c0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -000953d0: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ -000953e0: 0a20 202d 2027 2266 6972 6577 616c 6c64  .  - '"firewalld
│ │ │ -000953f0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -00095400: 7473 2e70 6163 6b61 6765 7327 0a3c 2f63  ts.packages'.
Complexity: │ │ │ +00094ab0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +00094ad0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +00094af0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +00094b20: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +00094b30: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ +00094b40: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
- name: Gathe
│ │ │ +00094b60: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ +00094b70: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ +00094b80: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ +00094b90: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ +00094ba0: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ +00094bb0: 332e 312e 330a 2020 2d20 4e49 5354 2d38  3.1.3.  - NIST-8
│ │ │ +00094bc0: 3030 2d31 3731 2d33 2e34 2e37 0a20 202d  00-171-3.4.7.  -
│ │ │ +00094bd0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +00094be0: 340a 2020 2d20 4e49 5354 2d38 3030 2d35  4.  - NIST-800-5
│ │ │ +00094bf0: 332d 4341 2d33 2835 290a 2020 2d20 4e49  3-CA-3(5).  - NI
│ │ │ +00094c00: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +00094c10: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +00094c20: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ +00094c30: 5354 2d38 3030 2d35 332d 5343 2d37 2832  ST-800-53-SC-7(2
│ │ │ +00094c40: 3129 0a20 202d 2050 4349 2d44 5353 7634  1).  - PCI-DSSv4
│ │ │ +00094c50: 2d31 2e32 0a20 202d 2050 4349 2d44 5353  -1.2.  - PCI-DSS
│ │ │ +00094c60: 7634 2d31 2e32 2e31 0a20 202d 2065 6e61  v4-1.2.1.  - ena
│ │ │ +00094c70: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ +00094c80: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +00094c90: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +00094ca0: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ +00094cb0: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ +00094cc0: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ +00094cd0: 7365 7276 6963 655f 6669 7265 7761 6c6c  service_firewall
│ │ │ +00094ce0: 645f 656e 6162 6c65 640a 0a2d 206e 616d  d_enabled..- nam
│ │ │ +00094cf0: 653a 2056 6572 6966 7920 6669 7265 7761  e: Verify firewa
│ │ │ +00094d00: 6c6c 6420 456e 6162 6c65 6420 2d20 456e  lld Enabled - En
│ │ │ +00094d10: 6162 6c65 2073 6572 7669 6365 2066 6972  able service fir
│ │ │ +00094d20: 6577 616c 6c64 0a20 2062 6c6f 636b 3a0a  ewalld.  block:.
│ │ │ +00094d30: 0a20 202d 206e 616d 653a 2047 6174 6865  .  - name: Gathe
│ │ │ +00094d40: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ +00094d50: 6374 730a 2020 2020 616e 7369 626c 652e  cts.    ansible.
│ │ │ +00094d60: 6275 696c 7469 6e2e 7061 636b 6167 655f  builtin.package_
│ │ │ +00094d70: 6661 6374 733a 0a20 2020 2020 206d 616e  facts:.      man
│ │ │ +00094d80: 6167 6572 3a20 6175 746f 0a0a 2020 2d20  ager: auto..  - 
│ │ │ +00094d90: 6e61 6d65 3a20 5665 7269 6679 2066 6972  name: Verify fir
│ │ │ +00094da0: 6577 616c 6c64 2045 6e61 626c 6564 202d  ewalld Enabled -
│ │ │ +00094db0: 2045 6e61 626c 6520 5365 7276 6963 6520   Enable Service 
│ │ │ +00094dc0: 6669 7265 7761 6c6c 640a 2020 2020 616e  firewalld.    an
│ │ │ +00094dd0: 7369 626c 652e 6275 696c 7469 6e2e 7379  sible.builtin.sy
│ │ │ +00094de0: 7374 656d 643a 0a20 2020 2020 206e 616d  stemd:.      nam
│ │ │ +00094df0: 653a 2066 6972 6577 616c 6c64 0a20 2020  e: firewalld.   
│ │ │ +00094e00: 2020 2065 6e61 626c 6564 3a20 7472 7565     enabled: true
│ │ │ +00094e10: 0a20 2020 2020 2073 7461 7465 3a20 7374  .      state: st
│ │ │ +00094e20: 6172 7465 640a 2020 2020 2020 6d61 736b  arted.      mask
│ │ │ +00094e30: 6564 3a20 6661 6c73 650a 2020 2020 7768  ed: false.    wh
│ │ │ +00094e40: 656e 3a0a 2020 2020 2d20 2722 6669 7265  en:.    - '"fire
│ │ │ +00094e50: 7761 6c6c 6422 2069 6e20 616e 7369 626c  walld" in ansibl
│ │ │ +00094e60: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +00094e70: 270a 2020 7461 6773 3a0a 2020 2d20 4e49  '.  tags:.  - NI
│ │ │ +00094e80: 5354 2d38 3030 2d31 3731 2d33 2e31 2e33  ST-800-171-3.1.3
│ │ │ +00094e90: 0a20 202d 204e 4953 542d 3830 302d 3137  .  - NIST-800-17
│ │ │ +00094ea0: 312d 332e 342e 370a 2020 2d20 4e49 5354  1-3.4.7.  - NIST
│ │ │ +00094eb0: 2d38 3030 2d35 332d 4143 2d34 0a20 202d  -800-53-AC-4.  -
│ │ │ +00094ec0: 204e 4953 542d 3830 302d 3533 2d43 412d   NIST-800-53-CA-
│ │ │ +00094ed0: 3328 3529 0a20 202d 204e 4953 542d 3830  3(5).  - NIST-80
│ │ │ +00094ee0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +00094ef0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +00094f00: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ +00094f10: 302d 3533 2d53 432d 3728 3231 290a 2020  0-53-SC-7(21).  
│ │ │ +00094f20: 2d20 5043 492d 4453 5376 342d 312e 320a  - PCI-DSSv4-1.2.
│ │ │ +00094f30: 2020 2d20 5043 492d 4453 5376 342d 312e    - PCI-DSSv4-1.
│ │ │ +00094f40: 322e 310a 2020 2d20 656e 6162 6c65 5f73  2.1.  - enable_s
│ │ │ +00094f50: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ +00094f60: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +00094f70: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +00094f80: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +00094f90: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +00094fa0: 6e65 6564 6564 0a20 202d 2073 6572 7669  needed.  - servi
│ │ │ +00094fb0: 6365 5f66 6972 6577 616c 6c64 5f65 6e61  ce_firewalld_ena
│ │ │ +00094fc0: 626c 6564 0a20 202d 2073 7065 6369 616c  bled.  - special
│ │ │ +00094fd0: 5f73 6572 7669 6365 5f62 6c6f 636b 0a20  _service_block. 
│ │ │ +00094fe0: 2077 6865 6e3a 0a20 202d 2027 226b 6572   when:.  - '"ker
│ │ │ +00094ff0: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +00095000: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ +00095010: 2020 2d20 2722 6669 7265 7761 6c6c 6422    - '"firewalld"
│ │ │ +00095020: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +00095030: 732e 7061 636b 6167 6573 270a 3c2f 636f  s.packages'.
< │ │ │ +00095050: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +00095060: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +00095070: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +00095080: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +00095090: 6431 3037 2220 7461 6269 6e64 6578 3d22 d107" tabindex=" │ │ │ +000950a0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +000950b0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +000950c0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +000950d0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +000950e0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +000950f0: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ +00095100: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +00095190: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +000951a0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +000951c0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +000951e0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +000951f0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ +00095230: 7072 653e 3c63 6f64 653e 696e 636c 7564 pre>includ │ │ │ +00095240: 6520 656e 6162 6c65 5f66 6972 6577 616c e enable_firewal │ │ │ +00095250: 6c64 0a0a 636c 6173 7320 656e 6162 6c65 ld..class enable │ │ │ +00095260: 5f66 6972 6577 616c 6c64 207b 0a20 2073 _firewalld {. s │ │ │ +00095270: 6572 7669 6365 207b 2766 6972 6577 616c ervice {'firewal │ │ │ +00095280: 6c64 273a 0a20 2020 2065 6e61 626c 6520 ld':. enable │ │ │ +00095290: 3d26 6774 3b20 7472 7565 2c0a 2020 2020 => true,. │ │ │ +000952a0: 656e 7375 7265 203d 2667 743b 2027 7275 ensure => 'ru │ │ │ +000952b0: 6e6e 696e 6727 2c0a 2020 7d0a 7d0a 3c2f nning',. }.}.
Re │ │ │ +00095370: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ +00095380: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ +00095390: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +000953a0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +000953b0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +000953c0: 7365 2220 6964 3d22 6964 3130 3822 3e3c se" id="id108">< │ │ │ +000953d0: 7072 653e 3c63 6f64 653e 0a5b 6375 7374 pre>.[cust │ │ │ +000953e0: 6f6d 697a 6174 696f 6e73 2e73 6572 7669 omizations.servi │ │ │ +000953f0: 6365 735d 0a65 6e61 626c 6564 203d 205b ces].enabled = [ │ │ │ +00095400: 2266 6972 6577 616c 6c64 225d 0a3c 2f63 "firewalld"].
│ │ │ 00095420: 3c2f 6469 763e 3c2f 7464 3e3c 2f74 723e
│ │ │ 00095430: 3c2f 7462 6f64 793e 3c2f 7461 626c 653e │ │ │ 00095440: 3c2f 7464 3e3c 2f74 723e 3c74 7220 6461 Remediation OS │ │ │ -000e1340: 4275 696c 6420 426c 7565 7072 696e 7420 Build Blueprint │ │ │ -000e1350: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -000e1360: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
.[
│ │ │ -000e13a0: 5b70 6163 6b61 6765 735d 5d0a 6e61 6d65  [packages]].name
│ │ │ -000e13b0: 203d 2022 6c69 6273 656c 696e 7578 220a   = "libselinux".
│ │ │ -000e13c0: 7665 7273 696f 6e20 3d20 222a 220a 3c2f  version = "*".
Re │ │ │ -000e1480: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ -000e1490: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -000e14a0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -000e1540: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -000e1590: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ -000e1520: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -000e1550: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -000e1570: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -000e1580: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -000e15a0: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -000e15b0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
incl
│ │ │ -000e15d0: 7564 6520 696e 7374 616c 6c5f 6c69 6273  ude install_libs
│ │ │ -000e15e0: 656c 696e 7578 0a0a 636c 6173 7320 696e  elinux..class in
│ │ │ -000e15f0: 7374 616c 6c5f 6c69 6273 656c 696e 7578  stall_libselinux
│ │ │ -000e1600: 207b 0a20 2070 6163 6b61 6765 207b 2027   {.  package { '
│ │ │ -000e1610: 6c69 6273 656c 696e 7578 273a 0a20 2020  libselinux':.   
│ │ │ -000e1620: 2065 6e73 7572 6520 3d26 6774 3b20 2769   ensure => 'i
│ │ │ -000e1630: 6e73 7461 6c6c 6564 272c 0a20 207d 0a7d  nstalled',.  }.}
│ │ │ -000e1640: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Ans │ │ │ -000e1700: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ -000e1710: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -000e17e0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -000e17f0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -000e1840: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ -000e1850: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ -000e1860: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ -000e1870: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ -000e1880: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ -000e1890: 5043 492d 4453 5376 342d 312e 320a 2020  PCI-DSSv4-1.2.  
│ │ │ -000e18a0: 2d20 5043 492d 4453 5376 342d 312e 322e  - PCI-DSSv4-1.2.
│ │ │ -000e18b0: 360a 2020 2d20 656e 6162 6c65 5f73 7472  6.  - enable_str
│ │ │ -000e18c0: 6174 6567 790a 2020 2d20 6869 6768 5f73  ategy.  - high_s
│ │ │ -000e18d0: 6576 6572 6974 790a 2020 2d20 6c6f 775f  everity.  - low_
│ │ │ -000e18e0: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ -000e18f0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -000e1900: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -000e1910: 6564 0a20 202d 2070 6163 6b61 6765 5f6c  ed.  - package_l
│ │ │ -000e1920: 6962 7365 6c69 6e75 785f 696e 7374 616c  ibselinux_instal
│ │ │ -000e1930: 6c65 640a 0a2d 206e 616d 653a 2045 6e73  led..- name: Ens
│ │ │ -000e1940: 7572 6520 6c69 6273 656c 696e 7578 2069  ure libselinux i
│ │ │ -000e1950: 7320 696e 7374 616c 6c65 640a 2020 616e  s installed.  an
│ │ │ -000e1960: 7369 626c 652e 6275 696c 7469 6e2e 7061  sible.builtin.pa
│ │ │ -000e1970: 636b 6167 653a 0a20 2020 206e 616d 653a  ckage:.    name:
│ │ │ -000e1980: 206c 6962 7365 6c69 6e75 780a 2020 2020   libselinux.    
│ │ │ -000e1990: 7374 6174 653a 2070 7265 7365 6e74 0a20  state: present. 
│ │ │ -000e19a0: 2077 6865 6e3a 2027 226b 6572 6e65 6c22   when: '"kernel"
│ │ │ -000e19b0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -000e19c0: 732e 7061 636b 6167 6573 270a 2020 7461  s.packages'.  ta
│ │ │ -000e19d0: 6773 3a0a 2020 2d20 5043 492d 4453 5376  gs:.  - PCI-DSSv
│ │ │ -000e19e0: 342d 312e 320a 2020 2d20 5043 492d 4453  4-1.2.  - PCI-DS
│ │ │ -000e19f0: 5376 342d 312e 322e 360a 2020 2d20 656e  Sv4-1.2.6.  - en
│ │ │ -000e1a00: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ -000e1a10: 2d20 6869 6768 5f73 6576 6572 6974 790a  - high_severity.
│ │ │ -000e1a20: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -000e1a30: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ -000e1a40: 7074 696f 6e0a 2020 2d20 6e6f 5f72 6562  ption.  - no_reb
│ │ │ -000e1a50: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ -000e1a60: 6163 6b61 6765 5f6c 6962 7365 6c69 6e75  ackage_libselinu
│ │ │ -000e1a70: 785f 696e 7374 616c 6c65 640a 3c2f 636f  x_installed.Remediation An
│ │ │ +000e1340: 7369 626c 6520 736e 6970 7065 7420 e287  sible snippet ..
│ │ │ +000e1350: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
low
Disru │ │ │ -000e17c0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -000e17d0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -000e1810: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -000e1820: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ +000e13d0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +000e13f0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +000e1440: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
- name: Gather 
│ │ │ +000e1490: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ +000e14a0: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ +000e14b0: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ +000e14c0: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ +000e14d0: 2050 4349 2d44 5353 7634 2d31 2e32 0a20   PCI-DSSv4-1.2. 
│ │ │ +000e14e0: 202d 2050 4349 2d44 5353 7634 2d31 2e32   - PCI-DSSv4-1.2
│ │ │ +000e14f0: 2e36 0a20 202d 2065 6e61 626c 655f 7374  .6.  - enable_st
│ │ │ +000e1500: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +000e1510: 7365 7665 7269 7479 0a20 202d 206c 6f77  severity.  - low
│ │ │ +000e1520: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +000e1530: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +000e1540: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +000e1550: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ +000e1560: 6c69 6273 656c 696e 7578 5f69 6e73 7461  libselinux_insta
│ │ │ +000e1570: 6c6c 6564 0a0a 2d20 6e61 6d65 3a20 456e  lled..- name: En
│ │ │ +000e1580: 7375 7265 206c 6962 7365 6c69 6e75 7820  sure libselinux 
│ │ │ +000e1590: 6973 2069 6e73 7461 6c6c 6564 0a20 2061  is installed.  a
│ │ │ +000e15a0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ +000e15b0: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ +000e15c0: 3a20 6c69 6273 656c 696e 7578 0a20 2020  : libselinux.   
│ │ │ +000e15d0: 2073 7461 7465 3a20 7072 6573 656e 740a   state: present.
│ │ │ +000e15e0: 2020 7768 656e 3a20 2722 6b65 726e 656c    when: '"kernel
│ │ │ +000e15f0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +000e1600: 7473 2e70 6163 6b61 6765 7327 0a20 2074  ts.packages'.  t
│ │ │ +000e1610: 6167 733a 0a20 202d 2050 4349 2d44 5353  ags:.  - PCI-DSS
│ │ │ +000e1620: 7634 2d31 2e32 0a20 202d 2050 4349 2d44  v4-1.2.  - PCI-D
│ │ │ +000e1630: 5353 7634 2d31 2e32 2e36 0a20 202d 2065  SSv4-1.2.6.  - e
│ │ │ +000e1640: 6e61 626c 655f 7374 7261 7465 6779 0a20  nable_strategy. 
│ │ │ +000e1650: 202d 2068 6967 685f 7365 7665 7269 7479   - high_severity
│ │ │ +000e1660: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +000e1670: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +000e1680: 7570 7469 6f6e 0a20 202d 206e 6f5f 7265  uption.  - no_re
│ │ │ +000e1690: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ +000e16a0: 7061 636b 6167 655f 6c69 6273 656c 696e  package_libselin
│ │ │ +000e16b0: 7578 5f69 6e73 7461 6c6c 6564 0a3c 2f63  ux_installed.
│ │ │ +000e16d0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +000e1770: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ +000e1780: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +000e1790: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
low
Disr │ │ │ +000e1400: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +000e1410: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +000e1450: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +000e1460: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Com │ │ │ +000e1810: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +000e1840: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +000e1860: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +000e1870: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +000e1890: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ +000e18b0: 3c70 7265 3e3c 636f 6465 3e69 6e63 6c75
inclu
│ │ │ +000e18c0: 6465 2069 6e73 7461 6c6c 5f6c 6962 7365  de install_libse
│ │ │ +000e18d0: 6c69 6e75 780a 0a63 6c61 7373 2069 6e73  linux..class ins
│ │ │ +000e18e0: 7461 6c6c 5f6c 6962 7365 6c69 6e75 7820  tall_libselinux 
│ │ │ +000e18f0: 7b0a 2020 7061 636b 6167 6520 7b20 276c  {.  package { 'l
│ │ │ +000e1900: 6962 7365 6c69 6e75 7827 3a0a 2020 2020  ibselinux':.    
│ │ │ +000e1910: 656e 7375 7265 203d 2667 743b 2027 696e  ensure => 'in
│ │ │ +000e1920: 7374 616c 6c65 6427 2c0a 2020 7d0a 7d0a  stalled',.  }.}.
│ │ │ +000e1930: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +000e19e0: 5265 6d65 6469 6174 696f 6e20 4f53 4275 Remediation OSBu │ │ │ +000e19f0: 696c 6420 426c 7565 7072 696e 7420 736e ild Blueprint sn │ │ │ +000e1a00: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
.[[p
│ │ │ +000e1a50: 6163 6b61 6765 735d 5d0a 6e61 6d65 203d  ackages]].name =
│ │ │ +000e1a60: 2022 6c69 6273 656c 696e 7578 220a 7665   "libselinux".ve
│ │ │ +000e1a70: 7273 696f 6e20 3d20 222a 220a 3c2f 636f  rsion = "*".
< │ │ │ 000e1a90: 2f64 6976 3e3c 2f74 643e 3c2f 7472 3e3c /div>< │ │ │ 000e1aa0: 2f74 626f 6479 3e3c 2f74 6162 6c65 3e3c /tbody>< │ │ │ 000e1ab0: 2f74 643e 3c2f 7472 3e3c 7472 2064 6174 /td>Remediat │ │ │ -000e9a60: 696f 6e20 4f53 4275 696c 6420 426c 7565 ion OSBuild Blue │ │ │ -000e9a70: 7072 696e 7420 736e 6970 7065 7420 e287 print snippet .. │ │ │ -000e9a80: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
.[customizat
│ │ │ -000e9ad0: 696f 6e73 2e73 6572 7669 6365 735d 0a6d  ions.services].m
│ │ │ -000e9ae0: 6173 6b65 6420 3d20 5b22 6176 6168 692d  asked = ["avahi-
│ │ │ -000e9af0: 6461 656d 6f6e 225d 0a3c 2f63 6f64 653e  daemon"].
│ │ │ -000e9b00: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -000e9bb0: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ -000e9bc0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -000e9bd0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -000e9be0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -000e9bf0: 7365 2220 6964 3d22 6964 3231 3822 3e3c se" id="id218">< │ │ │ -000e9c00: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -000e9c10: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -000e9c20: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -000e9c30: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -000e9c40: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -000e9c50: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -000e9c60: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -000e9ca0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -000e9cb0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -000e9cd0: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ -000e9ce0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
include d
│ │ │ -000e9d00: 6973 6162 6c65 5f61 7661 6869 2d64 6165  isable_avahi-dae
│ │ │ -000e9d10: 6d6f 6e0a 0a63 6c61 7373 2064 6973 6162  mon..class disab
│ │ │ -000e9d20: 6c65 5f61 7661 6869 2d64 6165 6d6f 6e20  le_avahi-daemon 
│ │ │ -000e9d30: 7b0a 2020 7365 7276 6963 6520 7b27 6176  {.  service {'av
│ │ │ -000e9d40: 6168 692d 6461 656d 6f6e 273a 0a20 2020  ahi-daemon':.   
│ │ │ -000e9d50: 2065 6e61 626c 6520 3d26 6774 3b20 6661   enable => fa
│ │ │ -000e9d60: 6c73 652c 0a20 2020 2065 6e73 7572 6520  lse,.    ensure 
│ │ │ -000e9d70: 3d26 6774 3b20 2773 746f 7070 6564 272c  => 'stopped',
│ │ │ -000e9d80: 0a20 207d 0a7d 0a3c 2f63 6f64 653e 3c2f  .  }.}.
Remediati │ │ │ -000e9e40: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070 on Ansible snipp │ │ │ -000e9e50: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -000e9ed0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -000e9ee0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -000e9ef0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -000e9f30: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -000e9f40: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -000e9f60: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -000e9f70: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
- name: G
│ │ │ -000e9f90: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ -000e9fa0: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ -000e9fb0: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ -000e9fc0: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ -000e9fd0: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ -000e9fe0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ -000e9ff0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -000ea000: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -000ea010: 3533 2d43 4d2d 3728 6229 0a20 202d 2050  53-CM-7(b).  - P
│ │ │ -000ea020: 4349 2d44 5353 7634 2d32 2e32 0a20 202d  CI-DSSv4-2.2.  -
│ │ │ -000ea030: 2050 4349 2d44 5353 7634 2d32 2e32 2e34   PCI-DSSv4-2.2.4
│ │ │ -000ea040: 0a20 202d 2064 6973 6162 6c65 5f73 7472  .  - disable_str
│ │ │ -000ea050: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ -000ea060: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ -000ea070: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -000ea080: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -000ea090: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -000ea0a0: 6564 6564 0a20 202d 2073 6572 7669 6365  eded.  - service
│ │ │ -000ea0b0: 5f61 7661 6869 2d64 6165 6d6f 6e5f 6469  _avahi-daemon_di
│ │ │ -000ea0c0: 7361 626c 6564 0a0a 2d20 6e61 6d65 3a20  sabled..- name: 
│ │ │ -000ea0d0: 4469 7361 626c 6520 4176 6168 6920 5365  Disable Avahi Se
│ │ │ -000ea0e0: 7276 6572 2053 6f66 7477 6172 6520 2d20  rver Software - 
│ │ │ -000ea0f0: 4469 7361 626c 6520 7365 7276 6963 6520  Disable service 
│ │ │ -000ea100: 6176 6168 692d 6461 656d 6f6e 0a20 2062  avahi-daemon.  b
│ │ │ -000ea110: 6c6f 636b 3a0a 0a20 202d 206e 616d 653a  lock:..  - name:
│ │ │ -000ea120: 2044 6973 6162 6c65 2041 7661 6869 2053   Disable Avahi S
│ │ │ -000ea130: 6572 7665 7220 536f 6674 7761 7265 202d  erver Software -
│ │ │ -000ea140: 2043 6f6c 6c65 6374 2073 7973 7465 6d64   Collect systemd
│ │ │ -000ea150: 2053 6572 7669 6365 7320 5072 6573 656e   Services Presen
│ │ │ -000ea160: 7420 696e 2074 6865 0a20 2020 2020 2053  t in the.      S
│ │ │ -000ea170: 7973 7465 6d0a 2020 2020 616e 7369 626c  ystem.    ansibl
│ │ │ -000ea180: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ -000ea190: 643a 2073 7973 7465 6d63 746c 202d 7120  d: systemctl -q 
│ │ │ -000ea1a0: 6c69 7374 2d75 6e69 742d 6669 6c65 7320  list-unit-files 
│ │ │ -000ea1b0: 2d2d 7479 7065 2073 6572 7669 6365 0a20  --type service. 
│ │ │ -000ea1c0: 2020 2072 6567 6973 7465 723a 2073 6572     register: ser
│ │ │ -000ea1d0: 7669 6365 5f65 7869 7374 730a 2020 2020  vice_exists.    
│ │ │ -000ea1e0: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ -000ea1f0: 6c73 650a 2020 2020 6661 696c 6564 5f77  lse.    failed_w
│ │ │ -000ea200: 6865 6e3a 2073 6572 7669 6365 5f65 7869  hen: service_exi
│ │ │ -000ea210: 7374 732e 7263 206e 6f74 2069 6e20 5b30  sts.rc not in [0
│ │ │ -000ea220: 2c20 315d 0a20 2020 2063 6865 636b 5f6d  , 1].    check_m
│ │ │ -000ea230: 6f64 653a 2066 616c 7365 0a0a 2020 2d20  ode: false..  - 
│ │ │ -000ea240: 6e61 6d65 3a20 4469 7361 626c 6520 4176  name: Disable Av
│ │ │ -000ea250: 6168 6920 5365 7276 6572 2053 6f66 7477  ahi Server Softw
│ │ │ -000ea260: 6172 6520 2d20 456e 7375 7265 2061 7661  are - Ensure ava
│ │ │ -000ea270: 6869 2d64 6165 6d6f 6e2e 7365 7276 6963  hi-daemon.servic
│ │ │ -000ea280: 6520 6973 204d 6173 6b65 640a 2020 2020  e is Masked.    
│ │ │ -000ea290: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -000ea2a0: 7379 7374 656d 643a 0a20 2020 2020 206e  systemd:.      n
│ │ │ -000ea2b0: 616d 653a 2061 7661 6869 2d64 6165 6d6f  ame: avahi-daemo
│ │ │ -000ea2c0: 6e2e 7365 7276 6963 650a 2020 2020 2020  n.service.      
│ │ │ -000ea2d0: 7374 6174 653a 2073 746f 7070 6564 0a20  state: stopped. 
│ │ │ -000ea2e0: 2020 2020 2065 6e61 626c 6564 3a20 6661       enabled: fa
│ │ │ -000ea2f0: 6c73 650a 2020 2020 2020 6d61 736b 6564  lse.      masked
│ │ │ -000ea300: 3a20 7472 7565 0a20 2020 2077 6865 6e3a  : true.    when:
│ │ │ -000ea310: 2073 6572 7669 6365 5f65 7869 7374 732e   service_exists.
│ │ │ -000ea320: 7374 646f 7574 5f6c 696e 6573 2069 7320  stdout_lines is 
│ │ │ -000ea330: 7365 6172 6368 2822 6176 6168 692d 6461  search("avahi-da
│ │ │ -000ea340: 656d 6f6e 2e73 6572 7669 6365 222c 206d  emon.service", m
│ │ │ -000ea350: 756c 7469 6c69 6e65 3d54 7275 6529 0a0a  ultiline=True)..
│ │ │ -000ea360: 2020 2d20 6e61 6d65 3a20 556e 6974 2053    - name: Unit S
│ │ │ -000ea370: 6f63 6b65 7420 4578 6973 7473 202d 2061  ocket Exists - a
│ │ │ -000ea380: 7661 6869 2d64 6165 6d6f 6e2e 736f 636b  vahi-daemon.sock
│ │ │ -000ea390: 6574 0a20 2020 2061 6e73 6962 6c65 2e62  et.    ansible.b
│ │ │ -000ea3a0: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ -000ea3b0: 7379 7374 656d 6374 6c20 2d71 206c 6973  systemctl -q lis
│ │ │ -000ea3c0: 742d 756e 6974 2d66 696c 6573 2061 7661  t-unit-files ava
│ │ │ -000ea3d0: 6869 2d64 6165 6d6f 6e2e 736f 636b 6574  hi-daemon.socket
│ │ │ -000ea3e0: 0a20 2020 2072 6567 6973 7465 723a 2073  .    register: s
│ │ │ -000ea3f0: 6f63 6b65 745f 6669 6c65 5f65 7869 7374  ocket_file_exist
│ │ │ -000ea400: 730a 2020 2020 6368 616e 6765 645f 7768  s.    changed_wh
│ │ │ -000ea410: 656e 3a20 6661 6c73 650a 2020 2020 6661  en: false.    fa
│ │ │ -000ea420: 696c 6564 5f77 6865 6e3a 2073 6f63 6b65  iled_when: socke
│ │ │ -000ea430: 745f 6669 6c65 5f65 7869 7374 732e 7263  t_file_exists.rc
│ │ │ -000ea440: 206e 6f74 2069 6e20 5b30 2c20 315d 0a20   not in [0, 1]. 
│ │ │ -000ea450: 2020 2063 6865 636b 5f6d 6f64 653a 2066     check_mode: f
│ │ │ -000ea460: 616c 7365 0a0a 2020 2d20 6e61 6d65 3a20  alse..  - name: 
│ │ │ -000ea470: 4469 7361 626c 6520 4176 6168 6920 5365  Disable Avahi Se
│ │ │ -000ea480: 7276 6572 2053 6f66 7477 6172 6520 2d20  rver Software - 
│ │ │ -000ea490: 4469 7361 626c 6520 536f 636b 6574 2061  Disable Socket a
│ │ │ -000ea4a0: 7661 6869 2d64 6165 6d6f 6e0a 2020 2020  vahi-daemon.    
│ │ │ -000ea4b0: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -000ea4c0: 7379 7374 656d 643a 0a20 2020 2020 206e  systemd:.      n
│ │ │ -000ea4d0: 616d 653a 2061 7661 6869 2d64 6165 6d6f  ame: avahi-daemo
│ │ │ -000ea4e0: 6e2e 736f 636b 6574 0a20 2020 2020 2065  n.socket.      e
│ │ │ -000ea4f0: 6e61 626c 6564 3a20 6661 6c73 650a 2020  nabled: false.  
│ │ │ -000ea500: 2020 2020 7374 6174 653a 2073 746f 7070      state: stopp
│ │ │ -000ea510: 6564 0a20 2020 2020 206d 6173 6b65 643a  ed.      masked:
│ │ │ -000ea520: 2074 7275 650a 2020 2020 7768 656e 3a20   true.    when: 
│ │ │ -000ea530: 736f 636b 6574 5f66 696c 655f 6578 6973  socket_file_exis
│ │ │ -000ea540: 7473 2e73 7464 6f75 745f 6c69 6e65 7320  ts.stdout_lines 
│ │ │ -000ea550: 6973 2073 6561 7263 6828 2261 7661 6869  is search("avahi
│ │ │ -000ea560: 2d64 6165 6d6f 6e2e 736f 636b 6574 222c  -daemon.socket",
│ │ │ -000ea570: 206d 756c 7469 6c69 6e65 3d54 7275 6529   multiline=True)
│ │ │ -000ea580: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -000ea590: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -000ea5a0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -000ea5b0: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ -000ea5c0: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ -000ea5d0: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ -000ea5e0: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ -000ea5f0: 2d32 2e32 2e34 0a20 202d 2064 6973 6162  -2.2.4.  - disab
│ │ │ -000ea600: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ -000ea610: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -000ea620: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -000ea630: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ -000ea640: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ -000ea650: 6f6f 745f 6e65 6564 6564 0a20 202d 2073  oot_needed.  - s
│ │ │ -000ea660: 6572 7669 6365 5f61 7661 6869 2d64 6165  ervice_avahi-dae
│ │ │ -000ea670: 6d6f 6e5f 6469 7361 626c 6564 0a20 202d  mon_disabled.  -
│ │ │ -000ea680: 2073 7065 6369 616c 5f73 6572 7669 6365   special_service
│ │ │ -000ea690: 5f62 6c6f 636b 0a20 2077 6865 6e3a 2028  _block.  when: (
│ │ │ -000ea6a0: 2022 6176 6168 6922 2069 6e20 616e 7369   "avahi" in ansi
│ │ │ -000ea6b0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -000ea6c0: 6573 2061 6e64 2022 6b65 726e 656c 2220  es and "kernel" 
│ │ │ -000ea6d0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -000ea6e0: 2e70 6163 6b61 6765 730a 2020 2020 290a  .packages.    ).
│ │ │ +000e9a60: 696f 6e20 416e 7369 626c 6520 736e 6970  ion Ansible snip
│ │ │ +000e9a70: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c  pet ...
< │ │ │ +000e9a80: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +000e9a90: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +000e9aa0: 7365 2220 6964 3d22 6964 3231 3722 3e3c se" id="id217">< │ │ │ +000e9ab0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +000e9ac0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +000e9ad0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +000e9ae0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +000e9af0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +000e9b00: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +000e9b10: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ +000e9b50: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +000e9b60: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ +000e9b80: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ +000e9b90: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 - name: │ │ │ +000e9bb0: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ +000e9bc0: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ +000e9bd0: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ +000e9be0: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ +000e9bf0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ +000e9c00: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ +000e9c10: 4e49 5354 2d38 3030 2d35 332d 434d 2d37 NIST-800-53-CM-7 │ │ │ +000e9c20: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ +000e9c30: 2d35 332d 434d 2d37 2862 290a 2020 2d20 -53-CM-7(b). - │ │ │ +000e9c40: 5043 492d 4453 5376 342d 322e 320a 2020 PCI-DSSv4-2.2. │ │ │ +000e9c50: 2d20 5043 492d 4453 5376 342d 322e 322e - PCI-DSSv4-2.2. │ │ │ +000e9c60: 340a 2020 2d20 6469 7361 626c 655f 7374 4. - disable_st │ │ │ +000e9c70: 7261 7465 6779 0a20 202d 206c 6f77 5f63 rategy. - low_c │ │ │ +000e9c80: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f omplexity. - lo │ │ │ +000e9c90: 775f 6469 7372 7570 7469 6f6e 0a20 202d w_disruption. - │ │ │ +000e9ca0: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ +000e9cb0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ +000e9cc0: 6565 6465 640a 2020 2d20 7365 7276 6963 eeded. - servic │ │ │ +000e9cd0: 655f 6176 6168 692d 6461 656d 6f6e 5f64 e_avahi-daemon_d │ │ │ +000e9ce0: 6973 6162 6c65 640a 0a2d 206e 616d 653a isabled..- name: │ │ │ +000e9cf0: 2044 6973 6162 6c65 2041 7661 6869 2053 Disable Avahi S │ │ │ +000e9d00: 6572 7665 7220 536f 6674 7761 7265 202d erver Software - │ │ │ +000e9d10: 2044 6973 6162 6c65 2073 6572 7669 6365 Disable service │ │ │ +000e9d20: 2061 7661 6869 2d64 6165 6d6f 6e0a 2020 avahi-daemon. │ │ │ +000e9d30: 626c 6f63 6b3a 0a0a 2020 2d20 6e61 6d65 block:.. - name │ │ │ +000e9d40: 3a20 4469 7361 626c 6520 4176 6168 6920 : Disable Avahi │ │ │ +000e9d50: 5365 7276 6572 2053 6f66 7477 6172 6520 Server Software │ │ │ +000e9d60: 2d20 436f 6c6c 6563 7420 7379 7374 656d - Collect system │ │ │ +000e9d70: 6420 5365 7276 6963 6573 2050 7265 7365 d Services Prese │ │ │ +000e9d80: 6e74 2069 6e20 7468 650a 2020 2020 2020 nt in the. │ │ │ +000e9d90: 5379 7374 656d 0a20 2020 2061 6e73 6962 System. ansib │ │ │ +000e9da0: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61 le.builtin.comma │ │ │ +000e9db0: 6e64 3a20 7379 7374 656d 6374 6c20 2d71 nd: systemctl -q │ │ │ +000e9dc0: 206c 6973 742d 756e 6974 2d66 696c 6573 list-unit-files │ │ │ +000e9dd0: 202d 2d74 7970 6520 7365 7276 6963 650a --type service. │ │ │ +000e9de0: 2020 2020 7265 6769 7374 6572 3a20 7365 register: se │ │ │ +000e9df0: 7276 6963 655f 6578 6973 7473 0a20 2020 rvice_exists. │ │ │ +000e9e00: 2063 6861 6e67 6564 5f77 6865 6e3a 2066 changed_when: f │ │ │ +000e9e10: 616c 7365 0a20 2020 2066 6169 6c65 645f alse. failed_ │ │ │ +000e9e20: 7768 656e 3a20 7365 7276 6963 655f 6578 when: service_ex │ │ │ +000e9e30: 6973 7473 2e72 6320 6e6f 7420 696e 205b ists.rc not in [ │ │ │ +000e9e40: 302c 2031 5d0a 2020 2020 6368 6563 6b5f 0, 1]. check_ │ │ │ +000e9e50: 6d6f 6465 3a20 6661 6c73 650a 0a20 202d mode: false.. - │ │ │ +000e9e60: 206e 616d 653a 2044 6973 6162 6c65 2041 name: Disable A │ │ │ +000e9e70: 7661 6869 2053 6572 7665 7220 536f 6674 vahi Server Soft │ │ │ +000e9e80: 7761 7265 202d 2045 6e73 7572 6520 6176 ware - Ensure av │ │ │ +000e9e90: 6168 692d 6461 656d 6f6e 2e73 6572 7669 ahi-daemon.servi │ │ │ +000e9ea0: 6365 2069 7320 4d61 736b 6564 0a20 2020 ce is Masked. │ │ │ +000e9eb0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e ansible.builtin │ │ │ +000e9ec0: 2e73 7973 7465 6d64 3a0a 2020 2020 2020 .systemd:. │ │ │ +000e9ed0: 6e61 6d65 3a20 6176 6168 692d 6461 656d name: avahi-daem │ │ │ +000e9ee0: 6f6e 2e73 6572 7669 6365 0a20 2020 2020 on.service. │ │ │ +000e9ef0: 2073 7461 7465 3a20 7374 6f70 7065 640a state: stopped. │ │ │ +000e9f00: 2020 2020 2020 656e 6162 6c65 643a 2066 enabled: f │ │ │ +000e9f10: 616c 7365 0a20 2020 2020 206d 6173 6b65 alse. maske │ │ │ +000e9f20: 643a 2074 7275 650a 2020 2020 7768 656e d: true. when │ │ │ +000e9f30: 3a20 7365 7276 6963 655f 6578 6973 7473 : service_exists │ │ │ +000e9f40: 2e73 7464 6f75 745f 6c69 6e65 7320 6973 .stdout_lines is │ │ │ +000e9f50: 2073 6561 7263 6828 2261 7661 6869 2d64 search("avahi-d │ │ │ +000e9f60: 6165 6d6f 6e2e 7365 7276 6963 6522 2c20 aemon.service", │ │ │ +000e9f70: 6d75 6c74 696c 696e 653d 5472 7565 290a multiline=True). │ │ │ +000e9f80: 0a20 202d 206e 616d 653a 2055 6e69 7420 . - name: Unit │ │ │ +000e9f90: 536f 636b 6574 2045 7869 7374 7320 2d20 Socket Exists - │ │ │ +000e9fa0: 6176 6168 692d 6461 656d 6f6e 2e73 6f63 avahi-daemon.soc │ │ │ +000e9fb0: 6b65 740a 2020 2020 616e 7369 626c 652e ket. ansible. │ │ │ +000e9fc0: 6275 696c 7469 6e2e 636f 6d6d 616e 643a builtin.command: │ │ │ +000e9fd0: 2073 7973 7465 6d63 746c 202d 7120 6c69 systemctl -q li │ │ │ +000e9fe0: 7374 2d75 6e69 742d 6669 6c65 7320 6176 st-unit-files av │ │ │ +000e9ff0: 6168 692d 6461 656d 6f6e 2e73 6f63 6b65 ahi-daemon.socke │ │ │ +000ea000: 740a 2020 2020 7265 6769 7374 6572 3a20 t. register: │ │ │ +000ea010: 736f 636b 6574 5f66 696c 655f 6578 6973 socket_file_exis │ │ │ +000ea020: 7473 0a20 2020 2063 6861 6e67 6564 5f77 ts. changed_w │ │ │ +000ea030: 6865 6e3a 2066 616c 7365 0a20 2020 2066 hen: false. f │ │ │ +000ea040: 6169 6c65 645f 7768 656e 3a20 736f 636b ailed_when: sock │ │ │ +000ea050: 6574 5f66 696c 655f 6578 6973 7473 2e72 et_file_exists.r │ │ │ +000ea060: 6320 6e6f 7420 696e 205b 302c 2031 5d0a c not in [0, 1]. │ │ │ +000ea070: 2020 2020 6368 6563 6b5f 6d6f 6465 3a20 check_mode: │ │ │ +000ea080: 6661 6c73 650a 0a20 202d 206e 616d 653a false.. - name: │ │ │ +000ea090: 2044 6973 6162 6c65 2041 7661 6869 2053 Disable Avahi S │ │ │ +000ea0a0: 6572 7665 7220 536f 6674 7761 7265 202d erver Software - │ │ │ +000ea0b0: 2044 6973 6162 6c65 2053 6f63 6b65 7420 Disable Socket │ │ │ +000ea0c0: 6176 6168 692d 6461 656d 6f6e 0a20 2020 avahi-daemon. │ │ │ +000ea0d0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e ansible.builtin │ │ │ +000ea0e0: 2e73 7973 7465 6d64 3a0a 2020 2020 2020 .systemd:. │ │ │ +000ea0f0: 6e61 6d65 3a20 6176 6168 692d 6461 656d name: avahi-daem │ │ │ +000ea100: 6f6e 2e73 6f63 6b65 740a 2020 2020 2020 on.socket. │ │ │ +000ea110: 656e 6162 6c65 643a 2066 616c 7365 0a20 enabled: false. │ │ │ +000ea120: 2020 2020 2073 7461 7465 3a20 7374 6f70 state: stop │ │ │ +000ea130: 7065 640a 2020 2020 2020 6d61 736b 6564 ped. masked │ │ │ +000ea140: 3a20 7472 7565 0a20 2020 2077 6865 6e3a : true. when: │ │ │ +000ea150: 2073 6f63 6b65 745f 6669 6c65 5f65 7869 socket_file_exi │ │ │ +000ea160: 7374 732e 7374 646f 7574 5f6c 696e 6573 sts.stdout_lines │ │ │ +000ea170: 2069 7320 7365 6172 6368 2822 6176 6168 is search("avah │ │ │ +000ea180: 692d 6461 656d 6f6e 2e73 6f63 6b65 7422 i-daemon.socket" │ │ │ +000ea190: 2c20 6d75 6c74 696c 696e 653d 5472 7565 , multiline=True │ │ │ +000ea1a0: 290a 2020 7461 6773 3a0a 2020 2d20 4e49 ). tags:. - NI │ │ │ +000ea1b0: 5354 2d38 3030 2d35 332d 434d 2d36 2861 ST-800-53-CM-6(a │ │ │ +000ea1c0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ +000ea1d0: 332d 434d 2d37 2861 290a 2020 2d20 4e49 3-CM-7(a). - NI │ │ │ +000ea1e0: 5354 2d38 3030 2d35 332d 434d 2d37 2862 ST-800-53-CM-7(b │ │ │ +000ea1f0: 290a 2020 2d20 5043 492d 4453 5376 342d ). - PCI-DSSv4- │ │ │ +000ea200: 322e 320a 2020 2d20 5043 492d 4453 5376 2.2. - PCI-DSSv │ │ │ +000ea210: 342d 322e 322e 340a 2020 2d20 6469 7361 4-2.2.4. - disa │ │ │ +000ea220: 626c 655f 7374 7261 7465 6779 0a20 202d ble_strategy. - │ │ │ +000ea230: 206c 6f77 5f63 6f6d 706c 6578 6974 790a low_complexity. │ │ │ +000ea240: 2020 2d20 6c6f 775f 6469 7372 7570 7469 - low_disrupti │ │ │ +000ea250: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365 on. - medium_se │ │ │ +000ea260: 7665 7269 7479 0a20 202d 206e 6f5f 7265 verity. - no_re │ │ │ +000ea270: 626f 6f74 5f6e 6565 6465 640a 2020 2d20 boot_needed. - │ │ │ +000ea280: 7365 7276 6963 655f 6176 6168 692d 6461 service_avahi-da │ │ │ +000ea290: 656d 6f6e 5f64 6973 6162 6c65 640a 2020 emon_disabled. │ │ │ +000ea2a0: 2d20 7370 6563 6961 6c5f 7365 7276 6963 - special_servic │ │ │ +000ea2b0: 655f 626c 6f63 6b0a 2020 7768 656e 3a20 e_block. when: │ │ │ +000ea2c0: 2820 2261 7661 6869 2220 696e 2061 6e73 ( "avahi" in ans │ │ │ +000ea2d0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ +000ea2e0: 6765 7320 616e 6420 226b 6572 6e65 6c22 ges and "kernel" │ │ │ +000ea2f0: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +000ea300: 732e 7061 636b 6167 6573 0a20 2020 2029 s.packages. ) │ │ │ +000ea310: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .
Remediation Pup │ │ │ +000ea3d0: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ +000ea3e0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ +000ea4b0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +000ea4c0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
i
│ │ │ +000ea510: 6e63 6c75 6465 2064 6973 6162 6c65 5f61  nclude disable_a
│ │ │ +000ea520: 7661 6869 2d64 6165 6d6f 6e0a 0a63 6c61  vahi-daemon..cla
│ │ │ +000ea530: 7373 2064 6973 6162 6c65 5f61 7661 6869  ss disable_avahi
│ │ │ +000ea540: 2d64 6165 6d6f 6e20 7b0a 2020 7365 7276  -daemon {.  serv
│ │ │ +000ea550: 6963 6520 7b27 6176 6168 692d 6461 656d  ice {'avahi-daem
│ │ │ +000ea560: 6f6e 273a 0a20 2020 2065 6e61 626c 6520  on':.    enable 
│ │ │ +000ea570: 3d26 6774 3b20 6661 6c73 652c 0a20 2020  => false,.   
│ │ │ +000ea580: 2065 6e73 7572 6520 3d26 6774 3b20 2773   ensure => 's
│ │ │ +000ea590: 746f 7070 6564 272c 0a20 207d 0a7d 0a3c  topped',.  }.}.<
│ │ │ +000ea5a0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +000ea650: 656d 6564 6961 7469 6f6e 204f 5342 7569 emediation OSBui │ │ │ +000ea660: 6c64 2042 6c75 6570 7269 6e74 2073 6e69 ld Blueprint sni │ │ │ +000ea670: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +000ea680: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +000ea6b0: 3c70 7265 3e3c 636f 6465 3e0a 5b63 7573
.[cus
│ │ │ +000ea6c0: 746f 6d69 7a61 7469 6f6e 732e 7365 7276  tomizations.serv
│ │ │ +000ea6d0: 6963 6573 5d0a 6d61 736b 6564 203d 205b  ices].masked = [
│ │ │ +000ea6e0: 2261 7661 6869 2d64 6165 6d6f 6e22 5d0a  "avahi-daemon"].
│ │ │  000ea6f0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
Remediation OS │ │ │ -000f5a30: 4275 696c 6420 426c 7565 7072 696e 7420 Build Blueprint │ │ │ -000f5a40: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -000f5a50: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
.[
│ │ │ -000f5a90: 5b70 6163 6b61 6765 735d 5d0a 6e61 6d65  [packages]].name
│ │ │ -000f5aa0: 203d 2022 6372 6f6e 220a 7665 7273 696f   = "cron".versio
│ │ │ -000f5ab0: 6e20 3d20 222a 220a 3c2f 636f 6465 3e3c  n = "*".<
│ │ │ -000f5ac0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ -000f5b70: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ -000f5b80: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -000f5c00: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ -000f5c90: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
Complexity:low
Disrup │ │ │ +000ea490: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +000ea4a0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +000ea4e0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +000ea4f0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexi │ │ │ -000f5c10: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -000f5c20: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ -000f5c60: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -000f5c70: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
│ │ │ -000f5cb0: 3c63 6f64 653e 696e 636c 7564 6520 696e  include in
│ │ │ -000f5cc0: 7374 616c 6c5f 6372 6f6e 0a0a 636c 6173  stall_cron..clas
│ │ │ -000f5cd0: 7320 696e 7374 616c 6c5f 6372 6f6e 207b  s install_cron {
│ │ │ -000f5ce0: 0a20 2070 6163 6b61 6765 207b 2027 6372  .  package { 'cr
│ │ │ -000f5cf0: 6f6e 273a 0a20 2020 2065 6e73 7572 6520  on':.    ensure 
│ │ │ -000f5d00: 3d26 6774 3b20 2769 6e73 7461 6c6c 6564  => 'installed
│ │ │ -000f5d10: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e  ',.  }.}.
│ │ │ -000f5d20: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -000f5dd0: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -000f5de0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -000f5df0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -000f5e20: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -000f5e90: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -000f5eb0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -000f5ee0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ -000f5f00: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ -000f5e70: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -000f5e80: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -000f5ec0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -000f5ed0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
- name: │ │ │ -000f5f20: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ -000f5f30: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ -000f5f40: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ -000f5f50: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ -000f5f60: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ -000f5f70: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ -000f5f80: 5043 492d 4453 5376 342d 322e 320a 2020 PCI-DSSv4-2.2. │ │ │ -000f5f90: 2d20 5043 492d 4453 5376 342d 322e 322e - PCI-DSSv4-2.2. │ │ │ -000f5fa0: 360a 2020 2d20 656e 6162 6c65 5f73 7472 6. - enable_str │ │ │ -000f5fb0: 6174 6567 790a 2020 2d20 6c6f 775f 636f ategy. - low_co │ │ │ -000f5fc0: 6d70 6c65 7869 7479 0a20 202d 206c 6f77 mplexity. - low │ │ │ -000f5fd0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20 _disruption. - │ │ │ -000f5fe0: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ -000f5ff0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ -000f6000: 6564 6564 0a20 202d 2070 6163 6b61 6765 eded. - package │ │ │ -000f6010: 5f63 726f 6e5f 696e 7374 616c 6c65 640a _cron_installed. │ │ │ -000f6020: 0a2d 206e 616d 653a 2045 6e73 7572 6520 .- name: Ensure │ │ │ -000f6030: 6372 6f6e 2069 7320 696e 7374 616c 6c65 cron is installe │ │ │ -000f6040: 640a 2020 616e 7369 626c 652e 6275 696c d. ansible.buil │ │ │ -000f6050: 7469 6e2e 7061 636b 6167 653a 0a20 2020 tin.package:. │ │ │ -000f6060: 206e 616d 653a 2063 726f 6e0a 2020 2020 name: cron. │ │ │ -000f6070: 7374 6174 653a 2070 7265 7365 6e74 0a20 state: present. │ │ │ -000f6080: 2077 6865 6e3a 2027 226b 6572 6e65 6c22 when: '"kernel" │ │ │ -000f6090: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -000f60a0: 732e 7061 636b 6167 6573 270a 2020 7461 s.packages'. ta │ │ │ -000f60b0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ -000f60c0: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ -000f60d0: 5043 492d 4453 5376 342d 322e 320a 2020 PCI-DSSv4-2.2. │ │ │ -000f60e0: 2d20 5043 492d 4453 5376 342d 322e 322e - PCI-DSSv4-2.2. │ │ │ -000f60f0: 360a 2020 2d20 656e 6162 6c65 5f73 7472 6. - enable_str │ │ │ -000f6100: 6174 6567 790a 2020 2d20 6c6f 775f 636f ategy. - low_co │ │ │ -000f6110: 6d70 6c65 7869 7479 0a20 202d 206c 6f77 mplexity. - low │ │ │ -000f6120: 5f64 6973 7275 7074 696f 6e0a 2020 2d20 _disruption. - │ │ │ -000f6130: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ -000f6140: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ -000f6150: 6564 6564 0a20 202d 2070 6163 6b61 6765 eded. - package │ │ │ -000f6160: 5f63 726f 6e5f 696e 7374 616c 6c65 640a _cron_installed. │ │ │ +000f5a20: 223e 5265 6d65 6469 6174 696f 6e20 416e ">Remediation An │ │ │ +000f5a30: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ +000f5a40: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ +000f5ac0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +000f5ae0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +000f5b30: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
- name: Gather 
│ │ │ +000f5b80: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ +000f5b90: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ +000f5ba0: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ +000f5bb0: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ +000f5bc0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +000f5bd0: 3628 6129 0a20 202d 2050 4349 2d44 5353  6(a).  - PCI-DSS
│ │ │ +000f5be0: 7634 2d32 2e32 0a20 202d 2050 4349 2d44  v4-2.2.  - PCI-D
│ │ │ +000f5bf0: 5353 7634 2d32 2e32 2e36 0a20 202d 2065  SSv4-2.2.6.  - e
│ │ │ +000f5c00: 6e61 626c 655f 7374 7261 7465 6779 0a20  nable_strategy. 
│ │ │ +000f5c10: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +000f5c20: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ +000f5c30: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ +000f5c40: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ +000f5c50: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ +000f5c60: 2d20 7061 636b 6167 655f 6372 6f6e 5f69  - package_cron_i
│ │ │ +000f5c70: 6e73 7461 6c6c 6564 0a0a 2d20 6e61 6d65  nstalled..- name
│ │ │ +000f5c80: 3a20 456e 7375 7265 2063 726f 6e20 6973  : Ensure cron is
│ │ │ +000f5c90: 2069 6e73 7461 6c6c 6564 0a20 2061 6e73   installed.  ans
│ │ │ +000f5ca0: 6962 6c65 2e62 7569 6c74 696e 2e70 6163  ible.builtin.pac
│ │ │ +000f5cb0: 6b61 6765 3a0a 2020 2020 6e61 6d65 3a20  kage:.    name: 
│ │ │ +000f5cc0: 6372 6f6e 0a20 2020 2073 7461 7465 3a20  cron.    state: 
│ │ │ +000f5cd0: 7072 6573 656e 740a 2020 7768 656e 3a20  present.  when: 
│ │ │ +000f5ce0: 2722 6b65 726e 656c 2220 696e 2061 6e73  '"kernel" in ans
│ │ │ +000f5cf0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +000f5d00: 6765 7327 0a20 2074 6167 733a 0a20 202d  ges'.  tags:.  -
│ │ │ +000f5d10: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +000f5d20: 3628 6129 0a20 202d 2050 4349 2d44 5353  6(a).  - PCI-DSS
│ │ │ +000f5d30: 7634 2d32 2e32 0a20 202d 2050 4349 2d44  v4-2.2.  - PCI-D
│ │ │ +000f5d40: 5353 7634 2d32 2e32 2e36 0a20 202d 2065  SSv4-2.2.6.  - e
│ │ │ +000f5d50: 6e61 626c 655f 7374 7261 7465 6779 0a20  nable_strategy. 
│ │ │ +000f5d60: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +000f5d70: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ +000f5d80: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ +000f5d90: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ +000f5da0: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ +000f5db0: 2d20 7061 636b 6167 655f 6372 6f6e 5f69  - package_cron_i
│ │ │ +000f5dc0: 6e73 7461 6c6c 6564 0a3c 2f63 6f64 653e  nstalled.
│ │ │ +000f5dd0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +000f5e80: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ +000f5e90: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +000f5ea0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +000f5eb0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +000f5ec0: 7365 2220 6964 3d22 6964 3234 3622 3e3c se" id="id246">< │ │ │ +000f5ed0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +000f5ee0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +000f5ef0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +000f5f00: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +000f5f10: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Disruption:Strategy: │ │ │ +000f5fa0: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c < │ │ │ +000f5fb0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
low
Disr │ │ │ +000f5af0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +000f5b00: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +000f5b40: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +000f5b50: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complex │ │ │ +000f5f20: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +000f5f30: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ +000f5f70: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +000f5f80: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
enable
include i
│ │ │ +000f5fd0: 6e73 7461 6c6c 5f63 726f 6e0a 0a63 6c61  nstall_cron..cla
│ │ │ +000f5fe0: 7373 2069 6e73 7461 6c6c 5f63 726f 6e20  ss install_cron 
│ │ │ +000f5ff0: 7b0a 2020 7061 636b 6167 6520 7b20 2763  {.  package { 'c
│ │ │ +000f6000: 726f 6e27 3a0a 2020 2020 656e 7375 7265  ron':.    ensure
│ │ │ +000f6010: 203d 2667 743b 2027 696e 7374 616c 6c65   => 'installe
│ │ │ +000f6020: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  d',.  }.}.
Remedi │ │ │ +000f60e0: 6174 696f 6e20 4f53 4275 696c 6420 426c ation OSBuild Bl │ │ │ +000f60f0: 7565 7072 696e 7420 736e 6970 7065 7420 ueprint snippet │ │ │ +000f6100: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
│ │ │ +000f6140: 3c63 6f64 653e 0a5b 5b70 6163 6b61 6765  .[[package
│ │ │ +000f6150: 735d 5d0a 6e61 6d65 203d 2022 6372 6f6e  s]].name = "cron
│ │ │ +000f6160: 220a 7665 7273 696f 6e20 3d20 222a 220a  ".version = "*".
│ │ │  000f6170: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
Remediati │ │ │ -00113940: 6f6e 204f 5342 7569 6c64 2042 6c75 6570 on OSBuild Bluep │ │ │ -00113950: 7269 6e74 2073 6e69 7070 6574 20e2 87b2 rint snippet ... │ │ │ -00113960: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
.[customizati
│ │ │ -001139b0: 6f6e 732e 7365 7276 6963 6573 5d0a 6d61  ons.services].ma
│ │ │ -001139c0: 736b 6564 203d 205b 2272 7063 6269 6e64  sked = ["rpcbind
│ │ │ -001139d0: 225d 0a3c 2f63 6f64 653e 3c2f 7072 653e  "].
│ │ │ -001139e0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation P │ │ │ -00113a90: 7570 7065 7420 736e 6970 7065 7420 e287 uppet snippet .. │ │ │ -00113aa0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -00113b20: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -00113b40: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -00113b90: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
include disable
│ │ │ -00113be0: 5f72 7063 6269 6e64 0a0a 636c 6173 7320  _rpcbind..class 
│ │ │ -00113bf0: 6469 7361 626c 655f 7270 6362 696e 6420  disable_rpcbind 
│ │ │ -00113c00: 7b0a 2020 7365 7276 6963 6520 7b27 7270  {.  service {'rp
│ │ │ -00113c10: 6362 696e 6427 3a0a 2020 2020 656e 6162  cbind':.    enab
│ │ │ -00113c20: 6c65 203d 2667 743b 2066 616c 7365 2c0a  le => false,.
│ │ │ -00113c30: 2020 2020 656e 7375 7265 203d 2667 743b      ensure =>
│ │ │ -00113c40: 2027 7374 6f70 7065 6427 2c0a 2020 7d0a   'stopped',.  }.
│ │ │ -00113c50: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -00113c60: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -00113d10: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -00113d20: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
low
Disr │ │ │ -00113b50: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00113b60: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -00113ba0: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ -00113bb0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ -00113da0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -00113dc0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -00113e10: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -00113e40: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ -00113e60: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ -00113e70: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ -00113e80: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ -00113e90: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ -00113ea0: 2d20 5043 492d 4453 5376 342d 322e 320a  - PCI-DSSv4-2.2.
│ │ │ -00113eb0: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ -00113ec0: 322e 340a 2020 2d20 6469 7361 626c 655f  2.4.  - disable_
│ │ │ -00113ed0: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ -00113ee0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -00113ef0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -00113f00: 202d 206c 6f77 5f73 6576 6572 6974 790a   - low_severity.
│ │ │ -00113f10: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -00113f20: 6564 6564 0a20 202d 2073 6572 7669 6365  eded.  - service
│ │ │ -00113f30: 5f72 7063 6269 6e64 5f64 6973 6162 6c65  _rpcbind_disable
│ │ │ -00113f40: 640a 0a2d 206e 616d 653a 2044 6973 6162  d..- name: Disab
│ │ │ -00113f50: 6c65 2072 7063 6269 6e64 2053 6572 7669  le rpcbind Servi
│ │ │ -00113f60: 6365 202d 2044 6973 6162 6c65 2073 6572  ce - Disable ser
│ │ │ -00113f70: 7669 6365 2072 7063 6269 6e64 0a20 2062  vice rpcbind.  b
│ │ │ -00113f80: 6c6f 636b 3a0a 0a20 202d 206e 616d 653a  lock:..  - name:
│ │ │ -00113f90: 2044 6973 6162 6c65 2072 7063 6269 6e64   Disable rpcbind
│ │ │ -00113fa0: 2053 6572 7669 6365 202d 2043 6f6c 6c65   Service - Colle
│ │ │ -00113fb0: 6374 2073 7973 7465 6d64 2053 6572 7669  ct systemd Servi
│ │ │ -00113fc0: 6365 7320 5072 6573 656e 7420 696e 2074  ces Present in t
│ │ │ -00113fd0: 6865 2053 7973 7465 6d0a 2020 2020 616e  he System.    an
│ │ │ -00113fe0: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ -00113ff0: 6d6d 616e 643a 2073 7973 7465 6d63 746c  mmand: systemctl
│ │ │ -00114000: 202d 7120 6c69 7374 2d75 6e69 742d 6669   -q list-unit-fi
│ │ │ -00114010: 6c65 7320 2d2d 7479 7065 2073 6572 7669  les --type servi
│ │ │ -00114020: 6365 0a20 2020 2072 6567 6973 7465 723a  ce.    register:
│ │ │ -00114030: 2073 6572 7669 6365 5f65 7869 7374 730a   service_exists.
│ │ │ -00114040: 2020 2020 6368 616e 6765 645f 7768 656e      changed_when
│ │ │ -00114050: 3a20 6661 6c73 650a 2020 2020 6661 696c  : false.    fail
│ │ │ -00114060: 6564 5f77 6865 6e3a 2073 6572 7669 6365  ed_when: service
│ │ │ -00114070: 5f65 7869 7374 732e 7263 206e 6f74 2069  _exists.rc not i
│ │ │ -00114080: 6e20 5b30 2c20 315d 0a20 2020 2063 6865  n [0, 1].    che
│ │ │ -00114090: 636b 5f6d 6f64 653a 2066 616c 7365 0a0a  ck_mode: false..
│ │ │ -001140a0: 2020 2d20 6e61 6d65 3a20 4469 7361 626c    - name: Disabl
│ │ │ -001140b0: 6520 7270 6362 696e 6420 5365 7276 6963  e rpcbind Servic
│ │ │ -001140c0: 6520 2d20 456e 7375 7265 2072 7063 6269  e - Ensure rpcbi
│ │ │ -001140d0: 6e64 2e73 6572 7669 6365 2069 7320 4d61  nd.service is Ma
│ │ │ -001140e0: 736b 6564 0a20 2020 2061 6e73 6962 6c65  sked.    ansible
│ │ │ -001140f0: 2e62 7569 6c74 696e 2e73 7973 7465 6d64  .builtin.systemd
│ │ │ -00114100: 3a0a 2020 2020 2020 6e61 6d65 3a20 7270  :.      name: rp
│ │ │ -00114110: 6362 696e 642e 7365 7276 6963 650a 2020  cbind.service.  
│ │ │ -00114120: 2020 2020 7374 6174 653a 2073 746f 7070      state: stopp
│ │ │ -00114130: 6564 0a20 2020 2020 2065 6e61 626c 6564  ed.      enabled
│ │ │ -00114140: 3a20 6661 6c73 650a 2020 2020 2020 6d61  : false.      ma
│ │ │ -00114150: 736b 6564 3a20 7472 7565 0a20 2020 2077  sked: true.    w
│ │ │ -00114160: 6865 6e3a 2073 6572 7669 6365 5f65 7869  hen: service_exi
│ │ │ -00114170: 7374 732e 7374 646f 7574 5f6c 696e 6573  sts.stdout_lines
│ │ │ -00114180: 2069 7320 7365 6172 6368 2822 7270 6362   is search("rpcb
│ │ │ -00114190: 696e 642e 7365 7276 6963 6522 2c20 6d75  ind.service", mu
│ │ │ -001141a0: 6c74 696c 696e 653d 5472 7565 290a 0a20  ltiline=True).. 
│ │ │ -001141b0: 202d 206e 616d 653a 2055 6e69 7420 536f   - name: Unit So
│ │ │ -001141c0: 636b 6574 2045 7869 7374 7320 2d20 7270  cket Exists - rp
│ │ │ -001141d0: 6362 696e 642e 736f 636b 6574 0a20 2020  cbind.socket.   
│ │ │ -001141e0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -001141f0: 2e63 6f6d 6d61 6e64 3a20 7379 7374 656d  .command: system
│ │ │ -00114200: 6374 6c20 2d71 206c 6973 742d 756e 6974  ctl -q list-unit
│ │ │ -00114210: 2d66 696c 6573 2072 7063 6269 6e64 2e73  -files rpcbind.s
│ │ │ -00114220: 6f63 6b65 740a 2020 2020 7265 6769 7374  ocket.    regist
│ │ │ -00114230: 6572 3a20 736f 636b 6574 5f66 696c 655f  er: socket_file_
│ │ │ -00114240: 6578 6973 7473 0a20 2020 2063 6861 6e67  exists.    chang
│ │ │ -00114250: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ -00114260: 2020 2066 6169 6c65 645f 7768 656e 3a20     failed_when: 
│ │ │ -00114270: 736f 636b 6574 5f66 696c 655f 6578 6973  socket_file_exis
│ │ │ -00114280: 7473 2e72 6320 6e6f 7420 696e 205b 302c  ts.rc not in [0,
│ │ │ -00114290: 2031 5d0a 2020 2020 6368 6563 6b5f 6d6f   1].    check_mo
│ │ │ -001142a0: 6465 3a20 6661 6c73 650a 0a20 202d 206e  de: false..  - n
│ │ │ -001142b0: 616d 653a 2044 6973 6162 6c65 2072 7063  ame: Disable rpc
│ │ │ -001142c0: 6269 6e64 2053 6572 7669 6365 202d 2044  bind Service - D
│ │ │ -001142d0: 6973 6162 6c65 2053 6f63 6b65 7420 7270  isable Socket rp
│ │ │ -001142e0: 6362 696e 640a 2020 2020 616e 7369 626c  cbind.    ansibl
│ │ │ -001142f0: 652e 6275 696c 7469 6e2e 7379 7374 656d  e.builtin.system
│ │ │ -00114300: 643a 0a20 2020 2020 206e 616d 653a 2072  d:.      name: r
│ │ │ -00114310: 7063 6269 6e64 2e73 6f63 6b65 740a 2020  pcbind.socket.  
│ │ │ -00114320: 2020 2020 656e 6162 6c65 643a 2066 616c      enabled: fal
│ │ │ -00114330: 7365 0a20 2020 2020 2073 7461 7465 3a20  se.      state: 
│ │ │ -00114340: 7374 6f70 7065 640a 2020 2020 2020 6d61  stopped.      ma
│ │ │ -00114350: 736b 6564 3a20 7472 7565 0a20 2020 2077  sked: true.    w
│ │ │ -00114360: 6865 6e3a 2073 6f63 6b65 745f 6669 6c65  hen: socket_file
│ │ │ -00114370: 5f65 7869 7374 732e 7374 646f 7574 5f6c  _exists.stdout_l
│ │ │ -00114380: 696e 6573 2069 7320 7365 6172 6368 2822  ines is search("
│ │ │ -00114390: 7270 6362 696e 642e 736f 636b 6574 222c  rpcbind.socket",
│ │ │ -001143a0: 206d 756c 7469 6c69 6e65 3d54 7275 6529   multiline=True)
│ │ │ -001143b0: 0a20 2074 6167 733a 0a20 202d 2050 4349  .  tags:.  - PCI
│ │ │ -001143c0: 2d44 5353 7634 2d32 2e32 0a20 202d 2050  -DSSv4-2.2.  - P
│ │ │ -001143d0: 4349 2d44 5353 7634 2d32 2e32 2e34 0a20  CI-DSSv4-2.2.4. 
│ │ │ -001143e0: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ -001143f0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ -00114400: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -00114410: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -00114420: 775f 7365 7665 7269 7479 0a20 202d 206e  w_severity.  - n
│ │ │ -00114430: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -00114440: 2020 2d20 7365 7276 6963 655f 7270 6362    - service_rpcb
│ │ │ -00114450: 696e 645f 6469 7361 626c 6564 0a20 202d  ind_disabled.  -
│ │ │ -00114460: 2073 7065 6369 616c 5f73 6572 7669 6365   special_service
│ │ │ -00114470: 5f62 6c6f 636b 0a20 2077 6865 6e3a 2027  _block.  when: '
│ │ │ -00114480: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -00114490: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001144a0: 6573 270a 3c2f 636f 6465 3e3c 2f70 7265  es'.

│ │ │ +001139d0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 < │ │ │ +00113a60: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +00113a70: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
low
Disr │ │ │ -00113dd0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00113de0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -00113e20: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -00113e30: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Complexi │ │ │ +001139e0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +001139f0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +00113a30: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +00113a40: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
- name: G
│ │ │ +00113a90: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ +00113aa0: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ +00113ab0: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ +00113ac0: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ +00113ad0: 733a 0a20 202d 2050 4349 2d44 5353 7634  s:.  - PCI-DSSv4
│ │ │ +00113ae0: 2d32 2e32 0a20 202d 2050 4349 2d44 5353  -2.2.  - PCI-DSS
│ │ │ +00113af0: 7634 2d32 2e32 2e34 0a20 202d 2064 6973  v4-2.2.4.  - dis
│ │ │ +00113b00: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ +00113b10: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +00113b20: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +00113b30: 696f 6e0a 2020 2d20 6c6f 775f 7365 7665  ion.  - low_seve
│ │ │ +00113b40: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ +00113b50: 6f74 5f6e 6565 6465 640a 2020 2d20 7365  ot_needed.  - se
│ │ │ +00113b60: 7276 6963 655f 7270 6362 696e 645f 6469  rvice_rpcbind_di
│ │ │ +00113b70: 7361 626c 6564 0a0a 2d20 6e61 6d65 3a20  sabled..- name: 
│ │ │ +00113b80: 4469 7361 626c 6520 7270 6362 696e 6420  Disable rpcbind 
│ │ │ +00113b90: 5365 7276 6963 6520 2d20 4469 7361 626c  Service - Disabl
│ │ │ +00113ba0: 6520 7365 7276 6963 6520 7270 6362 696e  e service rpcbin
│ │ │ +00113bb0: 640a 2020 626c 6f63 6b3a 0a0a 2020 2d20  d.  block:..  - 
│ │ │ +00113bc0: 6e61 6d65 3a20 4469 7361 626c 6520 7270  name: Disable rp
│ │ │ +00113bd0: 6362 696e 6420 5365 7276 6963 6520 2d20  cbind Service - 
│ │ │ +00113be0: 436f 6c6c 6563 7420 7379 7374 656d 6420  Collect systemd 
│ │ │ +00113bf0: 5365 7276 6963 6573 2050 7265 7365 6e74  Services Present
│ │ │ +00113c00: 2069 6e20 7468 6520 5379 7374 656d 0a20   in the System. 
│ │ │ +00113c10: 2020 2061 6e73 6962 6c65 2e62 7569 6c74     ansible.built
│ │ │ +00113c20: 696e 2e63 6f6d 6d61 6e64 3a20 7379 7374  in.command: syst
│ │ │ +00113c30: 656d 6374 6c20 2d71 206c 6973 742d 756e  emctl -q list-un
│ │ │ +00113c40: 6974 2d66 696c 6573 202d 2d74 7970 6520  it-files --type 
│ │ │ +00113c50: 7365 7276 6963 650a 2020 2020 7265 6769  service.    regi
│ │ │ +00113c60: 7374 6572 3a20 7365 7276 6963 655f 6578  ster: service_ex
│ │ │ +00113c70: 6973 7473 0a20 2020 2063 6861 6e67 6564  ists.    changed
│ │ │ +00113c80: 5f77 6865 6e3a 2066 616c 7365 0a20 2020  _when: false.   
│ │ │ +00113c90: 2066 6169 6c65 645f 7768 656e 3a20 7365   failed_when: se
│ │ │ +00113ca0: 7276 6963 655f 6578 6973 7473 2e72 6320  rvice_exists.rc 
│ │ │ +00113cb0: 6e6f 7420 696e 205b 302c 2031 5d0a 2020  not in [0, 1].  
│ │ │ +00113cc0: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661    check_mode: fa
│ │ │ +00113cd0: 6c73 650a 0a20 202d 206e 616d 653a 2044  lse..  - name: D
│ │ │ +00113ce0: 6973 6162 6c65 2072 7063 6269 6e64 2053  isable rpcbind S
│ │ │ +00113cf0: 6572 7669 6365 202d 2045 6e73 7572 6520  ervice - Ensure 
│ │ │ +00113d00: 7270 6362 696e 642e 7365 7276 6963 6520  rpcbind.service 
│ │ │ +00113d10: 6973 204d 6173 6b65 640a 2020 2020 616e  is Masked.    an
│ │ │ +00113d20: 7369 626c 652e 6275 696c 7469 6e2e 7379  sible.builtin.sy
│ │ │ +00113d30: 7374 656d 643a 0a20 2020 2020 206e 616d  stemd:.      nam
│ │ │ +00113d40: 653a 2072 7063 6269 6e64 2e73 6572 7669  e: rpcbind.servi
│ │ │ +00113d50: 6365 0a20 2020 2020 2073 7461 7465 3a20  ce.      state: 
│ │ │ +00113d60: 7374 6f70 7065 640a 2020 2020 2020 656e  stopped.      en
│ │ │ +00113d70: 6162 6c65 643a 2066 616c 7365 0a20 2020  abled: false.   
│ │ │ +00113d80: 2020 206d 6173 6b65 643a 2074 7275 650a     masked: true.
│ │ │ +00113d90: 2020 2020 7768 656e 3a20 7365 7276 6963      when: servic
│ │ │ +00113da0: 655f 6578 6973 7473 2e73 7464 6f75 745f  e_exists.stdout_
│ │ │ +00113db0: 6c69 6e65 7320 6973 2073 6561 7263 6828  lines is search(
│ │ │ +00113dc0: 2272 7063 6269 6e64 2e73 6572 7669 6365  "rpcbind.service
│ │ │ +00113dd0: 222c 206d 756c 7469 6c69 6e65 3d54 7275  ", multiline=Tru
│ │ │ +00113de0: 6529 0a0a 2020 2d20 6e61 6d65 3a20 556e  e)..  - name: Un
│ │ │ +00113df0: 6974 2053 6f63 6b65 7420 4578 6973 7473  it Socket Exists
│ │ │ +00113e00: 202d 2072 7063 6269 6e64 2e73 6f63 6b65   - rpcbind.socke
│ │ │ +00113e10: 740a 2020 2020 616e 7369 626c 652e 6275  t.    ansible.bu
│ │ │ +00113e20: 696c 7469 6e2e 636f 6d6d 616e 643a 2073  iltin.command: s
│ │ │ +00113e30: 7973 7465 6d63 746c 202d 7120 6c69 7374  ystemctl -q list
│ │ │ +00113e40: 2d75 6e69 742d 6669 6c65 7320 7270 6362  -unit-files rpcb
│ │ │ +00113e50: 696e 642e 736f 636b 6574 0a20 2020 2072  ind.socket.    r
│ │ │ +00113e60: 6567 6973 7465 723a 2073 6f63 6b65 745f  egister: socket_
│ │ │ +00113e70: 6669 6c65 5f65 7869 7374 730a 2020 2020  file_exists.    
│ │ │ +00113e80: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ +00113e90: 6c73 650a 2020 2020 6661 696c 6564 5f77  lse.    failed_w
│ │ │ +00113ea0: 6865 6e3a 2073 6f63 6b65 745f 6669 6c65  hen: socket_file
│ │ │ +00113eb0: 5f65 7869 7374 732e 7263 206e 6f74 2069  _exists.rc not i
│ │ │ +00113ec0: 6e20 5b30 2c20 315d 0a20 2020 2063 6865  n [0, 1].    che
│ │ │ +00113ed0: 636b 5f6d 6f64 653a 2066 616c 7365 0a0a  ck_mode: false..
│ │ │ +00113ee0: 2020 2d20 6e61 6d65 3a20 4469 7361 626c    - name: Disabl
│ │ │ +00113ef0: 6520 7270 6362 696e 6420 5365 7276 6963  e rpcbind Servic
│ │ │ +00113f00: 6520 2d20 4469 7361 626c 6520 536f 636b  e - Disable Sock
│ │ │ +00113f10: 6574 2072 7063 6269 6e64 0a20 2020 2061  et rpcbind.    a
│ │ │ +00113f20: 6e73 6962 6c65 2e62 7569 6c74 696e 2e73  nsible.builtin.s
│ │ │ +00113f30: 7973 7465 6d64 3a0a 2020 2020 2020 6e61  ystemd:.      na
│ │ │ +00113f40: 6d65 3a20 7270 6362 696e 642e 736f 636b  me: rpcbind.sock
│ │ │ +00113f50: 6574 0a20 2020 2020 2065 6e61 626c 6564  et.      enabled
│ │ │ +00113f60: 3a20 6661 6c73 650a 2020 2020 2020 7374  : false.      st
│ │ │ +00113f70: 6174 653a 2073 746f 7070 6564 0a20 2020  ate: stopped.   
│ │ │ +00113f80: 2020 206d 6173 6b65 643a 2074 7275 650a     masked: true.
│ │ │ +00113f90: 2020 2020 7768 656e 3a20 736f 636b 6574      when: socket
│ │ │ +00113fa0: 5f66 696c 655f 6578 6973 7473 2e73 7464  _file_exists.std
│ │ │ +00113fb0: 6f75 745f 6c69 6e65 7320 6973 2073 6561  out_lines is sea
│ │ │ +00113fc0: 7263 6828 2272 7063 6269 6e64 2e73 6f63  rch("rpcbind.soc
│ │ │ +00113fd0: 6b65 7422 2c20 6d75 6c74 696c 696e 653d  ket", multiline=
│ │ │ +00113fe0: 5472 7565 290a 2020 7461 6773 3a0a 2020  True).  tags:.  
│ │ │ +00113ff0: 2d20 5043 492d 4453 5376 342d 322e 320a  - PCI-DSSv4-2.2.
│ │ │ +00114000: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ +00114010: 322e 340a 2020 2d20 6469 7361 626c 655f  2.4.  - disable_
│ │ │ +00114020: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ +00114030: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +00114040: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +00114050: 202d 206c 6f77 5f73 6576 6572 6974 790a   - low_severity.
│ │ │ +00114060: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +00114070: 6564 6564 0a20 202d 2073 6572 7669 6365  eded.  - service
│ │ │ +00114080: 5f72 7063 6269 6e64 5f64 6973 6162 6c65  _rpcbind_disable
│ │ │ +00114090: 640a 2020 2d20 7370 6563 6961 6c5f 7365  d.  - special_se
│ │ │ +001140a0: 7276 6963 655f 626c 6f63 6b0a 2020 7768  rvice_block.  wh
│ │ │ +001140b0: 656e 3a20 2722 6b65 726e 656c 2220 696e  en: '"kernel" in
│ │ │ +001140c0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001140d0: 6163 6b61 6765 7327 0a3c 2f63 6f64 653e  ackages'.
│ │ │ +001140e0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +00114190: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ +001141a0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +001141b0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001141c0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001141d0: 7365 2220 6964 3d22 6964 3330 3522 3e3c se" id="id305">< │ │ │ +001141e0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001141f0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +00114200: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +00114210: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +00114220: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +00114230: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +00114240: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ +00114280: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +00114290: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ +001142b0: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ +001142c0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
include d
│ │ │ +001142e0: 6973 6162 6c65 5f72 7063 6269 6e64 0a0a  isable_rpcbind..
│ │ │ +001142f0: 636c 6173 7320 6469 7361 626c 655f 7270  class disable_rp
│ │ │ +00114300: 6362 696e 6420 7b0a 2020 7365 7276 6963  cbind {.  servic
│ │ │ +00114310: 6520 7b27 7270 6362 696e 6427 3a0a 2020  e {'rpcbind':.  
│ │ │ +00114320: 2020 656e 6162 6c65 203d 2667 743b 2066    enable => f
│ │ │ +00114330: 616c 7365 2c0a 2020 2020 656e 7375 7265  alse,.    ensure
│ │ │ +00114340: 203d 2667 743b 2027 7374 6f70 7065 6427   => 'stopped'
│ │ │ +00114350: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ +00114360: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ +00114410: 696f 6e20 4f53 4275 696c 6420 426c 7565 ion OSBuild Blue │ │ │ +00114420: 7072 696e 7420 736e 6970 7065 7420 e287 print snippet .. │ │ │ +00114430: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
.[customizat
│ │ │ +00114480: 696f 6e73 2e73 6572 7669 6365 735d 0a6d  ions.services].m
│ │ │ +00114490: 6173 6b65 6420 3d20 5b22 7270 6362 696e  asked = ["rpcbin
│ │ │ +001144a0: 6422 5d0a 3c2f 636f 6465 3e3c 2f70 7265  d"].
< │ │ │ 001144d0: 2f74 6162 6c65 3e3c 2f74 643e 3c2f 7472 /table>Remedia │ │ │ -001160e0: 7469 6f6e 204f 5342 7569 6c64 2042 6c75 tion OSBuild Blu │ │ │ -001160f0: 6570 7269 6e74 2073 6e69 7070 6574 20e2 eprint snippet . │ │ │ -00116100: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
<
│ │ │ -00116140: 636f 6465 3e0a 5b5b 7061 636b 6167 6573  code>.[[packages
│ │ │ -00116150: 5d5d 0a6e 616d 6520 3d20 2263 6872 6f6e  ]].name = "chron
│ │ │ -00116160: 7922 0a76 6572 7369 6f6e 203d 2022 2a22  y".version = "*"
│ │ │ -00116170: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Pup │ │ │ -00116230: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ -00116240: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -00116310: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00116320: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
i
│ │ │ -00116370: 6e63 6c75 6465 2069 6e73 7461 6c6c 5f63  nclude install_c
│ │ │ -00116380: 6872 6f6e 790a 0a63 6c61 7373 2069 6e73  hrony..class ins
│ │ │ -00116390: 7461 6c6c 5f63 6872 6f6e 7920 7b0a 2020  tall_chrony {.  
│ │ │ -001163a0: 7061 636b 6167 6520 7b20 2763 6872 6f6e  package { 'chron
│ │ │ -001163b0: 7927 3a0a 2020 2020 656e 7375 7265 203d  y':.    ensure =
│ │ │ -001163c0: 2667 743b 2027 696e 7374 616c 6c65 6427  > 'installed'
│ │ │ -001163d0: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ -001163e0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ -00116490: 696f 6e20 416e 7369 626c 6520 736e 6970  ion Ansible snip
│ │ │ -001164a0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c  pet ...
< │ │ │ -001164b0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -001164c0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -001164d0: 7365 2220 6964 3d22 6964 3331 3022 3e3c se" id="id310">< │ │ │ -001164e0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -001164f0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -00116500: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -00116510: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -00116520: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:Strategy: │ │ │ -001165b0: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c < │ │ │ -001165c0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
Complexity:low
Disrup │ │ │ -001162f0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00116300: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00116340: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -00116350: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complex │ │ │ -00116530: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -00116540: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ -00116580: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -00116590: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
enable
- name: G
│ │ │ -001165e0: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ -001165f0: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ -00116600: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ -00116610: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ -00116620: 733a 0a20 202d 2050 4349 2d44 5353 2d52  s:.  - PCI-DSS-R
│ │ │ -00116630: 6571 2d31 302e 340a 2020 2d20 5043 492d  eq-10.4.  - PCI-
│ │ │ -00116640: 4453 5376 342d 3130 2e36 0a20 202d 2050  DSSv4-10.6.  - P
│ │ │ -00116650: 4349 2d44 5353 7634 2d31 302e 362e 310a  CI-DSSv4-10.6.1.
│ │ │ -00116660: 2020 2d20 656e 6162 6c65 5f73 7472 6174    - enable_strat
│ │ │ -00116670: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ -00116680: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -00116690: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -001166a0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -001166b0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -001166c0: 6564 0a20 202d 2070 6163 6b61 6765 5f63  ed.  - package_c
│ │ │ -001166d0: 6872 6f6e 795f 696e 7374 616c 6c65 640a  hrony_installed.
│ │ │ -001166e0: 0a2d 206e 616d 653a 2045 6e73 7572 6520  .- name: Ensure 
│ │ │ -001166f0: 6368 726f 6e79 2069 7320 696e 7374 616c  chrony is instal
│ │ │ -00116700: 6c65 640a 2020 616e 7369 626c 652e 6275  led.  ansible.bu
│ │ │ -00116710: 696c 7469 6e2e 7061 636b 6167 653a 0a20  iltin.package:. 
│ │ │ -00116720: 2020 206e 616d 653a 2063 6872 6f6e 790a     name: chrony.
│ │ │ -00116730: 2020 2020 7374 6174 653a 2070 7265 7365      state: prese
│ │ │ -00116740: 6e74 0a20 2077 6865 6e3a 2027 226b 6572  nt.  when: '"ker
│ │ │ -00116750: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -00116760: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ -00116770: 2020 7461 6773 3a0a 2020 2d20 5043 492d    tags:.  - PCI-
│ │ │ -00116780: 4453 532d 5265 712d 3130 2e34 0a20 202d  DSS-Req-10.4.  -
│ │ │ -00116790: 2050 4349 2d44 5353 7634 2d31 302e 360a   PCI-DSSv4-10.6.
│ │ │ -001167a0: 2020 2d20 5043 492d 4453 5376 342d 3130    - PCI-DSSv4-10
│ │ │ -001167b0: 2e36 2e31 0a20 202d 2065 6e61 626c 655f  .6.1.  - enable_
│ │ │ -001167c0: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ -001167d0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001167e0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -001167f0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -00116800: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ -00116810: 5f6e 6565 6465 640a 2020 2d20 7061 636b  _needed.  - pack
│ │ │ -00116820: 6167 655f 6368 726f 6e79 5f69 6e73 7461  age_chrony_insta
│ │ │ -00116830: 6c6c 6564 0a3c 2f63 6f64 653e 3c2f 7072  lled.
│ │ │ +00116100: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +00116130: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +001161a0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +001161c0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +001161f0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ +00116210: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ +00116180: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +00116190: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +001161d0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001161e0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
- name: │ │ │ +00116230: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ +00116240: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ +00116250: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ +00116260: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ +00116270: 6773 3a0a 2020 2d20 5043 492d 4453 532d gs:. - PCI-DSS- │ │ │ +00116280: 5265 712d 3130 2e34 0a20 202d 2050 4349 Req-10.4. - PCI │ │ │ +00116290: 2d44 5353 7634 2d31 302e 360a 2020 2d20 -DSSv4-10.6. - │ │ │ +001162a0: 5043 492d 4453 5376 342d 3130 2e36 2e31 PCI-DSSv4-10.6.1 │ │ │ +001162b0: 0a20 202d 2065 6e61 626c 655f 7374 7261 . - enable_stra │ │ │ +001162c0: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d tegy. - low_com │ │ │ +001162d0: 706c 6578 6974 790a 2020 2d20 6c6f 775f plexity. - low_ │ │ │ +001162e0: 6469 7372 7570 7469 6f6e 0a20 202d 206d disruption. - m │ │ │ +001162f0: 6564 6975 6d5f 7365 7665 7269 7479 0a20 edium_severity. │ │ │ +00116300: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ +00116310: 6465 640a 2020 2d20 7061 636b 6167 655f ded. - package_ │ │ │ +00116320: 6368 726f 6e79 5f69 6e73 7461 6c6c 6564 chrony_installed │ │ │ +00116330: 0a0a 2d20 6e61 6d65 3a20 456e 7375 7265 ..- name: Ensure │ │ │ +00116340: 2063 6872 6f6e 7920 6973 2069 6e73 7461 chrony is insta │ │ │ +00116350: 6c6c 6564 0a20 2061 6e73 6962 6c65 2e62 lled. ansible.b │ │ │ +00116360: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a uiltin.package:. │ │ │ +00116370: 2020 2020 6e61 6d65 3a20 6368 726f 6e79 name: chrony │ │ │ +00116380: 0a20 2020 2073 7461 7465 3a20 7072 6573 . state: pres │ │ │ +00116390: 656e 740a 2020 7768 656e 3a20 2722 6b65 ent. when: '"ke │ │ │ +001163a0: 726e 656c 2220 696e 2061 6e73 6962 6c65 rnel" in ansible │ │ │ +001163b0: 5f66 6163 7473 2e70 6163 6b61 6765 7327 _facts.packages' │ │ │ +001163c0: 0a20 2074 6167 733a 0a20 202d 2050 4349 . tags:. - PCI │ │ │ +001163d0: 2d44 5353 2d52 6571 2d31 302e 340a 2020 -DSS-Req-10.4. │ │ │ +001163e0: 2d20 5043 492d 4453 5376 342d 3130 2e36 - PCI-DSSv4-10.6 │ │ │ +001163f0: 0a20 202d 2050 4349 2d44 5353 7634 2d31 . - PCI-DSSv4-1 │ │ │ +00116400: 302e 362e 310a 2020 2d20 656e 6162 6c65 0.6.1. - enable │ │ │ +00116410: 5f73 7472 6174 6567 790a 2020 2d20 6c6f _strategy. - lo │ │ │ +00116420: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ +00116430: 206c 6f77 5f64 6973 7275 7074 696f 6e0a low_disruption. │ │ │ +00116440: 2020 2d20 6d65 6469 756d 5f73 6576 6572 - medium_sever │ │ │ +00116450: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f ity. - no_reboo │ │ │ +00116460: 745f 6e65 6564 6564 0a20 202d 2070 6163 t_needed. - pac │ │ │ +00116470: 6b61 6765 5f63 6872 6f6e 795f 696e 7374 kage_chrony_inst │ │ │ +00116480: 616c 6c65 640a 3c2f 636f 6465 3e3c 2f70 alled.

Remediatio │ │ │ +00116540: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ +00116550: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ +001165e0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +00116600: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +00116610: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00116620: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +00116630: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +00116650: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
include inst
│ │ │ +00116690: 616c 6c5f 6368 726f 6e79 0a0a 636c 6173  all_chrony..clas
│ │ │ +001166a0: 7320 696e 7374 616c 6c5f 6368 726f 6e79  s install_chrony
│ │ │ +001166b0: 207b 0a20 2070 6163 6b61 6765 207b 2027   {.  package { '
│ │ │ +001166c0: 6368 726f 6e79 273a 0a20 2020 2065 6e73  chrony':.    ens
│ │ │ +001166d0: 7572 6520 3d26 6774 3b20 2769 6e73 7461  ure => 'insta
│ │ │ +001166e0: 6c6c 6564 272c 0a20 207d 0a7d 0a3c 2f63  lled',.  }.}.
│ │ │ +00116700: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +001167a0: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ +001167b0: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ +001167c0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...

.[[pack │ │ │ +00116810: 6167 6573 5d5d 0a6e 616d 6520 3d20 2263 ages]].name = "c │ │ │ +00116820: 6872 6f6e 7922 0a76 6572 7369 6f6e 203d hrony".version = │ │ │ +00116830: 2022 2a22 0a3c 2f63 6f64 653e 3c2f 7072 "*".

│ │ │ 00116860: 3c2f 7461 626c 653e 3c2f 7464 3e3c 2f74 Remediation │ │ │ -00118980: 4f53 4275 696c 6420 426c 7565 7072 696e OSBuild Blueprin │ │ │ -00118990: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...

│ │ │ -001189e0: 0a5b 6375 7374 6f6d 697a 6174 696f 6e73  .[customizations
│ │ │ -001189f0: 2e73 6572 7669 6365 735d 0a65 6e61 626c  .services].enabl
│ │ │ -00118a00: 6564 203d 205b 226e 7470 6422 5d0a 3c2f  ed = ["ntpd"].
Re │ │ │ -00118ac0: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ -00118ad0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -00118ae0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -00118b80: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -00118bd0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ -00118b60: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -00118b90: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -00118bb0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -00118bc0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -00118be0: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -00118bf0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
incl
│ │ │ -00118c10: 7564 6520 656e 6162 6c65 5f6e 7470 640a  ude enable_ntpd.
│ │ │ -00118c20: 0a63 6c61 7373 2065 6e61 626c 655f 6e74  .class enable_nt
│ │ │ -00118c30: 7064 207b 0a20 2073 6572 7669 6365 207b  pd {.  service {
│ │ │ -00118c40: 276e 7470 6427 3a0a 2020 2020 656e 6162  'ntpd':.    enab
│ │ │ -00118c50: 6c65 203d 2667 743b 2074 7275 652c 0a20  le => true,. 
│ │ │ -00118c60: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ -00118c70: 2772 756e 6e69 6e67 272c 0a20 207d 0a7d  'running',.  }.}
│ │ │ -00118c80: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Ans │ │ │ -00118d40: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ -00118d50: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -00118e20: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -00118e30: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -00118e80: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ -00118e90: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ -00118ea0: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ -00118eb0: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ -00118ec0: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ -00118ed0: 4e49 5354 2d38 3030 2d35 332d 4155 2d38  NIST-800-53-AU-8
│ │ │ -00118ee0: 2831 2928 6129 0a20 202d 204e 4953 542d  (1)(a).  - NIST-
│ │ │ -00118ef0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -00118f00: 202d 2050 4349 2d44 5353 2d52 6571 2d31   - PCI-DSS-Req-1
│ │ │ -00118f10: 302e 340a 2020 2d20 5043 492d 4453 5376  0.4.  - PCI-DSSv
│ │ │ -00118f20: 342d 3130 2e36 0a20 202d 2050 4349 2d44  4-10.6.  - PCI-D
│ │ │ -00118f30: 5353 7634 2d31 302e 362e 310a 2020 2d20  SSv4-10.6.1.  - 
│ │ │ -00118f40: 656e 6162 6c65 5f73 7472 6174 6567 790a  enable_strategy.
│ │ │ -00118f50: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -00118f60: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ -00118f70: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ -00118f80: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ -00118f90: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ -00118fa0: 202d 2073 6572 7669 6365 5f6e 7470 645f   - service_ntpd_
│ │ │ -00118fb0: 656e 6162 6c65 640a 0a2d 206e 616d 653a  enabled..- name:
│ │ │ -00118fc0: 2045 6e61 626c 6520 7468 6520 4e54 5020   Enable the NTP 
│ │ │ -00118fd0: 4461 656d 6f6e 202d 2045 6e61 626c 6520  Daemon - Enable 
│ │ │ -00118fe0: 7365 7276 6963 6520 6e74 7064 0a20 2062  service ntpd.  b
│ │ │ -00118ff0: 6c6f 636b 3a0a 0a20 202d 206e 616d 653a  lock:..  - name:
│ │ │ -00119000: 2047 6174 6865 7220 7468 6520 7061 636b   Gather the pack
│ │ │ -00119010: 6167 6520 6661 6374 730a 2020 2020 616e  age facts.    an
│ │ │ -00119020: 7369 626c 652e 6275 696c 7469 6e2e 7061  sible.builtin.pa
│ │ │ -00119030: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ -00119040: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ -00119050: 0a0a 2020 2d20 6e61 6d65 3a20 456e 6162  ..  - name: Enab
│ │ │ -00119060: 6c65 2074 6865 204e 5450 2044 6165 6d6f  le the NTP Daemo
│ │ │ -00119070: 6e20 2d20 456e 6162 6c65 2053 6572 7669  n - Enable Servi
│ │ │ -00119080: 6365 206e 7470 640a 2020 2020 616e 7369  ce ntpd.    ansi
│ │ │ -00119090: 626c 652e 6275 696c 7469 6e2e 7379 7374  ble.builtin.syst
│ │ │ -001190a0: 656d 643a 0a20 2020 2020 206e 616d 653a  emd:.      name:
│ │ │ -001190b0: 206e 7470 640a 2020 2020 2020 656e 6162   ntpd.      enab
│ │ │ -001190c0: 6c65 643a 2074 7275 650a 2020 2020 2020  led: true.      
│ │ │ -001190d0: 7374 6174 653a 2073 7461 7274 6564 0a20  state: started. 
│ │ │ -001190e0: 2020 2020 206d 6173 6b65 643a 2066 616c       masked: fal
│ │ │ -001190f0: 7365 0a20 2020 2077 6865 6e3a 0a20 2020  se.    when:.   
│ │ │ -00119100: 202d 2027 226e 7470 2220 696e 2061 6e73   - '"ntp" in ans
│ │ │ -00119110: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -00119120: 6765 7327 0a20 2074 6167 733a 0a20 202d  ges'.  tags:.  -
│ │ │ -00119130: 204e 4953 542d 3830 302d 3533 2d41 552d   NIST-800-53-AU-
│ │ │ -00119140: 3828 3129 2861 290a 2020 2d20 4e49 5354  8(1)(a).  - NIST
│ │ │ -00119150: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -00119160: 2020 2d20 5043 492d 4453 532d 5265 712d    - PCI-DSS-Req-
│ │ │ -00119170: 3130 2e34 0a20 202d 2050 4349 2d44 5353  10.4.  - PCI-DSS
│ │ │ -00119180: 7634 2d31 302e 360a 2020 2d20 5043 492d  v4-10.6.  - PCI-
│ │ │ -00119190: 4453 5376 342d 3130 2e36 2e31 0a20 202d  DSSv4-10.6.1.  -
│ │ │ -001191a0: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ -001191b0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001191c0: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ -001191d0: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ -001191e0: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ -001191f0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -00119200: 2020 2d20 7365 7276 6963 655f 6e74 7064    - service_ntpd
│ │ │ -00119210: 5f65 6e61 626c 6564 0a20 202d 2073 7065  _enabled.  - spe
│ │ │ -00119220: 6369 616c 5f73 6572 7669 6365 5f62 6c6f  cial_service_blo
│ │ │ -00119230: 636b 0a20 2077 6865 6e3a 0a20 202d 2027  ck.  when:.  - '
│ │ │ -00119240: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -00119250: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -00119260: 6573 270a 2020 2d20 2722 6e74 7022 2069  es'.  - '"ntp" i
│ │ │ -00119270: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -00119280: 7061 636b 6167 6573 270a 3c2f 636f 6465  packages'.
low< │ │ │ +00118a60: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ +00118ab0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
low
Disru │ │ │ -00118e00: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -00118e10: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -00118e50: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -00118e60: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexity: │ │ │ +00118a20: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ +00118a40: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:false
St │ │ │ +00118a90: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +00118aa0: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable
- name: Gathe
│ │ │ +00118ad0: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ +00118ae0: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ +00118af0: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ +00118b00: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ +00118b10: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +00118b20: 552d 3828 3129 2861 290a 2020 2d20 4e49  U-8(1)(a).  - NI
│ │ │ +00118b30: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +00118b40: 290a 2020 2d20 5043 492d 4453 532d 5265  ).  - PCI-DSS-Re
│ │ │ +00118b50: 712d 3130 2e34 0a20 202d 2050 4349 2d44  q-10.4.  - PCI-D
│ │ │ +00118b60: 5353 7634 2d31 302e 360a 2020 2d20 5043  SSv4-10.6.  - PC
│ │ │ +00118b70: 492d 4453 5376 342d 3130 2e36 2e31 0a20  I-DSSv4-10.6.1. 
│ │ │ +00118b80: 202d 2065 6e61 626c 655f 7374 7261 7465   - enable_strate
│ │ │ +00118b90: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ +00118ba0: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ +00118bb0: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ +00118bc0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +00118bd0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +00118be0: 640a 2020 2d20 7365 7276 6963 655f 6e74  d.  - service_nt
│ │ │ +00118bf0: 7064 5f65 6e61 626c 6564 0a0a 2d20 6e61  pd_enabled..- na
│ │ │ +00118c00: 6d65 3a20 456e 6162 6c65 2074 6865 204e  me: Enable the N
│ │ │ +00118c10: 5450 2044 6165 6d6f 6e20 2d20 456e 6162  TP Daemon - Enab
│ │ │ +00118c20: 6c65 2073 6572 7669 6365 206e 7470 640a  le service ntpd.
│ │ │ +00118c30: 2020 626c 6f63 6b3a 0a0a 2020 2d20 6e61    block:..  - na
│ │ │ +00118c40: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ +00118c50: 6163 6b61 6765 2066 6163 7473 0a20 2020  ackage facts.   
│ │ │ +00118c60: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +00118c70: 2e70 6163 6b61 6765 5f66 6163 7473 3a0a  .package_facts:.
│ │ │ +00118c80: 2020 2020 2020 6d61 6e61 6765 723a 2061        manager: a
│ │ │ +00118c90: 7574 6f0a 0a20 202d 206e 616d 653a 2045  uto..  - name: E
│ │ │ +00118ca0: 6e61 626c 6520 7468 6520 4e54 5020 4461  nable the NTP Da
│ │ │ +00118cb0: 656d 6f6e 202d 2045 6e61 626c 6520 5365  emon - Enable Se
│ │ │ +00118cc0: 7276 6963 6520 6e74 7064 0a20 2020 2061  rvice ntpd.    a
│ │ │ +00118cd0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e73  nsible.builtin.s
│ │ │ +00118ce0: 7973 7465 6d64 3a0a 2020 2020 2020 6e61  ystemd:.      na
│ │ │ +00118cf0: 6d65 3a20 6e74 7064 0a20 2020 2020 2065  me: ntpd.      e
│ │ │ +00118d00: 6e61 626c 6564 3a20 7472 7565 0a20 2020  nabled: true.   
│ │ │ +00118d10: 2020 2073 7461 7465 3a20 7374 6172 7465     state: starte
│ │ │ +00118d20: 640a 2020 2020 2020 6d61 736b 6564 3a20  d.      masked: 
│ │ │ +00118d30: 6661 6c73 650a 2020 2020 7768 656e 3a0a  false.    when:.
│ │ │ +00118d40: 2020 2020 2d20 2722 6e74 7022 2069 6e20      - '"ntp" in 
│ │ │ +00118d50: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +00118d60: 636b 6167 6573 270a 2020 7461 6773 3a0a  ckages'.  tags:.
│ │ │ +00118d70: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +00118d80: 4155 2d38 2831 2928 6129 0a20 202d 204e  AU-8(1)(a).  - N
│ │ │ +00118d90: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +00118da0: 6129 0a20 202d 2050 4349 2d44 5353 2d52  a).  - PCI-DSS-R
│ │ │ +00118db0: 6571 2d31 302e 340a 2020 2d20 5043 492d  eq-10.4.  - PCI-
│ │ │ +00118dc0: 4453 5376 342d 3130 2e36 0a20 202d 2050  DSSv4-10.6.  - P
│ │ │ +00118dd0: 4349 2d44 5353 7634 2d31 302e 362e 310a  CI-DSSv4-10.6.1.
│ │ │ +00118de0: 2020 2d20 656e 6162 6c65 5f73 7472 6174    - enable_strat
│ │ │ +00118df0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +00118e00: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +00118e10: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +00118e20: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +00118e30: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +00118e40: 6564 0a20 202d 2073 6572 7669 6365 5f6e  ed.  - service_n
│ │ │ +00118e50: 7470 645f 656e 6162 6c65 640a 2020 2d20  tpd_enabled.  - 
│ │ │ +00118e60: 7370 6563 6961 6c5f 7365 7276 6963 655f  special_service_
│ │ │ +00118e70: 626c 6f63 6b0a 2020 7768 656e 3a0a 2020  block.  when:.  
│ │ │ +00118e80: 2d20 2722 6b65 726e 656c 2220 696e 2061  - '"kernel" in a
│ │ │ +00118e90: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +00118ea0: 6b61 6765 7327 0a20 202d 2027 226e 7470  kages'.  - '"ntp
│ │ │ +00118eb0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +00118ec0: 7473 2e70 6163 6b61 6765 7327 0a3c 2f63  ts.packages'.
│ │ │ +00118ee0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +00118f80: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ +00118f90: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +00118fa0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ +00119020: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +00119050: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +00119070: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +00119080: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +001190a0: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ +001190c0: 3c70 7265 3e3c 636f 6465 3e69 6e63 6c75
inclu
│ │ │ +001190d0: 6465 2065 6e61 626c 655f 6e74 7064 0a0a  de enable_ntpd..
│ │ │ +001190e0: 636c 6173 7320 656e 6162 6c65 5f6e 7470  class enable_ntp
│ │ │ +001190f0: 6420 7b0a 2020 7365 7276 6963 6520 7b27  d {.  service {'
│ │ │ +00119100: 6e74 7064 273a 0a20 2020 2065 6e61 626c  ntpd':.    enabl
│ │ │ +00119110: 6520 3d26 6774 3b20 7472 7565 2c0a 2020  e => true,.  
│ │ │ +00119120: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ +00119130: 7275 6e6e 696e 6727 2c0a 2020 7d0a 7d0a  running',.  }.}.
│ │ │ +00119140: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +001191f0: 5265 6d65 6469 6174 696f 6e20 4f53 4275 Remediation OSBu │ │ │ +00119200: 696c 6420 426c 7565 7072 696e 7420 736e ild Blueprint sn │ │ │ +00119210: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
.[cu
│ │ │ +00119260: 7374 6f6d 697a 6174 696f 6e73 2e73 6572  stomizations.ser
│ │ │ +00119270: 7669 6365 735d 0a65 6e61 626c 6564 203d  vices].enabled =
│ │ │ +00119280: 205b 226e 7470 6422 5d0a 3c2f 636f 6465   ["ntpd"].
Reme │ │ │ -0011f7e0: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ -0011f7f0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -0011f880: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -0011f890: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -0011f8b0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -0011f8d0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -0011f8e0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -0011f920: 3c70 7265 3e3c 636f 6465 3e0a 696e 636c
.incl
│ │ │ -0011f930: 7564 6520 7265 6d6f 7665 5f79 7062 696e  ude remove_ypbin
│ │ │ -0011f940: 640a 0a63 6c61 7373 2072 656d 6f76 655f  d..class remove_
│ │ │ -0011f950: 7970 6269 6e64 207b 0a20 2070 6163 6b61  ypbind {.  packa
│ │ │ -0011f960: 6765 207b 2027 7970 6269 6e64 273a 0a20  ge { 'ypbind':. 
│ │ │ -0011f970: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ -0011f980: 2770 7572 6765 6427 2c0a 2020 7d0a 7d0a  'purged',.  }.}.
│ │ │ -0011f990: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -0011fa40: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -0011fa50: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -0011fa60: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -0011fb30: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0011fb40: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -0011fb90: 2d20 6e61 6d65 3a20 2752 656d 6f76 6520  - name: 'Remove 
│ │ │ -0011fba0: 4e49 5320 436c 6965 6e74 3a20 456e 7375  NIS Client: Ensu
│ │ │ -0011fbb0: 7265 2079 7062 696e 6420 6973 2072 656d  re ypbind is rem
│ │ │ -0011fbc0: 6f76 6564 270a 2020 616e 7369 626c 652e  oved'.  ansible.
│ │ │ -0011fbd0: 6275 696c 7469 6e2e 7061 636b 6167 653a  builtin.package:
│ │ │ -0011fbe0: 0a20 2020 206e 616d 653a 2079 7062 696e  .    name: ypbin
│ │ │ -0011fbf0: 640a 2020 2020 7374 6174 653a 2061 6273  d.    state: abs
│ │ │ -0011fc00: 656e 740a 2020 7461 6773 3a0a 2020 2d20  ent.  tags:.  - 
│ │ │ -0011fc10: 5043 492d 4453 5376 342d 322e 320a 2020  PCI-DSSv4-2.2.  
│ │ │ -0011fc20: 2d20 5043 492d 4453 5376 342d 322e 322e  - PCI-DSSv4-2.2.
│ │ │ -0011fc30: 340a 2020 2d20 6469 7361 626c 655f 7374  4.  - disable_st
│ │ │ -0011fc40: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ -0011fc50: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -0011fc60: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -0011fc70: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -0011fc80: 640a 2020 2d20 7061 636b 6167 655f 7970  d.  - package_yp
│ │ │ -0011fc90: 6269 6e64 5f72 656d 6f76 6564 0a20 202d  bind_removed.  -
│ │ │ -0011fca0: 2075 6e6b 6e6f 776e 5f73 6576 6572 6974   unknown_severit
│ │ │ -0011fcb0: 790a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  y.
< │ │ │ +0011f7e0: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ +0011f7f0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +0011f800: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Complexity:low
Disrup │ │ │ -0011fb10: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0011fb20: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0011fb60: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -0011fb70: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Com │ │ │ +0011f880: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +0011f8b0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +0011f8d0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +0011f8e0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +0011f900: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +0011f910: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ +0011f930: 6d65 3a20 2752 656d 6f76 6520 4e49 5320  me: 'Remove NIS 
│ │ │ +0011f940: 436c 6965 6e74 3a20 456e 7375 7265 2079  Client: Ensure y
│ │ │ +0011f950: 7062 696e 6420 6973 2072 656d 6f76 6564  pbind is removed
│ │ │ +0011f960: 270a 2020 616e 7369 626c 652e 6275 696c  '.  ansible.buil
│ │ │ +0011f970: 7469 6e2e 7061 636b 6167 653a 0a20 2020  tin.package:.   
│ │ │ +0011f980: 206e 616d 653a 2079 7062 696e 640a 2020   name: ypbind.  
│ │ │ +0011f990: 2020 7374 6174 653a 2061 6273 656e 740a    state: absent.
│ │ │ +0011f9a0: 2020 7461 6773 3a0a 2020 2d20 5043 492d    tags:.  - PCI-
│ │ │ +0011f9b0: 4453 5376 342d 322e 320a 2020 2d20 5043  DSSv4-2.2.  - PC
│ │ │ +0011f9c0: 492d 4453 5376 342d 322e 322e 340a 2020  I-DSSv4-2.2.4.  
│ │ │ +0011f9d0: 2d20 6469 7361 626c 655f 7374 7261 7465  - disable_strate
│ │ │ +0011f9e0: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ +0011f9f0: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ +0011fa00: 7372 7570 7469 6f6e 0a20 202d 206e 6f5f  sruption.  - no_
│ │ │ +0011fa10: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ +0011fa20: 2d20 7061 636b 6167 655f 7970 6269 6e64  - package_ypbind
│ │ │ +0011fa30: 5f72 656d 6f76 6564 0a20 202d 2075 6e6b  _removed.  - unk
│ │ │ +0011fa40: 6e6f 776e 5f73 6576 6572 6974 790a 3c2f  nown_severity.
Re │ │ │ +0011fb00: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ +0011fb10: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +0011fb20: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +0011fbc0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0011fc10: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.in
│ │ │ +0011fc50: 636c 7564 6520 7265 6d6f 7665 5f79 7062  clude remove_ypb
│ │ │ +0011fc60: 696e 640a 0a63 6c61 7373 2072 656d 6f76  ind..class remov
│ │ │ +0011fc70: 655f 7970 6269 6e64 207b 0a20 2070 6163  e_ypbind {.  pac
│ │ │ +0011fc80: 6b61 6765 207b 2027 7970 6269 6e64 273a  kage { 'ypbind':
│ │ │ +0011fc90: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ +0011fca0: 3b20 2770 7572 6765 6427 2c0a 2020 7d0a  ; 'purged',.  }.
│ │ │ +0011fcb0: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ 0011fcc0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>R │ │ │ -00120ed0: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ -00120ee0: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
Co │ │ │ +0011fba0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0011fbd0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0011fbf0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0011fc00: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0011fc20: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +0011fc30: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ -00120f80: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00120f90: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -00120fe0: 3c74 723e 3c74 683e 5374 7261 7465 6779
.i
│ │ │ -00121020: 6e63 6c75 6465 2072 656d 6f76 655f 7273  nclude remove_rs
│ │ │ -00121030: 680a 0a63 6c61 7373 2072 656d 6f76 655f  h..class remove_
│ │ │ -00121040: 7273 6820 7b0a 2020 7061 636b 6167 6520  rsh {.  package 
│ │ │ -00121050: 7b20 2772 7368 273a 0a20 2020 2065 6e73  { 'rsh':.    ens
│ │ │ -00121060: 7572 6520 3d26 6774 3b20 2770 7572 6765  ure => 'purge
│ │ │ -00121070: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  d',.  }.}.
Remedi │ │ │ -00121130: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -00121140: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
C │ │ │ -00120f70: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -00120fa0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -00120fb0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -00120ff0: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ -00121000: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ -001211f0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -00121210: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -00121240: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -001211d0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -001211e0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00121200: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -00121220: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -00121230: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -00121270: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -00121280: 3a20 2755 6e69 6e73 7461 6c6c 2072 7368 : 'Uninstall rsh │ │ │ -00121290: 2050 6163 6b61 6765 3a20 456e 7375 7265 Package: Ensure │ │ │ -001212a0: 2072 7368 2069 7320 7265 6d6f 7665 6427 rsh is removed' │ │ │ -001212b0: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74 . ansible.built │ │ │ -001212c0: 696e 2e70 6163 6b61 6765 3a0a 2020 2020 in.package:. │ │ │ -001212d0: 6e61 6d65 3a20 7273 680a 2020 2020 7374 name: rsh. st │ │ │ -001212e0: 6174 653a 2061 6273 656e 740a 2020 7461 ate: absent. ta │ │ │ -001212f0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ -00121300: 2d31 3731 2d33 2e31 2e31 330a 2020 2d20 -171-3.1.13. - │ │ │ -00121310: 5043 492d 4453 5376 342d 322e 320a 2020 PCI-DSSv4-2.2. │ │ │ -00121320: 2d20 5043 492d 4453 5376 342d 322e 322e - PCI-DSSv4-2.2. │ │ │ -00121330: 340a 2020 2d20 6469 7361 626c 655f 7374 4. - disable_st │ │ │ -00121340: 7261 7465 6779 0a20 202d 206c 6f77 5f63 rategy. - low_c │ │ │ -00121350: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f omplexity. - lo │ │ │ -00121360: 775f 6469 7372 7570 7469 6f6e 0a20 202d w_disruption. - │ │ │ -00121370: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ -00121380: 640a 2020 2d20 7061 636b 6167 655f 7273 d. - package_rs │ │ │ -00121390: 685f 7265 6d6f 7665 640a 2020 2d20 756e h_removed. - un │ │ │ -001213a0: 6b6e 6f77 6e5f 7365 7665 7269 7479 0a3c known_severity.< │ │ │ +00120ed0: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ +00120ee0: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
│ │ │ +00120f80: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ +00121020: 206e 616d 653a 2027 556e 696e 7374 616c   name: 'Uninstal
│ │ │ +00121030: 6c20 7273 6820 5061 636b 6167 653a 2045  l rsh Package: E
│ │ │ +00121040: 6e73 7572 6520 7273 6820 6973 2072 656d  nsure rsh is rem
│ │ │ +00121050: 6f76 6564 270a 2020 616e 7369 626c 652e  oved'.  ansible.
│ │ │ +00121060: 6275 696c 7469 6e2e 7061 636b 6167 653a  builtin.package:
│ │ │ +00121070: 0a20 2020 206e 616d 653a 2072 7368 0a20  .    name: rsh. 
│ │ │ +00121080: 2020 2073 7461 7465 3a20 6162 7365 6e74     state: absent
│ │ │ +00121090: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +001210a0: 542d 3830 302d 3137 312d 332e 312e 3133  T-800-171-3.1.13
│ │ │ +001210b0: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ +001210c0: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ +001210d0: 2d32 2e32 2e34 0a20 202d 2064 6973 6162  -2.2.4.  - disab
│ │ │ +001210e0: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ +001210f0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +00121100: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +00121110: 6e0a 2020 2d20 6e6f 5f72 6562 6f6f 745f  n.  - no_reboot_
│ │ │ +00121120: 6e65 6564 6564 0a20 202d 2070 6163 6b61  needed.  - packa
│ │ │ +00121130: 6765 5f72 7368 5f72 656d 6f76 6564 0a20  ge_rsh_removed. 
│ │ │ +00121140: 202d 2075 6e6b 6e6f 776e 5f73 6576 6572   - unknown_sever
│ │ │ +00121150: 6974 790a 3c2f 636f 6465 3e3c 2f70 7265  ity.
Remediation │ │ │ +00121210: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ +00121220: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +00120f70: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00120fa0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00120fb0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00120ff0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +00121000: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
│ │ │ +001212a0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +001212c0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +00121310: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +00121340: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +001212b0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +001212d0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +00121320: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +00121330: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.include remo
│ │ │ +00121360: 7665 5f72 7368 0a0a 636c 6173 7320 7265  ve_rsh..class re
│ │ │ +00121370: 6d6f 7665 5f72 7368 207b 0a20 2070 6163  move_rsh {.  pac
│ │ │ +00121380: 6b61 6765 207b 2027 7273 6827 3a0a 2020  kage { 'rsh':.  
│ │ │ +00121390: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ +001213a0: 7075 7267 6564 272c 0a20 207d 0a7d 0a3c  purged',.  }.}.<
│ │ │  001213b0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Remediation P │ │ │ -00122410: 7570 7065 7420 736e 6970 7065 7420 e287 uppet snippet .. │ │ │ -00122420: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -001224a0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -001224c0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -00122510: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -00122540: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.include remov
│ │ │ -00122560: 655f 7461 6c6b 2d73 6572 7665 720a 0a63  e_talk-server..c
│ │ │ -00122570: 6c61 7373 2072 656d 6f76 655f 7461 6c6b  lass remove_talk
│ │ │ -00122580: 2d73 6572 7665 7220 7b0a 2020 7061 636b  -server {.  pack
│ │ │ -00122590: 6167 6520 7b20 2774 616c 6b2d 7365 7276  age { 'talk-serv
│ │ │ -001225a0: 6572 273a 0a20 2020 2065 6e73 7572 6520  er':.    ensure 
│ │ │ -001225b0: 3d26 6774 3b20 2770 7572 6765 6427 2c0a  => 'purged',.
│ │ │ -001225c0: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediatio │ │ │ -00122680: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ -00122690: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -00122710: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ -00122750: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 disable
low
Disr │ │ │ -001224d0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -001224e0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -00122520: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -00122530: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Complexit │ │ │ -00122720: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ -00122740: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ -00122770: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ -00122790: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
│ │ │ -001227c0: 3c63 6f64 653e 2d20 6e61 6d65 3a20 2755  - name: 'U
│ │ │ -001227d0: 6e69 6e73 7461 6c6c 2074 616c 6b2d 7365  ninstall talk-se
│ │ │ -001227e0: 7276 6572 2050 6163 6b61 6765 3a20 456e  rver Package: En
│ │ │ -001227f0: 7375 7265 2074 616c 6b2d 7365 7276 6572  sure talk-server
│ │ │ -00122800: 2069 7320 7265 6d6f 7665 6427 0a20 2061   is removed'.  a
│ │ │ -00122810: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ -00122820: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ -00122830: 3a20 7461 6c6b 2d73 6572 7665 720a 2020  : talk-server.  
│ │ │ -00122840: 2020 7374 6174 653a 2061 6273 656e 740a    state: absent.
│ │ │ -00122850: 2020 7461 6773 3a0a 2020 2d20 5043 492d    tags:.  - PCI-
│ │ │ -00122860: 4453 5376 342d 322e 320a 2020 2d20 5043  DSSv4-2.2.  - PC
│ │ │ -00122870: 492d 4453 5376 342d 322e 322e 340a 2020  I-DSSv4-2.2.4.  
│ │ │ -00122880: 2d20 6469 7361 626c 655f 7374 7261 7465  - disable_strate
│ │ │ -00122890: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ -001228a0: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ -001228b0: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ -001228c0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001228d0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -001228e0: 640a 2020 2d20 7061 636b 6167 655f 7461  d.  - package_ta
│ │ │ -001228f0: 6c6b 2d73 6572 7665 725f 7265 6d6f 7665  lk-server_remove
│ │ │ -00122900: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ +00122400: 2122 3e52 656d 6564 6961 7469 6f6e 2041 !">Remediation A │ │ │ +00122410: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ +00122420: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +001224a0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +001224c0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +00122510: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +00122540: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +001224b0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +001224d0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +00122520: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +00122530: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
- name: 'Unin
│ │ │ +00122560: 7374 616c 6c20 7461 6c6b 2d73 6572 7665  stall talk-serve
│ │ │ +00122570: 7220 5061 636b 6167 653a 2045 6e73 7572  r Package: Ensur
│ │ │ +00122580: 6520 7461 6c6b 2d73 6572 7665 7220 6973  e talk-server is
│ │ │ +00122590: 2072 656d 6f76 6564 270a 2020 616e 7369   removed'.  ansi
│ │ │ +001225a0: 626c 652e 6275 696c 7469 6e2e 7061 636b  ble.builtin.pack
│ │ │ +001225b0: 6167 653a 0a20 2020 206e 616d 653a 2074  age:.    name: t
│ │ │ +001225c0: 616c 6b2d 7365 7276 6572 0a20 2020 2073  alk-server.    s
│ │ │ +001225d0: 7461 7465 3a20 6162 7365 6e74 0a20 2074  tate: absent.  t
│ │ │ +001225e0: 6167 733a 0a20 202d 2050 4349 2d44 5353  ags:.  - PCI-DSS
│ │ │ +001225f0: 7634 2d32 2e32 0a20 202d 2050 4349 2d44  v4-2.2.  - PCI-D
│ │ │ +00122600: 5353 7634 2d32 2e32 2e34 0a20 202d 2064  SSv4-2.2.4.  - d
│ │ │ +00122610: 6973 6162 6c65 5f73 7472 6174 6567 790a  isable_strategy.
│ │ │ +00122620: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +00122630: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ +00122640: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ +00122650: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ +00122660: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ +00122670: 202d 2070 6163 6b61 6765 5f74 616c 6b2d   - package_talk-
│ │ │ +00122680: 7365 7276 6572 5f72 656d 6f76 6564 0a3c  server_removed.<
│ │ │ +00122690: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +00122740: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ +00122750: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
< │ │ │ +001227f0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00122800: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +00122850: 3c74 723e 3c74 683e 5374 7261 7465 6779
.i
│ │ │ +00122890: 6e63 6c75 6465 2072 656d 6f76 655f 7461  nclude remove_ta
│ │ │ +001228a0: 6c6b 2d73 6572 7665 720a 0a63 6c61 7373  lk-server..class
│ │ │ +001228b0: 2072 656d 6f76 655f 7461 6c6b 2d73 6572   remove_talk-ser
│ │ │ +001228c0: 7665 7220 7b0a 2020 7061 636b 6167 6520  ver {.  package 
│ │ │ +001228d0: 7b20 2774 616c 6b2d 7365 7276 6572 273a  { 'talk-server':
│ │ │ +001228e0: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ +001228f0: 3b20 2770 7572 6765 6427 2c0a 2020 7d0a  ; 'purged',.  }.
│ │ │ +00122900: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ 00122910: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation │ │ │ -001236e0: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ -001236f0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
C │ │ │ +001227e0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +00122810: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +00122820: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +00122860: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ +00122870: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ -00123770: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -00123790: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -001237e0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -00123810: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -00123780: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -001237a0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -001237f0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -00123800: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.include remo
│ │ │ -00123830: 7665 5f74 616c 6b0a 0a63 6c61 7373 2072  ve_talk..class r
│ │ │ -00123840: 656d 6f76 655f 7461 6c6b 207b 0a20 2070  emove_talk {.  p
│ │ │ -00123850: 6163 6b61 6765 207b 2027 7461 6c6b 273a  ackage { 'talk':
│ │ │ -00123860: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ -00123870: 3b20 2770 7572 6765 6427 2c0a 2020 7d0a  ; 'purged',.  }.
│ │ │ -00123880: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -00123890: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -00123940: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -00123950: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -001239d0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -001239f0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -00123a40: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -00123a70: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: 'Unins
│ │ │ -00123a90: 7461 6c6c 2074 616c 6b20 5061 636b 6167  tall talk Packag
│ │ │ -00123aa0: 653a 2045 6e73 7572 6520 7461 6c6b 2069  e: Ensure talk i
│ │ │ -00123ab0: 7320 7265 6d6f 7665 6427 0a20 2061 6e73  s removed'.  ans
│ │ │ -00123ac0: 6962 6c65 2e62 7569 6c74 696e 2e70 6163  ible.builtin.pac
│ │ │ -00123ad0: 6b61 6765 3a0a 2020 2020 6e61 6d65 3a20  kage:.    name: 
│ │ │ -00123ae0: 7461 6c6b 0a20 2020 2073 7461 7465 3a20  talk.    state: 
│ │ │ -00123af0: 6162 7365 6e74 0a20 2074 6167 733a 0a20  absent.  tags:. 
│ │ │ -00123b00: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ -00123b10: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ -00123b20: 2e32 2e34 0a20 202d 2064 6973 6162 6c65  .2.4.  - disable
│ │ │ -00123b30: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ -00123b40: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -00123b50: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -00123b60: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -00123b70: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ -00123b80: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ -00123b90: 6b61 6765 5f74 616c 6b5f 7265 6d6f 7665  kage_talk_remove
│ │ │ -00123ba0: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ +001236e0: 416e 7369 626c 6520 736e 6970 7065 7420 Ansible snippet │ │ │ +001236f0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
low< │ │ │ +001237c0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
low
Disr │ │ │ -00123a00: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00123a10: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -00123a50: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -00123a60: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Complexity: │ │ │ +00123780: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ +001237a0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:false
St │ │ │ +001237f0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +00123800: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
- name: 'Uni
│ │ │ +00123830: 6e73 7461 6c6c 2074 616c 6b20 5061 636b  nstall talk Pack
│ │ │ +00123840: 6167 653a 2045 6e73 7572 6520 7461 6c6b  age: Ensure talk
│ │ │ +00123850: 2069 7320 7265 6d6f 7665 6427 0a20 2061   is removed'.  a
│ │ │ +00123860: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ +00123870: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ +00123880: 3a20 7461 6c6b 0a20 2020 2073 7461 7465  : talk.    state
│ │ │ +00123890: 3a20 6162 7365 6e74 0a20 2074 6167 733a  : absent.  tags:
│ │ │ +001238a0: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ +001238b0: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ +001238c0: 2d32 2e32 2e34 0a20 202d 2064 6973 6162  -2.2.4.  - disab
│ │ │ +001238d0: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ +001238e0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001238f0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +00123900: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ +00123910: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ +00123920: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ +00123930: 6163 6b61 6765 5f74 616c 6b5f 7265 6d6f  ackage_talk_remo
│ │ │ +00123940: 7665 640a 3c2f 636f 6465 3e3c 2f70 7265  ved.
Remediation │ │ │ +00123a00: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ +00123a10: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +00123a90: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +00123ab0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +00123b00: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +00123b30: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +00123aa0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00123ac0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +00123b10: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +00123b20: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.include remo
│ │ │ +00123b50: 7665 5f74 616c 6b0a 0a63 6c61 7373 2072  ve_talk..class r
│ │ │ +00123b60: 656d 6f76 655f 7461 6c6b 207b 0a20 2070  emove_talk {.  p
│ │ │ +00123b70: 6163 6b61 6765 207b 2027 7461 6c6b 273a  ackage { 'talk':
│ │ │ +00123b80: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ +00123b90: 3b20 2770 7572 6765 6427 2c0a 2020 7d0a  ; 'purged',.  }.
│ │ │ +00123ba0: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ 00123bb0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediat │ │ │ -00124e10: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ -00124e20: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -00124ea0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -00124eb0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -00124ec0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -00124f00: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -00124f10: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -00124f30: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -00124f40: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.include 
│ │ │ -00124f60: 7265 6d6f 7665 5f74 656c 6e65 740a 0a63  remove_telnet..c
│ │ │ -00124f70: 6c61 7373 2072 656d 6f76 655f 7465 6c6e  lass remove_teln
│ │ │ -00124f80: 6574 207b 0a20 2070 6163 6b61 6765 207b  et {.  package {
│ │ │ -00124f90: 2027 7465 6c6e 6574 273a 0a20 2020 2065   'telnet':.    e
│ │ │ -00124fa0: 6e73 7572 6520 3d26 6774 3b20 2770 7572  nsure => 'pur
│ │ │ -00124fb0: 6765 6427 2c0a 2020 7d0a 7d0a 3c2f 636f  ged',.  }.}.
< │ │ │ -00124fd0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -00124fe0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -00124ff0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -00125000: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -00125010: 6433 3430 2220 7461 6269 6e64 6578 3d22 d340" tabindex=" │ │ │ -00125020: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -00125030: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -00125040: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -00125050: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -00125060: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -00125070: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ -00125080: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -00125090: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -00125110: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -00125140: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -00125160: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -00125170: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -00125190: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -001251a0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -001251c0: 6d65 3a20 2752 656d 6f76 6520 7465 6c6e  me: 'Remove teln
│ │ │ -001251d0: 6574 2043 6c69 656e 7473 3a20 456e 7375  et Clients: Ensu
│ │ │ -001251e0: 7265 2074 656c 6e65 7420 6973 2072 656d  re telnet is rem
│ │ │ -001251f0: 6f76 6564 270a 2020 616e 7369 626c 652e  oved'.  ansible.
│ │ │ -00125200: 6275 696c 7469 6e2e 7061 636b 6167 653a  builtin.package:
│ │ │ -00125210: 0a20 2020 206e 616d 653a 2074 656c 6e65  .    name: telne
│ │ │ -00125220: 740a 2020 2020 7374 6174 653a 2061 6273  t.    state: abs
│ │ │ -00125230: 656e 740a 2020 7461 6773 3a0a 2020 2d20  ent.  tags:.  - 
│ │ │ -00125240: 4e49 5354 2d38 3030 2d31 3731 2d33 2e31  NIST-800-171-3.1
│ │ │ -00125250: 2e31 330a 2020 2d20 5043 492d 4453 5376  .13.  - PCI-DSSv
│ │ │ -00125260: 342d 322e 320a 2020 2d20 5043 492d 4453  4-2.2.  - PCI-DS
│ │ │ -00125270: 5376 342d 322e 322e 340a 2020 2d20 6469  Sv4-2.2.4.  - di
│ │ │ -00125280: 7361 626c 655f 7374 7261 7465 6779 0a20  sable_strategy. 
│ │ │ -00125290: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001252a0: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -001252b0: 7469 6f6e 0a20 202d 206c 6f77 5f73 6576  tion.  - low_sev
│ │ │ -001252c0: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ -001252d0: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ -001252e0: 6163 6b61 6765 5f74 656c 6e65 745f 7265  ackage_telnet_re
│ │ │ -001252f0: 6d6f 7665 640a 3c2f 636f 6465 3e3c 2f70  moved.


< │ │ │ +00124e30: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +00124e40: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +00124e50: 7365 2220 6964 3d22 6964 3333 3922 3e3c se" id="id339">< │ │ │ +00124e60: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +00124e70: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +00124e80: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +00124e90: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +00124ea0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +00124eb0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +00124ec0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ +00124f00: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +00124f10: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ +00124f30: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ +00124f40: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 - name: │ │ │ +00124f60: 2752 656d 6f76 6520 7465 6c6e 6574 2043 'Remove telnet C │ │ │ +00124f70: 6c69 656e 7473 3a20 456e 7375 7265 2074 lients: Ensure t │ │ │ +00124f80: 656c 6e65 7420 6973 2072 656d 6f76 6564 elnet is removed │ │ │ +00124f90: 270a 2020 616e 7369 626c 652e 6275 696c '. ansible.buil │ │ │ +00124fa0: 7469 6e2e 7061 636b 6167 653a 0a20 2020 tin.package:. │ │ │ +00124fb0: 206e 616d 653a 2074 656c 6e65 740a 2020 name: telnet. │ │ │ +00124fc0: 2020 7374 6174 653a 2061 6273 656e 740a state: absent. │ │ │ +00124fd0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354 tags:. - NIST │ │ │ +00124fe0: 2d38 3030 2d31 3731 2d33 2e31 2e31 330a -800-171-3.1.13. │ │ │ +00124ff0: 2020 2d20 5043 492d 4453 5376 342d 322e - PCI-DSSv4-2. │ │ │ +00125000: 320a 2020 2d20 5043 492d 4453 5376 342d 2. - PCI-DSSv4- │ │ │ +00125010: 322e 322e 340a 2020 2d20 6469 7361 626c 2.2.4. - disabl │ │ │ +00125020: 655f 7374 7261 7465 6779 0a20 202d 206c e_strategy. - l │ │ │ +00125030: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ +00125040: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e - low_disruption │ │ │ +00125050: 0a20 202d 206c 6f77 5f73 6576 6572 6974 . - low_severit │ │ │ +00125060: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f y. - no_reboot_ │ │ │ +00125070: 6e65 6564 6564 0a20 202d 2070 6163 6b61 needed. - packa │ │ │ +00125080: 6765 5f74 656c 6e65 745f 7265 6d6f 7665 ge_telnet_remove │ │ │ +00125090: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c d.
< │ │ │ +001250a0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ +00125150: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ +00125160: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ +00125230: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00125240: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.include remove
│ │ │ +001252a0: 5f74 656c 6e65 740a 0a63 6c61 7373 2072  _telnet..class r
│ │ │ +001252b0: 656d 6f76 655f 7465 6c6e 6574 207b 0a20  emove_telnet {. 
│ │ │ +001252c0: 2070 6163 6b61 6765 207b 2027 7465 6c6e   package { 'teln
│ │ │ +001252d0: 6574 273a 0a20 2020 2065 6e73 7572 6520  et':.    ensure 
│ │ │ +001252e0: 3d26 6774 3b20 2770 7572 6765 6427 2c0a  => 'purged',.
│ │ │ +001252f0: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediati │ │ │ -00125e00: 6f6e 204f 5342 7569 6c64 2042 6c75 6570 on OSBuild Bluep │ │ │ -00125e10: 7269 6e74 2073 6e69 7070 6574 20e2 87b2 rint snippet ... │ │ │ -00125e20: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
.[customizati
│ │ │ -00125e70: 6f6e 732e 7365 7276 6963 6573 5d0a 6d61  ons.services].ma
│ │ │ -00125e80: 736b 6564 203d 205b 2272 7379 6e63 6422  sked = ["rsyncd"
│ │ │ -00125e90: 5d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  ].
< │ │ │ -00125ea0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ -00125f50: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ -00125f60: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
low
Disru │ │ │ +00125210: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00125220: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00125260: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +00125270: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexity: │ │ │ -00126030: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -00126040: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -00126090: 696e 636c 7564 6520 6469 7361 626c 655f  include disable_
│ │ │ -001260a0: 7273 796e 6364 0a0a 636c 6173 7320 6469  rsyncd..class di
│ │ │ -001260b0: 7361 626c 655f 7273 796e 6364 207b 0a20  sable_rsyncd {. 
│ │ │ -001260c0: 2073 6572 7669 6365 207b 2772 7379 6e63   service {'rsync
│ │ │ -001260d0: 6427 3a0a 2020 2020 656e 6162 6c65 203d  d':.    enable =
│ │ │ -001260e0: 2667 743b 2066 616c 7365 2c0a 2020 2020  > false,.    
│ │ │ -001260f0: 656e 7375 7265 203d 2667 743b 2027 7374  ensure => 'st
│ │ │ -00126100: 6f70 7065 6427 2c0a 2020 7d0a 7d0a 3c2f  opped',.  }.}.
Re │ │ │ -001261c0: 6d65 6469 6174 696f 6e20 416e 7369 626c mediation Ansibl │ │ │ -001261d0: 6520 736e 6970 7065 7420 e287 b23c 2f61 e snippet ...
low
Disru │ │ │ -00126010: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -00126020: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -00126060: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -00126070: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ -00126270: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00126280: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -001262d0: 3c74 723e 3c74 683e 5374 7261 7465 6779
- 
│ │ │ -00126310: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ -00126320: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ -00126330: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ -00126340: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ -00126350: 6f0a 2020 7461 6773 3a0a 2020 2d20 5043  o.  tags:.  - PC
│ │ │ -00126360: 492d 4453 5376 342d 322e 320a 2020 2d20  I-DSSv4-2.2.  - 
│ │ │ -00126370: 5043 492d 4453 5376 342d 322e 322e 340a  PCI-DSSv4-2.2.4.
│ │ │ -00126380: 2020 2d20 6469 7361 626c 655f 7374 7261    - disable_stra
│ │ │ -00126390: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ -001263a0: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ -001263b0: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -001263c0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -001263d0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -001263e0: 6465 640a 2020 2d20 7365 7276 6963 655f  ded.  - service_
│ │ │ -001263f0: 7273 796e 6364 5f64 6973 6162 6c65 640a  rsyncd_disabled.
│ │ │ -00126400: 0a2d 206e 616d 653a 2045 6e73 7572 6520  .- name: Ensure 
│ │ │ -00126410: 7273 796e 6364 2073 6572 7669 6365 2069  rsyncd service i
│ │ │ -00126420: 7320 6469 7361 626c 6564 202d 2044 6973  s disabled - Dis
│ │ │ -00126430: 6162 6c65 2073 6572 7669 6365 2072 7379  able service rsy
│ │ │ -00126440: 6e63 640a 2020 626c 6f63 6b3a 0a0a 2020  ncd.  block:..  
│ │ │ -00126450: 2d20 6e61 6d65 3a20 456e 7375 7265 2072  - name: Ensure r
│ │ │ -00126460: 7379 6e63 6420 7365 7276 6963 6520 6973  syncd service is
│ │ │ -00126470: 2064 6973 6162 6c65 6420 2d20 436f 6c6c   disabled - Coll
│ │ │ -00126480: 6563 7420 7379 7374 656d 6420 5365 7276  ect systemd Serv
│ │ │ -00126490: 6963 6573 2050 7265 7365 6e74 2069 6e0a  ices Present in.
│ │ │ -001264a0: 2020 2020 2020 7468 6520 5379 7374 656d        the System
│ │ │ -001264b0: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ -001264c0: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 7379  ltin.command: sy
│ │ │ -001264d0: 7374 656d 6374 6c20 2d71 206c 6973 742d  stemctl -q list-
│ │ │ -001264e0: 756e 6974 2d66 696c 6573 202d 2d74 7970  unit-files --typ
│ │ │ -001264f0: 6520 7365 7276 6963 650a 2020 2020 7265  e service.    re
│ │ │ -00126500: 6769 7374 6572 3a20 7365 7276 6963 655f  gister: service_
│ │ │ -00126510: 6578 6973 7473 0a20 2020 2063 6861 6e67  exists.    chang
│ │ │ -00126520: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ -00126530: 2020 2066 6169 6c65 645f 7768 656e 3a20     failed_when: 
│ │ │ -00126540: 7365 7276 6963 655f 6578 6973 7473 2e72  service_exists.r
│ │ │ -00126550: 6320 6e6f 7420 696e 205b 302c 2031 5d0a  c not in [0, 1].
│ │ │ -00126560: 2020 2020 6368 6563 6b5f 6d6f 6465 3a20      check_mode: 
│ │ │ -00126570: 6661 6c73 650a 0a20 202d 206e 616d 653a  false..  - name:
│ │ │ -00126580: 2045 6e73 7572 6520 7273 796e 6364 2073   Ensure rsyncd s
│ │ │ -00126590: 6572 7669 6365 2069 7320 6469 7361 626c  ervice is disabl
│ │ │ -001265a0: 6564 202d 2045 6e73 7572 6520 7273 796e  ed - Ensure rsyn
│ │ │ -001265b0: 6364 2e73 6572 7669 6365 2069 7320 4d61  cd.service is Ma
│ │ │ -001265c0: 736b 6564 0a20 2020 2061 6e73 6962 6c65  sked.    ansible
│ │ │ -001265d0: 2e62 7569 6c74 696e 2e73 7973 7465 6d64  .builtin.systemd
│ │ │ -001265e0: 3a0a 2020 2020 2020 6e61 6d65 3a20 7273  :.      name: rs
│ │ │ -001265f0: 796e 6364 2e73 6572 7669 6365 0a20 2020  yncd.service.   
│ │ │ -00126600: 2020 2073 7461 7465 3a20 7374 6f70 7065     state: stoppe
│ │ │ -00126610: 640a 2020 2020 2020 656e 6162 6c65 643a  d.      enabled:
│ │ │ -00126620: 2066 616c 7365 0a20 2020 2020 206d 6173   false.      mas
│ │ │ -00126630: 6b65 643a 2074 7275 650a 2020 2020 7768  ked: true.    wh
│ │ │ -00126640: 656e 3a20 7365 7276 6963 655f 6578 6973  en: service_exis
│ │ │ -00126650: 7473 2e73 7464 6f75 745f 6c69 6e65 7320  ts.stdout_lines 
│ │ │ -00126660: 6973 2073 6561 7263 6828 2272 7379 6e63  is search("rsync
│ │ │ -00126670: 642e 7365 7276 6963 6522 2c20 6d75 6c74  d.service", mult
│ │ │ -00126680: 696c 696e 653d 5472 7565 290a 0a20 202d  iline=True)..  -
│ │ │ -00126690: 206e 616d 653a 2055 6e69 7420 536f 636b   name: Unit Sock
│ │ │ -001266a0: 6574 2045 7869 7374 7320 2d20 7273 796e  et Exists - rsyn
│ │ │ -001266b0: 6364 2e73 6f63 6b65 740a 2020 2020 616e  cd.socket.    an
│ │ │ -001266c0: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ -001266d0: 6d6d 616e 643a 2073 7973 7465 6d63 746c  mmand: systemctl
│ │ │ -001266e0: 202d 7120 6c69 7374 2d75 6e69 742d 6669   -q list-unit-fi
│ │ │ -001266f0: 6c65 7320 7273 796e 6364 2e73 6f63 6b65  les rsyncd.socke
│ │ │ -00126700: 740a 2020 2020 7265 6769 7374 6572 3a20  t.    register: 
│ │ │ -00126710: 736f 636b 6574 5f66 696c 655f 6578 6973  socket_file_exis
│ │ │ -00126720: 7473 0a20 2020 2063 6861 6e67 6564 5f77  ts.    changed_w
│ │ │ -00126730: 6865 6e3a 2066 616c 7365 0a20 2020 2066  hen: false.    f
│ │ │ -00126740: 6169 6c65 645f 7768 656e 3a20 736f 636b  ailed_when: sock
│ │ │ -00126750: 6574 5f66 696c 655f 6578 6973 7473 2e72  et_file_exists.r
│ │ │ -00126760: 6320 6e6f 7420 696e 205b 302c 2031 5d0a  c not in [0, 1].
│ │ │ -00126770: 2020 2020 6368 6563 6b5f 6d6f 6465 3a20      check_mode: 
│ │ │ -00126780: 6661 6c73 650a 0a20 202d 206e 616d 653a  false..  - name:
│ │ │ -00126790: 2045 6e73 7572 6520 7273 796e 6364 2073   Ensure rsyncd s
│ │ │ -001267a0: 6572 7669 6365 2069 7320 6469 7361 626c  ervice is disabl
│ │ │ -001267b0: 6564 202d 2044 6973 6162 6c65 2053 6f63  ed - Disable Soc
│ │ │ -001267c0: 6b65 7420 7273 796e 6364 0a20 2020 2061  ket rsyncd.    a
│ │ │ -001267d0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e73  nsible.builtin.s
│ │ │ -001267e0: 7973 7465 6d64 3a0a 2020 2020 2020 6e61  ystemd:.      na
│ │ │ -001267f0: 6d65 3a20 7273 796e 6364 2e73 6f63 6b65  me: rsyncd.socke
│ │ │ -00126800: 740a 2020 2020 2020 656e 6162 6c65 643a  t.      enabled:
│ │ │ -00126810: 2066 616c 7365 0a20 2020 2020 2073 7461   false.      sta
│ │ │ -00126820: 7465 3a20 7374 6f70 7065 640a 2020 2020  te: stopped.    
│ │ │ -00126830: 2020 6d61 736b 6564 3a20 7472 7565 0a20    masked: true. 
│ │ │ -00126840: 2020 2077 6865 6e3a 2073 6f63 6b65 745f     when: socket_
│ │ │ -00126850: 6669 6c65 5f65 7869 7374 732e 7374 646f  file_exists.stdo
│ │ │ -00126860: 7574 5f6c 696e 6573 2069 7320 7365 6172  ut_lines is sear
│ │ │ -00126870: 6368 2822 7273 796e 6364 2e73 6f63 6b65  ch("rsyncd.socke
│ │ │ -00126880: 7422 2c20 6d75 6c74 696c 696e 653d 5472  t", multiline=Tr
│ │ │ -00126890: 7565 290a 2020 7461 6773 3a0a 2020 2d20  ue).  tags:.  - 
│ │ │ -001268a0: 5043 492d 4453 5376 342d 322e 320a 2020  PCI-DSSv4-2.2.  
│ │ │ -001268b0: 2d20 5043 492d 4453 5376 342d 322e 322e  - PCI-DSSv4-2.2.
│ │ │ -001268c0: 340a 2020 2d20 6469 7361 626c 655f 7374  4.  - disable_st
│ │ │ -001268d0: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ -001268e0: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -001268f0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -00126900: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -00126910: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -00126920: 6565 6465 640a 2020 2d20 7365 7276 6963  eeded.  - servic
│ │ │ -00126930: 655f 7273 796e 6364 5f64 6973 6162 6c65  e_rsyncd_disable
│ │ │ -00126940: 640a 2020 2d20 7370 6563 6961 6c5f 7365  d.  - special_se
│ │ │ -00126950: 7276 6963 655f 626c 6f63 6b0a 2020 7768  rvice_block.  wh
│ │ │ -00126960: 656e 3a20 2722 6b65 726e 656c 2220 696e  en: '"kernel" in
│ │ │ -00126970: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -00126980: 6163 6b61 6765 7327 0a3c 2f63 6f64 653e  ackages'.
│ │ │ +00125e00: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070  on Ansible snipp
│ │ │ +00125e10: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...
│ │ │ +00125e90: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ +00125f20: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +00125f30: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
C │ │ │ -00126260: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -00126290: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -001262a0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -001262e0: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ -001262f0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexi │ │ │ +00125ea0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +00125eb0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +00125ef0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +00125f00: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
- name: G
│ │ │ +00125f50: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ +00125f60: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ +00125f70: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ +00125f80: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ +00125f90: 733a 0a20 202d 2050 4349 2d44 5353 7634  s:.  - PCI-DSSv4
│ │ │ +00125fa0: 2d32 2e32 0a20 202d 2050 4349 2d44 5353  -2.2.  - PCI-DSS
│ │ │ +00125fb0: 7634 2d32 2e32 2e34 0a20 202d 2064 6973  v4-2.2.4.  - dis
│ │ │ +00125fc0: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ +00125fd0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +00125fe0: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +00125ff0: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ +00126000: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ +00126010: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ +00126020: 2073 6572 7669 6365 5f72 7379 6e63 645f   service_rsyncd_
│ │ │ +00126030: 6469 7361 626c 6564 0a0a 2d20 6e61 6d65  disabled..- name
│ │ │ +00126040: 3a20 456e 7375 7265 2072 7379 6e63 6420  : Ensure rsyncd 
│ │ │ +00126050: 7365 7276 6963 6520 6973 2064 6973 6162  service is disab
│ │ │ +00126060: 6c65 6420 2d20 4469 7361 626c 6520 7365  led - Disable se
│ │ │ +00126070: 7276 6963 6520 7273 796e 6364 0a20 2062  rvice rsyncd.  b
│ │ │ +00126080: 6c6f 636b 3a0a 0a20 202d 206e 616d 653a  lock:..  - name:
│ │ │ +00126090: 2045 6e73 7572 6520 7273 796e 6364 2073   Ensure rsyncd s
│ │ │ +001260a0: 6572 7669 6365 2069 7320 6469 7361 626c  ervice is disabl
│ │ │ +001260b0: 6564 202d 2043 6f6c 6c65 6374 2073 7973  ed - Collect sys
│ │ │ +001260c0: 7465 6d64 2053 6572 7669 6365 7320 5072  temd Services Pr
│ │ │ +001260d0: 6573 656e 7420 696e 0a20 2020 2020 2074  esent in.      t
│ │ │ +001260e0: 6865 2053 7973 7465 6d0a 2020 2020 616e  he System.    an
│ │ │ +001260f0: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ +00126100: 6d6d 616e 643a 2073 7973 7465 6d63 746c  mmand: systemctl
│ │ │ +00126110: 202d 7120 6c69 7374 2d75 6e69 742d 6669   -q list-unit-fi
│ │ │ +00126120: 6c65 7320 2d2d 7479 7065 2073 6572 7669  les --type servi
│ │ │ +00126130: 6365 0a20 2020 2072 6567 6973 7465 723a  ce.    register:
│ │ │ +00126140: 2073 6572 7669 6365 5f65 7869 7374 730a   service_exists.
│ │ │ +00126150: 2020 2020 6368 616e 6765 645f 7768 656e      changed_when
│ │ │ +00126160: 3a20 6661 6c73 650a 2020 2020 6661 696c  : false.    fail
│ │ │ +00126170: 6564 5f77 6865 6e3a 2073 6572 7669 6365  ed_when: service
│ │ │ +00126180: 5f65 7869 7374 732e 7263 206e 6f74 2069  _exists.rc not i
│ │ │ +00126190: 6e20 5b30 2c20 315d 0a20 2020 2063 6865  n [0, 1].    che
│ │ │ +001261a0: 636b 5f6d 6f64 653a 2066 616c 7365 0a0a  ck_mode: false..
│ │ │ +001261b0: 2020 2d20 6e61 6d65 3a20 456e 7375 7265    - name: Ensure
│ │ │ +001261c0: 2072 7379 6e63 6420 7365 7276 6963 6520   rsyncd service 
│ │ │ +001261d0: 6973 2064 6973 6162 6c65 6420 2d20 456e  is disabled - En
│ │ │ +001261e0: 7375 7265 2072 7379 6e63 642e 7365 7276  sure rsyncd.serv
│ │ │ +001261f0: 6963 6520 6973 204d 6173 6b65 640a 2020  ice is Masked.  
│ │ │ +00126200: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +00126210: 6e2e 7379 7374 656d 643a 0a20 2020 2020  n.systemd:.     
│ │ │ +00126220: 206e 616d 653a 2072 7379 6e63 642e 7365   name: rsyncd.se
│ │ │ +00126230: 7276 6963 650a 2020 2020 2020 7374 6174  rvice.      stat
│ │ │ +00126240: 653a 2073 746f 7070 6564 0a20 2020 2020  e: stopped.     
│ │ │ +00126250: 2065 6e61 626c 6564 3a20 6661 6c73 650a   enabled: false.
│ │ │ +00126260: 2020 2020 2020 6d61 736b 6564 3a20 7472        masked: tr
│ │ │ +00126270: 7565 0a20 2020 2077 6865 6e3a 2073 6572  ue.    when: ser
│ │ │ +00126280: 7669 6365 5f65 7869 7374 732e 7374 646f  vice_exists.stdo
│ │ │ +00126290: 7574 5f6c 696e 6573 2069 7320 7365 6172  ut_lines is sear
│ │ │ +001262a0: 6368 2822 7273 796e 6364 2e73 6572 7669  ch("rsyncd.servi
│ │ │ +001262b0: 6365 222c 206d 756c 7469 6c69 6e65 3d54  ce", multiline=T
│ │ │ +001262c0: 7275 6529 0a0a 2020 2d20 6e61 6d65 3a20  rue)..  - name: 
│ │ │ +001262d0: 556e 6974 2053 6f63 6b65 7420 4578 6973  Unit Socket Exis
│ │ │ +001262e0: 7473 202d 2072 7379 6e63 642e 736f 636b  ts - rsyncd.sock
│ │ │ +001262f0: 6574 0a20 2020 2061 6e73 6962 6c65 2e62  et.    ansible.b
│ │ │ +00126300: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ +00126310: 7379 7374 656d 6374 6c20 2d71 206c 6973  systemctl -q lis
│ │ │ +00126320: 742d 756e 6974 2d66 696c 6573 2072 7379  t-unit-files rsy
│ │ │ +00126330: 6e63 642e 736f 636b 6574 0a20 2020 2072  ncd.socket.    r
│ │ │ +00126340: 6567 6973 7465 723a 2073 6f63 6b65 745f  egister: socket_
│ │ │ +00126350: 6669 6c65 5f65 7869 7374 730a 2020 2020  file_exists.    
│ │ │ +00126360: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ +00126370: 6c73 650a 2020 2020 6661 696c 6564 5f77  lse.    failed_w
│ │ │ +00126380: 6865 6e3a 2073 6f63 6b65 745f 6669 6c65  hen: socket_file
│ │ │ +00126390: 5f65 7869 7374 732e 7263 206e 6f74 2069  _exists.rc not i
│ │ │ +001263a0: 6e20 5b30 2c20 315d 0a20 2020 2063 6865  n [0, 1].    che
│ │ │ +001263b0: 636b 5f6d 6f64 653a 2066 616c 7365 0a0a  ck_mode: false..
│ │ │ +001263c0: 2020 2d20 6e61 6d65 3a20 456e 7375 7265    - name: Ensure
│ │ │ +001263d0: 2072 7379 6e63 6420 7365 7276 6963 6520   rsyncd service 
│ │ │ +001263e0: 6973 2064 6973 6162 6c65 6420 2d20 4469  is disabled - Di
│ │ │ +001263f0: 7361 626c 6520 536f 636b 6574 2072 7379  sable Socket rsy
│ │ │ +00126400: 6e63 640a 2020 2020 616e 7369 626c 652e  ncd.    ansible.
│ │ │ +00126410: 6275 696c 7469 6e2e 7379 7374 656d 643a  builtin.systemd:
│ │ │ +00126420: 0a20 2020 2020 206e 616d 653a 2072 7379  .      name: rsy
│ │ │ +00126430: 6e63 642e 736f 636b 6574 0a20 2020 2020  ncd.socket.     
│ │ │ +00126440: 2065 6e61 626c 6564 3a20 6661 6c73 650a   enabled: false.
│ │ │ +00126450: 2020 2020 2020 7374 6174 653a 2073 746f        state: sto
│ │ │ +00126460: 7070 6564 0a20 2020 2020 206d 6173 6b65  pped.      maske
│ │ │ +00126470: 643a 2074 7275 650a 2020 2020 7768 656e  d: true.    when
│ │ │ +00126480: 3a20 736f 636b 6574 5f66 696c 655f 6578  : socket_file_ex
│ │ │ +00126490: 6973 7473 2e73 7464 6f75 745f 6c69 6e65  ists.stdout_line
│ │ │ +001264a0: 7320 6973 2073 6561 7263 6828 2272 7379  s is search("rsy
│ │ │ +001264b0: 6e63 642e 736f 636b 6574 222c 206d 756c  ncd.socket", mul
│ │ │ +001264c0: 7469 6c69 6e65 3d54 7275 6529 0a20 2074  tiline=True).  t
│ │ │ +001264d0: 6167 733a 0a20 202d 2050 4349 2d44 5353  ags:.  - PCI-DSS
│ │ │ +001264e0: 7634 2d32 2e32 0a20 202d 2050 4349 2d44  v4-2.2.  - PCI-D
│ │ │ +001264f0: 5353 7634 2d32 2e32 2e34 0a20 202d 2064  SSv4-2.2.4.  - d
│ │ │ +00126500: 6973 6162 6c65 5f73 7472 6174 6567 790a  isable_strategy.
│ │ │ +00126510: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +00126520: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ +00126530: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ +00126540: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ +00126550: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ +00126560: 202d 2073 6572 7669 6365 5f72 7379 6e63   - service_rsync
│ │ │ +00126570: 645f 6469 7361 626c 6564 0a20 202d 2073  d_disabled.  - s
│ │ │ +00126580: 7065 6369 616c 5f73 6572 7669 6365 5f62  pecial_service_b
│ │ │ +00126590: 6c6f 636b 0a20 2077 6865 6e3a 2027 226b  lock.  when: '"k
│ │ │ +001265a0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +001265b0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001265c0: 270a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  '.
< │ │ │ +001265d0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ +00126680: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ +00126690: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ +00126760: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00126770: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +001267c0: 696e 636c 7564 6520 6469 7361 626c 655f  include disable_
│ │ │ +001267d0: 7273 796e 6364 0a0a 636c 6173 7320 6469  rsyncd..class di
│ │ │ +001267e0: 7361 626c 655f 7273 796e 6364 207b 0a20  sable_rsyncd {. 
│ │ │ +001267f0: 2073 6572 7669 6365 207b 2772 7379 6e63   service {'rsync
│ │ │ +00126800: 6427 3a0a 2020 2020 656e 6162 6c65 203d  d':.    enable =
│ │ │ +00126810: 2667 743b 2066 616c 7365 2c0a 2020 2020  > false,.    
│ │ │ +00126820: 656e 7375 7265 203d 2667 743b 2027 7374  ensure => 'st
│ │ │ +00126830: 6f70 7065 6427 2c0a 2020 7d0a 7d0a 3c2f  opped',.  }.}.
Re │ │ │ +001268f0: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ +00126900: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ +00126910: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +00126920: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +00126930: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +00126940: 7365 2220 6964 3d22 6964 3334 3522 3e3c se" id="id345">< │ │ │ +00126950: 7072 653e 3c63 6f64 653e 0a5b 6375 7374 pre>.[cust │ │ │ +00126960: 6f6d 697a 6174 696f 6e73 2e73 6572 7669 omizations.servi │ │ │ +00126970: 6365 735d 0a6d 6173 6b65 6420 3d20 5b22 ces].masked = [" │ │ │ +00126980: 7273 796e 6364 225d 0a3c 2f63 6f64 653e rsyncd"]. │ │ │ 00126990: 3c2f 7072 653e 3c2f 6469 763e 3c2f 6469
low
Disru │ │ │ +00126740: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00126750: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00126790: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +001267a0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Reme │ │ │ -00149340: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ -00149350: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
inc
│ │ │ -001493a0: 6c75 6465 2073 7368 5f70 7269 7661 7465  lude ssh_private
│ │ │ -001493b0: 5f6b 6579 5f70 6572 6d73 0a0a 636c 6173  _key_perms..clas
│ │ │ -001493c0: 7320 7373 685f 7072 6976 6174 655f 6b65  s ssh_private_ke
│ │ │ -001493d0: 795f 7065 726d 7320 7b0a 2020 6578 6563  y_perms {.  exec
│ │ │ -001493e0: 207b 2027 7373 6864 5f70 7269 765f 6b65   { 'sshd_priv_ke
│ │ │ -001493f0: 7927 3a0a 2020 2020 636f 6d6d 616e 6420  y':.    command 
│ │ │ -00149400: 3d26 6774 3b20 2263 686d 6f64 2030 3634  => "chmod 064
│ │ │ -00149410: 3020 2f65 7463 2f73 7368 2f2a 5f6b 6579  0 /etc/ssh/*_key
│ │ │ -00149420: 222c 0a20 2020 2070 6174 6820 2020 203d  ",.    path    =
│ │ │ -00149430: 2667 743b 2027 2f62 696e 3a2f 7573 722f  > '/bin:/usr/
│ │ │ -00149440: 6269 6e27 0a20 207d 0a7d 0a3c 2f63 6f64  bin'.  }.}.
Remed │ │ │ -00149500: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ -00149510: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
- n
│ │ │ -00149650: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ -00149660: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ -00149670: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -00149680: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ -00149690: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -001496a0: 542d 3830 302d 3137 312d 332e 312e 3133  T-800-171-3.1.13
│ │ │ -001496b0: 0a20 202d 204e 4953 542d 3830 302d 3137  .  - NIST-800-17
│ │ │ -001496c0: 312d 332e 3133 2e31 300a 2020 2d20 4e49  1-3.13.10.  - NI
│ │ │ -001496d0: 5354 2d38 3030 2d35 332d 4143 2d31 3728  ST-800-53-AC-17(
│ │ │ -001496e0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -001496f0: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ -00149700: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -00149710: 6129 0a20 202d 2050 4349 2d44 5353 2d52  a).  - PCI-DSS-R
│ │ │ -00149720: 6571 2d32 2e32 2e34 0a20 202d 2050 4349  eq-2.2.4.  - PCI
│ │ │ -00149730: 2d44 5353 7634 2d32 2e32 0a20 202d 2050  -DSSv4-2.2.  - P
│ │ │ -00149740: 4349 2d44 5353 7634 2d32 2e32 2e36 0a20  CI-DSSv4-2.2.6. 
│ │ │ -00149750: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -00149760: 6174 6567 790a 2020 2d20 6669 6c65 5f70  ategy.  - file_p
│ │ │ -00149770: 6572 6d69 7373 696f 6e73 5f73 7368 645f  ermissions_sshd_
│ │ │ -00149780: 7072 6976 6174 655f 6b65 790a 2020 2d20  private_key.  - 
│ │ │ -00149790: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001497a0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -001497b0: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ -001497c0: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ -001497d0: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61  oot_needed..- na
│ │ │ -001497e0: 6d65 3a20 4669 6e64 2072 6f6f 743a 726f  me: Find root:ro
│ │ │ -001497f0: 6f74 2d6f 776e 6564 206b 6579 730a 2020  ot-owned keys.  
│ │ │ -00149800: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -00149810: 636f 6d6d 616e 643a 2066 696e 6420 2d48  command: find -H
│ │ │ -00149820: 202f 6574 632f 7373 682f 202d 6d61 7864   /etc/ssh/ -maxd
│ │ │ -00149830: 6570 7468 2031 202d 7573 6572 2072 6f6f  epth 1 -user roo
│ │ │ -00149840: 7420 2d72 6567 6578 2022 2e2a 5f6b 6579  t -regex ".*_key
│ │ │ -00149850: 2422 0a20 2020 202d 7479 7065 2066 202d  $".    -type f -
│ │ │ -00149860: 6772 6f75 7020 726f 6f74 202d 7065 726d  group root -perm
│ │ │ -00149870: 202f 752b 7873 2c67 2b78 7772 732c 6f2b   /u+xs,g+xwrs,o+
│ │ │ -00149880: 7877 7274 0a20 2072 6567 6973 7465 723a  xwrt.  register:
│ │ │ -00149890: 2072 6f6f 745f 6f77 6e65 645f 6b65 7973   root_owned_keys
│ │ │ -001498a0: 0a20 2063 6861 6e67 6564 5f77 6865 6e3a  .  changed_when:
│ │ │ -001498b0: 2066 616c 7365 0a20 2066 6169 6c65 645f   false.  failed_
│ │ │ -001498c0: 7768 656e 3a20 6661 6c73 650a 2020 6368  when: false.  ch
│ │ │ -001498d0: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a  eck_mode: false.
│ │ │ -001498e0: 2020 7768 656e 3a20 2722 6b65 726e 656c    when: '"kernel
│ │ │ -001498f0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -00149900: 7473 2e70 6163 6b61 6765 7327 0a20 2074  ts.packages'.  t
│ │ │ -00149910: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -00149920: 302d 3137 312d 332e 312e 3133 0a20 202d  0-171-3.1.13.  -
│ │ │ -00149930: 204e 4953 542d 3830 302d 3137 312d 332e   NIST-800-171-3.
│ │ │ -00149940: 3133 2e31 300a 2020 2d20 4e49 5354 2d38  13.10.  - NIST-8
│ │ │ -00149950: 3030 2d35 332d 4143 2d31 3728 6129 0a20  00-53-AC-17(a). 
│ │ │ -00149960: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -00149970: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ -00149980: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -00149990: 202d 2050 4349 2d44 5353 2d52 6571 2d32   - PCI-DSS-Req-2
│ │ │ -001499a0: 2e32 2e34 0a20 202d 2050 4349 2d44 5353  .2.4.  - PCI-DSS
│ │ │ -001499b0: 7634 2d32 2e32 0a20 202d 2050 4349 2d44  v4-2.2.  - PCI-D
│ │ │ -001499c0: 5353 7634 2d32 2e32 2e36 0a20 202d 2063  SSv4-2.2.6.  - c
│ │ │ -001499d0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001499e0: 790a 2020 2d20 6669 6c65 5f70 6572 6d69  y.  - file_permi
│ │ │ -001499f0: 7373 696f 6e73 5f73 7368 645f 7072 6976  ssions_sshd_priv
│ │ │ -00149a00: 6174 655f 6b65 790a 2020 2d20 6c6f 775f  ate_key.  - low_
│ │ │ -00149a10: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ -00149a20: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -00149a30: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -00149a40: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ -00149a50: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ -00149a60: 5365 7420 7065 726d 6973 7369 6f6e 7320  Set permissions 
│ │ │ -00149a70: 666f 7220 726f 6f74 3a72 6f6f 742d 6f77  for root:root-ow
│ │ │ -00149a80: 6e65 6420 6b65 7973 0a20 2061 6e73 6962  ned keys.  ansib
│ │ │ -00149a90: 6c65 2e62 7569 6c74 696e 2e66 696c 653a  le.builtin.file:
│ │ │ -00149aa0: 0a20 2020 2070 6174 683a 2027 7b7b 2069  .    path: '{{ i
│ │ │ -00149ab0: 7465 6d20 7d7d 270a 2020 2020 6d6f 6465  tem }}'.    mode
│ │ │ -00149ac0: 3a20 752d 7873 2c67 2d78 7772 732c 6f2d  : u-xs,g-xwrs,o-
│ │ │ -00149ad0: 7877 7274 0a20 2020 2073 7461 7465 3a20  xwrt.    state: 
│ │ │ -00149ae0: 6669 6c65 0a20 2077 6974 685f 6974 656d  file.  with_item
│ │ │ -00149af0: 733a 0a20 202d 2027 7b7b 2072 6f6f 745f  s:.  - '{{ root_
│ │ │ -00149b00: 6f77 6e65 645f 6b65 7973 2e73 7464 6f75  owned_keys.stdou
│ │ │ -00149b10: 745f 6c69 6e65 7320 7d7d 270a 2020 7768  t_lines }}'.  wh
│ │ │ -00149b20: 656e 3a20 2722 6b65 726e 656c 2220 696e  en: '"kernel" in
│ │ │ -00149b30: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -00149b40: 6163 6b61 6765 7327 0a20 2074 6167 733a  ackages'.  tags:
│ │ │ -00149b50: 0a20 202d 204e 4953 542d 3830 302d 3137  .  - NIST-800-17
│ │ │ -00149b60: 312d 332e 312e 3133 0a20 202d 204e 4953  1-3.1.13.  - NIS
│ │ │ -00149b70: 542d 3830 302d 3137 312d 332e 3133 2e31  T-800-171-3.13.1
│ │ │ -00149b80: 300a 2020 2d20 4e49 5354 2d38 3030 2d35  0.  - NIST-800-5
│ │ │ -00149b90: 332d 4143 2d31 3728 6129 0a20 202d 204e  3-AC-17(a).  - N
│ │ │ -00149ba0: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ -00149bb0: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ -00149bc0: 3533 2d43 4d2d 3628 6129 0a20 202d 2050  53-CM-6(a).  - P
│ │ │ -00149bd0: 4349 2d44 5353 2d52 6571 2d32 2e32 2e34  CI-DSS-Req-2.2.4
│ │ │ -00149be0: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ -00149bf0: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ -00149c00: 2d32 2e32 2e36 0a20 202d 2063 6f6e 6669  -2.2.6.  - confi
│ │ │ -00149c10: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ -00149c20: 2d20 6669 6c65 5f70 6572 6d69 7373 696f  - file_permissio
│ │ │ -00149c30: 6e73 5f73 7368 645f 7072 6976 6174 655f  ns_sshd_private_
│ │ │ -00149c40: 6b65 790a 2020 2d20 6c6f 775f 636f 6d70  key.  - low_comp
│ │ │ -00149c50: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -00149c60: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -00149c70: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -00149c80: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -00149c90: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e  ed.
│ │ │ +00149340: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ +00149350: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +00149360: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Comp │ │ │ -001495a0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -001495b0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -001495d0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -001495f0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -00149600: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:configure │ │ │ -00149630: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
- 
│ │ │ +00149490: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ +001494a0: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ +001494b0: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ +001494c0: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ +001494d0: 6f0a 2020 7461 6773 3a0a 2020 2d20 4e49  o.  tags:.  - NI
│ │ │ +001494e0: 5354 2d38 3030 2d31 3731 2d33 2e31 2e31  ST-800-171-3.1.1
│ │ │ +001494f0: 330a 2020 2d20 4e49 5354 2d38 3030 2d31  3.  - NIST-800-1
│ │ │ +00149500: 3731 2d33 2e31 332e 3130 0a20 202d 204e  71-3.13.10.  - N
│ │ │ +00149510: 4953 542d 3830 302d 3533 2d41 432d 3137  IST-800-53-AC-17
│ │ │ +00149520: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +00149530: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ +00149540: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +00149550: 2861 290a 2020 2d20 5043 492d 4453 532d  (a).  - PCI-DSS-
│ │ │ +00149560: 5265 712d 322e 322e 340a 2020 2d20 5043  Req-2.2.4.  - PC
│ │ │ +00149570: 492d 4453 5376 342d 322e 320a 2020 2d20  I-DSSv4-2.2.  - 
│ │ │ +00149580: 5043 492d 4453 5376 342d 322e 322e 360a  PCI-DSSv4-2.2.6.
│ │ │ +00149590: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +001495a0: 7261 7465 6779 0a20 202d 2066 696c 655f  rategy.  - file_
│ │ │ +001495b0: 7065 726d 6973 7369 6f6e 735f 7373 6864  permissions_sshd
│ │ │ +001495c0: 5f70 7269 7661 7465 5f6b 6579 0a20 202d  _private_key.  -
│ │ │ +001495d0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +001495e0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +001495f0: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ +00149600: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ +00149610: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ +00149620: 616d 653a 2046 696e 6420 726f 6f74 3a72  ame: Find root:r
│ │ │ +00149630: 6f6f 742d 6f77 6e65 6420 6b65 7973 0a20  oot-owned keys. 
│ │ │ +00149640: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +00149650: 2e63 6f6d 6d61 6e64 3a20 6669 6e64 202d  .command: find -
│ │ │ +00149660: 4820 2f65 7463 2f73 7368 2f20 2d6d 6178  H /etc/ssh/ -max
│ │ │ +00149670: 6465 7074 6820 3120 2d75 7365 7220 726f  depth 1 -user ro
│ │ │ +00149680: 6f74 202d 7265 6765 7820 222e 2a5f 6b65  ot -regex ".*_ke
│ │ │ +00149690: 7924 220a 2020 2020 2d74 7970 6520 6620  y$".    -type f 
│ │ │ +001496a0: 2d67 726f 7570 2072 6f6f 7420 2d70 6572  -group root -per
│ │ │ +001496b0: 6d20 2f75 2b78 732c 672b 7877 7273 2c6f  m /u+xs,g+xwrs,o
│ │ │ +001496c0: 2b78 7772 740a 2020 7265 6769 7374 6572  +xwrt.  register
│ │ │ +001496d0: 3a20 726f 6f74 5f6f 776e 6564 5f6b 6579  : root_owned_key
│ │ │ +001496e0: 730a 2020 6368 616e 6765 645f 7768 656e  s.  changed_when
│ │ │ +001496f0: 3a20 6661 6c73 650a 2020 6661 696c 6564  : false.  failed
│ │ │ +00149700: 5f77 6865 6e3a 2066 616c 7365 0a20 2063  _when: false.  c
│ │ │ +00149710: 6865 636b 5f6d 6f64 653a 2066 616c 7365  heck_mode: false
│ │ │ +00149720: 0a20 2077 6865 6e3a 2027 226b 6572 6e65  .  when: '"kerne
│ │ │ +00149730: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +00149740: 6374 732e 7061 636b 6167 6573 270a 2020  cts.packages'.  
│ │ │ +00149750: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +00149760: 3030 2d31 3731 2d33 2e31 2e31 330a 2020  00-171-3.1.13.  
│ │ │ +00149770: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33  - NIST-800-171-3
│ │ │ +00149780: 2e31 332e 3130 0a20 202d 204e 4953 542d  .13.10.  - NIST-
│ │ │ +00149790: 3830 302d 3533 2d41 432d 3137 2861 290a  800-53-AC-17(a).
│ │ │ +001497a0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001497b0: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ +001497c0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +001497d0: 2020 2d20 5043 492d 4453 532d 5265 712d    - PCI-DSS-Req-
│ │ │ +001497e0: 322e 322e 340a 2020 2d20 5043 492d 4453  2.2.4.  - PCI-DS
│ │ │ +001497f0: 5376 342d 322e 320a 2020 2d20 5043 492d  Sv4-2.2.  - PCI-
│ │ │ +00149800: 4453 5376 342d 322e 322e 360a 2020 2d20  DSSv4-2.2.6.  - 
│ │ │ +00149810: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +00149820: 6779 0a20 202d 2066 696c 655f 7065 726d  gy.  - file_perm
│ │ │ +00149830: 6973 7369 6f6e 735f 7373 6864 5f70 7269  issions_sshd_pri
│ │ │ +00149840: 7661 7465 5f6b 6579 0a20 202d 206c 6f77  vate_key.  - low
│ │ │ +00149850: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +00149860: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +00149870: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +00149880: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ +00149890: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ +001498a0: 2053 6574 2070 6572 6d69 7373 696f 6e73   Set permissions
│ │ │ +001498b0: 2066 6f72 2072 6f6f 743a 726f 6f74 2d6f   for root:root-o
│ │ │ +001498c0: 776e 6564 206b 6579 730a 2020 616e 7369  wned keys.  ansi
│ │ │ +001498d0: 626c 652e 6275 696c 7469 6e2e 6669 6c65  ble.builtin.file
│ │ │ +001498e0: 3a0a 2020 2020 7061 7468 3a20 277b 7b20  :.    path: '{{ 
│ │ │ +001498f0: 6974 656d 207d 7d27 0a20 2020 206d 6f64  item }}'.    mod
│ │ │ +00149900: 653a 2075 2d78 732c 672d 7877 7273 2c6f  e: u-xs,g-xwrs,o
│ │ │ +00149910: 2d78 7772 740a 2020 2020 7374 6174 653a  -xwrt.    state:
│ │ │ +00149920: 2066 696c 650a 2020 7769 7468 5f69 7465   file.  with_ite
│ │ │ +00149930: 6d73 3a0a 2020 2d20 277b 7b20 726f 6f74  ms:.  - '{{ root
│ │ │ +00149940: 5f6f 776e 6564 5f6b 6579 732e 7374 646f  _owned_keys.stdo
│ │ │ +00149950: 7574 5f6c 696e 6573 207d 7d27 0a20 2077  ut_lines }}'.  w
│ │ │ +00149960: 6865 6e3a 2027 226b 6572 6e65 6c22 2069  hen: '"kernel" i
│ │ │ +00149970: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +00149980: 7061 636b 6167 6573 270a 2020 7461 6773  packages'.  tags
│ │ │ +00149990: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d31  :.  - NIST-800-1
│ │ │ +001499a0: 3731 2d33 2e31 2e31 330a 2020 2d20 4e49  71-3.1.13.  - NI
│ │ │ +001499b0: 5354 2d38 3030 2d31 3731 2d33 2e31 332e  ST-800-171-3.13.
│ │ │ +001499c0: 3130 0a20 202d 204e 4953 542d 3830 302d  10.  - NIST-800-
│ │ │ +001499d0: 3533 2d41 432d 3137 2861 290a 2020 2d20  53-AC-17(a).  - 
│ │ │ +001499e0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001499f0: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ +00149a00: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +00149a10: 5043 492d 4453 532d 5265 712d 322e 322e  PCI-DSS-Req-2.2.
│ │ │ +00149a20: 340a 2020 2d20 5043 492d 4453 5376 342d  4.  - PCI-DSSv4-
│ │ │ +00149a30: 322e 320a 2020 2d20 5043 492d 4453 5376  2.2.  - PCI-DSSv
│ │ │ +00149a40: 342d 322e 322e 360a 2020 2d20 636f 6e66  4-2.2.6.  - conf
│ │ │ +00149a50: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +00149a60: 202d 2066 696c 655f 7065 726d 6973 7369   - file_permissi
│ │ │ +00149a70: 6f6e 735f 7373 6864 5f70 7269 7661 7465  ons_sshd_private
│ │ │ +00149a80: 5f6b 6579 0a20 202d 206c 6f77 5f63 6f6d  _key.  - low_com
│ │ │ +00149a90: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +00149aa0: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ +00149ab0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +00149ac0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +00149ad0: 6465 640a 3c2f 636f 6465 3e3c 2f70 7265  ded.
Remediation │ │ │ +00149b90: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ +00149ba0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
<
│ │ │ +00149be0: 636f 6465 3e69 6e63 6c75 6465 2073 7368  code>include ssh
│ │ │ +00149bf0: 5f70 7269 7661 7465 5f6b 6579 5f70 6572  _private_key_per
│ │ │ +00149c00: 6d73 0a0a 636c 6173 7320 7373 685f 7072  ms..class ssh_pr
│ │ │ +00149c10: 6976 6174 655f 6b65 795f 7065 726d 7320  ivate_key_perms 
│ │ │ +00149c20: 7b0a 2020 6578 6563 207b 2027 7373 6864  {.  exec { 'sshd
│ │ │ +00149c30: 5f70 7269 765f 6b65 7927 3a0a 2020 2020  _priv_key':.    
│ │ │ +00149c40: 636f 6d6d 616e 6420 3d26 6774 3b20 2263  command => "c
│ │ │ +00149c50: 686d 6f64 2030 3634 3020 2f65 7463 2f73  hmod 0640 /etc/s
│ │ │ +00149c60: 7368 2f2a 5f6b 6579 222c 0a20 2020 2070  sh/*_key",.    p
│ │ │ +00149c70: 6174 6820 2020 203d 2667 743b 2027 2f62  ath    => '/b
│ │ │ +00149c80: 696e 3a2f 7573 722f 6269 6e27 0a20 207d  in:/usr/bin'.  }
│ │ │ +00149c90: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e  .}.
│ │ │ 00149ca0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Reme │ │ │ -0014b040: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ -0014b050: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
inc
│ │ │ -0014b0a0: 6c75 6465 2073 7368 5f70 7562 6c69 635f  lude ssh_public_
│ │ │ -0014b0b0: 6b65 795f 7065 726d 730a 0a63 6c61 7373  key_perms..class
│ │ │ -0014b0c0: 2073 7368 5f70 7562 6c69 635f 6b65 795f   ssh_public_key_
│ │ │ -0014b0d0: 7065 726d 7320 7b0a 2020 6578 6563 207b  perms {.  exec {
│ │ │ -0014b0e0: 2027 7373 6864 5f70 7562 5f6b 6579 273a   'sshd_pub_key':
│ │ │ -0014b0f0: 0a20 2020 2063 6f6d 6d61 6e64 203d 2667  .    command =&g
│ │ │ -0014b100: 743b 2022 6368 6d6f 6420 3036 3434 202f  t; "chmod 0644 /
│ │ │ -0014b110: 6574 632f 7373 682f 2a2e 7075 6222 2c0a  etc/ssh/*.pub",.
│ │ │ -0014b120: 2020 2020 7061 7468 2020 2020 3d26 6774      path    =>
│ │ │ -0014b130: 3b20 272f 6269 6e3a 2f75 7372 2f62 696e  ; '/bin:/usr/bin
│ │ │ -0014b140: 270a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  '.  }.}.<
│ │ │ -0014b150: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ -0014b200: 696f 6e20 416e 7369 626c 6520 736e 6970 ion Ansible snip │ │ │ -0014b210: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -0014b220: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -0014b230: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -0014b240: 7365 2220 6964 3d22 6964 3430 3522 3e3c se" id="id405">< │ │ │ -0014b250: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -0014b260: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -0014b270: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -0014b280: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -0014b290: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:Strategy: │ │ │ -0014b320: 3c74 643e 636f 6e66 6967 7572 653c 2f74
Com │ │ │ +001493e0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +00149410: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +00149430: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +00149440: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +00149460: 2f74 683e 3c74 643e 636f 6e66 6967 7572 /th>configur │ │ │ +00149470: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complex │ │ │ -0014b2a0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -0014b2b0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ -0014b2f0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -0014b300: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
configure
< │ │ │ -0014b340: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -0014b350: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -0014b360: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -0014b370: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -0014b380: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -0014b390: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ -0014b3a0: 3030 2d31 3731 2d33 2e31 2e31 330a 2020 00-171-3.1.13. │ │ │ -0014b3b0: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33 - NIST-800-171-3 │ │ │ -0014b3c0: 2e31 332e 3130 0a20 202d 204e 4953 542d .13.10. - NIST- │ │ │ -0014b3d0: 3830 302d 3533 2d41 432d 3137 2861 290a 800-53-AC-17(a). │ │ │ -0014b3e0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -0014b3f0: 4143 2d36 2831 290a 2020 2d20 4e49 5354 AC-6(1). - NIST │ │ │ -0014b400: 2d38 3030 2d35 332d 434d 2d36 2861 290a -800-53-CM-6(a). │ │ │ -0014b410: 2020 2d20 5043 492d 4453 532d 5265 712d - PCI-DSS-Req- │ │ │ -0014b420: 322e 322e 340a 2020 2d20 5043 492d 4453 2.2.4. - PCI-DS │ │ │ -0014b430: 5376 342d 322e 320a 2020 2d20 5043 492d Sv4-2.2. - PCI- │ │ │ -0014b440: 4453 5376 342d 322e 322e 360a 2020 2d20 DSSv4-2.2.6. - │ │ │ -0014b450: 636f 6e66 6967 7572 655f 7374 7261 7465 configure_strate │ │ │ -0014b460: 6779 0a20 202d 2066 696c 655f 7065 726d gy. - file_perm │ │ │ -0014b470: 6973 7369 6f6e 735f 7373 6864 5f70 7562 issions_sshd_pub │ │ │ -0014b480: 5f6b 6579 0a20 202d 206c 6f77 5f63 6f6d _key. - low_com │ │ │ -0014b490: 706c 6578 6974 790a 2020 2d20 6c6f 775f plexity. - low_ │ │ │ -0014b4a0: 6469 7372 7570 7469 6f6e 0a20 202d 206d disruption. - m │ │ │ -0014b4b0: 6564 6975 6d5f 7365 7665 7269 7479 0a20 edium_severity. │ │ │ -0014b4c0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ -0014b4d0: 6465 640a 0a2d 206e 616d 653a 2046 696e ded..- name: Fin │ │ │ -0014b4e0: 6420 2f65 7463 2f73 7368 2f20 6669 6c65 d /etc/ssh/ file │ │ │ -0014b4f0: 2873 290a 2020 616e 7369 626c 652e 6275 (s). ansible.bu │ │ │ -0014b500: 696c 7469 6e2e 636f 6d6d 616e 643a 2066 iltin.command: f │ │ │ -0014b510: 696e 6420 2d50 202f 6574 632f 7373 682f ind -P /etc/ssh/ │ │ │ -0014b520: 202d 6d61 7864 6570 7468 2031 202d 7065 -maxdepth 1 -pe │ │ │ -0014b530: 726d 202f 752b 7873 2c67 2b78 7773 2c6f rm /u+xs,g+xws,o │ │ │ -0014b540: 2b78 7774 2020 2d74 7970 650a 2020 2020 +xwt -type. │ │ │ -0014b550: 6620 2d72 6567 6578 7479 7065 2070 6f73 f -regextype pos │ │ │ -0014b560: 6978 2d65 7874 656e 6465 6420 2d72 6567 ix-extended -reg │ │ │ -0014b570: 6578 2022 5e2e 2a5c 2e70 7562 2422 0a20 ex "^.*\.pub$". │ │ │ -0014b580: 2072 6567 6973 7465 723a 2066 696c 6573 register: files │ │ │ -0014b590: 5f66 6f75 6e64 0a20 2063 6861 6e67 6564 _found. changed │ │ │ -0014b5a0: 5f77 6865 6e3a 2066 616c 7365 0a20 2066 _when: false. f │ │ │ -0014b5b0: 6169 6c65 645f 7768 656e 3a20 6661 6c73 ailed_when: fals │ │ │ -0014b5c0: 650a 2020 6368 6563 6b5f 6d6f 6465 3a20 e. check_mode: │ │ │ -0014b5d0: 6661 6c73 650a 2020 7768 656e 3a20 2722 false. when: '" │ │ │ -0014b5e0: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ -0014b5f0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -0014b600: 7327 0a20 2074 6167 733a 0a20 202d 204e s'. tags:. - N │ │ │ -0014b610: 4953 542d 3830 302d 3137 312d 332e 312e IST-800-171-3.1. │ │ │ -0014b620: 3133 0a20 202d 204e 4953 542d 3830 302d 13. - NIST-800- │ │ │ -0014b630: 3137 312d 332e 3133 2e31 300a 2020 2d20 171-3.13.10. - │ │ │ -0014b640: 4e49 5354 2d38 3030 2d35 332d 4143 2d31 NIST-800-53-AC-1 │ │ │ -0014b650: 3728 6129 0a20 202d 204e 4953 542d 3830 7(a). - NIST-80 │ │ │ -0014b660: 302d 3533 2d41 432d 3628 3129 0a20 202d 0-53-AC-6(1). - │ │ │ -0014b670: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ -0014b680: 3628 6129 0a20 202d 2050 4349 2d44 5353 6(a). - PCI-DSS │ │ │ -0014b690: 2d52 6571 2d32 2e32 2e34 0a20 202d 2050 -Req-2.2.4. - P │ │ │ -0014b6a0: 4349 2d44 5353 7634 2d32 2e32 0a20 202d CI-DSSv4-2.2. - │ │ │ -0014b6b0: 2050 4349 2d44 5353 7634 2d32 2e32 2e36 PCI-DSSv4-2.2.6 │ │ │ -0014b6c0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73 . - configure_s │ │ │ -0014b6d0: 7472 6174 6567 790a 2020 2d20 6669 6c65 trategy. - file │ │ │ -0014b6e0: 5f70 6572 6d69 7373 696f 6e73 5f73 7368 _permissions_ssh │ │ │ -0014b6f0: 645f 7075 625f 6b65 790a 2020 2d20 6c6f d_pub_key. - lo │ │ │ -0014b700: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ -0014b710: 206c 6f77 5f64 6973 7275 7074 696f 6e0a low_disruption. │ │ │ -0014b720: 2020 2d20 6d65 6469 756d 5f73 6576 6572 - medium_sever │ │ │ -0014b730: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f ity. - no_reboo │ │ │ -0014b740: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65 t_needed..- name │ │ │ -0014b750: 3a20 5365 7420 7065 726d 6973 7369 6f6e : Set permission │ │ │ -0014b760: 7320 666f 7220 2f65 7463 2f73 7368 2f20 s for /etc/ssh/ │ │ │ -0014b770: 6669 6c65 2873 290a 2020 616e 7369 626c file(s). ansibl │ │ │ -0014b780: 652e 6275 696c 7469 6e2e 6669 6c65 3a0a e.builtin.file:. │ │ │ -0014b790: 2020 2020 7061 7468 3a20 277b 7b20 6974 path: '{{ it │ │ │ -0014b7a0: 656d 207d 7d27 0a20 2020 206d 6f64 653a em }}'. mode: │ │ │ -0014b7b0: 2075 2d78 732c 672d 7877 732c 6f2d 7877 u-xs,g-xws,o-xw │ │ │ -0014b7c0: 740a 2020 2020 7374 6174 653a 2066 696c t. state: fil │ │ │ -0014b7d0: 650a 2020 7769 7468 5f69 7465 6d73 3a0a e. with_items:. │ │ │ -0014b7e0: 2020 2d20 277b 7b20 6669 6c65 735f 666f - '{{ files_fo │ │ │ -0014b7f0: 756e 642e 7374 646f 7574 5f6c 696e 6573 und.stdout_lines │ │ │ -0014b800: 207d 7d27 0a20 2077 6865 6e3a 2027 226b }}'. when: '"k │ │ │ -0014b810: 6572 6e65 6c22 2069 6e20 616e 7369 626c ernel" in ansibl │ │ │ -0014b820: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -0014b830: 270a 2020 7461 6773 3a0a 2020 2d20 4e49 '. tags:. - NI │ │ │ -0014b840: 5354 2d38 3030 2d31 3731 2d33 2e31 2e31 ST-800-171-3.1.1 │ │ │ -0014b850: 330a 2020 2d20 4e49 5354 2d38 3030 2d31 3. - NIST-800-1 │ │ │ -0014b860: 3731 2d33 2e31 332e 3130 0a20 202d 204e 71-3.13.10. - N │ │ │ -0014b870: 4953 542d 3830 302d 3533 2d41 432d 3137 IST-800-53-AC-17 │ │ │ -0014b880: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ -0014b890: 2d35 332d 4143 2d36 2831 290a 2020 2d20 -53-AC-6(1). - │ │ │ -0014b8a0: 4e49 5354 2d38 3030 2d35 332d 434d 2d36 NIST-800-53-CM-6 │ │ │ -0014b8b0: 2861 290a 2020 2d20 5043 492d 4453 532d (a). - PCI-DSS- │ │ │ -0014b8c0: 5265 712d 322e 322e 340a 2020 2d20 5043 Req-2.2.4. - PC │ │ │ -0014b8d0: 492d 4453 5376 342d 322e 320a 2020 2d20 I-DSSv4-2.2. - │ │ │ -0014b8e0: 5043 492d 4453 5376 342d 322e 322e 360a PCI-DSSv4-2.2.6. │ │ │ -0014b8f0: 2020 2d20 636f 6e66 6967 7572 655f 7374 - configure_st │ │ │ -0014b900: 7261 7465 6779 0a20 202d 2066 696c 655f rategy. - file_ │ │ │ -0014b910: 7065 726d 6973 7369 6f6e 735f 7373 6864 permissions_sshd │ │ │ -0014b920: 5f70 7562 5f6b 6579 0a20 202d 206c 6f77 _pub_key. - low │ │ │ -0014b930: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ -0014b940: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20 low_disruption. │ │ │ -0014b950: 202d 206d 6564 6975 6d5f 7365 7665 7269 - medium_severi │ │ │ -0014b960: 7479 0a20 202d 206e 6f5f 7265 626f 6f74 ty. - no_reboot │ │ │ -0014b970: 5f6e 6565 6465 640a 3c2f 636f 6465 3e3c _needed.< │ │ │ +0014b040: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ +0014b050: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +0014b060: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
- 
│ │ │ +0014b190: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ +0014b1a0: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ +0014b1b0: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ +0014b1c0: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ +0014b1d0: 6f0a 2020 7461 6773 3a0a 2020 2d20 4e49  o.  tags:.  - NI
│ │ │ +0014b1e0: 5354 2d38 3030 2d31 3731 2d33 2e31 2e31  ST-800-171-3.1.1
│ │ │ +0014b1f0: 330a 2020 2d20 4e49 5354 2d38 3030 2d31  3.  - NIST-800-1
│ │ │ +0014b200: 3731 2d33 2e31 332e 3130 0a20 202d 204e  71-3.13.10.  - N
│ │ │ +0014b210: 4953 542d 3830 302d 3533 2d41 432d 3137  IST-800-53-AC-17
│ │ │ +0014b220: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +0014b230: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ +0014b240: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +0014b250: 2861 290a 2020 2d20 5043 492d 4453 532d  (a).  - PCI-DSS-
│ │ │ +0014b260: 5265 712d 322e 322e 340a 2020 2d20 5043  Req-2.2.4.  - PC
│ │ │ +0014b270: 492d 4453 5376 342d 322e 320a 2020 2d20  I-DSSv4-2.2.  - 
│ │ │ +0014b280: 5043 492d 4453 5376 342d 322e 322e 360a  PCI-DSSv4-2.2.6.
│ │ │ +0014b290: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +0014b2a0: 7261 7465 6779 0a20 202d 2066 696c 655f  rategy.  - file_
│ │ │ +0014b2b0: 7065 726d 6973 7369 6f6e 735f 7373 6864  permissions_sshd
│ │ │ +0014b2c0: 5f70 7562 5f6b 6579 0a20 202d 206c 6f77  _pub_key.  - low
│ │ │ +0014b2d0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +0014b2e0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +0014b2f0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +0014b300: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ +0014b310: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ +0014b320: 2046 696e 6420 2f65 7463 2f73 7368 2f20   Find /etc/ssh/ 
│ │ │ +0014b330: 6669 6c65 2873 290a 2020 616e 7369 626c  file(s).  ansibl
│ │ │ +0014b340: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ +0014b350: 643a 2066 696e 6420 2d50 202f 6574 632f  d: find -P /etc/
│ │ │ +0014b360: 7373 682f 202d 6d61 7864 6570 7468 2031  ssh/ -maxdepth 1
│ │ │ +0014b370: 202d 7065 726d 202f 752b 7873 2c67 2b78   -perm /u+xs,g+x
│ │ │ +0014b380: 7773 2c6f 2b78 7774 2020 2d74 7970 650a  ws,o+xwt  -type.
│ │ │ +0014b390: 2020 2020 6620 2d72 6567 6578 7479 7065      f -regextype
│ │ │ +0014b3a0: 2070 6f73 6978 2d65 7874 656e 6465 6420   posix-extended 
│ │ │ +0014b3b0: 2d72 6567 6578 2022 5e2e 2a5c 2e70 7562  -regex "^.*\.pub
│ │ │ +0014b3c0: 2422 0a20 2072 6567 6973 7465 723a 2066  $".  register: f
│ │ │ +0014b3d0: 696c 6573 5f66 6f75 6e64 0a20 2063 6861  iles_found.  cha
│ │ │ +0014b3e0: 6e67 6564 5f77 6865 6e3a 2066 616c 7365  nged_when: false
│ │ │ +0014b3f0: 0a20 2066 6169 6c65 645f 7768 656e 3a20  .  failed_when: 
│ │ │ +0014b400: 6661 6c73 650a 2020 6368 6563 6b5f 6d6f  false.  check_mo
│ │ │ +0014b410: 6465 3a20 6661 6c73 650a 2020 7768 656e  de: false.  when
│ │ │ +0014b420: 3a20 2722 6b65 726e 656c 2220 696e 2061  : '"kernel" in a
│ │ │ +0014b430: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +0014b440: 6b61 6765 7327 0a20 2074 6167 733a 0a20  kages'.  tags:. 
│ │ │ +0014b450: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ +0014b460: 332e 312e 3133 0a20 202d 204e 4953 542d  3.1.13.  - NIST-
│ │ │ +0014b470: 3830 302d 3137 312d 332e 3133 2e31 300a  800-171-3.13.10.
│ │ │ +0014b480: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +0014b490: 4143 2d31 3728 6129 0a20 202d 204e 4953  AC-17(a).  - NIS
│ │ │ +0014b4a0: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ +0014b4b0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +0014b4c0: 2d43 4d2d 3628 6129 0a20 202d 2050 4349  -CM-6(a).  - PCI
│ │ │ +0014b4d0: 2d44 5353 2d52 6571 2d32 2e32 2e34 0a20  -DSS-Req-2.2.4. 
│ │ │ +0014b4e0: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ +0014b4f0: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ +0014b500: 2e32 2e36 0a20 202d 2063 6f6e 6669 6775  .2.6.  - configu
│ │ │ +0014b510: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +0014b520: 6669 6c65 5f70 6572 6d69 7373 696f 6e73  file_permissions
│ │ │ +0014b530: 5f73 7368 645f 7075 625f 6b65 790a 2020  _sshd_pub_key.  
│ │ │ +0014b540: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +0014b550: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +0014b560: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ +0014b570: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ +0014b580: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +0014b590: 6e61 6d65 3a20 5365 7420 7065 726d 6973  name: Set permis
│ │ │ +0014b5a0: 7369 6f6e 7320 666f 7220 2f65 7463 2f73  sions for /etc/s
│ │ │ +0014b5b0: 7368 2f20 6669 6c65 2873 290a 2020 616e  sh/ file(s).  an
│ │ │ +0014b5c0: 7369 626c 652e 6275 696c 7469 6e2e 6669  sible.builtin.fi
│ │ │ +0014b5d0: 6c65 3a0a 2020 2020 7061 7468 3a20 277b  le:.    path: '{
│ │ │ +0014b5e0: 7b20 6974 656d 207d 7d27 0a20 2020 206d  { item }}'.    m
│ │ │ +0014b5f0: 6f64 653a 2075 2d78 732c 672d 7877 732c  ode: u-xs,g-xws,
│ │ │ +0014b600: 6f2d 7877 740a 2020 2020 7374 6174 653a  o-xwt.    state:
│ │ │ +0014b610: 2066 696c 650a 2020 7769 7468 5f69 7465   file.  with_ite
│ │ │ +0014b620: 6d73 3a0a 2020 2d20 277b 7b20 6669 6c65  ms:.  - '{{ file
│ │ │ +0014b630: 735f 666f 756e 642e 7374 646f 7574 5f6c  s_found.stdout_l
│ │ │ +0014b640: 696e 6573 207d 7d27 0a20 2077 6865 6e3a  ines }}'.  when:
│ │ │ +0014b650: 2027 226b 6572 6e65 6c22 2069 6e20 616e   '"kernel" in an
│ │ │ +0014b660: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +0014b670: 6167 6573 270a 2020 7461 6773 3a0a 2020  ages'.  tags:.  
│ │ │ +0014b680: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33  - NIST-800-171-3
│ │ │ +0014b690: 2e31 2e31 330a 2020 2d20 4e49 5354 2d38  .1.13.  - NIST-8
│ │ │ +0014b6a0: 3030 2d31 3731 2d33 2e31 332e 3130 0a20  00-171-3.13.10. 
│ │ │ +0014b6b0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +0014b6c0: 432d 3137 2861 290a 2020 2d20 4e49 5354  C-17(a).  - NIST
│ │ │ +0014b6d0: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ +0014b6e0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +0014b6f0: 434d 2d36 2861 290a 2020 2d20 5043 492d  CM-6(a).  - PCI-
│ │ │ +0014b700: 4453 532d 5265 712d 322e 322e 340a 2020  DSS-Req-2.2.4.  
│ │ │ +0014b710: 2d20 5043 492d 4453 5376 342d 322e 320a  - PCI-DSSv4-2.2.
│ │ │ +0014b720: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ +0014b730: 322e 360a 2020 2d20 636f 6e66 6967 7572  2.6.  - configur
│ │ │ +0014b740: 655f 7374 7261 7465 6779 0a20 202d 2066  e_strategy.  - f
│ │ │ +0014b750: 696c 655f 7065 726d 6973 7369 6f6e 735f  ile_permissions_
│ │ │ +0014b760: 7373 6864 5f70 7562 5f6b 6579 0a20 202d  sshd_pub_key.  -
│ │ │ +0014b770: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +0014b780: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +0014b790: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ +0014b7a0: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ +0014b7b0: 626f 6f74 5f6e 6565 6465 640a 3c2f 636f  boot_needed.
< │ │ │ +0014b7d0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +0014b7e0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +0014b7f0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +0014b800: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +0014b810: 6434 3035 2220 7461 6269 6e64 6578 3d22 d405" tabindex=" │ │ │ +0014b820: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +0014b830: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +0014b840: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +0014b850: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +0014b860: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +0014b870: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ +0014b880: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
inc
│ │ │ +0014b8d0: 6c75 6465 2073 7368 5f70 7562 6c69 635f  lude ssh_public_
│ │ │ +0014b8e0: 6b65 795f 7065 726d 730a 0a63 6c61 7373  key_perms..class
│ │ │ +0014b8f0: 2073 7368 5f70 7562 6c69 635f 6b65 795f   ssh_public_key_
│ │ │ +0014b900: 7065 726d 7320 7b0a 2020 6578 6563 207b  perms {.  exec {
│ │ │ +0014b910: 2027 7373 6864 5f70 7562 5f6b 6579 273a   'sshd_pub_key':
│ │ │ +0014b920: 0a20 2020 2063 6f6d 6d61 6e64 203d 2667  .    command =&g
│ │ │ +0014b930: 743b 2022 6368 6d6f 6420 3036 3434 202f  t; "chmod 0644 /
│ │ │ +0014b940: 6574 632f 7373 682f 2a2e 7075 6222 2c0a  etc/ssh/*.pub",.
│ │ │ +0014b950: 2020 2020 7061 7468 2020 2020 3d26 6774      path    =>
│ │ │ +0014b960: 3b20 272f 6269 6e3a 2f75 7372 2f62 696e  ; '/bin:/usr/bin
│ │ │ +0014b970: 270a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  '.  }.}.<
│ │ │  0014b980: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediati │ │ │ -001cc9e0: 6f6e 204f 5342 7569 6c64 2042 6c75 6570 on OSBuild Bluep │ │ │ -001cc9f0: 7269 6e74 2073 6e69 7070 6574 20e2 87b2 rint snippet ... │ │ │ -001cca00: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
.[[packages]]
│ │ │ -001cca50: 0a6e 616d 6520 3d20 2261 7564 6974 220a  .name = "audit".
│ │ │ -001cca60: 7665 7273 696f 6e20 3d20 222a 220a 3c2f  version = "*".
Re │ │ │ -001ccb20: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ -001ccb30: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -001ccb40: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
Com │ │ │ +0014b0e0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +0014b110: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +0014b130: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +0014b140: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +0014b160: 2f74 683e 3c74 643e 636f 6e66 6967 7572 /th>configur │ │ │ +0014b170: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
low< │ │ │ -001ccbe0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -001ccc30: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ -001ccbc0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -001ccbf0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -001ccc10: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -001ccc20: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -001ccc40: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -001ccc50: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
incl
│ │ │ -001ccc70: 7564 6520 696e 7374 616c 6c5f 6175 6469  ude install_audi
│ │ │ -001ccc80: 740a 0a63 6c61 7373 2069 6e73 7461 6c6c  t..class install
│ │ │ -001ccc90: 5f61 7564 6974 207b 0a20 2070 6163 6b61  _audit {.  packa
│ │ │ -001ccca0: 6765 207b 2027 6175 6469 7427 3a0a 2020  ge { 'audit':.  
│ │ │ -001cccb0: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ -001cccc0: 696e 7374 616c 6c65 6427 2c0a 2020 7d0a  installed',.  }.
│ │ │ -001cccd0: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -001ccce0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -001ccd90: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -001ccda0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -001cce20: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -001cce40: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -001cce90: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
- name: Gather 
│ │ │ -001ccee0: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -001ccef0: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -001ccf00: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -001ccf10: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -001ccf20: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001ccf30: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -001ccf40: 302d 3533 2d41 552d 3132 2832 290a 2020  0-53-AU-12(2).  
│ │ │ -001ccf50: 2d20 4e49 5354 2d38 3030 2d35 332d 4155  - NIST-800-53-AU
│ │ │ -001ccf60: 2d31 340a 2020 2d20 4e49 5354 2d38 3030  -14.  - NIST-800
│ │ │ -001ccf70: 2d35 332d 4155 2d32 2861 290a 2020 2d20  -53-AU-2(a).  - 
│ │ │ -001ccf80: 4e49 5354 2d38 3030 2d35 332d 4155 2d37  NIST-800-53-AU-7
│ │ │ -001ccf90: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ -001ccfa0: 2d35 332d 4155 2d37 2832 290a 2020 2d20  -53-AU-7(2).  - 
│ │ │ -001ccfb0: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -001ccfc0: 2861 290a 2020 2d20 5043 492d 4453 532d  (a).  - PCI-DSS-
│ │ │ -001ccfd0: 5265 712d 3130 2e31 0a20 202d 2050 4349  Req-10.1.  - PCI
│ │ │ -001ccfe0: 2d44 5353 7634 2d31 302e 320a 2020 2d20  -DSSv4-10.2.  - 
│ │ │ -001ccff0: 5043 492d 4453 5376 342d 3130 2e32 2e31  PCI-DSSv4-10.2.1
│ │ │ -001cd000: 0a20 202d 2065 6e61 626c 655f 7374 7261  .  - enable_stra
│ │ │ -001cd010: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ -001cd020: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ -001cd030: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -001cd040: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -001cd050: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -001cd060: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ -001cd070: 6175 6469 745f 696e 7374 616c 6c65 640a  audit_installed.
│ │ │ -001cd080: 0a2d 206e 616d 653a 2045 6e73 7572 6520  .- name: Ensure 
│ │ │ -001cd090: 6175 6469 7420 6973 2069 6e73 7461 6c6c  audit is install
│ │ │ -001cd0a0: 6564 0a20 2061 6e73 6962 6c65 2e62 7569  ed.  ansible.bui
│ │ │ -001cd0b0: 6c74 696e 2e70 6163 6b61 6765 3a0a 2020  ltin.package:.  
│ │ │ -001cd0c0: 2020 6e61 6d65 3a20 6175 6469 740a 2020    name: audit.  
│ │ │ -001cd0d0: 2020 7374 6174 653a 2070 7265 7365 6e74    state: present
│ │ │ -001cd0e0: 0a20 2077 6865 6e3a 2027 226b 6572 6e65  .  when: '"kerne
│ │ │ -001cd0f0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -001cd100: 6374 732e 7061 636b 6167 6573 270a 2020  cts.packages'.  
│ │ │ -001cd110: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ -001cd120: 3030 2d35 332d 4143 2d37 2861 290a 2020  00-53-AC-7(a).  
│ │ │ -001cd130: 2d20 4e49 5354 2d38 3030 2d35 332d 4155  - NIST-800-53-AU
│ │ │ -001cd140: 2d31 3228 3229 0a20 202d 204e 4953 542d  -12(2).  - NIST-
│ │ │ -001cd150: 3830 302d 3533 2d41 552d 3134 0a20 202d  800-53-AU-14.  -
│ │ │ -001cd160: 204e 4953 542d 3830 302d 3533 2d41 552d   NIST-800-53-AU-
│ │ │ -001cd170: 3228 6129 0a20 202d 204e 4953 542d 3830  2(a).  - NIST-80
│ │ │ -001cd180: 302d 3533 2d41 552d 3728 3129 0a20 202d  0-53-AU-7(1).  -
│ │ │ -001cd190: 204e 4953 542d 3830 302d 3533 2d41 552d   NIST-800-53-AU-
│ │ │ -001cd1a0: 3728 3229 0a20 202d 204e 4953 542d 3830  7(2).  - NIST-80
│ │ │ -001cd1b0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -001cd1c0: 2050 4349 2d44 5353 2d52 6571 2d31 302e   PCI-DSS-Req-10.
│ │ │ -001cd1d0: 310a 2020 2d20 5043 492d 4453 5376 342d  1.  - PCI-DSSv4-
│ │ │ -001cd1e0: 3130 2e32 0a20 202d 2050 4349 2d44 5353  10.2.  - PCI-DSS
│ │ │ -001cd1f0: 7634 2d31 302e 322e 310a 2020 2d20 656e  v4-10.2.1.  - en
│ │ │ -001cd200: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ -001cd210: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001cd220: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -001cd230: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ -001cd240: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ -001cd250: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ -001cd260: 2070 6163 6b61 6765 5f61 7564 6974 5f69   package_audit_i
│ │ │ -001cd270: 6e73 7461 6c6c 6564 0a3c 2f63 6f64 653e  nstalled.
│ │ │ +001cc9e0: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070  on Ansible snipp
│ │ │ +001cc9f0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...
│ │ │ +001cca70: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ +001ccb00: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
low
Disr │ │ │ -001cce50: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -001cce60: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -001ccea0: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ -001cceb0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexi │ │ │ +001cca80: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +001cca90: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +001ccad0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +001ccae0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
│ │ │ +001ccb20: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ +001ccb30: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ +001ccb40: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ +001ccb50: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ +001ccb60: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ +001ccb70: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +001ccb80: 332d 4143 2d37 2861 290a 2020 2d20 4e49  3-AC-7(a).  - NI
│ │ │ +001ccb90: 5354 2d38 3030 2d35 332d 4155 2d31 3228  ST-800-53-AU-12(
│ │ │ +001ccba0: 3229 0a20 202d 204e 4953 542d 3830 302d  2).  - NIST-800-
│ │ │ +001ccbb0: 3533 2d41 552d 3134 0a20 202d 204e 4953  53-AU-14.  - NIS
│ │ │ +001ccbc0: 542d 3830 302d 3533 2d41 552d 3228 6129  T-800-53-AU-2(a)
│ │ │ +001ccbd0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001ccbe0: 2d41 552d 3728 3129 0a20 202d 204e 4953  -AU-7(1).  - NIS
│ │ │ +001ccbf0: 542d 3830 302d 3533 2d41 552d 3728 3229  T-800-53-AU-7(2)
│ │ │ +001ccc00: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001ccc10: 2d43 4d2d 3628 6129 0a20 202d 2050 4349  -CM-6(a).  - PCI
│ │ │ +001ccc20: 2d44 5353 2d52 6571 2d31 302e 310a 2020  -DSS-Req-10.1.  
│ │ │ +001ccc30: 2d20 5043 492d 4453 5376 342d 3130 2e32  - PCI-DSSv4-10.2
│ │ │ +001ccc40: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ +001ccc50: 302e 322e 310a 2020 2d20 656e 6162 6c65  0.2.1.  - enable
│ │ │ +001ccc60: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ +001ccc70: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +001ccc80: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +001ccc90: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +001ccca0: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ +001cccb0: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ +001cccc0: 6b61 6765 5f61 7564 6974 5f69 6e73 7461  kage_audit_insta
│ │ │ +001cccd0: 6c6c 6564 0a0a 2d20 6e61 6d65 3a20 456e  lled..- name: En
│ │ │ +001ccce0: 7375 7265 2061 7564 6974 2069 7320 696e  sure audit is in
│ │ │ +001cccf0: 7374 616c 6c65 640a 2020 616e 7369 626c  stalled.  ansibl
│ │ │ +001ccd00: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ +001ccd10: 653a 0a20 2020 206e 616d 653a 2061 7564  e:.    name: aud
│ │ │ +001ccd20: 6974 0a20 2020 2073 7461 7465 3a20 7072  it.    state: pr
│ │ │ +001ccd30: 6573 656e 740a 2020 7768 656e 3a20 2722  esent.  when: '"
│ │ │ +001ccd40: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001ccd50: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001ccd60: 7327 0a20 2074 6167 733a 0a20 202d 204e  s'.  tags:.  - N
│ │ │ +001ccd70: 4953 542d 3830 302d 3533 2d41 432d 3728  IST-800-53-AC-7(
│ │ │ +001ccd80: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001ccd90: 3533 2d41 552d 3132 2832 290a 2020 2d20  53-AU-12(2).  - 
│ │ │ +001ccda0: 4e49 5354 2d38 3030 2d35 332d 4155 2d31  NIST-800-53-AU-1
│ │ │ +001ccdb0: 340a 2020 2d20 4e49 5354 2d38 3030 2d35  4.  - NIST-800-5
│ │ │ +001ccdc0: 332d 4155 2d32 2861 290a 2020 2d20 4e49  3-AU-2(a).  - NI
│ │ │ +001ccdd0: 5354 2d38 3030 2d35 332d 4155 2d37 2831  ST-800-53-AU-7(1
│ │ │ +001ccde0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001ccdf0: 332d 4155 2d37 2832 290a 2020 2d20 4e49  3-AU-7(2).  - NI
│ │ │ +001cce00: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +001cce10: 290a 2020 2d20 5043 492d 4453 532d 5265  ).  - PCI-DSS-Re
│ │ │ +001cce20: 712d 3130 2e31 0a20 202d 2050 4349 2d44  q-10.1.  - PCI-D
│ │ │ +001cce30: 5353 7634 2d31 302e 320a 2020 2d20 5043  SSv4-10.2.  - PC
│ │ │ +001cce40: 492d 4453 5376 342d 3130 2e32 2e31 0a20  I-DSSv4-10.2.1. 
│ │ │ +001cce50: 202d 2065 6e61 626c 655f 7374 7261 7465   - enable_strate
│ │ │ +001cce60: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ +001cce70: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ +001cce80: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ +001cce90: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001ccea0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +001cceb0: 640a 2020 2d20 7061 636b 6167 655f 6175  d.  - package_au
│ │ │ +001ccec0: 6469 745f 696e 7374 616c 6c65 640a 3c2f  dit_installed.
Re │ │ │ +001ccf80: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ +001ccf90: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +001ccfa0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +001cd040: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +001cd090: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +001cd020: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +001cd050: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +001cd070: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +001cd080: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +001cd0a0: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +001cd0b0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
incl
│ │ │ +001cd0d0: 7564 6520 696e 7374 616c 6c5f 6175 6469  ude install_audi
│ │ │ +001cd0e0: 740a 0a63 6c61 7373 2069 6e73 7461 6c6c  t..class install
│ │ │ +001cd0f0: 5f61 7564 6974 207b 0a20 2070 6163 6b61  _audit {.  packa
│ │ │ +001cd100: 6765 207b 2027 6175 6469 7427 3a0a 2020  ge { 'audit':.  
│ │ │ +001cd110: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ +001cd120: 696e 7374 616c 6c65 6427 2c0a 2020 7d0a  installed',.  }.
│ │ │ +001cd130: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ +001cd140: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation OS │ │ │ +001cd1f0: 4275 696c 6420 426c 7565 7072 696e 7420 Build Blueprint │ │ │ +001cd200: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +001cd210: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
.[
│ │ │ +001cd250: 5b70 6163 6b61 6765 735d 5d0a 6e61 6d65  [packages]].name
│ │ │ +001cd260: 203d 2022 6175 6469 7422 0a76 6572 7369   = "audit".versi
│ │ │ +001cd270: 6f6e 203d 2022 2a22 0a3c 2f63 6f64 653e  on = "*".
│ │ │  001cd280: 3c2f 7072 653e 3c2f 6469 763e 3c2f 6469  
Remediation OSB │ │ │ -001ceb70: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ -001ceb80: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
.[c
│ │ │ -001cebd0: 7573 746f 6d69 7a61 7469 6f6e 732e 7365  ustomizations.se
│ │ │ -001cebe0: 7276 6963 6573 5d0a 656e 6162 6c65 6420  rvices].enabled 
│ │ │ -001cebf0: 3d20 5b22 6175 6469 7464 225d 0a3c 2f63  = ["auditd"].
│ │ │ -001cec10: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -001cecb0: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ -001cecc0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -001cecd0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -001ced50: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -001ced80: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -001ceda0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001cedb0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -001cedd0: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -001cedf0: 3c70 7265 3e3c 636f 6465 3e69 6e63 6c75
inclu
│ │ │ -001cee00: 6465 2065 6e61 626c 655f 6175 6469 7464  de enable_auditd
│ │ │ -001cee10: 0a0a 636c 6173 7320 656e 6162 6c65 5f61  ..class enable_a
│ │ │ -001cee20: 7564 6974 6420 7b0a 2020 7365 7276 6963  uditd {.  servic
│ │ │ -001cee30: 6520 7b27 6175 6469 7464 273a 0a20 2020  e {'auditd':.   
│ │ │ -001cee40: 2065 6e61 626c 6520 3d26 6774 3b20 7472   enable => tr
│ │ │ -001cee50: 7565 2c0a 2020 2020 656e 7375 7265 203d  ue,.    ensure =
│ │ │ -001cee60: 2667 743b 2027 7275 6e6e 696e 6727 2c0a  > 'running',.
│ │ │ -001cee70: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediatio │ │ │ -001cef30: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ -001cef40: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -001cefc0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -001cefd0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -001ceff0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -001cf000: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -001cf020: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -001cf040: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ -001cf070: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ -001cf080: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ -001cf090: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ -001cf0a0: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ -001cf0b0: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ -001cf0c0: 0a20 202d 2043 4a49 532d 352e 342e 312e  .  - CJIS-5.4.1.
│ │ │ -001cf0d0: 310a 2020 2d20 4e49 5354 2d38 3030 2d31  1.  - NIST-800-1
│ │ │ -001cf0e0: 3731 2d33 2e33 2e31 0a20 202d 204e 4953  71-3.3.1.  - NIS
│ │ │ -001cf0f0: 542d 3830 302d 3137 312d 332e 332e 320a  T-800-171-3.3.2.
│ │ │ -001cf100: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ -001cf110: 2d33 2e33 2e36 0a20 202d 204e 4953 542d  -3.3.6.  - NIST-
│ │ │ -001cf120: 3830 302d 3533 2d41 432d 3228 6729 0a20  800-53-AC-2(g). 
│ │ │ -001cf130: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001cf140: 432d 3628 3929 0a20 202d 204e 4953 542d  C-6(9).  - NIST-
│ │ │ -001cf150: 3830 302d 3533 2d41 552d 3130 0a20 202d  800-53-AU-10.  -
│ │ │ -001cf160: 204e 4953 542d 3830 302d 3533 2d41 552d   NIST-800-53-AU-
│ │ │ -001cf170: 3132 2863 290a 2020 2d20 4e49 5354 2d38  12(c).  - NIST-8
│ │ │ -001cf180: 3030 2d35 332d 4155 2d31 3428 3129 0a20  00-53-AU-14(1). 
│ │ │ -001cf190: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001cf1a0: 552d 3228 6429 0a20 202d 204e 4953 542d  U-2(d).  - NIST-
│ │ │ -001cf1b0: 3830 302d 3533 2d41 552d 330a 2020 2d20  800-53-AU-3.  - 
│ │ │ -001cf1c0: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -001cf1d0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001cf1e0: 2d35 332d 5349 2d34 2832 3329 0a20 202d  -53-SI-4(23).  -
│ │ │ -001cf1f0: 2050 4349 2d44 5353 2d52 6571 2d31 302e   PCI-DSS-Req-10.
│ │ │ -001cf200: 310a 2020 2d20 5043 492d 4453 5376 342d  1.  - PCI-DSSv4-
│ │ │ -001cf210: 3130 2e32 0a20 202d 2050 4349 2d44 5353  10.2.  - PCI-DSS
│ │ │ -001cf220: 7634 2d31 302e 322e 310a 2020 2d20 656e  v4-10.2.1.  - en
│ │ │ -001cf230: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ -001cf240: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001cf250: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -001cf260: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ -001cf270: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ -001cf280: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ -001cf290: 2073 6572 7669 6365 5f61 7564 6974 645f   service_auditd_
│ │ │ -001cf2a0: 656e 6162 6c65 640a 0a2d 206e 616d 653a  enabled..- name:
│ │ │ -001cf2b0: 2045 6e61 626c 6520 6175 6469 7464 2053   Enable auditd S
│ │ │ -001cf2c0: 6572 7669 6365 202d 2045 6e61 626c 6520  ervice - Enable 
│ │ │ -001cf2d0: 7365 7276 6963 6520 6175 6469 7464 0a20  service auditd. 
│ │ │ -001cf2e0: 2062 6c6f 636b 3a0a 0a20 202d 206e 616d   block:..  - nam
│ │ │ -001cf2f0: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ -001cf300: 636b 6167 6520 6661 6374 730a 2020 2020  ckage facts.    
│ │ │ -001cf310: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -001cf320: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -001cf330: 2020 2020 206d 616e 6167 6572 3a20 6175       manager: au
│ │ │ -001cf340: 746f 0a0a 2020 2d20 6e61 6d65 3a20 456e  to..  - name: En
│ │ │ -001cf350: 6162 6c65 2061 7564 6974 6420 5365 7276  able auditd Serv
│ │ │ -001cf360: 6963 6520 2d20 456e 6162 6c65 2053 6572  ice - Enable Ser
│ │ │ -001cf370: 7669 6365 2061 7564 6974 640a 2020 2020  vice auditd.    
│ │ │ -001cf380: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -001cf390: 7379 7374 656d 643a 0a20 2020 2020 206e  systemd:.      n
│ │ │ -001cf3a0: 616d 653a 2061 7564 6974 640a 2020 2020  ame: auditd.    
│ │ │ -001cf3b0: 2020 656e 6162 6c65 643a 2074 7275 650a    enabled: true.
│ │ │ -001cf3c0: 2020 2020 2020 7374 6174 653a 2073 7461        state: sta
│ │ │ -001cf3d0: 7274 6564 0a20 2020 2020 206d 6173 6b65  rted.      maske
│ │ │ -001cf3e0: 643a 2066 616c 7365 0a20 2020 2077 6865  d: false.    whe
│ │ │ -001cf3f0: 6e3a 0a20 2020 202d 2027 2261 7564 6974  n:.    - '"audit
│ │ │ -001cf400: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001cf410: 7473 2e70 6163 6b61 6765 7327 0a20 2074  ts.packages'.  t
│ │ │ -001cf420: 6167 733a 0a20 202d 2043 4a49 532d 352e  ags:.  - CJIS-5.
│ │ │ -001cf430: 342e 312e 310a 2020 2d20 4e49 5354 2d38  4.1.1.  - NIST-8
│ │ │ -001cf440: 3030 2d31 3731 2d33 2e33 2e31 0a20 202d  00-171-3.3.1.  -
│ │ │ -001cf450: 204e 4953 542d 3830 302d 3137 312d 332e   NIST-800-171-3.
│ │ │ -001cf460: 332e 320a 2020 2d20 4e49 5354 2d38 3030  3.2.  - NIST-800
│ │ │ -001cf470: 2d31 3731 2d33 2e33 2e36 0a20 202d 204e  -171-3.3.6.  - N
│ │ │ -001cf480: 4953 542d 3830 302d 3533 2d41 432d 3228  IST-800-53-AC-2(
│ │ │ -001cf490: 6729 0a20 202d 204e 4953 542d 3830 302d  g).  - NIST-800-
│ │ │ -001cf4a0: 3533 2d41 432d 3628 3929 0a20 202d 204e  53-AC-6(9).  - N
│ │ │ -001cf4b0: 4953 542d 3830 302d 3533 2d41 552d 3130  IST-800-53-AU-10
│ │ │ -001cf4c0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001cf4d0: 2d41 552d 3132 2863 290a 2020 2d20 4e49  -AU-12(c).  - NI
│ │ │ -001cf4e0: 5354 2d38 3030 2d35 332d 4155 2d31 3428  ST-800-53-AU-14(
│ │ │ -001cf4f0: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ -001cf500: 3533 2d41 552d 3228 6429 0a20 202d 204e  53-AU-2(d).  - N
│ │ │ -001cf510: 4953 542d 3830 302d 3533 2d41 552d 330a  IST-800-53-AU-3.
│ │ │ -001cf520: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001cf530: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ -001cf540: 2d38 3030 2d35 332d 5349 2d34 2832 3329  -800-53-SI-4(23)
│ │ │ -001cf550: 0a20 202d 2050 4349 2d44 5353 2d52 6571  .  - PCI-DSS-Req
│ │ │ -001cf560: 2d31 302e 310a 2020 2d20 5043 492d 4453  -10.1.  - PCI-DS
│ │ │ -001cf570: 5376 342d 3130 2e32 0a20 202d 2050 4349  Sv4-10.2.  - PCI
│ │ │ -001cf580: 2d44 5353 7634 2d31 302e 322e 310a 2020  -DSSv4-10.2.1.  
│ │ │ -001cf590: 2d20 656e 6162 6c65 5f73 7472 6174 6567  - enable_strateg
│ │ │ -001cf5a0: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -001cf5b0: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -001cf5c0: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ -001cf5d0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001cf5e0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001cf5f0: 0a20 202d 2073 6572 7669 6365 5f61 7564  .  - service_aud
│ │ │ -001cf600: 6974 645f 656e 6162 6c65 640a 2020 2d20  itd_enabled.  - 
│ │ │ -001cf610: 7370 6563 6961 6c5f 7365 7276 6963 655f  special_service_
│ │ │ -001cf620: 626c 6f63 6b0a 2020 7768 656e 3a0a 2020  block.  when:.  
│ │ │ -001cf630: 2d20 2722 6b65 726e 656c 2220 696e 2061  - '"kernel" in a
│ │ │ -001cf640: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001cf650: 6b61 6765 7327 0a20 202d 2027 2261 7564  kages'.  - '"aud
│ │ │ -001cf660: 6974 2220 696e 2061 6e73 6962 6c65 5f66  it" in ansible_f
│ │ │ -001cf670: 6163 7473 2e70 6163 6b61 6765 7327 0a3c  acts.packages'.<
│ │ │ +001ceb60: 3e52 656d 6564 6961 7469 6f6e 2041 6e73  >Remediation Ans
│ │ │ +001ceb70: 6962 6c65 2073 6e69 7070 6574 20e2 87b2  ible snippet ...
│ │ │ +001ceb80: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
Complexity: │ │ │ +001cec50: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +001cec60: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +001cecb0: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ +001cecc0: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ +001cecd0: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ +001cece0: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ +001cecf0: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ +001ced00: 434a 4953 2d35 2e34 2e31 2e31 0a20 202d  CJIS-5.4.1.1.  -
│ │ │ +001ced10: 204e 4953 542d 3830 302d 3137 312d 332e   NIST-800-171-3.
│ │ │ +001ced20: 332e 310a 2020 2d20 4e49 5354 2d38 3030  3.1.  - NIST-800
│ │ │ +001ced30: 2d31 3731 2d33 2e33 2e32 0a20 202d 204e  -171-3.3.2.  - N
│ │ │ +001ced40: 4953 542d 3830 302d 3137 312d 332e 332e  IST-800-171-3.3.
│ │ │ +001ced50: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +001ced60: 332d 4143 2d32 2867 290a 2020 2d20 4e49  3-AC-2(g).  - NI
│ │ │ +001ced70: 5354 2d38 3030 2d35 332d 4143 2d36 2839  ST-800-53-AC-6(9
│ │ │ +001ced80: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001ced90: 332d 4155 2d31 300a 2020 2d20 4e49 5354  3-AU-10.  - NIST
│ │ │ +001ceda0: 2d38 3030 2d35 332d 4155 2d31 3228 6329  -800-53-AU-12(c)
│ │ │ +001cedb0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001cedc0: 2d41 552d 3134 2831 290a 2020 2d20 4e49  -AU-14(1).  - NI
│ │ │ +001cedd0: 5354 2d38 3030 2d35 332d 4155 2d32 2864  ST-800-53-AU-2(d
│ │ │ +001cede0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001cedf0: 332d 4155 2d33 0a20 202d 204e 4953 542d  3-AU-3.  - NIST-
│ │ │ +001cee00: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +001cee10: 202d 204e 4953 542d 3830 302d 3533 2d53   - NIST-800-53-S
│ │ │ +001cee20: 492d 3428 3233 290a 2020 2d20 5043 492d  I-4(23).  - PCI-
│ │ │ +001cee30: 4453 532d 5265 712d 3130 2e31 0a20 202d  DSS-Req-10.1.  -
│ │ │ +001cee40: 2050 4349 2d44 5353 7634 2d31 302e 320a   PCI-DSSv4-10.2.
│ │ │ +001cee50: 2020 2d20 5043 492d 4453 5376 342d 3130    - PCI-DSSv4-10
│ │ │ +001cee60: 2e32 2e31 0a20 202d 2065 6e61 626c 655f  .2.1.  - enable_
│ │ │ +001cee70: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ +001cee80: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001cee90: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +001ceea0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001ceeb0: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ +001ceec0: 5f6e 6565 6465 640a 2020 2d20 7365 7276  _needed.  - serv
│ │ │ +001ceed0: 6963 655f 6175 6469 7464 5f65 6e61 626c  ice_auditd_enabl
│ │ │ +001ceee0: 6564 0a0a 2d20 6e61 6d65 3a20 456e 6162  ed..- name: Enab
│ │ │ +001ceef0: 6c65 2061 7564 6974 6420 5365 7276 6963  le auditd Servic
│ │ │ +001cef00: 6520 2d20 456e 6162 6c65 2073 6572 7669  e - Enable servi
│ │ │ +001cef10: 6365 2061 7564 6974 640a 2020 626c 6f63  ce auditd.  bloc
│ │ │ +001cef20: 6b3a 0a0a 2020 2d20 6e61 6d65 3a20 4761  k:..  - name: Ga
│ │ │ +001cef30: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ +001cef40: 2066 6163 7473 0a20 2020 2061 6e73 6962   facts.    ansib
│ │ │ +001cef50: 6c65 2e62 7569 6c74 696e 2e70 6163 6b61  le.builtin.packa
│ │ │ +001cef60: 6765 5f66 6163 7473 3a0a 2020 2020 2020  ge_facts:.      
│ │ │ +001cef70: 6d61 6e61 6765 723a 2061 7574 6f0a 0a20  manager: auto.. 
│ │ │ +001cef80: 202d 206e 616d 653a 2045 6e61 626c 6520   - name: Enable 
│ │ │ +001cef90: 6175 6469 7464 2053 6572 7669 6365 202d  auditd Service -
│ │ │ +001cefa0: 2045 6e61 626c 6520 5365 7276 6963 6520   Enable Service 
│ │ │ +001cefb0: 6175 6469 7464 0a20 2020 2061 6e73 6962  auditd.    ansib
│ │ │ +001cefc0: 6c65 2e62 7569 6c74 696e 2e73 7973 7465  le.builtin.syste
│ │ │ +001cefd0: 6d64 3a0a 2020 2020 2020 6e61 6d65 3a20  md:.      name: 
│ │ │ +001cefe0: 6175 6469 7464 0a20 2020 2020 2065 6e61  auditd.      ena
│ │ │ +001ceff0: 626c 6564 3a20 7472 7565 0a20 2020 2020  bled: true.     
│ │ │ +001cf000: 2073 7461 7465 3a20 7374 6172 7465 640a   state: started.
│ │ │ +001cf010: 2020 2020 2020 6d61 736b 6564 3a20 6661        masked: fa
│ │ │ +001cf020: 6c73 650a 2020 2020 7768 656e 3a0a 2020  lse.    when:.  
│ │ │ +001cf030: 2020 2d20 2722 6175 6469 7422 2069 6e20    - '"audit" in 
│ │ │ +001cf040: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001cf050: 636b 6167 6573 270a 2020 7461 6773 3a0a  ckages'.  tags:.
│ │ │ +001cf060: 2020 2d20 434a 4953 2d35 2e34 2e31 2e31    - CJIS-5.4.1.1
│ │ │ +001cf070: 0a20 202d 204e 4953 542d 3830 302d 3137  .  - NIST-800-17
│ │ │ +001cf080: 312d 332e 332e 310a 2020 2d20 4e49 5354  1-3.3.1.  - NIST
│ │ │ +001cf090: 2d38 3030 2d31 3731 2d33 2e33 2e32 0a20  -800-171-3.3.2. 
│ │ │ +001cf0a0: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ +001cf0b0: 332e 332e 360a 2020 2d20 4e49 5354 2d38  3.3.6.  - NIST-8
│ │ │ +001cf0c0: 3030 2d35 332d 4143 2d32 2867 290a 2020  00-53-AC-2(g).  
│ │ │ +001cf0d0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001cf0e0: 2d36 2839 290a 2020 2d20 4e49 5354 2d38  -6(9).  - NIST-8
│ │ │ +001cf0f0: 3030 2d35 332d 4155 2d31 300a 2020 2d20  00-53-AU-10.  - 
│ │ │ +001cf100: 4e49 5354 2d38 3030 2d35 332d 4155 2d31  NIST-800-53-AU-1
│ │ │ +001cf110: 3228 6329 0a20 202d 204e 4953 542d 3830  2(c).  - NIST-80
│ │ │ +001cf120: 302d 3533 2d41 552d 3134 2831 290a 2020  0-53-AU-14(1).  
│ │ │ +001cf130: 2d20 4e49 5354 2d38 3030 2d35 332d 4155  - NIST-800-53-AU
│ │ │ +001cf140: 2d32 2864 290a 2020 2d20 4e49 5354 2d38  -2(d).  - NIST-8
│ │ │ +001cf150: 3030 2d35 332d 4155 2d33 0a20 202d 204e  00-53-AU-3.  - N
│ │ │ +001cf160: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +001cf170: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001cf180: 3533 2d53 492d 3428 3233 290a 2020 2d20  53-SI-4(23).  - 
│ │ │ +001cf190: 5043 492d 4453 532d 5265 712d 3130 2e31  PCI-DSS-Req-10.1
│ │ │ +001cf1a0: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ +001cf1b0: 302e 320a 2020 2d20 5043 492d 4453 5376  0.2.  - PCI-DSSv
│ │ │ +001cf1c0: 342d 3130 2e32 2e31 0a20 202d 2065 6e61  4-10.2.1.  - ena
│ │ │ +001cf1d0: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ +001cf1e0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +001cf1f0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +001cf200: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ +001cf210: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ +001cf220: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ +001cf230: 7365 7276 6963 655f 6175 6469 7464 5f65  service_auditd_e
│ │ │ +001cf240: 6e61 626c 6564 0a20 202d 2073 7065 6369  nabled.  - speci
│ │ │ +001cf250: 616c 5f73 6572 7669 6365 5f62 6c6f 636b  al_service_block
│ │ │ +001cf260: 0a20 2077 6865 6e3a 0a20 202d 2027 226b  .  when:.  - '"k
│ │ │ +001cf270: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +001cf280: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001cf290: 270a 2020 2d20 2722 6175 6469 7422 2069  '.  - '"audit" i
│ │ │ +001cf2a0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001cf2b0: 7061 636b 6167 6573 270a 3c2f 636f 6465  packages'.
Remedi │ │ │ +001cf370: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ +001cf380: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +001cf390: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +001cf3c0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
low
Disru │ │ │ +001cec30: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +001cec40: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +001cec80: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +001cec90: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ +001cf430: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +001cf450: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +001cf480: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ +001cf4a0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ +001cf410: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +001cf420: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +001cf460: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001cf470: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
include │ │ │ +001cf4c0: 656e 6162 6c65 5f61 7564 6974 640a 0a63 enable_auditd..c │ │ │ +001cf4d0: 6c61 7373 2065 6e61 626c 655f 6175 6469 lass enable_audi │ │ │ +001cf4e0: 7464 207b 0a20 2073 6572 7669 6365 207b td {. service { │ │ │ +001cf4f0: 2761 7564 6974 6427 3a0a 2020 2020 656e 'auditd':. en │ │ │ +001cf500: 6162 6c65 203d 2667 743b 2074 7275 652c able => true, │ │ │ +001cf510: 0a20 2020 2065 6e73 7572 6520 3d26 6774 . ensure => │ │ │ +001cf520: 3b20 2772 756e 6e69 6e67 272c 0a20 207d ; 'running',. } │ │ │ +001cf530: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e .}.
│ │ │ +001cf540: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation O │ │ │ +001cf5f0: 5342 7569 6c64 2042 6c75 6570 7269 6e74 SBuild Blueprint │ │ │ +001cf600: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +001cf610: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
.
│ │ │ +001cf650: 5b63 7573 746f 6d69 7a61 7469 6f6e 732e  [customizations.
│ │ │ +001cf660: 7365 7276 6963 6573 5d0a 656e 6162 6c65  services].enable
│ │ │ +001cf670: 6420 3d20 5b22 6175 6469 7464 225d 0a3c  d = ["auditd"].<
│ │ │  001cf680: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -212,14 +195,31 @@ │ │ │ │ - PCI-DSSv4-11.5.2 │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_aide_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_aide │ │ │ │ + │ │ │ │ +class install_aide { │ │ │ │ + package { 'aide': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "aide" │ │ │ │ +version = "*" │ │ │ │ ****** RRuullee? ?  BBuuiilldd aanndd TTeesstt AAIIDDEE DDaattaabbaassee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ Run the following command to generate a new database: │ │ │ │ $ sudo /usr/sbin/aide --init │ │ │ │ By default, the database will be written to the file /var/lib/aide/aide.db.new.gz. Storing the │ │ │ │ database, the configuration file /etc/aide.conf, and the binary /usr/sbin/aide (or hashes of these │ │ │ │ files), in a secure location (such as on read-only media) provides additional assurance about their │ │ │ │ integrity. The newly-generated database can be installed as follows: │ │ │ │ @@ -5267,31 +5267,14 @@ │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 SR 2.10, SR 2.11, SR 2.12, SR 2.8, SR 2.9 │ │ │ │ References: _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.4.1, A.12.4.2, A.12.4.3, A.12.4.4, A.12.7.1 │ │ │ │ _n_i_s_t CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.PT-1 │ │ │ │ _p_c_i_d_s_s Req-10.7 │ │ │ │ _a_n_s_s_i R71 │ │ │ │ _p_c_i_d_s_s_4 10.5.1, 10.5 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "logrotate" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_logrotate │ │ │ │ - │ │ │ │ -class install_logrotate { │ │ │ │ - package { 'logrotate': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -5320,14 +5303,31 @@ │ │ │ │ - PCI-DSSv4-10.5.1 │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_logrotate_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_logrotate │ │ │ │ + │ │ │ │ +class install_logrotate { │ │ │ │ + package { 'logrotate': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "logrotate" │ │ │ │ +version = "*" │ │ │ │ Group   Network Configuration and Firewalls   Group contains 11 groups and 17 rules │ │ │ │ _[_r_e_f_]   Most systems must be connected to a network of some sort, and this brings with it the │ │ │ │ substantial risk of network attack. This section discusses the security impact of decisions about │ │ │ │ networking which must be made when configuring a system. │ │ │ │ │ │ │ │ This section also discusses firewalls, network access controls, and other network security │ │ │ │ frameworks, which allow system-level rules to be written that can limit an attackers' ability to │ │ │ │ @@ -5430,31 +5430,14 @@ │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_firewalld_installed │ │ │ │ _n_i_s_t CM-6(a) │ │ │ │ _o_s_p_p FMT_SMF_EXT.1 │ │ │ │ References: _o_s_-_s_r_g SRG-OS-000096-GPOS-00050, SRG-OS-000297-GPOS-00115, SRG-OS-000298-GPOS-00116, │ │ │ │ SRG-OS-000480-GPOS-00227, SRG-OS-000480-GPOS-00232 │ │ │ │ _i_s_m 1409 │ │ │ │ _p_c_i_d_s_s_4 1.2.1, 1.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "firewalld" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_firewalld │ │ │ │ - │ │ │ │ -class install_firewalld { │ │ │ │ - package { 'firewalld': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -5481,14 +5464,31 @@ │ │ │ │ - PCI-DSSv4-1.2.1 │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_firewalld_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_firewalld │ │ │ │ + │ │ │ │ +class install_firewalld { │ │ │ │ + package { 'firewalld': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "firewalld" │ │ │ │ +version = "*" │ │ │ │ ****** RRuullee? ?  VVeerriiffyy ffiirreewwaalllldd EEnnaabblleedd ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The firewalld service can be enabled with the following command: │ │ │ │ $ sudo systemctl enable firewalld.service │ │ │ │ Access control methods provide the ability to enhance system security posture by │ │ │ │ Rationale: restricting services and known good IP addresses and address ranges. This prevents │ │ │ │ connections from unknown hosts and protocols. │ │ │ │ Severity:  medium │ │ │ │ @@ -5504,31 +5504,14 @@ │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1 │ │ │ │ _o_s_p_p FMT_SMF_EXT.1 │ │ │ │ _o_s_-_s_r_g SRG-OS-000096-GPOS-00050, SRG-OS-000297-GPOS-00115, SRG-OS-000480-GPOS- │ │ │ │ 00227, SRG-OS-000480-GPOS-00231, SRG-OS-000480-GPOS-00232 │ │ │ │ _b_s_i SYS.1.6.A5, SYS.1.6.A21 │ │ │ │ _i_s_m 1409 │ │ │ │ _p_c_i_d_s_s_4 1.2.1, 1.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -enabled = ["firewalld"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include enable_firewalld │ │ │ │ - │ │ │ │ -class enable_firewalld { │ │ │ │ - service {'firewalld': │ │ │ │ - enable => true, │ │ │ │ - ensure => 'running', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -5581,14 +5564,31 @@ │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_firewalld_enabled │ │ │ │ - special_service_block │ │ │ │ when: │ │ │ │ - '"kernel" in ansible_facts.packages' │ │ │ │ - '"firewalld" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include enable_firewalld │ │ │ │ + │ │ │ │ +class enable_firewalld { │ │ │ │ + service {'firewalld': │ │ │ │ + enable => true, │ │ │ │ + ensure => 'running', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +enabled = ["firewalld"] │ │ │ │ Group   Strengthen the Default Ruleset   Group contains 2 rules │ │ │ │ _[_r_e_f_]   The default rules can be strengthened. The system scripts that activate the firewall rules │ │ │ │ expect them to be defined in configuration files under the /etc/firewalld/services and /etc/ │ │ │ │ firewalld/zones directories. │ │ │ │ │ │ │ │ The following recommendations describe how to strengthen the default ruleset configuration file. An │ │ │ │ alternative to editing this configuration file is to create a shell script that makes calls to the │ │ │ │ @@ -10532,31 +10532,14 @@ │ │ │ │ $ sudo yum install libselinux │ │ │ │ Security-enhanced Linux is a feature of the Linux kernel and a number of utilities with │ │ │ │ Rationale: enhanced security functionality designed to add mandatory access controls to Linux. The │ │ │ │ libselinux package contains the core library of the Security-enhanced Linux system. │ │ │ │ Severity:  high │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_libselinux_installed │ │ │ │ References: _p_c_i_d_s_s_4 1.2.6, 1.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "libselinux" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_libselinux │ │ │ │ - │ │ │ │ -class install_libselinux { │ │ │ │ - package { 'libselinux': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -10581,14 +10564,31 @@ │ │ │ │ - PCI-DSSv4-1.2.6 │ │ │ │ - enable_strategy │ │ │ │ - high_severity │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - package_libselinux_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_libselinux │ │ │ │ + │ │ │ │ +class install_libselinux { │ │ │ │ + package { 'libselinux': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "libselinux" │ │ │ │ +version = "*" │ │ │ │ ****** RRuullee? ?  EEnnssuurree SSEELLiinnuuxx NNoott DDiissaabblleedd iinn //eettcc//ddeeffaauulltt//ggrruubb ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ SELinux can be disabled at boot time by an argument in /etc/default/grub. Remove any instances of │ │ │ │ selinux=0 from the kernel arguments in that file to prevent SELinux from being disabled at boot. │ │ │ │ Disabling a major host protection feature, such as SELinux, at boot time prevents it │ │ │ │ Rationale: from confining system services at boot time. Further, it increases the chances that it │ │ │ │ will remain off during system operation. │ │ │ │ Severity:  medium │ │ │ │ @@ -10892,31 +10892,14 @@ │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 1.5, SR 1.6, SR 1.7, SR 1.8, SR 1.9, SR 2.1, SR 2.2, SR 2.3, SR 2.4, SR │ │ │ │ 2.5, SR 2.6, SR 2.7, SR 7.6 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.1.2, A.12.5.1, A.12.6.2, A.14.2.2, A.14.2.3, A.14.2.4, A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-3 │ │ │ │ _i_s_m 1409 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -masked = ["avahi-daemon"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include disable_avahi-daemon │ │ │ │ - │ │ │ │ -class disable_avahi-daemon { │ │ │ │ - service {'avahi-daemon': │ │ │ │ - enable => false, │ │ │ │ - ensure => 'stopped', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -10978,14 +10961,31 @@ │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_avahi-daemon_disabled │ │ │ │ - special_service_block │ │ │ │ when: ( "avahi" in ansible_facts.packages and "kernel" in ansible_facts.packages │ │ │ │ ) │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include disable_avahi-daemon │ │ │ │ + │ │ │ │ +class disable_avahi-daemon { │ │ │ │ + service {'avahi-daemon': │ │ │ │ + enable => false, │ │ │ │ + ensure => 'stopped', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +masked = ["avahi-daemon"] │ │ │ │ Group   Cron and At Daemons   Group contains 1 group and 27 rules │ │ │ │ _[_r_e_f_]   The cron and at services are used to allow commands to be executed at a later time. The cron │ │ │ │ service is required by almost all systems to perform necessary maintenance tasks, while at may or │ │ │ │ may not be required on a given system. Both daemons should be configured defensively. │ │ │ │ Group   Restrict at and cron to Authorized Users if Necessary   Group contains 8 rules │ │ │ │ _[_r_e_f_]   The /etc/cron.allow and /etc/at.allow files contain lists of users who are allowed to use │ │ │ │ cron and at to delay execution of processes. If these files exist and if the corresponding files / │ │ │ │ @@ -11704,31 +11704,14 @@ │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 1.5, SR 1.6, SR 1.7, SR 1.8, SR 1.9, SR 2.1, SR 2.2, SR 2.3, SR 2.4, SR │ │ │ │ 2.5, SR 2.6, SR 2.7, SR 7.6 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.1.2, A.12.5.1, A.12.6.2, A.14.2.2, A.14.2.3, A.14.2.4, A.9.1.2 │ │ │ │ _n_i_s_t CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-3 │ │ │ │ _o_s_-_s_r_g SRG-OS-000480-GPOS-00227 │ │ │ │ _p_c_i_d_s_s_4 2.2.6, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "cron" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_cron │ │ │ │ - │ │ │ │ -class install_cron { │ │ │ │ - package { 'cron': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -11755,14 +11738,31 @@ │ │ │ │ - PCI-DSSv4-2.2.6 │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_cron_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_cron │ │ │ │ + │ │ │ │ +class install_cron { │ │ │ │ + package { 'cron': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "cron" │ │ │ │ +version = "*" │ │ │ │ ****** RRuullee? ?  VVeerriiffyy GGrroouupp WWhhoo OOwwnnss ccrroonn..dd ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ To properly set the group owner of /etc/cron.d, run the command: │ │ │ │ $ sudo chgrp root /etc/cron.d │ │ │ │ Service configuration files enable or disable features of their respective services that │ │ │ │ Rationale: if configured incorrectly can lead to insecure and vulnerable configurations. Therefore, │ │ │ │ service configuration files should be owned by the correct group to prevent unauthorized │ │ │ │ changes. │ │ │ │ @@ -13607,31 +13607,14 @@ │ │ │ │ following command: │ │ │ │ $ sudo systemctl mask --now rpcbind.service │ │ │ │ Rationale: If the system does not require rpc based services, it is recommended that rpcbind be │ │ │ │ disabled to reduce the attack surface. │ │ │ │ Severity:  low │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_service_rpcbind_disabled │ │ │ │ References: _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -masked = ["rpcbind"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include disable_rpcbind │ │ │ │ - │ │ │ │ -class disable_rpcbind { │ │ │ │ - service {'rpcbind': │ │ │ │ - enable => false, │ │ │ │ - ensure => 'stopped', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -13685,14 +13668,31 @@ │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_rpcbind_disabled │ │ │ │ - special_service_block │ │ │ │ when: '"kernel" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include disable_rpcbind │ │ │ │ + │ │ │ │ +class disable_rpcbind { │ │ │ │ + service {'rpcbind': │ │ │ │ + enable => false, │ │ │ │ + ensure => 'stopped', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +masked = ["rpcbind"] │ │ │ │ Group   Network Time Protocol   Group contains 6 rules │ │ │ │ _[_r_e_f_]   The Network Time Protocol is used to manage the system clock over a network. Computer clocks │ │ │ │ are not very accurate, so time will drift unpredictably on unmanaged systems. Central time protocols │ │ │ │ can be used both to ensure that time is consistent among a network of systems, and that their time │ │ │ │ is consistent with the outside world. │ │ │ │ │ │ │ │ If every system on a network reliably reports the same time, then it is much easier to correlate log │ │ │ │ @@ -13745,31 +13745,14 @@ │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_chrony_installed │ │ │ │ _o_s_p_p FMT_SMF_EXT.1 │ │ │ │ _p_c_i_d_s_s Req-10.4 │ │ │ │ References: _o_s_-_s_r_g SRG-OS-000355-GPOS-00143 │ │ │ │ _a_n_s_s_i R71 │ │ │ │ _i_s_m 0988, 1405 │ │ │ │ _p_c_i_d_s_s_4 10.6.1, 10.6 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "chrony" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_chrony │ │ │ │ - │ │ │ │ -class install_chrony { │ │ │ │ - package { 'chrony': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -13796,14 +13779,31 @@ │ │ │ │ - PCI-DSSv4-10.6.1 │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_chrony_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_chrony │ │ │ │ + │ │ │ │ +class install_chrony { │ │ │ │ + package { 'chrony': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "chrony" │ │ │ │ +version = "*" │ │ │ │ ****** RRuullee? ?  EEnnaabbllee tthhee NNTTPP DDaaeemmoonn ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ Run the following command to determine the current status of the chronyd service: │ │ │ │ $ sudo systemctl is-active chronyd │ │ │ │ If the service is running, it should return the following: │ │ │ │ active │ │ │ │ Note: The chronyd daemon is enabled by default. │ │ │ │ │ │ │ │ @@ -13856,31 +13856,14 @@ │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_0_9 4.3.3.3.9, 4.3.3.5.8, 4.3.4.4.7, 4.4.2.1, 4.4.2.2, 4.4.2.4 │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 SR 2.10, SR 2.11, SR 2.12, SR 2.8, SR 2.9 │ │ │ │ References: _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.4.1, A.12.4.2, A.12.4.3, A.12.4.4, A.12.7.1 │ │ │ │ _n_i_s_t CM-6(a), AU-8(1)(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.PT-1 │ │ │ │ _p_c_i_d_s_s Req-10.4 │ │ │ │ _p_c_i_d_s_s_4 10.6.1, 10.6 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -enabled = ["ntpd"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include enable_ntpd │ │ │ │ - │ │ │ │ -class enable_ntpd { │ │ │ │ - service {'ntpd': │ │ │ │ - enable => true, │ │ │ │ - ensure => 'running', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -13925,14 +13908,31 @@ │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_ntpd_enabled │ │ │ │ - special_service_block │ │ │ │ when: │ │ │ │ - '"kernel" in ansible_facts.packages' │ │ │ │ - '"ntp" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include enable_ntpd │ │ │ │ + │ │ │ │ +class enable_ntpd { │ │ │ │ + service {'ntpd': │ │ │ │ + enable => true, │ │ │ │ + ensure => 'running', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +enabled = ["ntpd"] │ │ │ │ ****** RRuullee? ?  AA rreemmoottee ttiimmee sseerrvveerr ffoorr CChhrroonnyy iiss ccoonnffiigguurreedd ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ Chrony is a daemon which implements the Network Time Protocol (NTP). It is designed to synchronize │ │ │ │ system clocks across a variety of systems and use a source that is highly accurate. More │ │ │ │ information on chrony can be found at _h_t_t_p_s_:_/_/_c_h_r_o_n_y_-_p_r_o_j_e_c_t_._o_r_g_/. Chrony can be configured to be a │ │ │ │ client and/or a server. Add or edit server or pool lines to /etc/chrony.conf as appropriate: │ │ │ │ server │ │ │ │ Alternatively, server or pool directives can be specified in files included via sourcedir or │ │ │ │ @@ -14358,27 +14358,14 @@ │ │ │ │ Severity:  unknown │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_ypbind_removed │ │ │ │ _h_i_p_a_a 164.308(a)(4)(i), 164.308(b)(1), 164.308(b)(3), 164.310(b), 164.312(e)(1), │ │ │ │ 164.312(e)(2)(ii) │ │ │ │ References: _a_n_s_s_i R62 │ │ │ │ _i_s_m 1409 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_ypbind │ │ │ │ - │ │ │ │ -class remove_ypbind { │ │ │ │ - package { 'ypbind': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Remove NIS Client: Ensure ypbind is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -14389,14 +14376,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - package_ypbind_removed │ │ │ │ - unknown_severity │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_ypbind │ │ │ │ + │ │ │ │ +class remove_ypbind { │ │ │ │ + package { 'ypbind': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove ypbind │ │ │ │ @@ -14423,27 +14423,14 @@ │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_rsh_removed │ │ │ │ _c_u_i 3.1.13 │ │ │ │ _h_i_p_a_a 164.308(a)(4)(i), 164.308(b)(1), 164.308(b)(3), 164.310(b), 164.312(e)(1), │ │ │ │ References: 164.312(e)(2)(ii) │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.8.2.3, A.13.1.1, A.13.2.1, A.13.2.3, A.14.1.2, A.14.1.3 │ │ │ │ _a_n_s_s_i R62 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_rsh │ │ │ │ - │ │ │ │ -class remove_rsh { │ │ │ │ - package { 'rsh': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall rsh Package: Ensure rsh is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -14455,14 +14442,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - package_rsh_removed │ │ │ │ - unknown_severity │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_rsh │ │ │ │ + │ │ │ │ +class remove_rsh { │ │ │ │ + package { 'rsh': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove rsh │ │ │ │ @@ -14486,27 +14486,14 @@ │ │ │ │ (or intentional) activation of talk services. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_talk-server_removed │ │ │ │ _h_i_p_a_a 164.308(a)(4)(i), 164.308(b)(1), 164.308(b)(3), 164.310(b), 164.312(e)(1), │ │ │ │ References: 164.312(e)(2)(ii) │ │ │ │ _a_n_s_s_i R62 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_talk-server │ │ │ │ - │ │ │ │ -class remove_talk-server { │ │ │ │ - package { 'talk-server': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall talk-server Package: Ensure talk-server is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -14517,14 +14504,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_talk-server_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_talk-server │ │ │ │ + │ │ │ │ +class remove_talk-server { │ │ │ │ + package { 'talk-server': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove talk-server │ │ │ │ @@ -14548,27 +14548,14 @@ │ │ │ │ intentional) activation of talk client program. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_talk_removed │ │ │ │ _h_i_p_a_a 164.308(a)(4)(i), 164.308(b)(1), 164.308(b)(3), 164.310(b), 164.312(e)(1), │ │ │ │ References: 164.312(e)(2)(ii) │ │ │ │ _a_n_s_s_i R62 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_talk │ │ │ │ - │ │ │ │ -class remove_talk { │ │ │ │ - package { 'talk': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall talk Package: Ensure talk is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -14579,14 +14566,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_talk_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_talk │ │ │ │ + │ │ │ │ +class remove_talk { │ │ │ │ + package { 'talk': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove talk │ │ │ │ @@ -14613,27 +14613,14 @@ │ │ │ │ _c_u_i 3.1.13 │ │ │ │ _h_i_p_a_a 164.308(a)(4)(i), 164.308(b)(1), 164.308(b)(3), 164.310(b), 164.312(e)(1), │ │ │ │ 164.312(e)(2)(ii) │ │ │ │ References: _i_s_o_2_7_0_0_1_-_2_0_1_3 A.8.2.3, A.13.1.1, A.13.2.1, A.13.2.3, A.14.1.2, A.14.1.3 │ │ │ │ _a_n_s_s_i R62 │ │ │ │ _i_s_m 1409 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_telnet │ │ │ │ - │ │ │ │ -class remove_telnet { │ │ │ │ - package { 'telnet': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Remove telnet Clients: Ensure telnet is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -14645,14 +14632,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_telnet_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_telnet │ │ │ │ + │ │ │ │ +class remove_telnet { │ │ │ │ + package { 'telnet': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove telnet │ │ │ │ @@ -14669,31 +14669,14 @@ │ │ │ │ The rsyncd service can be disabled with the following command: │ │ │ │ $ sudo systemctl mask --now rsyncd.service │ │ │ │ Rationale: The rsyncd service presents a security risk as it uses unencrypted protocols for │ │ │ │ communication. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_service_rsyncd_disabled │ │ │ │ References: _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -masked = ["rsyncd"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include disable_rsyncd │ │ │ │ - │ │ │ │ -class disable_rsyncd { │ │ │ │ - service {'rsyncd': │ │ │ │ - enable => false, │ │ │ │ - ensure => 'stopped', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -14748,14 +14731,31 @@ │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_rsyncd_disabled │ │ │ │ - special_service_block │ │ │ │ when: '"kernel" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include disable_rsyncd │ │ │ │ + │ │ │ │ +class disable_rsyncd { │ │ │ │ + service {'rsyncd': │ │ │ │ + enable => false, │ │ │ │ + ensure => 'stopped', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +masked = ["rsyncd"] │ │ │ │ Group   SSH Server   Group contains 1 group and 21 rules │ │ │ │ _[_r_e_f_]   The SSH protocol is recommended for remote login and remote file transfer. SSH provides │ │ │ │ confidentiality and integrity for data exchanged between two systems, as well as server │ │ │ │ authentication, through the use of public key cryptography. The implementation included with the │ │ │ │ system is called OpenSSH, and more detailed documentation is available from its website, _h_t_t_p_s_:_/_/ │ │ │ │ _w_w_w_._o_p_e_n_s_s_h_._c_o_m. Its server program is called sshd and provided by the RPM package openssh-server. │ │ │ │ Group   Configure OpenSSH Server if Necessary   Group contains 18 rules │ │ │ │ @@ -16957,23 +16957,14 @@ │ │ │ │ _n_i_s_t AC-17(a), CM-6(a), AC-6(1) │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-4, PR.DS-5 │ │ │ │ _p_c_i_d_s_s Req-2.2.4 │ │ │ │ _o_s_-_s_r_g SRG-OS-000480-GPOS-00227 │ │ │ │ _a_n_s_s_i R50 │ │ │ │ _i_s_m 1449 │ │ │ │ _p_c_i_d_s_s_4 2.2.6, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -include ssh_private_key_perms │ │ │ │ - │ │ │ │ -class ssh_private_key_perms { │ │ │ │ - exec { 'sshd_priv_key': │ │ │ │ - command => "chmod 0640 /etc/ssh/*_key", │ │ │ │ - path => '/bin:/usr/bin' │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -17037,14 +17028,23 @@ │ │ │ │ - PCI-DSSv4-2.2.6 │ │ │ │ - configure_strategy │ │ │ │ - file_permissions_sshd_private_key │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +include ssh_private_key_perms │ │ │ │ + │ │ │ │ +class ssh_private_key_perms { │ │ │ │ + exec { 'sshd_priv_key': │ │ │ │ + command => "chmod 0640 /etc/ssh/*_key", │ │ │ │ + path => '/bin:/usr/bin' │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ │ │ │ │ for keyfile in /etc/ssh/*_key; do │ │ │ │ test -f "$keyfile" || continue │ │ │ │ if test root:root = "$(stat -c "%U:%G" "$keyfile")"; then │ │ │ │ @@ -17083,23 +17083,14 @@ │ │ │ │ 3 R5.1.2 │ │ │ │ _n_i_s_t AC-17(a), CM-6(a), AC-6(1) │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-4, PR.DS-5 │ │ │ │ _p_c_i_d_s_s Req-2.2.4 │ │ │ │ _o_s_-_s_r_g SRG-OS-000480-GPOS-00227 │ │ │ │ _a_n_s_s_i R50 │ │ │ │ _p_c_i_d_s_s_4 2.2.6, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -include ssh_public_key_perms │ │ │ │ - │ │ │ │ -class ssh_public_key_perms { │ │ │ │ - exec { 'sshd_pub_key': │ │ │ │ - command => "chmod 0644 /etc/ssh/*.pub", │ │ │ │ - path => '/bin:/usr/bin' │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -17163,14 +17154,23 @@ │ │ │ │ - PCI-DSSv4-2.2.6 │ │ │ │ - configure_strategy │ │ │ │ - file_permissions_sshd_pub_key │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +include ssh_public_key_perms │ │ │ │ + │ │ │ │ +class ssh_public_key_perms { │ │ │ │ + exec { 'sshd_pub_key': │ │ │ │ + command => "chmod 0644 /etc/ssh/*.pub", │ │ │ │ + path => '/bin:/usr/bin' │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -26372,31 +26372,14 @@ │ │ │ │ SRG-OS-000337-GPOS-00129, SRG-OS-000348-GPOS-00136, SRG-OS-000349-GPOS-00137, │ │ │ │ SRG-OS-000350-GPOS-00138, SRG-OS-000351-GPOS-00139, SRG-OS-000352-GPOS-00140, │ │ │ │ SRG-OS-000353-GPOS-00141, SRG-OS-000354-GPOS-00142, SRG-OS-000358-GPOS-00145, │ │ │ │ SRG-OS-000365-GPOS-00152, SRG-OS-000392-GPOS-00172, SRG-OS-000475-GPOS-00220 │ │ │ │ _a_n_s_s_i R33, R73 │ │ │ │ _i_s_m 0582, 0846 │ │ │ │ _p_c_i_d_s_s_4 10.2.1, 10.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "audit" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_audit │ │ │ │ - │ │ │ │ -class install_audit { │ │ │ │ - package { 'audit': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -26437,14 +26420,31 @@ │ │ │ │ - PCI-DSSv4-10.2.1 │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_audit_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_audit │ │ │ │ + │ │ │ │ +class install_audit { │ │ │ │ + package { 'audit': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "audit" │ │ │ │ +version = "*" │ │ │ │ ****** RRuullee? ?  EEnnaabbllee aauuddiittdd SSeerrvviiccee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The auditd service is an essential userspace component of the Linux Auditing System, as it is │ │ │ │ responsible for writing audit records to disk. The auditd service can be enabled with the following │ │ │ │ command: │ │ │ │ $ sudo systemctl enable auditd.service │ │ │ │ Without establishing what type of events occurred, it would be difficult to establish, │ │ │ │ correlate, and investigate the events leading up to an outage or attack. Ensuring the │ │ │ │ @@ -26490,31 +26490,14 @@ │ │ │ │ 000354-GPOS-00142, SRG-OS-000358-GPOS-00145, SRG-OS-000365-GPOS-00152, │ │ │ │ SRG-OS-000392-GPOS-00172, SRG-OS-000475-GPOS-00220 │ │ │ │ _a_p_p_-_s_r_g_-_c_t_r SRG-APP-000095-CTR-000170, SRG-APP-000409-CTR-000990, SRG-APP-000508-CTR- │ │ │ │ 001300, SRG-APP-000510-CTR-001310 │ │ │ │ _a_n_s_s_i R33, R73 │ │ │ │ _i_s_m 1409 │ │ │ │ _p_c_i_d_s_s_4 10.2.1, 10.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -enabled = ["auditd"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include enable_auditd │ │ │ │ - │ │ │ │ -class enable_auditd { │ │ │ │ - service {'auditd': │ │ │ │ - enable => true, │ │ │ │ - ensure => 'running', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -26581,14 +26564,31 @@ │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_auditd_enabled │ │ │ │ - special_service_block │ │ │ │ when: │ │ │ │ - '"kernel" in ansible_facts.packages' │ │ │ │ - '"audit" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include enable_auditd │ │ │ │ + │ │ │ │ +class enable_auditd { │ │ │ │ + service {'auditd': │ │ │ │ + enable => true, │ │ │ │ + ensure => 'running', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +enabled = ["auditd"] │ │ │ │ ****** RRuullee? ?  EEnnaabbllee AAuuddiittiinngg ffoorr PPrroocceesssseess WWhhiicchh SSttaarrtt PPrriioorr ttoo tthhee AAuuddiitt DDaaeemmoonn ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ To ensure all processes can be audited, even those which start prior to the audit daemon, add the │ │ │ │ argument audit=1 to the default GRUB 2 command line for the Linux operating system. Configure the │ │ │ │ default Grub2 kernel command line to contain audit=1 as follows: │ │ │ │ # grub2-editenv - set "$(grub2-editenv - list | grep kernelopts) audit=1" │ │ │ │ Each process on the system carries an "auditable" flag which indicates whether its │ │ │ │ Rationale: activities can be audited. Although auditd takes care of enabling this for all processes │ │ ├── ./usr/share/doc/ssg-nondebian/ssg-alinux2-guide-standard.html │ │ │ @@ -20088,175 +20088,175 @@ │ │ │ 0004e770: 6c61 7073 6522 2064 6174 612d 7461 7267 lapse" data-targ │ │ │ 0004e780: 6574 3d22 2369 6432 3922 2074 6162 696e et="#id29" tabin │ │ │ 0004e790: 6465 783d 2230 2220 726f 6c65 3d22 6275 dex="0" role="bu │ │ │ 0004e7a0: 7474 6f6e 2220 6172 6961 2d65 7870 616e tton" aria-expan │ │ │ 0004e7b0: 6465 643d 2266 616c 7365 2220 7469 746c ded="false" titl │ │ │ 0004e7c0: 653d 2241 6374 6976 6174 6520 746f 2072 e="Activate to r │ │ │ 0004e7d0: 6576 6561 6c22 2068 7265 663d 2223 2122 eveal" href="#!" │ │ │ -0004e7e0: 3e52 656d 6564 6961 7469 6f6e 204f 5342 >Remediation OSB │ │ │ -0004e7f0: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ -0004e800: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
.[cu
│ │ │ -0004e850: 7374 6f6d 697a 6174 696f 6e73 2e73 6572  stomizations.ser
│ │ │ -0004e860: 7669 6365 735d 0a65 6e61 626c 6564 203d  vices].enabled =
│ │ │ -0004e870: 205b 2266 6972 6577 616c 6c64 225d 0a3c   ["firewalld"].<
│ │ │ -0004e880: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Re │ │ │ -0004e930: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ -0004e940: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -0004e950: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
Com │ │ │ -0004e9d0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -0004ea00: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -0004ea20: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -0004ea30: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -0004ea50: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -0004ea70: 3c70 7265 3e3c 636f 6465 3e69 6e63 6c75
inclu
│ │ │ -0004ea80: 6465 2065 6e61 626c 655f 6669 7265 7761  de enable_firewa
│ │ │ -0004ea90: 6c6c 640a 0a63 6c61 7373 2065 6e61 626c  lld..class enabl
│ │ │ -0004eaa0: 655f 6669 7265 7761 6c6c 6420 7b0a 2020  e_firewalld {.  
│ │ │ -0004eab0: 7365 7276 6963 6520 7b27 6669 7265 7761  service {'firewa
│ │ │ -0004eac0: 6c6c 6427 3a0a 2020 2020 656e 6162 6c65  lld':.    enable
│ │ │ -0004ead0: 203d 2667 743b 2074 7275 652c 0a20 2020   => true,.   
│ │ │ -0004eae0: 2065 6e73 7572 6520 3d26 6774 3b20 2772   ensure => 'r
│ │ │ -0004eaf0: 756e 6e69 6e67 272c 0a20 207d 0a7d 0a3c  unning',.  }.}.<
│ │ │ -0004eb00: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Re │ │ │ -0004ebb0: 6d65 6469 6174 696f 6e20 416e 7369 626c mediation Ansibl │ │ │ -0004ebc0: 6520 736e 6970 7065 7420 e287 b23c 2f61 e snippet ...
low< │ │ │ -0004ec70: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -0004ecc0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ -0004ec50: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -0004ec80: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -0004eca0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -0004ecb0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -0004ecd0: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -0004ece0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -0004ed00: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ -0004ed10: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ -0004ed20: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ -0004ed30: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ -0004ed40: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -0004ed50: 2d38 3030 2d31 3731 2d33 2e31 2e33 0a20  -800-171-3.1.3. 
│ │ │ -0004ed60: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ -0004ed70: 332e 342e 370a 2020 2d20 4e49 5354 2d38  3.4.7.  - NIST-8
│ │ │ -0004ed80: 3030 2d35 332d 4143 2d34 0a20 202d 204e  00-53-AC-4.  - N
│ │ │ -0004ed90: 4953 542d 3830 302d 3533 2d43 412d 3328  IST-800-53-CA-3(
│ │ │ -0004eda0: 3529 0a20 202d 204e 4953 542d 3830 302d  5).  - NIST-800-
│ │ │ -0004edb0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ -0004edc0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -0004edd0: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ -0004ede0: 3533 2d53 432d 3728 3231 290a 2020 2d20  53-SC-7(21).  - 
│ │ │ -0004edf0: 5043 492d 4453 5376 342d 312e 320a 2020  PCI-DSSv4-1.2.  
│ │ │ -0004ee00: 2d20 5043 492d 4453 5376 342d 312e 322e  - PCI-DSSv4-1.2.
│ │ │ -0004ee10: 310a 2020 2d20 656e 6162 6c65 5f73 7472  1.  - enable_str
│ │ │ -0004ee20: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ -0004ee30: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ -0004ee40: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -0004ee50: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -0004ee60: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -0004ee70: 6564 6564 0a20 202d 2073 6572 7669 6365  eded.  - service
│ │ │ -0004ee80: 5f66 6972 6577 616c 6c64 5f65 6e61 626c  _firewalld_enabl
│ │ │ -0004ee90: 6564 0a0a 2d20 6e61 6d65 3a20 5665 7269  ed..- name: Veri
│ │ │ -0004eea0: 6679 2066 6972 6577 616c 6c64 2045 6e61  fy firewalld Ena
│ │ │ -0004eeb0: 626c 6564 202d 2045 6e61 626c 6520 7365  bled - Enable se
│ │ │ -0004eec0: 7276 6963 6520 6669 7265 7761 6c6c 640a  rvice firewalld.
│ │ │ -0004eed0: 2020 626c 6f63 6b3a 0a0a 2020 2d20 6e61    block:..  - na
│ │ │ -0004eee0: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ -0004eef0: 6163 6b61 6765 2066 6163 7473 0a20 2020  ackage facts.   
│ │ │ -0004ef00: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -0004ef10: 2e70 6163 6b61 6765 5f66 6163 7473 3a0a  .package_facts:.
│ │ │ -0004ef20: 2020 2020 2020 6d61 6e61 6765 723a 2061        manager: a
│ │ │ -0004ef30: 7574 6f0a 0a20 202d 206e 616d 653a 2056  uto..  - name: V
│ │ │ -0004ef40: 6572 6966 7920 6669 7265 7761 6c6c 6420  erify firewalld 
│ │ │ -0004ef50: 456e 6162 6c65 6420 2d20 456e 6162 6c65  Enabled - Enable
│ │ │ -0004ef60: 2053 6572 7669 6365 2066 6972 6577 616c   Service firewal
│ │ │ -0004ef70: 6c64 0a20 2020 2061 6e73 6962 6c65 2e62  ld.    ansible.b
│ │ │ -0004ef80: 7569 6c74 696e 2e73 7973 7465 6d64 3a0a  uiltin.systemd:.
│ │ │ -0004ef90: 2020 2020 2020 6e61 6d65 3a20 6669 7265        name: fire
│ │ │ -0004efa0: 7761 6c6c 640a 2020 2020 2020 656e 6162  walld.      enab
│ │ │ -0004efb0: 6c65 643a 2074 7275 650a 2020 2020 2020  led: true.      
│ │ │ -0004efc0: 7374 6174 653a 2073 7461 7274 6564 0a20  state: started. 
│ │ │ -0004efd0: 2020 2020 206d 6173 6b65 643a 2066 616c       masked: fal
│ │ │ -0004efe0: 7365 0a20 2020 2077 6865 6e3a 0a20 2020  se.    when:.   
│ │ │ -0004eff0: 202d 2027 2266 6972 6577 616c 6c64 2220   - '"firewalld" 
│ │ │ -0004f000: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -0004f010: 2e70 6163 6b61 6765 7327 0a20 2074 6167  .packages'.  tag
│ │ │ -0004f020: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ -0004f030: 3137 312d 332e 312e 330a 2020 2d20 4e49  171-3.1.3.  - NI
│ │ │ -0004f040: 5354 2d38 3030 2d31 3731 2d33 2e34 2e37  ST-800-171-3.4.7
│ │ │ -0004f050: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -0004f060: 2d41 432d 340a 2020 2d20 4e49 5354 2d38  -AC-4.  - NIST-8
│ │ │ -0004f070: 3030 2d35 332d 4341 2d33 2835 290a 2020  00-53-CA-3(5).  
│ │ │ -0004f080: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -0004f090: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -0004f0a0: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ -0004f0b0: 2d20 4e49 5354 2d38 3030 2d35 332d 5343  - NIST-800-53-SC
│ │ │ -0004f0c0: 2d37 2832 3129 0a20 202d 2050 4349 2d44  -7(21).  - PCI-D
│ │ │ -0004f0d0: 5353 7634 2d31 2e32 0a20 202d 2050 4349  SSv4-1.2.  - PCI
│ │ │ -0004f0e0: 2d44 5353 7634 2d31 2e32 2e31 0a20 202d  -DSSv4-1.2.1.  -
│ │ │ -0004f0f0: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ -0004f100: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -0004f110: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ -0004f120: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ -0004f130: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ -0004f140: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -0004f150: 2020 2d20 7365 7276 6963 655f 6669 7265    - service_fire
│ │ │ -0004f160: 7761 6c6c 645f 656e 6162 6c65 640a 2020  walld_enabled.  
│ │ │ -0004f170: 2d20 7370 6563 6961 6c5f 7365 7276 6963  - special_servic
│ │ │ -0004f180: 655f 626c 6f63 6b0a 2020 7768 656e 3a0a  e_block.  when:.
│ │ │ -0004f190: 2020 2d20 2722 6b65 726e 656c 2220 696e    - '"kernel" in
│ │ │ -0004f1a0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -0004f1b0: 6163 6b61 6765 7327 0a20 202d 2027 2266  ackages'.  - '"f
│ │ │ -0004f1c0: 6972 6577 616c 6c64 2220 696e 2061 6e73  irewalld" in ans
│ │ │ -0004f1d0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -0004f1e0: 6765 7327 0a3c 2f63 6f64 653e 3c2f 7072  ges'.Remediation Ans
│ │ │ +0004e7f0: 6962 6c65 2073 6e69 7070 6574 20e2 87b2  ible snippet ...
│ │ │ +0004e800: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
< │ │ │ +0004e8d0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +0004e8e0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
-
│ │ │ +0004e930: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +0004e940: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +0004e950: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ +0004e960: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ +0004e970: 746f 0a20 2074 6167 733a 0a20 202d 204e  to.  tags:.  - N
│ │ │ +0004e980: 4953 542d 3830 302d 3137 312d 332e 312e  IST-800-171-3.1.
│ │ │ +0004e990: 330a 2020 2d20 4e49 5354 2d38 3030 2d31  3.  - NIST-800-1
│ │ │ +0004e9a0: 3731 2d33 2e34 2e37 0a20 202d 204e 4953  71-3.4.7.  - NIS
│ │ │ +0004e9b0: 542d 3830 302d 3533 2d41 432d 340a 2020  T-800-53-AC-4.  
│ │ │ +0004e9c0: 2d20 4e49 5354 2d38 3030 2d35 332d 4341  - NIST-800-53-CA
│ │ │ +0004e9d0: 2d33 2835 290a 2020 2d20 4e49 5354 2d38  -3(5).  - NIST-8
│ │ │ +0004e9e0: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ +0004e9f0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +0004ea00: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ +0004ea10: 3030 2d35 332d 5343 2d37 2832 3129 0a20  00-53-SC-7(21). 
│ │ │ +0004ea20: 202d 2050 4349 2d44 5353 7634 2d31 2e32   - PCI-DSSv4-1.2
│ │ │ +0004ea30: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ +0004ea40: 2e32 2e31 0a20 202d 2065 6e61 626c 655f  .2.1.  - enable_
│ │ │ +0004ea50: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ +0004ea60: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +0004ea70: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +0004ea80: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +0004ea90: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ +0004eaa0: 5f6e 6565 6465 640a 2020 2d20 7365 7276  _needed.  - serv
│ │ │ +0004eab0: 6963 655f 6669 7265 7761 6c6c 645f 656e  ice_firewalld_en
│ │ │ +0004eac0: 6162 6c65 640a 0a2d 206e 616d 653a 2056  abled..- name: V
│ │ │ +0004ead0: 6572 6966 7920 6669 7265 7761 6c6c 6420  erify firewalld 
│ │ │ +0004eae0: 456e 6162 6c65 6420 2d20 456e 6162 6c65  Enabled - Enable
│ │ │ +0004eaf0: 2073 6572 7669 6365 2066 6972 6577 616c   service firewal
│ │ │ +0004eb00: 6c64 0a20 2062 6c6f 636b 3a0a 0a20 202d  ld.  block:..  -
│ │ │ +0004eb10: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +0004eb20: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +0004eb30: 2020 2020 616e 7369 626c 652e 6275 696c      ansible.buil
│ │ │ +0004eb40: 7469 6e2e 7061 636b 6167 655f 6661 6374  tin.package_fact
│ │ │ +0004eb50: 733a 0a20 2020 2020 206d 616e 6167 6572  s:.      manager
│ │ │ +0004eb60: 3a20 6175 746f 0a0a 2020 2d20 6e61 6d65  : auto..  - name
│ │ │ +0004eb70: 3a20 5665 7269 6679 2066 6972 6577 616c  : Verify firewal
│ │ │ +0004eb80: 6c64 2045 6e61 626c 6564 202d 2045 6e61  ld Enabled - Ena
│ │ │ +0004eb90: 626c 6520 5365 7276 6963 6520 6669 7265  ble Service fire
│ │ │ +0004eba0: 7761 6c6c 640a 2020 2020 616e 7369 626c  walld.    ansibl
│ │ │ +0004ebb0: 652e 6275 696c 7469 6e2e 7379 7374 656d  e.builtin.system
│ │ │ +0004ebc0: 643a 0a20 2020 2020 206e 616d 653a 2066  d:.      name: f
│ │ │ +0004ebd0: 6972 6577 616c 6c64 0a20 2020 2020 2065  irewalld.      e
│ │ │ +0004ebe0: 6e61 626c 6564 3a20 7472 7565 0a20 2020  nabled: true.   
│ │ │ +0004ebf0: 2020 2073 7461 7465 3a20 7374 6172 7465     state: starte
│ │ │ +0004ec00: 640a 2020 2020 2020 6d61 736b 6564 3a20  d.      masked: 
│ │ │ +0004ec10: 6661 6c73 650a 2020 2020 7768 656e 3a0a  false.    when:.
│ │ │ +0004ec20: 2020 2020 2d20 2722 6669 7265 7761 6c6c      - '"firewall
│ │ │ +0004ec30: 6422 2069 6e20 616e 7369 626c 655f 6661  d" in ansible_fa
│ │ │ +0004ec40: 6374 732e 7061 636b 6167 6573 270a 2020  cts.packages'.  
│ │ │ +0004ec50: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +0004ec60: 3030 2d31 3731 2d33 2e31 2e33 0a20 202d  00-171-3.1.3.  -
│ │ │ +0004ec70: 204e 4953 542d 3830 302d 3137 312d 332e   NIST-800-171-3.
│ │ │ +0004ec80: 342e 370a 2020 2d20 4e49 5354 2d38 3030  4.7.  - NIST-800
│ │ │ +0004ec90: 2d35 332d 4143 2d34 0a20 202d 204e 4953  -53-AC-4.  - NIS
│ │ │ +0004eca0: 542d 3830 302d 3533 2d43 412d 3328 3529  T-800-53-CA-3(5)
│ │ │ +0004ecb0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +0004ecc0: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ +0004ecd0: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ +0004ece0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +0004ecf0: 2d53 432d 3728 3231 290a 2020 2d20 5043  -SC-7(21).  - PC
│ │ │ +0004ed00: 492d 4453 5376 342d 312e 320a 2020 2d20  I-DSSv4-1.2.  - 
│ │ │ +0004ed10: 5043 492d 4453 5376 342d 312e 322e 310a  PCI-DSSv4-1.2.1.
│ │ │ +0004ed20: 2020 2d20 656e 6162 6c65 5f73 7472 6174    - enable_strat
│ │ │ +0004ed30: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +0004ed40: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +0004ed50: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +0004ed60: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +0004ed70: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +0004ed80: 6564 0a20 202d 2073 6572 7669 6365 5f66  ed.  - service_f
│ │ │ +0004ed90: 6972 6577 616c 6c64 5f65 6e61 626c 6564  irewalld_enabled
│ │ │ +0004eda0: 0a20 202d 2073 7065 6369 616c 5f73 6572  .  - special_ser
│ │ │ +0004edb0: 7669 6365 5f62 6c6f 636b 0a20 2077 6865  vice_block.  whe
│ │ │ +0004edc0: 6e3a 0a20 202d 2027 226b 6572 6e65 6c22  n:.  - '"kernel"
│ │ │ +0004edd0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +0004ede0: 732e 7061 636b 6167 6573 270a 2020 2d20  s.packages'.  - 
│ │ │ +0004edf0: 2722 6669 7265 7761 6c6c 6422 2069 6e20  '"firewalld" in 
│ │ │ +0004ee00: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +0004ee10: 636b 6167 6573 270a 3c2f 636f 6465 3e3c  ckages'.<
│ │ │ +0004ee20: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediati
│ │ │ +0004eed0: 6f6e 2050 7570 7065 7420 736e 6970 7065  on Puppet snippe
│ │ │ +0004eee0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469  t ...
< │ │ │ +0004efa0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0004efb0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
Complexity:low
Disrup │ │ │ +0004e8b0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +0004e8c0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +0004e900: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +0004e910: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity │ │ │ +0004ef70: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ +0004ef90: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ +0004efc0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ +0004efe0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
include enab
│ │ │ +0004f020: 6c65 5f66 6972 6577 616c 6c64 0a0a 636c  le_firewalld..cl
│ │ │ +0004f030: 6173 7320 656e 6162 6c65 5f66 6972 6577  ass enable_firew
│ │ │ +0004f040: 616c 6c64 207b 0a20 2073 6572 7669 6365  alld {.  service
│ │ │ +0004f050: 207b 2766 6972 6577 616c 6c64 273a 0a20   {'firewalld':. 
│ │ │ +0004f060: 2020 2065 6e61 626c 6520 3d26 6774 3b20     enable => 
│ │ │ +0004f070: 7472 7565 2c0a 2020 2020 656e 7375 7265  true,.    ensure
│ │ │ +0004f080: 203d 2667 743b 2027 7275 6e6e 696e 6727   => 'running'
│ │ │ +0004f090: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ +0004f0a0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediati │ │ │ +0004f150: 6f6e 204f 5342 7569 6c64 2042 6c75 6570 on OSBuild Bluep │ │ │ +0004f160: 7269 6e74 2073 6e69 7070 6574 20e2 87b2 rint snippet ... │ │ │ +0004f170: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
.[customizatio
│ │ │ +0004f1c0: 6e73 2e73 6572 7669 6365 735d 0a65 6e61  ns.services].ena
│ │ │ +0004f1d0: 626c 6564 203d 205b 2266 6972 6577 616c  bled = ["firewal
│ │ │ +0004f1e0: 6c64 225d 0a3c 2f63 6f64 653e 3c2f 7072  ld"].
│ │ │ 0004f210: 3c2f 7461 626c 653e 3c2f 7464 3e3c 2f74 Re │ │ │ -00052a60: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ -00052a70: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ -00052a80: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00052a90: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00052aa0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00052ab0: 7365 2220 6964 3d22 6964 3334 223e 3c70 se" id="id34">

.[custo │ │ │ -00052ad0: 6d69 7a61 7469 6f6e 732e 7365 7276 6963 mizations.servic │ │ │ -00052ae0: 6573 5d0a 6d61 736b 6564 203d 205b 2261 es].masked = ["a │ │ │ -00052af0: 7574 6f66 7322 5d0a 3c2f 636f 6465 3e3c utofs"].< │ │ │ -00052b00: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>

Remediati │ │ │ -00052bb0: 6f6e 2050 7570 7065 7420 736e 6970 7065 on Puppet snippe │ │ │ -00052bc0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
Complexity │ │ │ -00052c50: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -00052c70: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -00052c80: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00052c90: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -00052ca0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -00052cc0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
include disa
│ │ │ -00052d00: 626c 655f 6175 746f 6673 0a0a 636c 6173  ble_autofs..clas
│ │ │ -00052d10: 7320 6469 7361 626c 655f 6175 746f 6673  s disable_autofs
│ │ │ -00052d20: 207b 0a20 2073 6572 7669 6365 207b 2761   {.  service {'a
│ │ │ -00052d30: 7574 6f66 7327 3a0a 2020 2020 656e 6162  utofs':.    enab
│ │ │ -00052d40: 6c65 203d 2667 743b 2066 616c 7365 2c0a  le => false,.
│ │ │ -00052d50: 2020 2020 656e 7375 7265 203d 2667 743b      ensure =>
│ │ │ -00052d60: 2027 7374 6f70 7065 6427 2c0a 2020 7d0a   'stopped',.  }.
│ │ │ -00052d70: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -00052d80: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Ans │ │ │ -00052e30: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ -00052e40: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
< │ │ │ -00052f10: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00052f20: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -00052f70: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ -00052f80: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ -00052f90: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ -00052fa0: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ -00052fb0: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ -00052fc0: 4e49 5354 2d38 3030 2d31 3731 2d33 2e34  NIST-800-171-3.4
│ │ │ -00052fd0: 2e36 0a20 202d 204e 4953 542d 3830 302d  .6.  - NIST-800-
│ │ │ -00052fe0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ -00052ff0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -00053000: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -00053010: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ -00053020: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ -00053030: 2020 2d20 6469 7361 626c 655f 7374 7261    - disable_stra
│ │ │ -00053040: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ -00053050: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ -00053060: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -00053070: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -00053080: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -00053090: 6465 640a 2020 2d20 7365 7276 6963 655f  ded.  - service_
│ │ │ -000530a0: 6175 746f 6673 5f64 6973 6162 6c65 640a  autofs_disabled.
│ │ │ -000530b0: 0a2d 206e 616d 653a 2044 6973 6162 6c65  .- name: Disable
│ │ │ -000530c0: 2074 6865 2041 7574 6f6d 6f75 6e74 6572   the Automounter
│ │ │ -000530d0: 202d 2044 6973 6162 6c65 2073 6572 7669   - Disable servi
│ │ │ -000530e0: 6365 2061 7574 6f66 730a 2020 626c 6f63  ce autofs.  bloc
│ │ │ -000530f0: 6b3a 0a0a 2020 2d20 6e61 6d65 3a20 4469  k:..  - name: Di
│ │ │ -00053100: 7361 626c 6520 7468 6520 4175 746f 6d6f  sable the Automo
│ │ │ -00053110: 756e 7465 7220 2d20 436f 6c6c 6563 7420  unter - Collect 
│ │ │ -00053120: 7379 7374 656d 6420 5365 7276 6963 6573  systemd Services
│ │ │ -00053130: 2050 7265 7365 6e74 2069 6e20 7468 6520   Present in the 
│ │ │ -00053140: 5379 7374 656d 0a20 2020 2061 6e73 6962  System.    ansib
│ │ │ -00053150: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61  le.builtin.comma
│ │ │ -00053160: 6e64 3a20 7379 7374 656d 6374 6c20 2d71  nd: systemctl -q
│ │ │ -00053170: 206c 6973 742d 756e 6974 2d66 696c 6573   list-unit-files
│ │ │ -00053180: 202d 2d74 7970 6520 7365 7276 6963 650a   --type service.
│ │ │ -00053190: 2020 2020 7265 6769 7374 6572 3a20 7365      register: se
│ │ │ -000531a0: 7276 6963 655f 6578 6973 7473 0a20 2020  rvice_exists.   
│ │ │ -000531b0: 2063 6861 6e67 6564 5f77 6865 6e3a 2066   changed_when: f
│ │ │ -000531c0: 616c 7365 0a20 2020 2066 6169 6c65 645f  alse.    failed_
│ │ │ -000531d0: 7768 656e 3a20 7365 7276 6963 655f 6578  when: service_ex
│ │ │ -000531e0: 6973 7473 2e72 6320 6e6f 7420 696e 205b  ists.rc not in [
│ │ │ -000531f0: 302c 2031 5d0a 2020 2020 6368 6563 6b5f  0, 1].    check_
│ │ │ -00053200: 6d6f 6465 3a20 6661 6c73 650a 0a20 202d  mode: false..  -
│ │ │ -00053210: 206e 616d 653a 2044 6973 6162 6c65 2074   name: Disable t
│ │ │ -00053220: 6865 2041 7574 6f6d 6f75 6e74 6572 202d  he Automounter -
│ │ │ -00053230: 2045 6e73 7572 6520 6175 746f 6673 2e73   Ensure autofs.s
│ │ │ -00053240: 6572 7669 6365 2069 7320 4d61 736b 6564  ervice is Masked
│ │ │ -00053250: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ -00053260: 6c74 696e 2e73 7973 7465 6d64 3a0a 2020  ltin.systemd:.  
│ │ │ -00053270: 2020 2020 6e61 6d65 3a20 6175 746f 6673      name: autofs
│ │ │ -00053280: 2e73 6572 7669 6365 0a20 2020 2020 2073  .service.      s
│ │ │ -00053290: 7461 7465 3a20 7374 6f70 7065 640a 2020  tate: stopped.  
│ │ │ -000532a0: 2020 2020 656e 6162 6c65 643a 2066 616c      enabled: fal
│ │ │ -000532b0: 7365 0a20 2020 2020 206d 6173 6b65 643a  se.      masked:
│ │ │ -000532c0: 2074 7275 650a 2020 2020 7768 656e 3a20   true.    when: 
│ │ │ -000532d0: 7365 7276 6963 655f 6578 6973 7473 2e73  service_exists.s
│ │ │ -000532e0: 7464 6f75 745f 6c69 6e65 7320 6973 2073  tdout_lines is s
│ │ │ -000532f0: 6561 7263 6828 2261 7574 6f66 732e 7365  earch("autofs.se
│ │ │ -00053300: 7276 6963 6522 2c20 6d75 6c74 696c 696e  rvice", multilin
│ │ │ -00053310: 653d 5472 7565 290a 0a20 202d 206e 616d  e=True)..  - nam
│ │ │ -00053320: 653a 2055 6e69 7420 536f 636b 6574 2045  e: Unit Socket E
│ │ │ -00053330: 7869 7374 7320 2d20 6175 746f 6673 2e73  xists - autofs.s
│ │ │ -00053340: 6f63 6b65 740a 2020 2020 616e 7369 626c  ocket.    ansibl
│ │ │ -00053350: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ -00053360: 643a 2073 7973 7465 6d63 746c 202d 7120  d: systemctl -q 
│ │ │ -00053370: 6c69 7374 2d75 6e69 742d 6669 6c65 7320  list-unit-files 
│ │ │ -00053380: 6175 746f 6673 2e73 6f63 6b65 740a 2020  autofs.socket.  
│ │ │ -00053390: 2020 7265 6769 7374 6572 3a20 736f 636b    register: sock
│ │ │ -000533a0: 6574 5f66 696c 655f 6578 6973 7473 0a20  et_file_exists. 
│ │ │ -000533b0: 2020 2063 6861 6e67 6564 5f77 6865 6e3a     changed_when:
│ │ │ -000533c0: 2066 616c 7365 0a20 2020 2066 6169 6c65   false.    faile
│ │ │ -000533d0: 645f 7768 656e 3a20 736f 636b 6574 5f66  d_when: socket_f
│ │ │ -000533e0: 696c 655f 6578 6973 7473 2e72 6320 6e6f  ile_exists.rc no
│ │ │ -000533f0: 7420 696e 205b 302c 2031 5d0a 2020 2020  t in [0, 1].    
│ │ │ -00053400: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73  check_mode: fals
│ │ │ -00053410: 650a 0a20 202d 206e 616d 653a 2044 6973  e..  - name: Dis
│ │ │ -00053420: 6162 6c65 2074 6865 2041 7574 6f6d 6f75  able the Automou
│ │ │ -00053430: 6e74 6572 202d 2044 6973 6162 6c65 2053  nter - Disable S
│ │ │ -00053440: 6f63 6b65 7420 6175 746f 6673 0a20 2020  ocket autofs.   
│ │ │ -00053450: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -00053460: 2e73 7973 7465 6d64 3a0a 2020 2020 2020  .systemd:.      
│ │ │ -00053470: 6e61 6d65 3a20 6175 746f 6673 2e73 6f63  name: autofs.soc
│ │ │ -00053480: 6b65 740a 2020 2020 2020 656e 6162 6c65  ket.      enable
│ │ │ -00053490: 643a 2066 616c 7365 0a20 2020 2020 2073  d: false.      s
│ │ │ -000534a0: 7461 7465 3a20 7374 6f70 7065 640a 2020  tate: stopped.  
│ │ │ -000534b0: 2020 2020 6d61 736b 6564 3a20 7472 7565      masked: true
│ │ │ -000534c0: 0a20 2020 2077 6865 6e3a 2073 6f63 6b65  .    when: socke
│ │ │ -000534d0: 745f 6669 6c65 5f65 7869 7374 732e 7374  t_file_exists.st
│ │ │ -000534e0: 646f 7574 5f6c 696e 6573 2069 7320 7365  dout_lines is se
│ │ │ -000534f0: 6172 6368 2822 6175 746f 6673 2e73 6f63  arch("autofs.soc
│ │ │ -00053500: 6b65 7422 2c20 6d75 6c74 696c 696e 653d  ket", multiline=
│ │ │ -00053510: 5472 7565 290a 2020 7461 6773 3a0a 2020  True).  tags:.  
│ │ │ -00053520: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33  - NIST-800-171-3
│ │ │ -00053530: 2e34 2e36 0a20 202d 204e 4953 542d 3830  .4.6.  - NIST-80
│ │ │ -00053540: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -00053550: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -00053560: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -00053570: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ -00053580: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ -00053590: 370a 2020 2d20 6469 7361 626c 655f 7374  7.  - disable_st
│ │ │ -000535a0: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ -000535b0: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -000535c0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -000535d0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -000535e0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -000535f0: 6565 6465 640a 2020 2d20 7365 7276 6963  eeded.  - servic
│ │ │ -00053600: 655f 6175 746f 6673 5f64 6973 6162 6c65  e_autofs_disable
│ │ │ -00053610: 640a 2020 2d20 7370 6563 6961 6c5f 7365  d.  - special_se
│ │ │ -00053620: 7276 6963 655f 626c 6f63 6b0a 2020 7768  rvice_block.  wh
│ │ │ -00053630: 656e 3a20 2820 2261 7574 6f66 7322 2069  en: ( "autofs" i
│ │ │ -00053640: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -00053650: 7061 636b 6167 6573 2061 6e64 2022 6b65  packages and "ke
│ │ │ -00053660: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -00053670: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -00053680: 2020 2020 290a 3c2f 636f 6465 3e3c 2f70      ).


Complexity:low
Disrup │ │ │ -00052ef0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00052f00: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00052f40: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -00052f50: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
low< │ │ │ +00052b20: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +00052b70: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
- n
│ │ │ +00052bb0: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ +00052bc0: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ +00052bd0: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ +00052be0: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ +00052bf0: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +00052c00: 542d 3830 302d 3137 312d 332e 342e 360a  T-800-171-3.4.6.
│ │ │ +00052c10: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +00052c20: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ +00052c30: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ +00052c40: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +00052c50: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ +00052c60: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d  -800-53-MP-7.  -
│ │ │ +00052c70: 2064 6973 6162 6c65 5f73 7472 6174 6567   disable_strateg
│ │ │ +00052c80: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ +00052c90: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ +00052ca0: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ +00052cb0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +00052cc0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +00052cd0: 0a20 202d 2073 6572 7669 6365 5f61 7574  .  - service_aut
│ │ │ +00052ce0: 6f66 735f 6469 7361 626c 6564 0a0a 2d20  ofs_disabled..- 
│ │ │ +00052cf0: 6e61 6d65 3a20 4469 7361 626c 6520 7468  name: Disable th
│ │ │ +00052d00: 6520 4175 746f 6d6f 756e 7465 7220 2d20  e Automounter - 
│ │ │ +00052d10: 4469 7361 626c 6520 7365 7276 6963 6520  Disable service 
│ │ │ +00052d20: 6175 746f 6673 0a20 2062 6c6f 636b 3a0a  autofs.  block:.
│ │ │ +00052d30: 0a20 202d 206e 616d 653a 2044 6973 6162  .  - name: Disab
│ │ │ +00052d40: 6c65 2074 6865 2041 7574 6f6d 6f75 6e74  le the Automount
│ │ │ +00052d50: 6572 202d 2043 6f6c 6c65 6374 2073 7973  er - Collect sys
│ │ │ +00052d60: 7465 6d64 2053 6572 7669 6365 7320 5072  temd Services Pr
│ │ │ +00052d70: 6573 656e 7420 696e 2074 6865 2053 7973  esent in the Sys
│ │ │ +00052d80: 7465 6d0a 2020 2020 616e 7369 626c 652e  tem.    ansible.
│ │ │ +00052d90: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ +00052da0: 2073 7973 7465 6d63 746c 202d 7120 6c69   systemctl -q li
│ │ │ +00052db0: 7374 2d75 6e69 742d 6669 6c65 7320 2d2d  st-unit-files --
│ │ │ +00052dc0: 7479 7065 2073 6572 7669 6365 0a20 2020  type service.   
│ │ │ +00052dd0: 2072 6567 6973 7465 723a 2073 6572 7669   register: servi
│ │ │ +00052de0: 6365 5f65 7869 7374 730a 2020 2020 6368  ce_exists.    ch
│ │ │ +00052df0: 616e 6765 645f 7768 656e 3a20 6661 6c73  anged_when: fals
│ │ │ +00052e00: 650a 2020 2020 6661 696c 6564 5f77 6865  e.    failed_whe
│ │ │ +00052e10: 6e3a 2073 6572 7669 6365 5f65 7869 7374  n: service_exist
│ │ │ +00052e20: 732e 7263 206e 6f74 2069 6e20 5b30 2c20  s.rc not in [0, 
│ │ │ +00052e30: 315d 0a20 2020 2063 6865 636b 5f6d 6f64  1].    check_mod
│ │ │ +00052e40: 653a 2066 616c 7365 0a0a 2020 2d20 6e61  e: false..  - na
│ │ │ +00052e50: 6d65 3a20 4469 7361 626c 6520 7468 6520  me: Disable the 
│ │ │ +00052e60: 4175 746f 6d6f 756e 7465 7220 2d20 456e  Automounter - En
│ │ │ +00052e70: 7375 7265 2061 7574 6f66 732e 7365 7276  sure autofs.serv
│ │ │ +00052e80: 6963 6520 6973 204d 6173 6b65 640a 2020  ice is Masked.  
│ │ │ +00052e90: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +00052ea0: 6e2e 7379 7374 656d 643a 0a20 2020 2020  n.systemd:.     
│ │ │ +00052eb0: 206e 616d 653a 2061 7574 6f66 732e 7365   name: autofs.se
│ │ │ +00052ec0: 7276 6963 650a 2020 2020 2020 7374 6174  rvice.      stat
│ │ │ +00052ed0: 653a 2073 746f 7070 6564 0a20 2020 2020  e: stopped.     
│ │ │ +00052ee0: 2065 6e61 626c 6564 3a20 6661 6c73 650a   enabled: false.
│ │ │ +00052ef0: 2020 2020 2020 6d61 736b 6564 3a20 7472        masked: tr
│ │ │ +00052f00: 7565 0a20 2020 2077 6865 6e3a 2073 6572  ue.    when: ser
│ │ │ +00052f10: 7669 6365 5f65 7869 7374 732e 7374 646f  vice_exists.stdo
│ │ │ +00052f20: 7574 5f6c 696e 6573 2069 7320 7365 6172  ut_lines is sear
│ │ │ +00052f30: 6368 2822 6175 746f 6673 2e73 6572 7669  ch("autofs.servi
│ │ │ +00052f40: 6365 222c 206d 756c 7469 6c69 6e65 3d54  ce", multiline=T
│ │ │ +00052f50: 7275 6529 0a0a 2020 2d20 6e61 6d65 3a20  rue)..  - name: 
│ │ │ +00052f60: 556e 6974 2053 6f63 6b65 7420 4578 6973  Unit Socket Exis
│ │ │ +00052f70: 7473 202d 2061 7574 6f66 732e 736f 636b  ts - autofs.sock
│ │ │ +00052f80: 6574 0a20 2020 2061 6e73 6962 6c65 2e62  et.    ansible.b
│ │ │ +00052f90: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ +00052fa0: 7379 7374 656d 6374 6c20 2d71 206c 6973  systemctl -q lis
│ │ │ +00052fb0: 742d 756e 6974 2d66 696c 6573 2061 7574  t-unit-files aut
│ │ │ +00052fc0: 6f66 732e 736f 636b 6574 0a20 2020 2072  ofs.socket.    r
│ │ │ +00052fd0: 6567 6973 7465 723a 2073 6f63 6b65 745f  egister: socket_
│ │ │ +00052fe0: 6669 6c65 5f65 7869 7374 730a 2020 2020  file_exists.    
│ │ │ +00052ff0: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ +00053000: 6c73 650a 2020 2020 6661 696c 6564 5f77  lse.    failed_w
│ │ │ +00053010: 6865 6e3a 2073 6f63 6b65 745f 6669 6c65  hen: socket_file
│ │ │ +00053020: 5f65 7869 7374 732e 7263 206e 6f74 2069  _exists.rc not i
│ │ │ +00053030: 6e20 5b30 2c20 315d 0a20 2020 2063 6865  n [0, 1].    che
│ │ │ +00053040: 636b 5f6d 6f64 653a 2066 616c 7365 0a0a  ck_mode: false..
│ │ │ +00053050: 2020 2d20 6e61 6d65 3a20 4469 7361 626c    - name: Disabl
│ │ │ +00053060: 6520 7468 6520 4175 746f 6d6f 756e 7465  e the Automounte
│ │ │ +00053070: 7220 2d20 4469 7361 626c 6520 536f 636b  r - Disable Sock
│ │ │ +00053080: 6574 2061 7574 6f66 730a 2020 2020 616e  et autofs.    an
│ │ │ +00053090: 7369 626c 652e 6275 696c 7469 6e2e 7379  sible.builtin.sy
│ │ │ +000530a0: 7374 656d 643a 0a20 2020 2020 206e 616d  stemd:.      nam
│ │ │ +000530b0: 653a 2061 7574 6f66 732e 736f 636b 6574  e: autofs.socket
│ │ │ +000530c0: 0a20 2020 2020 2065 6e61 626c 6564 3a20  .      enabled: 
│ │ │ +000530d0: 6661 6c73 650a 2020 2020 2020 7374 6174  false.      stat
│ │ │ +000530e0: 653a 2073 746f 7070 6564 0a20 2020 2020  e: stopped.     
│ │ │ +000530f0: 206d 6173 6b65 643a 2074 7275 650a 2020   masked: true.  
│ │ │ +00053100: 2020 7768 656e 3a20 736f 636b 6574 5f66    when: socket_f
│ │ │ +00053110: 696c 655f 6578 6973 7473 2e73 7464 6f75  ile_exists.stdou
│ │ │ +00053120: 745f 6c69 6e65 7320 6973 2073 6561 7263  t_lines is searc
│ │ │ +00053130: 6828 2261 7574 6f66 732e 736f 636b 6574  h("autofs.socket
│ │ │ +00053140: 222c 206d 756c 7469 6c69 6e65 3d54 7275  ", multiline=Tru
│ │ │ +00053150: 6529 0a20 2074 6167 733a 0a20 202d 204e  e).  tags:.  - N
│ │ │ +00053160: 4953 542d 3830 302d 3137 312d 332e 342e  IST-800-171-3.4.
│ │ │ +00053170: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +00053180: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +00053190: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ +000531a0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +000531b0: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ +000531c0: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ +000531d0: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ +000531e0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +000531f0: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +00053200: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +00053210: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +00053220: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +00053230: 6564 0a20 202d 2073 6572 7669 6365 5f61  ed.  - service_a
│ │ │ +00053240: 7574 6f66 735f 6469 7361 626c 6564 0a20  utofs_disabled. 
│ │ │ +00053250: 202d 2073 7065 6369 616c 5f73 6572 7669   - special_servi
│ │ │ +00053260: 6365 5f62 6c6f 636b 0a20 2077 6865 6e3a  ce_block.  when:
│ │ │ +00053270: 2028 2022 6175 746f 6673 2220 696e 2061   ( "autofs" in a
│ │ │ +00053280: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +00053290: 6b61 6765 7320 616e 6420 226b 6572 6e65  kages and "kerne
│ │ │ +000532a0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +000532b0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +000532c0: 2029 0a3c 2f63 6f64 653e 3c2f 7072 653e   ).
│ │ │ +000532d0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation Pu │ │ │ +00053380: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ +00053390: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Co │ │ │ +00052b00: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +00052b30: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +00052b50: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +00052b60: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +00052b80: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +00052b90: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ +00053460: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +00053470: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
i
│ │ │ +000534c0: 6e63 6c75 6465 2064 6973 6162 6c65 5f61  nclude disable_a
│ │ │ +000534d0: 7574 6f66 730a 0a63 6c61 7373 2064 6973  utofs..class dis
│ │ │ +000534e0: 6162 6c65 5f61 7574 6f66 7320 7b0a 2020  able_autofs {.  
│ │ │ +000534f0: 7365 7276 6963 6520 7b27 6175 746f 6673  service {'autofs
│ │ │ +00053500: 273a 0a20 2020 2065 6e61 626c 6520 3d26  ':.    enable =&
│ │ │ +00053510: 6774 3b20 6661 6c73 652c 0a20 2020 2065  gt; false,.    e
│ │ │ +00053520: 6e73 7572 6520 3d26 6774 3b20 2773 746f  nsure => 'sto
│ │ │ +00053530: 7070 6564 272c 0a20 207d 0a7d 0a3c 2f63  pped',.  }.}.
│ │ │ +00053550: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Reme │ │ │ +000535f0: 6469 6174 696f 6e20 4f53 4275 696c 6420 diation OSBuild │ │ │ +00053600: 426c 7565 7072 696e 7420 736e 6970 7065 Blueprint snippe │ │ │ +00053610: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
.[customi
│ │ │ +00053660: 7a61 7469 6f6e 732e 7365 7276 6963 6573  zations.services
│ │ │ +00053670: 5d0a 6d61 736b 6564 203d 205b 2261 7574  ].masked = ["aut
│ │ │ +00053680: 6f66 7322 5d0a 3c2f 636f 6465 3e3c 2f70  ofs"].

< │ │ │ 000536a0: 2f74 643e 3c2f 7472 3e3c 2f74 626f 6479 /td>
Complexity:low
Disrup │ │ │ +00053440: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +00053450: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +00053490: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +000534a0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Remediation OSB │ │ │ -00055ec0: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ -00055ed0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
.[cu
│ │ │ -00055f20: 7374 6f6d 697a 6174 696f 6e73 2e73 6572  stomizations.ser
│ │ │ -00055f30: 7669 6365 735d 0a6d 6173 6b65 6420 3d20  vices].masked = 
│ │ │ -00055f40: 5b22 6162 7274 6422 5d0a 3c2f 636f 6465  ["abrtd"].
Remedia │ │ │ -00056000: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ -00056010: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00056020: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00056030: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00056040: 7365 2220 6964 3d22 6964 3430 223e 3c74 se" id="id40"> │ │ │ -00056090: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -000560a0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -000560b0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -000560f0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -00056100: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -00056120: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ -00056140: 3c63 6f64 653e 696e 636c 7564 6520 6469  include di
│ │ │ -00056150: 7361 626c 655f 6162 7274 640a 0a63 6c61  sable_abrtd..cla
│ │ │ -00056160: 7373 2064 6973 6162 6c65 5f61 6272 7464  ss disable_abrtd
│ │ │ -00056170: 207b 0a20 2073 6572 7669 6365 207b 2761   {.  service {'a
│ │ │ -00056180: 6272 7464 273a 0a20 2020 2065 6e61 626c  brtd':.    enabl
│ │ │ -00056190: 6520 3d26 6774 3b20 6661 6c73 652c 0a20  e => false,. 
│ │ │ -000561a0: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ -000561b0: 2773 746f 7070 6564 272c 0a20 207d 0a7d  'stopped',.  }.}
│ │ │ -000561c0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
│ │ │ -00056270: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -00056280: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -00056290: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -00056320: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ -000563c0: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ -000563d0: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ -000563e0: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ -000563f0: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ -00056400: 746f 0a20 2074 6167 733a 0a20 202d 204e  to.  tags:.  - N
│ │ │ -00056410: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -00056420: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -00056430: 3533 2d43 4d2d 3728 6129 0a20 202d 2064  53-CM-7(a).  - d
│ │ │ -00056440: 6973 6162 6c65 5f73 7472 6174 6567 790a  isable_strategy.
│ │ │ -00056450: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -00056460: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ -00056470: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ -00056480: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ -00056490: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ -000564a0: 202d 2073 6572 7669 6365 5f61 6272 7464   - service_abrtd
│ │ │ -000564b0: 5f64 6973 6162 6c65 640a 0a2d 206e 616d  _disabled..- nam
│ │ │ -000564c0: 653a 2044 6973 6162 6c65 2041 7574 6f6d  e: Disable Autom
│ │ │ -000564d0: 6174 6963 2042 7567 2052 6570 6f72 7469  atic Bug Reporti
│ │ │ -000564e0: 6e67 2054 6f6f 6c20 2861 6272 7464 2920  ng Tool (abrtd) 
│ │ │ -000564f0: 2d20 4469 7361 626c 6520 7365 7276 6963  - Disable servic
│ │ │ -00056500: 6520 6162 7274 640a 2020 626c 6f63 6b3a  e abrtd.  block:
│ │ │ -00056510: 0a0a 2020 2d20 6e61 6d65 3a20 4469 7361  ..  - name: Disa
│ │ │ -00056520: 626c 6520 4175 746f 6d61 7469 6320 4275  ble Automatic Bu
│ │ │ -00056530: 6720 5265 706f 7274 696e 6720 546f 6f6c  g Reporting Tool
│ │ │ -00056540: 2028 6162 7274 6429 202d 2043 6f6c 6c65   (abrtd) - Colle
│ │ │ -00056550: 6374 2073 7973 7465 6d64 2053 6572 7669  ct systemd Servi
│ │ │ -00056560: 6365 730a 2020 2020 2020 5072 6573 656e  ces.      Presen
│ │ │ -00056570: 7420 696e 2074 6865 2053 7973 7465 6d0a  t in the System.
│ │ │ -00056580: 2020 2020 616e 7369 626c 652e 6275 696c      ansible.buil
│ │ │ -00056590: 7469 6e2e 636f 6d6d 616e 643a 2073 7973  tin.command: sys
│ │ │ -000565a0: 7465 6d63 746c 202d 7120 6c69 7374 2d75  temctl -q list-u
│ │ │ -000565b0: 6e69 742d 6669 6c65 7320 2d2d 7479 7065  nit-files --type
│ │ │ -000565c0: 2073 6572 7669 6365 0a20 2020 2072 6567   service.    reg
│ │ │ -000565d0: 6973 7465 723a 2073 6572 7669 6365 5f65  ister: service_e
│ │ │ -000565e0: 7869 7374 730a 2020 2020 6368 616e 6765  xists.    change
│ │ │ -000565f0: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ -00056600: 2020 6661 696c 6564 5f77 6865 6e3a 2073    failed_when: s
│ │ │ -00056610: 6572 7669 6365 5f65 7869 7374 732e 7263  ervice_exists.rc
│ │ │ -00056620: 206e 6f74 2069 6e20 5b30 2c20 315d 0a20   not in [0, 1]. 
│ │ │ -00056630: 2020 2063 6865 636b 5f6d 6f64 653a 2066     check_mode: f
│ │ │ -00056640: 616c 7365 0a0a 2020 2d20 6e61 6d65 3a20  alse..  - name: 
│ │ │ -00056650: 4469 7361 626c 6520 4175 746f 6d61 7469  Disable Automati
│ │ │ -00056660: 6320 4275 6720 5265 706f 7274 696e 6720  c Bug Reporting 
│ │ │ -00056670: 546f 6f6c 2028 6162 7274 6429 202d 2045  Tool (abrtd) - E
│ │ │ -00056680: 6e73 7572 6520 6162 7274 642e 7365 7276  nsure abrtd.serv
│ │ │ -00056690: 6963 6520 6973 204d 6173 6b65 640a 2020  ice is Masked.  
│ │ │ -000566a0: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -000566b0: 6e2e 7379 7374 656d 643a 0a20 2020 2020  n.systemd:.     
│ │ │ -000566c0: 206e 616d 653a 2061 6272 7464 2e73 6572   name: abrtd.ser
│ │ │ -000566d0: 7669 6365 0a20 2020 2020 2073 7461 7465  vice.      state
│ │ │ -000566e0: 3a20 7374 6f70 7065 640a 2020 2020 2020  : stopped.      
│ │ │ -000566f0: 656e 6162 6c65 643a 2066 616c 7365 0a20  enabled: false. 
│ │ │ -00056700: 2020 2020 206d 6173 6b65 643a 2074 7275       masked: tru
│ │ │ -00056710: 650a 2020 2020 7768 656e 3a20 7365 7276  e.    when: serv
│ │ │ -00056720: 6963 655f 6578 6973 7473 2e73 7464 6f75  ice_exists.stdou
│ │ │ -00056730: 745f 6c69 6e65 7320 6973 2073 6561 7263  t_lines is searc
│ │ │ -00056740: 6828 2261 6272 7464 2e73 6572 7669 6365  h("abrtd.service
│ │ │ -00056750: 222c 206d 756c 7469 6c69 6e65 3d54 7275  ", multiline=Tru
│ │ │ -00056760: 6529 0a0a 2020 2d20 6e61 6d65 3a20 556e  e)..  - name: Un
│ │ │ -00056770: 6974 2053 6f63 6b65 7420 4578 6973 7473  it Socket Exists
│ │ │ -00056780: 202d 2061 6272 7464 2e73 6f63 6b65 740a   - abrtd.socket.
│ │ │ -00056790: 2020 2020 616e 7369 626c 652e 6275 696c      ansible.buil
│ │ │ -000567a0: 7469 6e2e 636f 6d6d 616e 643a 2073 7973  tin.command: sys
│ │ │ -000567b0: 7465 6d63 746c 202d 7120 6c69 7374 2d75  temctl -q list-u
│ │ │ -000567c0: 6e69 742d 6669 6c65 7320 6162 7274 642e  nit-files abrtd.
│ │ │ -000567d0: 736f 636b 6574 0a20 2020 2072 6567 6973  socket.    regis
│ │ │ -000567e0: 7465 723a 2073 6f63 6b65 745f 6669 6c65  ter: socket_file
│ │ │ -000567f0: 5f65 7869 7374 730a 2020 2020 6368 616e  _exists.    chan
│ │ │ -00056800: 6765 645f 7768 656e 3a20 6661 6c73 650a  ged_when: false.
│ │ │ -00056810: 2020 2020 6661 696c 6564 5f77 6865 6e3a      failed_when:
│ │ │ -00056820: 2073 6f63 6b65 745f 6669 6c65 5f65 7869   socket_file_exi
│ │ │ -00056830: 7374 732e 7263 206e 6f74 2069 6e20 5b30  sts.rc not in [0
│ │ │ -00056840: 2c20 315d 0a20 2020 2063 6865 636b 5f6d  , 1].    check_m
│ │ │ -00056850: 6f64 653a 2066 616c 7365 0a0a 2020 2d20  ode: false..  - 
│ │ │ -00056860: 6e61 6d65 3a20 4469 7361 626c 6520 4175  name: Disable Au
│ │ │ -00056870: 746f 6d61 7469 6320 4275 6720 5265 706f  tomatic Bug Repo
│ │ │ -00056880: 7274 696e 6720 546f 6f6c 2028 6162 7274  rting Tool (abrt
│ │ │ -00056890: 6429 202d 2044 6973 6162 6c65 2053 6f63  d) - Disable Soc
│ │ │ -000568a0: 6b65 7420 6162 7274 640a 2020 2020 616e  ket abrtd.    an
│ │ │ -000568b0: 7369 626c 652e 6275 696c 7469 6e2e 7379  sible.builtin.sy
│ │ │ -000568c0: 7374 656d 643a 0a20 2020 2020 206e 616d  stemd:.      nam
│ │ │ -000568d0: 653a 2061 6272 7464 2e73 6f63 6b65 740a  e: abrtd.socket.
│ │ │ -000568e0: 2020 2020 2020 656e 6162 6c65 643a 2066        enabled: f
│ │ │ -000568f0: 616c 7365 0a20 2020 2020 2073 7461 7465  alse.      state
│ │ │ -00056900: 3a20 7374 6f70 7065 640a 2020 2020 2020  : stopped.      
│ │ │ -00056910: 6d61 736b 6564 3a20 7472 7565 0a20 2020  masked: true.   
│ │ │ -00056920: 2077 6865 6e3a 2073 6f63 6b65 745f 6669   when: socket_fi
│ │ │ -00056930: 6c65 5f65 7869 7374 732e 7374 646f 7574  le_exists.stdout
│ │ │ -00056940: 5f6c 696e 6573 2069 7320 7365 6172 6368  _lines is search
│ │ │ -00056950: 2822 6162 7274 642e 736f 636b 6574 222c  ("abrtd.socket",
│ │ │ -00056960: 206d 756c 7469 6c69 6e65 3d54 7275 6529   multiline=True)
│ │ │ -00056970: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -00056980: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -00056990: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -000569a0: 2d43 4d2d 3728 6129 0a20 202d 2064 6973  -CM-7(a).  - dis
│ │ │ -000569b0: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ -000569c0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -000569d0: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -000569e0: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ -000569f0: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ -00056a00: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ -00056a10: 2073 6572 7669 6365 5f61 6272 7464 5f64   service_abrtd_d
│ │ │ -00056a20: 6973 6162 6c65 640a 2020 2d20 7370 6563  isabled.  - spec
│ │ │ -00056a30: 6961 6c5f 7365 7276 6963 655f 626c 6f63  ial_service_bloc
│ │ │ -00056a40: 6b0a 2020 7768 656e 3a20 2722 6b65 726e  k.  when: '"kern
│ │ │ -00056a50: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -00056a60: 6163 7473 2e70 6163 6b61 6765 7327 0a3c  acts.packages'.<
│ │ │ +00055eb0: 3e52 656d 6564 6961 7469 6f6e 2041 6e73  >Remediation Ans
│ │ │ +00055ec0: 6962 6c65 2073 6e69 7070 6574 20e2 87b2  ible snippet ...
│ │ │ +00055ed0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
│ │ │ -00056310: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00056340: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00056350: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00056390: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -000563a0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ +00055fa0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +00055fb0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ +00056000: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ +00056010: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ +00056020: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ +00056030: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ +00056040: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ +00056050: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +00056060: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +00056070: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ +00056080: 6469 7361 626c 655f 7374 7261 7465 6779  disable_strategy
│ │ │ +00056090: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +000560a0: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +000560b0: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +000560c0: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ +000560d0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +000560e0: 2020 2d20 7365 7276 6963 655f 6162 7274    - service_abrt
│ │ │ +000560f0: 645f 6469 7361 626c 6564 0a0a 2d20 6e61  d_disabled..- na
│ │ │ +00056100: 6d65 3a20 4469 7361 626c 6520 4175 746f  me: Disable Auto
│ │ │ +00056110: 6d61 7469 6320 4275 6720 5265 706f 7274  matic Bug Report
│ │ │ +00056120: 696e 6720 546f 6f6c 2028 6162 7274 6429  ing Tool (abrtd)
│ │ │ +00056130: 202d 2044 6973 6162 6c65 2073 6572 7669   - Disable servi
│ │ │ +00056140: 6365 2061 6272 7464 0a20 2062 6c6f 636b  ce abrtd.  block
│ │ │ +00056150: 3a0a 0a20 202d 206e 616d 653a 2044 6973  :..  - name: Dis
│ │ │ +00056160: 6162 6c65 2041 7574 6f6d 6174 6963 2042  able Automatic B
│ │ │ +00056170: 7567 2052 6570 6f72 7469 6e67 2054 6f6f  ug Reporting Too
│ │ │ +00056180: 6c20 2861 6272 7464 2920 2d20 436f 6c6c  l (abrtd) - Coll
│ │ │ +00056190: 6563 7420 7379 7374 656d 6420 5365 7276  ect systemd Serv
│ │ │ +000561a0: 6963 6573 0a20 2020 2020 2050 7265 7365  ices.      Prese
│ │ │ +000561b0: 6e74 2069 6e20 7468 6520 5379 7374 656d  nt in the System
│ │ │ +000561c0: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ +000561d0: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 7379  ltin.command: sy
│ │ │ +000561e0: 7374 656d 6374 6c20 2d71 206c 6973 742d  stemctl -q list-
│ │ │ +000561f0: 756e 6974 2d66 696c 6573 202d 2d74 7970  unit-files --typ
│ │ │ +00056200: 6520 7365 7276 6963 650a 2020 2020 7265  e service.    re
│ │ │ +00056210: 6769 7374 6572 3a20 7365 7276 6963 655f  gister: service_
│ │ │ +00056220: 6578 6973 7473 0a20 2020 2063 6861 6e67  exists.    chang
│ │ │ +00056230: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ +00056240: 2020 2066 6169 6c65 645f 7768 656e 3a20     failed_when: 
│ │ │ +00056250: 7365 7276 6963 655f 6578 6973 7473 2e72  service_exists.r
│ │ │ +00056260: 6320 6e6f 7420 696e 205b 302c 2031 5d0a  c not in [0, 1].
│ │ │ +00056270: 2020 2020 6368 6563 6b5f 6d6f 6465 3a20      check_mode: 
│ │ │ +00056280: 6661 6c73 650a 0a20 202d 206e 616d 653a  false..  - name:
│ │ │ +00056290: 2044 6973 6162 6c65 2041 7574 6f6d 6174   Disable Automat
│ │ │ +000562a0: 6963 2042 7567 2052 6570 6f72 7469 6e67  ic Bug Reporting
│ │ │ +000562b0: 2054 6f6f 6c20 2861 6272 7464 2920 2d20   Tool (abrtd) - 
│ │ │ +000562c0: 456e 7375 7265 2061 6272 7464 2e73 6572  Ensure abrtd.ser
│ │ │ +000562d0: 7669 6365 2069 7320 4d61 736b 6564 0a20  vice is Masked. 
│ │ │ +000562e0: 2020 2061 6e73 6962 6c65 2e62 7569 6c74     ansible.built
│ │ │ +000562f0: 696e 2e73 7973 7465 6d64 3a0a 2020 2020  in.systemd:.    
│ │ │ +00056300: 2020 6e61 6d65 3a20 6162 7274 642e 7365    name: abrtd.se
│ │ │ +00056310: 7276 6963 650a 2020 2020 2020 7374 6174  rvice.      stat
│ │ │ +00056320: 653a 2073 746f 7070 6564 0a20 2020 2020  e: stopped.     
│ │ │ +00056330: 2065 6e61 626c 6564 3a20 6661 6c73 650a   enabled: false.
│ │ │ +00056340: 2020 2020 2020 6d61 736b 6564 3a20 7472        masked: tr
│ │ │ +00056350: 7565 0a20 2020 2077 6865 6e3a 2073 6572  ue.    when: ser
│ │ │ +00056360: 7669 6365 5f65 7869 7374 732e 7374 646f  vice_exists.stdo
│ │ │ +00056370: 7574 5f6c 696e 6573 2069 7320 7365 6172  ut_lines is sear
│ │ │ +00056380: 6368 2822 6162 7274 642e 7365 7276 6963  ch("abrtd.servic
│ │ │ +00056390: 6522 2c20 6d75 6c74 696c 696e 653d 5472  e", multiline=Tr
│ │ │ +000563a0: 7565 290a 0a20 202d 206e 616d 653a 2055  ue)..  - name: U
│ │ │ +000563b0: 6e69 7420 536f 636b 6574 2045 7869 7374  nit Socket Exist
│ │ │ +000563c0: 7320 2d20 6162 7274 642e 736f 636b 6574  s - abrtd.socket
│ │ │ +000563d0: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ +000563e0: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 7379  ltin.command: sy
│ │ │ +000563f0: 7374 656d 6374 6c20 2d71 206c 6973 742d  stemctl -q list-
│ │ │ +00056400: 756e 6974 2d66 696c 6573 2061 6272 7464  unit-files abrtd
│ │ │ +00056410: 2e73 6f63 6b65 740a 2020 2020 7265 6769  .socket.    regi
│ │ │ +00056420: 7374 6572 3a20 736f 636b 6574 5f66 696c  ster: socket_fil
│ │ │ +00056430: 655f 6578 6973 7473 0a20 2020 2063 6861  e_exists.    cha
│ │ │ +00056440: 6e67 6564 5f77 6865 6e3a 2066 616c 7365  nged_when: false
│ │ │ +00056450: 0a20 2020 2066 6169 6c65 645f 7768 656e  .    failed_when
│ │ │ +00056460: 3a20 736f 636b 6574 5f66 696c 655f 6578  : socket_file_ex
│ │ │ +00056470: 6973 7473 2e72 6320 6e6f 7420 696e 205b  ists.rc not in [
│ │ │ +00056480: 302c 2031 5d0a 2020 2020 6368 6563 6b5f  0, 1].    check_
│ │ │ +00056490: 6d6f 6465 3a20 6661 6c73 650a 0a20 202d  mode: false..  -
│ │ │ +000564a0: 206e 616d 653a 2044 6973 6162 6c65 2041   name: Disable A
│ │ │ +000564b0: 7574 6f6d 6174 6963 2042 7567 2052 6570  utomatic Bug Rep
│ │ │ +000564c0: 6f72 7469 6e67 2054 6f6f 6c20 2861 6272  orting Tool (abr
│ │ │ +000564d0: 7464 2920 2d20 4469 7361 626c 6520 536f  td) - Disable So
│ │ │ +000564e0: 636b 6574 2061 6272 7464 0a20 2020 2061  cket abrtd.    a
│ │ │ +000564f0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e73  nsible.builtin.s
│ │ │ +00056500: 7973 7465 6d64 3a0a 2020 2020 2020 6e61  ystemd:.      na
│ │ │ +00056510: 6d65 3a20 6162 7274 642e 736f 636b 6574  me: abrtd.socket
│ │ │ +00056520: 0a20 2020 2020 2065 6e61 626c 6564 3a20  .      enabled: 
│ │ │ +00056530: 6661 6c73 650a 2020 2020 2020 7374 6174  false.      stat
│ │ │ +00056540: 653a 2073 746f 7070 6564 0a20 2020 2020  e: stopped.     
│ │ │ +00056550: 206d 6173 6b65 643a 2074 7275 650a 2020   masked: true.  
│ │ │ +00056560: 2020 7768 656e 3a20 736f 636b 6574 5f66    when: socket_f
│ │ │ +00056570: 696c 655f 6578 6973 7473 2e73 7464 6f75  ile_exists.stdou
│ │ │ +00056580: 745f 6c69 6e65 7320 6973 2073 6561 7263  t_lines is searc
│ │ │ +00056590: 6828 2261 6272 7464 2e73 6f63 6b65 7422  h("abrtd.socket"
│ │ │ +000565a0: 2c20 6d75 6c74 696c 696e 653d 5472 7565  , multiline=True
│ │ │ +000565b0: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ +000565c0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +000565d0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +000565e0: 332d 434d 2d37 2861 290a 2020 2d20 6469  3-CM-7(a).  - di
│ │ │ +000565f0: 7361 626c 655f 7374 7261 7465 6779 0a20  sable_strategy. 
│ │ │ +00056600: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +00056610: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ +00056620: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ +00056630: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ +00056640: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ +00056650: 2d20 7365 7276 6963 655f 6162 7274 645f  - service_abrtd_
│ │ │ +00056660: 6469 7361 626c 6564 0a20 202d 2073 7065  disabled.  - spe
│ │ │ +00056670: 6369 616c 5f73 6572 7669 6365 5f62 6c6f  cial_service_blo
│ │ │ +00056680: 636b 0a20 2077 6865 6e3a 2027 226b 6572  ck.  when: '"ker
│ │ │ +00056690: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +000566a0: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ +000566b0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
R │ │ │ +00056760: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ +00056770: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
Complexity:low
Disrup │ │ │ +00055f80: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +00055f90: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +00055fd0: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ +00055fe0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
low< │ │ │ +00056820: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +00056870: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +00056800: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +00056830: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +00056850: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +00056860: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +00056880: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +00056890: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
incl
│ │ │ +000568b0: 7564 6520 6469 7361 626c 655f 6162 7274  ude disable_abrt
│ │ │ +000568c0: 640a 0a63 6c61 7373 2064 6973 6162 6c65  d..class disable
│ │ │ +000568d0: 5f61 6272 7464 207b 0a20 2073 6572 7669  _abrtd {.  servi
│ │ │ +000568e0: 6365 207b 2761 6272 7464 273a 0a20 2020  ce {'abrtd':.   
│ │ │ +000568f0: 2065 6e61 626c 6520 3d26 6774 3b20 6661   enable => fa
│ │ │ +00056900: 6c73 652c 0a20 2020 2065 6e73 7572 6520  lse,.    ensure 
│ │ │ +00056910: 3d26 6774 3b20 2773 746f 7070 6564 272c  => 'stopped',
│ │ │ +00056920: 0a20 207d 0a7d 0a3c 2f63 6f64 653e 3c2f  .  }.}.
Remediatio │ │ │ +000569e0: 6e20 4f53 4275 696c 6420 426c 7565 7072 n OSBuild Bluepr │ │ │ +000569f0: 696e 7420 736e 6970 7065 7420 e287 b23c int snippet ...< │ │ │ +00056a00: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
.[customization
│ │ │ +00056a50: 732e 7365 7276 6963 6573 5d0a 6d61 736b  s.services].mask
│ │ │ +00056a60: 6564 203d 205b 2261 6272 7464 225d 0a3c  ed = ["abrtd"].<
│ │ │  00056a70: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Re │ │ │ -00057a00: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ -00057a10: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ -00057a20: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...

< │ │ │ -00057a30: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00057a40: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00057a50: 7365 2220 6964 3d22 6964 3433 223e 3c70 se" id="id43">

.[custo │ │ │ -00057a70: 6d69 7a61 7469 6f6e 732e 7365 7276 6963 mizations.servic │ │ │ -00057a80: 6573 5d0a 6d61 736b 6564 203d 205b 226e es].masked = ["n │ │ │ -00057a90: 7470 6461 7465 225d 0a3c 2f63 6f64 653e tpdate"]. │ │ │ -00057aa0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063

Remediat │ │ │ -00057b50: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ -00057b60: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
< │ │ │ -00057be0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -00057bf0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -00057c10: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -00057c20: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -00057c40: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -00057c60: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ -00057c90: 636f 6465 3e69 6e63 6c75 6465 2064 6973  code>include dis
│ │ │ -00057ca0: 6162 6c65 5f6e 7470 6461 7465 0a0a 636c  able_ntpdate..cl
│ │ │ -00057cb0: 6173 7320 6469 7361 626c 655f 6e74 7064  ass disable_ntpd
│ │ │ -00057cc0: 6174 6520 7b0a 2020 7365 7276 6963 6520  ate {.  service 
│ │ │ -00057cd0: 7b27 6e74 7064 6174 6527 3a0a 2020 2020  {'ntpdate':.    
│ │ │ -00057ce0: 656e 6162 6c65 203d 2667 743b 2066 616c  enable => fal
│ │ │ -00057cf0: 7365 2c0a 2020 2020 656e 7375 7265 203d  se,.    ensure =
│ │ │ -00057d00: 2667 743b 2027 7374 6f70 7065 6427 2c0a  > 'stopped',.
│ │ │ -00057d10: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediation │ │ │ -00057dd0: 2041 6e73 6962 6c65 2073 6e69 7070 6574 Ansible snippet │ │ │ -00057de0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity: │ │ │ -00057e70: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -00057e90: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -00057eb0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -00057ee0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -00057ef0: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
- name: Gath
│ │ │ -00057f20: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ -00057f30: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ -00057f40: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ -00057f50: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ -00057f60: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -00057f70: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ -00057f80: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ -00057f90: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -00057fa0: 434d 2d37 2862 290a 2020 2d20 6469 7361  CM-7(b).  - disa
│ │ │ -00057fb0: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ -00057fc0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -00057fd0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -00057fe0: 6f6e 0a20 202d 206c 6f77 5f73 6576 6572  on.  - low_sever
│ │ │ -00057ff0: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ -00058000: 745f 6e65 6564 6564 0a20 202d 2073 6572  t_needed.  - ser
│ │ │ -00058010: 7669 6365 5f6e 7470 6461 7465 5f64 6973  vice_ntpdate_dis
│ │ │ -00058020: 6162 6c65 640a 0a2d 206e 616d 653a 2044  abled..- name: D
│ │ │ -00058030: 6973 6162 6c65 206e 7470 6461 7465 2053  isable ntpdate S
│ │ │ -00058040: 6572 7669 6365 2028 6e74 7064 6174 6529  ervice (ntpdate)
│ │ │ -00058050: 202d 2044 6973 6162 6c65 2073 6572 7669   - Disable servi
│ │ │ -00058060: 6365 206e 7470 6461 7465 0a20 2062 6c6f  ce ntpdate.  blo
│ │ │ -00058070: 636b 3a0a 0a20 202d 206e 616d 653a 2044  ck:..  - name: D
│ │ │ -00058080: 6973 6162 6c65 206e 7470 6461 7465 2053  isable ntpdate S
│ │ │ -00058090: 6572 7669 6365 2028 6e74 7064 6174 6529  ervice (ntpdate)
│ │ │ -000580a0: 202d 2043 6f6c 6c65 6374 2073 7973 7465   - Collect syste
│ │ │ -000580b0: 6d64 2053 6572 7669 6365 7320 5072 6573  md Services Pres
│ │ │ -000580c0: 656e 7420 696e 0a20 2020 2020 2074 6865  ent in.      the
│ │ │ -000580d0: 2053 7973 7465 6d0a 2020 2020 616e 7369   System.    ansi
│ │ │ -000580e0: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ -000580f0: 616e 643a 2073 7973 7465 6d63 746c 202d  and: systemctl -
│ │ │ -00058100: 7120 6c69 7374 2d75 6e69 742d 6669 6c65  q list-unit-file
│ │ │ -00058110: 7320 2d2d 7479 7065 2073 6572 7669 6365  s --type service
│ │ │ -00058120: 0a20 2020 2072 6567 6973 7465 723a 2073  .    register: s
│ │ │ -00058130: 6572 7669 6365 5f65 7869 7374 730a 2020  ervice_exists.  
│ │ │ -00058140: 2020 6368 616e 6765 645f 7768 656e 3a20    changed_when: 
│ │ │ -00058150: 6661 6c73 650a 2020 2020 6661 696c 6564  false.    failed
│ │ │ -00058160: 5f77 6865 6e3a 2073 6572 7669 6365 5f65  _when: service_e
│ │ │ -00058170: 7869 7374 732e 7263 206e 6f74 2069 6e20  xists.rc not in 
│ │ │ -00058180: 5b30 2c20 315d 0a20 2020 2063 6865 636b  [0, 1].    check
│ │ │ -00058190: 5f6d 6f64 653a 2066 616c 7365 0a0a 2020  _mode: false..  
│ │ │ -000581a0: 2d20 6e61 6d65 3a20 4469 7361 626c 6520  - name: Disable 
│ │ │ -000581b0: 6e74 7064 6174 6520 5365 7276 6963 6520  ntpdate Service 
│ │ │ -000581c0: 286e 7470 6461 7465 2920 2d20 456e 7375  (ntpdate) - Ensu
│ │ │ -000581d0: 7265 206e 7470 6461 7465 2e73 6572 7669  re ntpdate.servi
│ │ │ -000581e0: 6365 2069 7320 4d61 736b 6564 0a20 2020  ce is Masked.   
│ │ │ -000581f0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -00058200: 2e73 7973 7465 6d64 3a0a 2020 2020 2020  .systemd:.      
│ │ │ -00058210: 6e61 6d65 3a20 6e74 7064 6174 652e 7365  name: ntpdate.se
│ │ │ -00058220: 7276 6963 650a 2020 2020 2020 7374 6174  rvice.      stat
│ │ │ -00058230: 653a 2073 746f 7070 6564 0a20 2020 2020  e: stopped.     
│ │ │ -00058240: 2065 6e61 626c 6564 3a20 6661 6c73 650a   enabled: false.
│ │ │ -00058250: 2020 2020 2020 6d61 736b 6564 3a20 7472        masked: tr
│ │ │ -00058260: 7565 0a20 2020 2077 6865 6e3a 2073 6572  ue.    when: ser
│ │ │ -00058270: 7669 6365 5f65 7869 7374 732e 7374 646f  vice_exists.stdo
│ │ │ -00058280: 7574 5f6c 696e 6573 2069 7320 7365 6172  ut_lines is sear
│ │ │ -00058290: 6368 2822 6e74 7064 6174 652e 7365 7276  ch("ntpdate.serv
│ │ │ -000582a0: 6963 6522 2c20 6d75 6c74 696c 696e 653d  ice", multiline=
│ │ │ -000582b0: 5472 7565 290a 0a20 202d 206e 616d 653a  True)..  - name:
│ │ │ -000582c0: 2055 6e69 7420 536f 636b 6574 2045 7869   Unit Socket Exi
│ │ │ -000582d0: 7374 7320 2d20 6e74 7064 6174 652e 736f  sts - ntpdate.so
│ │ │ -000582e0: 636b 6574 0a20 2020 2061 6e73 6962 6c65  cket.    ansible
│ │ │ -000582f0: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ -00058300: 3a20 7379 7374 656d 6374 6c20 2d71 206c  : systemctl -q l
│ │ │ -00058310: 6973 742d 756e 6974 2d66 696c 6573 206e  ist-unit-files n
│ │ │ -00058320: 7470 6461 7465 2e73 6f63 6b65 740a 2020  tpdate.socket.  
│ │ │ -00058330: 2020 7265 6769 7374 6572 3a20 736f 636b    register: sock
│ │ │ -00058340: 6574 5f66 696c 655f 6578 6973 7473 0a20  et_file_exists. 
│ │ │ -00058350: 2020 2063 6861 6e67 6564 5f77 6865 6e3a     changed_when:
│ │ │ -00058360: 2066 616c 7365 0a20 2020 2066 6169 6c65   false.    faile
│ │ │ -00058370: 645f 7768 656e 3a20 736f 636b 6574 5f66  d_when: socket_f
│ │ │ -00058380: 696c 655f 6578 6973 7473 2e72 6320 6e6f  ile_exists.rc no
│ │ │ -00058390: 7420 696e 205b 302c 2031 5d0a 2020 2020  t in [0, 1].    
│ │ │ -000583a0: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73  check_mode: fals
│ │ │ -000583b0: 650a 0a20 202d 206e 616d 653a 2044 6973  e..  - name: Dis
│ │ │ -000583c0: 6162 6c65 206e 7470 6461 7465 2053 6572  able ntpdate Ser
│ │ │ -000583d0: 7669 6365 2028 6e74 7064 6174 6529 202d  vice (ntpdate) -
│ │ │ -000583e0: 2044 6973 6162 6c65 2053 6f63 6b65 7420   Disable Socket 
│ │ │ -000583f0: 6e74 7064 6174 650a 2020 2020 616e 7369  ntpdate.    ansi
│ │ │ -00058400: 626c 652e 6275 696c 7469 6e2e 7379 7374  ble.builtin.syst
│ │ │ -00058410: 656d 643a 0a20 2020 2020 206e 616d 653a  emd:.      name:
│ │ │ -00058420: 206e 7470 6461 7465 2e73 6f63 6b65 740a   ntpdate.socket.
│ │ │ -00058430: 2020 2020 2020 656e 6162 6c65 643a 2066        enabled: f
│ │ │ -00058440: 616c 7365 0a20 2020 2020 2073 7461 7465  alse.      state
│ │ │ -00058450: 3a20 7374 6f70 7065 640a 2020 2020 2020  : stopped.      
│ │ │ -00058460: 6d61 736b 6564 3a20 7472 7565 0a20 2020  masked: true.   
│ │ │ -00058470: 2077 6865 6e3a 2073 6f63 6b65 745f 6669   when: socket_fi
│ │ │ -00058480: 6c65 5f65 7869 7374 732e 7374 646f 7574  le_exists.stdout
│ │ │ -00058490: 5f6c 696e 6573 2069 7320 7365 6172 6368  _lines is search
│ │ │ -000584a0: 2822 6e74 7064 6174 652e 736f 636b 6574  ("ntpdate.socket
│ │ │ -000584b0: 222c 206d 756c 7469 6c69 6e65 3d54 7275  ", multiline=Tru
│ │ │ -000584c0: 6529 0a20 2074 6167 733a 0a20 202d 204e  e).  tags:.  - N
│ │ │ -000584d0: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -000584e0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -000584f0: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ -00058500: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -00058510: 6229 0a20 202d 2064 6973 6162 6c65 5f73  b).  - disable_s
│ │ │ -00058520: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ -00058530: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ -00058540: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -00058550: 2d20 6c6f 775f 7365 7665 7269 7479 0a20  - low_severity. 
│ │ │ -00058560: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -00058570: 6465 640a 2020 2d20 7365 7276 6963 655f  ded.  - service_
│ │ │ -00058580: 6e74 7064 6174 655f 6469 7361 626c 6564  ntpdate_disabled
│ │ │ -00058590: 0a20 202d 2073 7065 6369 616c 5f73 6572  .  - special_ser
│ │ │ -000585a0: 7669 6365 5f62 6c6f 636b 0a20 2077 6865  vice_block.  whe
│ │ │ -000585b0: 6e3a 2027 226b 6572 6e65 6c22 2069 6e20  n: '"kernel" in 
│ │ │ -000585c0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -000585d0: 636b 6167 6573 270a 3c2f 636f 6465 3e3c  ckages'.<
│ │ │ +00057a00: 6d65 6469 6174 696f 6e20 416e 7369 626c  mediation Ansibl
│ │ │ +00057a10: 6520 736e 6970 7065 7420 e287 b23c 2f61  e snippet ...
low< │ │ │ +00057ac0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +00057b10: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
- n
│ │ │ +00057b50: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ +00057b60: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ +00057b70: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ +00057b80: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ +00057b90: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +00057ba0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +00057bb0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +00057bc0: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ +00057bd0: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ +00057be0: 0a20 202d 2064 6973 6162 6c65 5f73 7472  .  - disable_str
│ │ │ +00057bf0: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ +00057c00: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ +00057c10: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +00057c20: 6c6f 775f 7365 7665 7269 7479 0a20 202d  low_severity.  -
│ │ │ +00057c30: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +00057c40: 640a 2020 2d20 7365 7276 6963 655f 6e74  d.  - service_nt
│ │ │ +00057c50: 7064 6174 655f 6469 7361 626c 6564 0a0a  pdate_disabled..
│ │ │ +00057c60: 2d20 6e61 6d65 3a20 4469 7361 626c 6520  - name: Disable 
│ │ │ +00057c70: 6e74 7064 6174 6520 5365 7276 6963 6520  ntpdate Service 
│ │ │ +00057c80: 286e 7470 6461 7465 2920 2d20 4469 7361  (ntpdate) - Disa
│ │ │ +00057c90: 626c 6520 7365 7276 6963 6520 6e74 7064  ble service ntpd
│ │ │ +00057ca0: 6174 650a 2020 626c 6f63 6b3a 0a0a 2020  ate.  block:..  
│ │ │ +00057cb0: 2d20 6e61 6d65 3a20 4469 7361 626c 6520  - name: Disable 
│ │ │ +00057cc0: 6e74 7064 6174 6520 5365 7276 6963 6520  ntpdate Service 
│ │ │ +00057cd0: 286e 7470 6461 7465 2920 2d20 436f 6c6c  (ntpdate) - Coll
│ │ │ +00057ce0: 6563 7420 7379 7374 656d 6420 5365 7276  ect systemd Serv
│ │ │ +00057cf0: 6963 6573 2050 7265 7365 6e74 2069 6e0a  ices Present in.
│ │ │ +00057d00: 2020 2020 2020 7468 6520 5379 7374 656d        the System
│ │ │ +00057d10: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ +00057d20: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 7379  ltin.command: sy
│ │ │ +00057d30: 7374 656d 6374 6c20 2d71 206c 6973 742d  stemctl -q list-
│ │ │ +00057d40: 756e 6974 2d66 696c 6573 202d 2d74 7970  unit-files --typ
│ │ │ +00057d50: 6520 7365 7276 6963 650a 2020 2020 7265  e service.    re
│ │ │ +00057d60: 6769 7374 6572 3a20 7365 7276 6963 655f  gister: service_
│ │ │ +00057d70: 6578 6973 7473 0a20 2020 2063 6861 6e67  exists.    chang
│ │ │ +00057d80: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ +00057d90: 2020 2066 6169 6c65 645f 7768 656e 3a20     failed_when: 
│ │ │ +00057da0: 7365 7276 6963 655f 6578 6973 7473 2e72  service_exists.r
│ │ │ +00057db0: 6320 6e6f 7420 696e 205b 302c 2031 5d0a  c not in [0, 1].
│ │ │ +00057dc0: 2020 2020 6368 6563 6b5f 6d6f 6465 3a20      check_mode: 
│ │ │ +00057dd0: 6661 6c73 650a 0a20 202d 206e 616d 653a  false..  - name:
│ │ │ +00057de0: 2044 6973 6162 6c65 206e 7470 6461 7465   Disable ntpdate
│ │ │ +00057df0: 2053 6572 7669 6365 2028 6e74 7064 6174   Service (ntpdat
│ │ │ +00057e00: 6529 202d 2045 6e73 7572 6520 6e74 7064  e) - Ensure ntpd
│ │ │ +00057e10: 6174 652e 7365 7276 6963 6520 6973 204d  ate.service is M
│ │ │ +00057e20: 6173 6b65 640a 2020 2020 616e 7369 626c  asked.    ansibl
│ │ │ +00057e30: 652e 6275 696c 7469 6e2e 7379 7374 656d  e.builtin.system
│ │ │ +00057e40: 643a 0a20 2020 2020 206e 616d 653a 206e  d:.      name: n
│ │ │ +00057e50: 7470 6461 7465 2e73 6572 7669 6365 0a20  tpdate.service. 
│ │ │ +00057e60: 2020 2020 2073 7461 7465 3a20 7374 6f70       state: stop
│ │ │ +00057e70: 7065 640a 2020 2020 2020 656e 6162 6c65  ped.      enable
│ │ │ +00057e80: 643a 2066 616c 7365 0a20 2020 2020 206d  d: false.      m
│ │ │ +00057e90: 6173 6b65 643a 2074 7275 650a 2020 2020  asked: true.    
│ │ │ +00057ea0: 7768 656e 3a20 7365 7276 6963 655f 6578  when: service_ex
│ │ │ +00057eb0: 6973 7473 2e73 7464 6f75 745f 6c69 6e65  ists.stdout_line
│ │ │ +00057ec0: 7320 6973 2073 6561 7263 6828 226e 7470  s is search("ntp
│ │ │ +00057ed0: 6461 7465 2e73 6572 7669 6365 222c 206d  date.service", m
│ │ │ +00057ee0: 756c 7469 6c69 6e65 3d54 7275 6529 0a0a  ultiline=True)..
│ │ │ +00057ef0: 2020 2d20 6e61 6d65 3a20 556e 6974 2053    - name: Unit S
│ │ │ +00057f00: 6f63 6b65 7420 4578 6973 7473 202d 206e  ocket Exists - n
│ │ │ +00057f10: 7470 6461 7465 2e73 6f63 6b65 740a 2020  tpdate.socket.  
│ │ │ +00057f20: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +00057f30: 6e2e 636f 6d6d 616e 643a 2073 7973 7465  n.command: syste
│ │ │ +00057f40: 6d63 746c 202d 7120 6c69 7374 2d75 6e69  mctl -q list-uni
│ │ │ +00057f50: 742d 6669 6c65 7320 6e74 7064 6174 652e  t-files ntpdate.
│ │ │ +00057f60: 736f 636b 6574 0a20 2020 2072 6567 6973  socket.    regis
│ │ │ +00057f70: 7465 723a 2073 6f63 6b65 745f 6669 6c65  ter: socket_file
│ │ │ +00057f80: 5f65 7869 7374 730a 2020 2020 6368 616e  _exists.    chan
│ │ │ +00057f90: 6765 645f 7768 656e 3a20 6661 6c73 650a  ged_when: false.
│ │ │ +00057fa0: 2020 2020 6661 696c 6564 5f77 6865 6e3a      failed_when:
│ │ │ +00057fb0: 2073 6f63 6b65 745f 6669 6c65 5f65 7869   socket_file_exi
│ │ │ +00057fc0: 7374 732e 7263 206e 6f74 2069 6e20 5b30  sts.rc not in [0
│ │ │ +00057fd0: 2c20 315d 0a20 2020 2063 6865 636b 5f6d  , 1].    check_m
│ │ │ +00057fe0: 6f64 653a 2066 616c 7365 0a0a 2020 2d20  ode: false..  - 
│ │ │ +00057ff0: 6e61 6d65 3a20 4469 7361 626c 6520 6e74  name: Disable nt
│ │ │ +00058000: 7064 6174 6520 5365 7276 6963 6520 286e  pdate Service (n
│ │ │ +00058010: 7470 6461 7465 2920 2d20 4469 7361 626c  tpdate) - Disabl
│ │ │ +00058020: 6520 536f 636b 6574 206e 7470 6461 7465  e Socket ntpdate
│ │ │ +00058030: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ +00058040: 6c74 696e 2e73 7973 7465 6d64 3a0a 2020  ltin.systemd:.  
│ │ │ +00058050: 2020 2020 6e61 6d65 3a20 6e74 7064 6174      name: ntpdat
│ │ │ +00058060: 652e 736f 636b 6574 0a20 2020 2020 2065  e.socket.      e
│ │ │ +00058070: 6e61 626c 6564 3a20 6661 6c73 650a 2020  nabled: false.  
│ │ │ +00058080: 2020 2020 7374 6174 653a 2073 746f 7070      state: stopp
│ │ │ +00058090: 6564 0a20 2020 2020 206d 6173 6b65 643a  ed.      masked:
│ │ │ +000580a0: 2074 7275 650a 2020 2020 7768 656e 3a20   true.    when: 
│ │ │ +000580b0: 736f 636b 6574 5f66 696c 655f 6578 6973  socket_file_exis
│ │ │ +000580c0: 7473 2e73 7464 6f75 745f 6c69 6e65 7320  ts.stdout_lines 
│ │ │ +000580d0: 6973 2073 6561 7263 6828 226e 7470 6461  is search("ntpda
│ │ │ +000580e0: 7465 2e73 6f63 6b65 7422 2c20 6d75 6c74  te.socket", mult
│ │ │ +000580f0: 696c 696e 653d 5472 7565 290a 2020 7461  iline=True).  ta
│ │ │ +00058100: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +00058110: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +00058120: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +00058130: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +00058140: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ +00058150: 6469 7361 626c 655f 7374 7261 7465 6779  disable_strategy
│ │ │ +00058160: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +00058170: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +00058180: 7570 7469 6f6e 0a20 202d 206c 6f77 5f73  uption.  - low_s
│ │ │ +00058190: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ +000581a0: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ +000581b0: 2073 6572 7669 6365 5f6e 7470 6461 7465   service_ntpdate
│ │ │ +000581c0: 5f64 6973 6162 6c65 640a 2020 2d20 7370  _disabled.  - sp
│ │ │ +000581d0: 6563 6961 6c5f 7365 7276 6963 655f 626c  ecial_service_bl
│ │ │ +000581e0: 6f63 6b0a 2020 7768 656e 3a20 2722 6b65  ock.  when: '"ke
│ │ │ +000581f0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +00058200: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ +00058210: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
│ │ │ +000582c0: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +000582d0: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
Co │ │ │ +00057aa0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +00057ad0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +00057af0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +00057b00: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +00057b20: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +00057b30: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ +00058370: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00058380: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +000583d0: 3c74 723e 3c74 683e 5374 7261 7465 6779
inc
│ │ │ +00058410: 6c75 6465 2064 6973 6162 6c65 5f6e 7470  lude disable_ntp
│ │ │ +00058420: 6461 7465 0a0a 636c 6173 7320 6469 7361  date..class disa
│ │ │ +00058430: 626c 655f 6e74 7064 6174 6520 7b0a 2020  ble_ntpdate {.  
│ │ │ +00058440: 7365 7276 6963 6520 7b27 6e74 7064 6174  service {'ntpdat
│ │ │ +00058450: 6527 3a0a 2020 2020 656e 6162 6c65 203d  e':.    enable =
│ │ │ +00058460: 2667 743b 2066 616c 7365 2c0a 2020 2020  > false,.    
│ │ │ +00058470: 656e 7375 7265 203d 2667 743b 2027 7374  ensure => 'st
│ │ │ +00058480: 6f70 7065 6427 2c0a 2020 7d0a 7d0a 3c2f  opped',.  }.}.
Rem │ │ │ +00058540: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ +00058550: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ +00058560: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
.[custom │ │ │ +000585b0: 697a 6174 696f 6e73 2e73 6572 7669 6365 izations.service │ │ │ +000585c0: 735d 0a6d 6173 6b65 6420 3d20 5b22 6e74 s].masked = ["nt │ │ │ +000585d0: 7064 6174 6522 5d0a 3c2f 636f 6465 3e3c pdate"].< │ │ │ 000585e0: 2f70 7265 3e3c 2f64 6976 3e3c 2f64 6976 /pre>
C │ │ │ +00058360: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +00058390: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +000583a0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +000583e0: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +000583f0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ 00058610: 3c2f 7472 3e3c 7472 2064 6174 612d 7474 Remed │ │ │ -00059480: 6961 7469 6f6e 204f 5342 7569 6c64 2042 iation OSBuild B │ │ │ -00059490: 6c75 6570 7269 6e74 2073 6e69 7070 6574 lueprint snippet │ │ │ -000594a0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
│ │ │ -000594e0: 3c63 6f64 653e 0a5b 6375 7374 6f6d 697a  .[customiz
│ │ │ -000594f0: 6174 696f 6e73 2e73 6572 7669 6365 735d  ations.services]
│ │ │ -00059500: 0a6d 6173 6b65 6420 3d20 5b22 6f64 646a  .masked = ["oddj
│ │ │ -00059510: 6f62 6422 5d0a 3c2f 636f 6465 3e3c 2f70  obd"].

Remediation │ │ │ -000595d0: 2050 7570 7065 7420 736e 6970 7065 7420 Puppet snippet │ │ │ -000595e0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
│ │ │ -00059660: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -00059680: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -000596d0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ -00059700: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
include disabl
│ │ │ -00059720: 655f 6f64 646a 6f62 640a 0a63 6c61 7373  e_oddjobd..class
│ │ │ -00059730: 2064 6973 6162 6c65 5f6f 6464 6a6f 6264   disable_oddjobd
│ │ │ -00059740: 207b 0a20 2073 6572 7669 6365 207b 276f   {.  service {'o
│ │ │ -00059750: 6464 6a6f 6264 273a 0a20 2020 2065 6e61  ddjobd':.    ena
│ │ │ -00059760: 626c 6520 3d26 6774 3b20 6661 6c73 652c  ble => false,
│ │ │ -00059770: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ -00059780: 3b20 2773 746f 7070 6564 272c 0a20 207d  ; 'stopped',.  }
│ │ │ -00059790: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e  .}.
│ │ │ -000597a0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation An │ │ │ -00059850: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -00059860: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
Complexity:< │ │ │ -00059670: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -00059690: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -000596e0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ -000596f0: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
Complexity: │ │ │ -00059930: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -00059940: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
- name: Gather 
│ │ │ -000599a0: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -000599b0: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -000599c0: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -000599d0: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -000599e0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -000599f0: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ -00059a00: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ -00059a10: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -00059a20: 3728 6229 0a20 202d 2064 6973 6162 6c65  7(b).  - disable
│ │ │ -00059a30: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ -00059a40: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -00059a50: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -00059a60: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -00059a70: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ -00059a80: 745f 6e65 6564 6564 0a20 202d 2073 6572  t_needed.  - ser
│ │ │ -00059a90: 7669 6365 5f6f 6464 6a6f 6264 5f64 6973  vice_oddjobd_dis
│ │ │ -00059aa0: 6162 6c65 640a 0a2d 206e 616d 653a 2044  abled..- name: D
│ │ │ -00059ab0: 6973 6162 6c65 204f 6464 204a 6f62 2044  isable Odd Job D
│ │ │ -00059ac0: 6165 6d6f 6e20 286f 6464 6a6f 6264 2920  aemon (oddjobd) 
│ │ │ -00059ad0: 2d20 4469 7361 626c 6520 7365 7276 6963  - Disable servic
│ │ │ -00059ae0: 6520 6f64 646a 6f62 640a 2020 626c 6f63  e oddjobd.  bloc
│ │ │ -00059af0: 6b3a 0a0a 2020 2d20 6e61 6d65 3a20 4469  k:..  - name: Di
│ │ │ -00059b00: 7361 626c 6520 4f64 6420 4a6f 6220 4461  sable Odd Job Da
│ │ │ -00059b10: 656d 6f6e 2028 6f64 646a 6f62 6429 202d  emon (oddjobd) -
│ │ │ -00059b20: 2043 6f6c 6c65 6374 2073 7973 7465 6d64   Collect systemd
│ │ │ -00059b30: 2053 6572 7669 6365 7320 5072 6573 656e   Services Presen
│ │ │ -00059b40: 7420 696e 2074 6865 0a20 2020 2020 2053  t in the.      S
│ │ │ -00059b50: 7973 7465 6d0a 2020 2020 616e 7369 626c  ystem.    ansibl
│ │ │ -00059b60: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ -00059b70: 643a 2073 7973 7465 6d63 746c 202d 7120  d: systemctl -q 
│ │ │ -00059b80: 6c69 7374 2d75 6e69 742d 6669 6c65 7320  list-unit-files 
│ │ │ -00059b90: 2d2d 7479 7065 2073 6572 7669 6365 0a20  --type service. 
│ │ │ -00059ba0: 2020 2072 6567 6973 7465 723a 2073 6572     register: ser
│ │ │ -00059bb0: 7669 6365 5f65 7869 7374 730a 2020 2020  vice_exists.    
│ │ │ -00059bc0: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ -00059bd0: 6c73 650a 2020 2020 6661 696c 6564 5f77  lse.    failed_w
│ │ │ -00059be0: 6865 6e3a 2073 6572 7669 6365 5f65 7869  hen: service_exi
│ │ │ -00059bf0: 7374 732e 7263 206e 6f74 2069 6e20 5b30  sts.rc not in [0
│ │ │ -00059c00: 2c20 315d 0a20 2020 2063 6865 636b 5f6d  , 1].    check_m
│ │ │ -00059c10: 6f64 653a 2066 616c 7365 0a0a 2020 2d20  ode: false..  - 
│ │ │ -00059c20: 6e61 6d65 3a20 4469 7361 626c 6520 4f64  name: Disable Od
│ │ │ -00059c30: 6420 4a6f 6220 4461 656d 6f6e 2028 6f64  d Job Daemon (od
│ │ │ -00059c40: 646a 6f62 6429 202d 2045 6e73 7572 6520  djobd) - Ensure 
│ │ │ -00059c50: 6f64 646a 6f62 642e 7365 7276 6963 6520  oddjobd.service 
│ │ │ -00059c60: 6973 204d 6173 6b65 640a 2020 2020 616e  is Masked.    an
│ │ │ -00059c70: 7369 626c 652e 6275 696c 7469 6e2e 7379  sible.builtin.sy
│ │ │ -00059c80: 7374 656d 643a 0a20 2020 2020 206e 616d  stemd:.      nam
│ │ │ -00059c90: 653a 206f 6464 6a6f 6264 2e73 6572 7669  e: oddjobd.servi
│ │ │ -00059ca0: 6365 0a20 2020 2020 2073 7461 7465 3a20  ce.      state: 
│ │ │ -00059cb0: 7374 6f70 7065 640a 2020 2020 2020 656e  stopped.      en
│ │ │ -00059cc0: 6162 6c65 643a 2066 616c 7365 0a20 2020  abled: false.   
│ │ │ -00059cd0: 2020 206d 6173 6b65 643a 2074 7275 650a     masked: true.
│ │ │ -00059ce0: 2020 2020 7768 656e 3a20 7365 7276 6963      when: servic
│ │ │ -00059cf0: 655f 6578 6973 7473 2e73 7464 6f75 745f  e_exists.stdout_
│ │ │ -00059d00: 6c69 6e65 7320 6973 2073 6561 7263 6828  lines is search(
│ │ │ -00059d10: 226f 6464 6a6f 6264 2e73 6572 7669 6365  "oddjobd.service
│ │ │ -00059d20: 222c 206d 756c 7469 6c69 6e65 3d54 7275  ", multiline=Tru
│ │ │ -00059d30: 6529 0a0a 2020 2d20 6e61 6d65 3a20 556e  e)..  - name: Un
│ │ │ -00059d40: 6974 2053 6f63 6b65 7420 4578 6973 7473  it Socket Exists
│ │ │ -00059d50: 202d 206f 6464 6a6f 6264 2e73 6f63 6b65   - oddjobd.socke
│ │ │ -00059d60: 740a 2020 2020 616e 7369 626c 652e 6275  t.    ansible.bu
│ │ │ -00059d70: 696c 7469 6e2e 636f 6d6d 616e 643a 2073  iltin.command: s
│ │ │ -00059d80: 7973 7465 6d63 746c 202d 7120 6c69 7374  ystemctl -q list
│ │ │ -00059d90: 2d75 6e69 742d 6669 6c65 7320 6f64 646a  -unit-files oddj
│ │ │ -00059da0: 6f62 642e 736f 636b 6574 0a20 2020 2072  obd.socket.    r
│ │ │ -00059db0: 6567 6973 7465 723a 2073 6f63 6b65 745f  egister: socket_
│ │ │ -00059dc0: 6669 6c65 5f65 7869 7374 730a 2020 2020  file_exists.    
│ │ │ -00059dd0: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ -00059de0: 6c73 650a 2020 2020 6661 696c 6564 5f77  lse.    failed_w
│ │ │ -00059df0: 6865 6e3a 2073 6f63 6b65 745f 6669 6c65  hen: socket_file
│ │ │ -00059e00: 5f65 7869 7374 732e 7263 206e 6f74 2069  _exists.rc not i
│ │ │ -00059e10: 6e20 5b30 2c20 315d 0a20 2020 2063 6865  n [0, 1].    che
│ │ │ -00059e20: 636b 5f6d 6f64 653a 2066 616c 7365 0a0a  ck_mode: false..
│ │ │ -00059e30: 2020 2d20 6e61 6d65 3a20 4469 7361 626c    - name: Disabl
│ │ │ -00059e40: 6520 4f64 6420 4a6f 6220 4461 656d 6f6e  e Odd Job Daemon
│ │ │ -00059e50: 2028 6f64 646a 6f62 6429 202d 2044 6973   (oddjobd) - Dis
│ │ │ -00059e60: 6162 6c65 2053 6f63 6b65 7420 6f64 646a  able Socket oddj
│ │ │ -00059e70: 6f62 640a 2020 2020 616e 7369 626c 652e  obd.    ansible.
│ │ │ -00059e80: 6275 696c 7469 6e2e 7379 7374 656d 643a  builtin.systemd:
│ │ │ -00059e90: 0a20 2020 2020 206e 616d 653a 206f 6464  .      name: odd
│ │ │ -00059ea0: 6a6f 6264 2e73 6f63 6b65 740a 2020 2020  jobd.socket.    
│ │ │ -00059eb0: 2020 656e 6162 6c65 643a 2066 616c 7365    enabled: false
│ │ │ -00059ec0: 0a20 2020 2020 2073 7461 7465 3a20 7374  .      state: st
│ │ │ -00059ed0: 6f70 7065 640a 2020 2020 2020 6d61 736b  opped.      mask
│ │ │ -00059ee0: 6564 3a20 7472 7565 0a20 2020 2077 6865  ed: true.    whe
│ │ │ -00059ef0: 6e3a 2073 6f63 6b65 745f 6669 6c65 5f65  n: socket_file_e
│ │ │ -00059f00: 7869 7374 732e 7374 646f 7574 5f6c 696e  xists.stdout_lin
│ │ │ -00059f10: 6573 2069 7320 7365 6172 6368 2822 6f64  es is search("od
│ │ │ -00059f20: 646a 6f62 642e 736f 636b 6574 222c 206d  djobd.socket", m
│ │ │ -00059f30: 756c 7469 6c69 6e65 3d54 7275 6529 0a20  ultiline=True). 
│ │ │ -00059f40: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -00059f50: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -00059f60: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -00059f70: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -00059f80: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -00059f90: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ -00059fa0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ -00059fb0: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -00059fc0: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -00059fd0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -00059fe0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -00059ff0: 6564 0a20 202d 2073 6572 7669 6365 5f6f  ed.  - service_o
│ │ │ -0005a000: 6464 6a6f 6264 5f64 6973 6162 6c65 640a  ddjobd_disabled.
│ │ │ -0005a010: 2020 2d20 7370 6563 6961 6c5f 7365 7276    - special_serv
│ │ │ -0005a020: 6963 655f 626c 6f63 6b0a 2020 7768 656e  ice_block.  when
│ │ │ -0005a030: 3a20 2722 6b65 726e 656c 2220 696e 2061  : '"kernel" in a
│ │ │ -0005a040: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -0005a050: 6b61 6765 7327 0a3c 2f63 6f64 653e 3c2f  kages'.
low
Disru │ │ │ -00059910: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -00059920: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -00059960: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -00059970: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ +00059540: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +00059560: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +00059590: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +00059520: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +00059530: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +00059550: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +00059570: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +00059580: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ +000595c0: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ +000595d0: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ +000595e0: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ +000595f0: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ +00059600: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ +00059610: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ +00059620: 3030 2d35 332d 434d 2d36 2861 290a 2020 00-53-CM-6(a). │ │ │ +00059630: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ +00059640: 2d37 2861 290a 2020 2d20 4e49 5354 2d38 -7(a). - NIST-8 │ │ │ +00059650: 3030 2d35 332d 434d 2d37 2862 290a 2020 00-53-CM-7(b). │ │ │ +00059660: 2d20 6469 7361 626c 655f 7374 7261 7465 - disable_strate │ │ │ +00059670: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c gy. - low_compl │ │ │ +00059680: 6578 6974 790a 2020 2d20 6c6f 775f 6469 exity. - low_di │ │ │ +00059690: 7372 7570 7469 6f6e 0a20 202d 206d 6564 sruption. - med │ │ │ +000596a0: 6975 6d5f 7365 7665 7269 7479 0a20 202d ium_severity. - │ │ │ +000596b0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ +000596c0: 640a 2020 2d20 7365 7276 6963 655f 6f64 d. - service_od │ │ │ +000596d0: 646a 6f62 645f 6469 7361 626c 6564 0a0a djobd_disabled.. │ │ │ +000596e0: 2d20 6e61 6d65 3a20 4469 7361 626c 6520 - name: Disable │ │ │ +000596f0: 4f64 6420 4a6f 6220 4461 656d 6f6e 2028 Odd Job Daemon ( │ │ │ +00059700: 6f64 646a 6f62 6429 202d 2044 6973 6162 oddjobd) - Disab │ │ │ +00059710: 6c65 2073 6572 7669 6365 206f 6464 6a6f le service oddjo │ │ │ +00059720: 6264 0a20 2062 6c6f 636b 3a0a 0a20 202d bd. block:.. - │ │ │ +00059730: 206e 616d 653a 2044 6973 6162 6c65 204f name: Disable O │ │ │ +00059740: 6464 204a 6f62 2044 6165 6d6f 6e20 286f dd Job Daemon (o │ │ │ +00059750: 6464 6a6f 6264 2920 2d20 436f 6c6c 6563 ddjobd) - Collec │ │ │ +00059760: 7420 7379 7374 656d 6420 5365 7276 6963 t systemd Servic │ │ │ +00059770: 6573 2050 7265 7365 6e74 2069 6e20 7468 es Present in th │ │ │ +00059780: 650a 2020 2020 2020 5379 7374 656d 0a20 e. System. │ │ │ +00059790: 2020 2061 6e73 6962 6c65 2e62 7569 6c74 ansible.built │ │ │ +000597a0: 696e 2e63 6f6d 6d61 6e64 3a20 7379 7374 in.command: syst │ │ │ +000597b0: 656d 6374 6c20 2d71 206c 6973 742d 756e emctl -q list-un │ │ │ +000597c0: 6974 2d66 696c 6573 202d 2d74 7970 6520 it-files --type │ │ │ +000597d0: 7365 7276 6963 650a 2020 2020 7265 6769 service. regi │ │ │ +000597e0: 7374 6572 3a20 7365 7276 6963 655f 6578 ster: service_ex │ │ │ +000597f0: 6973 7473 0a20 2020 2063 6861 6e67 6564 ists. changed │ │ │ +00059800: 5f77 6865 6e3a 2066 616c 7365 0a20 2020 _when: false. │ │ │ +00059810: 2066 6169 6c65 645f 7768 656e 3a20 7365 failed_when: se │ │ │ +00059820: 7276 6963 655f 6578 6973 7473 2e72 6320 rvice_exists.rc │ │ │ +00059830: 6e6f 7420 696e 205b 302c 2031 5d0a 2020 not in [0, 1]. │ │ │ +00059840: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661 check_mode: fa │ │ │ +00059850: 6c73 650a 0a20 202d 206e 616d 653a 2044 lse.. - name: D │ │ │ +00059860: 6973 6162 6c65 204f 6464 204a 6f62 2044 isable Odd Job D │ │ │ +00059870: 6165 6d6f 6e20 286f 6464 6a6f 6264 2920 aemon (oddjobd) │ │ │ +00059880: 2d20 456e 7375 7265 206f 6464 6a6f 6264 - Ensure oddjobd │ │ │ +00059890: 2e73 6572 7669 6365 2069 7320 4d61 736b .service is Mask │ │ │ +000598a0: 6564 0a20 2020 2061 6e73 6962 6c65 2e62 ed. ansible.b │ │ │ +000598b0: 7569 6c74 696e 2e73 7973 7465 6d64 3a0a uiltin.systemd:. │ │ │ +000598c0: 2020 2020 2020 6e61 6d65 3a20 6f64 646a name: oddj │ │ │ +000598d0: 6f62 642e 7365 7276 6963 650a 2020 2020 obd.service. │ │ │ +000598e0: 2020 7374 6174 653a 2073 746f 7070 6564 state: stopped │ │ │ +000598f0: 0a20 2020 2020 2065 6e61 626c 6564 3a20 . enabled: │ │ │ +00059900: 6661 6c73 650a 2020 2020 2020 6d61 736b false. mask │ │ │ +00059910: 6564 3a20 7472 7565 0a20 2020 2077 6865 ed: true. whe │ │ │ +00059920: 6e3a 2073 6572 7669 6365 5f65 7869 7374 n: service_exist │ │ │ +00059930: 732e 7374 646f 7574 5f6c 696e 6573 2069 s.stdout_lines i │ │ │ +00059940: 7320 7365 6172 6368 2822 6f64 646a 6f62 s search("oddjob │ │ │ +00059950: 642e 7365 7276 6963 6522 2c20 6d75 6c74 d.service", mult │ │ │ +00059960: 696c 696e 653d 5472 7565 290a 0a20 202d iline=True).. - │ │ │ +00059970: 206e 616d 653a 2055 6e69 7420 536f 636b name: Unit Sock │ │ │ +00059980: 6574 2045 7869 7374 7320 2d20 6f64 646a et Exists - oddj │ │ │ +00059990: 6f62 642e 736f 636b 6574 0a20 2020 2061 obd.socket. a │ │ │ +000599a0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63 nsible.builtin.c │ │ │ +000599b0: 6f6d 6d61 6e64 3a20 7379 7374 656d 6374 ommand: systemct │ │ │ +000599c0: 6c20 2d71 206c 6973 742d 756e 6974 2d66 l -q list-unit-f │ │ │ +000599d0: 696c 6573 206f 6464 6a6f 6264 2e73 6f63 iles oddjobd.soc │ │ │ +000599e0: 6b65 740a 2020 2020 7265 6769 7374 6572 ket. register │ │ │ +000599f0: 3a20 736f 636b 6574 5f66 696c 655f 6578 : socket_file_ex │ │ │ +00059a00: 6973 7473 0a20 2020 2063 6861 6e67 6564 ists. changed │ │ │ +00059a10: 5f77 6865 6e3a 2066 616c 7365 0a20 2020 _when: false. │ │ │ +00059a20: 2066 6169 6c65 645f 7768 656e 3a20 736f failed_when: so │ │ │ +00059a30: 636b 6574 5f66 696c 655f 6578 6973 7473 cket_file_exists │ │ │ +00059a40: 2e72 6320 6e6f 7420 696e 205b 302c 2031 .rc not in [0, 1 │ │ │ +00059a50: 5d0a 2020 2020 6368 6563 6b5f 6d6f 6465 ]. check_mode │ │ │ +00059a60: 3a20 6661 6c73 650a 0a20 202d 206e 616d : false.. - nam │ │ │ +00059a70: 653a 2044 6973 6162 6c65 204f 6464 204a e: Disable Odd J │ │ │ +00059a80: 6f62 2044 6165 6d6f 6e20 286f 6464 6a6f ob Daemon (oddjo │ │ │ +00059a90: 6264 2920 2d20 4469 7361 626c 6520 536f bd) - Disable So │ │ │ +00059aa0: 636b 6574 206f 6464 6a6f 6264 0a20 2020 cket oddjobd. │ │ │ +00059ab0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e ansible.builtin │ │ │ +00059ac0: 2e73 7973 7465 6d64 3a0a 2020 2020 2020 .systemd:. │ │ │ +00059ad0: 6e61 6d65 3a20 6f64 646a 6f62 642e 736f name: oddjobd.so │ │ │ +00059ae0: 636b 6574 0a20 2020 2020 2065 6e61 626c cket. enabl │ │ │ +00059af0: 6564 3a20 6661 6c73 650a 2020 2020 2020 ed: false. │ │ │ +00059b00: 7374 6174 653a 2073 746f 7070 6564 0a20 state: stopped. │ │ │ +00059b10: 2020 2020 206d 6173 6b65 643a 2074 7275 masked: tru │ │ │ +00059b20: 650a 2020 2020 7768 656e 3a20 736f 636b e. when: sock │ │ │ +00059b30: 6574 5f66 696c 655f 6578 6973 7473 2e73 et_file_exists.s │ │ │ +00059b40: 7464 6f75 745f 6c69 6e65 7320 6973 2073 tdout_lines is s │ │ │ +00059b50: 6561 7263 6828 226f 6464 6a6f 6264 2e73 earch("oddjobd.s │ │ │ +00059b60: 6f63 6b65 7422 2c20 6d75 6c74 696c 696e ocket", multilin │ │ │ +00059b70: 653d 5472 7565 290a 2020 7461 6773 3a0a e=True). tags:. │ │ │ +00059b80: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ +00059b90: 434d 2d36 2861 290a 2020 2d20 4e49 5354 CM-6(a). - NIST │ │ │ +00059ba0: 2d38 3030 2d35 332d 434d 2d37 2861 290a -800-53-CM-7(a). │ │ │ +00059bb0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ +00059bc0: 434d 2d37 2862 290a 2020 2d20 6469 7361 CM-7(b). - disa │ │ │ +00059bd0: 626c 655f 7374 7261 7465 6779 0a20 202d ble_strategy. - │ │ │ +00059be0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a low_complexity. │ │ │ +00059bf0: 2020 2d20 6c6f 775f 6469 7372 7570 7469 - low_disrupti │ │ │ +00059c00: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365 on. - medium_se │ │ │ +00059c10: 7665 7269 7479 0a20 202d 206e 6f5f 7265 verity. - no_re │ │ │ +00059c20: 626f 6f74 5f6e 6565 6465 640a 2020 2d20 boot_needed. - │ │ │ +00059c30: 7365 7276 6963 655f 6f64 646a 6f62 645f service_oddjobd_ │ │ │ +00059c40: 6469 7361 626c 6564 0a20 202d 2073 7065 disabled. - spe │ │ │ +00059c50: 6369 616c 5f73 6572 7669 6365 5f62 6c6f cial_service_blo │ │ │ +00059c60: 636b 0a20 2077 6865 6e3a 2027 226b 6572 ck. when: '"ker │ │ │ +00059c70: 6e65 6c22 2069 6e20 616e 7369 626c 655f nel" in ansible_ │ │ │ +00059c80: 6661 6374 732e 7061 636b 6167 6573 270a facts.packages'. │ │ │ +00059c90: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64
R │ │ │ +00059d40: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ +00059d50: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
low< │ │ │ +00059e00: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +00059e50: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +00059de0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +00059e10: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +00059e30: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +00059e40: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +00059e60: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +00059e70: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
incl
│ │ │ +00059e90: 7564 6520 6469 7361 626c 655f 6f64 646a  ude disable_oddj
│ │ │ +00059ea0: 6f62 640a 0a63 6c61 7373 2064 6973 6162  obd..class disab
│ │ │ +00059eb0: 6c65 5f6f 6464 6a6f 6264 207b 0a20 2073  le_oddjobd {.  s
│ │ │ +00059ec0: 6572 7669 6365 207b 276f 6464 6a6f 6264  ervice {'oddjobd
│ │ │ +00059ed0: 273a 0a20 2020 2065 6e61 626c 6520 3d26  ':.    enable =&
│ │ │ +00059ee0: 6774 3b20 6661 6c73 652c 0a20 2020 2065  gt; false,.    e
│ │ │ +00059ef0: 6e73 7572 6520 3d26 6774 3b20 2773 746f  nsure => 'sto
│ │ │ +00059f00: 7070 6564 272c 0a20 207d 0a7d 0a3c 2f63  pped',.  }.}.
│ │ │ +00059f20: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Reme │ │ │ +00059fc0: 6469 6174 696f 6e20 4f53 4275 696c 6420 diation OSBuild │ │ │ +00059fd0: 426c 7565 7072 696e 7420 736e 6970 7065 Blueprint snippe │ │ │ +00059fe0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
.[customi
│ │ │ +0005a030: 7a61 7469 6f6e 732e 7365 7276 6963 6573  zations.services
│ │ │ +0005a040: 5d0a 6d61 736b 6564 203d 205b 226f 6464  ].masked = ["odd
│ │ │ +0005a050: 6a6f 6264 225d 0a3c 2f63 6f64 653e 3c2f  jobd"].
│ │ │ 0005a070: 3c2f 7464 3e3c 2f74 723e 3c2f 7462 6f64 < │ │ │ 0005a090: 2f74 723e 3c74 7220 6461 7461 2d74 742d /tr>Remedia │ │ │ -0005aff0: 7469 6f6e 204f 5342 7569 6c64 2042 6c75 tion OSBuild Blu │ │ │ -0005b000: 6570 7269 6e74 2073 6e69 7070 6574 20e2 eprint snippet . │ │ │ -0005b010: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
.[customizat
│ │ │ -0005b060: 696f 6e73 2e73 6572 7669 6365 735d 0a6d  ions.services].m
│ │ │ -0005b070: 6173 6b65 6420 3d20 5b22 7170 6964 6422  asked = ["qpidd"
│ │ │ -0005b080: 5d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  ].
< │ │ │ -0005b090: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pup │ │ │ -0005b140: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ -0005b150: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -0005b1e0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
in
│ │ │ -0005b280: 636c 7564 6520 6469 7361 626c 655f 7170  clude disable_qp
│ │ │ -0005b290: 6964 640a 0a63 6c61 7373 2064 6973 6162  idd..class disab
│ │ │ -0005b2a0: 6c65 5f71 7069 6464 207b 0a20 2073 6572  le_qpidd {.  ser
│ │ │ -0005b2b0: 7669 6365 207b 2771 7069 6464 273a 0a20  vice {'qpidd':. 
│ │ │ -0005b2c0: 2020 2065 6e61 626c 6520 3d26 6774 3b20     enable => 
│ │ │ -0005b2d0: 6661 6c73 652c 0a20 2020 2065 6e73 7572  false,.    ensur
│ │ │ -0005b2e0: 6520 3d26 6774 3b20 2773 746f 7070 6564  e => 'stopped
│ │ │ -0005b2f0: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e  ',.  }.}.
│ │ │ -0005b300: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remediat │ │ │ -0005b3b0: 696f 6e20 416e 7369 626c 6520 736e 6970 ion Ansible snip │ │ │ -0005b3c0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -0005b3d0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -0005b3e0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -0005b3f0: 7365 2220 6964 3d22 6964 3533 223e 3c74 se" id="id53"> │ │ │ -0005b440: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 < │ │ │ -0005b4d0: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -0005b4e0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
│ │ │ -0005b1d0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -0005b200: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -0005b210: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -0005b250: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -0005b260: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexi │ │ │ -0005b450: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -0005b460: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ -0005b4a0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -0005b4b0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
- name: G
│ │ │ -0005b500: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ -0005b510: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ -0005b520: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ -0005b530: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ -0005b540: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ -0005b550: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ -0005b560: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -0005b570: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -0005b580: 3533 2d43 4d2d 3728 6229 0a20 202d 2064  53-CM-7(b).  - d
│ │ │ -0005b590: 6973 6162 6c65 5f73 7472 6174 6567 790a  isable_strategy.
│ │ │ -0005b5a0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -0005b5b0: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ -0005b5c0: 7074 696f 6e0a 2020 2d20 6c6f 775f 7365  ption.  - low_se
│ │ │ -0005b5d0: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ -0005b5e0: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ -0005b5f0: 7365 7276 6963 655f 7170 6964 645f 6469  service_qpidd_di
│ │ │ -0005b600: 7361 626c 6564 0a0a 2d20 6e61 6d65 3a20  sabled..- name: 
│ │ │ -0005b610: 4469 7361 626c 6520 4170 6163 6865 2051  Disable Apache Q
│ │ │ -0005b620: 7069 6420 2871 7069 6464 2920 2d20 4469  pid (qpidd) - Di
│ │ │ -0005b630: 7361 626c 6520 7365 7276 6963 6520 7170  sable service qp
│ │ │ -0005b640: 6964 640a 2020 626c 6f63 6b3a 0a0a 2020  idd.  block:..  
│ │ │ -0005b650: 2d20 6e61 6d65 3a20 4469 7361 626c 6520  - name: Disable 
│ │ │ -0005b660: 4170 6163 6865 2051 7069 6420 2871 7069  Apache Qpid (qpi
│ │ │ -0005b670: 6464 2920 2d20 436f 6c6c 6563 7420 7379  dd) - Collect sy
│ │ │ -0005b680: 7374 656d 6420 5365 7276 6963 6573 2050  stemd Services P
│ │ │ -0005b690: 7265 7365 6e74 2069 6e20 7468 6520 5379  resent in the Sy
│ │ │ -0005b6a0: 7374 656d 0a20 2020 2061 6e73 6962 6c65  stem.    ansible
│ │ │ -0005b6b0: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ -0005b6c0: 3a20 7379 7374 656d 6374 6c20 2d71 206c  : systemctl -q l
│ │ │ -0005b6d0: 6973 742d 756e 6974 2d66 696c 6573 202d  ist-unit-files -
│ │ │ -0005b6e0: 2d74 7970 6520 7365 7276 6963 650a 2020  -type service.  
│ │ │ -0005b6f0: 2020 7265 6769 7374 6572 3a20 7365 7276    register: serv
│ │ │ -0005b700: 6963 655f 6578 6973 7473 0a20 2020 2063  ice_exists.    c
│ │ │ -0005b710: 6861 6e67 6564 5f77 6865 6e3a 2066 616c  hanged_when: fal
│ │ │ -0005b720: 7365 0a20 2020 2066 6169 6c65 645f 7768  se.    failed_wh
│ │ │ -0005b730: 656e 3a20 7365 7276 6963 655f 6578 6973  en: service_exis
│ │ │ -0005b740: 7473 2e72 6320 6e6f 7420 696e 205b 302c  ts.rc not in [0,
│ │ │ -0005b750: 2031 5d0a 2020 2020 6368 6563 6b5f 6d6f   1].    check_mo
│ │ │ -0005b760: 6465 3a20 6661 6c73 650a 0a20 202d 206e  de: false..  - n
│ │ │ -0005b770: 616d 653a 2044 6973 6162 6c65 2041 7061  ame: Disable Apa
│ │ │ -0005b780: 6368 6520 5170 6964 2028 7170 6964 6429  che Qpid (qpidd)
│ │ │ -0005b790: 202d 2045 6e73 7572 6520 7170 6964 642e   - Ensure qpidd.
│ │ │ -0005b7a0: 7365 7276 6963 6520 6973 204d 6173 6b65  service is Maske
│ │ │ -0005b7b0: 640a 2020 2020 616e 7369 626c 652e 6275  d.    ansible.bu
│ │ │ -0005b7c0: 696c 7469 6e2e 7379 7374 656d 643a 0a20  iltin.systemd:. 
│ │ │ -0005b7d0: 2020 2020 206e 616d 653a 2071 7069 6464       name: qpidd
│ │ │ -0005b7e0: 2e73 6572 7669 6365 0a20 2020 2020 2073  .service.      s
│ │ │ -0005b7f0: 7461 7465 3a20 7374 6f70 7065 640a 2020  tate: stopped.  
│ │ │ -0005b800: 2020 2020 656e 6162 6c65 643a 2066 616c      enabled: fal
│ │ │ -0005b810: 7365 0a20 2020 2020 206d 6173 6b65 643a  se.      masked:
│ │ │ -0005b820: 2074 7275 650a 2020 2020 7768 656e 3a20   true.    when: 
│ │ │ -0005b830: 7365 7276 6963 655f 6578 6973 7473 2e73  service_exists.s
│ │ │ -0005b840: 7464 6f75 745f 6c69 6e65 7320 6973 2073  tdout_lines is s
│ │ │ -0005b850: 6561 7263 6828 2271 7069 6464 2e73 6572  earch("qpidd.ser
│ │ │ -0005b860: 7669 6365 222c 206d 756c 7469 6c69 6e65  vice", multiline
│ │ │ -0005b870: 3d54 7275 6529 0a0a 2020 2d20 6e61 6d65  =True)..  - name
│ │ │ -0005b880: 3a20 556e 6974 2053 6f63 6b65 7420 4578  : Unit Socket Ex
│ │ │ -0005b890: 6973 7473 202d 2071 7069 6464 2e73 6f63  ists - qpidd.soc
│ │ │ -0005b8a0: 6b65 740a 2020 2020 616e 7369 626c 652e  ket.    ansible.
│ │ │ -0005b8b0: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ -0005b8c0: 2073 7973 7465 6d63 746c 202d 7120 6c69   systemctl -q li
│ │ │ -0005b8d0: 7374 2d75 6e69 742d 6669 6c65 7320 7170  st-unit-files qp
│ │ │ -0005b8e0: 6964 642e 736f 636b 6574 0a20 2020 2072  idd.socket.    r
│ │ │ -0005b8f0: 6567 6973 7465 723a 2073 6f63 6b65 745f  egister: socket_
│ │ │ -0005b900: 6669 6c65 5f65 7869 7374 730a 2020 2020  file_exists.    
│ │ │ -0005b910: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ -0005b920: 6c73 650a 2020 2020 6661 696c 6564 5f77  lse.    failed_w
│ │ │ -0005b930: 6865 6e3a 2073 6f63 6b65 745f 6669 6c65  hen: socket_file
│ │ │ -0005b940: 5f65 7869 7374 732e 7263 206e 6f74 2069  _exists.rc not i
│ │ │ -0005b950: 6e20 5b30 2c20 315d 0a20 2020 2063 6865  n [0, 1].    che
│ │ │ -0005b960: 636b 5f6d 6f64 653a 2066 616c 7365 0a0a  ck_mode: false..
│ │ │ -0005b970: 2020 2d20 6e61 6d65 3a20 4469 7361 626c    - name: Disabl
│ │ │ -0005b980: 6520 4170 6163 6865 2051 7069 6420 2871  e Apache Qpid (q
│ │ │ -0005b990: 7069 6464 2920 2d20 4469 7361 626c 6520  pidd) - Disable 
│ │ │ -0005b9a0: 536f 636b 6574 2071 7069 6464 0a20 2020  Socket qpidd.   
│ │ │ -0005b9b0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -0005b9c0: 2e73 7973 7465 6d64 3a0a 2020 2020 2020  .systemd:.      
│ │ │ -0005b9d0: 6e61 6d65 3a20 7170 6964 642e 736f 636b  name: qpidd.sock
│ │ │ -0005b9e0: 6574 0a20 2020 2020 2065 6e61 626c 6564  et.      enabled
│ │ │ -0005b9f0: 3a20 6661 6c73 650a 2020 2020 2020 7374  : false.      st
│ │ │ -0005ba00: 6174 653a 2073 746f 7070 6564 0a20 2020  ate: stopped.   
│ │ │ -0005ba10: 2020 206d 6173 6b65 643a 2074 7275 650a     masked: true.
│ │ │ -0005ba20: 2020 2020 7768 656e 3a20 736f 636b 6574      when: socket
│ │ │ -0005ba30: 5f66 696c 655f 6578 6973 7473 2e73 7464  _file_exists.std
│ │ │ -0005ba40: 6f75 745f 6c69 6e65 7320 6973 2073 6561  out_lines is sea
│ │ │ -0005ba50: 7263 6828 2271 7069 6464 2e73 6f63 6b65  rch("qpidd.socke
│ │ │ -0005ba60: 7422 2c20 6d75 6c74 696c 696e 653d 5472  t", multiline=Tr
│ │ │ -0005ba70: 7565 290a 2020 7461 6773 3a0a 2020 2d20  ue).  tags:.  - 
│ │ │ -0005ba80: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -0005ba90: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -0005baa0: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ -0005bab0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -0005bac0: 2862 290a 2020 2d20 6469 7361 626c 655f  (b).  - disable_
│ │ │ -0005bad0: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ -0005bae0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -0005baf0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -0005bb00: 202d 206c 6f77 5f73 6576 6572 6974 790a   - low_severity.
│ │ │ -0005bb10: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -0005bb20: 6564 6564 0a20 202d 2073 6572 7669 6365  eded.  - service
│ │ │ -0005bb30: 5f71 7069 6464 5f64 6973 6162 6c65 640a  _qpidd_disabled.
│ │ │ -0005bb40: 2020 2d20 7370 6563 6961 6c5f 7365 7276    - special_serv
│ │ │ -0005bb50: 6963 655f 626c 6f63 6b0a 2020 7768 656e  ice_block.  when
│ │ │ -0005bb60: 3a20 2722 6b65 726e 656c 2220 696e 2061  : '"kernel" in a
│ │ │ -0005bb70: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -0005bb80: 6b61 6765 7327 0a3c 2f63 6f64 653e 3c2f  kages'.
│ │ │ +0005b010: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
< │ │ │ +0005b040: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +0005b050: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +0005b060: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +0005b070: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +0005b080: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +0005b090: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +0005b0a0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ +0005b0e0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +0005b0f0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ +0005b110: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ +0005b120: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 - name: │ │ │ +0005b140: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ +0005b150: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ +0005b160: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ +0005b170: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ +0005b180: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ +0005b190: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ +0005b1a0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37 NIST-800-53-CM-7 │ │ │ +0005b1b0: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ +0005b1c0: 2d35 332d 434d 2d37 2862 290a 2020 2d20 -53-CM-7(b). - │ │ │ +0005b1d0: 6469 7361 626c 655f 7374 7261 7465 6779 disable_strategy │ │ │ +0005b1e0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ +0005b1f0: 6974 790a 2020 2d20 6c6f 775f 6469 7372 ity. - low_disr │ │ │ +0005b200: 7570 7469 6f6e 0a20 202d 206c 6f77 5f73 uption. - low_s │ │ │ +0005b210: 6576 6572 6974 790a 2020 2d20 6e6f 5f72 everity. - no_r │ │ │ +0005b220: 6562 6f6f 745f 6e65 6564 6564 0a20 202d eboot_needed. - │ │ │ +0005b230: 2073 6572 7669 6365 5f71 7069 6464 5f64 service_qpidd_d │ │ │ +0005b240: 6973 6162 6c65 640a 0a2d 206e 616d 653a isabled..- name: │ │ │ +0005b250: 2044 6973 6162 6c65 2041 7061 6368 6520 Disable Apache │ │ │ +0005b260: 5170 6964 2028 7170 6964 6429 202d 2044 Qpid (qpidd) - D │ │ │ +0005b270: 6973 6162 6c65 2073 6572 7669 6365 2071 isable service q │ │ │ +0005b280: 7069 6464 0a20 2062 6c6f 636b 3a0a 0a20 pidd. block:.. │ │ │ +0005b290: 202d 206e 616d 653a 2044 6973 6162 6c65 - name: Disable │ │ │ +0005b2a0: 2041 7061 6368 6520 5170 6964 2028 7170 Apache Qpid (qp │ │ │ +0005b2b0: 6964 6429 202d 2043 6f6c 6c65 6374 2073 idd) - Collect s │ │ │ +0005b2c0: 7973 7465 6d64 2053 6572 7669 6365 7320 ystemd Services │ │ │ +0005b2d0: 5072 6573 656e 7420 696e 2074 6865 2053 Present in the S │ │ │ +0005b2e0: 7973 7465 6d0a 2020 2020 616e 7369 626c ystem. ansibl │ │ │ +0005b2f0: 652e 6275 696c 7469 6e2e 636f 6d6d 616e e.builtin.comman │ │ │ +0005b300: 643a 2073 7973 7465 6d63 746c 202d 7120 d: systemctl -q │ │ │ +0005b310: 6c69 7374 2d75 6e69 742d 6669 6c65 7320 list-unit-files │ │ │ +0005b320: 2d2d 7479 7065 2073 6572 7669 6365 0a20 --type service. │ │ │ +0005b330: 2020 2072 6567 6973 7465 723a 2073 6572 register: ser │ │ │ +0005b340: 7669 6365 5f65 7869 7374 730a 2020 2020 vice_exists. │ │ │ +0005b350: 6368 616e 6765 645f 7768 656e 3a20 6661 changed_when: fa │ │ │ +0005b360: 6c73 650a 2020 2020 6661 696c 6564 5f77 lse. failed_w │ │ │ +0005b370: 6865 6e3a 2073 6572 7669 6365 5f65 7869 hen: service_exi │ │ │ +0005b380: 7374 732e 7263 206e 6f74 2069 6e20 5b30 sts.rc not in [0 │ │ │ +0005b390: 2c20 315d 0a20 2020 2063 6865 636b 5f6d , 1]. check_m │ │ │ +0005b3a0: 6f64 653a 2066 616c 7365 0a0a 2020 2d20 ode: false.. - │ │ │ +0005b3b0: 6e61 6d65 3a20 4469 7361 626c 6520 4170 name: Disable Ap │ │ │ +0005b3c0: 6163 6865 2051 7069 6420 2871 7069 6464 ache Qpid (qpidd │ │ │ +0005b3d0: 2920 2d20 456e 7375 7265 2071 7069 6464 ) - Ensure qpidd │ │ │ +0005b3e0: 2e73 6572 7669 6365 2069 7320 4d61 736b .service is Mask │ │ │ +0005b3f0: 6564 0a20 2020 2061 6e73 6962 6c65 2e62 ed. ansible.b │ │ │ +0005b400: 7569 6c74 696e 2e73 7973 7465 6d64 3a0a uiltin.systemd:. │ │ │ +0005b410: 2020 2020 2020 6e61 6d65 3a20 7170 6964 name: qpid │ │ │ +0005b420: 642e 7365 7276 6963 650a 2020 2020 2020 d.service. │ │ │ +0005b430: 7374 6174 653a 2073 746f 7070 6564 0a20 state: stopped. │ │ │ +0005b440: 2020 2020 2065 6e61 626c 6564 3a20 6661 enabled: fa │ │ │ +0005b450: 6c73 650a 2020 2020 2020 6d61 736b 6564 lse. masked │ │ │ +0005b460: 3a20 7472 7565 0a20 2020 2077 6865 6e3a : true. when: │ │ │ +0005b470: 2073 6572 7669 6365 5f65 7869 7374 732e service_exists. │ │ │ +0005b480: 7374 646f 7574 5f6c 696e 6573 2069 7320 stdout_lines is │ │ │ +0005b490: 7365 6172 6368 2822 7170 6964 642e 7365 search("qpidd.se │ │ │ +0005b4a0: 7276 6963 6522 2c20 6d75 6c74 696c 696e rvice", multilin │ │ │ +0005b4b0: 653d 5472 7565 290a 0a20 202d 206e 616d e=True).. - nam │ │ │ +0005b4c0: 653a 2055 6e69 7420 536f 636b 6574 2045 e: Unit Socket E │ │ │ +0005b4d0: 7869 7374 7320 2d20 7170 6964 642e 736f xists - qpidd.so │ │ │ +0005b4e0: 636b 6574 0a20 2020 2061 6e73 6962 6c65 cket. ansible │ │ │ +0005b4f0: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64 .builtin.command │ │ │ +0005b500: 3a20 7379 7374 656d 6374 6c20 2d71 206c : systemctl -q l │ │ │ +0005b510: 6973 742d 756e 6974 2d66 696c 6573 2071 ist-unit-files q │ │ │ +0005b520: 7069 6464 2e73 6f63 6b65 740a 2020 2020 pidd.socket. │ │ │ +0005b530: 7265 6769 7374 6572 3a20 736f 636b 6574 register: socket │ │ │ +0005b540: 5f66 696c 655f 6578 6973 7473 0a20 2020 _file_exists. │ │ │ +0005b550: 2063 6861 6e67 6564 5f77 6865 6e3a 2066 changed_when: f │ │ │ +0005b560: 616c 7365 0a20 2020 2066 6169 6c65 645f alse. failed_ │ │ │ +0005b570: 7768 656e 3a20 736f 636b 6574 5f66 696c when: socket_fil │ │ │ +0005b580: 655f 6578 6973 7473 2e72 6320 6e6f 7420 e_exists.rc not │ │ │ +0005b590: 696e 205b 302c 2031 5d0a 2020 2020 6368 in [0, 1]. ch │ │ │ +0005b5a0: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a eck_mode: false. │ │ │ +0005b5b0: 0a20 202d 206e 616d 653a 2044 6973 6162 . - name: Disab │ │ │ +0005b5c0: 6c65 2041 7061 6368 6520 5170 6964 2028 le Apache Qpid ( │ │ │ +0005b5d0: 7170 6964 6429 202d 2044 6973 6162 6c65 qpidd) - Disable │ │ │ +0005b5e0: 2053 6f63 6b65 7420 7170 6964 640a 2020 Socket qpidd. │ │ │ +0005b5f0: 2020 616e 7369 626c 652e 6275 696c 7469 ansible.builti │ │ │ +0005b600: 6e2e 7379 7374 656d 643a 0a20 2020 2020 n.systemd:. │ │ │ +0005b610: 206e 616d 653a 2071 7069 6464 2e73 6f63 name: qpidd.soc │ │ │ +0005b620: 6b65 740a 2020 2020 2020 656e 6162 6c65 ket. enable │ │ │ +0005b630: 643a 2066 616c 7365 0a20 2020 2020 2073 d: false. s │ │ │ +0005b640: 7461 7465 3a20 7374 6f70 7065 640a 2020 tate: stopped. │ │ │ +0005b650: 2020 2020 6d61 736b 6564 3a20 7472 7565 masked: true │ │ │ +0005b660: 0a20 2020 2077 6865 6e3a 2073 6f63 6b65 . when: socke │ │ │ +0005b670: 745f 6669 6c65 5f65 7869 7374 732e 7374 t_file_exists.st │ │ │ +0005b680: 646f 7574 5f6c 696e 6573 2069 7320 7365 dout_lines is se │ │ │ +0005b690: 6172 6368 2822 7170 6964 642e 736f 636b arch("qpidd.sock │ │ │ +0005b6a0: 6574 222c 206d 756c 7469 6c69 6e65 3d54 et", multiline=T │ │ │ +0005b6b0: 7275 6529 0a20 2074 6167 733a 0a20 202d rue). tags:. - │ │ │ +0005b6c0: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ +0005b6d0: 3628 6129 0a20 202d 204e 4953 542d 3830 6(a). - NIST-80 │ │ │ +0005b6e0: 302d 3533 2d43 4d2d 3728 6129 0a20 202d 0-53-CM-7(a). - │ │ │ +0005b6f0: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ +0005b700: 3728 6229 0a20 202d 2064 6973 6162 6c65 7(b). - disable │ │ │ +0005b710: 5f73 7472 6174 6567 790a 2020 2d20 6c6f _strategy. - lo │ │ │ +0005b720: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ +0005b730: 206c 6f77 5f64 6973 7275 7074 696f 6e0a low_disruption. │ │ │ +0005b740: 2020 2d20 6c6f 775f 7365 7665 7269 7479 - low_severity │ │ │ +0005b750: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ +0005b760: 6565 6465 640a 2020 2d20 7365 7276 6963 eeded. - servic │ │ │ +0005b770: 655f 7170 6964 645f 6469 7361 626c 6564 e_qpidd_disabled │ │ │ +0005b780: 0a20 202d 2073 7065 6369 616c 5f73 6572 . - special_ser │ │ │ +0005b790: 7669 6365 5f62 6c6f 636b 0a20 2077 6865 vice_block. whe │ │ │ +0005b7a0: 6e3a 2027 226b 6572 6e65 6c22 2069 6e20 n: '"kernel" in │ │ │ +0005b7b0: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ +0005b7c0: 636b 6167 6573 270a 3c2f 636f 6465 3e3c ckages'.< │ │ │ +0005b7d0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>
Remediati │ │ │ +0005b880: 6f6e 2050 7570 7065 7420 736e 6970 7065 on Puppet snippe │ │ │ +0005b890: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
Complexity │ │ │ +0005b920: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +0005b940: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +0005b950: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0005b960: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +0005b970: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +0005b990: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
include disa
│ │ │ +0005b9d0: 626c 655f 7170 6964 640a 0a63 6c61 7373  ble_qpidd..class
│ │ │ +0005b9e0: 2064 6973 6162 6c65 5f71 7069 6464 207b   disable_qpidd {
│ │ │ +0005b9f0: 0a20 2073 6572 7669 6365 207b 2771 7069  .  service {'qpi
│ │ │ +0005ba00: 6464 273a 0a20 2020 2065 6e61 626c 6520  dd':.    enable 
│ │ │ +0005ba10: 3d26 6774 3b20 6661 6c73 652c 0a20 2020  => false,.   
│ │ │ +0005ba20: 2065 6e73 7572 6520 3d26 6774 3b20 2773   ensure => 's
│ │ │ +0005ba30: 746f 7070 6564 272c 0a20 207d 0a7d 0a3c  topped',.  }.}.<
│ │ │ +0005ba40: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Re │ │ │ +0005baf0: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ +0005bb00: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ +0005bb10: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +0005bb20: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +0005bb30: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +0005bb40: 7365 2220 6964 3d22 6964 3533 223e 3c70 se" id="id53">

.[custo │ │ │ +0005bb60: 6d69 7a61 7469 6f6e 732e 7365 7276 6963 mizations.servic │ │ │ +0005bb70: 6573 5d0a 6d61 736b 6564 203d 205b 2271 es].masked = ["q │ │ │ +0005bb80: 7069 6464 225d 0a3c 2f63 6f64 653e 3c2f pidd"].

│ │ │ 0005bba0: 3c2f 7464 3e3c 2f74 723e 3c2f 7462 6f64 < │ │ │ 0005bbc0: 2f74 723e 3c74 7220 6461 7461 2d74 742d /tr>Remedi │ │ │ -0005cc70: 6174 696f 6e20 4f53 4275 696c 6420 426c ation OSBuild Bl │ │ │ -0005cc80: 7565 7072 696e 7420 736e 6970 7065 7420 ueprint snippet │ │ │ -0005cc90: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
<
│ │ │ -0005ccd0: 636f 6465 3e0a 5b63 7573 746f 6d69 7a61  code>.[customiza
│ │ │ -0005cce0: 7469 6f6e 732e 7365 7276 6963 6573 5d0a  tions.services].
│ │ │ -0005ccf0: 6d61 736b 6564 203d 205b 2272 6469 7363  masked = ["rdisc
│ │ │ -0005cd00: 225d 0a3c 2f63 6f64 653e 3c2f 7072 653e  "].
│ │ │ -0005cd10: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation Pu │ │ │ -0005cdc0: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ -0005cdd0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
< │ │ │ -0005cea0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0005ceb0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
i
│ │ │ -0005cf00: 6e63 6c75 6465 2064 6973 6162 6c65 5f72  nclude disable_r
│ │ │ -0005cf10: 6469 7363 0a0a 636c 6173 7320 6469 7361  disc..class disa
│ │ │ -0005cf20: 626c 655f 7264 6973 6320 7b0a 2020 7365  ble_rdisc {.  se
│ │ │ -0005cf30: 7276 6963 6520 7b27 7264 6973 6327 3a0a  rvice {'rdisc':.
│ │ │ -0005cf40: 2020 2020 656e 6162 6c65 203d 2667 743b      enable =>
│ │ │ -0005cf50: 2066 616c 7365 2c0a 2020 2020 656e 7375   false,.    ensu
│ │ │ -0005cf60: 7265 203d 2667 743b 2027 7374 6f70 7065  re => 'stoppe
│ │ │ -0005cf70: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  d',.  }.}.
Remedia │ │ │ -0005d030: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -0005d040: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -0005d050: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
< │ │ │ -0005d080: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -0005d090: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -0005d0a0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -0005d0b0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -0005d0c0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:Strategy: │ │ │ -0005d150: 3c74 643e 6469 7361 626c 653c 2f74 643e │ │ │ -0005d160: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Complexity:low
Disrup │ │ │ -0005ce80: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0005ce90: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0005ced0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -0005cee0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complex │ │ │ -0005d0d0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -0005d0e0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ -0005d120: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -0005d130: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
disable
- name: │ │ │ -0005d180: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ -0005d190: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ -0005d1a0: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ -0005d1b0: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ -0005d1c0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ -0005d1d0: 2d35 332d 4143 2d34 0a20 202d 204e 4953 -53-AC-4. - NIS │ │ │ -0005d1e0: 542d 3830 302d 3533 2d43 4d2d 3628 6129 T-800-53-CM-6(a) │ │ │ -0005d1f0: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -0005d200: 2d43 4d2d 3728 6129 0a20 202d 204e 4953 -CM-7(a). - NIS │ │ │ -0005d210: 542d 3830 302d 3533 2d43 4d2d 3728 6229 T-800-53-CM-7(b) │ │ │ -0005d220: 0a20 202d 2064 6973 6162 6c65 5f73 7472 . - disable_str │ │ │ -0005d230: 6174 6567 790a 2020 2d20 6c6f 775f 636f ategy. - low_co │ │ │ -0005d240: 6d70 6c65 7869 7479 0a20 202d 206c 6f77 mplexity. - low │ │ │ -0005d250: 5f64 6973 7275 7074 696f 6e0a 2020 2d20 _disruption. - │ │ │ -0005d260: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ -0005d270: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ -0005d280: 6564 6564 0a20 202d 2073 6572 7669 6365 eded. - service │ │ │ -0005d290: 5f72 6469 7363 5f64 6973 6162 6c65 640a _rdisc_disabled. │ │ │ -0005d2a0: 0a2d 206e 616d 653a 2044 6973 6162 6c65 .- name: Disable │ │ │ -0005d2b0: 204e 6574 776f 726b 2052 6f75 7465 7220 Network Router │ │ │ -0005d2c0: 4469 7363 6f76 6572 7920 4461 656d 6f6e Discovery Daemon │ │ │ -0005d2d0: 2028 7264 6973 6329 202d 2044 6973 6162 (rdisc) - Disab │ │ │ -0005d2e0: 6c65 2073 6572 7669 6365 2072 6469 7363 le service rdisc │ │ │ -0005d2f0: 0a20 2062 6c6f 636b 3a0a 0a20 202d 206e . block:.. - n │ │ │ -0005d300: 616d 653a 2044 6973 6162 6c65 204e 6574 ame: Disable Net │ │ │ -0005d310: 776f 726b 2052 6f75 7465 7220 4469 7363 work Router Disc │ │ │ -0005d320: 6f76 6572 7920 4461 656d 6f6e 2028 7264 overy Daemon (rd │ │ │ -0005d330: 6973 6329 202d 2043 6f6c 6c65 6374 2073 isc) - Collect s │ │ │ -0005d340: 7973 7465 6d64 2053 6572 7669 6365 730a ystemd Services. │ │ │ -0005d350: 2020 2020 2020 5072 6573 656e 7420 696e Present in │ │ │ -0005d360: 2074 6865 2053 7973 7465 6d0a 2020 2020 the System. │ │ │ -0005d370: 616e 7369 626c 652e 6275 696c 7469 6e2e ansible.builtin. │ │ │ -0005d380: 636f 6d6d 616e 643a 2073 7973 7465 6d63 command: systemc │ │ │ -0005d390: 746c 202d 7120 6c69 7374 2d75 6e69 742d tl -q list-unit- │ │ │ -0005d3a0: 6669 6c65 7320 2d2d 7479 7065 2073 6572 files --type ser │ │ │ -0005d3b0: 7669 6365 0a20 2020 2072 6567 6973 7465 vice. registe │ │ │ -0005d3c0: 723a 2073 6572 7669 6365 5f65 7869 7374 r: service_exist │ │ │ -0005d3d0: 730a 2020 2020 6368 616e 6765 645f 7768 s. changed_wh │ │ │ -0005d3e0: 656e 3a20 6661 6c73 650a 2020 2020 6661 en: false. fa │ │ │ -0005d3f0: 696c 6564 5f77 6865 6e3a 2073 6572 7669 iled_when: servi │ │ │ -0005d400: 6365 5f65 7869 7374 732e 7263 206e 6f74 ce_exists.rc not │ │ │ -0005d410: 2069 6e20 5b30 2c20 315d 0a20 2020 2063 in [0, 1]. c │ │ │ -0005d420: 6865 636b 5f6d 6f64 653a 2066 616c 7365 heck_mode: false │ │ │ -0005d430: 0a0a 2020 2d20 6e61 6d65 3a20 4469 7361 .. - name: Disa │ │ │ -0005d440: 626c 6520 4e65 7477 6f72 6b20 526f 7574 ble Network Rout │ │ │ -0005d450: 6572 2044 6973 636f 7665 7279 2044 6165 er Discovery Dae │ │ │ -0005d460: 6d6f 6e20 2872 6469 7363 2920 2d20 456e mon (rdisc) - En │ │ │ -0005d470: 7375 7265 2072 6469 7363 2e73 6572 7669 sure rdisc.servi │ │ │ -0005d480: 6365 2069 730a 2020 2020 2020 4d61 736b ce is. Mask │ │ │ -0005d490: 6564 0a20 2020 2061 6e73 6962 6c65 2e62 ed. ansible.b │ │ │ -0005d4a0: 7569 6c74 696e 2e73 7973 7465 6d64 3a0a uiltin.systemd:. │ │ │ -0005d4b0: 2020 2020 2020 6e61 6d65 3a20 7264 6973 name: rdis │ │ │ -0005d4c0: 632e 7365 7276 6963 650a 2020 2020 2020 c.service. │ │ │ -0005d4d0: 7374 6174 653a 2073 746f 7070 6564 0a20 state: stopped. │ │ │ -0005d4e0: 2020 2020 2065 6e61 626c 6564 3a20 6661 enabled: fa │ │ │ -0005d4f0: 6c73 650a 2020 2020 2020 6d61 736b 6564 lse. masked │ │ │ -0005d500: 3a20 7472 7565 0a20 2020 2077 6865 6e3a : true. when: │ │ │ -0005d510: 2073 6572 7669 6365 5f65 7869 7374 732e service_exists. │ │ │ -0005d520: 7374 646f 7574 5f6c 696e 6573 2069 7320 stdout_lines is │ │ │ -0005d530: 7365 6172 6368 2822 7264 6973 632e 7365 search("rdisc.se │ │ │ -0005d540: 7276 6963 6522 2c20 6d75 6c74 696c 696e rvice", multilin │ │ │ -0005d550: 653d 5472 7565 290a 0a20 202d 206e 616d e=True).. - nam │ │ │ -0005d560: 653a 2055 6e69 7420 536f 636b 6574 2045 e: Unit Socket E │ │ │ -0005d570: 7869 7374 7320 2d20 7264 6973 632e 736f xists - rdisc.so │ │ │ -0005d580: 636b 6574 0a20 2020 2061 6e73 6962 6c65 cket. ansible │ │ │ -0005d590: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64 .builtin.command │ │ │ -0005d5a0: 3a20 7379 7374 656d 6374 6c20 2d71 206c : systemctl -q l │ │ │ -0005d5b0: 6973 742d 756e 6974 2d66 696c 6573 2072 ist-unit-files r │ │ │ -0005d5c0: 6469 7363 2e73 6f63 6b65 740a 2020 2020 disc.socket. │ │ │ -0005d5d0: 7265 6769 7374 6572 3a20 736f 636b 6574 register: socket │ │ │ -0005d5e0: 5f66 696c 655f 6578 6973 7473 0a20 2020 _file_exists. │ │ │ -0005d5f0: 2063 6861 6e67 6564 5f77 6865 6e3a 2066 changed_when: f │ │ │ -0005d600: 616c 7365 0a20 2020 2066 6169 6c65 645f alse. failed_ │ │ │ -0005d610: 7768 656e 3a20 736f 636b 6574 5f66 696c when: socket_fil │ │ │ -0005d620: 655f 6578 6973 7473 2e72 6320 6e6f 7420 e_exists.rc not │ │ │ -0005d630: 696e 205b 302c 2031 5d0a 2020 2020 6368 in [0, 1]. ch │ │ │ -0005d640: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a eck_mode: false. │ │ │ -0005d650: 0a20 202d 206e 616d 653a 2044 6973 6162 . - name: Disab │ │ │ -0005d660: 6c65 204e 6574 776f 726b 2052 6f75 7465 le Network Route │ │ │ -0005d670: 7220 4469 7363 6f76 6572 7920 4461 656d r Discovery Daem │ │ │ -0005d680: 6f6e 2028 7264 6973 6329 202d 2044 6973 on (rdisc) - Dis │ │ │ -0005d690: 6162 6c65 2053 6f63 6b65 7420 7264 6973 able Socket rdis │ │ │ -0005d6a0: 630a 2020 2020 616e 7369 626c 652e 6275 c. ansible.bu │ │ │ -0005d6b0: 696c 7469 6e2e 7379 7374 656d 643a 0a20 iltin.systemd:. │ │ │ -0005d6c0: 2020 2020 206e 616d 653a 2072 6469 7363 name: rdisc │ │ │ -0005d6d0: 2e73 6f63 6b65 740a 2020 2020 2020 656e .socket. en │ │ │ -0005d6e0: 6162 6c65 643a 2066 616c 7365 0a20 2020 abled: false. │ │ │ -0005d6f0: 2020 2073 7461 7465 3a20 7374 6f70 7065 state: stoppe │ │ │ -0005d700: 640a 2020 2020 2020 6d61 736b 6564 3a20 d. masked: │ │ │ -0005d710: 7472 7565 0a20 2020 2077 6865 6e3a 2073 true. when: s │ │ │ -0005d720: 6f63 6b65 745f 6669 6c65 5f65 7869 7374 ocket_file_exist │ │ │ -0005d730: 732e 7374 646f 7574 5f6c 696e 6573 2069 s.stdout_lines i │ │ │ -0005d740: 7320 7365 6172 6368 2822 7264 6973 632e s search("rdisc. │ │ │ -0005d750: 736f 636b 6574 222c 206d 756c 7469 6c69 socket", multili │ │ │ -0005d760: 6e65 3d54 7275 6529 0a20 2074 6167 733a ne=True). tags: │ │ │ -0005d770: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -0005d780: 2d41 432d 340a 2020 2d20 4e49 5354 2d38 -AC-4. - NIST-8 │ │ │ -0005d790: 3030 2d35 332d 434d 2d36 2861 290a 2020 00-53-CM-6(a). │ │ │ -0005d7a0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -0005d7b0: 2d37 2861 290a 2020 2d20 4e49 5354 2d38 -7(a). - NIST-8 │ │ │ -0005d7c0: 3030 2d35 332d 434d 2d37 2862 290a 2020 00-53-CM-7(b). │ │ │ -0005d7d0: 2d20 6469 7361 626c 655f 7374 7261 7465 - disable_strate │ │ │ -0005d7e0: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c gy. - low_compl │ │ │ -0005d7f0: 6578 6974 790a 2020 2d20 6c6f 775f 6469 exity. - low_di │ │ │ -0005d800: 7372 7570 7469 6f6e 0a20 202d 206d 6564 sruption. - med │ │ │ -0005d810: 6975 6d5f 7365 7665 7269 7479 0a20 202d ium_severity. - │ │ │ -0005d820: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ -0005d830: 640a 2020 2d20 7365 7276 6963 655f 7264 d. - service_rd │ │ │ -0005d840: 6973 635f 6469 7361 626c 6564 0a20 202d isc_disabled. - │ │ │ -0005d850: 2073 7065 6369 616c 5f73 6572 7669 6365 special_service │ │ │ -0005d860: 5f62 6c6f 636b 0a20 2077 6865 6e3a 2027 _block. when: ' │ │ │ -0005d870: 226b 6572 6e65 6c22 2069 6e20 616e 7369 "kernel" in ansi │ │ │ -0005d880: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -0005d890: 6573 270a 3c2f 636f 6465 3e3c 2f70 7265 es'.
│ │ │ +0005ccc0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +0005cd30: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +0005cd50: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +0005cd80: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +0005cd10: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +0005cd20: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +0005cd60: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +0005cd70: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

- name: │ │ │ +0005cdc0: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ +0005cdd0: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ +0005cde0: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ +0005cdf0: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ +0005ce00: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ +0005ce10: 302d 3533 2d41 432d 340a 2020 2d20 4e49 0-53-AC-4. - NI │ │ │ +0005ce20: 5354 2d38 3030 2d35 332d 434d 2d36 2861 ST-800-53-CM-6(a │ │ │ +0005ce30: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ +0005ce40: 332d 434d 2d37 2861 290a 2020 2d20 4e49 3-CM-7(a). - NI │ │ │ +0005ce50: 5354 2d38 3030 2d35 332d 434d 2d37 2862 ST-800-53-CM-7(b │ │ │ +0005ce60: 290a 2020 2d20 6469 7361 626c 655f 7374 ). - disable_st │ │ │ +0005ce70: 7261 7465 6779 0a20 202d 206c 6f77 5f63 rategy. - low_c │ │ │ +0005ce80: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f omplexity. - lo │ │ │ +0005ce90: 775f 6469 7372 7570 7469 6f6e 0a20 202d w_disruption. - │ │ │ +0005cea0: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ +0005ceb0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ +0005cec0: 6565 6465 640a 2020 2d20 7365 7276 6963 eeded. - servic │ │ │ +0005ced0: 655f 7264 6973 635f 6469 7361 626c 6564 e_rdisc_disabled │ │ │ +0005cee0: 0a0a 2d20 6e61 6d65 3a20 4469 7361 626c ..- name: Disabl │ │ │ +0005cef0: 6520 4e65 7477 6f72 6b20 526f 7574 6572 e Network Router │ │ │ +0005cf00: 2044 6973 636f 7665 7279 2044 6165 6d6f Discovery Daemo │ │ │ +0005cf10: 6e20 2872 6469 7363 2920 2d20 4469 7361 n (rdisc) - Disa │ │ │ +0005cf20: 626c 6520 7365 7276 6963 6520 7264 6973 ble service rdis │ │ │ +0005cf30: 630a 2020 626c 6f63 6b3a 0a0a 2020 2d20 c. block:.. - │ │ │ +0005cf40: 6e61 6d65 3a20 4469 7361 626c 6520 4e65 name: Disable Ne │ │ │ +0005cf50: 7477 6f72 6b20 526f 7574 6572 2044 6973 twork Router Dis │ │ │ +0005cf60: 636f 7665 7279 2044 6165 6d6f 6e20 2872 covery Daemon (r │ │ │ +0005cf70: 6469 7363 2920 2d20 436f 6c6c 6563 7420 disc) - Collect │ │ │ +0005cf80: 7379 7374 656d 6420 5365 7276 6963 6573 systemd Services │ │ │ +0005cf90: 0a20 2020 2020 2050 7265 7365 6e74 2069 . Present i │ │ │ +0005cfa0: 6e20 7468 6520 5379 7374 656d 0a20 2020 n the System. │ │ │ +0005cfb0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e ansible.builtin │ │ │ +0005cfc0: 2e63 6f6d 6d61 6e64 3a20 7379 7374 656d .command: system │ │ │ +0005cfd0: 6374 6c20 2d71 206c 6973 742d 756e 6974 ctl -q list-unit │ │ │ +0005cfe0: 2d66 696c 6573 202d 2d74 7970 6520 7365 -files --type se │ │ │ +0005cff0: 7276 6963 650a 2020 2020 7265 6769 7374 rvice. regist │ │ │ +0005d000: 6572 3a20 7365 7276 6963 655f 6578 6973 er: service_exis │ │ │ +0005d010: 7473 0a20 2020 2063 6861 6e67 6564 5f77 ts. changed_w │ │ │ +0005d020: 6865 6e3a 2066 616c 7365 0a20 2020 2066 hen: false. f │ │ │ +0005d030: 6169 6c65 645f 7768 656e 3a20 7365 7276 ailed_when: serv │ │ │ +0005d040: 6963 655f 6578 6973 7473 2e72 6320 6e6f ice_exists.rc no │ │ │ +0005d050: 7420 696e 205b 302c 2031 5d0a 2020 2020 t in [0, 1]. │ │ │ +0005d060: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73 check_mode: fals │ │ │ +0005d070: 650a 0a20 202d 206e 616d 653a 2044 6973 e.. - name: Dis │ │ │ +0005d080: 6162 6c65 204e 6574 776f 726b 2052 6f75 able Network Rou │ │ │ +0005d090: 7465 7220 4469 7363 6f76 6572 7920 4461 ter Discovery Da │ │ │ +0005d0a0: 656d 6f6e 2028 7264 6973 6329 202d 2045 emon (rdisc) - E │ │ │ +0005d0b0: 6e73 7572 6520 7264 6973 632e 7365 7276 nsure rdisc.serv │ │ │ +0005d0c0: 6963 6520 6973 0a20 2020 2020 204d 6173 ice is. Mas │ │ │ +0005d0d0: 6b65 640a 2020 2020 616e 7369 626c 652e ked. ansible. │ │ │ +0005d0e0: 6275 696c 7469 6e2e 7379 7374 656d 643a builtin.systemd: │ │ │ +0005d0f0: 0a20 2020 2020 206e 616d 653a 2072 6469 . name: rdi │ │ │ +0005d100: 7363 2e73 6572 7669 6365 0a20 2020 2020 sc.service. │ │ │ +0005d110: 2073 7461 7465 3a20 7374 6f70 7065 640a state: stopped. │ │ │ +0005d120: 2020 2020 2020 656e 6162 6c65 643a 2066 enabled: f │ │ │ +0005d130: 616c 7365 0a20 2020 2020 206d 6173 6b65 alse. maske │ │ │ +0005d140: 643a 2074 7275 650a 2020 2020 7768 656e d: true. when │ │ │ +0005d150: 3a20 7365 7276 6963 655f 6578 6973 7473 : service_exists │ │ │ +0005d160: 2e73 7464 6f75 745f 6c69 6e65 7320 6973 .stdout_lines is │ │ │ +0005d170: 2073 6561 7263 6828 2272 6469 7363 2e73 search("rdisc.s │ │ │ +0005d180: 6572 7669 6365 222c 206d 756c 7469 6c69 ervice", multili │ │ │ +0005d190: 6e65 3d54 7275 6529 0a0a 2020 2d20 6e61 ne=True).. - na │ │ │ +0005d1a0: 6d65 3a20 556e 6974 2053 6f63 6b65 7420 me: Unit Socket │ │ │ +0005d1b0: 4578 6973 7473 202d 2072 6469 7363 2e73 Exists - rdisc.s │ │ │ +0005d1c0: 6f63 6b65 740a 2020 2020 616e 7369 626c ocket. ansibl │ │ │ +0005d1d0: 652e 6275 696c 7469 6e2e 636f 6d6d 616e e.builtin.comman │ │ │ +0005d1e0: 643a 2073 7973 7465 6d63 746c 202d 7120 d: systemctl -q │ │ │ +0005d1f0: 6c69 7374 2d75 6e69 742d 6669 6c65 7320 list-unit-files │ │ │ +0005d200: 7264 6973 632e 736f 636b 6574 0a20 2020 rdisc.socket. │ │ │ +0005d210: 2072 6567 6973 7465 723a 2073 6f63 6b65 register: socke │ │ │ +0005d220: 745f 6669 6c65 5f65 7869 7374 730a 2020 t_file_exists. │ │ │ +0005d230: 2020 6368 616e 6765 645f 7768 656e 3a20 changed_when: │ │ │ +0005d240: 6661 6c73 650a 2020 2020 6661 696c 6564 false. failed │ │ │ +0005d250: 5f77 6865 6e3a 2073 6f63 6b65 745f 6669 _when: socket_fi │ │ │ +0005d260: 6c65 5f65 7869 7374 732e 7263 206e 6f74 le_exists.rc not │ │ │ +0005d270: 2069 6e20 5b30 2c20 315d 0a20 2020 2063 in [0, 1]. c │ │ │ +0005d280: 6865 636b 5f6d 6f64 653a 2066 616c 7365 heck_mode: false │ │ │ +0005d290: 0a0a 2020 2d20 6e61 6d65 3a20 4469 7361 .. - name: Disa │ │ │ +0005d2a0: 626c 6520 4e65 7477 6f72 6b20 526f 7574 ble Network Rout │ │ │ +0005d2b0: 6572 2044 6973 636f 7665 7279 2044 6165 er Discovery Dae │ │ │ +0005d2c0: 6d6f 6e20 2872 6469 7363 2920 2d20 4469 mon (rdisc) - Di │ │ │ +0005d2d0: 7361 626c 6520 536f 636b 6574 2072 6469 sable Socket rdi │ │ │ +0005d2e0: 7363 0a20 2020 2061 6e73 6962 6c65 2e62 sc. ansible.b │ │ │ +0005d2f0: 7569 6c74 696e 2e73 7973 7465 6d64 3a0a uiltin.systemd:. │ │ │ +0005d300: 2020 2020 2020 6e61 6d65 3a20 7264 6973 name: rdis │ │ │ +0005d310: 632e 736f 636b 6574 0a20 2020 2020 2065 c.socket. e │ │ │ +0005d320: 6e61 626c 6564 3a20 6661 6c73 650a 2020 nabled: false. │ │ │ +0005d330: 2020 2020 7374 6174 653a 2073 746f 7070 state: stopp │ │ │ +0005d340: 6564 0a20 2020 2020 206d 6173 6b65 643a ed. masked: │ │ │ +0005d350: 2074 7275 650a 2020 2020 7768 656e 3a20 true. when: │ │ │ +0005d360: 736f 636b 6574 5f66 696c 655f 6578 6973 socket_file_exis │ │ │ +0005d370: 7473 2e73 7464 6f75 745f 6c69 6e65 7320 ts.stdout_lines │ │ │ +0005d380: 6973 2073 6561 7263 6828 2272 6469 7363 is search("rdisc │ │ │ +0005d390: 2e73 6f63 6b65 7422 2c20 6d75 6c74 696c .socket", multil │ │ │ +0005d3a0: 696e 653d 5472 7565 290a 2020 7461 6773 ine=True). tags │ │ │ +0005d3b0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35 :. - NIST-800-5 │ │ │ +0005d3c0: 332d 4143 2d34 0a20 202d 204e 4953 542d 3-AC-4. - NIST- │ │ │ +0005d3d0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20 800-53-CM-6(a). │ │ │ +0005d3e0: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ +0005d3f0: 4d2d 3728 6129 0a20 202d 204e 4953 542d M-7(a). - NIST- │ │ │ +0005d400: 3830 302d 3533 2d43 4d2d 3728 6229 0a20 800-53-CM-7(b). │ │ │ +0005d410: 202d 2064 6973 6162 6c65 5f73 7472 6174 - disable_strat │ │ │ +0005d420: 6567 790a 2020 2d20 6c6f 775f 636f 6d70 egy. - low_comp │ │ │ +0005d430: 6c65 7869 7479 0a20 202d 206c 6f77 5f64 lexity. - low_d │ │ │ +0005d440: 6973 7275 7074 696f 6e0a 2020 2d20 6d65 isruption. - me │ │ │ +0005d450: 6469 756d 5f73 6576 6572 6974 790a 2020 dium_severity. │ │ │ +0005d460: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ +0005d470: 6564 0a20 202d 2073 6572 7669 6365 5f72 ed. - service_r │ │ │ +0005d480: 6469 7363 5f64 6973 6162 6c65 640a 2020 disc_disabled. │ │ │ +0005d490: 2d20 7370 6563 6961 6c5f 7365 7276 6963 - special_servic │ │ │ +0005d4a0: 655f 626c 6f63 6b0a 2020 7768 656e 3a20 e_block. when: │ │ │ +0005d4b0: 2722 6b65 726e 656c 2220 696e 2061 6e73 '"kernel" in ans │ │ │ +0005d4c0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ +0005d4d0: 6765 7327 0a3c 2f63 6f64 653e 3c2f 7072 ges'.

Remediation │ │ │ +0005d590: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ +0005d5a0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
< │ │ │ +0005d620: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +0005d640: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +0005d690: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
include disable
│ │ │ +0005d6e0: 5f72 6469 7363 0a0a 636c 6173 7320 6469  _rdisc..class di
│ │ │ +0005d6f0: 7361 626c 655f 7264 6973 6320 7b0a 2020  sable_rdisc {.  
│ │ │ +0005d700: 7365 7276 6963 6520 7b27 7264 6973 6327  service {'rdisc'
│ │ │ +0005d710: 3a0a 2020 2020 656e 6162 6c65 203d 2667  :.    enable =&g
│ │ │ +0005d720: 743b 2066 616c 7365 2c0a 2020 2020 656e  t; false,.    en
│ │ │ +0005d730: 7375 7265 203d 2667 743b 2027 7374 6f70  sure => 'stop
│ │ │ +0005d740: 7065 6427 2c0a 2020 7d0a 7d0a 3c2f 636f  ped',.  }.}.
< │ │ │ +0005d760: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +0005d770: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +0005d780: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +0005d790: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +0005d7a0: 6435 3722 2074 6162 696e 6465 783d 2230 d57" tabindex="0 │ │ │ +0005d7b0: 2220 726f 6c65 3d22 6275 7474 6f6e 2220 " role="button" │ │ │ +0005d7c0: 6172 6961 2d65 7870 616e 6465 643d 2266 aria-expanded="f │ │ │ +0005d7d0: 616c 7365 2220 7469 746c 653d 2241 6374 alse" title="Act │ │ │ +0005d7e0: 6976 6174 6520 746f 2072 6576 6561 6c22 ivate to reveal" │ │ │ +0005d7f0: 2068 7265 663d 2223 2122 3e52 656d 6564 href="#!">Remed │ │ │ +0005d800: 6961 7469 6f6e 204f 5342 7569 6c64 2042 iation OSBuild B │ │ │ +0005d810: 6c75 6570 7269 6e74 2073 6e69 7070 6574 lueprint snippet │ │ │ +0005d820: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
│ │ │ +0005d860: 3c63 6f64 653e 0a5b 6375 7374 6f6d 697a  .[customiz
│ │ │ +0005d870: 6174 696f 6e73 2e73 6572 7669 6365 735d  ations.services]
│ │ │ +0005d880: 0a6d 6173 6b65 6420 3d20 5b22 7264 6973  .masked = ["rdis
│ │ │ +0005d890: 6322 5d0a 3c2f 636f 6465 3e3c 2f70 7265  c"].
< │ │ │ 0005d8c0: 2f74 6162 6c65 3e3c 2f74 643e 3c2f 7472 /table> │ │ │ -0005eba0: 5265 6d65 6469 6174 696f 6e20 4f53 4275 Remediation OSBu │ │ │ -0005ebb0: 696c 6420 426c 7565 7072 696e 7420 736e ild Blueprint sn │ │ │ -0005ebc0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -0005ec00: 3c70 7265 3e3c 636f 6465 3e0a 5b63 7573
.[cus
│ │ │ -0005ec10: 746f 6d69 7a61 7469 6f6e 732e 7365 7276  tomizations.serv
│ │ │ -0005ec20: 6963 6573 5d0a 6d61 736b 6564 203d 205b  ices].masked = [
│ │ │ -0005ec30: 2261 7464 225d 0a3c 2f63 6f64 653e 3c2f  "atd"].
Remediatio │ │ │ -0005ecf0: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ -0005ed00: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
low< │ │ │ -0005edd0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ -0005ee20: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
low
Disr │ │ │ +0005d650: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +0005d660: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +0005d6a0: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +0005d6b0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexity: │ │ │ -0005ed90: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ -0005edb0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:false
St │ │ │ -0005ee00: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -0005ee10: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable
include disab
│ │ │ -0005ee40: 6c65 5f61 7464 0a0a 636c 6173 7320 6469  le_atd..class di
│ │ │ -0005ee50: 7361 626c 655f 6174 6420 7b0a 2020 7365  sable_atd {.  se
│ │ │ -0005ee60: 7276 6963 6520 7b27 6174 6427 3a0a 2020  rvice {'atd':.  
│ │ │ -0005ee70: 2020 656e 6162 6c65 203d 2667 743b 2066    enable => f
│ │ │ -0005ee80: 616c 7365 2c0a 2020 2020 656e 7375 7265  alse,.    ensure
│ │ │ -0005ee90: 203d 2667 743b 2027 7374 6f70 7065 6427   => 'stopped'
│ │ │ -0005eea0: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ -0005eeb0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediati │ │ │ -0005ef60: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070 on Ansible snipp │ │ │ -0005ef70: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
< │ │ │ -0005eff0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -0005f000: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -0005f020: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -0005f030: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -0005f050: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -0005f070: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ -0005f0a0: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -0005f0b0: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -0005f0c0: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -0005f0d0: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -0005f0e0: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -0005f0f0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -0005f100: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ -0005f110: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ -0005f120: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -0005f130: 332d 434d 2d37 2862 290a 2020 2d20 6469  3-CM-7(b).  - di
│ │ │ -0005f140: 7361 626c 655f 7374 7261 7465 6779 0a20  sable_strategy. 
│ │ │ -0005f150: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -0005f160: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -0005f170: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ -0005f180: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ -0005f190: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ -0005f1a0: 2d20 7365 7276 6963 655f 6174 645f 6469  - service_atd_di
│ │ │ -0005f1b0: 7361 626c 6564 0a0a 2d20 6e61 6d65 3a20  sabled..- name: 
│ │ │ -0005f1c0: 4469 7361 626c 6520 4174 2053 6572 7669  Disable At Servi
│ │ │ -0005f1d0: 6365 2028 6174 6429 202d 2044 6973 6162  ce (atd) - Disab
│ │ │ -0005f1e0: 6c65 2073 6572 7669 6365 2061 7464 0a20  le service atd. 
│ │ │ -0005f1f0: 2062 6c6f 636b 3a0a 0a20 202d 206e 616d   block:..  - nam
│ │ │ -0005f200: 653a 2044 6973 6162 6c65 2041 7420 5365  e: Disable At Se
│ │ │ -0005f210: 7276 6963 6520 2861 7464 2920 2d20 436f  rvice (atd) - Co
│ │ │ -0005f220: 6c6c 6563 7420 7379 7374 656d 6420 5365  llect systemd Se
│ │ │ -0005f230: 7276 6963 6573 2050 7265 7365 6e74 2069  rvices Present i
│ │ │ -0005f240: 6e20 7468 6520 5379 7374 656d 0a20 2020  n the System.   
│ │ │ -0005f250: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -0005f260: 2e63 6f6d 6d61 6e64 3a20 7379 7374 656d  .command: system
│ │ │ -0005f270: 6374 6c20 2d71 206c 6973 742d 756e 6974  ctl -q list-unit
│ │ │ -0005f280: 2d66 696c 6573 202d 2d74 7970 6520 7365  -files --type se
│ │ │ -0005f290: 7276 6963 650a 2020 2020 7265 6769 7374  rvice.    regist
│ │ │ -0005f2a0: 6572 3a20 7365 7276 6963 655f 6578 6973  er: service_exis
│ │ │ -0005f2b0: 7473 0a20 2020 2063 6861 6e67 6564 5f77  ts.    changed_w
│ │ │ -0005f2c0: 6865 6e3a 2066 616c 7365 0a20 2020 2066  hen: false.    f
│ │ │ -0005f2d0: 6169 6c65 645f 7768 656e 3a20 7365 7276  ailed_when: serv
│ │ │ -0005f2e0: 6963 655f 6578 6973 7473 2e72 6320 6e6f  ice_exists.rc no
│ │ │ -0005f2f0: 7420 696e 205b 302c 2031 5d0a 2020 2020  t in [0, 1].    
│ │ │ -0005f300: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73  check_mode: fals
│ │ │ -0005f310: 650a 0a20 202d 206e 616d 653a 2044 6973  e..  - name: Dis
│ │ │ -0005f320: 6162 6c65 2041 7420 5365 7276 6963 6520  able At Service 
│ │ │ -0005f330: 2861 7464 2920 2d20 456e 7375 7265 2061  (atd) - Ensure a
│ │ │ -0005f340: 7464 2e73 6572 7669 6365 2069 7320 4d61  td.service is Ma
│ │ │ -0005f350: 736b 6564 0a20 2020 2061 6e73 6962 6c65  sked.    ansible
│ │ │ -0005f360: 2e62 7569 6c74 696e 2e73 7973 7465 6d64  .builtin.systemd
│ │ │ -0005f370: 3a0a 2020 2020 2020 6e61 6d65 3a20 6174  :.      name: at
│ │ │ -0005f380: 642e 7365 7276 6963 650a 2020 2020 2020  d.service.      
│ │ │ -0005f390: 7374 6174 653a 2073 746f 7070 6564 0a20  state: stopped. 
│ │ │ -0005f3a0: 2020 2020 2065 6e61 626c 6564 3a20 6661       enabled: fa
│ │ │ -0005f3b0: 6c73 650a 2020 2020 2020 6d61 736b 6564  lse.      masked
│ │ │ -0005f3c0: 3a20 7472 7565 0a20 2020 2077 6865 6e3a  : true.    when:
│ │ │ -0005f3d0: 2073 6572 7669 6365 5f65 7869 7374 732e   service_exists.
│ │ │ -0005f3e0: 7374 646f 7574 5f6c 696e 6573 2069 7320  stdout_lines is 
│ │ │ -0005f3f0: 7365 6172 6368 2822 6174 642e 7365 7276  search("atd.serv
│ │ │ -0005f400: 6963 6522 2c20 6d75 6c74 696c 696e 653d  ice", multiline=
│ │ │ -0005f410: 5472 7565 290a 0a20 202d 206e 616d 653a  True)..  - name:
│ │ │ -0005f420: 2055 6e69 7420 536f 636b 6574 2045 7869   Unit Socket Exi
│ │ │ -0005f430: 7374 7320 2d20 6174 642e 736f 636b 6574  sts - atd.socket
│ │ │ -0005f440: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ -0005f450: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 7379  ltin.command: sy
│ │ │ -0005f460: 7374 656d 6374 6c20 2d71 206c 6973 742d  stemctl -q list-
│ │ │ -0005f470: 756e 6974 2d66 696c 6573 2061 7464 2e73  unit-files atd.s
│ │ │ -0005f480: 6f63 6b65 740a 2020 2020 7265 6769 7374  ocket.    regist
│ │ │ -0005f490: 6572 3a20 736f 636b 6574 5f66 696c 655f  er: socket_file_
│ │ │ -0005f4a0: 6578 6973 7473 0a20 2020 2063 6861 6e67  exists.    chang
│ │ │ -0005f4b0: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ -0005f4c0: 2020 2066 6169 6c65 645f 7768 656e 3a20     failed_when: 
│ │ │ -0005f4d0: 736f 636b 6574 5f66 696c 655f 6578 6973  socket_file_exis
│ │ │ -0005f4e0: 7473 2e72 6320 6e6f 7420 696e 205b 302c  ts.rc not in [0,
│ │ │ -0005f4f0: 2031 5d0a 2020 2020 6368 6563 6b5f 6d6f   1].    check_mo
│ │ │ -0005f500: 6465 3a20 6661 6c73 650a 0a20 202d 206e  de: false..  - n
│ │ │ -0005f510: 616d 653a 2044 6973 6162 6c65 2041 7420  ame: Disable At 
│ │ │ -0005f520: 5365 7276 6963 6520 2861 7464 2920 2d20  Service (atd) - 
│ │ │ -0005f530: 4469 7361 626c 6520 536f 636b 6574 2061  Disable Socket a
│ │ │ -0005f540: 7464 0a20 2020 2061 6e73 6962 6c65 2e62  td.    ansible.b
│ │ │ -0005f550: 7569 6c74 696e 2e73 7973 7465 6d64 3a0a  uiltin.systemd:.
│ │ │ -0005f560: 2020 2020 2020 6e61 6d65 3a20 6174 642e        name: atd.
│ │ │ -0005f570: 736f 636b 6574 0a20 2020 2020 2065 6e61  socket.      ena
│ │ │ -0005f580: 626c 6564 3a20 6661 6c73 650a 2020 2020  bled: false.    
│ │ │ -0005f590: 2020 7374 6174 653a 2073 746f 7070 6564    state: stopped
│ │ │ -0005f5a0: 0a20 2020 2020 206d 6173 6b65 643a 2074  .      masked: t
│ │ │ -0005f5b0: 7275 650a 2020 2020 7768 656e 3a20 736f  rue.    when: so
│ │ │ -0005f5c0: 636b 6574 5f66 696c 655f 6578 6973 7473  cket_file_exists
│ │ │ -0005f5d0: 2e73 7464 6f75 745f 6c69 6e65 7320 6973  .stdout_lines is
│ │ │ -0005f5e0: 2073 6561 7263 6828 2261 7464 2e73 6f63   search("atd.soc
│ │ │ -0005f5f0: 6b65 7422 2c20 6d75 6c74 696c 696e 653d  ket", multiline=
│ │ │ -0005f600: 5472 7565 290a 2020 7461 6773 3a0a 2020  True).  tags:.  
│ │ │ -0005f610: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -0005f620: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -0005f630: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ -0005f640: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -0005f650: 2d37 2862 290a 2020 2d20 6469 7361 626c  -7(b).  - disabl
│ │ │ -0005f660: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ -0005f670: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -0005f680: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -0005f690: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -0005f6a0: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -0005f6b0: 6f74 5f6e 6565 6465 640a 2020 2d20 7365  ot_needed.  - se
│ │ │ -0005f6c0: 7276 6963 655f 6174 645f 6469 7361 626c  rvice_atd_disabl
│ │ │ -0005f6d0: 6564 0a20 202d 2073 7065 6369 616c 5f73  ed.  - special_s
│ │ │ -0005f6e0: 6572 7669 6365 5f62 6c6f 636b 0a20 2077  ervice_block.  w
│ │ │ -0005f6f0: 6865 6e3a 2027 226b 6572 6e65 6c22 2069  hen: '"kernel" i
│ │ │ -0005f700: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -0005f710: 7061 636b 6167 6573 270a 3c2f 636f 6465  packages'.
│ │ │ +0005ec50: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ +0005ecf0: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +0005ed00: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +0005ed10: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ +0005ed20: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ +0005ed30: 746f 0a20 2074 6167 733a 0a20 202d 204e  to.  tags:.  - N
│ │ │ +0005ed40: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +0005ed50: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +0005ed60: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ +0005ed70: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +0005ed80: 6229 0a20 202d 2064 6973 6162 6c65 5f73  b).  - disable_s
│ │ │ +0005ed90: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ +0005eda0: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +0005edb0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +0005edc0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +0005edd0: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +0005ede0: 6e65 6564 6564 0a20 202d 2073 6572 7669  needed.  - servi
│ │ │ +0005edf0: 6365 5f61 7464 5f64 6973 6162 6c65 640a  ce_atd_disabled.
│ │ │ +0005ee00: 0a2d 206e 616d 653a 2044 6973 6162 6c65  .- name: Disable
│ │ │ +0005ee10: 2041 7420 5365 7276 6963 6520 2861 7464   At Service (atd
│ │ │ +0005ee20: 2920 2d20 4469 7361 626c 6520 7365 7276  ) - Disable serv
│ │ │ +0005ee30: 6963 6520 6174 640a 2020 626c 6f63 6b3a  ice atd.  block:
│ │ │ +0005ee40: 0a0a 2020 2d20 6e61 6d65 3a20 4469 7361  ..  - name: Disa
│ │ │ +0005ee50: 626c 6520 4174 2053 6572 7669 6365 2028  ble At Service (
│ │ │ +0005ee60: 6174 6429 202d 2043 6f6c 6c65 6374 2073  atd) - Collect s
│ │ │ +0005ee70: 7973 7465 6d64 2053 6572 7669 6365 7320  ystemd Services 
│ │ │ +0005ee80: 5072 6573 656e 7420 696e 2074 6865 2053  Present in the S
│ │ │ +0005ee90: 7973 7465 6d0a 2020 2020 616e 7369 626c  ystem.    ansibl
│ │ │ +0005eea0: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ +0005eeb0: 643a 2073 7973 7465 6d63 746c 202d 7120  d: systemctl -q 
│ │ │ +0005eec0: 6c69 7374 2d75 6e69 742d 6669 6c65 7320  list-unit-files 
│ │ │ +0005eed0: 2d2d 7479 7065 2073 6572 7669 6365 0a20  --type service. 
│ │ │ +0005eee0: 2020 2072 6567 6973 7465 723a 2073 6572     register: ser
│ │ │ +0005eef0: 7669 6365 5f65 7869 7374 730a 2020 2020  vice_exists.    
│ │ │ +0005ef00: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ +0005ef10: 6c73 650a 2020 2020 6661 696c 6564 5f77  lse.    failed_w
│ │ │ +0005ef20: 6865 6e3a 2073 6572 7669 6365 5f65 7869  hen: service_exi
│ │ │ +0005ef30: 7374 732e 7263 206e 6f74 2069 6e20 5b30  sts.rc not in [0
│ │ │ +0005ef40: 2c20 315d 0a20 2020 2063 6865 636b 5f6d  , 1].    check_m
│ │ │ +0005ef50: 6f64 653a 2066 616c 7365 0a0a 2020 2d20  ode: false..  - 
│ │ │ +0005ef60: 6e61 6d65 3a20 4469 7361 626c 6520 4174  name: Disable At
│ │ │ +0005ef70: 2053 6572 7669 6365 2028 6174 6429 202d   Service (atd) -
│ │ │ +0005ef80: 2045 6e73 7572 6520 6174 642e 7365 7276   Ensure atd.serv
│ │ │ +0005ef90: 6963 6520 6973 204d 6173 6b65 640a 2020  ice is Masked.  
│ │ │ +0005efa0: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +0005efb0: 6e2e 7379 7374 656d 643a 0a20 2020 2020  n.systemd:.     
│ │ │ +0005efc0: 206e 616d 653a 2061 7464 2e73 6572 7669   name: atd.servi
│ │ │ +0005efd0: 6365 0a20 2020 2020 2073 7461 7465 3a20  ce.      state: 
│ │ │ +0005efe0: 7374 6f70 7065 640a 2020 2020 2020 656e  stopped.      en
│ │ │ +0005eff0: 6162 6c65 643a 2066 616c 7365 0a20 2020  abled: false.   
│ │ │ +0005f000: 2020 206d 6173 6b65 643a 2074 7275 650a     masked: true.
│ │ │ +0005f010: 2020 2020 7768 656e 3a20 7365 7276 6963      when: servic
│ │ │ +0005f020: 655f 6578 6973 7473 2e73 7464 6f75 745f  e_exists.stdout_
│ │ │ +0005f030: 6c69 6e65 7320 6973 2073 6561 7263 6828  lines is search(
│ │ │ +0005f040: 2261 7464 2e73 6572 7669 6365 222c 206d  "atd.service", m
│ │ │ +0005f050: 756c 7469 6c69 6e65 3d54 7275 6529 0a0a  ultiline=True)..
│ │ │ +0005f060: 2020 2d20 6e61 6d65 3a20 556e 6974 2053    - name: Unit S
│ │ │ +0005f070: 6f63 6b65 7420 4578 6973 7473 202d 2061  ocket Exists - a
│ │ │ +0005f080: 7464 2e73 6f63 6b65 740a 2020 2020 616e  td.socket.    an
│ │ │ +0005f090: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ +0005f0a0: 6d6d 616e 643a 2073 7973 7465 6d63 746c  mmand: systemctl
│ │ │ +0005f0b0: 202d 7120 6c69 7374 2d75 6e69 742d 6669   -q list-unit-fi
│ │ │ +0005f0c0: 6c65 7320 6174 642e 736f 636b 6574 0a20  les atd.socket. 
│ │ │ +0005f0d0: 2020 2072 6567 6973 7465 723a 2073 6f63     register: soc
│ │ │ +0005f0e0: 6b65 745f 6669 6c65 5f65 7869 7374 730a  ket_file_exists.
│ │ │ +0005f0f0: 2020 2020 6368 616e 6765 645f 7768 656e      changed_when
│ │ │ +0005f100: 3a20 6661 6c73 650a 2020 2020 6661 696c  : false.    fail
│ │ │ +0005f110: 6564 5f77 6865 6e3a 2073 6f63 6b65 745f  ed_when: socket_
│ │ │ +0005f120: 6669 6c65 5f65 7869 7374 732e 7263 206e  file_exists.rc n
│ │ │ +0005f130: 6f74 2069 6e20 5b30 2c20 315d 0a20 2020  ot in [0, 1].   
│ │ │ +0005f140: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ +0005f150: 7365 0a0a 2020 2d20 6e61 6d65 3a20 4469  se..  - name: Di
│ │ │ +0005f160: 7361 626c 6520 4174 2053 6572 7669 6365  sable At Service
│ │ │ +0005f170: 2028 6174 6429 202d 2044 6973 6162 6c65   (atd) - Disable
│ │ │ +0005f180: 2053 6f63 6b65 7420 6174 640a 2020 2020   Socket atd.    
│ │ │ +0005f190: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +0005f1a0: 7379 7374 656d 643a 0a20 2020 2020 206e  systemd:.      n
│ │ │ +0005f1b0: 616d 653a 2061 7464 2e73 6f63 6b65 740a  ame: atd.socket.
│ │ │ +0005f1c0: 2020 2020 2020 656e 6162 6c65 643a 2066        enabled: f
│ │ │ +0005f1d0: 616c 7365 0a20 2020 2020 2073 7461 7465  alse.      state
│ │ │ +0005f1e0: 3a20 7374 6f70 7065 640a 2020 2020 2020  : stopped.      
│ │ │ +0005f1f0: 6d61 736b 6564 3a20 7472 7565 0a20 2020  masked: true.   
│ │ │ +0005f200: 2077 6865 6e3a 2073 6f63 6b65 745f 6669   when: socket_fi
│ │ │ +0005f210: 6c65 5f65 7869 7374 732e 7374 646f 7574  le_exists.stdout
│ │ │ +0005f220: 5f6c 696e 6573 2069 7320 7365 6172 6368  _lines is search
│ │ │ +0005f230: 2822 6174 642e 736f 636b 6574 222c 206d  ("atd.socket", m
│ │ │ +0005f240: 756c 7469 6c69 6e65 3d54 7275 6529 0a20  ultiline=True). 
│ │ │ +0005f250: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +0005f260: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +0005f270: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +0005f280: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +0005f290: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +0005f2a0: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ +0005f2b0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +0005f2c0: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +0005f2d0: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +0005f2e0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +0005f2f0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +0005f300: 6564 0a20 202d 2073 6572 7669 6365 5f61  ed.  - service_a
│ │ │ +0005f310: 7464 5f64 6973 6162 6c65 640a 2020 2d20  td_disabled.  - 
│ │ │ +0005f320: 7370 6563 6961 6c5f 7365 7276 6963 655f  special_service_
│ │ │ +0005f330: 626c 6f63 6b0a 2020 7768 656e 3a20 2722  block.  when: '"
│ │ │ +0005f340: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +0005f350: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +0005f360: 7327 0a3c 2f63 6f64 653e 3c2f 7072 653e  s'.
│ │ │ +0005f370: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation Pu │ │ │ +0005f420: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ +0005f430: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
│ │ │ +0005ec40: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +0005ec70: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +0005ec80: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +0005ecc0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +0005ecd0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ +0005f500: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +0005f510: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
i
│ │ │ +0005f560: 6e63 6c75 6465 2064 6973 6162 6c65 5f61  nclude disable_a
│ │ │ +0005f570: 7464 0a0a 636c 6173 7320 6469 7361 626c  td..class disabl
│ │ │ +0005f580: 655f 6174 6420 7b0a 2020 7365 7276 6963  e_atd {.  servic
│ │ │ +0005f590: 6520 7b27 6174 6427 3a0a 2020 2020 656e  e {'atd':.    en
│ │ │ +0005f5a0: 6162 6c65 203d 2667 743b 2066 616c 7365  able => false
│ │ │ +0005f5b0: 2c0a 2020 2020 656e 7375 7265 203d 2667  ,.    ensure =&g
│ │ │ +0005f5c0: 743b 2027 7374 6f70 7065 6427 2c0a 2020  t; 'stopped',.  
│ │ │ +0005f5d0: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Remediation O │ │ │ +0005f690: 5342 7569 6c64 2042 6c75 6570 7269 6e74 SBuild Blueprint │ │ │ +0005f6a0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +0005f6b0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
.[
│ │ │ +0005f6f0: 6375 7374 6f6d 697a 6174 696f 6e73 2e73  customizations.s
│ │ │ +0005f700: 6572 7669 6365 735d 0a6d 6173 6b65 6420  ervices].masked 
│ │ │ +0005f710: 3d20 5b22 6174 6422 5d0a 3c2f 636f 6465  = ["atd"].
Complexity:low
Disrup │ │ │ +0005f4e0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +0005f4f0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +0005f530: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +0005f540: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Remediati │ │ │ -00060920: 6f6e 2050 7570 7065 7420 736e 6970 7065 on Puppet snippe │ │ │ -00060930: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
Complexity │ │ │ -000609c0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -000609e0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -000609f0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00060a00: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -00060a10: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -00060a30: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -00060a60: 636f 6465 3e0a 696e 636c 7564 6520 7265  code>.include re
│ │ │ -00060a70: 6d6f 7665 5f6f 7065 6e6c 6461 702d 636c  move_openldap-cl
│ │ │ -00060a80: 6965 6e74 730a 0a63 6c61 7373 2072 656d  ients..class rem
│ │ │ -00060a90: 6f76 655f 6f70 656e 6c64 6170 2d63 6c69  ove_openldap-cli
│ │ │ -00060aa0: 656e 7473 207b 0a20 2070 6163 6b61 6765  ents {.  package
│ │ │ -00060ab0: 207b 2027 6f70 656e 6c64 6170 2d63 6c69   { 'openldap-cli
│ │ │ -00060ac0: 656e 7473 273a 0a20 2020 2065 6e73 7572  ents':.    ensur
│ │ │ -00060ad0: 6520 3d26 6774 3b20 2770 7572 6765 6427  e => 'purged'
│ │ │ -00060ae0: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ -00060af0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediati │ │ │ -00060ba0: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070 on Ansible snipp │ │ │ -00060bb0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
< │ │ │ -00060c30: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -00060c40: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -00060c60: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -00060c70: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -00060c90: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -00060cb0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ -00060ce0: 3c63 6f64 653e 2d20 6e61 6d65 3a20 2745  - name: 'E
│ │ │ -00060cf0: 6e73 7572 6520 4c44 4150 2063 6c69 656e  nsure LDAP clien
│ │ │ -00060d00: 7420 6973 206e 6f74 2069 6e73 7461 6c6c  t is not install
│ │ │ -00060d10: 6564 3a20 456e 7375 7265 206f 7065 6e6c  ed: Ensure openl
│ │ │ -00060d20: 6461 702d 636c 6965 6e74 7320 6973 2072  dap-clients is r
│ │ │ -00060d30: 656d 6f76 6564 270a 2020 616e 7369 626c  emoved'.  ansibl
│ │ │ -00060d40: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ -00060d50: 653a 0a20 2020 206e 616d 653a 206f 7065  e:.    name: ope
│ │ │ -00060d60: 6e6c 6461 702d 636c 6965 6e74 730a 2020  nldap-clients.  
│ │ │ -00060d70: 2020 7374 6174 653a 2061 6273 656e 740a    state: absent.
│ │ │ -00060d80: 2020 7461 6773 3a0a 2020 2d20 6469 7361    tags:.  - disa
│ │ │ -00060d90: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ -00060da0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -00060db0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -00060dc0: 6f6e 0a20 202d 206c 6f77 5f73 6576 6572  on.  - low_sever
│ │ │ -00060dd0: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ -00060de0: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ -00060df0: 6b61 6765 5f6f 7065 6e6c 6461 702d 636c  kage_openldap-cl
│ │ │ -00060e00: 6965 6e74 735f 7265 6d6f 7665 640a 3c2f  ients_removed.
< │ │ │ +000609b0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +000609c0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +000609e0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +000609f0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +00060a10: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +00060a30: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ +00060a60: 3c63 6f64 653e 2d20 6e61 6d65 3a20 2745  - name: 'E
│ │ │ +00060a70: 6e73 7572 6520 4c44 4150 2063 6c69 656e  nsure LDAP clien
│ │ │ +00060a80: 7420 6973 206e 6f74 2069 6e73 7461 6c6c  t is not install
│ │ │ +00060a90: 6564 3a20 456e 7375 7265 206f 7065 6e6c  ed: Ensure openl
│ │ │ +00060aa0: 6461 702d 636c 6965 6e74 7320 6973 2072  dap-clients is r
│ │ │ +00060ab0: 656d 6f76 6564 270a 2020 616e 7369 626c  emoved'.  ansibl
│ │ │ +00060ac0: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ +00060ad0: 653a 0a20 2020 206e 616d 653a 206f 7065  e:.    name: ope
│ │ │ +00060ae0: 6e6c 6461 702d 636c 6965 6e74 730a 2020  nldap-clients.  
│ │ │ +00060af0: 2020 7374 6174 653a 2061 6273 656e 740a    state: absent.
│ │ │ +00060b00: 2020 7461 6773 3a0a 2020 2d20 6469 7361    tags:.  - disa
│ │ │ +00060b10: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ +00060b20: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +00060b30: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +00060b40: 6f6e 0a20 202d 206c 6f77 5f73 6576 6572  on.  - low_sever
│ │ │ +00060b50: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ +00060b60: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ +00060b70: 6b61 6765 5f6f 7065 6e6c 6461 702d 636c  kage_openldap-cl
│ │ │ +00060b80: 6965 6e74 735f 7265 6d6f 7665 640a 3c2f  ients_removed.
Rem │ │ │ +00060c40: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ +00060c50: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +00060c60: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Comp │ │ │ +00060ce0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +00060cf0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +00060d10: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +00060d30: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +00060d40: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +00060d80: 3c70 7265 3e3c 636f 6465 3e0a 696e 636c
.incl
│ │ │ +00060d90: 7564 6520 7265 6d6f 7665 5f6f 7065 6e6c  ude remove_openl
│ │ │ +00060da0: 6461 702d 636c 6965 6e74 730a 0a63 6c61  dap-clients..cla
│ │ │ +00060db0: 7373 2072 656d 6f76 655f 6f70 656e 6c64  ss remove_openld
│ │ │ +00060dc0: 6170 2d63 6c69 656e 7473 207b 0a20 2070  ap-clients {.  p
│ │ │ +00060dd0: 6163 6b61 6765 207b 2027 6f70 656e 6c64  ackage { 'openld
│ │ │ +00060de0: 6170 2d63 6c69 656e 7473 273a 0a20 2020  ap-clients':.   
│ │ │ +00060df0: 2065 6e73 7572 6520 3d26 6774 3b20 2770   ensure => 'p
│ │ │ +00060e00: 7572 6765 6427 2c0a 2020 7d0a 7d0a 3c2f  urged',.  }.}.
true, │ │ │ │ - ensure => 'running', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -1336,14 +1319,31 @@ │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_firewalld_enabled │ │ │ │ - special_service_block │ │ │ │ when: │ │ │ │ - '"kernel" in ansible_facts.packages' │ │ │ │ - '"firewalld" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include enable_firewalld │ │ │ │ + │ │ │ │ +class enable_firewalld { │ │ │ │ + service {'firewalld': │ │ │ │ + enable => true, │ │ │ │ + ensure => 'running', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +enabled = ["firewalld"] │ │ │ │ Group   Strengthen the Default Ruleset   Group contains 1 rule │ │ │ │ _[_r_e_f_]   The default rules can be strengthened. The system scripts that activate the │ │ │ │ firewall rules expect them to be defined in configuration files under the /etc/ │ │ │ │ firewalld/services and /etc/firewalld/zones directories. │ │ │ │ │ │ │ │ The following recommendations describe how to strengthen the default ruleset │ │ │ │ configuration file. An alternative to editing this configuration file is to create a │ │ │ │ @@ -1448,31 +1448,14 @@ │ │ │ │ A.11.2.6, A.13.1.1, A.13.2.1, A.18.1.4, A.6.2.1, A.6.2.2, │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.7.1.1, A.9.2.1, A.9.2.2, A.9.2.3, A.9.2.4, A.9.2.6, │ │ │ │ A.9.3.1, A.9.4.2, A.9.4.3 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a), MP-7 │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-1, PR.AC-3, PR.AC-6, PR.AC-7 │ │ │ │ _o_s_-_s_r_g SRG-OS-000114-GPOS-00059, SRG-OS-000378-GPOS-00163, SRG-OS- │ │ │ │ 000480-GPOS-00227 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -masked = ["autofs"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include disable_autofs │ │ │ │ - │ │ │ │ -class disable_autofs { │ │ │ │ - service {'autofs': │ │ │ │ - enable => false, │ │ │ │ - ensure => 'stopped', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -1533,14 +1516,31 @@ │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_autofs_disabled │ │ │ │ - special_service_block │ │ │ │ when: ( "autofs" in ansible_facts.packages and "kernel" in ansible_facts.packages │ │ │ │ ) │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include disable_autofs │ │ │ │ + │ │ │ │ +class disable_autofs { │ │ │ │ + service {'autofs': │ │ │ │ + enable => false, │ │ │ │ + ensure => 'stopped', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +masked = ["autofs"] │ │ │ │ ****** RRuullee? ?  DDiissaabbllee KKeerrnneell SSuuppppoorrtt ffoorr UUSSBB vviiaa BBoooottllooaaddeerr CCoonnffiigguurraattiioonn ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ All USB support can be disabled by adding the nousb argument to the kernel's boot │ │ │ │ loader configuration. To do so, add the argument nousb to the default GRUB 2 command │ │ │ │ line for the Linux operating system. Configure the default Grub2 kernel command line to │ │ │ │ contain nousb as follows: │ │ │ │ # grub2-editenv - set "$(grub2-editenv - list | grep kernelopts) nousb" │ │ │ │ Warning:  Disabling all kernel support for USB will cause problems for systems with │ │ │ │ @@ -1606,31 +1606,14 @@ │ │ │ │ SR 3.8, SR 4.1, SR 4.3, SR 5.1, SR 5.2, SR 5.3, SR 7.1, SR │ │ │ │ 7.6 │ │ │ │ A.11.2.6, A.12.1.2, A.12.5.1, A.12.6.2, A.13.1.1, A.13.2.1, │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.14.1.3, A.14.2.2, A.14.2.3, A.14.2.4, A.6.2.1, A.6.2.2, │ │ │ │ A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-3, PR.IP-1, PR.PT-3, PR.PT-4 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -masked = ["abrtd"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include disable_abrtd │ │ │ │ - │ │ │ │ -class disable_abrtd { │ │ │ │ - service {'abrtd': │ │ │ │ - enable => false, │ │ │ │ - ensure => 'stopped', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -1685,14 +1668,31 @@ │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_abrtd_disabled │ │ │ │ - special_service_block │ │ │ │ when: '"kernel" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include disable_abrtd │ │ │ │ + │ │ │ │ +class disable_abrtd { │ │ │ │ + service {'abrtd': │ │ │ │ + enable => false, │ │ │ │ + ensure => 'stopped', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +masked = ["abrtd"] │ │ │ │ ****** RRuullee? ?  DDiissaabbllee nnttppddaattee SSeerrvviiccee ((nnttppddaattee)) ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The ntpdate service sets the local hardware clock by polling NTP servers when the │ │ │ │ system boots. It synchronizes to the NTP servers listed in /etc/ntp/step-tickers or / │ │ │ │ etc/ntp.conf and then sets the local hardware clock to the newly synchronized system │ │ │ │ time. The ntpdate service can be disabled with the following command: │ │ │ │ $ sudo systemctl mask --now ntpdate.service │ │ │ │ The ntpdate service may only be suitable for systems which are rebooted │ │ │ │ @@ -1715,31 +1715,14 @@ │ │ │ │ SR 3.8, SR 4.1, SR 4.3, SR 5.1, SR 5.2, SR 5.3, SR 7.1, SR │ │ │ │ 7.6 │ │ │ │ A.11.2.6, A.12.1.2, A.12.5.1, A.12.6.2, A.13.1.1, A.13.2.1, │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.14.1.3, A.14.2.2, A.14.2.3, A.14.2.4, A.6.2.1, A.6.2.2, │ │ │ │ A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-3, PR.IP-1, PR.PT-3, PR.PT-4 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -masked = ["ntpdate"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include disable_ntpdate │ │ │ │ - │ │ │ │ -class disable_ntpdate { │ │ │ │ - service {'ntpdate': │ │ │ │ - enable => false, │ │ │ │ - ensure => 'stopped', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -1796,14 +1779,31 @@ │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_ntpdate_disabled │ │ │ │ - special_service_block │ │ │ │ when: '"kernel" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include disable_ntpdate │ │ │ │ + │ │ │ │ +class disable_ntpdate { │ │ │ │ + service {'ntpdate': │ │ │ │ + enable => false, │ │ │ │ + ensure => 'stopped', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +masked = ["ntpdate"] │ │ │ │ ****** RRuullee? ?  DDiissaabbllee OOdddd JJoobb DDaaeemmoonn ((ooddddjjoobbdd)) ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The oddjobd service exists to provide an interface and access control mechanism through │ │ │ │ which specified privileged tasks can run tasks for unprivileged client applications. │ │ │ │ Communication with oddjobd through the system message bus. The oddjobd service can be │ │ │ │ disabled with the following command: │ │ │ │ $ sudo systemctl mask --now oddjobd.service │ │ │ │ The oddjobd service may provide necessary functionality in some │ │ │ │ @@ -1823,31 +1823,14 @@ │ │ │ │ SR 1.1, SR 1.10, SR 1.11, SR 1.12, SR 1.13, SR 1.2, SR 1.3, │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 SR 1.4, SR 1.5, SR 1.6, SR 1.7, SR 1.8, SR 1.9, SR 2.1, SR │ │ │ │ 2.2, SR 2.3, SR 2.4, SR 2.5, SR 2.6, SR 2.7, SR 7.6 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.1.2, A.12.5.1, A.12.6.2, A.14.2.2, A.14.2.3, A.14.2.4, │ │ │ │ A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-3 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -masked = ["oddjobd"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include disable_oddjobd │ │ │ │ - │ │ │ │ -class disable_oddjobd { │ │ │ │ - service {'oddjobd': │ │ │ │ - enable => false, │ │ │ │ - ensure => 'stopped', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -1904,14 +1887,31 @@ │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_oddjobd_disabled │ │ │ │ - special_service_block │ │ │ │ when: '"kernel" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include disable_oddjobd │ │ │ │ + │ │ │ │ +class disable_oddjobd { │ │ │ │ + service {'oddjobd': │ │ │ │ + enable => false, │ │ │ │ + ensure => 'stopped', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +masked = ["oddjobd"] │ │ │ │ ****** RRuullee? ?  DDiissaabbllee AAppaacchhee QQppiidd ((qqppiidddd)) ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The qpidd service provides high speed, secure, guaranteed delivery services. It is an │ │ │ │ implementation of the Advanced Message Queuing Protocol. By default the qpidd service │ │ │ │ will bind to port 5672 and listen for connection attempts. The qpidd service can be │ │ │ │ disabled with the following command: │ │ │ │ $ sudo systemctl mask --now qpidd.service │ │ │ │ The qpidd service is automatically installed when the base package selection │ │ │ │ @@ -1935,31 +1935,14 @@ │ │ │ │ SR 3.8, SR 4.1, SR 4.3, SR 5.1, SR 5.2, SR 5.3, SR 7.1, SR │ │ │ │ 7.6 │ │ │ │ A.11.2.6, A.12.1.2, A.12.5.1, A.12.6.2, A.13.1.1, A.13.2.1, │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.14.1.3, A.14.2.2, A.14.2.3, A.14.2.4, A.6.2.1, A.6.2.2, │ │ │ │ A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-3, PR.IP-1, PR.PT-3, PR.PT-4 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -masked = ["qpidd"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include disable_qpidd │ │ │ │ - │ │ │ │ -class disable_qpidd { │ │ │ │ - service {'qpidd': │ │ │ │ - enable => false, │ │ │ │ - ensure => 'stopped', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -2015,14 +1998,31 @@ │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_qpidd_disabled │ │ │ │ - special_service_block │ │ │ │ when: '"kernel" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include disable_qpidd │ │ │ │ + │ │ │ │ +class disable_qpidd { │ │ │ │ + service {'qpidd': │ │ │ │ + enable => false, │ │ │ │ + ensure => 'stopped', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +masked = ["qpidd"] │ │ │ │ ****** RRuullee? ?  DDiissaabbllee NNeettwwoorrkk RRoouutteerr DDiissccoovveerryy DDaaeemmoonn ((rrddiisscc)) ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The rdisc service implements the client side of the ICMP Internet Router Discovery │ │ │ │ Protocol (IRDP), which allows discovery of routers on the local subnet. If a router is │ │ │ │ discovered then the local routing table is updated with a corresponding default route. │ │ │ │ By default this daemon is disabled. The rdisc service can be disabled with the following │ │ │ │ command: │ │ │ │ $ sudo systemctl mask --now rdisc.service │ │ │ │ @@ -2051,31 +2051,14 @@ │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.13.2.1, A.13.2.2, A.13.2.3, A.13.2.4, A.14.1.2, A.14.1.3, │ │ │ │ A.14.2.2, A.14.2.3, A.14.2.4, A.6.1.2, A.6.2.1, A.6.2.2, │ │ │ │ A.7.1.1, A.7.1.2, A.7.3.1, A.8.2.2, A.8.2.3, A.9.1.1, │ │ │ │ A.9.1.2, A.9.2.3, A.9.4.1, A.9.4.4, A.9.4.5 │ │ │ │ _n_i_s_t AC-4, CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f DE.AE-1, ID.AM-3, PR.AC-3, PR.AC-5, PR.DS-5, PR.IP-1, PR.PT- │ │ │ │ 3, PR.PT-4 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -masked = ["rdisc"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include disable_rdisc │ │ │ │ - │ │ │ │ -class disable_rdisc { │ │ │ │ - service {'rdisc': │ │ │ │ - enable => false, │ │ │ │ - ensure => 'stopped', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -2135,14 +2118,31 @@ │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_rdisc_disabled │ │ │ │ - special_service_block │ │ │ │ when: '"kernel" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include disable_rdisc │ │ │ │ + │ │ │ │ +class disable_rdisc { │ │ │ │ + service {'rdisc': │ │ │ │ + enable => false, │ │ │ │ + ensure => 'stopped', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +masked = ["rdisc"] │ │ │ │ Group   Cron and At Daemons   Group contains 1 rule │ │ │ │ _[_r_e_f_]   The cron and at services are used to allow commands to be executed at a later │ │ │ │ time. The cron service is required by almost all systems to perform necessary │ │ │ │ maintenance tasks, while at may or may not be required on a given system. Both daemons │ │ │ │ should be configured defensively. │ │ │ │ ****** RRuullee? ?  DDiissaabbllee AAtt SSeerrvviiccee ((aattdd)) ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The at and batch commands can be used to schedule tasks that are meant to be executed │ │ │ │ @@ -2168,31 +2168,14 @@ │ │ │ │ SR 1.1, SR 1.10, SR 1.11, SR 1.12, SR 1.13, SR 1.2, SR 1.3, │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 SR 1.4, SR 1.5, SR 1.6, SR 1.7, SR 1.8, SR 1.9, SR 2.1, SR │ │ │ │ 2.2, SR 2.3, SR 2.4, SR 2.5, SR 2.6, SR 2.7, SR 7.6 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.1.2, A.12.5.1, A.12.6.2, A.14.2.2, A.14.2.3, A.14.2.4, │ │ │ │ A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-3 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -masked = ["atd"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include disable_atd │ │ │ │ - │ │ │ │ -class disable_atd { │ │ │ │ - service {'atd': │ │ │ │ - enable => false, │ │ │ │ - ensure => 'stopped', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -2248,14 +2231,31 @@ │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_atd_disabled │ │ │ │ - special_service_block │ │ │ │ when: '"kernel" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include disable_atd │ │ │ │ + │ │ │ │ +class disable_atd { │ │ │ │ + service {'atd': │ │ │ │ + enable => false, │ │ │ │ + ensure => 'stopped', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +masked = ["atd"] │ │ │ │ Group   LDAP   Group contains 1 group and 1 rule │ │ │ │ _[_r_e_f_]   LDAP is a popular directory service, that is, a standardized way of looking up │ │ │ │ information from a central database. Alibaba Cloud Linux 2 includes software that │ │ │ │ enables a system to act as both an LDAP client and server. │ │ │ │ Group   Configure OpenLDAP Clients   Group contains 1 rule │ │ │ │ _[_r_e_f_]   This section provides information on which security settings are important to │ │ │ │ configure in OpenLDAP clients by manually editing the appropriate configuration files. │ │ │ │ @@ -2273,27 +2273,14 @@ │ │ │ │ for looking up information from a central database. The openldap-clients package can be │ │ │ │ removed with the following command: │ │ │ │ $ sudo yum erase openldap-clients │ │ │ │ Rationale: If the system does not need to act as an LDAP client, it is recommended that │ │ │ │ the software is removed to reduce the potential attack surface. │ │ │ │ Severity:  low │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_openldap-clients_removed │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_openldap-clients │ │ │ │ - │ │ │ │ -class remove_openldap-clients { │ │ │ │ - package { 'openldap-clients': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Ensure LDAP client is not installed: Ensure openldap-clients is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -2302,14 +2289,27 @@ │ │ │ │ tags: │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_openldap-clients_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_openldap-clients │ │ │ │ + │ │ │ │ +class remove_openldap-clients { │ │ │ │ + package { 'openldap-clients': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove openldap-clients │ │ ├── ./usr/share/doc/ssg-nondebian/ssg-alinux3-guide-pci-dss.html │ │ │ @@ -15812,133 +15812,133 @@ │ │ │ 0003dc30: 7461 2d74 6172 6765 743d 2223 6964 3622 ta-target="#id6" │ │ │ 0003dc40: 2074 6162 696e 6465 783d 2230 2220 726f tabindex="0" ro │ │ │ 0003dc50: 6c65 3d22 6275 7474 6f6e 2220 6172 6961 le="button" aria │ │ │ 0003dc60: 2d65 7870 616e 6465 643d 2266 616c 7365 -expanded="false │ │ │ 0003dc70: 2220 7469 746c 653d 2241 6374 6976 6174 " title="Activat │ │ │ 0003dc80: 6520 746f 2072 6576 6561 6c22 2068 7265 e to reveal" hre │ │ │ 0003dc90: 663d 2223 2122 3e52 656d 6564 6961 7469 f="#!">Remediati │ │ │ -0003dca0: 6f6e 204f 5342 7569 6c64 2042 6c75 6570 on OSBuild Bluep │ │ │ -0003dcb0: 7269 6e74 2073 6e69 7070 6574 20e2 87b2 rint snippet ... │ │ │ -0003dcc0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
.[[packages]].n
│ │ │ -0003dd10: 616d 6520 3d20 2261 6964 6522 0a76 6572  ame = "aide".ver
│ │ │ -0003dd20: 7369 6f6e 203d 2022 2a22 0a3c 2f63 6f64  sion = "*".
Remedia │ │ │ -0003dde0: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ -0003ddf0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -0003de00: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -0003de10: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -0003de20: 7365 2220 6964 3d22 6964 3722 3e3c 7461 se" id="id7">< │ │ │ -0003de70: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -0003de80: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -0003dea0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -0003deb0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -0003ded0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -0003def0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ -0003df20: 636f 6465 3e69 6e63 6c75 6465 2069 6e73  code>include ins
│ │ │ -0003df30: 7461 6c6c 5f61 6964 650a 0a63 6c61 7373  tall_aide..class
│ │ │ -0003df40: 2069 6e73 7461 6c6c 5f61 6964 6520 7b0a   install_aide {.
│ │ │ -0003df50: 2020 7061 636b 6167 6520 7b20 2761 6964    package { 'aid
│ │ │ -0003df60: 6527 3a0a 2020 2020 656e 7375 7265 203d  e':.    ensure =
│ │ │ -0003df70: 2667 743b 2027 696e 7374 616c 6c65 6427  > 'installed'
│ │ │ -0003df80: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ -0003df90: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediatio │ │ │ -0003e040: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ -0003e050: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
Complexity: │ │ │ -0003e0e0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -0003e100: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -0003e120: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -0003e150: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -0003e160: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ -0003e170: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
- name: Gathe
│ │ │ -0003e190: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ -0003e1a0: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ -0003e1b0: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ -0003e1c0: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ -0003e1d0: 202d 2043 4a49 532d 352e 3130 2e31 2e33   - CJIS-5.10.1.3
│ │ │ -0003e1e0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -0003e1f0: 2d43 4d2d 3628 6129 0a20 202d 2050 4349  -CM-6(a).  - PCI
│ │ │ -0003e200: 2d44 5353 2d52 6571 2d31 312e 350a 2020  -DSS-Req-11.5.  
│ │ │ -0003e210: 2d20 5043 492d 4453 5376 342d 3131 2e35  - PCI-DSSv4-11.5
│ │ │ -0003e220: 2e32 0a20 202d 2065 6e61 626c 655f 7374  .2.  - enable_st
│ │ │ -0003e230: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ -0003e240: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -0003e250: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -0003e260: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -0003e270: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -0003e280: 6565 6465 640a 2020 2d20 7061 636b 6167  eeded.  - packag
│ │ │ -0003e290: 655f 6169 6465 5f69 6e73 7461 6c6c 6564  e_aide_installed
│ │ │ -0003e2a0: 0a0a 2d20 6e61 6d65 3a20 456e 7375 7265  ..- name: Ensure
│ │ │ -0003e2b0: 2061 6964 6520 6973 2069 6e73 7461 6c6c   aide is install
│ │ │ -0003e2c0: 6564 0a20 2061 6e73 6962 6c65 2e62 7569  ed.  ansible.bui
│ │ │ -0003e2d0: 6c74 696e 2e70 6163 6b61 6765 3a0a 2020  ltin.package:.  
│ │ │ -0003e2e0: 2020 6e61 6d65 3a20 6169 6465 0a20 2020    name: aide.   
│ │ │ -0003e2f0: 2073 7461 7465 3a20 7072 6573 656e 740a   state: present.
│ │ │ -0003e300: 2020 7768 656e 3a20 2722 6b65 726e 656c    when: '"kernel
│ │ │ -0003e310: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -0003e320: 7473 2e70 6163 6b61 6765 7327 0a20 2074  ts.packages'.  t
│ │ │ -0003e330: 6167 733a 0a20 202d 2043 4a49 532d 352e  ags:.  - CJIS-5.
│ │ │ -0003e340: 3130 2e31 2e33 0a20 202d 204e 4953 542d  10.1.3.  - NIST-
│ │ │ -0003e350: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -0003e360: 202d 2050 4349 2d44 5353 2d52 6571 2d31   - PCI-DSS-Req-1
│ │ │ -0003e370: 312e 350a 2020 2d20 5043 492d 4453 5376  1.5.  - PCI-DSSv
│ │ │ -0003e380: 342d 3131 2e35 2e32 0a20 202d 2065 6e61  4-11.5.2.  - ena
│ │ │ -0003e390: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ -0003e3a0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -0003e3b0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -0003e3c0: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ -0003e3d0: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ -0003e3e0: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ -0003e3f0: 7061 636b 6167 655f 6169 6465 5f69 6e73  package_aide_ins
│ │ │ -0003e400: 7461 6c6c 6564 0a3c 2f63 6f64 653e 3c2f  talled.
Complexity │ │ │ +0003dd40: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +0003dd60: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +0003dd70: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0003dd80: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +0003dd90: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +0003ddb0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
- name: Gath
│ │ │ +0003ddf0: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ +0003de00: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ +0003de10: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ +0003de20: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ +0003de30: 2020 2d20 434a 4953 2d35 2e31 302e 312e    - CJIS-5.10.1.
│ │ │ +0003de40: 330a 2020 2d20 4e49 5354 2d38 3030 2d35  3.  - NIST-800-5
│ │ │ +0003de50: 332d 434d 2d36 2861 290a 2020 2d20 5043  3-CM-6(a).  - PC
│ │ │ +0003de60: 492d 4453 532d 5265 712d 3131 2e35 0a20  I-DSS-Req-11.5. 
│ │ │ +0003de70: 202d 2050 4349 2d44 5353 7634 2d31 312e   - PCI-DSSv4-11.
│ │ │ +0003de80: 352e 320a 2020 2d20 656e 6162 6c65 5f73  5.2.  - enable_s
│ │ │ +0003de90: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ +0003dea0: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +0003deb0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +0003dec0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +0003ded0: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +0003dee0: 6e65 6564 6564 0a20 202d 2070 6163 6b61  needed.  - packa
│ │ │ +0003def0: 6765 5f61 6964 655f 696e 7374 616c 6c65  ge_aide_installe
│ │ │ +0003df00: 640a 0a2d 206e 616d 653a 2045 6e73 7572  d..- name: Ensur
│ │ │ +0003df10: 6520 6169 6465 2069 7320 696e 7374 616c  e aide is instal
│ │ │ +0003df20: 6c65 640a 2020 616e 7369 626c 652e 6275  led.  ansible.bu
│ │ │ +0003df30: 696c 7469 6e2e 7061 636b 6167 653a 0a20  iltin.package:. 
│ │ │ +0003df40: 2020 206e 616d 653a 2061 6964 650a 2020     name: aide.  
│ │ │ +0003df50: 2020 7374 6174 653a 2070 7265 7365 6e74    state: present
│ │ │ +0003df60: 0a20 2077 6865 6e3a 2027 226b 6572 6e65  .  when: '"kerne
│ │ │ +0003df70: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +0003df80: 6374 732e 7061 636b 6167 6573 270a 2020  cts.packages'.  
│ │ │ +0003df90: 7461 6773 3a0a 2020 2d20 434a 4953 2d35  tags:.  - CJIS-5
│ │ │ +0003dfa0: 2e31 302e 312e 330a 2020 2d20 4e49 5354  .10.1.3.  - NIST
│ │ │ +0003dfb0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +0003dfc0: 2020 2d20 5043 492d 4453 532d 5265 712d    - PCI-DSS-Req-
│ │ │ +0003dfd0: 3131 2e35 0a20 202d 2050 4349 2d44 5353  11.5.  - PCI-DSS
│ │ │ +0003dfe0: 7634 2d31 312e 352e 320a 2020 2d20 656e  v4-11.5.2.  - en
│ │ │ +0003dff0: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ +0003e000: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +0003e010: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +0003e020: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ +0003e030: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ +0003e040: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ +0003e050: 2070 6163 6b61 6765 5f61 6964 655f 696e   package_aide_in
│ │ │ +0003e060: 7374 616c 6c65 640a 3c2f 636f 6465 3e3c  stalled.<
│ │ │ +0003e070: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediatio │ │ │ +0003e120: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ +0003e130: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
│ │ │ +0003e1b0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +0003e1d0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +0003e220: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ +0003e250: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
include instal
│ │ │ +0003e270: 6c5f 6169 6465 0a0a 636c 6173 7320 696e  l_aide..class in
│ │ │ +0003e280: 7374 616c 6c5f 6169 6465 207b 0a20 2070  stall_aide {.  p
│ │ │ +0003e290: 6163 6b61 6765 207b 2027 6169 6465 273a  ackage { 'aide':
│ │ │ +0003e2a0: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ +0003e2b0: 3b20 2769 6e73 7461 6c6c 6564 272c 0a20  ; 'installed',. 
│ │ │ +0003e2c0: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.Remediation O
│ │ │ +0003e380: 5342 7569 6c64 2042 6c75 6570 7269 6e74  SBuild Blueprint
│ │ │ +0003e390: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e   snippet ...
│ │ │ +0003e3a0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22  
.[[
│ │ │ +0003e3e0: 7061 636b 6167 6573 5d5d 0a6e 616d 6520  packages]].name 
│ │ │ +0003e3f0: 3d20 2261 6964 6522 0a76 6572 7369 6f6e  = "aide".version
│ │ │ +0003e400: 203d 2022 2a22 0a3c 2f63 6f64 653e 3c2f   = "*".
│ │ │ 0003e420: 3c2f 7464 3e3c 2f74 723e 3c2f 7462 6f64
Complexity:< │ │ │ +0003e1c0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +0003e1e0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +0003e230: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ +0003e240: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
< │ │ │ 0003e440: 2f74 723e 3c74 7220 6461 7461 2d74 742d /tr>Remediation │ │ │ -00046420: 204f 5342 7569 6c64 2042 6c75 6570 7269 OSBuild Bluepri │ │ │ -00046430: 6e74 2073 6e69 7070 6574 20e2 87b2 3c2f nt snippet ...

│ │ │ -00046480: 0a5b 5b70 6163 6b61 6765 735d 5d0a 6e61  .[[packages]].na
│ │ │ -00046490: 6d65 203d 2022 7375 646f 220a 7665 7273  me = "sudo".vers
│ │ │ -000464a0: 696f 6e20 3d20 222a 220a 3c2f 636f 6465  ion = "*".
Remedia │ │ │ -00046560: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ -00046570: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00046580: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00046590: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -000465a0: 7365 2220 6964 3d22 6964 3230 223e 3c74 se" id="id20"> │ │ │ -000465f0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -00046600: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -00046610: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -00046650: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -00046660: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -00046680: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ -000466a0: 3c63 6f64 653e 696e 636c 7564 6520 696e  include in
│ │ │ -000466b0: 7374 616c 6c5f 7375 646f 0a0a 636c 6173  stall_sudo..clas
│ │ │ -000466c0: 7320 696e 7374 616c 6c5f 7375 646f 207b  s install_sudo {
│ │ │ -000466d0: 0a20 2070 6163 6b61 6765 207b 2027 7375  .  package { 'su
│ │ │ -000466e0: 646f 273a 0a20 2020 2065 6e73 7572 6520  do':.    ensure 
│ │ │ -000466f0: 3d26 6774 3b20 2769 6e73 7461 6c6c 6564  => 'installed
│ │ │ -00046700: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e  ',.  }.}.
│ │ │ -00046710: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remediat │ │ │ -000467c0: 696f 6e20 416e 7369 626c 6520 736e 6970 ion Ansible snip │ │ │ -000467d0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -000467e0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -000467f0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00046800: 7365 2220 6964 3d22 6964 3231 223e 3c74 se" id="id21"> │ │ │ -00046850: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -00046860: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -00046870: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -000468b0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -000468c0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -000468e0: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ -00046900: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -00046910: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -00046920: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -00046930: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -00046940: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -00046950: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -00046960: 332d 434d 2d36 2861 290a 2020 2d20 5043  3-CM-6(a).  - PC
│ │ │ -00046970: 492d 4453 5376 342d 322e 320a 2020 2d20  I-DSSv4-2.2.  - 
│ │ │ -00046980: 5043 492d 4453 5376 342d 322e 322e 360a  PCI-DSSv4-2.2.6.
│ │ │ -00046990: 2020 2d20 656e 6162 6c65 5f73 7472 6174    - enable_strat
│ │ │ -000469a0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ -000469b0: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -000469c0: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -000469d0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -000469e0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -000469f0: 6564 0a20 202d 2070 6163 6b61 6765 5f73  ed.  - package_s
│ │ │ -00046a00: 7564 6f5f 696e 7374 616c 6c65 640a 0a2d  udo_installed..-
│ │ │ -00046a10: 206e 616d 653a 2045 6e73 7572 6520 7375   name: Ensure su
│ │ │ -00046a20: 646f 2069 7320 696e 7374 616c 6c65 640a  do is installed.
│ │ │ -00046a30: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -00046a40: 6e2e 7061 636b 6167 653a 0a20 2020 206e  n.package:.    n
│ │ │ -00046a50: 616d 653a 2073 7564 6f0a 2020 2020 7374  ame: sudo.    st
│ │ │ -00046a60: 6174 653a 2070 7265 7365 6e74 0a20 2077  ate: present.  w
│ │ │ -00046a70: 6865 6e3a 2027 226b 6572 6e65 6c22 2069  hen: '"kernel" i
│ │ │ -00046a80: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -00046a90: 7061 636b 6167 6573 270a 2020 7461 6773  packages'.  tags
│ │ │ -00046aa0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -00046ab0: 332d 434d 2d36 2861 290a 2020 2d20 5043  3-CM-6(a).  - PC
│ │ │ -00046ac0: 492d 4453 5376 342d 322e 320a 2020 2d20  I-DSSv4-2.2.  - 
│ │ │ -00046ad0: 5043 492d 4453 5376 342d 322e 322e 360a  PCI-DSSv4-2.2.6.
│ │ │ -00046ae0: 2020 2d20 656e 6162 6c65 5f73 7472 6174    - enable_strat
│ │ │ -00046af0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ -00046b00: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -00046b10: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -00046b20: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -00046b30: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -00046b40: 6564 0a20 202d 2070 6163 6b61 6765 5f73  ed.  - package_s
│ │ │ -00046b50: 7564 6f5f 696e 7374 616c 6c65 640a 3c2f  udo_installed.
Complexity: │ │ │ +000464c0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +000464e0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +00046500: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +00046530: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +00046540: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ +00046550: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
- name: Gathe
│ │ │ +00046570: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ +00046580: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ +00046590: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ +000465a0: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ +000465b0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +000465c0: 4d2d 3628 6129 0a20 202d 2050 4349 2d44  M-6(a).  - PCI-D
│ │ │ +000465d0: 5353 7634 2d32 2e32 0a20 202d 2050 4349  SSv4-2.2.  - PCI
│ │ │ +000465e0: 2d44 5353 7634 2d32 2e32 2e36 0a20 202d  -DSSv4-2.2.6.  -
│ │ │ +000465f0: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ +00046600: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +00046610: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +00046620: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +00046630: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ +00046640: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +00046650: 2020 2d20 7061 636b 6167 655f 7375 646f    - package_sudo
│ │ │ +00046660: 5f69 6e73 7461 6c6c 6564 0a0a 2d20 6e61  _installed..- na
│ │ │ +00046670: 6d65 3a20 456e 7375 7265 2073 7564 6f20  me: Ensure sudo 
│ │ │ +00046680: 6973 2069 6e73 7461 6c6c 6564 0a20 2061  is installed.  a
│ │ │ +00046690: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ +000466a0: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ +000466b0: 3a20 7375 646f 0a20 2020 2073 7461 7465  : sudo.    state
│ │ │ +000466c0: 3a20 7072 6573 656e 740a 2020 7768 656e  : present.  when
│ │ │ +000466d0: 3a20 2722 6b65 726e 656c 2220 696e 2061  : '"kernel" in a
│ │ │ +000466e0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +000466f0: 6b61 6765 7327 0a20 2074 6167 733a 0a20  kages'.  tags:. 
│ │ │ +00046700: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +00046710: 4d2d 3628 6129 0a20 202d 2050 4349 2d44  M-6(a).  - PCI-D
│ │ │ +00046720: 5353 7634 2d32 2e32 0a20 202d 2050 4349  SSv4-2.2.  - PCI
│ │ │ +00046730: 2d44 5353 7634 2d32 2e32 2e36 0a20 202d  -DSSv4-2.2.6.  -
│ │ │ +00046740: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ +00046750: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +00046760: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +00046770: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +00046780: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ +00046790: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +000467a0: 2020 2d20 7061 636b 6167 655f 7375 646f    - package_sudo
│ │ │ +000467b0: 5f69 6e73 7461 6c6c 6564 0a3c 2f63 6f64  _installed.
Remedi │ │ │ +00046870: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ +00046880: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +00046890: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
< │ │ │ +000468c0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +000468d0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +000468e0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +000468f0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +00046900: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +00046910: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +00046920: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ +00046960: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +00046970: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ +00046990: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ +000469a0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
include i
│ │ │ +000469c0: 6e73 7461 6c6c 5f73 7564 6f0a 0a63 6c61  nstall_sudo..cla
│ │ │ +000469d0: 7373 2069 6e73 7461 6c6c 5f73 7564 6f20  ss install_sudo 
│ │ │ +000469e0: 7b0a 2020 7061 636b 6167 6520 7b20 2773  {.  package { 's
│ │ │ +000469f0: 7564 6f27 3a0a 2020 2020 656e 7375 7265  udo':.    ensure
│ │ │ +00046a00: 203d 2667 743b 2027 696e 7374 616c 6c65   => 'installe
│ │ │ +00046a10: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  d',.  }.}.
Remedia │ │ │ +00046ad0: 7469 6f6e 204f 5342 7569 6c64 2042 6c75 tion OSBuild Blu │ │ │ +00046ae0: 6570 7269 6e74 2073 6e69 7070 6574 20e2 eprint snippet . │ │ │ +00046af0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
.[[packages]
│ │ │ +00046b40: 5d0a 6e61 6d65 203d 2022 7375 646f 220a  ].name = "sudo".
│ │ │ +00046b50: 7665 7273 696f 6e20 3d20 222a 220a 3c2f  version = "*".
Remediat │ │ │ -0008be00: 696f 6e20 4f53 4275 696c 6420 426c 7565 ion OSBuild Blue │ │ │ -0008be10: 7072 696e 7420 736e 6970 7065 7420 e287 print snippet .. │ │ │ -0008be20: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
.[[packages]]
│ │ │ -0008be70: 0a6e 616d 6520 3d20 226c 6f67 726f 7461  .name = "logrota
│ │ │ -0008be80: 7465 220a 7665 7273 696f 6e20 3d20 222a  te".version = "*
│ │ │ -0008be90: 220a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  ".
< │ │ │ -0008bea0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pup │ │ │ -0008bf50: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ -0008bf60: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -0008bff0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
in
│ │ │ -0008c090: 636c 7564 6520 696e 7374 616c 6c5f 6c6f  clude install_lo
│ │ │ -0008c0a0: 6772 6f74 6174 650a 0a63 6c61 7373 2069  grotate..class i
│ │ │ -0008c0b0: 6e73 7461 6c6c 5f6c 6f67 726f 7461 7465  nstall_logrotate
│ │ │ -0008c0c0: 207b 0a20 2070 6163 6b61 6765 207b 2027   {.  package { '
│ │ │ -0008c0d0: 6c6f 6772 6f74 6174 6527 3a0a 2020 2020  logrotate':.    
│ │ │ -0008c0e0: 656e 7375 7265 203d 2667 743b 2027 696e  ensure => 'in
│ │ │ -0008c0f0: 7374 616c 6c65 6427 2c0a 2020 7d0a 7d0a  stalled',.  }.}.
│ │ │ -0008c100: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
R │ │ │ -0008c1b0: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -0008c1c0: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
│ │ │ -0008bfe0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -0008c010: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -0008c020: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -0008c060: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -0008c070: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ -0008c260: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0008c270: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -0008c2c0: 3c74 723e 3c74 683e 5374 7261 7465 6779
- n
│ │ │ -0008c300: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ -0008c310: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ -0008c320: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -0008c330: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ -0008c340: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -0008c350: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -0008c360: 0a20 202d 2050 4349 2d44 5353 2d52 6571  .  - PCI-DSS-Req
│ │ │ -0008c370: 2d31 302e 370a 2020 2d20 5043 492d 4453  -10.7.  - PCI-DS
│ │ │ -0008c380: 5376 342d 3130 2e35 0a20 202d 2050 4349  Sv4-10.5.  - PCI
│ │ │ -0008c390: 2d44 5353 7634 2d31 302e 352e 310a 2020  -DSSv4-10.5.1.  
│ │ │ -0008c3a0: 2d20 656e 6162 6c65 5f73 7472 6174 6567  - enable_strateg
│ │ │ -0008c3b0: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -0008c3c0: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -0008c3d0: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ -0008c3e0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -0008c3f0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -0008c400: 0a20 202d 2070 6163 6b61 6765 5f6c 6f67  .  - package_log
│ │ │ -0008c410: 726f 7461 7465 5f69 6e73 7461 6c6c 6564  rotate_installed
│ │ │ -0008c420: 0a0a 2d20 6e61 6d65 3a20 456e 7375 7265  ..- name: Ensure
│ │ │ -0008c430: 206c 6f67 726f 7461 7465 2069 7320 696e   logrotate is in
│ │ │ -0008c440: 7374 616c 6c65 640a 2020 616e 7369 626c  stalled.  ansibl
│ │ │ -0008c450: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ -0008c460: 653a 0a20 2020 206e 616d 653a 206c 6f67  e:.    name: log
│ │ │ -0008c470: 726f 7461 7465 0a20 2020 2073 7461 7465  rotate.    state
│ │ │ -0008c480: 3a20 7072 6573 656e 740a 2020 7768 656e  : present.  when
│ │ │ -0008c490: 3a20 2722 6b65 726e 656c 2220 696e 2061  : '"kernel" in a
│ │ │ -0008c4a0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -0008c4b0: 6b61 6765 7327 0a20 2074 6167 733a 0a20  kages'.  tags:. 
│ │ │ -0008c4c0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -0008c4d0: 4d2d 3628 6129 0a20 202d 2050 4349 2d44  M-6(a).  - PCI-D
│ │ │ -0008c4e0: 5353 2d52 6571 2d31 302e 370a 2020 2d20  SS-Req-10.7.  - 
│ │ │ -0008c4f0: 5043 492d 4453 5376 342d 3130 2e35 0a20  PCI-DSSv4-10.5. 
│ │ │ -0008c500: 202d 2050 4349 2d44 5353 7634 2d31 302e   - PCI-DSSv4-10.
│ │ │ -0008c510: 352e 310a 2020 2d20 656e 6162 6c65 5f73  5.1.  - enable_s
│ │ │ -0008c520: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ -0008c530: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ -0008c540: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -0008c550: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -0008c560: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ -0008c570: 6e65 6564 6564 0a20 202d 2070 6163 6b61  needed.  - packa
│ │ │ -0008c580: 6765 5f6c 6f67 726f 7461 7465 5f69 6e73  ge_logrotate_ins
│ │ │ -0008c590: 7461 6c6c 6564 0a3c 2f63 6f64 653e 3c2f  talled.
< │ │ │ +0008be20: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +0008be30: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +0008be40: 7365 2220 6964 3d22 6964 3935 223e 3c74 se" id="id95"> │ │ │ +0008be90: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ +0008bf20: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
C │ │ │ -0008c250: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -0008c280: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -0008c290: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -0008c2d0: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -0008c2e0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexi │ │ │ +0008bea0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +0008beb0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +0008bef0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +0008bf00: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
│ │ │ +0008bf40: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ +0008bf50: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ +0008bf60: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ +0008bf70: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ +0008bf80: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ +0008bf90: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +0008bfa0: 332d 434d 2d36 2861 290a 2020 2d20 5043  3-CM-6(a).  - PC
│ │ │ +0008bfb0: 492d 4453 532d 5265 712d 3130 2e37 0a20  I-DSS-Req-10.7. 
│ │ │ +0008bfc0: 202d 2050 4349 2d44 5353 7634 2d31 302e   - PCI-DSSv4-10.
│ │ │ +0008bfd0: 350a 2020 2d20 5043 492d 4453 5376 342d  5.  - PCI-DSSv4-
│ │ │ +0008bfe0: 3130 2e35 2e31 0a20 202d 2065 6e61 626c  10.5.1.  - enabl
│ │ │ +0008bff0: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ +0008c000: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +0008c010: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +0008c020: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +0008c030: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ +0008c040: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ +0008c050: 636b 6167 655f 6c6f 6772 6f74 6174 655f  ckage_logrotate_
│ │ │ +0008c060: 696e 7374 616c 6c65 640a 0a2d 206e 616d  installed..- nam
│ │ │ +0008c070: 653a 2045 6e73 7572 6520 6c6f 6772 6f74  e: Ensure logrot
│ │ │ +0008c080: 6174 6520 6973 2069 6e73 7461 6c6c 6564  ate is installed
│ │ │ +0008c090: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ +0008c0a0: 696e 2e70 6163 6b61 6765 3a0a 2020 2020  in.package:.    
│ │ │ +0008c0b0: 6e61 6d65 3a20 6c6f 6772 6f74 6174 650a  name: logrotate.
│ │ │ +0008c0c0: 2020 2020 7374 6174 653a 2070 7265 7365      state: prese
│ │ │ +0008c0d0: 6e74 0a20 2077 6865 6e3a 2027 226b 6572  nt.  when: '"ker
│ │ │ +0008c0e0: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +0008c0f0: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ +0008c100: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +0008c110: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +0008c120: 2020 2d20 5043 492d 4453 532d 5265 712d    - PCI-DSS-Req-
│ │ │ +0008c130: 3130 2e37 0a20 202d 2050 4349 2d44 5353  10.7.  - PCI-DSS
│ │ │ +0008c140: 7634 2d31 302e 350a 2020 2d20 5043 492d  v4-10.5.  - PCI-
│ │ │ +0008c150: 4453 5376 342d 3130 2e35 2e31 0a20 202d  DSSv4-10.5.1.  -
│ │ │ +0008c160: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ +0008c170: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +0008c180: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +0008c190: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +0008c1a0: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ +0008c1b0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +0008c1c0: 2020 2d20 7061 636b 6167 655f 6c6f 6772    - package_logr
│ │ │ +0008c1d0: 6f74 6174 655f 696e 7374 616c 6c65 640a  otate_installed.
│ │ │ +0008c1e0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
R │ │ │ +0008c290: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ +0008c2a0: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
low< │ │ │ +0008c350: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0008c3a0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +0008c330: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0008c360: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0008c380: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0008c390: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0008c3b0: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +0008c3c0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
incl
│ │ │ +0008c3e0: 7564 6520 696e 7374 616c 6c5f 6c6f 6772  ude install_logr
│ │ │ +0008c3f0: 6f74 6174 650a 0a63 6c61 7373 2069 6e73  otate..class ins
│ │ │ +0008c400: 7461 6c6c 5f6c 6f67 726f 7461 7465 207b  tall_logrotate {
│ │ │ +0008c410: 0a20 2070 6163 6b61 6765 207b 2027 6c6f  .  package { 'lo
│ │ │ +0008c420: 6772 6f74 6174 6527 3a0a 2020 2020 656e  grotate':.    en
│ │ │ +0008c430: 7375 7265 203d 2667 743b 2027 696e 7374  sure => 'inst
│ │ │ +0008c440: 616c 6c65 6427 2c0a 2020 7d0a 7d0a 3c2f  alled',.  }.}.
Rem │ │ │ +0008c500: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ +0008c510: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ +0008c520: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
.[[packa │ │ │ +0008c570: 6765 735d 5d0a 6e61 6d65 203d 2022 6c6f ges]].name = "lo │ │ │ +0008c580: 6772 6f74 6174 6522 0a76 6572 7369 6f6e grotate".version │ │ │ +0008c590: 203d 2022 2a22 0a3c 2f63 6f64 653e 3c2f = "*".
│ │ │ 0008c5b0: 3c2f 7464 3e3c 2f74 723e 3c2f 7462 6f64 < │ │ │ 0008c5d0: 2f74 723e 3c74 7220 6461 7461 2d74 742d /tr>Remediat │ │ │ -0008f350: 696f 6e20 4f53 4275 696c 6420 426c 7565 ion OSBuild Blue │ │ │ -0008f360: 7072 696e 7420 736e 6970 7065 7420 e287 print snippet .. │ │ │ -0008f370: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
.[[packages]]
│ │ │ -0008f3c0: 0a6e 616d 6520 3d20 2266 6972 6577 616c  .name = "firewal
│ │ │ -0008f3d0: 6c64 220a 7665 7273 696f 6e20 3d20 222a  ld".version = "*
│ │ │ -0008f3e0: 220a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  ".
< │ │ │ -0008f3f0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ -0008f4a0: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ -0008f4b0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -0008f580: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -0008f590: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -0008f5e0: 696e 636c 7564 6520 696e 7374 616c 6c5f  include install_
│ │ │ -0008f5f0: 6669 7265 7761 6c6c 640a 0a63 6c61 7373  firewalld..class
│ │ │ -0008f600: 2069 6e73 7461 6c6c 5f66 6972 6577 616c   install_firewal
│ │ │ -0008f610: 6c64 207b 0a20 2070 6163 6b61 6765 207b  ld {.  package {
│ │ │ -0008f620: 2027 6669 7265 7761 6c6c 6427 3a0a 2020   'firewalld':.  
│ │ │ -0008f630: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ -0008f640: 696e 7374 616c 6c65 6427 2c0a 2020 7d0a  installed',.  }.
│ │ │ -0008f650: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -0008f660: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -0008f710: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -0008f720: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
low
Disru │ │ │ -0008f560: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -0008f570: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -0008f5b0: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -0008f5c0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ -0008f7a0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -0008f7c0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -0008f810: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
- name: Gather 
│ │ │ -0008f860: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -0008f870: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -0008f880: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -0008f890: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -0008f8a0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -0008f8b0: 3628 6129 0a20 202d 2050 4349 2d44 5353  6(a).  - PCI-DSS
│ │ │ -0008f8c0: 7634 2d31 2e32 0a20 202d 2050 4349 2d44  v4-1.2.  - PCI-D
│ │ │ -0008f8d0: 5353 7634 2d31 2e32 2e31 0a20 202d 2065  SSv4-1.2.1.  - e
│ │ │ -0008f8e0: 6e61 626c 655f 7374 7261 7465 6779 0a20  nable_strategy. 
│ │ │ -0008f8f0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -0008f900: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -0008f910: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ -0008f920: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ -0008f930: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ -0008f940: 2d20 7061 636b 6167 655f 6669 7265 7761  - package_firewa
│ │ │ -0008f950: 6c6c 645f 696e 7374 616c 6c65 640a 0a2d  lld_installed..-
│ │ │ -0008f960: 206e 616d 653a 2045 6e73 7572 6520 6669   name: Ensure fi
│ │ │ -0008f970: 7265 7761 6c6c 6420 6973 2069 6e73 7461  rewalld is insta
│ │ │ -0008f980: 6c6c 6564 0a20 2061 6e73 6962 6c65 2e62  lled.  ansible.b
│ │ │ -0008f990: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a  uiltin.package:.
│ │ │ -0008f9a0: 2020 2020 6e61 6d65 3a20 6669 7265 7761      name: firewa
│ │ │ -0008f9b0: 6c6c 640a 2020 2020 7374 6174 653a 2070  lld.    state: p
│ │ │ -0008f9c0: 7265 7365 6e74 0a20 2077 6865 6e3a 2027  resent.  when: '
│ │ │ -0008f9d0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -0008f9e0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -0008f9f0: 6573 270a 2020 7461 6773 3a0a 2020 2d20  es'.  tags:.  - 
│ │ │ -0008fa00: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -0008fa10: 2861 290a 2020 2d20 5043 492d 4453 5376  (a).  - PCI-DSSv
│ │ │ -0008fa20: 342d 312e 320a 2020 2d20 5043 492d 4453  4-1.2.  - PCI-DS
│ │ │ -0008fa30: 5376 342d 312e 322e 310a 2020 2d20 656e  Sv4-1.2.1.  - en
│ │ │ -0008fa40: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ -0008fa50: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -0008fa60: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -0008fa70: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ -0008fa80: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ -0008fa90: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ -0008faa0: 2070 6163 6b61 6765 5f66 6972 6577 616c   package_firewal
│ │ │ -0008fab0: 6c64 5f69 6e73 7461 6c6c 6564 0a3c 2f63  ld_installed.
< │ │ │ +0008f370: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +0008f380: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +0008f390: 7365 2220 6964 3d22 6964 3939 223e 3c74 se" id="id99"> │ │ │ +0008f3e0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ +0008f470: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
low
Disr │ │ │ -0008f7d0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -0008f7e0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -0008f820: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ -0008f830: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexi │ │ │ +0008f3f0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +0008f400: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +0008f440: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +0008f450: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
│ │ │ +0008f490: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ +0008f4a0: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ +0008f4b0: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ +0008f4c0: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ +0008f4d0: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ +0008f4e0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +0008f4f0: 332d 434d 2d36 2861 290a 2020 2d20 5043  3-CM-6(a).  - PC
│ │ │ +0008f500: 492d 4453 5376 342d 312e 320a 2020 2d20  I-DSSv4-1.2.  - 
│ │ │ +0008f510: 5043 492d 4453 5376 342d 312e 322e 310a  PCI-DSSv4-1.2.1.
│ │ │ +0008f520: 2020 2d20 656e 6162 6c65 5f73 7472 6174    - enable_strat
│ │ │ +0008f530: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +0008f540: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +0008f550: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +0008f560: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +0008f570: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +0008f580: 6564 0a20 202d 2070 6163 6b61 6765 5f66  ed.  - package_f
│ │ │ +0008f590: 6972 6577 616c 6c64 5f69 6e73 7461 6c6c  irewalld_install
│ │ │ +0008f5a0: 6564 0a0a 2d20 6e61 6d65 3a20 456e 7375  ed..- name: Ensu
│ │ │ +0008f5b0: 7265 2066 6972 6577 616c 6c64 2069 7320  re firewalld is 
│ │ │ +0008f5c0: 696e 7374 616c 6c65 640a 2020 616e 7369  installed.  ansi
│ │ │ +0008f5d0: 626c 652e 6275 696c 7469 6e2e 7061 636b  ble.builtin.pack
│ │ │ +0008f5e0: 6167 653a 0a20 2020 206e 616d 653a 2066  age:.    name: f
│ │ │ +0008f5f0: 6972 6577 616c 6c64 0a20 2020 2073 7461  irewalld.    sta
│ │ │ +0008f600: 7465 3a20 7072 6573 656e 740a 2020 7768  te: present.  wh
│ │ │ +0008f610: 656e 3a20 2722 6b65 726e 656c 2220 696e  en: '"kernel" in
│ │ │ +0008f620: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +0008f630: 6163 6b61 6765 7327 0a20 2074 6167 733a  ackages'.  tags:
│ │ │ +0008f640: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +0008f650: 2d43 4d2d 3628 6129 0a20 202d 2050 4349  -CM-6(a).  - PCI
│ │ │ +0008f660: 2d44 5353 7634 2d31 2e32 0a20 202d 2050  -DSSv4-1.2.  - P
│ │ │ +0008f670: 4349 2d44 5353 7634 2d31 2e32 2e31 0a20  CI-DSSv4-1.2.1. 
│ │ │ +0008f680: 202d 2065 6e61 626c 655f 7374 7261 7465   - enable_strate
│ │ │ +0008f690: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ +0008f6a0: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ +0008f6b0: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ +0008f6c0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +0008f6d0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +0008f6e0: 640a 2020 2d20 7061 636b 6167 655f 6669  d.  - package_fi
│ │ │ +0008f6f0: 7265 7761 6c6c 645f 696e 7374 616c 6c65  rewalld_installe
│ │ │ +0008f700: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ +0008f710: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ +0008f7c0: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ +0008f7d0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ +0008f8a0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +0008f8b0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +0008f900: 696e 636c 7564 6520 696e 7374 616c 6c5f  include install_
│ │ │ +0008f910: 6669 7265 7761 6c6c 640a 0a63 6c61 7373  firewalld..class
│ │ │ +0008f920: 2069 6e73 7461 6c6c 5f66 6972 6577 616c   install_firewal
│ │ │ +0008f930: 6c64 207b 0a20 2070 6163 6b61 6765 207b  ld {.  package {
│ │ │ +0008f940: 2027 6669 7265 7761 6c6c 6427 3a0a 2020   'firewalld':.  
│ │ │ +0008f950: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ +0008f960: 696e 7374 616c 6c65 6427 2c0a 2020 7d0a  installed',.  }.
│ │ │ +0008f970: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ +0008f980: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation OS │ │ │ +0008fa30: 4275 696c 6420 426c 7565 7072 696e 7420 Build Blueprint │ │ │ +0008fa40: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +0008fa50: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
.[
│ │ │ +0008fa90: 5b70 6163 6b61 6765 735d 5d0a 6e61 6d65  [packages]].name
│ │ │ +0008faa0: 203d 2022 6669 7265 7761 6c6c 6422 0a76   = "firewalld".v
│ │ │ +0008fab0: 6572 7369 6f6e 203d 2022 2a22 0a3c 2f63  ersion = "*".
│ │ │ 0008fad0: 3c2f 6469 763e 3c2f 7464 3e3c 2f74 723e │ │ │ 0008fae0: 3c2f 7462 6f64 793e 3c2f 7461 626c 653e
low
Disru │ │ │ +0008f880: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +0008f890: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +0008f8d0: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +0008f8e0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
│ │ │ 0008faf0: 3c2f 7464 3e3c 2f74 723e 3c74 7220 6461 Remediation OSB │ │ │ -00090aa0: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ -00090ab0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
.[c
│ │ │ -00090b00: 7573 746f 6d69 7a61 7469 6f6e 732e 7365  ustomizations.se
│ │ │ -00090b10: 7276 6963 6573 5d0a 656e 6162 6c65 6420  rvices].enabled 
│ │ │ -00090b20: 3d20 5b22 6669 7265 7761 6c6c 6422 5d0a  = ["firewalld"].
│ │ │ -00090b30: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -00090be0: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ -00090bf0: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
│ │ │ -00090c90: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
in
│ │ │ -00090d30: 636c 7564 6520 656e 6162 6c65 5f66 6972  clude enable_fir
│ │ │ -00090d40: 6577 616c 6c64 0a0a 636c 6173 7320 656e  ewalld..class en
│ │ │ -00090d50: 6162 6c65 5f66 6972 6577 616c 6c64 207b  able_firewalld {
│ │ │ -00090d60: 0a20 2073 6572 7669 6365 207b 2766 6972  .  service {'fir
│ │ │ -00090d70: 6577 616c 6c64 273a 0a20 2020 2065 6e61  ewalld':.    ena
│ │ │ -00090d80: 626c 6520 3d26 6774 3b20 7472 7565 2c0a  ble => true,.
│ │ │ -00090d90: 2020 2020 656e 7375 7265 203d 2667 743b      ensure =>
│ │ │ -00090da0: 2027 7275 6e6e 696e 6727 2c0a 2020 7d0a   'running',.  }.
│ │ │ -00090db0: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -00090dc0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -00090e70: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -00090e80: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
│ │ │ -00090c80: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00090cb0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00090cc0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00090d00: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -00090d10: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ -00090f00: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -00090f20: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -00090f70: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
- name: Gather 
│ │ │ -00090fc0: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -00090fd0: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -00090fe0: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -00090ff0: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -00091000: 204e 4953 542d 3830 302d 3137 312d 332e   NIST-800-171-3.
│ │ │ -00091010: 312e 330a 2020 2d20 4e49 5354 2d38 3030  1.3.  - NIST-800
│ │ │ -00091020: 2d31 3731 2d33 2e34 2e37 0a20 202d 204e  -171-3.4.7.  - N
│ │ │ -00091030: 4953 542d 3830 302d 3533 2d41 432d 340a  IST-800-53-AC-4.
│ │ │ -00091040: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -00091050: 4341 2d33 2835 290a 2020 2d20 4e49 5354  CA-3(5).  - NIST
│ │ │ -00091060: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -00091070: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -00091080: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ -00091090: 2d38 3030 2d35 332d 5343 2d37 2832 3129  -800-53-SC-7(21)
│ │ │ -000910a0: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ -000910b0: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ -000910c0: 2d31 2e32 2e31 0a20 202d 2065 6e61 626c  -1.2.1.  - enabl
│ │ │ -000910d0: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ -000910e0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -000910f0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -00091100: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -00091110: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -00091120: 6f74 5f6e 6565 6465 640a 2020 2d20 7365  ot_needed.  - se
│ │ │ -00091130: 7276 6963 655f 6669 7265 7761 6c6c 645f  rvice_firewalld_
│ │ │ -00091140: 656e 6162 6c65 640a 0a2d 206e 616d 653a  enabled..- name:
│ │ │ -00091150: 2056 6572 6966 7920 6669 7265 7761 6c6c   Verify firewall
│ │ │ -00091160: 6420 456e 6162 6c65 6420 2d20 456e 6162  d Enabled - Enab
│ │ │ -00091170: 6c65 2073 6572 7669 6365 2066 6972 6577  le service firew
│ │ │ -00091180: 616c 6c64 0a20 2062 6c6f 636b 3a0a 0a20  alld.  block:.. 
│ │ │ -00091190: 202d 206e 616d 653a 2047 6174 6865 7220   - name: Gather 
│ │ │ -000911a0: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -000911b0: 730a 2020 2020 616e 7369 626c 652e 6275  s.    ansible.bu
│ │ │ -000911c0: 696c 7469 6e2e 7061 636b 6167 655f 6661  iltin.package_fa
│ │ │ -000911d0: 6374 733a 0a20 2020 2020 206d 616e 6167  cts:.      manag
│ │ │ -000911e0: 6572 3a20 6175 746f 0a0a 2020 2d20 6e61  er: auto..  - na
│ │ │ -000911f0: 6d65 3a20 5665 7269 6679 2066 6972 6577  me: Verify firew
│ │ │ -00091200: 616c 6c64 2045 6e61 626c 6564 202d 2045  alld Enabled - E
│ │ │ -00091210: 6e61 626c 6520 5365 7276 6963 6520 6669  nable Service fi
│ │ │ -00091220: 7265 7761 6c6c 640a 2020 2020 616e 7369  rewalld.    ansi
│ │ │ -00091230: 626c 652e 6275 696c 7469 6e2e 7379 7374  ble.builtin.syst
│ │ │ -00091240: 656d 643a 0a20 2020 2020 206e 616d 653a  emd:.      name:
│ │ │ -00091250: 2066 6972 6577 616c 6c64 0a20 2020 2020   firewalld.     
│ │ │ -00091260: 2065 6e61 626c 6564 3a20 7472 7565 0a20   enabled: true. 
│ │ │ -00091270: 2020 2020 2073 7461 7465 3a20 7374 6172       state: star
│ │ │ -00091280: 7465 640a 2020 2020 2020 6d61 736b 6564  ted.      masked
│ │ │ -00091290: 3a20 6661 6c73 650a 2020 2020 7768 656e  : false.    when
│ │ │ -000912a0: 3a0a 2020 2020 2d20 2722 6669 7265 7761  :.    - '"firewa
│ │ │ -000912b0: 6c6c 6422 2069 6e20 616e 7369 626c 655f  lld" in ansible_
│ │ │ -000912c0: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ -000912d0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -000912e0: 2d38 3030 2d31 3731 2d33 2e31 2e33 0a20  -800-171-3.1.3. 
│ │ │ -000912f0: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ -00091300: 332e 342e 370a 2020 2d20 4e49 5354 2d38  3.4.7.  - NIST-8
│ │ │ -00091310: 3030 2d35 332d 4143 2d34 0a20 202d 204e  00-53-AC-4.  - N
│ │ │ -00091320: 4953 542d 3830 302d 3533 2d43 412d 3328  IST-800-53-CA-3(
│ │ │ -00091330: 3529 0a20 202d 204e 4953 542d 3830 302d  5).  - NIST-800-
│ │ │ -00091340: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ -00091350: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -00091360: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ -00091370: 3533 2d53 432d 3728 3231 290a 2020 2d20  53-SC-7(21).  - 
│ │ │ -00091380: 5043 492d 4453 5376 342d 312e 320a 2020  PCI-DSSv4-1.2.  
│ │ │ -00091390: 2d20 5043 492d 4453 5376 342d 312e 322e  - PCI-DSSv4-1.2.
│ │ │ -000913a0: 310a 2020 2d20 656e 6162 6c65 5f73 7472  1.  - enable_str
│ │ │ -000913b0: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ -000913c0: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ -000913d0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -000913e0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -000913f0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -00091400: 6564 6564 0a20 202d 2073 6572 7669 6365  eded.  - service
│ │ │ -00091410: 5f66 6972 6577 616c 6c64 5f65 6e61 626c  _firewalld_enabl
│ │ │ -00091420: 6564 0a20 202d 2073 7065 6369 616c 5f73  ed.  - special_s
│ │ │ -00091430: 6572 7669 6365 5f62 6c6f 636b 0a20 2077  ervice_block.  w
│ │ │ -00091440: 6865 6e3a 0a20 202d 2027 226b 6572 6e65  hen:.  - '"kerne
│ │ │ -00091450: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -00091460: 6374 732e 7061 636b 6167 6573 270a 2020  cts.packages'.  
│ │ │ -00091470: 2d20 2722 6669 7265 7761 6c6c 6422 2069  - '"firewalld" i
│ │ │ -00091480: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -00091490: 7061 636b 6167 6573 270a 3c2f 636f 6465  packages'.Remediation Ans
│ │ │ +00090aa0: 6962 6c65 2073 6e69 7070 6574 20e2 87b2  ible snippet ...
│ │ │ +00090ab0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
low
Disr │ │ │ -00090f30: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00090f40: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -00090f80: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ -00090f90: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexity: │ │ │ +00090b80: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00090b90: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +00090be0: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ +00090bf0: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ +00090c00: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ +00090c10: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ +00090c20: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ +00090c30: 4e49 5354 2d38 3030 2d31 3731 2d33 2e31  NIST-800-171-3.1
│ │ │ +00090c40: 2e33 0a20 202d 204e 4953 542d 3830 302d  .3.  - NIST-800-
│ │ │ +00090c50: 3137 312d 332e 342e 370a 2020 2d20 4e49  171-3.4.7.  - NI
│ │ │ +00090c60: 5354 2d38 3030 2d35 332d 4143 2d34 0a20  ST-800-53-AC-4. 
│ │ │ +00090c70: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +00090c80: 412d 3328 3529 0a20 202d 204e 4953 542d  A-3(5).  - NIST-
│ │ │ +00090c90: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +00090ca0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +00090cb0: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ +00090cc0: 3830 302d 3533 2d53 432d 3728 3231 290a  800-53-SC-7(21).
│ │ │ +00090cd0: 2020 2d20 5043 492d 4453 5376 342d 312e    - PCI-DSSv4-1.
│ │ │ +00090ce0: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ +00090cf0: 312e 322e 310a 2020 2d20 656e 6162 6c65  1.2.1.  - enable
│ │ │ +00090d00: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ +00090d10: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +00090d20: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +00090d30: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +00090d40: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ +00090d50: 745f 6e65 6564 6564 0a20 202d 2073 6572  t_needed.  - ser
│ │ │ +00090d60: 7669 6365 5f66 6972 6577 616c 6c64 5f65  vice_firewalld_e
│ │ │ +00090d70: 6e61 626c 6564 0a0a 2d20 6e61 6d65 3a20  nabled..- name: 
│ │ │ +00090d80: 5665 7269 6679 2066 6972 6577 616c 6c64  Verify firewalld
│ │ │ +00090d90: 2045 6e61 626c 6564 202d 2045 6e61 626c   Enabled - Enabl
│ │ │ +00090da0: 6520 7365 7276 6963 6520 6669 7265 7761  e service firewa
│ │ │ +00090db0: 6c6c 640a 2020 626c 6f63 6b3a 0a0a 2020  lld.  block:..  
│ │ │ +00090dc0: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ +00090dd0: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ +00090de0: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ +00090df0: 6c74 696e 2e70 6163 6b61 6765 5f66 6163  ltin.package_fac
│ │ │ +00090e00: 7473 3a0a 2020 2020 2020 6d61 6e61 6765  ts:.      manage
│ │ │ +00090e10: 723a 2061 7574 6f0a 0a20 202d 206e 616d  r: auto..  - nam
│ │ │ +00090e20: 653a 2056 6572 6966 7920 6669 7265 7761  e: Verify firewa
│ │ │ +00090e30: 6c6c 6420 456e 6162 6c65 6420 2d20 456e  lld Enabled - En
│ │ │ +00090e40: 6162 6c65 2053 6572 7669 6365 2066 6972  able Service fir
│ │ │ +00090e50: 6577 616c 6c64 0a20 2020 2061 6e73 6962  ewalld.    ansib
│ │ │ +00090e60: 6c65 2e62 7569 6c74 696e 2e73 7973 7465  le.builtin.syste
│ │ │ +00090e70: 6d64 3a0a 2020 2020 2020 6e61 6d65 3a20  md:.      name: 
│ │ │ +00090e80: 6669 7265 7761 6c6c 640a 2020 2020 2020  firewalld.      
│ │ │ +00090e90: 656e 6162 6c65 643a 2074 7275 650a 2020  enabled: true.  
│ │ │ +00090ea0: 2020 2020 7374 6174 653a 2073 7461 7274      state: start
│ │ │ +00090eb0: 6564 0a20 2020 2020 206d 6173 6b65 643a  ed.      masked:
│ │ │ +00090ec0: 2066 616c 7365 0a20 2020 2077 6865 6e3a   false.    when:
│ │ │ +00090ed0: 0a20 2020 202d 2027 2266 6972 6577 616c  .    - '"firewal
│ │ │ +00090ee0: 6c64 2220 696e 2061 6e73 6962 6c65 5f66  ld" in ansible_f
│ │ │ +00090ef0: 6163 7473 2e70 6163 6b61 6765 7327 0a20  acts.packages'. 
│ │ │ +00090f00: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +00090f10: 3830 302d 3137 312d 332e 312e 330a 2020  800-171-3.1.3.  
│ │ │ +00090f20: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33  - NIST-800-171-3
│ │ │ +00090f30: 2e34 2e37 0a20 202d 204e 4953 542d 3830  .4.7.  - NIST-80
│ │ │ +00090f40: 302d 3533 2d41 432d 340a 2020 2d20 4e49  0-53-AC-4.  - NI
│ │ │ +00090f50: 5354 2d38 3030 2d35 332d 4341 2d33 2835  ST-800-53-CA-3(5
│ │ │ +00090f60: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +00090f70: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +00090f80: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +00090f90: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +00090fa0: 332d 5343 2d37 2832 3129 0a20 202d 2050  3-SC-7(21).  - P
│ │ │ +00090fb0: 4349 2d44 5353 7634 2d31 2e32 0a20 202d  CI-DSSv4-1.2.  -
│ │ │ +00090fc0: 2050 4349 2d44 5353 7634 2d31 2e32 2e31   PCI-DSSv4-1.2.1
│ │ │ +00090fd0: 0a20 202d 2065 6e61 626c 655f 7374 7261  .  - enable_stra
│ │ │ +00090fe0: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ +00090ff0: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +00091000: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ +00091010: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +00091020: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +00091030: 6465 640a 2020 2d20 7365 7276 6963 655f  ded.  - service_
│ │ │ +00091040: 6669 7265 7761 6c6c 645f 656e 6162 6c65  firewalld_enable
│ │ │ +00091050: 640a 2020 2d20 7370 6563 6961 6c5f 7365  d.  - special_se
│ │ │ +00091060: 7276 6963 655f 626c 6f63 6b0a 2020 7768  rvice_block.  wh
│ │ │ +00091070: 656e 3a0a 2020 2d20 2722 6b65 726e 656c  en:.  - '"kernel
│ │ │ +00091080: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +00091090: 7473 2e70 6163 6b61 6765 7327 0a20 202d  ts.packages'.  -
│ │ │ +000910a0: 2027 2266 6972 6577 616c 6c64 2220 696e   '"firewalld" in
│ │ │ +000910b0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +000910c0: 6163 6b61 6765 7327 0a3c 2f63 6f64 653e  ackages'.
│ │ │ +000910d0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +00091180: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ +00091190: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +000911a0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +000911b0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +000911c0: 7365 2220 6964 3d22 6964 3130 3422 3e3c se" id="id104">< │ │ │ +000911d0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +000911e0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +000911f0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +00091200: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +00091210: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Disruption:Strategy: │ │ │ +000912a0: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c < │ │ │ +000912b0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
low
Disru │ │ │ +00090b60: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00090b70: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00090bb0: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +00090bc0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complex │ │ │ +00091220: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +00091230: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ +00091270: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +00091280: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
enable
include e
│ │ │ +000912d0: 6e61 626c 655f 6669 7265 7761 6c6c 640a  nable_firewalld.
│ │ │ +000912e0: 0a63 6c61 7373 2065 6e61 626c 655f 6669  .class enable_fi
│ │ │ +000912f0: 7265 7761 6c6c 6420 7b0a 2020 7365 7276  rewalld {.  serv
│ │ │ +00091300: 6963 6520 7b27 6669 7265 7761 6c6c 6427  ice {'firewalld'
│ │ │ +00091310: 3a0a 2020 2020 656e 6162 6c65 203d 2667  :.    enable =&g
│ │ │ +00091320: 743b 2074 7275 652c 0a20 2020 2065 6e73  t; true,.    ens
│ │ │ +00091330: 7572 6520 3d26 6774 3b20 2772 756e 6e69  ure => 'runni
│ │ │ +00091340: 6e67 272c 0a20 207d 0a7d 0a3c 2f63 6f64  ng',.  }.}.
Remed │ │ │ +00091400: 6961 7469 6f6e 204f 5342 7569 6c64 2042 iation OSBuild B │ │ │ +00091410: 6c75 6570 7269 6e74 2073 6e69 7070 6574 lueprint snippet │ │ │ +00091420: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
.[customi
│ │ │ +00091470: 7a61 7469 6f6e 732e 7365 7276 6963 6573  zations.services
│ │ │ +00091480: 5d0a 656e 6162 6c65 6420 3d20 5b22 6669  ].enabled = ["fi
│ │ │ +00091490: 7265 7761 6c6c 6422 5d0a 3c2f 636f 6465  rewalld"].
Remedi │ │ │ -000ae2f0: 6174 696f 6e20 4f53 4275 696c 6420 426c ation OSBuild Bl │ │ │ -000ae300: 7565 7072 696e 7420 736e 6970 7065 7420 ueprint snippet │ │ │ -000ae310: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
│ │ │ -000ae350: 3c63 6f64 653e 0a5b 6375 7374 6f6d 697a  .[customiz
│ │ │ -000ae360: 6174 696f 6e73 2e73 6572 7669 6365 735d  ations.services]
│ │ │ -000ae370: 0a6d 6173 6b65 6420 3d20 5b22 6e66 7461  .masked = ["nfta
│ │ │ -000ae380: 626c 6573 225d 0a3c 2f63 6f64 653e 3c2f  bles"].
Remediati │ │ │ -000ae440: 6f6e 2050 7570 7065 7420 736e 6970 7065 on Puppet snippe │ │ │ -000ae450: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -000ae4d0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -000ae4e0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -000ae500: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -000ae510: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -000ae530: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -000ae550: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ -000ae580: 636f 6465 3e69 6e63 6c75 6465 2064 6973  code>include dis
│ │ │ -000ae590: 6162 6c65 5f6e 6674 6162 6c65 730a 0a63  able_nftables..c
│ │ │ -000ae5a0: 6c61 7373 2064 6973 6162 6c65 5f6e 6674  lass disable_nft
│ │ │ -000ae5b0: 6162 6c65 7320 7b0a 2020 7365 7276 6963  ables {.  servic
│ │ │ -000ae5c0: 6520 7b27 6e66 7461 626c 6573 273a 0a20  e {'nftables':. 
│ │ │ -000ae5d0: 2020 2065 6e61 626c 6520 3d26 6774 3b20     enable => 
│ │ │ -000ae5e0: 6661 6c73 652c 0a20 2020 2065 6e73 7572  false,.    ensur
│ │ │ -000ae5f0: 6520 3d26 6774 3b20 2773 746f 7070 6564  e => 'stopped
│ │ │ -000ae600: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e  ',.  }.}.
│ │ │ -000ae610: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -000ae6c0: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -000ae6d0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -000ae6e0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -000ae710: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -000ae780: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -000ae7a0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -000ae7d0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -000ae760: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -000ae770: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -000ae7b0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -000ae7c0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

- name: │ │ │ -000ae810: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ -000ae820: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ -000ae830: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ -000ae840: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ -000ae850: 6167 733a 0a20 202d 2050 4349 2d44 5353 ags:. - PCI-DSS │ │ │ -000ae860: 7634 2d31 2e32 0a20 202d 2050 4349 2d44 v4-1.2. - PCI-D │ │ │ -000ae870: 5353 7634 2d31 2e32 2e31 0a20 202d 2064 SSv4-1.2.1. - d │ │ │ -000ae880: 6973 6162 6c65 5f73 7472 6174 6567 790a isable_strategy. │ │ │ -000ae890: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ -000ae8a0: 7479 0a20 202d 206c 6f77 5f64 6973 7275 ty. - low_disru │ │ │ -000ae8b0: 7074 696f 6e0a 2020 2d20 6d65 6469 756d ption. - medium │ │ │ -000ae8c0: 5f73 6576 6572 6974 790a 2020 2d20 6e6f _severity. - no │ │ │ -000ae8d0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20 _reboot_needed. │ │ │ -000ae8e0: 202d 2073 6572 7669 6365 5f6e 6674 6162 - service_nftab │ │ │ -000ae8f0: 6c65 735f 6469 7361 626c 6564 0a0a 2d20 les_disabled..- │ │ │ -000ae900: 6e61 6d65 3a20 5665 7269 6679 206e 6674 name: Verify nft │ │ │ -000ae910: 6162 6c65 7320 5365 7276 6963 6520 6973 ables Service is │ │ │ -000ae920: 2044 6973 6162 6c65 6420 2d20 4469 7361 Disabled - Disa │ │ │ -000ae930: 626c 6520 7365 7276 6963 6520 6e66 7461 ble service nfta │ │ │ -000ae940: 626c 6573 0a20 2062 6c6f 636b 3a0a 0a20 bles. block:.. │ │ │ -000ae950: 202d 206e 616d 653a 2056 6572 6966 7920 - name: Verify │ │ │ -000ae960: 6e66 7461 626c 6573 2053 6572 7669 6365 nftables Service │ │ │ -000ae970: 2069 7320 4469 7361 626c 6564 202d 2043 is Disabled - C │ │ │ -000ae980: 6f6c 6c65 6374 2073 7973 7465 6d64 2053 ollect systemd S │ │ │ -000ae990: 6572 7669 6365 7320 5072 6573 656e 7420 ervices Present │ │ │ -000ae9a0: 696e 0a20 2020 2020 2074 6865 2053 7973 in. the Sys │ │ │ -000ae9b0: 7465 6d0a 2020 2020 616e 7369 626c 652e tem. ansible. │ │ │ -000ae9c0: 6275 696c 7469 6e2e 636f 6d6d 616e 643a builtin.command: │ │ │ -000ae9d0: 2073 7973 7465 6d63 746c 202d 7120 6c69 systemctl -q li │ │ │ -000ae9e0: 7374 2d75 6e69 742d 6669 6c65 7320 2d2d st-unit-files -- │ │ │ -000ae9f0: 7479 7065 2073 6572 7669 6365 0a20 2020 type service. │ │ │ -000aea00: 2072 6567 6973 7465 723a 2073 6572 7669 register: servi │ │ │ -000aea10: 6365 5f65 7869 7374 730a 2020 2020 6368 ce_exists. ch │ │ │ -000aea20: 616e 6765 645f 7768 656e 3a20 6661 6c73 anged_when: fals │ │ │ -000aea30: 650a 2020 2020 6661 696c 6564 5f77 6865 e. failed_whe │ │ │ -000aea40: 6e3a 2073 6572 7669 6365 5f65 7869 7374 n: service_exist │ │ │ -000aea50: 732e 7263 206e 6f74 2069 6e20 5b30 2c20 s.rc not in [0, │ │ │ -000aea60: 315d 0a20 2020 2063 6865 636b 5f6d 6f64 1]. check_mod │ │ │ -000aea70: 653a 2066 616c 7365 0a0a 2020 2d20 6e61 e: false.. - na │ │ │ -000aea80: 6d65 3a20 5665 7269 6679 206e 6674 6162 me: Verify nftab │ │ │ -000aea90: 6c65 7320 5365 7276 6963 6520 6973 2044 les Service is D │ │ │ -000aeaa0: 6973 6162 6c65 6420 2d20 456e 7375 7265 isabled - Ensure │ │ │ -000aeab0: 206e 6674 6162 6c65 732e 7365 7276 6963 nftables.servic │ │ │ -000aeac0: 6520 6973 204d 6173 6b65 640a 2020 2020 e is Masked. │ │ │ -000aead0: 616e 7369 626c 652e 6275 696c 7469 6e2e ansible.builtin. │ │ │ -000aeae0: 7379 7374 656d 643a 0a20 2020 2020 206e systemd:. n │ │ │ -000aeaf0: 616d 653a 206e 6674 6162 6c65 732e 7365 ame: nftables.se │ │ │ -000aeb00: 7276 6963 650a 2020 2020 2020 7374 6174 rvice. stat │ │ │ -000aeb10: 653a 2073 746f 7070 6564 0a20 2020 2020 e: stopped. │ │ │ -000aeb20: 2065 6e61 626c 6564 3a20 6661 6c73 650a enabled: false. │ │ │ -000aeb30: 2020 2020 2020 6d61 736b 6564 3a20 7472 masked: tr │ │ │ -000aeb40: 7565 0a20 2020 2077 6865 6e3a 2073 6572 ue. when: ser │ │ │ -000aeb50: 7669 6365 5f65 7869 7374 732e 7374 646f vice_exists.stdo │ │ │ -000aeb60: 7574 5f6c 696e 6573 2069 7320 7365 6172 ut_lines is sear │ │ │ -000aeb70: 6368 2822 6e66 7461 626c 6573 2e73 6572 ch("nftables.ser │ │ │ -000aeb80: 7669 6365 222c 206d 756c 7469 6c69 6e65 vice", multiline │ │ │ -000aeb90: 3d54 7275 6529 0a0a 2020 2d20 6e61 6d65 =True).. - name │ │ │ -000aeba0: 3a20 556e 6974 2053 6f63 6b65 7420 4578 : Unit Socket Ex │ │ │ -000aebb0: 6973 7473 202d 206e 6674 6162 6c65 732e ists - nftables. │ │ │ -000aebc0: 736f 636b 6574 0a20 2020 2061 6e73 6962 socket. ansib │ │ │ -000aebd0: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61 le.builtin.comma │ │ │ -000aebe0: 6e64 3a20 7379 7374 656d 6374 6c20 2d71 nd: systemctl -q │ │ │ -000aebf0: 206c 6973 742d 756e 6974 2d66 696c 6573 list-unit-files │ │ │ -000aec00: 206e 6674 6162 6c65 732e 736f 636b 6574 nftables.socket │ │ │ -000aec10: 0a20 2020 2072 6567 6973 7465 723a 2073 . register: s │ │ │ -000aec20: 6f63 6b65 745f 6669 6c65 5f65 7869 7374 ocket_file_exist │ │ │ -000aec30: 730a 2020 2020 6368 616e 6765 645f 7768 s. changed_wh │ │ │ -000aec40: 656e 3a20 6661 6c73 650a 2020 2020 6661 en: false. fa │ │ │ -000aec50: 696c 6564 5f77 6865 6e3a 2073 6f63 6b65 iled_when: socke │ │ │ -000aec60: 745f 6669 6c65 5f65 7869 7374 732e 7263 t_file_exists.rc │ │ │ -000aec70: 206e 6f74 2069 6e20 5b30 2c20 315d 0a20 not in [0, 1]. │ │ │ -000aec80: 2020 2063 6865 636b 5f6d 6f64 653a 2066 check_mode: f │ │ │ -000aec90: 616c 7365 0a0a 2020 2d20 6e61 6d65 3a20 alse.. - name: │ │ │ -000aeca0: 5665 7269 6679 206e 6674 6162 6c65 7320 Verify nftables │ │ │ -000aecb0: 5365 7276 6963 6520 6973 2044 6973 6162 Service is Disab │ │ │ -000aecc0: 6c65 6420 2d20 4469 7361 626c 6520 536f led - Disable So │ │ │ -000aecd0: 636b 6574 206e 6674 6162 6c65 730a 2020 cket nftables. │ │ │ -000aece0: 2020 616e 7369 626c 652e 6275 696c 7469 ansible.builti │ │ │ -000aecf0: 6e2e 7379 7374 656d 643a 0a20 2020 2020 n.systemd:. │ │ │ -000aed00: 206e 616d 653a 206e 6674 6162 6c65 732e name: nftables. │ │ │ -000aed10: 736f 636b 6574 0a20 2020 2020 2065 6e61 socket. ena │ │ │ -000aed20: 626c 6564 3a20 6661 6c73 650a 2020 2020 bled: false. │ │ │ -000aed30: 2020 7374 6174 653a 2073 746f 7070 6564 state: stopped │ │ │ -000aed40: 0a20 2020 2020 206d 6173 6b65 643a 2074 . masked: t │ │ │ -000aed50: 7275 650a 2020 2020 7768 656e 3a20 736f rue. when: so │ │ │ -000aed60: 636b 6574 5f66 696c 655f 6578 6973 7473 cket_file_exists │ │ │ -000aed70: 2e73 7464 6f75 745f 6c69 6e65 7320 6973 .stdout_lines is │ │ │ -000aed80: 2073 6561 7263 6828 226e 6674 6162 6c65 search("nftable │ │ │ -000aed90: 732e 736f 636b 6574 222c 206d 756c 7469 s.socket", multi │ │ │ -000aeda0: 6c69 6e65 3d54 7275 6529 0a20 2074 6167 line=True). tag │ │ │ -000aedb0: 733a 0a20 202d 2050 4349 2d44 5353 7634 s:. - PCI-DSSv4 │ │ │ -000aedc0: 2d31 2e32 0a20 202d 2050 4349 2d44 5353 -1.2. - PCI-DSS │ │ │ -000aedd0: 7634 2d31 2e32 2e31 0a20 202d 2064 6973 v4-1.2.1. - dis │ │ │ -000aede0: 6162 6c65 5f73 7472 6174 6567 790a 2020 able_strategy. │ │ │ -000aedf0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479 - low_complexity │ │ │ -000aee00: 0a20 202d 206c 6f77 5f64 6973 7275 7074 . - low_disrupt │ │ │ -000aee10: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73 ion. - medium_s │ │ │ -000aee20: 6576 6572 6974 790a 2020 2d20 6e6f 5f72 everity. - no_r │ │ │ -000aee30: 6562 6f6f 745f 6e65 6564 6564 0a20 202d eboot_needed. - │ │ │ -000aee40: 2073 6572 7669 6365 5f6e 6674 6162 6c65 service_nftable │ │ │ -000aee50: 735f 6469 7361 626c 6564 0a20 202d 2073 s_disabled. - s │ │ │ -000aee60: 7065 6369 616c 5f73 6572 7669 6365 5f62 pecial_service_b │ │ │ -000aee70: 6c6f 636b 0a20 2077 6865 6e3a 2028 2022 lock. when: ( " │ │ │ -000aee80: 6669 7265 7761 6c6c 6422 2069 6e20 616e firewalld" in an │ │ │ -000aee90: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ -000aeea0: 6167 6573 2061 6e64 2022 6e66 7461 626c ages and "nftabl │ │ │ -000aeeb0: 6573 2220 696e 2061 6e73 6962 6c65 5f66 es" in ansible_f │ │ │ -000aeec0: 6163 7473 2e70 6163 6b61 6765 730a 2020 acts.packages. │ │ │ -000aeed0: 2020 616e 6420 226b 6572 6e65 6c22 2069 and "kernel" i │ │ │ -000aeee0: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -000aeef0: 7061 636b 6167 6573 2029 0a3c 2f63 6f64 packages ).

│ │ │ +000ae3b0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +000ae3d0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +000ae400: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +000ae390: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +000ae3a0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +000ae3c0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +000ae3e0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +000ae3f0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ +000ae430: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ +000ae440: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ +000ae450: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ +000ae460: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ +000ae470: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ +000ae480: 7461 6773 3a0a 2020 2d20 5043 492d 4453 tags:. - PCI-DS │ │ │ +000ae490: 5376 342d 312e 320a 2020 2d20 5043 492d Sv4-1.2. - PCI- │ │ │ +000ae4a0: 4453 5376 342d 312e 322e 310a 2020 2d20 DSSv4-1.2.1. - │ │ │ +000ae4b0: 6469 7361 626c 655f 7374 7261 7465 6779 disable_strategy │ │ │ +000ae4c0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ +000ae4d0: 6974 790a 2020 2d20 6c6f 775f 6469 7372 ity. - low_disr │ │ │ +000ae4e0: 7570 7469 6f6e 0a20 202d 206d 6564 6975 uption. - mediu │ │ │ +000ae4f0: 6d5f 7365 7665 7269 7479 0a20 202d 206e m_severity. - n │ │ │ +000ae500: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a o_reboot_needed. │ │ │ +000ae510: 2020 2d20 7365 7276 6963 655f 6e66 7461 - service_nfta │ │ │ +000ae520: 626c 6573 5f64 6973 6162 6c65 640a 0a2d bles_disabled..- │ │ │ +000ae530: 206e 616d 653a 2056 6572 6966 7920 6e66 name: Verify nf │ │ │ +000ae540: 7461 626c 6573 2053 6572 7669 6365 2069 tables Service i │ │ │ +000ae550: 7320 4469 7361 626c 6564 202d 2044 6973 s Disabled - Dis │ │ │ +000ae560: 6162 6c65 2073 6572 7669 6365 206e 6674 able service nft │ │ │ +000ae570: 6162 6c65 730a 2020 626c 6f63 6b3a 0a0a ables. block:.. │ │ │ +000ae580: 2020 2d20 6e61 6d65 3a20 5665 7269 6679 - name: Verify │ │ │ +000ae590: 206e 6674 6162 6c65 7320 5365 7276 6963 nftables Servic │ │ │ +000ae5a0: 6520 6973 2044 6973 6162 6c65 6420 2d20 e is Disabled - │ │ │ +000ae5b0: 436f 6c6c 6563 7420 7379 7374 656d 6420 Collect systemd │ │ │ +000ae5c0: 5365 7276 6963 6573 2050 7265 7365 6e74 Services Present │ │ │ +000ae5d0: 2069 6e0a 2020 2020 2020 7468 6520 5379 in. the Sy │ │ │ +000ae5e0: 7374 656d 0a20 2020 2061 6e73 6962 6c65 stem. ansible │ │ │ +000ae5f0: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64 .builtin.command │ │ │ +000ae600: 3a20 7379 7374 656d 6374 6c20 2d71 206c : systemctl -q l │ │ │ +000ae610: 6973 742d 756e 6974 2d66 696c 6573 202d ist-unit-files - │ │ │ +000ae620: 2d74 7970 6520 7365 7276 6963 650a 2020 -type service. │ │ │ +000ae630: 2020 7265 6769 7374 6572 3a20 7365 7276 register: serv │ │ │ +000ae640: 6963 655f 6578 6973 7473 0a20 2020 2063 ice_exists. c │ │ │ +000ae650: 6861 6e67 6564 5f77 6865 6e3a 2066 616c hanged_when: fal │ │ │ +000ae660: 7365 0a20 2020 2066 6169 6c65 645f 7768 se. failed_wh │ │ │ +000ae670: 656e 3a20 7365 7276 6963 655f 6578 6973 en: service_exis │ │ │ +000ae680: 7473 2e72 6320 6e6f 7420 696e 205b 302c ts.rc not in [0, │ │ │ +000ae690: 2031 5d0a 2020 2020 6368 6563 6b5f 6d6f 1]. check_mo │ │ │ +000ae6a0: 6465 3a20 6661 6c73 650a 0a20 202d 206e de: false.. - n │ │ │ +000ae6b0: 616d 653a 2056 6572 6966 7920 6e66 7461 ame: Verify nfta │ │ │ +000ae6c0: 626c 6573 2053 6572 7669 6365 2069 7320 bles Service is │ │ │ +000ae6d0: 4469 7361 626c 6564 202d 2045 6e73 7572 Disabled - Ensur │ │ │ +000ae6e0: 6520 6e66 7461 626c 6573 2e73 6572 7669 e nftables.servi │ │ │ +000ae6f0: 6365 2069 7320 4d61 736b 6564 0a20 2020 ce is Masked. │ │ │ +000ae700: 2061 6e73 6962 6c65 2e62 7569 6c74 696e ansible.builtin │ │ │ +000ae710: 2e73 7973 7465 6d64 3a0a 2020 2020 2020 .systemd:. │ │ │ +000ae720: 6e61 6d65 3a20 6e66 7461 626c 6573 2e73 name: nftables.s │ │ │ +000ae730: 6572 7669 6365 0a20 2020 2020 2073 7461 ervice. sta │ │ │ +000ae740: 7465 3a20 7374 6f70 7065 640a 2020 2020 te: stopped. │ │ │ +000ae750: 2020 656e 6162 6c65 643a 2066 616c 7365 enabled: false │ │ │ +000ae760: 0a20 2020 2020 206d 6173 6b65 643a 2074 . masked: t │ │ │ +000ae770: 7275 650a 2020 2020 7768 656e 3a20 7365 rue. when: se │ │ │ +000ae780: 7276 6963 655f 6578 6973 7473 2e73 7464 rvice_exists.std │ │ │ +000ae790: 6f75 745f 6c69 6e65 7320 6973 2073 6561 out_lines is sea │ │ │ +000ae7a0: 7263 6828 226e 6674 6162 6c65 732e 7365 rch("nftables.se │ │ │ +000ae7b0: 7276 6963 6522 2c20 6d75 6c74 696c 696e rvice", multilin │ │ │ +000ae7c0: 653d 5472 7565 290a 0a20 202d 206e 616d e=True).. - nam │ │ │ +000ae7d0: 653a 2055 6e69 7420 536f 636b 6574 2045 e: Unit Socket E │ │ │ +000ae7e0: 7869 7374 7320 2d20 6e66 7461 626c 6573 xists - nftables │ │ │ +000ae7f0: 2e73 6f63 6b65 740a 2020 2020 616e 7369 .socket. ansi │ │ │ +000ae800: 626c 652e 6275 696c 7469 6e2e 636f 6d6d ble.builtin.comm │ │ │ +000ae810: 616e 643a 2073 7973 7465 6d63 746c 202d and: systemctl - │ │ │ +000ae820: 7120 6c69 7374 2d75 6e69 742d 6669 6c65 q list-unit-file │ │ │ +000ae830: 7320 6e66 7461 626c 6573 2e73 6f63 6b65 s nftables.socke │ │ │ +000ae840: 740a 2020 2020 7265 6769 7374 6572 3a20 t. register: │ │ │ +000ae850: 736f 636b 6574 5f66 696c 655f 6578 6973 socket_file_exis │ │ │ +000ae860: 7473 0a20 2020 2063 6861 6e67 6564 5f77 ts. changed_w │ │ │ +000ae870: 6865 6e3a 2066 616c 7365 0a20 2020 2066 hen: false. f │ │ │ +000ae880: 6169 6c65 645f 7768 656e 3a20 736f 636b ailed_when: sock │ │ │ +000ae890: 6574 5f66 696c 655f 6578 6973 7473 2e72 et_file_exists.r │ │ │ +000ae8a0: 6320 6e6f 7420 696e 205b 302c 2031 5d0a c not in [0, 1]. │ │ │ +000ae8b0: 2020 2020 6368 6563 6b5f 6d6f 6465 3a20 check_mode: │ │ │ +000ae8c0: 6661 6c73 650a 0a20 202d 206e 616d 653a false.. - name: │ │ │ +000ae8d0: 2056 6572 6966 7920 6e66 7461 626c 6573 Verify nftables │ │ │ +000ae8e0: 2053 6572 7669 6365 2069 7320 4469 7361 Service is Disa │ │ │ +000ae8f0: 626c 6564 202d 2044 6973 6162 6c65 2053 bled - Disable S │ │ │ +000ae900: 6f63 6b65 7420 6e66 7461 626c 6573 0a20 ocket nftables. │ │ │ +000ae910: 2020 2061 6e73 6962 6c65 2e62 7569 6c74 ansible.built │ │ │ +000ae920: 696e 2e73 7973 7465 6d64 3a0a 2020 2020 in.systemd:. │ │ │ +000ae930: 2020 6e61 6d65 3a20 6e66 7461 626c 6573 name: nftables │ │ │ +000ae940: 2e73 6f63 6b65 740a 2020 2020 2020 656e .socket. en │ │ │ +000ae950: 6162 6c65 643a 2066 616c 7365 0a20 2020 abled: false. │ │ │ +000ae960: 2020 2073 7461 7465 3a20 7374 6f70 7065 state: stoppe │ │ │ +000ae970: 640a 2020 2020 2020 6d61 736b 6564 3a20 d. masked: │ │ │ +000ae980: 7472 7565 0a20 2020 2077 6865 6e3a 2073 true. when: s │ │ │ +000ae990: 6f63 6b65 745f 6669 6c65 5f65 7869 7374 ocket_file_exist │ │ │ +000ae9a0: 732e 7374 646f 7574 5f6c 696e 6573 2069 s.stdout_lines i │ │ │ +000ae9b0: 7320 7365 6172 6368 2822 6e66 7461 626c s search("nftabl │ │ │ +000ae9c0: 6573 2e73 6f63 6b65 7422 2c20 6d75 6c74 es.socket", mult │ │ │ +000ae9d0: 696c 696e 653d 5472 7565 290a 2020 7461 iline=True). ta │ │ │ +000ae9e0: 6773 3a0a 2020 2d20 5043 492d 4453 5376 gs:. - PCI-DSSv │ │ │ +000ae9f0: 342d 312e 320a 2020 2d20 5043 492d 4453 4-1.2. - PCI-DS │ │ │ +000aea00: 5376 342d 312e 322e 310a 2020 2d20 6469 Sv4-1.2.1. - di │ │ │ +000aea10: 7361 626c 655f 7374 7261 7465 6779 0a20 sable_strategy. │ │ │ +000aea20: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ +000aea30: 790a 2020 2d20 6c6f 775f 6469 7372 7570 y. - low_disrup │ │ │ +000aea40: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f tion. - medium_ │ │ │ +000aea50: 7365 7665 7269 7479 0a20 202d 206e 6f5f severity. - no_ │ │ │ +000aea60: 7265 626f 6f74 5f6e 6565 6465 640a 2020 reboot_needed. │ │ │ +000aea70: 2d20 7365 7276 6963 655f 6e66 7461 626c - service_nftabl │ │ │ +000aea80: 6573 5f64 6973 6162 6c65 640a 2020 2d20 es_disabled. - │ │ │ +000aea90: 7370 6563 6961 6c5f 7365 7276 6963 655f special_service_ │ │ │ +000aeaa0: 626c 6f63 6b0a 2020 7768 656e 3a20 2820 block. when: ( │ │ │ +000aeab0: 2266 6972 6577 616c 6c64 2220 696e 2061 "firewalld" in a │ │ │ +000aeac0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ +000aead0: 6b61 6765 7320 616e 6420 226e 6674 6162 kages and "nftab │ │ │ +000aeae0: 6c65 7322 2069 6e20 616e 7369 626c 655f les" in ansible_ │ │ │ +000aeaf0: 6661 6374 732e 7061 636b 6167 6573 0a20 facts.packages. │ │ │ +000aeb00: 2020 2061 6e64 2022 6b65 726e 656c 2220 and "kernel" │ │ │ +000aeb10: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ +000aeb20: 2e70 6163 6b61 6765 7320 290a 3c2f 636f .packages ).
< │ │ │ +000aeb40: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +000aeb50: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +000aeb60: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +000aeb70: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +000aeb80: 6431 3330 2220 7461 6269 6e64 6578 3d22 d130" tabindex=" │ │ │ +000aeb90: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +000aeba0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +000aebb0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +000aebc0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +000aebd0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +000aebe0: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ +000aebf0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +000aec80: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +000aec90: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +000aecb0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +000aecd0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +000aece0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ +000aed20: 7072 653e 3c63 6f64 653e 696e 636c 7564 pre>includ │ │ │ +000aed30: 6520 6469 7361 626c 655f 6e66 7461 626c e disable_nftabl │ │ │ +000aed40: 6573 0a0a 636c 6173 7320 6469 7361 626c es..class disabl │ │ │ +000aed50: 655f 6e66 7461 626c 6573 207b 0a20 2073 e_nftables {. s │ │ │ +000aed60: 6572 7669 6365 207b 276e 6674 6162 6c65 ervice {'nftable │ │ │ +000aed70: 7327 3a0a 2020 2020 656e 6162 6c65 203d s':. enable = │ │ │ +000aed80: 2667 743b 2066 616c 7365 2c0a 2020 2020 > false,. │ │ │ +000aed90: 656e 7375 7265 203d 2667 743b 2027 7374 ensure => 'st │ │ │ +000aeda0: 6f70 7065 6427 2c0a 2020 7d0a 7d0a 3c2f opped',. }.}.
Re │ │ │ +000aee60: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ +000aee70: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ +000aee80: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +000aee90: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +000aeea0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +000aeeb0: 7365 2220 6964 3d22 6964 3133 3122 3e3c se" id="id131">< │ │ │ +000aeec0: 7072 653e 3c63 6f64 653e 0a5b 6375 7374 pre>.[cust │ │ │ +000aeed0: 6f6d 697a 6174 696f 6e73 2e73 6572 7669 omizations.servi │ │ │ +000aeee0: 6365 735d 0a6d 6173 6b65 6420 3d20 5b22 ces].masked = [" │ │ │ +000aeef0: 6e66 7461 626c 6573 225d 0a3c 2f63 6f64 nftables"].
Remediation OSB │ │ │ -000dfc30: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ -000dfc40: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
.[[
│ │ │ -000dfc90: 7061 636b 6167 6573 5d5d 0a6e 616d 6520  packages]].name 
│ │ │ -000dfca0: 3d20 226c 6962 7365 6c69 6e75 7822 0a76  = "libselinux".v
│ │ │ -000dfcb0: 6572 7369 6f6e 203d 2022 2a22 0a3c 2f63  ersion = "*".
│ │ │ -000dfcd0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -000dfd70: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ -000dfd80: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -000dfd90: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -000dfe10: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -000dfe40: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -000dfe60: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -000dfe70: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -000dfe90: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -000dfeb0: 3c70 7265 3e3c 636f 6465 3e69 6e63 6c75
inclu
│ │ │ -000dfec0: 6465 2069 6e73 7461 6c6c 5f6c 6962 7365  de install_libse
│ │ │ -000dfed0: 6c69 6e75 780a 0a63 6c61 7373 2069 6e73  linux..class ins
│ │ │ -000dfee0: 7461 6c6c 5f6c 6962 7365 6c69 6e75 7820  tall_libselinux 
│ │ │ -000dfef0: 7b0a 2020 7061 636b 6167 6520 7b20 276c  {.  package { 'l
│ │ │ -000dff00: 6962 7365 6c69 6e75 7827 3a0a 2020 2020  ibselinux':.    
│ │ │ -000dff10: 656e 7375 7265 203d 2667 743b 2027 696e  ensure => 'in
│ │ │ -000dff20: 7374 616c 6c65 6427 2c0a 2020 7d0a 7d0a  stalled',.  }.}.
│ │ │ -000dff30: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -000dffe0: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -000dfff0: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -000e0000: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -000e00d0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -000e00e0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
-
│ │ │ -000e0130: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ -000e0140: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ -000e0150: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ -000e0160: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ -000e0170: 746f 0a20 2074 6167 733a 0a20 202d 2050  to.  tags:.  - P
│ │ │ -000e0180: 4349 2d44 5353 7634 2d31 2e32 0a20 202d  CI-DSSv4-1.2.  -
│ │ │ -000e0190: 2050 4349 2d44 5353 7634 2d31 2e32 2e36   PCI-DSSv4-1.2.6
│ │ │ -000e01a0: 0a20 202d 2065 6e61 626c 655f 7374 7261  .  - enable_stra
│ │ │ -000e01b0: 7465 6779 0a20 202d 2068 6967 685f 7365  tegy.  - high_se
│ │ │ -000e01c0: 7665 7269 7479 0a20 202d 206c 6f77 5f63  verity.  - low_c
│ │ │ -000e01d0: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -000e01e0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -000e01f0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -000e0200: 640a 2020 2d20 7061 636b 6167 655f 6c69  d.  - package_li
│ │ │ -000e0210: 6273 656c 696e 7578 5f69 6e73 7461 6c6c  bselinux_install
│ │ │ -000e0220: 6564 0a0a 2d20 6e61 6d65 3a20 456e 7375  ed..- name: Ensu
│ │ │ -000e0230: 7265 206c 6962 7365 6c69 6e75 7820 6973  re libselinux is
│ │ │ -000e0240: 2069 6e73 7461 6c6c 6564 0a20 2061 6e73   installed.  ans
│ │ │ -000e0250: 6962 6c65 2e62 7569 6c74 696e 2e70 6163  ible.builtin.pac
│ │ │ -000e0260: 6b61 6765 3a0a 2020 2020 6e61 6d65 3a20  kage:.    name: 
│ │ │ -000e0270: 6c69 6273 656c 696e 7578 0a20 2020 2073  libselinux.    s
│ │ │ -000e0280: 7461 7465 3a20 7072 6573 656e 740a 2020  tate: present.  
│ │ │ -000e0290: 7768 656e 3a20 2722 6b65 726e 656c 2220  when: '"kernel" 
│ │ │ -000e02a0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -000e02b0: 2e70 6163 6b61 6765 7327 0a20 2074 6167  .packages'.  tag
│ │ │ -000e02c0: 733a 0a20 202d 2050 4349 2d44 5353 7634  s:.  - PCI-DSSv4
│ │ │ -000e02d0: 2d31 2e32 0a20 202d 2050 4349 2d44 5353  -1.2.  - PCI-DSS
│ │ │ -000e02e0: 7634 2d31 2e32 2e36 0a20 202d 2065 6e61  v4-1.2.6.  - ena
│ │ │ -000e02f0: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ -000e0300: 2068 6967 685f 7365 7665 7269 7479 0a20   high_severity. 
│ │ │ -000e0310: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -000e0320: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -000e0330: 7469 6f6e 0a20 202d 206e 6f5f 7265 626f  tion.  - no_rebo
│ │ │ -000e0340: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ -000e0350: 636b 6167 655f 6c69 6273 656c 696e 7578  ckage_libselinux
│ │ │ -000e0360: 5f69 6e73 7461 6c6c 6564 0a3c 2f63 6f64  _installed.Remediation Ans
│ │ │ +000dfc30: 6962 6c65 2073 6e69 7070 6574 20e2 87b2  ible snippet ...
│ │ │ +000dfc40: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
Complexity:low
Disrup │ │ │ -000e00b0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -000e00c0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -000e0100: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -000e0110: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity: │ │ │ +000dfd10: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +000dfd20: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +000dfd70: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ +000dfd80: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ +000dfd90: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ +000dfda0: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ +000dfdb0: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ +000dfdc0: 5043 492d 4453 5376 342d 312e 320a 2020  PCI-DSSv4-1.2.  
│ │ │ +000dfdd0: 2d20 5043 492d 4453 5376 342d 312e 322e  - PCI-DSSv4-1.2.
│ │ │ +000dfde0: 360a 2020 2d20 656e 6162 6c65 5f73 7472  6.  - enable_str
│ │ │ +000dfdf0: 6174 6567 790a 2020 2d20 6869 6768 5f73  ategy.  - high_s
│ │ │ +000dfe00: 6576 6572 6974 790a 2020 2d20 6c6f 775f  everity.  - low_
│ │ │ +000dfe10: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +000dfe20: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +000dfe30: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +000dfe40: 6564 0a20 202d 2070 6163 6b61 6765 5f6c  ed.  - package_l
│ │ │ +000dfe50: 6962 7365 6c69 6e75 785f 696e 7374 616c  ibselinux_instal
│ │ │ +000dfe60: 6c65 640a 0a2d 206e 616d 653a 2045 6e73  led..- name: Ens
│ │ │ +000dfe70: 7572 6520 6c69 6273 656c 696e 7578 2069  ure libselinux i
│ │ │ +000dfe80: 7320 696e 7374 616c 6c65 640a 2020 616e  s installed.  an
│ │ │ +000dfe90: 7369 626c 652e 6275 696c 7469 6e2e 7061  sible.builtin.pa
│ │ │ +000dfea0: 636b 6167 653a 0a20 2020 206e 616d 653a  ckage:.    name:
│ │ │ +000dfeb0: 206c 6962 7365 6c69 6e75 780a 2020 2020   libselinux.    
│ │ │ +000dfec0: 7374 6174 653a 2070 7265 7365 6e74 0a20  state: present. 
│ │ │ +000dfed0: 2077 6865 6e3a 2027 226b 6572 6e65 6c22   when: '"kernel"
│ │ │ +000dfee0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +000dfef0: 732e 7061 636b 6167 6573 270a 2020 7461  s.packages'.  ta
│ │ │ +000dff00: 6773 3a0a 2020 2d20 5043 492d 4453 5376  gs:.  - PCI-DSSv
│ │ │ +000dff10: 342d 312e 320a 2020 2d20 5043 492d 4453  4-1.2.  - PCI-DS
│ │ │ +000dff20: 5376 342d 312e 322e 360a 2020 2d20 656e  Sv4-1.2.6.  - en
│ │ │ +000dff30: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ +000dff40: 2d20 6869 6768 5f73 6576 6572 6974 790a  - high_severity.
│ │ │ +000dff50: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +000dff60: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ +000dff70: 7074 696f 6e0a 2020 2d20 6e6f 5f72 6562  ption.  - no_reb
│ │ │ +000dff80: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ +000dff90: 6163 6b61 6765 5f6c 6962 7365 6c69 6e75  ackage_libselinu
│ │ │ +000dffa0: 785f 696e 7374 616c 6c65 640a 3c2f 636f  x_installed.
< │ │ │ +000dffc0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +000dffd0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +000dffe0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +000dfff0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +000e0000: 6432 3130 2220 7461 6269 6e64 6578 3d22 d210" tabindex=" │ │ │ +000e0010: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +000e0020: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +000e0030: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +000e0040: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +000e0050: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +000e0060: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ +000e0070: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
low
Disru │ │ │ +000dfcf0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +000dfd00: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +000dfd40: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +000dfd50: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Comp │ │ │ +000e0100: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +000e0110: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +000e0130: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +000e0150: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +000e0160: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ +000e01a0: 7072 653e 3c63 6f64 653e 696e 636c 7564 pre>includ │ │ │ +000e01b0: 6520 696e 7374 616c 6c5f 6c69 6273 656c e install_libsel │ │ │ +000e01c0: 696e 7578 0a0a 636c 6173 7320 696e 7374 inux..class inst │ │ │ +000e01d0: 616c 6c5f 6c69 6273 656c 696e 7578 207b all_libselinux { │ │ │ +000e01e0: 0a20 2070 6163 6b61 6765 207b 2027 6c69 . package { 'li │ │ │ +000e01f0: 6273 656c 696e 7578 273a 0a20 2020 2065 bselinux':. e │ │ │ +000e0200: 6e73 7572 6520 3d26 6774 3b20 2769 6e73 nsure => 'ins │ │ │ +000e0210: 7461 6c6c 6564 272c 0a20 207d 0a7d 0a3c talled',. }.}.< │ │ │ +000e0220: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469 /code>
R │ │ │ +000e02d0: 656d 6564 6961 7469 6f6e 204f 5342 7569 emediation OSBui │ │ │ +000e02e0: 6c64 2042 6c75 6570 7269 6e74 2073 6e69 ld Blueprint sni │ │ │ +000e02f0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +000e0300: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +000e0330: 3c70 7265 3e3c 636f 6465 3e0a 5b5b 7061
.[[pa
│ │ │ +000e0340: 636b 6167 6573 5d5d 0a6e 616d 6520 3d20  ckages]].name = 
│ │ │ +000e0350: 226c 6962 7365 6c69 6e75 7822 0a76 6572  "libselinux".ver
│ │ │ +000e0360: 7369 6f6e 203d 2022 2a22 0a3c 2f63 6f64  sion = "*".
Remediati │ │ │ -000e8350: 6f6e 204f 5342 7569 6c64 2042 6c75 6570 on OSBuild Bluep │ │ │ -000e8360: 7269 6e74 2073 6e69 7070 6574 20e2 87b2 rint snippet ... │ │ │ -000e8370: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
.[customizati
│ │ │ -000e83c0: 6f6e 732e 7365 7276 6963 6573 5d0a 6d61  ons.services].ma
│ │ │ -000e83d0: 736b 6564 203d 205b 2261 7661 6869 2d64  sked = ["avahi-d
│ │ │ -000e83e0: 6165 6d6f 6e22 5d0a 3c2f 636f 6465 3e3c  aemon"].<
│ │ │ -000e83f0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ -000e84a0: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ -000e84b0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -000e8530: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -000e8540: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -000e8550: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -000e8590: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -000e85a0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -000e85c0: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ -000e85e0: 3c63 6f64 653e 696e 636c 7564 6520 6469  include di
│ │ │ -000e85f0: 7361 626c 655f 6176 6168 692d 6461 656d  sable_avahi-daem
│ │ │ -000e8600: 6f6e 0a0a 636c 6173 7320 6469 7361 626c  on..class disabl
│ │ │ -000e8610: 655f 6176 6168 692d 6461 656d 6f6e 207b  e_avahi-daemon {
│ │ │ -000e8620: 0a20 2073 6572 7669 6365 207b 2761 7661  .  service {'ava
│ │ │ -000e8630: 6869 2d64 6165 6d6f 6e27 3a0a 2020 2020  hi-daemon':.    
│ │ │ -000e8640: 656e 6162 6c65 203d 2667 743b 2066 616c  enable => fal
│ │ │ -000e8650: 7365 2c0a 2020 2020 656e 7375 7265 203d  se,.    ensure =
│ │ │ -000e8660: 2667 743b 2027 7374 6f70 7065 6427 2c0a  > 'stopped',.
│ │ │ -000e8670: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediatio │ │ │ -000e8730: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ -000e8740: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -000e87c0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -000e87d0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -000e87f0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -000e8800: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -000e8820: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -000e8840: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ -000e8870: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -000e8880: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -000e8890: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -000e88a0: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -000e88b0: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -000e88c0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -000e88d0: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ -000e88e0: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ -000e88f0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -000e8900: 332d 434d 2d37 2862 290a 2020 2d20 5043  3-CM-7(b).  - PC
│ │ │ -000e8910: 492d 4453 5376 342d 322e 320a 2020 2d20  I-DSSv4-2.2.  - 
│ │ │ -000e8920: 5043 492d 4453 5376 342d 322e 322e 340a  PCI-DSSv4-2.2.4.
│ │ │ -000e8930: 2020 2d20 6469 7361 626c 655f 7374 7261    - disable_stra
│ │ │ -000e8940: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ -000e8950: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ -000e8960: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -000e8970: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -000e8980: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -000e8990: 6465 640a 2020 2d20 7365 7276 6963 655f  ded.  - service_
│ │ │ -000e89a0: 6176 6168 692d 6461 656d 6f6e 5f64 6973  avahi-daemon_dis
│ │ │ -000e89b0: 6162 6c65 640a 0a2d 206e 616d 653a 2044  abled..- name: D
│ │ │ -000e89c0: 6973 6162 6c65 2041 7661 6869 2053 6572  isable Avahi Ser
│ │ │ -000e89d0: 7665 7220 536f 6674 7761 7265 202d 2044  ver Software - D
│ │ │ -000e89e0: 6973 6162 6c65 2073 6572 7669 6365 2061  isable service a
│ │ │ -000e89f0: 7661 6869 2d64 6165 6d6f 6e0a 2020 626c  vahi-daemon.  bl
│ │ │ -000e8a00: 6f63 6b3a 0a0a 2020 2d20 6e61 6d65 3a20  ock:..  - name: 
│ │ │ -000e8a10: 4469 7361 626c 6520 4176 6168 6920 5365  Disable Avahi Se
│ │ │ -000e8a20: 7276 6572 2053 6f66 7477 6172 6520 2d20  rver Software - 
│ │ │ -000e8a30: 436f 6c6c 6563 7420 7379 7374 656d 6420  Collect systemd 
│ │ │ -000e8a40: 5365 7276 6963 6573 2050 7265 7365 6e74  Services Present
│ │ │ -000e8a50: 2069 6e20 7468 650a 2020 2020 2020 5379   in the.      Sy
│ │ │ -000e8a60: 7374 656d 0a20 2020 2061 6e73 6962 6c65  stem.    ansible
│ │ │ -000e8a70: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ -000e8a80: 3a20 7379 7374 656d 6374 6c20 2d71 206c  : systemctl -q l
│ │ │ -000e8a90: 6973 742d 756e 6974 2d66 696c 6573 202d  ist-unit-files -
│ │ │ -000e8aa0: 2d74 7970 6520 7365 7276 6963 650a 2020  -type service.  
│ │ │ -000e8ab0: 2020 7265 6769 7374 6572 3a20 7365 7276    register: serv
│ │ │ -000e8ac0: 6963 655f 6578 6973 7473 0a20 2020 2063  ice_exists.    c
│ │ │ -000e8ad0: 6861 6e67 6564 5f77 6865 6e3a 2066 616c  hanged_when: fal
│ │ │ -000e8ae0: 7365 0a20 2020 2066 6169 6c65 645f 7768  se.    failed_wh
│ │ │ -000e8af0: 656e 3a20 7365 7276 6963 655f 6578 6973  en: service_exis
│ │ │ -000e8b00: 7473 2e72 6320 6e6f 7420 696e 205b 302c  ts.rc not in [0,
│ │ │ -000e8b10: 2031 5d0a 2020 2020 6368 6563 6b5f 6d6f   1].    check_mo
│ │ │ -000e8b20: 6465 3a20 6661 6c73 650a 0a20 202d 206e  de: false..  - n
│ │ │ -000e8b30: 616d 653a 2044 6973 6162 6c65 2041 7661  ame: Disable Ava
│ │ │ -000e8b40: 6869 2053 6572 7665 7220 536f 6674 7761  hi Server Softwa
│ │ │ -000e8b50: 7265 202d 2045 6e73 7572 6520 6176 6168  re - Ensure avah
│ │ │ -000e8b60: 692d 6461 656d 6f6e 2e73 6572 7669 6365  i-daemon.service
│ │ │ -000e8b70: 2069 7320 4d61 736b 6564 0a20 2020 2061   is Masked.    a
│ │ │ -000e8b80: 6e73 6962 6c65 2e62 7569 6c74 696e 2e73  nsible.builtin.s
│ │ │ -000e8b90: 7973 7465 6d64 3a0a 2020 2020 2020 6e61  ystemd:.      na
│ │ │ -000e8ba0: 6d65 3a20 6176 6168 692d 6461 656d 6f6e  me: avahi-daemon
│ │ │ -000e8bb0: 2e73 6572 7669 6365 0a20 2020 2020 2073  .service.      s
│ │ │ -000e8bc0: 7461 7465 3a20 7374 6f70 7065 640a 2020  tate: stopped.  
│ │ │ -000e8bd0: 2020 2020 656e 6162 6c65 643a 2066 616c      enabled: fal
│ │ │ -000e8be0: 7365 0a20 2020 2020 206d 6173 6b65 643a  se.      masked:
│ │ │ -000e8bf0: 2074 7275 650a 2020 2020 7768 656e 3a20   true.    when: 
│ │ │ -000e8c00: 7365 7276 6963 655f 6578 6973 7473 2e73  service_exists.s
│ │ │ -000e8c10: 7464 6f75 745f 6c69 6e65 7320 6973 2073  tdout_lines is s
│ │ │ -000e8c20: 6561 7263 6828 2261 7661 6869 2d64 6165  earch("avahi-dae
│ │ │ -000e8c30: 6d6f 6e2e 7365 7276 6963 6522 2c20 6d75  mon.service", mu
│ │ │ -000e8c40: 6c74 696c 696e 653d 5472 7565 290a 0a20  ltiline=True).. 
│ │ │ -000e8c50: 202d 206e 616d 653a 2055 6e69 7420 536f   - name: Unit So
│ │ │ -000e8c60: 636b 6574 2045 7869 7374 7320 2d20 6176  cket Exists - av
│ │ │ -000e8c70: 6168 692d 6461 656d 6f6e 2e73 6f63 6b65  ahi-daemon.socke
│ │ │ -000e8c80: 740a 2020 2020 616e 7369 626c 652e 6275  t.    ansible.bu
│ │ │ -000e8c90: 696c 7469 6e2e 636f 6d6d 616e 643a 2073  iltin.command: s
│ │ │ -000e8ca0: 7973 7465 6d63 746c 202d 7120 6c69 7374  ystemctl -q list
│ │ │ -000e8cb0: 2d75 6e69 742d 6669 6c65 7320 6176 6168  -unit-files avah
│ │ │ -000e8cc0: 692d 6461 656d 6f6e 2e73 6f63 6b65 740a  i-daemon.socket.
│ │ │ -000e8cd0: 2020 2020 7265 6769 7374 6572 3a20 736f      register: so
│ │ │ -000e8ce0: 636b 6574 5f66 696c 655f 6578 6973 7473  cket_file_exists
│ │ │ -000e8cf0: 0a20 2020 2063 6861 6e67 6564 5f77 6865  .    changed_whe
│ │ │ -000e8d00: 6e3a 2066 616c 7365 0a20 2020 2066 6169  n: false.    fai
│ │ │ -000e8d10: 6c65 645f 7768 656e 3a20 736f 636b 6574  led_when: socket
│ │ │ -000e8d20: 5f66 696c 655f 6578 6973 7473 2e72 6320  _file_exists.rc 
│ │ │ -000e8d30: 6e6f 7420 696e 205b 302c 2031 5d0a 2020  not in [0, 1].  
│ │ │ -000e8d40: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661    check_mode: fa
│ │ │ -000e8d50: 6c73 650a 0a20 202d 206e 616d 653a 2044  lse..  - name: D
│ │ │ -000e8d60: 6973 6162 6c65 2041 7661 6869 2053 6572  isable Avahi Ser
│ │ │ -000e8d70: 7665 7220 536f 6674 7761 7265 202d 2044  ver Software - D
│ │ │ -000e8d80: 6973 6162 6c65 2053 6f63 6b65 7420 6176  isable Socket av
│ │ │ -000e8d90: 6168 692d 6461 656d 6f6e 0a20 2020 2061  ahi-daemon.    a
│ │ │ -000e8da0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e73  nsible.builtin.s
│ │ │ -000e8db0: 7973 7465 6d64 3a0a 2020 2020 2020 6e61  ystemd:.      na
│ │ │ -000e8dc0: 6d65 3a20 6176 6168 692d 6461 656d 6f6e  me: avahi-daemon
│ │ │ -000e8dd0: 2e73 6f63 6b65 740a 2020 2020 2020 656e  .socket.      en
│ │ │ -000e8de0: 6162 6c65 643a 2066 616c 7365 0a20 2020  abled: false.   
│ │ │ -000e8df0: 2020 2073 7461 7465 3a20 7374 6f70 7065     state: stoppe
│ │ │ -000e8e00: 640a 2020 2020 2020 6d61 736b 6564 3a20  d.      masked: 
│ │ │ -000e8e10: 7472 7565 0a20 2020 2077 6865 6e3a 2073  true.    when: s
│ │ │ -000e8e20: 6f63 6b65 745f 6669 6c65 5f65 7869 7374  ocket_file_exist
│ │ │ -000e8e30: 732e 7374 646f 7574 5f6c 696e 6573 2069  s.stdout_lines i
│ │ │ -000e8e40: 7320 7365 6172 6368 2822 6176 6168 692d  s search("avahi-
│ │ │ -000e8e50: 6461 656d 6f6e 2e73 6f63 6b65 7422 2c20  daemon.socket", 
│ │ │ -000e8e60: 6d75 6c74 696c 696e 653d 5472 7565 290a  multiline=True).
│ │ │ -000e8e70: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -000e8e80: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -000e8e90: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -000e8ea0: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ -000e8eb0: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ -000e8ec0: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ -000e8ed0: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ -000e8ee0: 322e 322e 340a 2020 2d20 6469 7361 626c  2.2.4.  - disabl
│ │ │ -000e8ef0: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ -000e8f00: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -000e8f10: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -000e8f20: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -000e8f30: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -000e8f40: 6f74 5f6e 6565 6465 640a 2020 2d20 7365  ot_needed.  - se
│ │ │ -000e8f50: 7276 6963 655f 6176 6168 692d 6461 656d  rvice_avahi-daem
│ │ │ -000e8f60: 6f6e 5f64 6973 6162 6c65 640a 2020 2d20  on_disabled.  - 
│ │ │ -000e8f70: 7370 6563 6961 6c5f 7365 7276 6963 655f  special_service_
│ │ │ -000e8f80: 626c 6f63 6b0a 2020 7768 656e 3a20 2820  block.  when: ( 
│ │ │ -000e8f90: 2261 7661 6869 2220 696e 2061 6e73 6962  "avahi" in ansib
│ │ │ -000e8fa0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -000e8fb0: 7320 616e 6420 226b 6572 6e65 6c22 2069  s and "kernel" i
│ │ │ -000e8fc0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -000e8fd0: 7061 636b 6167 6573 0a20 2020 2029 0a3c  packages.    ).<
│ │ │ +000e8350: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070  on Ansible snipp
│ │ │ +000e8360: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...
│ │ │ +000e83e0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +000e83f0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +000e8400: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +000e8440: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +000e8450: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +000e8470: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +000e8480: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
- name: G
│ │ │ +000e84a0: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ +000e84b0: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ +000e84c0: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ +000e84d0: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ +000e84e0: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +000e84f0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ +000e8500: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +000e8510: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +000e8520: 3533 2d43 4d2d 3728 6229 0a20 202d 2050  53-CM-7(b).  - P
│ │ │ +000e8530: 4349 2d44 5353 7634 2d32 2e32 0a20 202d  CI-DSSv4-2.2.  -
│ │ │ +000e8540: 2050 4349 2d44 5353 7634 2d32 2e32 2e34   PCI-DSSv4-2.2.4
│ │ │ +000e8550: 0a20 202d 2064 6973 6162 6c65 5f73 7472  .  - disable_str
│ │ │ +000e8560: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ +000e8570: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ +000e8580: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +000e8590: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +000e85a0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +000e85b0: 6564 6564 0a20 202d 2073 6572 7669 6365  eded.  - service
│ │ │ +000e85c0: 5f61 7661 6869 2d64 6165 6d6f 6e5f 6469  _avahi-daemon_di
│ │ │ +000e85d0: 7361 626c 6564 0a0a 2d20 6e61 6d65 3a20  sabled..- name: 
│ │ │ +000e85e0: 4469 7361 626c 6520 4176 6168 6920 5365  Disable Avahi Se
│ │ │ +000e85f0: 7276 6572 2053 6f66 7477 6172 6520 2d20  rver Software - 
│ │ │ +000e8600: 4469 7361 626c 6520 7365 7276 6963 6520  Disable service 
│ │ │ +000e8610: 6176 6168 692d 6461 656d 6f6e 0a20 2062  avahi-daemon.  b
│ │ │ +000e8620: 6c6f 636b 3a0a 0a20 202d 206e 616d 653a  lock:..  - name:
│ │ │ +000e8630: 2044 6973 6162 6c65 2041 7661 6869 2053   Disable Avahi S
│ │ │ +000e8640: 6572 7665 7220 536f 6674 7761 7265 202d  erver Software -
│ │ │ +000e8650: 2043 6f6c 6c65 6374 2073 7973 7465 6d64   Collect systemd
│ │ │ +000e8660: 2053 6572 7669 6365 7320 5072 6573 656e   Services Presen
│ │ │ +000e8670: 7420 696e 2074 6865 0a20 2020 2020 2053  t in the.      S
│ │ │ +000e8680: 7973 7465 6d0a 2020 2020 616e 7369 626c  ystem.    ansibl
│ │ │ +000e8690: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ +000e86a0: 643a 2073 7973 7465 6d63 746c 202d 7120  d: systemctl -q 
│ │ │ +000e86b0: 6c69 7374 2d75 6e69 742d 6669 6c65 7320  list-unit-files 
│ │ │ +000e86c0: 2d2d 7479 7065 2073 6572 7669 6365 0a20  --type service. 
│ │ │ +000e86d0: 2020 2072 6567 6973 7465 723a 2073 6572     register: ser
│ │ │ +000e86e0: 7669 6365 5f65 7869 7374 730a 2020 2020  vice_exists.    
│ │ │ +000e86f0: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ +000e8700: 6c73 650a 2020 2020 6661 696c 6564 5f77  lse.    failed_w
│ │ │ +000e8710: 6865 6e3a 2073 6572 7669 6365 5f65 7869  hen: service_exi
│ │ │ +000e8720: 7374 732e 7263 206e 6f74 2069 6e20 5b30  sts.rc not in [0
│ │ │ +000e8730: 2c20 315d 0a20 2020 2063 6865 636b 5f6d  , 1].    check_m
│ │ │ +000e8740: 6f64 653a 2066 616c 7365 0a0a 2020 2d20  ode: false..  - 
│ │ │ +000e8750: 6e61 6d65 3a20 4469 7361 626c 6520 4176  name: Disable Av
│ │ │ +000e8760: 6168 6920 5365 7276 6572 2053 6f66 7477  ahi Server Softw
│ │ │ +000e8770: 6172 6520 2d20 456e 7375 7265 2061 7661  are - Ensure ava
│ │ │ +000e8780: 6869 2d64 6165 6d6f 6e2e 7365 7276 6963  hi-daemon.servic
│ │ │ +000e8790: 6520 6973 204d 6173 6b65 640a 2020 2020  e is Masked.    
│ │ │ +000e87a0: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +000e87b0: 7379 7374 656d 643a 0a20 2020 2020 206e  systemd:.      n
│ │ │ +000e87c0: 616d 653a 2061 7661 6869 2d64 6165 6d6f  ame: avahi-daemo
│ │ │ +000e87d0: 6e2e 7365 7276 6963 650a 2020 2020 2020  n.service.      
│ │ │ +000e87e0: 7374 6174 653a 2073 746f 7070 6564 0a20  state: stopped. 
│ │ │ +000e87f0: 2020 2020 2065 6e61 626c 6564 3a20 6661       enabled: fa
│ │ │ +000e8800: 6c73 650a 2020 2020 2020 6d61 736b 6564  lse.      masked
│ │ │ +000e8810: 3a20 7472 7565 0a20 2020 2077 6865 6e3a  : true.    when:
│ │ │ +000e8820: 2073 6572 7669 6365 5f65 7869 7374 732e   service_exists.
│ │ │ +000e8830: 7374 646f 7574 5f6c 696e 6573 2069 7320  stdout_lines is 
│ │ │ +000e8840: 7365 6172 6368 2822 6176 6168 692d 6461  search("avahi-da
│ │ │ +000e8850: 656d 6f6e 2e73 6572 7669 6365 222c 206d  emon.service", m
│ │ │ +000e8860: 756c 7469 6c69 6e65 3d54 7275 6529 0a0a  ultiline=True)..
│ │ │ +000e8870: 2020 2d20 6e61 6d65 3a20 556e 6974 2053    - name: Unit S
│ │ │ +000e8880: 6f63 6b65 7420 4578 6973 7473 202d 2061  ocket Exists - a
│ │ │ +000e8890: 7661 6869 2d64 6165 6d6f 6e2e 736f 636b  vahi-daemon.sock
│ │ │ +000e88a0: 6574 0a20 2020 2061 6e73 6962 6c65 2e62  et.    ansible.b
│ │ │ +000e88b0: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ +000e88c0: 7379 7374 656d 6374 6c20 2d71 206c 6973  systemctl -q lis
│ │ │ +000e88d0: 742d 756e 6974 2d66 696c 6573 2061 7661  t-unit-files ava
│ │ │ +000e88e0: 6869 2d64 6165 6d6f 6e2e 736f 636b 6574  hi-daemon.socket
│ │ │ +000e88f0: 0a20 2020 2072 6567 6973 7465 723a 2073  .    register: s
│ │ │ +000e8900: 6f63 6b65 745f 6669 6c65 5f65 7869 7374  ocket_file_exist
│ │ │ +000e8910: 730a 2020 2020 6368 616e 6765 645f 7768  s.    changed_wh
│ │ │ +000e8920: 656e 3a20 6661 6c73 650a 2020 2020 6661  en: false.    fa
│ │ │ +000e8930: 696c 6564 5f77 6865 6e3a 2073 6f63 6b65  iled_when: socke
│ │ │ +000e8940: 745f 6669 6c65 5f65 7869 7374 732e 7263  t_file_exists.rc
│ │ │ +000e8950: 206e 6f74 2069 6e20 5b30 2c20 315d 0a20   not in [0, 1]. 
│ │ │ +000e8960: 2020 2063 6865 636b 5f6d 6f64 653a 2066     check_mode: f
│ │ │ +000e8970: 616c 7365 0a0a 2020 2d20 6e61 6d65 3a20  alse..  - name: 
│ │ │ +000e8980: 4469 7361 626c 6520 4176 6168 6920 5365  Disable Avahi Se
│ │ │ +000e8990: 7276 6572 2053 6f66 7477 6172 6520 2d20  rver Software - 
│ │ │ +000e89a0: 4469 7361 626c 6520 536f 636b 6574 2061  Disable Socket a
│ │ │ +000e89b0: 7661 6869 2d64 6165 6d6f 6e0a 2020 2020  vahi-daemon.    
│ │ │ +000e89c0: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +000e89d0: 7379 7374 656d 643a 0a20 2020 2020 206e  systemd:.      n
│ │ │ +000e89e0: 616d 653a 2061 7661 6869 2d64 6165 6d6f  ame: avahi-daemo
│ │ │ +000e89f0: 6e2e 736f 636b 6574 0a20 2020 2020 2065  n.socket.      e
│ │ │ +000e8a00: 6e61 626c 6564 3a20 6661 6c73 650a 2020  nabled: false.  
│ │ │ +000e8a10: 2020 2020 7374 6174 653a 2073 746f 7070      state: stopp
│ │ │ +000e8a20: 6564 0a20 2020 2020 206d 6173 6b65 643a  ed.      masked:
│ │ │ +000e8a30: 2074 7275 650a 2020 2020 7768 656e 3a20   true.    when: 
│ │ │ +000e8a40: 736f 636b 6574 5f66 696c 655f 6578 6973  socket_file_exis
│ │ │ +000e8a50: 7473 2e73 7464 6f75 745f 6c69 6e65 7320  ts.stdout_lines 
│ │ │ +000e8a60: 6973 2073 6561 7263 6828 2261 7661 6869  is search("avahi
│ │ │ +000e8a70: 2d64 6165 6d6f 6e2e 736f 636b 6574 222c  -daemon.socket",
│ │ │ +000e8a80: 206d 756c 7469 6c69 6e65 3d54 7275 6529   multiline=True)
│ │ │ +000e8a90: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +000e8aa0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +000e8ab0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +000e8ac0: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ +000e8ad0: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ +000e8ae0: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ +000e8af0: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ +000e8b00: 2d32 2e32 2e34 0a20 202d 2064 6973 6162  -2.2.4.  - disab
│ │ │ +000e8b10: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ +000e8b20: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +000e8b30: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +000e8b40: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ +000e8b50: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ +000e8b60: 6f6f 745f 6e65 6564 6564 0a20 202d 2073  oot_needed.  - s
│ │ │ +000e8b70: 6572 7669 6365 5f61 7661 6869 2d64 6165  ervice_avahi-dae
│ │ │ +000e8b80: 6d6f 6e5f 6469 7361 626c 6564 0a20 202d  mon_disabled.  -
│ │ │ +000e8b90: 2073 7065 6369 616c 5f73 6572 7669 6365   special_service
│ │ │ +000e8ba0: 5f62 6c6f 636b 0a20 2077 6865 6e3a 2028  _block.  when: (
│ │ │ +000e8bb0: 2022 6176 6168 6922 2069 6e20 616e 7369   "avahi" in ansi
│ │ │ +000e8bc0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +000e8bd0: 6573 2061 6e64 2022 6b65 726e 656c 2220  es and "kernel" 
│ │ │ +000e8be0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +000e8bf0: 2e70 6163 6b61 6765 730a 2020 2020 290a  .packages.    ).
│ │ │ +000e8c00: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +000e8cb0: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +000e8cc0: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
│ │ │ +000e8d60: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
in
│ │ │ +000e8e00: 636c 7564 6520 6469 7361 626c 655f 6176  clude disable_av
│ │ │ +000e8e10: 6168 692d 6461 656d 6f6e 0a0a 636c 6173  ahi-daemon..clas
│ │ │ +000e8e20: 7320 6469 7361 626c 655f 6176 6168 692d  s disable_avahi-
│ │ │ +000e8e30: 6461 656d 6f6e 207b 0a20 2073 6572 7669  daemon {.  servi
│ │ │ +000e8e40: 6365 207b 2761 7661 6869 2d64 6165 6d6f  ce {'avahi-daemo
│ │ │ +000e8e50: 6e27 3a0a 2020 2020 656e 6162 6c65 203d  n':.    enable =
│ │ │ +000e8e60: 2667 743b 2066 616c 7365 2c0a 2020 2020  > false,.    
│ │ │ +000e8e70: 656e 7375 7265 203d 2667 743b 2027 7374  ensure => 'st
│ │ │ +000e8e80: 6f70 7065 6427 2c0a 2020 7d0a 7d0a 3c2f  opped',.  }.}.
Re │ │ │ +000e8f40: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ +000e8f50: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ +000e8f60: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +000e8f70: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +000e8f80: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +000e8f90: 7365 2220 6964 3d22 6964 3232 3122 3e3c se" id="id221">< │ │ │ +000e8fa0: 7072 653e 3c63 6f64 653e 0a5b 6375 7374 pre>.[cust │ │ │ +000e8fb0: 6f6d 697a 6174 696f 6e73 2e73 6572 7669 omizations.servi │ │ │ +000e8fc0: 6365 735d 0a6d 6173 6b65 6420 3d20 5b22 ces].masked = [" │ │ │ +000e8fd0: 6176 6168 692d 6461 656d 6f6e 225d 0a3c avahi-daemon"].< │ │ │ 000e8fe0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469 /code>
Remediation OSB │ │ │ -000f4320: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ -000f4330: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
.[[
│ │ │ -000f4380: 7061 636b 6167 6573 5d5d 0a6e 616d 6520  packages]].name 
│ │ │ -000f4390: 3d20 2263 726f 6e22 0a76 6572 7369 6f6e  = "cron".version
│ │ │ -000f43a0: 203d 2022 2a22 0a3c 2f63 6f64 653e 3c2f   = "*".
Remediati │ │ │ -000f4460: 6f6e 2050 7570 7065 7420 736e 6970 7065 on Puppet snippe │ │ │ -000f4470: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -000f44f0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ -000f4530: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 enable
│ │ │ +000e8d50: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +000e8d80: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +000e8d90: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +000e8dd0: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ +000e8de0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexit │ │ │ -000f4500: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ -000f4520: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ -000f4550: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ -000f4570: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
<
│ │ │ -000f45a0: 636f 6465 3e69 6e63 6c75 6465 2069 6e73  code>include ins
│ │ │ -000f45b0: 7461 6c6c 5f63 726f 6e0a 0a63 6c61 7373  tall_cron..class
│ │ │ -000f45c0: 2069 6e73 7461 6c6c 5f63 726f 6e20 7b0a   install_cron {.
│ │ │ -000f45d0: 2020 7061 636b 6167 6520 7b20 2763 726f    package { 'cro
│ │ │ -000f45e0: 6e27 3a0a 2020 2020 656e 7375 7265 203d  n':.    ensure =
│ │ │ -000f45f0: 2667 743b 2027 696e 7374 616c 6c65 6427  > 'installed'
│ │ │ -000f4600: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ -000f4610: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ -000f46c0: 696f 6e20 416e 7369 626c 6520 736e 6970 ion Ansible snip │ │ │ -000f46d0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -000f46e0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -000f46f0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -000f4700: 7365 2220 6964 3d22 6964 3234 3922 3e3c se" id="id249">< │ │ │ -000f4710: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -000f4720: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -000f4730: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -000f4740: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -000f4750: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -000f4760: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -000f4770: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -000f47b0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -000f47c0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -000f47e0: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ -000f47f0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
- name: G
│ │ │ -000f4810: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ -000f4820: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ -000f4830: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ -000f4840: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ -000f4850: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ -000f4860: 3533 2d43 4d2d 3628 6129 0a20 202d 2050  53-CM-6(a).  - P
│ │ │ -000f4870: 4349 2d44 5353 7634 2d32 2e32 0a20 202d  CI-DSSv4-2.2.  -
│ │ │ -000f4880: 2050 4349 2d44 5353 7634 2d32 2e32 2e36   PCI-DSSv4-2.2.6
│ │ │ -000f4890: 0a20 202d 2065 6e61 626c 655f 7374 7261  .  - enable_stra
│ │ │ -000f48a0: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ -000f48b0: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ -000f48c0: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -000f48d0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -000f48e0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -000f48f0: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ -000f4900: 6372 6f6e 5f69 6e73 7461 6c6c 6564 0a0a  cron_installed..
│ │ │ -000f4910: 2d20 6e61 6d65 3a20 456e 7375 7265 2063  - name: Ensure c
│ │ │ -000f4920: 726f 6e20 6973 2069 6e73 7461 6c6c 6564  ron is installed
│ │ │ -000f4930: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -000f4940: 696e 2e70 6163 6b61 6765 3a0a 2020 2020  in.package:.    
│ │ │ -000f4950: 6e61 6d65 3a20 6372 6f6e 0a20 2020 2073  name: cron.    s
│ │ │ -000f4960: 7461 7465 3a20 7072 6573 656e 740a 2020  tate: present.  
│ │ │ -000f4970: 7768 656e 3a20 2722 6b65 726e 656c 2220  when: '"kernel" 
│ │ │ -000f4980: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -000f4990: 2e70 6163 6b61 6765 7327 0a20 2074 6167  .packages'.  tag
│ │ │ -000f49a0: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ -000f49b0: 3533 2d43 4d2d 3628 6129 0a20 202d 2050  53-CM-6(a).  - P
│ │ │ -000f49c0: 4349 2d44 5353 7634 2d32 2e32 0a20 202d  CI-DSSv4-2.2.  -
│ │ │ -000f49d0: 2050 4349 2d44 5353 7634 2d32 2e32 2e36   PCI-DSSv4-2.2.6
│ │ │ -000f49e0: 0a20 202d 2065 6e61 626c 655f 7374 7261  .  - enable_stra
│ │ │ -000f49f0: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ -000f4a00: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ -000f4a10: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -000f4a20: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -000f4a30: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -000f4a40: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ -000f4a50: 6372 6f6e 5f69 6e73 7461 6c6c 6564 0a3c  cron_installed.<
│ │ │ +000f4310: 3e52 656d 6564 6961 7469 6f6e 2041 6e73  >Remediation Ans
│ │ │ +000f4320: 6962 6c65 2073 6e69 7070 6574 20e2 87b2  ible snippet ...
│ │ │ +000f4330: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
Complexity: │ │ │ +000f4400: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +000f4410: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +000f4460: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ +000f4470: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ +000f4480: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ +000f4490: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ +000f44a0: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ +000f44b0: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +000f44c0: 2861 290a 2020 2d20 5043 492d 4453 5376  (a).  - PCI-DSSv
│ │ │ +000f44d0: 342d 322e 320a 2020 2d20 5043 492d 4453  4-2.2.  - PCI-DS
│ │ │ +000f44e0: 5376 342d 322e 322e 360a 2020 2d20 656e  Sv4-2.2.6.  - en
│ │ │ +000f44f0: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ +000f4500: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +000f4510: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +000f4520: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ +000f4530: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ +000f4540: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ +000f4550: 2070 6163 6b61 6765 5f63 726f 6e5f 696e   package_cron_in
│ │ │ +000f4560: 7374 616c 6c65 640a 0a2d 206e 616d 653a  stalled..- name:
│ │ │ +000f4570: 2045 6e73 7572 6520 6372 6f6e 2069 7320   Ensure cron is 
│ │ │ +000f4580: 696e 7374 616c 6c65 640a 2020 616e 7369  installed.  ansi
│ │ │ +000f4590: 626c 652e 6275 696c 7469 6e2e 7061 636b  ble.builtin.pack
│ │ │ +000f45a0: 6167 653a 0a20 2020 206e 616d 653a 2063  age:.    name: c
│ │ │ +000f45b0: 726f 6e0a 2020 2020 7374 6174 653a 2070  ron.    state: p
│ │ │ +000f45c0: 7265 7365 6e74 0a20 2077 6865 6e3a 2027  resent.  when: '
│ │ │ +000f45d0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +000f45e0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +000f45f0: 6573 270a 2020 7461 6773 3a0a 2020 2d20  es'.  tags:.  - 
│ │ │ +000f4600: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +000f4610: 2861 290a 2020 2d20 5043 492d 4453 5376  (a).  - PCI-DSSv
│ │ │ +000f4620: 342d 322e 320a 2020 2d20 5043 492d 4453  4-2.2.  - PCI-DS
│ │ │ +000f4630: 5376 342d 322e 322e 360a 2020 2d20 656e  Sv4-2.2.6.  - en
│ │ │ +000f4640: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ +000f4650: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +000f4660: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +000f4670: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ +000f4680: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ +000f4690: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ +000f46a0: 2070 6163 6b61 6765 5f63 726f 6e5f 696e   package_cron_in
│ │ │ +000f46b0: 7374 616c 6c65 640a 3c2f 636f 6465 3e3c  stalled.<
│ │ │ +000f46c0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ +000f4770: 696f 6e20 5075 7070 6574 2073 6e69 7070  ion Puppet snipp
│ │ │ +000f4780: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...
│ │ │ +000f4800: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ +000f4890: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
low
Disru │ │ │ +000f43e0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +000f43f0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +000f4430: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +000f4440: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexi │ │ │ +000f4810: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +000f4820: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +000f4860: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +000f4870: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
│ │ │ +000f48b0: 3c63 6f64 653e 696e 636c 7564 6520 696e  include in
│ │ │ +000f48c0: 7374 616c 6c5f 6372 6f6e 0a0a 636c 6173  stall_cron..clas
│ │ │ +000f48d0: 7320 696e 7374 616c 6c5f 6372 6f6e 207b  s install_cron {
│ │ │ +000f48e0: 0a20 2070 6163 6b61 6765 207b 2027 6372  .  package { 'cr
│ │ │ +000f48f0: 6f6e 273a 0a20 2020 2065 6e73 7572 6520  on':.    ensure 
│ │ │ +000f4900: 3d26 6774 3b20 2769 6e73 7461 6c6c 6564  => 'installed
│ │ │ +000f4910: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e  ',.  }.}.
│ │ │ +000f4920: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +000f49d0: 7469 6f6e 204f 5342 7569 6c64 2042 6c75 tion OSBuild Blu │ │ │ +000f49e0: 6570 7269 6e74 2073 6e69 7070 6574 20e2 eprint snippet . │ │ │ +000f49f0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
<
│ │ │ +000f4a30: 636f 6465 3e0a 5b5b 7061 636b 6167 6573  code>.[[packages
│ │ │ +000f4a40: 5d5d 0a6e 616d 6520 3d20 2263 726f 6e22  ]].name = "cron"
│ │ │ +000f4a50: 0a76 6572 7369 6f6e 203d 2022 2a22 0a3c  .version = "*".<
│ │ │  000f4a60: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Remediatio │ │ │ -00112230: 6e20 4f53 4275 696c 6420 426c 7565 7072 n OSBuild Bluepr │ │ │ -00112240: 696e 7420 736e 6970 7065 7420 e287 b23c int snippet ...< │ │ │ -00112250: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
.[customizatio
│ │ │ -001122a0: 6e73 2e73 6572 7669 6365 735d 0a6d 6173  ns.services].mas
│ │ │ -001122b0: 6b65 6420 3d20 5b22 7270 6362 696e 6422  ked = ["rpcbind"
│ │ │ -001122c0: 5d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  ].
< │ │ │ -001122d0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ -00112380: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ -00112390: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -00112460: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -00112470: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -001124c0: 696e 636c 7564 6520 6469 7361 626c 655f  include disable_
│ │ │ -001124d0: 7270 6362 696e 640a 0a63 6c61 7373 2064  rpcbind..class d
│ │ │ -001124e0: 6973 6162 6c65 5f72 7063 6269 6e64 207b  isable_rpcbind {
│ │ │ -001124f0: 0a20 2073 6572 7669 6365 207b 2772 7063  .  service {'rpc
│ │ │ -00112500: 6269 6e64 273a 0a20 2020 2065 6e61 626c  bind':.    enabl
│ │ │ -00112510: 6520 3d26 6774 3b20 6661 6c73 652c 0a20  e => false,. 
│ │ │ -00112520: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ -00112530: 2773 746f 7070 6564 272c 0a20 207d 0a7d  'stopped',.  }.}
│ │ │ -00112540: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Ans │ │ │ -00112600: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ -00112610: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
low
Disru │ │ │ -00112440: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -00112450: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -00112490: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -001124a0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexity: │ │ │ -001126e0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -001126f0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
- name: Gather 
│ │ │ -00112750: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -00112760: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -00112770: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -00112780: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -00112790: 2050 4349 2d44 5353 7634 2d32 2e32 0a20   PCI-DSSv4-2.2. 
│ │ │ -001127a0: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ -001127b0: 2e34 0a20 202d 2064 6973 6162 6c65 5f73  .4.  - disable_s
│ │ │ -001127c0: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ -001127d0: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ -001127e0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -001127f0: 2d20 6c6f 775f 7365 7665 7269 7479 0a20  - low_severity. 
│ │ │ -00112800: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -00112810: 6465 640a 2020 2d20 7365 7276 6963 655f  ded.  - service_
│ │ │ -00112820: 7270 6362 696e 645f 6469 7361 626c 6564  rpcbind_disabled
│ │ │ -00112830: 0a0a 2d20 6e61 6d65 3a20 4469 7361 626c  ..- name: Disabl
│ │ │ -00112840: 6520 7270 6362 696e 6420 5365 7276 6963  e rpcbind Servic
│ │ │ -00112850: 6520 2d20 4469 7361 626c 6520 7365 7276  e - Disable serv
│ │ │ -00112860: 6963 6520 7270 6362 696e 640a 2020 626c  ice rpcbind.  bl
│ │ │ -00112870: 6f63 6b3a 0a0a 2020 2d20 6e61 6d65 3a20  ock:..  - name: 
│ │ │ -00112880: 4469 7361 626c 6520 7270 6362 696e 6420  Disable rpcbind 
│ │ │ -00112890: 5365 7276 6963 6520 2d20 436f 6c6c 6563  Service - Collec
│ │ │ -001128a0: 7420 7379 7374 656d 6420 5365 7276 6963  t systemd Servic
│ │ │ -001128b0: 6573 2050 7265 7365 6e74 2069 6e20 7468  es Present in th
│ │ │ -001128c0: 6520 5379 7374 656d 0a20 2020 2061 6e73  e System.    ans
│ │ │ -001128d0: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d  ible.builtin.com
│ │ │ -001128e0: 6d61 6e64 3a20 7379 7374 656d 6374 6c20  mand: systemctl 
│ │ │ -001128f0: 2d71 206c 6973 742d 756e 6974 2d66 696c  -q list-unit-fil
│ │ │ -00112900: 6573 202d 2d74 7970 6520 7365 7276 6963  es --type servic
│ │ │ -00112910: 650a 2020 2020 7265 6769 7374 6572 3a20  e.    register: 
│ │ │ -00112920: 7365 7276 6963 655f 6578 6973 7473 0a20  service_exists. 
│ │ │ -00112930: 2020 2063 6861 6e67 6564 5f77 6865 6e3a     changed_when:
│ │ │ -00112940: 2066 616c 7365 0a20 2020 2066 6169 6c65   false.    faile
│ │ │ -00112950: 645f 7768 656e 3a20 7365 7276 6963 655f  d_when: service_
│ │ │ -00112960: 6578 6973 7473 2e72 6320 6e6f 7420 696e  exists.rc not in
│ │ │ -00112970: 205b 302c 2031 5d0a 2020 2020 6368 6563   [0, 1].    chec
│ │ │ -00112980: 6b5f 6d6f 6465 3a20 6661 6c73 650a 0a20  k_mode: false.. 
│ │ │ -00112990: 202d 206e 616d 653a 2044 6973 6162 6c65   - name: Disable
│ │ │ -001129a0: 2072 7063 6269 6e64 2053 6572 7669 6365   rpcbind Service
│ │ │ -001129b0: 202d 2045 6e73 7572 6520 7270 6362 696e   - Ensure rpcbin
│ │ │ -001129c0: 642e 7365 7276 6963 6520 6973 204d 6173  d.service is Mas
│ │ │ -001129d0: 6b65 640a 2020 2020 616e 7369 626c 652e  ked.    ansible.
│ │ │ -001129e0: 6275 696c 7469 6e2e 7379 7374 656d 643a  builtin.systemd:
│ │ │ -001129f0: 0a20 2020 2020 206e 616d 653a 2072 7063  .      name: rpc
│ │ │ -00112a00: 6269 6e64 2e73 6572 7669 6365 0a20 2020  bind.service.   
│ │ │ -00112a10: 2020 2073 7461 7465 3a20 7374 6f70 7065     state: stoppe
│ │ │ -00112a20: 640a 2020 2020 2020 656e 6162 6c65 643a  d.      enabled:
│ │ │ -00112a30: 2066 616c 7365 0a20 2020 2020 206d 6173   false.      mas
│ │ │ -00112a40: 6b65 643a 2074 7275 650a 2020 2020 7768  ked: true.    wh
│ │ │ -00112a50: 656e 3a20 7365 7276 6963 655f 6578 6973  en: service_exis
│ │ │ -00112a60: 7473 2e73 7464 6f75 745f 6c69 6e65 7320  ts.stdout_lines 
│ │ │ -00112a70: 6973 2073 6561 7263 6828 2272 7063 6269  is search("rpcbi
│ │ │ -00112a80: 6e64 2e73 6572 7669 6365 222c 206d 756c  nd.service", mul
│ │ │ -00112a90: 7469 6c69 6e65 3d54 7275 6529 0a0a 2020  tiline=True)..  
│ │ │ -00112aa0: 2d20 6e61 6d65 3a20 556e 6974 2053 6f63  - name: Unit Soc
│ │ │ -00112ab0: 6b65 7420 4578 6973 7473 202d 2072 7063  ket Exists - rpc
│ │ │ -00112ac0: 6269 6e64 2e73 6f63 6b65 740a 2020 2020  bind.socket.    
│ │ │ -00112ad0: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -00112ae0: 636f 6d6d 616e 643a 2073 7973 7465 6d63  command: systemc
│ │ │ -00112af0: 746c 202d 7120 6c69 7374 2d75 6e69 742d  tl -q list-unit-
│ │ │ -00112b00: 6669 6c65 7320 7270 6362 696e 642e 736f  files rpcbind.so
│ │ │ -00112b10: 636b 6574 0a20 2020 2072 6567 6973 7465  cket.    registe
│ │ │ -00112b20: 723a 2073 6f63 6b65 745f 6669 6c65 5f65  r: socket_file_e
│ │ │ -00112b30: 7869 7374 730a 2020 2020 6368 616e 6765  xists.    change
│ │ │ -00112b40: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ -00112b50: 2020 6661 696c 6564 5f77 6865 6e3a 2073    failed_when: s
│ │ │ -00112b60: 6f63 6b65 745f 6669 6c65 5f65 7869 7374  ocket_file_exist
│ │ │ -00112b70: 732e 7263 206e 6f74 2069 6e20 5b30 2c20  s.rc not in [0, 
│ │ │ -00112b80: 315d 0a20 2020 2063 6865 636b 5f6d 6f64  1].    check_mod
│ │ │ -00112b90: 653a 2066 616c 7365 0a0a 2020 2d20 6e61  e: false..  - na
│ │ │ -00112ba0: 6d65 3a20 4469 7361 626c 6520 7270 6362  me: Disable rpcb
│ │ │ -00112bb0: 696e 6420 5365 7276 6963 6520 2d20 4469  ind Service - Di
│ │ │ -00112bc0: 7361 626c 6520 536f 636b 6574 2072 7063  sable Socket rpc
│ │ │ -00112bd0: 6269 6e64 0a20 2020 2061 6e73 6962 6c65  bind.    ansible
│ │ │ -00112be0: 2e62 7569 6c74 696e 2e73 7973 7465 6d64  .builtin.systemd
│ │ │ -00112bf0: 3a0a 2020 2020 2020 6e61 6d65 3a20 7270  :.      name: rp
│ │ │ -00112c00: 6362 696e 642e 736f 636b 6574 0a20 2020  cbind.socket.   
│ │ │ -00112c10: 2020 2065 6e61 626c 6564 3a20 6661 6c73     enabled: fals
│ │ │ -00112c20: 650a 2020 2020 2020 7374 6174 653a 2073  e.      state: s
│ │ │ -00112c30: 746f 7070 6564 0a20 2020 2020 206d 6173  topped.      mas
│ │ │ -00112c40: 6b65 643a 2074 7275 650a 2020 2020 7768  ked: true.    wh
│ │ │ -00112c50: 656e 3a20 736f 636b 6574 5f66 696c 655f  en: socket_file_
│ │ │ -00112c60: 6578 6973 7473 2e73 7464 6f75 745f 6c69  exists.stdout_li
│ │ │ -00112c70: 6e65 7320 6973 2073 6561 7263 6828 2272  nes is search("r
│ │ │ -00112c80: 7063 6269 6e64 2e73 6f63 6b65 7422 2c20  pcbind.socket", 
│ │ │ -00112c90: 6d75 6c74 696c 696e 653d 5472 7565 290a  multiline=True).
│ │ │ -00112ca0: 2020 7461 6773 3a0a 2020 2d20 5043 492d    tags:.  - PCI-
│ │ │ -00112cb0: 4453 5376 342d 322e 320a 2020 2d20 5043  DSSv4-2.2.  - PC
│ │ │ -00112cc0: 492d 4453 5376 342d 322e 322e 340a 2020  I-DSSv4-2.2.4.  
│ │ │ -00112cd0: 2d20 6469 7361 626c 655f 7374 7261 7465  - disable_strate
│ │ │ -00112ce0: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ -00112cf0: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ -00112d00: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -00112d10: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ -00112d20: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ -00112d30: 202d 2073 6572 7669 6365 5f72 7063 6269   - service_rpcbi
│ │ │ -00112d40: 6e64 5f64 6973 6162 6c65 640a 2020 2d20  nd_disabled.  - 
│ │ │ -00112d50: 7370 6563 6961 6c5f 7365 7276 6963 655f  special_service_
│ │ │ -00112d60: 626c 6f63 6b0a 2020 7768 656e 3a20 2722  block.  when: '"
│ │ │ -00112d70: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -00112d80: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -00112d90: 7327 0a3c 2f63 6f64 653e 3c2f 7072 653e  s'.
│ │ │ +00112230: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ +00112240: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +001122c0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr> │ │ │ +00112300: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 disable
low
Disru │ │ │ -001126c0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -001126d0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -00112710: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -00112720: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexit │ │ │ +001122d0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ +001122f0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ +00112320: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ +00112340: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
│ │ │ +00112370: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ +00112380: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ +00112390: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ +001123a0: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ +001123b0: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ +001123c0: 3a0a 2020 2d20 5043 492d 4453 5376 342d  :.  - PCI-DSSv4-
│ │ │ +001123d0: 322e 320a 2020 2d20 5043 492d 4453 5376  2.2.  - PCI-DSSv
│ │ │ +001123e0: 342d 322e 322e 340a 2020 2d20 6469 7361  4-2.2.4.  - disa
│ │ │ +001123f0: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ +00112400: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +00112410: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +00112420: 6f6e 0a20 202d 206c 6f77 5f73 6576 6572  on.  - low_sever
│ │ │ +00112430: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ +00112440: 745f 6e65 6564 6564 0a20 202d 2073 6572  t_needed.  - ser
│ │ │ +00112450: 7669 6365 5f72 7063 6269 6e64 5f64 6973  vice_rpcbind_dis
│ │ │ +00112460: 6162 6c65 640a 0a2d 206e 616d 653a 2044  abled..- name: D
│ │ │ +00112470: 6973 6162 6c65 2072 7063 6269 6e64 2053  isable rpcbind S
│ │ │ +00112480: 6572 7669 6365 202d 2044 6973 6162 6c65  ervice - Disable
│ │ │ +00112490: 2073 6572 7669 6365 2072 7063 6269 6e64   service rpcbind
│ │ │ +001124a0: 0a20 2062 6c6f 636b 3a0a 0a20 202d 206e  .  block:..  - n
│ │ │ +001124b0: 616d 653a 2044 6973 6162 6c65 2072 7063  ame: Disable rpc
│ │ │ +001124c0: 6269 6e64 2053 6572 7669 6365 202d 2043  bind Service - C
│ │ │ +001124d0: 6f6c 6c65 6374 2073 7973 7465 6d64 2053  ollect systemd S
│ │ │ +001124e0: 6572 7669 6365 7320 5072 6573 656e 7420  ervices Present 
│ │ │ +001124f0: 696e 2074 6865 2053 7973 7465 6d0a 2020  in the System.  
│ │ │ +00112500: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +00112510: 6e2e 636f 6d6d 616e 643a 2073 7973 7465  n.command: syste
│ │ │ +00112520: 6d63 746c 202d 7120 6c69 7374 2d75 6e69  mctl -q list-uni
│ │ │ +00112530: 742d 6669 6c65 7320 2d2d 7479 7065 2073  t-files --type s
│ │ │ +00112540: 6572 7669 6365 0a20 2020 2072 6567 6973  ervice.    regis
│ │ │ +00112550: 7465 723a 2073 6572 7669 6365 5f65 7869  ter: service_exi
│ │ │ +00112560: 7374 730a 2020 2020 6368 616e 6765 645f  sts.    changed_
│ │ │ +00112570: 7768 656e 3a20 6661 6c73 650a 2020 2020  when: false.    
│ │ │ +00112580: 6661 696c 6564 5f77 6865 6e3a 2073 6572  failed_when: ser
│ │ │ +00112590: 7669 6365 5f65 7869 7374 732e 7263 206e  vice_exists.rc n
│ │ │ +001125a0: 6f74 2069 6e20 5b30 2c20 315d 0a20 2020  ot in [0, 1].   
│ │ │ +001125b0: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ +001125c0: 7365 0a0a 2020 2d20 6e61 6d65 3a20 4469  se..  - name: Di
│ │ │ +001125d0: 7361 626c 6520 7270 6362 696e 6420 5365  sable rpcbind Se
│ │ │ +001125e0: 7276 6963 6520 2d20 456e 7375 7265 2072  rvice - Ensure r
│ │ │ +001125f0: 7063 6269 6e64 2e73 6572 7669 6365 2069  pcbind.service i
│ │ │ +00112600: 7320 4d61 736b 6564 0a20 2020 2061 6e73  s Masked.    ans
│ │ │ +00112610: 6962 6c65 2e62 7569 6c74 696e 2e73 7973  ible.builtin.sys
│ │ │ +00112620: 7465 6d64 3a0a 2020 2020 2020 6e61 6d65  temd:.      name
│ │ │ +00112630: 3a20 7270 6362 696e 642e 7365 7276 6963  : rpcbind.servic
│ │ │ +00112640: 650a 2020 2020 2020 7374 6174 653a 2073  e.      state: s
│ │ │ +00112650: 746f 7070 6564 0a20 2020 2020 2065 6e61  topped.      ena
│ │ │ +00112660: 626c 6564 3a20 6661 6c73 650a 2020 2020  bled: false.    
│ │ │ +00112670: 2020 6d61 736b 6564 3a20 7472 7565 0a20    masked: true. 
│ │ │ +00112680: 2020 2077 6865 6e3a 2073 6572 7669 6365     when: service
│ │ │ +00112690: 5f65 7869 7374 732e 7374 646f 7574 5f6c  _exists.stdout_l
│ │ │ +001126a0: 696e 6573 2069 7320 7365 6172 6368 2822  ines is search("
│ │ │ +001126b0: 7270 6362 696e 642e 7365 7276 6963 6522  rpcbind.service"
│ │ │ +001126c0: 2c20 6d75 6c74 696c 696e 653d 5472 7565  , multiline=True
│ │ │ +001126d0: 290a 0a20 202d 206e 616d 653a 2055 6e69  )..  - name: Uni
│ │ │ +001126e0: 7420 536f 636b 6574 2045 7869 7374 7320  t Socket Exists 
│ │ │ +001126f0: 2d20 7270 6362 696e 642e 736f 636b 6574  - rpcbind.socket
│ │ │ +00112700: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ +00112710: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 7379  ltin.command: sy
│ │ │ +00112720: 7374 656d 6374 6c20 2d71 206c 6973 742d  stemctl -q list-
│ │ │ +00112730: 756e 6974 2d66 696c 6573 2072 7063 6269  unit-files rpcbi
│ │ │ +00112740: 6e64 2e73 6f63 6b65 740a 2020 2020 7265  nd.socket.    re
│ │ │ +00112750: 6769 7374 6572 3a20 736f 636b 6574 5f66  gister: socket_f
│ │ │ +00112760: 696c 655f 6578 6973 7473 0a20 2020 2063  ile_exists.    c
│ │ │ +00112770: 6861 6e67 6564 5f77 6865 6e3a 2066 616c  hanged_when: fal
│ │ │ +00112780: 7365 0a20 2020 2066 6169 6c65 645f 7768  se.    failed_wh
│ │ │ +00112790: 656e 3a20 736f 636b 6574 5f66 696c 655f  en: socket_file_
│ │ │ +001127a0: 6578 6973 7473 2e72 6320 6e6f 7420 696e  exists.rc not in
│ │ │ +001127b0: 205b 302c 2031 5d0a 2020 2020 6368 6563   [0, 1].    chec
│ │ │ +001127c0: 6b5f 6d6f 6465 3a20 6661 6c73 650a 0a20  k_mode: false.. 
│ │ │ +001127d0: 202d 206e 616d 653a 2044 6973 6162 6c65   - name: Disable
│ │ │ +001127e0: 2072 7063 6269 6e64 2053 6572 7669 6365   rpcbind Service
│ │ │ +001127f0: 202d 2044 6973 6162 6c65 2053 6f63 6b65   - Disable Socke
│ │ │ +00112800: 7420 7270 6362 696e 640a 2020 2020 616e  t rpcbind.    an
│ │ │ +00112810: 7369 626c 652e 6275 696c 7469 6e2e 7379  sible.builtin.sy
│ │ │ +00112820: 7374 656d 643a 0a20 2020 2020 206e 616d  stemd:.      nam
│ │ │ +00112830: 653a 2072 7063 6269 6e64 2e73 6f63 6b65  e: rpcbind.socke
│ │ │ +00112840: 740a 2020 2020 2020 656e 6162 6c65 643a  t.      enabled:
│ │ │ +00112850: 2066 616c 7365 0a20 2020 2020 2073 7461   false.      sta
│ │ │ +00112860: 7465 3a20 7374 6f70 7065 640a 2020 2020  te: stopped.    
│ │ │ +00112870: 2020 6d61 736b 6564 3a20 7472 7565 0a20    masked: true. 
│ │ │ +00112880: 2020 2077 6865 6e3a 2073 6f63 6b65 745f     when: socket_
│ │ │ +00112890: 6669 6c65 5f65 7869 7374 732e 7374 646f  file_exists.stdo
│ │ │ +001128a0: 7574 5f6c 696e 6573 2069 7320 7365 6172  ut_lines is sear
│ │ │ +001128b0: 6368 2822 7270 6362 696e 642e 736f 636b  ch("rpcbind.sock
│ │ │ +001128c0: 6574 222c 206d 756c 7469 6c69 6e65 3d54  et", multiline=T
│ │ │ +001128d0: 7275 6529 0a20 2074 6167 733a 0a20 202d  rue).  tags:.  -
│ │ │ +001128e0: 2050 4349 2d44 5353 7634 2d32 2e32 0a20   PCI-DSSv4-2.2. 
│ │ │ +001128f0: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ +00112900: 2e34 0a20 202d 2064 6973 6162 6c65 5f73  .4.  - disable_s
│ │ │ +00112910: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ +00112920: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +00112930: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +00112940: 2d20 6c6f 775f 7365 7665 7269 7479 0a20  - low_severity. 
│ │ │ +00112950: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +00112960: 6465 640a 2020 2d20 7365 7276 6963 655f  ded.  - service_
│ │ │ +00112970: 7270 6362 696e 645f 6469 7361 626c 6564  rpcbind_disabled
│ │ │ +00112980: 0a20 202d 2073 7065 6369 616c 5f73 6572  .  - special_ser
│ │ │ +00112990: 7669 6365 5f62 6c6f 636b 0a20 2077 6865  vice_block.  whe
│ │ │ +001129a0: 6e3a 2027 226b 6572 6e65 6c22 2069 6e20  n: '"kernel" in 
│ │ │ +001129b0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001129c0: 636b 6167 6573 270a 3c2f 636f 6465 3e3c  ckages'.<
│ │ │ +001129d0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ +00112a80: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ +00112a90: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +00112b10: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +00112b20: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +00112b30: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +00112b70: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +00112b80: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +00112ba0: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ +00112bc0: 3c63 6f64 653e 696e 636c 7564 6520 6469  include di
│ │ │ +00112bd0: 7361 626c 655f 7270 6362 696e 640a 0a63  sable_rpcbind..c
│ │ │ +00112be0: 6c61 7373 2064 6973 6162 6c65 5f72 7063  lass disable_rpc
│ │ │ +00112bf0: 6269 6e64 207b 0a20 2073 6572 7669 6365  bind {.  service
│ │ │ +00112c00: 207b 2772 7063 6269 6e64 273a 0a20 2020   {'rpcbind':.   
│ │ │ +00112c10: 2065 6e61 626c 6520 3d26 6774 3b20 6661   enable => fa
│ │ │ +00112c20: 6c73 652c 0a20 2020 2065 6e73 7572 6520  lse,.    ensure 
│ │ │ +00112c30: 3d26 6774 3b20 2773 746f 7070 6564 272c  => 'stopped',
│ │ │ +00112c40: 0a20 207d 0a7d 0a3c 2f63 6f64 653e 3c2f  .  }.}.
Remediati │ │ │ +00112d00: 6f6e 204f 5342 7569 6c64 2042 6c75 6570 on OSBuild Bluep │ │ │ +00112d10: 7269 6e74 2073 6e69 7070 6574 20e2 87b2 rint snippet ... │ │ │ +00112d20: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
.[customizati
│ │ │ +00112d70: 6f6e 732e 7365 7276 6963 6573 5d0a 6d61  ons.services].ma
│ │ │ +00112d80: 736b 6564 203d 205b 2272 7063 6269 6e64  sked = ["rpcbind
│ │ │ +00112d90: 225d 0a3c 2f63 6f64 653e 3c2f 7072 653e  "].
│ │ │ 00112da0: 3c2f 6469 763e 3c2f 6469 763e 3c2f 7464
│ │ │ 00112dd0: 3c74 7220 6461 7461 2d74 742d 6964 3d22 Remediat │ │ │ -001149d0: 696f 6e20 4f53 4275 696c 6420 426c 7565 ion OSBuild Blue │ │ │ -001149e0: 7072 696e 7420 736e 6970 7065 7420 e287 print snippet .. │ │ │ -001149f0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
.[[packages]
│ │ │ -00114a40: 5d0a 6e61 6d65 203d 2022 6368 726f 6e79  ].name = "chrony
│ │ │ -00114a50: 220a 7665 7273 696f 6e20 3d20 222a 220a  ".version = "*".
│ │ │ -00114a60: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -00114b10: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ -00114b20: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
│ │ │ -00114bc0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
in
│ │ │ -00114c60: 636c 7564 6520 696e 7374 616c 6c5f 6368  clude install_ch
│ │ │ -00114c70: 726f 6e79 0a0a 636c 6173 7320 696e 7374  rony..class inst
│ │ │ -00114c80: 616c 6c5f 6368 726f 6e79 207b 0a20 2070  all_chrony {.  p
│ │ │ -00114c90: 6163 6b61 6765 207b 2027 6368 726f 6e79  ackage { 'chrony
│ │ │ -00114ca0: 273a 0a20 2020 2065 6e73 7572 6520 3d26  ':.    ensure =&
│ │ │ -00114cb0: 6774 3b20 2769 6e73 7461 6c6c 6564 272c  gt; 'installed',
│ │ │ -00114cc0: 0a20 207d 0a7d 0a3c 2f63 6f64 653e 3c2f  .  }.}.Remediati
│ │ │ -00114d80: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070  on Ansible snipp
│ │ │ -00114d90: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...
│ │ │ -00114e10: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ -00114ea0: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ -00114bb0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00114be0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00114bf0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00114c30: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -00114c40: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexi │ │ │ -00114e20: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -00114e30: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ -00114e70: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -00114e80: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
│ │ │ -00114ec0: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -00114ed0: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -00114ee0: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -00114ef0: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -00114f00: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -00114f10: 3a0a 2020 2d20 5043 492d 4453 532d 5265  :.  - PCI-DSS-Re
│ │ │ -00114f20: 712d 3130 2e34 0a20 202d 2050 4349 2d44  q-10.4.  - PCI-D
│ │ │ -00114f30: 5353 7634 2d31 302e 360a 2020 2d20 5043  SSv4-10.6.  - PC
│ │ │ -00114f40: 492d 4453 5376 342d 3130 2e36 2e31 0a20  I-DSSv4-10.6.1. 
│ │ │ -00114f50: 202d 2065 6e61 626c 655f 7374 7261 7465   - enable_strate
│ │ │ -00114f60: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ -00114f70: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ -00114f80: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ -00114f90: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -00114fa0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -00114fb0: 640a 2020 2d20 7061 636b 6167 655f 6368  d.  - package_ch
│ │ │ -00114fc0: 726f 6e79 5f69 6e73 7461 6c6c 6564 0a0a  rony_installed..
│ │ │ -00114fd0: 2d20 6e61 6d65 3a20 456e 7375 7265 2063  - name: Ensure c
│ │ │ -00114fe0: 6872 6f6e 7920 6973 2069 6e73 7461 6c6c  hrony is install
│ │ │ -00114ff0: 6564 0a20 2061 6e73 6962 6c65 2e62 7569  ed.  ansible.bui
│ │ │ -00115000: 6c74 696e 2e70 6163 6b61 6765 3a0a 2020  ltin.package:.  
│ │ │ -00115010: 2020 6e61 6d65 3a20 6368 726f 6e79 0a20    name: chrony. 
│ │ │ -00115020: 2020 2073 7461 7465 3a20 7072 6573 656e     state: presen
│ │ │ -00115030: 740a 2020 7768 656e 3a20 2722 6b65 726e  t.  when: '"kern
│ │ │ -00115040: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -00115050: 6163 7473 2e70 6163 6b61 6765 7327 0a20  acts.packages'. 
│ │ │ -00115060: 2074 6167 733a 0a20 202d 2050 4349 2d44   tags:.  - PCI-D
│ │ │ -00115070: 5353 2d52 6571 2d31 302e 340a 2020 2d20  SS-Req-10.4.  - 
│ │ │ -00115080: 5043 492d 4453 5376 342d 3130 2e36 0a20  PCI-DSSv4-10.6. 
│ │ │ -00115090: 202d 2050 4349 2d44 5353 7634 2d31 302e   - PCI-DSSv4-10.
│ │ │ -001150a0: 362e 310a 2020 2d20 656e 6162 6c65 5f73  6.1.  - enable_s
│ │ │ -001150b0: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ -001150c0: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ -001150d0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -001150e0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -001150f0: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ -00115100: 6e65 6564 6564 0a20 202d 2070 6163 6b61  needed.  - packa
│ │ │ -00115110: 6765 5f63 6872 6f6e 795f 696e 7374 616c  ge_chrony_instal
│ │ │ -00115120: 6c65 640a 3c2f 636f 6465 3e3c 2f70 7265  led.

< │ │ │ +001149f0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +00114a00: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +00114a10: 7365 2220 6964 3d22 6964 3331 3022 3e3c se" id="id310">< │ │ │ +00114a20: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +00114a30: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +00114a40: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +00114a50: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +00114a60: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +00114a70: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +00114a80: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ +00114ac0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +00114ad0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ +00114af0: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ +00114b00: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
- name: G
│ │ │ +00114b20: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ +00114b30: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ +00114b40: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ +00114b50: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ +00114b60: 733a 0a20 202d 2050 4349 2d44 5353 2d52  s:.  - PCI-DSS-R
│ │ │ +00114b70: 6571 2d31 302e 340a 2020 2d20 5043 492d  eq-10.4.  - PCI-
│ │ │ +00114b80: 4453 5376 342d 3130 2e36 0a20 202d 2050  DSSv4-10.6.  - P
│ │ │ +00114b90: 4349 2d44 5353 7634 2d31 302e 362e 310a  CI-DSSv4-10.6.1.
│ │ │ +00114ba0: 2020 2d20 656e 6162 6c65 5f73 7472 6174    - enable_strat
│ │ │ +00114bb0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +00114bc0: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +00114bd0: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +00114be0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +00114bf0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +00114c00: 6564 0a20 202d 2070 6163 6b61 6765 5f63  ed.  - package_c
│ │ │ +00114c10: 6872 6f6e 795f 696e 7374 616c 6c65 640a  hrony_installed.
│ │ │ +00114c20: 0a2d 206e 616d 653a 2045 6e73 7572 6520  .- name: Ensure 
│ │ │ +00114c30: 6368 726f 6e79 2069 7320 696e 7374 616c  chrony is instal
│ │ │ +00114c40: 6c65 640a 2020 616e 7369 626c 652e 6275  led.  ansible.bu
│ │ │ +00114c50: 696c 7469 6e2e 7061 636b 6167 653a 0a20  iltin.package:. 
│ │ │ +00114c60: 2020 206e 616d 653a 2063 6872 6f6e 790a     name: chrony.
│ │ │ +00114c70: 2020 2020 7374 6174 653a 2070 7265 7365      state: prese
│ │ │ +00114c80: 6e74 0a20 2077 6865 6e3a 2027 226b 6572  nt.  when: '"ker
│ │ │ +00114c90: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +00114ca0: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ +00114cb0: 2020 7461 6773 3a0a 2020 2d20 5043 492d    tags:.  - PCI-
│ │ │ +00114cc0: 4453 532d 5265 712d 3130 2e34 0a20 202d  DSS-Req-10.4.  -
│ │ │ +00114cd0: 2050 4349 2d44 5353 7634 2d31 302e 360a   PCI-DSSv4-10.6.
│ │ │ +00114ce0: 2020 2d20 5043 492d 4453 5376 342d 3130    - PCI-DSSv4-10
│ │ │ +00114cf0: 2e36 2e31 0a20 202d 2065 6e61 626c 655f  .6.1.  - enable_
│ │ │ +00114d00: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ +00114d10: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +00114d20: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +00114d30: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +00114d40: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ +00114d50: 5f6e 6565 6465 640a 2020 2d20 7061 636b  _needed.  - pack
│ │ │ +00114d60: 6167 655f 6368 726f 6e79 5f69 6e73 7461  age_chrony_insta
│ │ │ +00114d70: 6c6c 6564 0a3c 2f63 6f64 653e 3c2f 7072  lled.
Remediation │ │ │ +00114e30: 2050 7570 7065 7420 736e 6970 7065 7420 Puppet snippet │ │ │ +00114e40: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ +00114ed0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +00114ef0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +00114f10: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +00114f40: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +00114f50: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ +00114f60: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
include insta
│ │ │ +00114f80: 6c6c 5f63 6872 6f6e 790a 0a63 6c61 7373  ll_chrony..class
│ │ │ +00114f90: 2069 6e73 7461 6c6c 5f63 6872 6f6e 7920   install_chrony 
│ │ │ +00114fa0: 7b0a 2020 7061 636b 6167 6520 7b20 2763  {.  package { 'c
│ │ │ +00114fb0: 6872 6f6e 7927 3a0a 2020 2020 656e 7375  hrony':.    ensu
│ │ │ +00114fc0: 7265 203d 2667 743b 2027 696e 7374 616c  re => 'instal
│ │ │ +00114fd0: 6c65 6427 2c0a 2020 7d0a 7d0a 3c2f 636f  led',.  }.}.
< │ │ │ +00114ff0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +00115000: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +00115010: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +00115020: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +00115030: 6433 3132 2220 7461 6269 6e64 6578 3d22 d312" tabindex=" │ │ │ +00115040: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +00115050: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +00115060: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +00115070: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +00115080: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +00115090: 6469 6174 696f 6e20 4f53 4275 696c 6420 diation OSBuild │ │ │ +001150a0: 426c 7565 7072 696e 7420 736e 6970 7065 Blueprint snippe │ │ │ +001150b0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
.[[packa │ │ │ +00115100: 6765 735d 5d0a 6e61 6d65 203d 2022 6368 ges]].name = "ch │ │ │ +00115110: 726f 6e79 220a 7665 7273 696f 6e20 3d20 rony".version = │ │ │ +00115120: 222a 220a 3c2f 636f 6465 3e3c 2f70 7265 "*".
< │ │ │ 00115150: 2f74 6162 6c65 3e3c 2f74 643e 3c2f 7472 /table>R │ │ │ -0011aeb0: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ -0011aec0: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
< │ │ │ -0011af60: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0011af70: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -0011afc0: 3c74 723e 3c74 683e 5374 7261 7465 6779
.i
│ │ │ -0011b000: 6e63 6c75 6465 2072 656d 6f76 655f 7869  nclude remove_xi
│ │ │ -0011b010: 6e65 7464 0a0a 636c 6173 7320 7265 6d6f  netd..class remo
│ │ │ -0011b020: 7665 5f78 696e 6574 6420 7b0a 2020 7061  ve_xinetd {.  pa
│ │ │ -0011b030: 636b 6167 6520 7b20 2778 696e 6574 6427  ckage { 'xinetd'
│ │ │ -0011b040: 3a0a 2020 2020 656e 7375 7265 203d 2667  :.    ensure =&g
│ │ │ -0011b050: 743b 2027 7075 7267 6564 272c 0a20 207d  t; 'purged',.  }
│ │ │ -0011b060: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e  .}.
│ │ │ -0011b070: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation A │ │ │ -0011b120: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ -0011b130: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
C │ │ │ -0011af50: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -0011af80: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -0011af90: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -0011afd0: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ -0011afe0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ -0011b1b0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -0011b1d0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -0011b220: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -0011b250: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -0011b1c0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -0011b1e0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -0011b230: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -0011b240: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
- name: Gathe
│ │ │ -0011b270: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ -0011b280: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ -0011b290: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ -0011b2a0: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ -0011b2b0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -0011b2c0: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ -0011b2d0: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ -0011b2e0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -0011b2f0: 4d2d 3728 6229 0a20 202d 2050 4349 2d44  M-7(b).  - PCI-D
│ │ │ -0011b300: 5353 7634 2d32 2e32 0a20 202d 2050 4349  SSv4-2.2.  - PCI
│ │ │ -0011b310: 2d44 5353 7634 2d32 2e32 2e34 0a20 202d  -DSSv4-2.2.4.  -
│ │ │ -0011b320: 2064 6973 6162 6c65 5f73 7472 6174 6567   disable_strateg
│ │ │ -0011b330: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -0011b340: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -0011b350: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -0011b360: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ -0011b370: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ -0011b380: 2d20 7061 636b 6167 655f 7869 6e65 7464  - package_xinetd
│ │ │ -0011b390: 5f72 656d 6f76 6564 0a0a 2d20 6e61 6d65  _removed..- name
│ │ │ -0011b3a0: 3a20 2755 6e69 6e73 7461 6c6c 2078 696e  : 'Uninstall xin
│ │ │ -0011b3b0: 6574 6420 5061 636b 6167 653a 2045 6e73  etd Package: Ens
│ │ │ -0011b3c0: 7572 6520 7869 6e65 7464 2069 7320 7265  ure xinetd is re
│ │ │ -0011b3d0: 6d6f 7665 6427 0a20 2061 6e73 6962 6c65  moved'.  ansible
│ │ │ -0011b3e0: 2e62 7569 6c74 696e 2e70 6163 6b61 6765  .builtin.package
│ │ │ -0011b3f0: 3a0a 2020 2020 6e61 6d65 3a20 7869 6e65  :.    name: xine
│ │ │ -0011b400: 7464 0a20 2020 2073 7461 7465 3a20 6162  td.    state: ab
│ │ │ -0011b410: 7365 6e74 0a20 2077 6865 6e3a 2027 226b  sent.  when: '"k
│ │ │ -0011b420: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -0011b430: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -0011b440: 270a 2020 7461 6773 3a0a 2020 2d20 4e49  '.  tags:.  - NI
│ │ │ -0011b450: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -0011b460: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -0011b470: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ -0011b480: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ -0011b490: 290a 2020 2d20 5043 492d 4453 5376 342d  ).  - PCI-DSSv4-
│ │ │ -0011b4a0: 322e 320a 2020 2d20 5043 492d 4453 5376  2.2.  - PCI-DSSv
│ │ │ -0011b4b0: 342d 322e 322e 340a 2020 2d20 6469 7361  4-2.2.4.  - disa
│ │ │ -0011b4c0: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ -0011b4d0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -0011b4e0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -0011b4f0: 6f6e 0a20 202d 206c 6f77 5f73 6576 6572  on.  - low_sever
│ │ │ -0011b500: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ -0011b510: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ -0011b520: 6b61 6765 5f78 696e 6574 645f 7265 6d6f  kage_xinetd_remo
│ │ │ -0011b530: 7665 640a 3c2f 636f 6465 3e3c 2f70 7265  ved.

│ │ │ +0011af60: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ +0011b000: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +0011b010: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +0011b020: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ +0011b030: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ +0011b040: 746f 0a20 2074 6167 733a 0a20 202d 204e  to.  tags:.  - N
│ │ │ +0011b050: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +0011b060: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +0011b070: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ +0011b080: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +0011b090: 6229 0a20 202d 2050 4349 2d44 5353 7634  b).  - PCI-DSSv4
│ │ │ +0011b0a0: 2d32 2e32 0a20 202d 2050 4349 2d44 5353  -2.2.  - PCI-DSS
│ │ │ +0011b0b0: 7634 2d32 2e32 2e34 0a20 202d 2064 6973  v4-2.2.4.  - dis
│ │ │ +0011b0c0: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ +0011b0d0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +0011b0e0: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +0011b0f0: 696f 6e0a 2020 2d20 6c6f 775f 7365 7665  ion.  - low_seve
│ │ │ +0011b100: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ +0011b110: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ +0011b120: 636b 6167 655f 7869 6e65 7464 5f72 656d  ckage_xinetd_rem
│ │ │ +0011b130: 6f76 6564 0a0a 2d20 6e61 6d65 3a20 2755  oved..- name: 'U
│ │ │ +0011b140: 6e69 6e73 7461 6c6c 2078 696e 6574 6420  ninstall xinetd 
│ │ │ +0011b150: 5061 636b 6167 653a 2045 6e73 7572 6520  Package: Ensure 
│ │ │ +0011b160: 7869 6e65 7464 2069 7320 7265 6d6f 7665  xinetd is remove
│ │ │ +0011b170: 6427 0a20 2061 6e73 6962 6c65 2e62 7569  d'.  ansible.bui
│ │ │ +0011b180: 6c74 696e 2e70 6163 6b61 6765 3a0a 2020  ltin.package:.  
│ │ │ +0011b190: 2020 6e61 6d65 3a20 7869 6e65 7464 0a20    name: xinetd. 
│ │ │ +0011b1a0: 2020 2073 7461 7465 3a20 6162 7365 6e74     state: absent
│ │ │ +0011b1b0: 0a20 2077 6865 6e3a 2027 226b 6572 6e65  .  when: '"kerne
│ │ │ +0011b1c0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +0011b1d0: 6374 732e 7061 636b 6167 6573 270a 2020  cts.packages'.  
│ │ │ +0011b1e0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +0011b1f0: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ +0011b200: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +0011b210: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ +0011b220: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ +0011b230: 2d20 5043 492d 4453 5376 342d 322e 320a  - PCI-DSSv4-2.2.
│ │ │ +0011b240: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ +0011b250: 322e 340a 2020 2d20 6469 7361 626c 655f  2.4.  - disable_
│ │ │ +0011b260: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ +0011b270: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +0011b280: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +0011b290: 202d 206c 6f77 5f73 6576 6572 6974 790a   - low_severity.
│ │ │ +0011b2a0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +0011b2b0: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ +0011b2c0: 5f78 696e 6574 645f 7265 6d6f 7665 640a  _xinetd_removed.
│ │ │ +0011b2d0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +0011b380: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +0011b390: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
│ │ │ +0011af50: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +0011af80: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +0011af90: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +0011afd0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +0011afe0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
│ │ │ +0011b430: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ +0011b4d0: 696e 636c 7564 6520 7265 6d6f 7665 5f78  include remove_x
│ │ │ +0011b4e0: 696e 6574 640a 0a63 6c61 7373 2072 656d  inetd..class rem
│ │ │ +0011b4f0: 6f76 655f 7869 6e65 7464 207b 0a20 2070  ove_xinetd {.  p
│ │ │ +0011b500: 6163 6b61 6765 207b 2027 7869 6e65 7464  ackage { 'xinetd
│ │ │ +0011b510: 273a 0a20 2020 2065 6e73 7572 6520 3d26  ':.    ensure =&
│ │ │ +0011b520: 6774 3b20 2770 7572 6765 6427 2c0a 2020  gt; 'purged',.  
│ │ │ +0011b530: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Reme │ │ │ -0011c840: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ -0011c850: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
│ │ │ +0011b420: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +0011b450: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +0011b460: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +0011b4a0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +0011b4b0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Comp │ │ │ -0011c8e0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -0011c8f0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -0011c910: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -0011c930: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -0011c940: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -0011c980: 3c70 7265 3e3c 636f 6465 3e0a 696e 636c
.incl
│ │ │ -0011c990: 7564 6520 7265 6d6f 7665 5f79 7062 696e  ude remove_ypbin
│ │ │ -0011c9a0: 640a 0a63 6c61 7373 2072 656d 6f76 655f  d..class remove_
│ │ │ -0011c9b0: 7970 6269 6e64 207b 0a20 2070 6163 6b61  ypbind {.  packa
│ │ │ -0011c9c0: 6765 207b 2027 7970 6269 6e64 273a 0a20  ge { 'ypbind':. 
│ │ │ -0011c9d0: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ -0011c9e0: 2770 7572 6765 6427 2c0a 2020 7d0a 7d0a  'purged',.  }.}.
│ │ │ -0011c9f0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -0011caa0: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -0011cab0: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -0011cac0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -0011cb90: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0011cba0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -0011cbf0: 2d20 6e61 6d65 3a20 2752 656d 6f76 6520  - name: 'Remove 
│ │ │ -0011cc00: 4e49 5320 436c 6965 6e74 3a20 456e 7375  NIS Client: Ensu
│ │ │ -0011cc10: 7265 2079 7062 696e 6420 6973 2072 656d  re ypbind is rem
│ │ │ -0011cc20: 6f76 6564 270a 2020 616e 7369 626c 652e  oved'.  ansible.
│ │ │ -0011cc30: 6275 696c 7469 6e2e 7061 636b 6167 653a  builtin.package:
│ │ │ -0011cc40: 0a20 2020 206e 616d 653a 2079 7062 696e  .    name: ypbin
│ │ │ -0011cc50: 640a 2020 2020 7374 6174 653a 2061 6273  d.    state: abs
│ │ │ -0011cc60: 656e 740a 2020 7461 6773 3a0a 2020 2d20  ent.  tags:.  - 
│ │ │ -0011cc70: 5043 492d 4453 5376 342d 322e 320a 2020  PCI-DSSv4-2.2.  
│ │ │ -0011cc80: 2d20 5043 492d 4453 5376 342d 322e 322e  - PCI-DSSv4-2.2.
│ │ │ -0011cc90: 340a 2020 2d20 6469 7361 626c 655f 7374  4.  - disable_st
│ │ │ -0011cca0: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ -0011ccb0: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -0011ccc0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -0011ccd0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -0011cce0: 640a 2020 2d20 7061 636b 6167 655f 7970  d.  - package_yp
│ │ │ -0011ccf0: 6269 6e64 5f72 656d 6f76 6564 0a20 202d  bind_removed.  -
│ │ │ -0011cd00: 2075 6e6b 6e6f 776e 5f73 6576 6572 6974   unknown_severit
│ │ │ -0011cd10: 790a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  y.
< │ │ │ +0011c840: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ +0011c850: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +0011c860: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Complexity:low
Disrup │ │ │ -0011cb70: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0011cb80: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0011cbc0: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -0011cbd0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Com │ │ │ +0011c8e0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +0011c910: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +0011c930: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +0011c940: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +0011c960: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +0011c970: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ +0011c990: 6d65 3a20 2752 656d 6f76 6520 4e49 5320  me: 'Remove NIS 
│ │ │ +0011c9a0: 436c 6965 6e74 3a20 456e 7375 7265 2079  Client: Ensure y
│ │ │ +0011c9b0: 7062 696e 6420 6973 2072 656d 6f76 6564  pbind is removed
│ │ │ +0011c9c0: 270a 2020 616e 7369 626c 652e 6275 696c  '.  ansible.buil
│ │ │ +0011c9d0: 7469 6e2e 7061 636b 6167 653a 0a20 2020  tin.package:.   
│ │ │ +0011c9e0: 206e 616d 653a 2079 7062 696e 640a 2020   name: ypbind.  
│ │ │ +0011c9f0: 2020 7374 6174 653a 2061 6273 656e 740a    state: absent.
│ │ │ +0011ca00: 2020 7461 6773 3a0a 2020 2d20 5043 492d    tags:.  - PCI-
│ │ │ +0011ca10: 4453 5376 342d 322e 320a 2020 2d20 5043  DSSv4-2.2.  - PC
│ │ │ +0011ca20: 492d 4453 5376 342d 322e 322e 340a 2020  I-DSSv4-2.2.4.  
│ │ │ +0011ca30: 2d20 6469 7361 626c 655f 7374 7261 7465  - disable_strate
│ │ │ +0011ca40: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ +0011ca50: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ +0011ca60: 7372 7570 7469 6f6e 0a20 202d 206e 6f5f  sruption.  - no_
│ │ │ +0011ca70: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ +0011ca80: 2d20 7061 636b 6167 655f 7970 6269 6e64  - package_ypbind
│ │ │ +0011ca90: 5f72 656d 6f76 6564 0a20 202d 2075 6e6b  _removed.  - unk
│ │ │ +0011caa0: 6e6f 776e 5f73 6576 6572 6974 790a 3c2f  nown_severity.
Re │ │ │ +0011cb60: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ +0011cb70: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +0011cb80: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +0011cc20: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0011cc70: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.in
│ │ │ +0011ccb0: 636c 7564 6520 7265 6d6f 7665 5f79 7062  clude remove_ypb
│ │ │ +0011ccc0: 696e 640a 0a63 6c61 7373 2072 656d 6f76  ind..class remov
│ │ │ +0011ccd0: 655f 7970 6269 6e64 207b 0a20 2070 6163  e_ypbind {.  pac
│ │ │ +0011cce0: 6b61 6765 207b 2027 7970 6269 6e64 273a  kage { 'ypbind':
│ │ │ +0011ccf0: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ +0011cd00: 3b20 2770 7572 6765 6427 2c0a 2020 7d0a  ; 'purged',.  }.
│ │ │ +0011cd10: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ 0011cd20: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div> │ │ │ -0011df80: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ -0011df90: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
Co │ │ │ +0011cc00: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0011cc30: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0011cc50: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0011cc60: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0011cc80: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +0011cc90: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ -0011e030: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ -0011e0d0: 696e 636c 7564 6520 7265 6d6f 7665 5f74  include remove_t
│ │ │ -0011e0e0: 656c 6e65 740a 0a63 6c61 7373 2072 656d  elnet..class rem
│ │ │ -0011e0f0: 6f76 655f 7465 6c6e 6574 207b 0a20 2070  ove_telnet {.  p
│ │ │ -0011e100: 6163 6b61 6765 207b 2027 7465 6c6e 6574  ackage { 'telnet
│ │ │ -0011e110: 273a 0a20 2020 2065 6e73 7572 6520 3d26  ':.    ensure =&
│ │ │ -0011e120: 6774 3b20 2770 7572 6765 6427 2c0a 2020  gt; 'purged',.  
│ │ │ -0011e130: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Remediation │ │ │ -0011e1f0: 416e 7369 626c 6520 736e 6970 7065 7420 Ansible snippet │ │ │ -0011e200: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
low< │ │ │ -0011e2d0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
│ │ │ -0011e020: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -0011e050: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -0011e060: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -0011e0a0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -0011e0b0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity: │ │ │ -0011e290: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ -0011e2b0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:false
St │ │ │ -0011e300: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -0011e310: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
- name: 'Rem
│ │ │ -0011e340: 6f76 6520 7465 6c6e 6574 2043 6c69 656e  ove telnet Clien
│ │ │ -0011e350: 7473 3a20 456e 7375 7265 2074 656c 6e65  ts: Ensure telne
│ │ │ -0011e360: 7420 6973 2072 656d 6f76 6564 270a 2020  t is removed'.  
│ │ │ -0011e370: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -0011e380: 7061 636b 6167 653a 0a20 2020 206e 616d  package:.    nam
│ │ │ -0011e390: 653a 2074 656c 6e65 740a 2020 2020 7374  e: telnet.    st
│ │ │ -0011e3a0: 6174 653a 2061 6273 656e 740a 2020 7461  ate: absent.  ta
│ │ │ -0011e3b0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -0011e3c0: 2d31 3731 2d33 2e31 2e31 330a 2020 2d20  -171-3.1.13.  - 
│ │ │ -0011e3d0: 5043 492d 4453 5376 342d 322e 320a 2020  PCI-DSSv4-2.2.  
│ │ │ -0011e3e0: 2d20 5043 492d 4453 5376 342d 322e 322e  - PCI-DSSv4-2.2.
│ │ │ -0011e3f0: 340a 2020 2d20 6469 7361 626c 655f 7374  4.  - disable_st
│ │ │ -0011e400: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ -0011e410: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -0011e420: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -0011e430: 206c 6f77 5f73 6576 6572 6974 790a 2020   low_severity.  
│ │ │ -0011e440: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -0011e450: 6564 0a20 202d 2070 6163 6b61 6765 5f74  ed.  - package_t
│ │ │ -0011e460: 656c 6e65 745f 7265 6d6f 7665 640a 3c2f  elnet_removed.
< │ │ │ +0011e070: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +0011e080: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ +0011e0d0: 2d20 6e61 6d65 3a20 2752 656d 6f76 6520  - name: 'Remove 
│ │ │ +0011e0e0: 7465 6c6e 6574 2043 6c69 656e 7473 3a20  telnet Clients: 
│ │ │ +0011e0f0: 456e 7375 7265 2074 656c 6e65 7420 6973  Ensure telnet is
│ │ │ +0011e100: 2072 656d 6f76 6564 270a 2020 616e 7369   removed'.  ansi
│ │ │ +0011e110: 626c 652e 6275 696c 7469 6e2e 7061 636b  ble.builtin.pack
│ │ │ +0011e120: 6167 653a 0a20 2020 206e 616d 653a 2074  age:.    name: t
│ │ │ +0011e130: 656c 6e65 740a 2020 2020 7374 6174 653a  elnet.    state:
│ │ │ +0011e140: 2061 6273 656e 740a 2020 7461 6773 3a0a   absent.  tags:.
│ │ │ +0011e150: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ +0011e160: 2d33 2e31 2e31 330a 2020 2d20 5043 492d  -3.1.13.  - PCI-
│ │ │ +0011e170: 4453 5376 342d 322e 320a 2020 2d20 5043  DSSv4-2.2.  - PC
│ │ │ +0011e180: 492d 4453 5376 342d 322e 322e 340a 2020  I-DSSv4-2.2.4.  
│ │ │ +0011e190: 2d20 6469 7361 626c 655f 7374 7261 7465  - disable_strate
│ │ │ +0011e1a0: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ +0011e1b0: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ +0011e1c0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +0011e1d0: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ +0011e1e0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ +0011e1f0: 202d 2070 6163 6b61 6765 5f74 656c 6e65   - package_telne
│ │ │ +0011e200: 745f 7265 6d6f 7665 640a 3c2f 636f 6465  t_removed.
Remedi │ │ │ +0011e2c0: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ +0011e2d0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +0011e2e0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +0011e310: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Complexity:low
Disrup │ │ │ +0011e050: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +0011e060: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +0011e0a0: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ +0011e0b0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ +0011e380: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +0011e3a0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +0011e3d0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +0011e360: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +0011e370: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +0011e3b0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +0011e3c0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

.includ │ │ │ +0011e410: 6520 7265 6d6f 7665 5f74 656c 6e65 740a e remove_telnet. │ │ │ +0011e420: 0a63 6c61 7373 2072 656d 6f76 655f 7465 .class remove_te │ │ │ +0011e430: 6c6e 6574 207b 0a20 2070 6163 6b61 6765 lnet {. package │ │ │ +0011e440: 207b 2027 7465 6c6e 6574 273a 0a20 2020 { 'telnet':. │ │ │ +0011e450: 2065 6e73 7572 6520 3d26 6774 3b20 2770 ensure => 'p │ │ │ +0011e460: 7572 6765 6427 2c0a 2020 7d0a 7d0a 3c2f urged',. }.}.

R │ │ │ -0011ef70: 656d 6564 6961 7469 6f6e 204f 5342 7569 emediation OSBui │ │ │ -0011ef80: 6c64 2042 6c75 6570 7269 6e74 2073 6e69 ld Blueprint sni │ │ │ -0011ef90: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -0011efa0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -0011efd0: 3c70 7265 3e3c 636f 6465 3e0a 5b63 7573
.[cus
│ │ │ -0011efe0: 746f 6d69 7a61 7469 6f6e 732e 7365 7276  tomizations.serv
│ │ │ -0011eff0: 6963 6573 5d0a 6d61 736b 6564 203d 205b  ices].masked = [
│ │ │ -0011f000: 2272 7379 6e63 6422 5d0a 3c2f 636f 6465  "rsyncd"].
Remedi │ │ │ -0011f0c0: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ -0011f0d0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -0011f0e0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -0011f110: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -0011f180: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -0011f1a0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -0011f1d0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ -0011f1f0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ -0011f160: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -0011f170: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -0011f1b0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -0011f1c0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
include │ │ │ -0011f210: 6469 7361 626c 655f 7273 796e 6364 0a0a disable_rsyncd.. │ │ │ -0011f220: 636c 6173 7320 6469 7361 626c 655f 7273 class disable_rs │ │ │ -0011f230: 796e 6364 207b 0a20 2073 6572 7669 6365 yncd {. service │ │ │ -0011f240: 207b 2772 7379 6e63 6427 3a0a 2020 2020 {'rsyncd':. │ │ │ -0011f250: 656e 6162 6c65 203d 2667 743b 2066 616c enable => fal │ │ │ -0011f260: 7365 2c0a 2020 2020 656e 7375 7265 203d se,. ensure = │ │ │ -0011f270: 2667 743b 2027 7374 6f70 7065 6427 2c0a > 'stopped',. │ │ │ -0011f280: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 }.}.

Remediatio │ │ │ -0011f340: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ -0011f350: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -0011f3d0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -0011f3e0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -0011f400: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -0011f410: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -0011f430: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -0011f450: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ -0011f480: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -0011f490: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -0011f4a0: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -0011f4b0: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -0011f4c0: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -0011f4d0: 3a0a 2020 2d20 5043 492d 4453 5376 342d  :.  - PCI-DSSv4-
│ │ │ -0011f4e0: 322e 320a 2020 2d20 5043 492d 4453 5376  2.2.  - PCI-DSSv
│ │ │ -0011f4f0: 342d 322e 322e 340a 2020 2d20 6469 7361  4-2.2.4.  - disa
│ │ │ -0011f500: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ -0011f510: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -0011f520: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -0011f530: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ -0011f540: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ -0011f550: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ -0011f560: 7365 7276 6963 655f 7273 796e 6364 5f64  service_rsyncd_d
│ │ │ -0011f570: 6973 6162 6c65 640a 0a2d 206e 616d 653a  isabled..- name:
│ │ │ -0011f580: 2045 6e73 7572 6520 7273 796e 6364 2073   Ensure rsyncd s
│ │ │ -0011f590: 6572 7669 6365 2069 7320 6469 7361 626c  ervice is disabl
│ │ │ -0011f5a0: 6564 202d 2044 6973 6162 6c65 2073 6572  ed - Disable ser
│ │ │ -0011f5b0: 7669 6365 2072 7379 6e63 640a 2020 626c  vice rsyncd.  bl
│ │ │ -0011f5c0: 6f63 6b3a 0a0a 2020 2d20 6e61 6d65 3a20  ock:..  - name: 
│ │ │ -0011f5d0: 456e 7375 7265 2072 7379 6e63 6420 7365  Ensure rsyncd se
│ │ │ -0011f5e0: 7276 6963 6520 6973 2064 6973 6162 6c65  rvice is disable
│ │ │ -0011f5f0: 6420 2d20 436f 6c6c 6563 7420 7379 7374  d - Collect syst
│ │ │ -0011f600: 656d 6420 5365 7276 6963 6573 2050 7265  emd Services Pre
│ │ │ -0011f610: 7365 6e74 2069 6e0a 2020 2020 2020 7468  sent in.      th
│ │ │ -0011f620: 6520 5379 7374 656d 0a20 2020 2061 6e73  e System.    ans
│ │ │ -0011f630: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d  ible.builtin.com
│ │ │ -0011f640: 6d61 6e64 3a20 7379 7374 656d 6374 6c20  mand: systemctl 
│ │ │ -0011f650: 2d71 206c 6973 742d 756e 6974 2d66 696c  -q list-unit-fil
│ │ │ -0011f660: 6573 202d 2d74 7970 6520 7365 7276 6963  es --type servic
│ │ │ -0011f670: 650a 2020 2020 7265 6769 7374 6572 3a20  e.    register: 
│ │ │ -0011f680: 7365 7276 6963 655f 6578 6973 7473 0a20  service_exists. 
│ │ │ -0011f690: 2020 2063 6861 6e67 6564 5f77 6865 6e3a     changed_when:
│ │ │ -0011f6a0: 2066 616c 7365 0a20 2020 2066 6169 6c65   false.    faile
│ │ │ -0011f6b0: 645f 7768 656e 3a20 7365 7276 6963 655f  d_when: service_
│ │ │ -0011f6c0: 6578 6973 7473 2e72 6320 6e6f 7420 696e  exists.rc not in
│ │ │ -0011f6d0: 205b 302c 2031 5d0a 2020 2020 6368 6563   [0, 1].    chec
│ │ │ -0011f6e0: 6b5f 6d6f 6465 3a20 6661 6c73 650a 0a20  k_mode: false.. 
│ │ │ -0011f6f0: 202d 206e 616d 653a 2045 6e73 7572 6520   - name: Ensure 
│ │ │ -0011f700: 7273 796e 6364 2073 6572 7669 6365 2069  rsyncd service i
│ │ │ -0011f710: 7320 6469 7361 626c 6564 202d 2045 6e73  s disabled - Ens
│ │ │ -0011f720: 7572 6520 7273 796e 6364 2e73 6572 7669  ure rsyncd.servi
│ │ │ -0011f730: 6365 2069 7320 4d61 736b 6564 0a20 2020  ce is Masked.   
│ │ │ -0011f740: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -0011f750: 2e73 7973 7465 6d64 3a0a 2020 2020 2020  .systemd:.      
│ │ │ -0011f760: 6e61 6d65 3a20 7273 796e 6364 2e73 6572  name: rsyncd.ser
│ │ │ -0011f770: 7669 6365 0a20 2020 2020 2073 7461 7465  vice.      state
│ │ │ -0011f780: 3a20 7374 6f70 7065 640a 2020 2020 2020  : stopped.      
│ │ │ -0011f790: 656e 6162 6c65 643a 2066 616c 7365 0a20  enabled: false. 
│ │ │ -0011f7a0: 2020 2020 206d 6173 6b65 643a 2074 7275       masked: tru
│ │ │ -0011f7b0: 650a 2020 2020 7768 656e 3a20 7365 7276  e.    when: serv
│ │ │ -0011f7c0: 6963 655f 6578 6973 7473 2e73 7464 6f75  ice_exists.stdou
│ │ │ -0011f7d0: 745f 6c69 6e65 7320 6973 2073 6561 7263  t_lines is searc
│ │ │ -0011f7e0: 6828 2272 7379 6e63 642e 7365 7276 6963  h("rsyncd.servic
│ │ │ -0011f7f0: 6522 2c20 6d75 6c74 696c 696e 653d 5472  e", multiline=Tr
│ │ │ -0011f800: 7565 290a 0a20 202d 206e 616d 653a 2055  ue)..  - name: U
│ │ │ -0011f810: 6e69 7420 536f 636b 6574 2045 7869 7374  nit Socket Exist
│ │ │ -0011f820: 7320 2d20 7273 796e 6364 2e73 6f63 6b65  s - rsyncd.socke
│ │ │ -0011f830: 740a 2020 2020 616e 7369 626c 652e 6275  t.    ansible.bu
│ │ │ -0011f840: 696c 7469 6e2e 636f 6d6d 616e 643a 2073  iltin.command: s
│ │ │ -0011f850: 7973 7465 6d63 746c 202d 7120 6c69 7374  ystemctl -q list
│ │ │ -0011f860: 2d75 6e69 742d 6669 6c65 7320 7273 796e  -unit-files rsyn
│ │ │ -0011f870: 6364 2e73 6f63 6b65 740a 2020 2020 7265  cd.socket.    re
│ │ │ -0011f880: 6769 7374 6572 3a20 736f 636b 6574 5f66  gister: socket_f
│ │ │ -0011f890: 696c 655f 6578 6973 7473 0a20 2020 2063  ile_exists.    c
│ │ │ -0011f8a0: 6861 6e67 6564 5f77 6865 6e3a 2066 616c  hanged_when: fal
│ │ │ -0011f8b0: 7365 0a20 2020 2066 6169 6c65 645f 7768  se.    failed_wh
│ │ │ -0011f8c0: 656e 3a20 736f 636b 6574 5f66 696c 655f  en: socket_file_
│ │ │ -0011f8d0: 6578 6973 7473 2e72 6320 6e6f 7420 696e  exists.rc not in
│ │ │ -0011f8e0: 205b 302c 2031 5d0a 2020 2020 6368 6563   [0, 1].    chec
│ │ │ -0011f8f0: 6b5f 6d6f 6465 3a20 6661 6c73 650a 0a20  k_mode: false.. 
│ │ │ -0011f900: 202d 206e 616d 653a 2045 6e73 7572 6520   - name: Ensure 
│ │ │ -0011f910: 7273 796e 6364 2073 6572 7669 6365 2069  rsyncd service i
│ │ │ -0011f920: 7320 6469 7361 626c 6564 202d 2044 6973  s disabled - Dis
│ │ │ -0011f930: 6162 6c65 2053 6f63 6b65 7420 7273 796e  able Socket rsyn
│ │ │ -0011f940: 6364 0a20 2020 2061 6e73 6962 6c65 2e62  cd.    ansible.b
│ │ │ -0011f950: 7569 6c74 696e 2e73 7973 7465 6d64 3a0a  uiltin.systemd:.
│ │ │ -0011f960: 2020 2020 2020 6e61 6d65 3a20 7273 796e        name: rsyn
│ │ │ -0011f970: 6364 2e73 6f63 6b65 740a 2020 2020 2020  cd.socket.      
│ │ │ -0011f980: 656e 6162 6c65 643a 2066 616c 7365 0a20  enabled: false. 
│ │ │ -0011f990: 2020 2020 2073 7461 7465 3a20 7374 6f70       state: stop
│ │ │ -0011f9a0: 7065 640a 2020 2020 2020 6d61 736b 6564  ped.      masked
│ │ │ -0011f9b0: 3a20 7472 7565 0a20 2020 2077 6865 6e3a  : true.    when:
│ │ │ -0011f9c0: 2073 6f63 6b65 745f 6669 6c65 5f65 7869   socket_file_exi
│ │ │ -0011f9d0: 7374 732e 7374 646f 7574 5f6c 696e 6573  sts.stdout_lines
│ │ │ -0011f9e0: 2069 7320 7365 6172 6368 2822 7273 796e   is search("rsyn
│ │ │ -0011f9f0: 6364 2e73 6f63 6b65 7422 2c20 6d75 6c74  cd.socket", mult
│ │ │ -0011fa00: 696c 696e 653d 5472 7565 290a 2020 7461  iline=True).  ta
│ │ │ -0011fa10: 6773 3a0a 2020 2d20 5043 492d 4453 5376  gs:.  - PCI-DSSv
│ │ │ -0011fa20: 342d 322e 320a 2020 2d20 5043 492d 4453  4-2.2.  - PCI-DS
│ │ │ -0011fa30: 5376 342d 322e 322e 340a 2020 2d20 6469  Sv4-2.2.4.  - di
│ │ │ -0011fa40: 7361 626c 655f 7374 7261 7465 6779 0a20  sable_strategy. 
│ │ │ -0011fa50: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -0011fa60: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -0011fa70: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ -0011fa80: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ -0011fa90: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ -0011faa0: 2d20 7365 7276 6963 655f 7273 796e 6364  - service_rsyncd
│ │ │ -0011fab0: 5f64 6973 6162 6c65 640a 2020 2d20 7370  _disabled.  - sp
│ │ │ -0011fac0: 6563 6961 6c5f 7365 7276 6963 655f 626c  ecial_service_bl
│ │ │ -0011fad0: 6f63 6b0a 2020 7768 656e 3a20 2722 6b65  ock.  when: '"ke
│ │ │ -0011fae0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -0011faf0: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ +0011ef70: 656d 6564 6961 7469 6f6e 2041 6e73 6962  emediation Ansib
│ │ │ +0011ef80: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f  le snippet ...
│ │ │ +0011f020: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ +0011f0c0: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +0011f0d0: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +0011f0e0: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ +0011f0f0: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ +0011f100: 746f 0a20 2074 6167 733a 0a20 202d 2050  to.  tags:.  - P
│ │ │ +0011f110: 4349 2d44 5353 7634 2d32 2e32 0a20 202d  CI-DSSv4-2.2.  -
│ │ │ +0011f120: 2050 4349 2d44 5353 7634 2d32 2e32 2e34   PCI-DSSv4-2.2.4
│ │ │ +0011f130: 0a20 202d 2064 6973 6162 6c65 5f73 7472  .  - disable_str
│ │ │ +0011f140: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ +0011f150: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ +0011f160: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +0011f170: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +0011f180: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +0011f190: 6564 6564 0a20 202d 2073 6572 7669 6365  eded.  - service
│ │ │ +0011f1a0: 5f72 7379 6e63 645f 6469 7361 626c 6564  _rsyncd_disabled
│ │ │ +0011f1b0: 0a0a 2d20 6e61 6d65 3a20 456e 7375 7265  ..- name: Ensure
│ │ │ +0011f1c0: 2072 7379 6e63 6420 7365 7276 6963 6520   rsyncd service 
│ │ │ +0011f1d0: 6973 2064 6973 6162 6c65 6420 2d20 4469  is disabled - Di
│ │ │ +0011f1e0: 7361 626c 6520 7365 7276 6963 6520 7273  sable service rs
│ │ │ +0011f1f0: 796e 6364 0a20 2062 6c6f 636b 3a0a 0a20  yncd.  block:.. 
│ │ │ +0011f200: 202d 206e 616d 653a 2045 6e73 7572 6520   - name: Ensure 
│ │ │ +0011f210: 7273 796e 6364 2073 6572 7669 6365 2069  rsyncd service i
│ │ │ +0011f220: 7320 6469 7361 626c 6564 202d 2043 6f6c  s disabled - Col
│ │ │ +0011f230: 6c65 6374 2073 7973 7465 6d64 2053 6572  lect systemd Ser
│ │ │ +0011f240: 7669 6365 7320 5072 6573 656e 7420 696e  vices Present in
│ │ │ +0011f250: 0a20 2020 2020 2074 6865 2053 7973 7465  .      the Syste
│ │ │ +0011f260: 6d0a 2020 2020 616e 7369 626c 652e 6275  m.    ansible.bu
│ │ │ +0011f270: 696c 7469 6e2e 636f 6d6d 616e 643a 2073  iltin.command: s
│ │ │ +0011f280: 7973 7465 6d63 746c 202d 7120 6c69 7374  ystemctl -q list
│ │ │ +0011f290: 2d75 6e69 742d 6669 6c65 7320 2d2d 7479  -unit-files --ty
│ │ │ +0011f2a0: 7065 2073 6572 7669 6365 0a20 2020 2072  pe service.    r
│ │ │ +0011f2b0: 6567 6973 7465 723a 2073 6572 7669 6365  egister: service
│ │ │ +0011f2c0: 5f65 7869 7374 730a 2020 2020 6368 616e  _exists.    chan
│ │ │ +0011f2d0: 6765 645f 7768 656e 3a20 6661 6c73 650a  ged_when: false.
│ │ │ +0011f2e0: 2020 2020 6661 696c 6564 5f77 6865 6e3a      failed_when:
│ │ │ +0011f2f0: 2073 6572 7669 6365 5f65 7869 7374 732e   service_exists.
│ │ │ +0011f300: 7263 206e 6f74 2069 6e20 5b30 2c20 315d  rc not in [0, 1]
│ │ │ +0011f310: 0a20 2020 2063 6865 636b 5f6d 6f64 653a  .    check_mode:
│ │ │ +0011f320: 2066 616c 7365 0a0a 2020 2d20 6e61 6d65   false..  - name
│ │ │ +0011f330: 3a20 456e 7375 7265 2072 7379 6e63 6420  : Ensure rsyncd 
│ │ │ +0011f340: 7365 7276 6963 6520 6973 2064 6973 6162  service is disab
│ │ │ +0011f350: 6c65 6420 2d20 456e 7375 7265 2072 7379  led - Ensure rsy
│ │ │ +0011f360: 6e63 642e 7365 7276 6963 6520 6973 204d  ncd.service is M
│ │ │ +0011f370: 6173 6b65 640a 2020 2020 616e 7369 626c  asked.    ansibl
│ │ │ +0011f380: 652e 6275 696c 7469 6e2e 7379 7374 656d  e.builtin.system
│ │ │ +0011f390: 643a 0a20 2020 2020 206e 616d 653a 2072  d:.      name: r
│ │ │ +0011f3a0: 7379 6e63 642e 7365 7276 6963 650a 2020  syncd.service.  
│ │ │ +0011f3b0: 2020 2020 7374 6174 653a 2073 746f 7070      state: stopp
│ │ │ +0011f3c0: 6564 0a20 2020 2020 2065 6e61 626c 6564  ed.      enabled
│ │ │ +0011f3d0: 3a20 6661 6c73 650a 2020 2020 2020 6d61  : false.      ma
│ │ │ +0011f3e0: 736b 6564 3a20 7472 7565 0a20 2020 2077  sked: true.    w
│ │ │ +0011f3f0: 6865 6e3a 2073 6572 7669 6365 5f65 7869  hen: service_exi
│ │ │ +0011f400: 7374 732e 7374 646f 7574 5f6c 696e 6573  sts.stdout_lines
│ │ │ +0011f410: 2069 7320 7365 6172 6368 2822 7273 796e   is search("rsyn
│ │ │ +0011f420: 6364 2e73 6572 7669 6365 222c 206d 756c  cd.service", mul
│ │ │ +0011f430: 7469 6c69 6e65 3d54 7275 6529 0a0a 2020  tiline=True)..  
│ │ │ +0011f440: 2d20 6e61 6d65 3a20 556e 6974 2053 6f63  - name: Unit Soc
│ │ │ +0011f450: 6b65 7420 4578 6973 7473 202d 2072 7379  ket Exists - rsy
│ │ │ +0011f460: 6e63 642e 736f 636b 6574 0a20 2020 2061  ncd.socket.    a
│ │ │ +0011f470: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ +0011f480: 6f6d 6d61 6e64 3a20 7379 7374 656d 6374  ommand: systemct
│ │ │ +0011f490: 6c20 2d71 206c 6973 742d 756e 6974 2d66  l -q list-unit-f
│ │ │ +0011f4a0: 696c 6573 2072 7379 6e63 642e 736f 636b  iles rsyncd.sock
│ │ │ +0011f4b0: 6574 0a20 2020 2072 6567 6973 7465 723a  et.    register:
│ │ │ +0011f4c0: 2073 6f63 6b65 745f 6669 6c65 5f65 7869   socket_file_exi
│ │ │ +0011f4d0: 7374 730a 2020 2020 6368 616e 6765 645f  sts.    changed_
│ │ │ +0011f4e0: 7768 656e 3a20 6661 6c73 650a 2020 2020  when: false.    
│ │ │ +0011f4f0: 6661 696c 6564 5f77 6865 6e3a 2073 6f63  failed_when: soc
│ │ │ +0011f500: 6b65 745f 6669 6c65 5f65 7869 7374 732e  ket_file_exists.
│ │ │ +0011f510: 7263 206e 6f74 2069 6e20 5b30 2c20 315d  rc not in [0, 1]
│ │ │ +0011f520: 0a20 2020 2063 6865 636b 5f6d 6f64 653a  .    check_mode:
│ │ │ +0011f530: 2066 616c 7365 0a0a 2020 2d20 6e61 6d65   false..  - name
│ │ │ +0011f540: 3a20 456e 7375 7265 2072 7379 6e63 6420  : Ensure rsyncd 
│ │ │ +0011f550: 7365 7276 6963 6520 6973 2064 6973 6162  service is disab
│ │ │ +0011f560: 6c65 6420 2d20 4469 7361 626c 6520 536f  led - Disable So
│ │ │ +0011f570: 636b 6574 2072 7379 6e63 640a 2020 2020  cket rsyncd.    
│ │ │ +0011f580: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +0011f590: 7379 7374 656d 643a 0a20 2020 2020 206e  systemd:.      n
│ │ │ +0011f5a0: 616d 653a 2072 7379 6e63 642e 736f 636b  ame: rsyncd.sock
│ │ │ +0011f5b0: 6574 0a20 2020 2020 2065 6e61 626c 6564  et.      enabled
│ │ │ +0011f5c0: 3a20 6661 6c73 650a 2020 2020 2020 7374  : false.      st
│ │ │ +0011f5d0: 6174 653a 2073 746f 7070 6564 0a20 2020  ate: stopped.   
│ │ │ +0011f5e0: 2020 206d 6173 6b65 643a 2074 7275 650a     masked: true.
│ │ │ +0011f5f0: 2020 2020 7768 656e 3a20 736f 636b 6574      when: socket
│ │ │ +0011f600: 5f66 696c 655f 6578 6973 7473 2e73 7464  _file_exists.std
│ │ │ +0011f610: 6f75 745f 6c69 6e65 7320 6973 2073 6561  out_lines is sea
│ │ │ +0011f620: 7263 6828 2272 7379 6e63 642e 736f 636b  rch("rsyncd.sock
│ │ │ +0011f630: 6574 222c 206d 756c 7469 6c69 6e65 3d54  et", multiline=T
│ │ │ +0011f640: 7275 6529 0a20 2074 6167 733a 0a20 202d  rue).  tags:.  -
│ │ │ +0011f650: 2050 4349 2d44 5353 7634 2d32 2e32 0a20   PCI-DSSv4-2.2. 
│ │ │ +0011f660: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ +0011f670: 2e34 0a20 202d 2064 6973 6162 6c65 5f73  .4.  - disable_s
│ │ │ +0011f680: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ +0011f690: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +0011f6a0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +0011f6b0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +0011f6c0: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +0011f6d0: 6e65 6564 6564 0a20 202d 2073 6572 7669  needed.  - servi
│ │ │ +0011f6e0: 6365 5f72 7379 6e63 645f 6469 7361 626c  ce_rsyncd_disabl
│ │ │ +0011f6f0: 6564 0a20 202d 2073 7065 6369 616c 5f73  ed.  - special_s
│ │ │ +0011f700: 6572 7669 6365 5f62 6c6f 636b 0a20 2077  ervice_block.  w
│ │ │ +0011f710: 6865 6e3a 2027 226b 6572 6e65 6c22 2069  hen: '"kernel" i
│ │ │ +0011f720: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +0011f730: 7061 636b 6167 6573 270a 3c2f 636f 6465  packages'.
Remedi │ │ │ +0011f7f0: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ +0011f800: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +0011f810: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +0011f840: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
│ │ │ +0011f010: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +0011f040: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +0011f050: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +0011f090: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +0011f0a0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ +0011f8b0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +0011f8d0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +0011f900: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ +0011f920: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ +0011f890: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +0011f8a0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +0011f8e0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +0011f8f0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
include │ │ │ +0011f940: 6469 7361 626c 655f 7273 796e 6364 0a0a disable_rsyncd.. │ │ │ +0011f950: 636c 6173 7320 6469 7361 626c 655f 7273 class disable_rs │ │ │ +0011f960: 796e 6364 207b 0a20 2073 6572 7669 6365 yncd {. service │ │ │ +0011f970: 207b 2772 7379 6e63 6427 3a0a 2020 2020 {'rsyncd':. │ │ │ +0011f980: 656e 6162 6c65 203d 2667 743b 2066 616c enable => fal │ │ │ +0011f990: 7365 2c0a 2020 2020 656e 7375 7265 203d se,. ensure = │ │ │ +0011f9a0: 2667 743b 2027 7374 6f70 7065 6427 2c0a > 'stopped',. │ │ │ +0011f9b0: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 }.}.

Remediatio │ │ │ +0011fa70: 6e20 4f53 4275 696c 6420 426c 7565 7072 n OSBuild Bluepr │ │ │ +0011fa80: 696e 7420 736e 6970 7065 7420 e287 b23c int snippet ...< │ │ │ +0011fa90: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
.[customizatio
│ │ │ +0011fae0: 6e73 2e73 6572 7669 6365 735d 0a6d 6173  ns.services].mas
│ │ │ +0011faf0: 6b65 6420 3d20 5b22 7273 796e 6364 225d  ked = ["rsyncd"]
│ │ │  0011fb00: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
< │ │ │ 0011fb20: 2f74 723e 3c2f 7462 6f64 793e 3c2f 7461 /tr>Remediation │ │ │ -0013dfd0: 2050 7570 7065 7420 736e 6970 7065 7420 Puppet snippet │ │ │ -0013dfe0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...

│ │ │ -0013e020: 3c63 6f64 653e 696e 636c 7564 6520 7373  include ss
│ │ │ -0013e030: 685f 7072 6976 6174 655f 6b65 795f 7065  h_private_key_pe
│ │ │ -0013e040: 726d 730a 0a63 6c61 7373 2073 7368 5f70  rms..class ssh_p
│ │ │ -0013e050: 7269 7661 7465 5f6b 6579 5f70 6572 6d73  rivate_key_perms
│ │ │ -0013e060: 207b 0a20 2065 7865 6320 7b20 2773 7368   {.  exec { 'ssh
│ │ │ -0013e070: 645f 7072 6976 5f6b 6579 273a 0a20 2020  d_priv_key':.   
│ │ │ -0013e080: 2063 6f6d 6d61 6e64 203d 2667 743b 2022   command => "
│ │ │ -0013e090: 6368 6d6f 6420 3036 3430 202f 6574 632f  chmod 0640 /etc/
│ │ │ -0013e0a0: 7373 682f 2a5f 6b65 7922 2c0a 2020 2020  ssh/*_key",.    
│ │ │ -0013e0b0: 7061 7468 2020 2020 3d26 6774 3b20 272f  path    => '/
│ │ │ -0013e0c0: 6269 6e3a 2f75 7372 2f62 696e 270a 2020  bin:/usr/bin'.  
│ │ │ -0013e0d0: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Remediation │ │ │ -0013e190: 416e 7369 626c 6520 736e 6970 7065 7420 Ansible snippet │ │ │ -0013e1a0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -0013e230: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -0013e250: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -0013e270: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -0013e2a0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -0013e2b0: 636f 6e66 6967 7572 653c 2f74 643e 3c2f configure
│ │ │ -0013e2d0: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -0013e2e0: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -0013e2f0: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -0013e300: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -0013e310: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -0013e320: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d31  :.  - NIST-800-1
│ │ │ -0013e330: 3731 2d33 2e31 2e31 330a 2020 2d20 4e49  71-3.1.13.  - NI
│ │ │ -0013e340: 5354 2d38 3030 2d31 3731 2d33 2e31 332e  ST-800-171-3.13.
│ │ │ -0013e350: 3130 0a20 202d 204e 4953 542d 3830 302d  10.  - NIST-800-
│ │ │ -0013e360: 3533 2d41 432d 3137 2861 290a 2020 2d20  53-AC-17(a).  - 
│ │ │ -0013e370: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -0013e380: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ -0013e390: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -0013e3a0: 5043 492d 4453 532d 5265 712d 322e 322e  PCI-DSS-Req-2.2.
│ │ │ -0013e3b0: 340a 2020 2d20 5043 492d 4453 5376 342d  4.  - PCI-DSSv4-
│ │ │ -0013e3c0: 322e 320a 2020 2d20 5043 492d 4453 5376  2.2.  - PCI-DSSv
│ │ │ -0013e3d0: 342d 322e 322e 360a 2020 2d20 636f 6e66  4-2.2.6.  - conf
│ │ │ -0013e3e0: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -0013e3f0: 202d 2066 696c 655f 7065 726d 6973 7369   - file_permissi
│ │ │ -0013e400: 6f6e 735f 7373 6864 5f70 7269 7661 7465  ons_sshd_private
│ │ │ -0013e410: 5f6b 6579 0a20 202d 206c 6f77 5f63 6f6d  _key.  - low_com
│ │ │ -0013e420: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ -0013e430: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -0013e440: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -0013e450: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -0013e460: 6465 640a 0a2d 206e 616d 653a 2046 696e  ded..- name: Fin
│ │ │ -0013e470: 6420 726f 6f74 3a72 6f6f 742d 6f77 6e65  d root:root-owne
│ │ │ -0013e480: 6420 6b65 7973 0a20 2061 6e73 6962 6c65  d keys.  ansible
│ │ │ -0013e490: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ -0013e4a0: 3a20 6669 6e64 202d 4820 2f65 7463 2f73  : find -H /etc/s
│ │ │ -0013e4b0: 7368 2f20 2d6d 6178 6465 7074 6820 3120  sh/ -maxdepth 1 
│ │ │ -0013e4c0: 2d75 7365 7220 726f 6f74 202d 7265 6765  -user root -rege
│ │ │ -0013e4d0: 7820 222e 2a5f 6b65 7924 220a 2020 2020  x ".*_key$".    
│ │ │ -0013e4e0: 2d74 7970 6520 6620 2d67 726f 7570 2072  -type f -group r
│ │ │ -0013e4f0: 6f6f 7420 2d70 6572 6d20 2f75 2b78 732c  oot -perm /u+xs,
│ │ │ -0013e500: 672b 7877 7273 2c6f 2b78 7772 740a 2020  g+xwrs,o+xwrt.  
│ │ │ -0013e510: 7265 6769 7374 6572 3a20 726f 6f74 5f6f  register: root_o
│ │ │ -0013e520: 776e 6564 5f6b 6579 730a 2020 6368 616e  wned_keys.  chan
│ │ │ -0013e530: 6765 645f 7768 656e 3a20 6661 6c73 650a  ged_when: false.
│ │ │ -0013e540: 2020 6661 696c 6564 5f77 6865 6e3a 2066    failed_when: f
│ │ │ -0013e550: 616c 7365 0a20 2063 6865 636b 5f6d 6f64  alse.  check_mod
│ │ │ -0013e560: 653a 2066 616c 7365 0a20 2077 6865 6e3a  e: false.  when:
│ │ │ -0013e570: 2027 226b 6572 6e65 6c22 2069 6e20 616e   '"kernel" in an
│ │ │ -0013e580: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -0013e590: 6167 6573 270a 2020 7461 6773 3a0a 2020  ages'.  tags:.  
│ │ │ -0013e5a0: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33  - NIST-800-171-3
│ │ │ -0013e5b0: 2e31 2e31 330a 2020 2d20 4e49 5354 2d38  .1.13.  - NIST-8
│ │ │ -0013e5c0: 3030 2d31 3731 2d33 2e31 332e 3130 0a20  00-171-3.13.10. 
│ │ │ -0013e5d0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -0013e5e0: 432d 3137 2861 290a 2020 2d20 4e49 5354  C-17(a).  - NIST
│ │ │ -0013e5f0: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ -0013e600: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -0013e610: 434d 2d36 2861 290a 2020 2d20 5043 492d  CM-6(a).  - PCI-
│ │ │ -0013e620: 4453 532d 5265 712d 322e 322e 340a 2020  DSS-Req-2.2.4.  
│ │ │ -0013e630: 2d20 5043 492d 4453 5376 342d 322e 320a  - PCI-DSSv4-2.2.
│ │ │ -0013e640: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ -0013e650: 322e 360a 2020 2d20 636f 6e66 6967 7572  2.6.  - configur
│ │ │ -0013e660: 655f 7374 7261 7465 6779 0a20 202d 2066  e_strategy.  - f
│ │ │ -0013e670: 696c 655f 7065 726d 6973 7369 6f6e 735f  ile_permissions_
│ │ │ -0013e680: 7373 6864 5f70 7269 7661 7465 5f6b 6579  sshd_private_key
│ │ │ -0013e690: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -0013e6a0: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ -0013e6b0: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ -0013e6c0: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ -0013e6d0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -0013e6e0: 0a2d 206e 616d 653a 2053 6574 2070 6572  .- name: Set per
│ │ │ -0013e6f0: 6d69 7373 696f 6e73 2066 6f72 2072 6f6f  missions for roo
│ │ │ -0013e700: 743a 726f 6f74 2d6f 776e 6564 206b 6579  t:root-owned key
│ │ │ -0013e710: 730a 2020 616e 7369 626c 652e 6275 696c  s.  ansible.buil
│ │ │ -0013e720: 7469 6e2e 6669 6c65 3a0a 2020 2020 7061  tin.file:.    pa
│ │ │ -0013e730: 7468 3a20 277b 7b20 6974 656d 207d 7d27  th: '{{ item }}'
│ │ │ -0013e740: 0a20 2020 206d 6f64 653a 2075 2d78 732c  .    mode: u-xs,
│ │ │ -0013e750: 672d 7877 7273 2c6f 2d78 7772 740a 2020  g-xwrs,o-xwrt.  
│ │ │ -0013e760: 2020 7374 6174 653a 2066 696c 650a 2020    state: file.  
│ │ │ -0013e770: 7769 7468 5f69 7465 6d73 3a0a 2020 2d20  with_items:.  - 
│ │ │ -0013e780: 277b 7b20 726f 6f74 5f6f 776e 6564 5f6b  '{{ root_owned_k
│ │ │ -0013e790: 6579 732e 7374 646f 7574 5f6c 696e 6573  eys.stdout_lines
│ │ │ -0013e7a0: 207d 7d27 0a20 2077 6865 6e3a 2027 226b   }}'.  when: '"k
│ │ │ -0013e7b0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -0013e7c0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -0013e7d0: 270a 2020 7461 6773 3a0a 2020 2d20 4e49  '.  tags:.  - NI
│ │ │ -0013e7e0: 5354 2d38 3030 2d31 3731 2d33 2e31 2e31  ST-800-171-3.1.1
│ │ │ -0013e7f0: 330a 2020 2d20 4e49 5354 2d38 3030 2d31  3.  - NIST-800-1
│ │ │ -0013e800: 3731 2d33 2e31 332e 3130 0a20 202d 204e  71-3.13.10.  - N
│ │ │ -0013e810: 4953 542d 3830 302d 3533 2d41 432d 3137  IST-800-53-AC-17
│ │ │ -0013e820: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -0013e830: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ -0013e840: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -0013e850: 2861 290a 2020 2d20 5043 492d 4453 532d  (a).  - PCI-DSS-
│ │ │ -0013e860: 5265 712d 322e 322e 340a 2020 2d20 5043  Req-2.2.4.  - PC
│ │ │ -0013e870: 492d 4453 5376 342d 322e 320a 2020 2d20  I-DSSv4-2.2.  - 
│ │ │ -0013e880: 5043 492d 4453 5376 342d 322e 322e 360a  PCI-DSSv4-2.2.6.
│ │ │ -0013e890: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ -0013e8a0: 7261 7465 6779 0a20 202d 2066 696c 655f  rategy.  - file_
│ │ │ -0013e8b0: 7065 726d 6973 7369 6f6e 735f 7373 6864  permissions_sshd
│ │ │ -0013e8c0: 5f70 7269 7661 7465 5f6b 6579 0a20 202d  _private_key.  -
│ │ │ -0013e8d0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -0013e8e0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -0013e8f0: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ -0013e900: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ -0013e910: 626f 6f74 5f6e 6565 6465 640a 3c2f 636f  boot_needed.
Complexity │ │ │ +0013e070: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +0013e090: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +0013e0a0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0013e0b0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +0013e0c0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +0013e0e0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:configure< │ │ │ +0013e100: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
- name: G
│ │ │ +0013e120: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ +0013e130: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ +0013e140: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ +0013e150: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ +0013e160: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +0013e170: 3137 312d 332e 312e 3133 0a20 202d 204e  171-3.1.13.  - N
│ │ │ +0013e180: 4953 542d 3830 302d 3137 312d 332e 3133  IST-800-171-3.13
│ │ │ +0013e190: 2e31 300a 2020 2d20 4e49 5354 2d38 3030  .10.  - NIST-800
│ │ │ +0013e1a0: 2d35 332d 4143 2d31 3728 6129 0a20 202d  -53-AC-17(a).  -
│ │ │ +0013e1b0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +0013e1c0: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ +0013e1d0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +0013e1e0: 2050 4349 2d44 5353 2d52 6571 2d32 2e32   PCI-DSS-Req-2.2
│ │ │ +0013e1f0: 2e34 0a20 202d 2050 4349 2d44 5353 7634  .4.  - PCI-DSSv4
│ │ │ +0013e200: 2d32 2e32 0a20 202d 2050 4349 2d44 5353  -2.2.  - PCI-DSS
│ │ │ +0013e210: 7634 2d32 2e32 2e36 0a20 202d 2063 6f6e  v4-2.2.6.  - con
│ │ │ +0013e220: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +0013e230: 2020 2d20 6669 6c65 5f70 6572 6d69 7373    - file_permiss
│ │ │ +0013e240: 696f 6e73 5f73 7368 645f 7072 6976 6174  ions_sshd_privat
│ │ │ +0013e250: 655f 6b65 790a 2020 2d20 6c6f 775f 636f  e_key.  - low_co
│ │ │ +0013e260: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ +0013e270: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +0013e280: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +0013e290: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +0013e2a0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 4669  eded..- name: Fi
│ │ │ +0013e2b0: 6e64 2072 6f6f 743a 726f 6f74 2d6f 776e  nd root:root-own
│ │ │ +0013e2c0: 6564 206b 6579 730a 2020 616e 7369 626c  ed keys.  ansibl
│ │ │ +0013e2d0: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ +0013e2e0: 643a 2066 696e 6420 2d48 202f 6574 632f  d: find -H /etc/
│ │ │ +0013e2f0: 7373 682f 202d 6d61 7864 6570 7468 2031  ssh/ -maxdepth 1
│ │ │ +0013e300: 202d 7573 6572 2072 6f6f 7420 2d72 6567   -user root -reg
│ │ │ +0013e310: 6578 2022 2e2a 5f6b 6579 2422 0a20 2020  ex ".*_key$".   
│ │ │ +0013e320: 202d 7479 7065 2066 202d 6772 6f75 7020   -type f -group 
│ │ │ +0013e330: 726f 6f74 202d 7065 726d 202f 752b 7873  root -perm /u+xs
│ │ │ +0013e340: 2c67 2b78 7772 732c 6f2b 7877 7274 0a20  ,g+xwrs,o+xwrt. 
│ │ │ +0013e350: 2072 6567 6973 7465 723a 2072 6f6f 745f   register: root_
│ │ │ +0013e360: 6f77 6e65 645f 6b65 7973 0a20 2063 6861  owned_keys.  cha
│ │ │ +0013e370: 6e67 6564 5f77 6865 6e3a 2066 616c 7365  nged_when: false
│ │ │ +0013e380: 0a20 2066 6169 6c65 645f 7768 656e 3a20  .  failed_when: 
│ │ │ +0013e390: 6661 6c73 650a 2020 6368 6563 6b5f 6d6f  false.  check_mo
│ │ │ +0013e3a0: 6465 3a20 6661 6c73 650a 2020 7768 656e  de: false.  when
│ │ │ +0013e3b0: 3a20 2722 6b65 726e 656c 2220 696e 2061  : '"kernel" in a
│ │ │ +0013e3c0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +0013e3d0: 6b61 6765 7327 0a20 2074 6167 733a 0a20  kages'.  tags:. 
│ │ │ +0013e3e0: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ +0013e3f0: 332e 312e 3133 0a20 202d 204e 4953 542d  3.1.13.  - NIST-
│ │ │ +0013e400: 3830 302d 3137 312d 332e 3133 2e31 300a  800-171-3.13.10.
│ │ │ +0013e410: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +0013e420: 4143 2d31 3728 6129 0a20 202d 204e 4953  AC-17(a).  - NIS
│ │ │ +0013e430: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ +0013e440: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +0013e450: 2d43 4d2d 3628 6129 0a20 202d 2050 4349  -CM-6(a).  - PCI
│ │ │ +0013e460: 2d44 5353 2d52 6571 2d32 2e32 2e34 0a20  -DSS-Req-2.2.4. 
│ │ │ +0013e470: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ +0013e480: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ +0013e490: 2e32 2e36 0a20 202d 2063 6f6e 6669 6775  .2.6.  - configu
│ │ │ +0013e4a0: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +0013e4b0: 6669 6c65 5f70 6572 6d69 7373 696f 6e73  file_permissions
│ │ │ +0013e4c0: 5f73 7368 645f 7072 6976 6174 655f 6b65  _sshd_private_ke
│ │ │ +0013e4d0: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ +0013e4e0: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ +0013e4f0: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ +0013e500: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +0013e510: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +0013e520: 0a0a 2d20 6e61 6d65 3a20 5365 7420 7065  ..- name: Set pe
│ │ │ +0013e530: 726d 6973 7369 6f6e 7320 666f 7220 726f  rmissions for ro
│ │ │ +0013e540: 6f74 3a72 6f6f 742d 6f77 6e65 6420 6b65  ot:root-owned ke
│ │ │ +0013e550: 7973 0a20 2061 6e73 6962 6c65 2e62 7569  ys.  ansible.bui
│ │ │ +0013e560: 6c74 696e 2e66 696c 653a 0a20 2020 2070  ltin.file:.    p
│ │ │ +0013e570: 6174 683a 2027 7b7b 2069 7465 6d20 7d7d  ath: '{{ item }}
│ │ │ +0013e580: 270a 2020 2020 6d6f 6465 3a20 752d 7873  '.    mode: u-xs
│ │ │ +0013e590: 2c67 2d78 7772 732c 6f2d 7877 7274 0a20  ,g-xwrs,o-xwrt. 
│ │ │ +0013e5a0: 2020 2073 7461 7465 3a20 6669 6c65 0a20     state: file. 
│ │ │ +0013e5b0: 2077 6974 685f 6974 656d 733a 0a20 202d   with_items:.  -
│ │ │ +0013e5c0: 2027 7b7b 2072 6f6f 745f 6f77 6e65 645f   '{{ root_owned_
│ │ │ +0013e5d0: 6b65 7973 2e73 7464 6f75 745f 6c69 6e65  keys.stdout_line
│ │ │ +0013e5e0: 7320 7d7d 270a 2020 7768 656e 3a20 2722  s }}'.  when: '"
│ │ │ +0013e5f0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +0013e600: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +0013e610: 7327 0a20 2074 6167 733a 0a20 202d 204e  s'.  tags:.  - N
│ │ │ +0013e620: 4953 542d 3830 302d 3137 312d 332e 312e  IST-800-171-3.1.
│ │ │ +0013e630: 3133 0a20 202d 204e 4953 542d 3830 302d  13.  - NIST-800-
│ │ │ +0013e640: 3137 312d 332e 3133 2e31 300a 2020 2d20  171-3.13.10.  - 
│ │ │ +0013e650: 4e49 5354 2d38 3030 2d35 332d 4143 2d31  NIST-800-53-AC-1
│ │ │ +0013e660: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ +0013e670: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ +0013e680: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +0013e690: 3628 6129 0a20 202d 2050 4349 2d44 5353  6(a).  - PCI-DSS
│ │ │ +0013e6a0: 2d52 6571 2d32 2e32 2e34 0a20 202d 2050  -Req-2.2.4.  - P
│ │ │ +0013e6b0: 4349 2d44 5353 7634 2d32 2e32 0a20 202d  CI-DSSv4-2.2.  -
│ │ │ +0013e6c0: 2050 4349 2d44 5353 7634 2d32 2e32 2e36   PCI-DSSv4-2.2.6
│ │ │ +0013e6d0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +0013e6e0: 7472 6174 6567 790a 2020 2d20 6669 6c65  trategy.  - file
│ │ │ +0013e6f0: 5f70 6572 6d69 7373 696f 6e73 5f73 7368  _permissions_ssh
│ │ │ +0013e700: 645f 7072 6976 6174 655f 6b65 790a 2020  d_private_key.  
│ │ │ +0013e710: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +0013e720: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +0013e730: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ +0013e740: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ +0013e750: 6562 6f6f 745f 6e65 6564 6564 0a3c 2f63  eboot_needed.
│ │ │ +0013e770: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +0013e810: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ +0013e820: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +0013e830: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
in
│ │ │ +0013e870: 636c 7564 6520 7373 685f 7072 6976 6174  clude ssh_privat
│ │ │ +0013e880: 655f 6b65 795f 7065 726d 730a 0a63 6c61  e_key_perms..cla
│ │ │ +0013e890: 7373 2073 7368 5f70 7269 7661 7465 5f6b  ss ssh_private_k
│ │ │ +0013e8a0: 6579 5f70 6572 6d73 207b 0a20 2065 7865  ey_perms {.  exe
│ │ │ +0013e8b0: 6320 7b20 2773 7368 645f 7072 6976 5f6b  c { 'sshd_priv_k
│ │ │ +0013e8c0: 6579 273a 0a20 2020 2063 6f6d 6d61 6e64  ey':.    command
│ │ │ +0013e8d0: 203d 2667 743b 2022 6368 6d6f 6420 3036   => "chmod 06
│ │ │ +0013e8e0: 3430 202f 6574 632f 7373 682f 2a5f 6b65  40 /etc/ssh/*_ke
│ │ │ +0013e8f0: 7922 2c0a 2020 2020 7061 7468 2020 2020  y",.    path    
│ │ │ +0013e900: 3d26 6774 3b20 272f 6269 6e3a 2f75 7372  => '/bin:/usr
│ │ │ +0013e910: 2f62 696e 270a 2020 7d0a 7d0a 3c2f 636f  /bin'.  }.}.
< │ │ │ 0013e930: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ 0013e940: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ 0013e950: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ 0013e960: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ 0013e970: 6433 3836 2220 7461 6269 6e64 6578 3d22 d386" tabindex=" │ │ │ 0013e980: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ @@ -81863,161 +81863,161 @@ │ │ │ 0013fc60: 6172 6765 743d 2223 6964 3338 3822 2074 arget="#id388" t │ │ │ 0013fc70: 6162 696e 6465 783d 2230 2220 726f 6c65 abindex="0" role │ │ │ 0013fc80: 3d22 6275 7474 6f6e 2220 6172 6961 2d65 ="button" aria-e │ │ │ 0013fc90: 7870 616e 6465 643d 2266 616c 7365 2220 xpanded="false" │ │ │ 0013fca0: 7469 746c 653d 2241 6374 6976 6174 6520 title="Activate │ │ │ 0013fcb0: 746f 2072 6576 6561 6c22 2068 7265 663d to reveal" href= │ │ │ 0013fcc0: 2223 2122 3e52 656d 6564 6961 7469 6f6e "#!">Remediation │ │ │ -0013fcd0: 2050 7570 7065 7420 736e 6970 7065 7420 Puppet snippet │ │ │ -0013fce0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
│ │ │ -0013fd20: 3c63 6f64 653e 696e 636c 7564 6520 7373  include ss
│ │ │ -0013fd30: 685f 7075 626c 6963 5f6b 6579 5f70 6572  h_public_key_per
│ │ │ -0013fd40: 6d73 0a0a 636c 6173 7320 7373 685f 7075  ms..class ssh_pu
│ │ │ -0013fd50: 626c 6963 5f6b 6579 5f70 6572 6d73 207b  blic_key_perms {
│ │ │ -0013fd60: 0a20 2065 7865 6320 7b20 2773 7368 645f  .  exec { 'sshd_
│ │ │ -0013fd70: 7075 625f 6b65 7927 3a0a 2020 2020 636f  pub_key':.    co
│ │ │ -0013fd80: 6d6d 616e 6420 3d26 6774 3b20 2263 686d  mmand => "chm
│ │ │ -0013fd90: 6f64 2030 3634 3420 2f65 7463 2f73 7368  od 0644 /etc/ssh
│ │ │ -0013fda0: 2f2a 2e70 7562 222c 0a20 2020 2070 6174  /*.pub",.    pat
│ │ │ -0013fdb0: 6820 2020 203d 2667 743b 2027 2f62 696e  h    => '/bin
│ │ │ -0013fdc0: 3a2f 7573 722f 6269 6e27 0a20 207d 0a7d  :/usr/bin'.  }.}
│ │ │ -0013fdd0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Ans │ │ │ -0013fe90: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ -0013fea0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -0013ff70: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -0013ff80: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f │ │ │ -0013ffc0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
low
Disru │ │ │ -0013ff50: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -0013ff60: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -0013ffa0: 6567 793a 3c2f 7468 3e3c 7464 3e63 6f6e egy:con │ │ │ -0013ffb0: 6669 6775 7265 3c2f 7464 3e3c 2f74 723e figure
- name: Gathe
│ │ │ -0013ffe0: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ -0013fff0: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ -00140000: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ -00140010: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ -00140020: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ -00140030: 332e 312e 3133 0a20 202d 204e 4953 542d  3.1.13.  - NIST-
│ │ │ -00140040: 3830 302d 3137 312d 332e 3133 2e31 300a  800-171-3.13.10.
│ │ │ -00140050: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -00140060: 4143 2d31 3728 6129 0a20 202d 204e 4953  AC-17(a).  - NIS
│ │ │ -00140070: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ -00140080: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -00140090: 2d43 4d2d 3628 6129 0a20 202d 2050 4349  -CM-6(a).  - PCI
│ │ │ -001400a0: 2d44 5353 2d52 6571 2d32 2e32 2e34 0a20  -DSS-Req-2.2.4. 
│ │ │ -001400b0: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ -001400c0: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ -001400d0: 2e32 2e36 0a20 202d 2063 6f6e 6669 6775  .2.6.  - configu
│ │ │ -001400e0: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ -001400f0: 6669 6c65 5f70 6572 6d69 7373 696f 6e73  file_permissions
│ │ │ -00140100: 5f73 7368 645f 7075 625f 6b65 790a 2020  _sshd_pub_key.  
│ │ │ -00140110: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -00140120: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -00140130: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ -00140140: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ -00140150: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ -00140160: 6e61 6d65 3a20 4669 6e64 202f 6574 632f  name: Find /etc/
│ │ │ -00140170: 7373 682f 2066 696c 6528 7329 0a20 2061  ssh/ file(s).  a
│ │ │ -00140180: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ -00140190: 6f6d 6d61 6e64 3a20 6669 6e64 202d 5020  ommand: find -P 
│ │ │ -001401a0: 2f65 7463 2f73 7368 2f20 2d6d 6178 6465  /etc/ssh/ -maxde
│ │ │ -001401b0: 7074 6820 3120 2d70 6572 6d20 2f75 2b78  pth 1 -perm /u+x
│ │ │ -001401c0: 732c 672b 7877 732c 6f2b 7877 7420 202d  s,g+xws,o+xwt  -
│ │ │ -001401d0: 7479 7065 0a20 2020 2066 202d 7265 6765  type.    f -rege
│ │ │ -001401e0: 7874 7970 6520 706f 7369 782d 6578 7465  xtype posix-exte
│ │ │ -001401f0: 6e64 6564 202d 7265 6765 7820 225e 2e2a  nded -regex "^.*
│ │ │ -00140200: 5c2e 7075 6224 220a 2020 7265 6769 7374  \.pub$".  regist
│ │ │ -00140210: 6572 3a20 6669 6c65 735f 666f 756e 640a  er: files_found.
│ │ │ -00140220: 2020 6368 616e 6765 645f 7768 656e 3a20    changed_when: 
│ │ │ -00140230: 6661 6c73 650a 2020 6661 696c 6564 5f77  false.  failed_w
│ │ │ -00140240: 6865 6e3a 2066 616c 7365 0a20 2063 6865  hen: false.  che
│ │ │ -00140250: 636b 5f6d 6f64 653a 2066 616c 7365 0a20  ck_mode: false. 
│ │ │ -00140260: 2077 6865 6e3a 2027 226b 6572 6e65 6c22   when: '"kernel"
│ │ │ -00140270: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -00140280: 732e 7061 636b 6167 6573 270a 2020 7461  s.packages'.  ta
│ │ │ -00140290: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -001402a0: 2d31 3731 2d33 2e31 2e31 330a 2020 2d20  -171-3.1.13.  - 
│ │ │ -001402b0: 4e49 5354 2d38 3030 2d31 3731 2d33 2e31  NIST-800-171-3.1
│ │ │ -001402c0: 332e 3130 0a20 202d 204e 4953 542d 3830  3.10.  - NIST-80
│ │ │ -001402d0: 302d 3533 2d41 432d 3137 2861 290a 2020  0-53-AC-17(a).  
│ │ │ -001402e0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001402f0: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ -00140300: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ -00140310: 2d20 5043 492d 4453 532d 5265 712d 322e  - PCI-DSS-Req-2.
│ │ │ -00140320: 322e 340a 2020 2d20 5043 492d 4453 5376  2.4.  - PCI-DSSv
│ │ │ -00140330: 342d 322e 320a 2020 2d20 5043 492d 4453  4-2.2.  - PCI-DS
│ │ │ -00140340: 5376 342d 322e 322e 360a 2020 2d20 636f  Sv4-2.2.6.  - co
│ │ │ -00140350: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -00140360: 0a20 202d 2066 696c 655f 7065 726d 6973  .  - file_permis
│ │ │ -00140370: 7369 6f6e 735f 7373 6864 5f70 7562 5f6b  sions_sshd_pub_k
│ │ │ -00140380: 6579 0a20 202d 206c 6f77 5f63 6f6d 706c  ey.  - low_compl
│ │ │ -00140390: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ -001403a0: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ -001403b0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001403c0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -001403d0: 640a 0a2d 206e 616d 653a 2053 6574 2070  d..- name: Set p
│ │ │ -001403e0: 6572 6d69 7373 696f 6e73 2066 6f72 202f  ermissions for /
│ │ │ -001403f0: 6574 632f 7373 682f 2066 696c 6528 7329  etc/ssh/ file(s)
│ │ │ -00140400: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -00140410: 696e 2e66 696c 653a 0a20 2020 2070 6174  in.file:.    pat
│ │ │ -00140420: 683a 2027 7b7b 2069 7465 6d20 7d7d 270a  h: '{{ item }}'.
│ │ │ -00140430: 2020 2020 6d6f 6465 3a20 752d 7873 2c67      mode: u-xs,g
│ │ │ -00140440: 2d78 7773 2c6f 2d78 7774 0a20 2020 2073  -xws,o-xwt.    s
│ │ │ -00140450: 7461 7465 3a20 6669 6c65 0a20 2077 6974  tate: file.  wit
│ │ │ -00140460: 685f 6974 656d 733a 0a20 202d 2027 7b7b  h_items:.  - '{{
│ │ │ -00140470: 2066 696c 6573 5f66 6f75 6e64 2e73 7464   files_found.std
│ │ │ -00140480: 6f75 745f 6c69 6e65 7320 7d7d 270a 2020  out_lines }}'.  
│ │ │ -00140490: 7768 656e 3a20 2722 6b65 726e 656c 2220  when: '"kernel" 
│ │ │ -001404a0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001404b0: 2e70 6163 6b61 6765 7327 0a20 2074 6167  .packages'.  tag
│ │ │ -001404c0: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ -001404d0: 3137 312d 332e 312e 3133 0a20 202d 204e  171-3.1.13.  - N
│ │ │ -001404e0: 4953 542d 3830 302d 3137 312d 332e 3133  IST-800-171-3.13
│ │ │ -001404f0: 2e31 300a 2020 2d20 4e49 5354 2d38 3030  .10.  - NIST-800
│ │ │ -00140500: 2d35 332d 4143 2d31 3728 6129 0a20 202d  -53-AC-17(a).  -
│ │ │ -00140510: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -00140520: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ -00140530: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -00140540: 2050 4349 2d44 5353 2d52 6571 2d32 2e32   PCI-DSS-Req-2.2
│ │ │ -00140550: 2e34 0a20 202d 2050 4349 2d44 5353 7634  .4.  - PCI-DSSv4
│ │ │ -00140560: 2d32 2e32 0a20 202d 2050 4349 2d44 5353  -2.2.  - PCI-DSS
│ │ │ -00140570: 7634 2d32 2e32 2e36 0a20 202d 2063 6f6e  v4-2.2.6.  - con
│ │ │ -00140580: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -00140590: 2020 2d20 6669 6c65 5f70 6572 6d69 7373    - file_permiss
│ │ │ -001405a0: 696f 6e73 5f73 7368 645f 7075 625f 6b65  ions_sshd_pub_ke
│ │ │ -001405b0: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -001405c0: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -001405d0: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ -001405e0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001405f0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +0013fcd0: 2041 6e73 6962 6c65 2073 6e69 7070 6574   Ansible snippet
│ │ │ +0013fce0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
Complexity │ │ │ +0013fd70: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +0013fd90: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +0013fda0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0013fdb0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +0013fdc0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +0013fde0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:configure< │ │ │ +0013fe00: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
- name: G
│ │ │ +0013fe20: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ +0013fe30: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ +0013fe40: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ +0013fe50: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ +0013fe60: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +0013fe70: 3137 312d 332e 312e 3133 0a20 202d 204e  171-3.1.13.  - N
│ │ │ +0013fe80: 4953 542d 3830 302d 3137 312d 332e 3133  IST-800-171-3.13
│ │ │ +0013fe90: 2e31 300a 2020 2d20 4e49 5354 2d38 3030  .10.  - NIST-800
│ │ │ +0013fea0: 2d35 332d 4143 2d31 3728 6129 0a20 202d  -53-AC-17(a).  -
│ │ │ +0013feb0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +0013fec0: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ +0013fed0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +0013fee0: 2050 4349 2d44 5353 2d52 6571 2d32 2e32   PCI-DSS-Req-2.2
│ │ │ +0013fef0: 2e34 0a20 202d 2050 4349 2d44 5353 7634  .4.  - PCI-DSSv4
│ │ │ +0013ff00: 2d32 2e32 0a20 202d 2050 4349 2d44 5353  -2.2.  - PCI-DSS
│ │ │ +0013ff10: 7634 2d32 2e32 2e36 0a20 202d 2063 6f6e  v4-2.2.6.  - con
│ │ │ +0013ff20: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +0013ff30: 2020 2d20 6669 6c65 5f70 6572 6d69 7373    - file_permiss
│ │ │ +0013ff40: 696f 6e73 5f73 7368 645f 7075 625f 6b65  ions_sshd_pub_ke
│ │ │ +0013ff50: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ +0013ff60: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ +0013ff70: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ +0013ff80: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +0013ff90: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +0013ffa0: 0a0a 2d20 6e61 6d65 3a20 4669 6e64 202f  ..- name: Find /
│ │ │ +0013ffb0: 6574 632f 7373 682f 2066 696c 6528 7329  etc/ssh/ file(s)
│ │ │ +0013ffc0: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ +0013ffd0: 696e 2e63 6f6d 6d61 6e64 3a20 6669 6e64  in.command: find
│ │ │ +0013ffe0: 202d 5020 2f65 7463 2f73 7368 2f20 2d6d   -P /etc/ssh/ -m
│ │ │ +0013fff0: 6178 6465 7074 6820 3120 2d70 6572 6d20  axdepth 1 -perm 
│ │ │ +00140000: 2f75 2b78 732c 672b 7877 732c 6f2b 7877  /u+xs,g+xws,o+xw
│ │ │ +00140010: 7420 202d 7479 7065 0a20 2020 2066 202d  t  -type.    f -
│ │ │ +00140020: 7265 6765 7874 7970 6520 706f 7369 782d  regextype posix-
│ │ │ +00140030: 6578 7465 6e64 6564 202d 7265 6765 7820  extended -regex 
│ │ │ +00140040: 225e 2e2a 5c2e 7075 6224 220a 2020 7265  "^.*\.pub$".  re
│ │ │ +00140050: 6769 7374 6572 3a20 6669 6c65 735f 666f  gister: files_fo
│ │ │ +00140060: 756e 640a 2020 6368 616e 6765 645f 7768  und.  changed_wh
│ │ │ +00140070: 656e 3a20 6661 6c73 650a 2020 6661 696c  en: false.  fail
│ │ │ +00140080: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ +00140090: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ +001400a0: 7365 0a20 2077 6865 6e3a 2027 226b 6572  se.  when: '"ker
│ │ │ +001400b0: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +001400c0: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ +001400d0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +001400e0: 2d38 3030 2d31 3731 2d33 2e31 2e31 330a  -800-171-3.1.13.
│ │ │ +001400f0: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ +00140100: 2d33 2e31 332e 3130 0a20 202d 204e 4953  -3.13.10.  - NIS
│ │ │ +00140110: 542d 3830 302d 3533 2d41 432d 3137 2861  T-800-53-AC-17(a
│ │ │ +00140120: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +00140130: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ +00140140: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +00140150: 290a 2020 2d20 5043 492d 4453 532d 5265  ).  - PCI-DSS-Re
│ │ │ +00140160: 712d 322e 322e 340a 2020 2d20 5043 492d  q-2.2.4.  - PCI-
│ │ │ +00140170: 4453 5376 342d 322e 320a 2020 2d20 5043  DSSv4-2.2.  - PC
│ │ │ +00140180: 492d 4453 5376 342d 322e 322e 360a 2020  I-DSSv4-2.2.6.  
│ │ │ +00140190: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001401a0: 7465 6779 0a20 202d 2066 696c 655f 7065  tegy.  - file_pe
│ │ │ +001401b0: 726d 6973 7369 6f6e 735f 7373 6864 5f70  rmissions_sshd_p
│ │ │ +001401c0: 7562 5f6b 6579 0a20 202d 206c 6f77 5f63  ub_key.  - low_c
│ │ │ +001401d0: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ +001401e0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +001401f0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +00140200: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +00140210: 6565 6465 640a 0a2d 206e 616d 653a 2053  eeded..- name: S
│ │ │ +00140220: 6574 2070 6572 6d69 7373 696f 6e73 2066  et permissions f
│ │ │ +00140230: 6f72 202f 6574 632f 7373 682f 2066 696c  or /etc/ssh/ fil
│ │ │ +00140240: 6528 7329 0a20 2061 6e73 6962 6c65 2e62  e(s).  ansible.b
│ │ │ +00140250: 7569 6c74 696e 2e66 696c 653a 0a20 2020  uiltin.file:.   
│ │ │ +00140260: 2070 6174 683a 2027 7b7b 2069 7465 6d20   path: '{{ item 
│ │ │ +00140270: 7d7d 270a 2020 2020 6d6f 6465 3a20 752d  }}'.    mode: u-
│ │ │ +00140280: 7873 2c67 2d78 7773 2c6f 2d78 7774 0a20  xs,g-xws,o-xwt. 
│ │ │ +00140290: 2020 2073 7461 7465 3a20 6669 6c65 0a20     state: file. 
│ │ │ +001402a0: 2077 6974 685f 6974 656d 733a 0a20 202d   with_items:.  -
│ │ │ +001402b0: 2027 7b7b 2066 696c 6573 5f66 6f75 6e64   '{{ files_found
│ │ │ +001402c0: 2e73 7464 6f75 745f 6c69 6e65 7320 7d7d  .stdout_lines }}
│ │ │ +001402d0: 270a 2020 7768 656e 3a20 2722 6b65 726e  '.  when: '"kern
│ │ │ +001402e0: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +001402f0: 6163 7473 2e70 6163 6b61 6765 7327 0a20  acts.packages'. 
│ │ │ +00140300: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +00140310: 3830 302d 3137 312d 332e 312e 3133 0a20  800-171-3.1.13. 
│ │ │ +00140320: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ +00140330: 332e 3133 2e31 300a 2020 2d20 4e49 5354  3.13.10.  - NIST
│ │ │ +00140340: 2d38 3030 2d35 332d 4143 2d31 3728 6129  -800-53-AC-17(a)
│ │ │ +00140350: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +00140360: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ +00140370: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +00140380: 0a20 202d 2050 4349 2d44 5353 2d52 6571  .  - PCI-DSS-Req
│ │ │ +00140390: 2d32 2e32 2e34 0a20 202d 2050 4349 2d44  -2.2.4.  - PCI-D
│ │ │ +001403a0: 5353 7634 2d32 2e32 0a20 202d 2050 4349  SSv4-2.2.  - PCI
│ │ │ +001403b0: 2d44 5353 7634 2d32 2e32 2e36 0a20 202d  -DSSv4-2.2.6.  -
│ │ │ +001403c0: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ +001403d0: 6567 790a 2020 2d20 6669 6c65 5f70 6572  egy.  - file_per
│ │ │ +001403e0: 6d69 7373 696f 6e73 5f73 7368 645f 7075  missions_sshd_pu
│ │ │ +001403f0: 625f 6b65 790a 2020 2d20 6c6f 775f 636f  b_key.  - low_co
│ │ │ +00140400: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ +00140410: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +00140420: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +00140430: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +00140440: 6564 6564 0a3c 2f63 6f64 653e 3c2f 7072  eded.
Remediation │ │ │ +00140500: 2050 7570 7065 7420 736e 6970 7065 7420 Puppet snippet │ │ │ +00140510: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
│ │ │ +00140550: 3c63 6f64 653e 696e 636c 7564 6520 7373  include ss
│ │ │ +00140560: 685f 7075 626c 6963 5f6b 6579 5f70 6572  h_public_key_per
│ │ │ +00140570: 6d73 0a0a 636c 6173 7320 7373 685f 7075  ms..class ssh_pu
│ │ │ +00140580: 626c 6963 5f6b 6579 5f70 6572 6d73 207b  blic_key_perms {
│ │ │ +00140590: 0a20 2065 7865 6320 7b20 2773 7368 645f  .  exec { 'sshd_
│ │ │ +001405a0: 7075 625f 6b65 7927 3a0a 2020 2020 636f  pub_key':.    co
│ │ │ +001405b0: 6d6d 616e 6420 3d26 6774 3b20 2263 686d  mmand => "chm
│ │ │ +001405c0: 6f64 2030 3634 3420 2f65 7463 2f73 7368  od 0644 /etc/ssh
│ │ │ +001405d0: 2f2a 2e70 7562 222c 0a20 2020 2070 6174  /*.pub",.    pat
│ │ │ +001405e0: 6820 2020 203d 2667 743b 2027 2f62 696e  h    => '/bin
│ │ │ +001405f0: 3a2f 7573 722f 6269 6e27 0a20 207d 0a7d  :/usr/bin'.  }.}
│ │ │  00140600: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediatio │ │ │ -001bcbb0: 6e20 4f53 4275 696c 6420 426c 7565 7072 n OSBuild Bluepr │ │ │ -001bcbc0: 696e 7420 736e 6970 7065 7420 e287 b23c int snippet ...< │ │ │ -001bcbd0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
.[[packages]].
│ │ │ -001bcc20: 6e61 6d65 203d 2022 6175 6469 7422 0a76  name = "audit".v
│ │ │ -001bcc30: 6572 7369 6f6e 203d 2022 2a22 0a3c 2f63  ersion = "*".
│ │ │ -001bcc50: 3c61 2063 6c61 7373 3d22 6274 6e20 6274
Rem │ │ │ -001bccf0: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ -001bcd00: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -001bcd10: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -001bcd90: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -001bcdc0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -001bcde0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001bcdf0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -001bce10: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -001bce30: 3c70 7265 3e3c 636f 6465 3e69 6e63 6c75
inclu
│ │ │ -001bce40: 6465 2069 6e73 7461 6c6c 5f61 7564 6974  de install_audit
│ │ │ -001bce50: 0a0a 636c 6173 7320 696e 7374 616c 6c5f  ..class install_
│ │ │ -001bce60: 6175 6469 7420 7b0a 2020 7061 636b 6167  audit {.  packag
│ │ │ -001bce70: 6520 7b20 2761 7564 6974 273a 0a20 2020  e { 'audit':.   
│ │ │ -001bce80: 2065 6e73 7572 6520 3d26 6774 3b20 2769   ensure => 'i
│ │ │ -001bce90: 6e73 7461 6c6c 6564 272c 0a20 207d 0a7d  nstalled',.  }.}
│ │ │ -001bcea0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Ans │ │ │ -001bcf60: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ -001bcf70: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -001bd040: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -001bd050: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -001bd0a0: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ -001bd0b0: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ -001bd0c0: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ -001bd0d0: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ -001bd0e0: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ -001bd0f0: 4e49 5354 2d38 3030 2d35 332d 4143 2d37  NIST-800-53-AC-7
│ │ │ -001bd100: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001bd110: 2d35 332d 4155 2d31 3228 3229 0a20 202d  -53-AU-12(2).  -
│ │ │ -001bd120: 204e 4953 542d 3830 302d 3533 2d41 552d   NIST-800-53-AU-
│ │ │ -001bd130: 3134 0a20 202d 204e 4953 542d 3830 302d  14.  - NIST-800-
│ │ │ -001bd140: 3533 2d41 552d 3228 6129 0a20 202d 204e  53-AU-2(a).  - N
│ │ │ -001bd150: 4953 542d 3830 302d 3533 2d41 552d 3728  IST-800-53-AU-7(
│ │ │ -001bd160: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ -001bd170: 3533 2d41 552d 3728 3229 0a20 202d 204e  53-AU-7(2).  - N
│ │ │ -001bd180: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -001bd190: 6129 0a20 202d 2050 4349 2d44 5353 2d52  a).  - PCI-DSS-R
│ │ │ -001bd1a0: 6571 2d31 302e 310a 2020 2d20 5043 492d  eq-10.1.  - PCI-
│ │ │ -001bd1b0: 4453 5376 342d 3130 2e32 0a20 202d 2050  DSSv4-10.2.  - P
│ │ │ -001bd1c0: 4349 2d44 5353 7634 2d31 302e 322e 310a  CI-DSSv4-10.2.1.
│ │ │ -001bd1d0: 2020 2d20 656e 6162 6c65 5f73 7472 6174    - enable_strat
│ │ │ -001bd1e0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ -001bd1f0: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -001bd200: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -001bd210: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -001bd220: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -001bd230: 6564 0a20 202d 2070 6163 6b61 6765 5f61  ed.  - package_a
│ │ │ -001bd240: 7564 6974 5f69 6e73 7461 6c6c 6564 0a0a  udit_installed..
│ │ │ -001bd250: 2d20 6e61 6d65 3a20 456e 7375 7265 2061  - name: Ensure a
│ │ │ -001bd260: 7564 6974 2069 7320 696e 7374 616c 6c65  udit is installe
│ │ │ -001bd270: 640a 2020 616e 7369 626c 652e 6275 696c  d.  ansible.buil
│ │ │ -001bd280: 7469 6e2e 7061 636b 6167 653a 0a20 2020  tin.package:.   
│ │ │ -001bd290: 206e 616d 653a 2061 7564 6974 0a20 2020   name: audit.   
│ │ │ -001bd2a0: 2073 7461 7465 3a20 7072 6573 656e 740a   state: present.
│ │ │ -001bd2b0: 2020 7768 656e 3a20 2722 6b65 726e 656c    when: '"kernel
│ │ │ -001bd2c0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001bd2d0: 7473 2e70 6163 6b61 6765 7327 0a20 2074  ts.packages'.  t
│ │ │ -001bd2e0: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -001bd2f0: 302d 3533 2d41 432d 3728 6129 0a20 202d  0-53-AC-7(a).  -
│ │ │ -001bd300: 204e 4953 542d 3830 302d 3533 2d41 552d   NIST-800-53-AU-
│ │ │ -001bd310: 3132 2832 290a 2020 2d20 4e49 5354 2d38  12(2).  - NIST-8
│ │ │ -001bd320: 3030 2d35 332d 4155 2d31 340a 2020 2d20  00-53-AU-14.  - 
│ │ │ -001bd330: 4e49 5354 2d38 3030 2d35 332d 4155 2d32  NIST-800-53-AU-2
│ │ │ -001bd340: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001bd350: 2d35 332d 4155 2d37 2831 290a 2020 2d20  -53-AU-7(1).  - 
│ │ │ -001bd360: 4e49 5354 2d38 3030 2d35 332d 4155 2d37  NIST-800-53-AU-7
│ │ │ -001bd370: 2832 290a 2020 2d20 4e49 5354 2d38 3030  (2).  - NIST-800
│ │ │ -001bd380: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -001bd390: 5043 492d 4453 532d 5265 712d 3130 2e31  PCI-DSS-Req-10.1
│ │ │ -001bd3a0: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ -001bd3b0: 302e 320a 2020 2d20 5043 492d 4453 5376  0.2.  - PCI-DSSv
│ │ │ -001bd3c0: 342d 3130 2e32 2e31 0a20 202d 2065 6e61  4-10.2.1.  - ena
│ │ │ -001bd3d0: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ -001bd3e0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001bd3f0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -001bd400: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ -001bd410: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ -001bd420: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ -001bd430: 7061 636b 6167 655f 6175 6469 745f 696e  package_audit_in
│ │ │ -001bd440: 7374 616c 6c65 640a 3c2f 636f 6465 3e3c  stalled.<
│ │ │ +001bcbb0: 6e20 416e 7369 626c 6520 736e 6970 7065  n Ansible snippe
│ │ │ +001bcbc0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469  t ...
< │ │ │ +001bcc40: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ +001bcc80: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 enable
low
Disru │ │ │ -001bd020: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -001bd030: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -001bd070: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -001bd080: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexit │ │ │ +001bcc50: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ +001bcc70: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ +001bcca0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ +001bccc0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
<
│ │ │ +001bccf0: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ +001bcd00: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ +001bcd10: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ +001bcd20: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ +001bcd30: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ +001bcd40: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001bcd50: 2d41 432d 3728 6129 0a20 202d 204e 4953  -AC-7(a).  - NIS
│ │ │ +001bcd60: 542d 3830 302d 3533 2d41 552d 3132 2832  T-800-53-AU-12(2
│ │ │ +001bcd70: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001bcd80: 332d 4155 2d31 340a 2020 2d20 4e49 5354  3-AU-14.  - NIST
│ │ │ +001bcd90: 2d38 3030 2d35 332d 4155 2d32 2861 290a  -800-53-AU-2(a).
│ │ │ +001bcda0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001bcdb0: 4155 2d37 2831 290a 2020 2d20 4e49 5354  AU-7(1).  - NIST
│ │ │ +001bcdc0: 2d38 3030 2d35 332d 4155 2d37 2832 290a  -800-53-AU-7(2).
│ │ │ +001bcdd0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001bcde0: 434d 2d36 2861 290a 2020 2d20 5043 492d  CM-6(a).  - PCI-
│ │ │ +001bcdf0: 4453 532d 5265 712d 3130 2e31 0a20 202d  DSS-Req-10.1.  -
│ │ │ +001bce00: 2050 4349 2d44 5353 7634 2d31 302e 320a   PCI-DSSv4-10.2.
│ │ │ +001bce10: 2020 2d20 5043 492d 4453 5376 342d 3130    - PCI-DSSv4-10
│ │ │ +001bce20: 2e32 2e31 0a20 202d 2065 6e61 626c 655f  .2.1.  - enable_
│ │ │ +001bce30: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ +001bce40: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001bce50: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +001bce60: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001bce70: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ +001bce80: 5f6e 6565 6465 640a 2020 2d20 7061 636b  _needed.  - pack
│ │ │ +001bce90: 6167 655f 6175 6469 745f 696e 7374 616c  age_audit_instal
│ │ │ +001bcea0: 6c65 640a 0a2d 206e 616d 653a 2045 6e73  led..- name: Ens
│ │ │ +001bceb0: 7572 6520 6175 6469 7420 6973 2069 6e73  ure audit is ins
│ │ │ +001bcec0: 7461 6c6c 6564 0a20 2061 6e73 6962 6c65  talled.  ansible
│ │ │ +001bced0: 2e62 7569 6c74 696e 2e70 6163 6b61 6765  .builtin.package
│ │ │ +001bcee0: 3a0a 2020 2020 6e61 6d65 3a20 6175 6469  :.    name: audi
│ │ │ +001bcef0: 740a 2020 2020 7374 6174 653a 2070 7265  t.    state: pre
│ │ │ +001bcf00: 7365 6e74 0a20 2077 6865 6e3a 2027 226b  sent.  when: '"k
│ │ │ +001bcf10: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +001bcf20: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001bcf30: 270a 2020 7461 6773 3a0a 2020 2d20 4e49  '.  tags:.  - NI
│ │ │ +001bcf40: 5354 2d38 3030 2d35 332d 4143 2d37 2861  ST-800-53-AC-7(a
│ │ │ +001bcf50: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001bcf60: 332d 4155 2d31 3228 3229 0a20 202d 204e  3-AU-12(2).  - N
│ │ │ +001bcf70: 4953 542d 3830 302d 3533 2d41 552d 3134  IST-800-53-AU-14
│ │ │ +001bcf80: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001bcf90: 2d41 552d 3228 6129 0a20 202d 204e 4953  -AU-2(a).  - NIS
│ │ │ +001bcfa0: 542d 3830 302d 3533 2d41 552d 3728 3129  T-800-53-AU-7(1)
│ │ │ +001bcfb0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001bcfc0: 2d41 552d 3728 3229 0a20 202d 204e 4953  -AU-7(2).  - NIS
│ │ │ +001bcfd0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +001bcfe0: 0a20 202d 2050 4349 2d44 5353 2d52 6571  .  - PCI-DSS-Req
│ │ │ +001bcff0: 2d31 302e 310a 2020 2d20 5043 492d 4453  -10.1.  - PCI-DS
│ │ │ +001bd000: 5376 342d 3130 2e32 0a20 202d 2050 4349  Sv4-10.2.  - PCI
│ │ │ +001bd010: 2d44 5353 7634 2d31 302e 322e 310a 2020  -DSSv4-10.2.1.  
│ │ │ +001bd020: 2d20 656e 6162 6c65 5f73 7472 6174 6567  - enable_strateg
│ │ │ +001bd030: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ +001bd040: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ +001bd050: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ +001bd060: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001bd070: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001bd080: 0a20 202d 2070 6163 6b61 6765 5f61 7564  .  - package_aud
│ │ │ +001bd090: 6974 5f69 6e73 7461 6c6c 6564 0a3c 2f63  it_installed.
│ │ │ +001bd0b0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +001bd150: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ +001bd160: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +001bd170: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ +001bd1f0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +001bd220: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +001bd240: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +001bd250: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +001bd270: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ +001bd290: 3c70 7265 3e3c 636f 6465 3e69 6e63 6c75
inclu
│ │ │ +001bd2a0: 6465 2069 6e73 7461 6c6c 5f61 7564 6974  de install_audit
│ │ │ +001bd2b0: 0a0a 636c 6173 7320 696e 7374 616c 6c5f  ..class install_
│ │ │ +001bd2c0: 6175 6469 7420 7b0a 2020 7061 636b 6167  audit {.  packag
│ │ │ +001bd2d0: 6520 7b20 2761 7564 6974 273a 0a20 2020  e { 'audit':.   
│ │ │ +001bd2e0: 2065 6e73 7572 6520 3d26 6774 3b20 2769   ensure => 'i
│ │ │ +001bd2f0: 6e73 7461 6c6c 6564 272c 0a20 207d 0a7d  nstalled',.  }.}
│ │ │ +001bd300: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation OSB │ │ │ +001bd3c0: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ +001bd3d0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
.[[
│ │ │ +001bd420: 7061 636b 6167 6573 5d5d 0a6e 616d 6520  packages]].name 
│ │ │ +001bd430: 3d20 2261 7564 6974 220a 7665 7273 696f  = "audit".versio
│ │ │ +001bd440: 6e20 3d20 222a 220a 3c2f 636f 6465 3e3c  n = "*".<
│ │ │  001bd450: 2f70 7265 3e3c 2f64 6976 3e3c 2f64 6976  /pre>
│ │ │ 001bd480: 3c2f 7472 3e3c 7472 2064 6174 612d 7474 │ │ │ -001bed30: 5265 6d65 6469 6174 696f 6e20 4f53 4275 Remediation OSBu │ │ │ -001bed40: 696c 6420 426c 7565 7072 696e 7420 736e ild Blueprint sn │ │ │ -001bed50: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
.[cu
│ │ │ -001beda0: 7374 6f6d 697a 6174 696f 6e73 2e73 6572  stomizations.ser
│ │ │ -001bedb0: 7669 6365 735d 0a65 6e61 626c 6564 203d  vices].enabled =
│ │ │ -001bedc0: 205b 2261 7564 6974 6422 5d0a 3c2f 636f   ["auditd"].
< │ │ │ -001bede0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -001bedf0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -001bee00: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -001bee10: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -001bee20: 6434 3733 2220 7461 6269 6e64 6578 3d22 d473" tabindex=" │ │ │ -001bee30: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -001bee40: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -001bee50: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -001bee60: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -001bee70: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -001bee80: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ -001bee90: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -001bef20: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -001bef30: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -001bef50: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -001bef70: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -001bef80: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -001befc0: 7072 653e 3c63 6f64 653e 696e 636c 7564 pre>includ │ │ │ -001befd0: 6520 656e 6162 6c65 5f61 7564 6974 640a e enable_auditd. │ │ │ -001befe0: 0a63 6c61 7373 2065 6e61 626c 655f 6175 .class enable_au │ │ │ -001beff0: 6469 7464 207b 0a20 2073 6572 7669 6365 ditd {. service │ │ │ -001bf000: 207b 2761 7564 6974 6427 3a0a 2020 2020 {'auditd':. │ │ │ -001bf010: 656e 6162 6c65 203d 2667 743b 2074 7275 enable => tru │ │ │ -001bf020: 652c 0a20 2020 2065 6e73 7572 6520 3d26 e,. ensure =& │ │ │ -001bf030: 6774 3b20 2772 756e 6e69 6e67 272c 0a20 gt; 'running',. │ │ │ -001bf040: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 }.}.
Remediation │ │ │ -001bf100: 2041 6e73 6962 6c65 2073 6e69 7070 6574 Ansible snippet │ │ │ -001bf110: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -001bf1a0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -001bf1c0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -001bf1d0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -001bf1e0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -001bf1f0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -001bf210: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
- name: Gath
│ │ │ -001bf250: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ -001bf260: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ -001bf270: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ -001bf280: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ -001bf290: 2020 2d20 434a 4953 2d35 2e34 2e31 2e31    - CJIS-5.4.1.1
│ │ │ -001bf2a0: 0a20 202d 204e 4953 542d 3830 302d 3137  .  - NIST-800-17
│ │ │ -001bf2b0: 312d 332e 332e 310a 2020 2d20 4e49 5354  1-3.3.1.  - NIST
│ │ │ -001bf2c0: 2d38 3030 2d31 3731 2d33 2e33 2e32 0a20  -800-171-3.3.2. 
│ │ │ -001bf2d0: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ -001bf2e0: 332e 332e 360a 2020 2d20 4e49 5354 2d38  3.3.6.  - NIST-8
│ │ │ -001bf2f0: 3030 2d35 332d 4143 2d32 2867 290a 2020  00-53-AC-2(g).  
│ │ │ -001bf300: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001bf310: 2d36 2839 290a 2020 2d20 4e49 5354 2d38  -6(9).  - NIST-8
│ │ │ -001bf320: 3030 2d35 332d 4155 2d31 300a 2020 2d20  00-53-AU-10.  - 
│ │ │ -001bf330: 4e49 5354 2d38 3030 2d35 332d 4155 2d31  NIST-800-53-AU-1
│ │ │ -001bf340: 3228 6329 0a20 202d 204e 4953 542d 3830  2(c).  - NIST-80
│ │ │ -001bf350: 302d 3533 2d41 552d 3134 2831 290a 2020  0-53-AU-14(1).  
│ │ │ -001bf360: 2d20 4e49 5354 2d38 3030 2d35 332d 4155  - NIST-800-53-AU
│ │ │ -001bf370: 2d32 2864 290a 2020 2d20 4e49 5354 2d38  -2(d).  - NIST-8
│ │ │ -001bf380: 3030 2d35 332d 4155 2d33 0a20 202d 204e  00-53-AU-3.  - N
│ │ │ -001bf390: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -001bf3a0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -001bf3b0: 3533 2d53 492d 3428 3233 290a 2020 2d20  53-SI-4(23).  - 
│ │ │ -001bf3c0: 5043 492d 4453 532d 5265 712d 3130 2e31  PCI-DSS-Req-10.1
│ │ │ -001bf3d0: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ -001bf3e0: 302e 320a 2020 2d20 5043 492d 4453 5376  0.2.  - PCI-DSSv
│ │ │ -001bf3f0: 342d 3130 2e32 2e31 0a20 202d 2065 6e61  4-10.2.1.  - ena
│ │ │ -001bf400: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ -001bf410: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001bf420: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -001bf430: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ -001bf440: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ -001bf450: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ -001bf460: 7365 7276 6963 655f 6175 6469 7464 5f65  service_auditd_e
│ │ │ -001bf470: 6e61 626c 6564 0a0a 2d20 6e61 6d65 3a20  nabled..- name: 
│ │ │ -001bf480: 456e 6162 6c65 2061 7564 6974 6420 5365  Enable auditd Se
│ │ │ -001bf490: 7276 6963 6520 2d20 456e 6162 6c65 2073  rvice - Enable s
│ │ │ -001bf4a0: 6572 7669 6365 2061 7564 6974 640a 2020  ervice auditd.  
│ │ │ -001bf4b0: 626c 6f63 6b3a 0a0a 2020 2d20 6e61 6d65  block:..  - name
│ │ │ -001bf4c0: 3a20 4761 7468 6572 2074 6865 2070 6163  : Gather the pac
│ │ │ -001bf4d0: 6b61 6765 2066 6163 7473 0a20 2020 2061  kage facts.    a
│ │ │ -001bf4e0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ -001bf4f0: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ -001bf500: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ -001bf510: 6f0a 0a20 202d 206e 616d 653a 2045 6e61  o..  - name: Ena
│ │ │ -001bf520: 626c 6520 6175 6469 7464 2053 6572 7669  ble auditd Servi
│ │ │ -001bf530: 6365 202d 2045 6e61 626c 6520 5365 7276  ce - Enable Serv
│ │ │ -001bf540: 6963 6520 6175 6469 7464 0a20 2020 2061  ice auditd.    a
│ │ │ -001bf550: 6e73 6962 6c65 2e62 7569 6c74 696e 2e73  nsible.builtin.s
│ │ │ -001bf560: 7973 7465 6d64 3a0a 2020 2020 2020 6e61  ystemd:.      na
│ │ │ -001bf570: 6d65 3a20 6175 6469 7464 0a20 2020 2020  me: auditd.     
│ │ │ -001bf580: 2065 6e61 626c 6564 3a20 7472 7565 0a20   enabled: true. 
│ │ │ -001bf590: 2020 2020 2073 7461 7465 3a20 7374 6172       state: star
│ │ │ -001bf5a0: 7465 640a 2020 2020 2020 6d61 736b 6564  ted.      masked
│ │ │ -001bf5b0: 3a20 6661 6c73 650a 2020 2020 7768 656e  : false.    when
│ │ │ -001bf5c0: 3a0a 2020 2020 2d20 2722 6175 6469 7422  :.    - '"audit"
│ │ │ -001bf5d0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001bf5e0: 732e 7061 636b 6167 6573 270a 2020 7461  s.packages'.  ta
│ │ │ -001bf5f0: 6773 3a0a 2020 2d20 434a 4953 2d35 2e34  gs:.  - CJIS-5.4
│ │ │ -001bf600: 2e31 2e31 0a20 202d 204e 4953 542d 3830  .1.1.  - NIST-80
│ │ │ -001bf610: 302d 3137 312d 332e 332e 310a 2020 2d20  0-171-3.3.1.  - 
│ │ │ -001bf620: 4e49 5354 2d38 3030 2d31 3731 2d33 2e33  NIST-800-171-3.3
│ │ │ -001bf630: 2e32 0a20 202d 204e 4953 542d 3830 302d  .2.  - NIST-800-
│ │ │ -001bf640: 3137 312d 332e 332e 360a 2020 2d20 4e49  171-3.3.6.  - NI
│ │ │ -001bf650: 5354 2d38 3030 2d35 332d 4143 2d32 2867  ST-800-53-AC-2(g
│ │ │ -001bf660: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001bf670: 332d 4143 2d36 2839 290a 2020 2d20 4e49  3-AC-6(9).  - NI
│ │ │ -001bf680: 5354 2d38 3030 2d35 332d 4155 2d31 300a  ST-800-53-AU-10.
│ │ │ -001bf690: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001bf6a0: 4155 2d31 3228 6329 0a20 202d 204e 4953  AU-12(c).  - NIS
│ │ │ -001bf6b0: 542d 3830 302d 3533 2d41 552d 3134 2831  T-800-53-AU-14(1
│ │ │ -001bf6c0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001bf6d0: 332d 4155 2d32 2864 290a 2020 2d20 4e49  3-AU-2(d).  - NI
│ │ │ -001bf6e0: 5354 2d38 3030 2d35 332d 4155 2d33 0a20  ST-800-53-AU-3. 
│ │ │ -001bf6f0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001bf700: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ -001bf710: 3830 302d 3533 2d53 492d 3428 3233 290a  800-53-SI-4(23).
│ │ │ -001bf720: 2020 2d20 5043 492d 4453 532d 5265 712d    - PCI-DSS-Req-
│ │ │ -001bf730: 3130 2e31 0a20 202d 2050 4349 2d44 5353  10.1.  - PCI-DSS
│ │ │ -001bf740: 7634 2d31 302e 320a 2020 2d20 5043 492d  v4-10.2.  - PCI-
│ │ │ -001bf750: 4453 5376 342d 3130 2e32 2e31 0a20 202d  DSSv4-10.2.1.  -
│ │ │ -001bf760: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ -001bf770: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001bf780: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ -001bf790: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ -001bf7a0: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ -001bf7b0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -001bf7c0: 2020 2d20 7365 7276 6963 655f 6175 6469    - service_audi
│ │ │ -001bf7d0: 7464 5f65 6e61 626c 6564 0a20 202d 2073  td_enabled.  - s
│ │ │ -001bf7e0: 7065 6369 616c 5f73 6572 7669 6365 5f62  pecial_service_b
│ │ │ -001bf7f0: 6c6f 636b 0a20 2077 6865 6e3a 0a20 202d  lock.  when:.  -
│ │ │ -001bf800: 2027 226b 6572 6e65 6c22 2069 6e20 616e   '"kernel" in an
│ │ │ -001bf810: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001bf820: 6167 6573 270a 2020 2d20 2722 6175 6469  ages'.  - '"audi
│ │ │ -001bf830: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001bf840: 6374 732e 7061 636b 6167 6573 270a 3c2f  cts.packages'.
< │ │ │ +001bee20: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +001bee30: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
-
│ │ │ +001bee80: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +001bee90: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +001beea0: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ +001beeb0: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ +001beec0: 746f 0a20 2074 6167 733a 0a20 202d 2043  to.  tags:.  - C
│ │ │ +001beed0: 4a49 532d 352e 342e 312e 310a 2020 2d20  JIS-5.4.1.1.  - 
│ │ │ +001beee0: 4e49 5354 2d38 3030 2d31 3731 2d33 2e33  NIST-800-171-3.3
│ │ │ +001beef0: 2e31 0a20 202d 204e 4953 542d 3830 302d  .1.  - NIST-800-
│ │ │ +001bef00: 3137 312d 332e 332e 320a 2020 2d20 4e49  171-3.3.2.  - NI
│ │ │ +001bef10: 5354 2d38 3030 2d31 3731 2d33 2e33 2e36  ST-800-171-3.3.6
│ │ │ +001bef20: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001bef30: 2d41 432d 3228 6729 0a20 202d 204e 4953  -AC-2(g).  - NIS
│ │ │ +001bef40: 542d 3830 302d 3533 2d41 432d 3628 3929  T-800-53-AC-6(9)
│ │ │ +001bef50: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001bef60: 2d41 552d 3130 0a20 202d 204e 4953 542d  -AU-10.  - NIST-
│ │ │ +001bef70: 3830 302d 3533 2d41 552d 3132 2863 290a  800-53-AU-12(c).
│ │ │ +001bef80: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001bef90: 4155 2d31 3428 3129 0a20 202d 204e 4953  AU-14(1).  - NIS
│ │ │ +001befa0: 542d 3830 302d 3533 2d41 552d 3228 6429  T-800-53-AU-2(d)
│ │ │ +001befb0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001befc0: 2d41 552d 330a 2020 2d20 4e49 5354 2d38  -AU-3.  - NIST-8
│ │ │ +001befd0: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ +001befe0: 2d20 4e49 5354 2d38 3030 2d35 332d 5349  - NIST-800-53-SI
│ │ │ +001beff0: 2d34 2832 3329 0a20 202d 2050 4349 2d44  -4(23).  - PCI-D
│ │ │ +001bf000: 5353 2d52 6571 2d31 302e 310a 2020 2d20  SS-Req-10.1.  - 
│ │ │ +001bf010: 5043 492d 4453 5376 342d 3130 2e32 0a20  PCI-DSSv4-10.2. 
│ │ │ +001bf020: 202d 2050 4349 2d44 5353 7634 2d31 302e   - PCI-DSSv4-10.
│ │ │ +001bf030: 322e 310a 2020 2d20 656e 6162 6c65 5f73  2.1.  - enable_s
│ │ │ +001bf040: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ +001bf050: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +001bf060: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +001bf070: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001bf080: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +001bf090: 6e65 6564 6564 0a20 202d 2073 6572 7669  needed.  - servi
│ │ │ +001bf0a0: 6365 5f61 7564 6974 645f 656e 6162 6c65  ce_auditd_enable
│ │ │ +001bf0b0: 640a 0a2d 206e 616d 653a 2045 6e61 626c  d..- name: Enabl
│ │ │ +001bf0c0: 6520 6175 6469 7464 2053 6572 7669 6365  e auditd Service
│ │ │ +001bf0d0: 202d 2045 6e61 626c 6520 7365 7276 6963   - Enable servic
│ │ │ +001bf0e0: 6520 6175 6469 7464 0a20 2062 6c6f 636b  e auditd.  block
│ │ │ +001bf0f0: 3a0a 0a20 202d 206e 616d 653a 2047 6174  :..  - name: Gat
│ │ │ +001bf100: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ +001bf110: 6661 6374 730a 2020 2020 616e 7369 626c  facts.    ansibl
│ │ │ +001bf120: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ +001bf130: 655f 6661 6374 733a 0a20 2020 2020 206d  e_facts:.      m
│ │ │ +001bf140: 616e 6167 6572 3a20 6175 746f 0a0a 2020  anager: auto..  
│ │ │ +001bf150: 2d20 6e61 6d65 3a20 456e 6162 6c65 2061  - name: Enable a
│ │ │ +001bf160: 7564 6974 6420 5365 7276 6963 6520 2d20  uditd Service - 
│ │ │ +001bf170: 456e 6162 6c65 2053 6572 7669 6365 2061  Enable Service a
│ │ │ +001bf180: 7564 6974 640a 2020 2020 616e 7369 626c  uditd.    ansibl
│ │ │ +001bf190: 652e 6275 696c 7469 6e2e 7379 7374 656d  e.builtin.system
│ │ │ +001bf1a0: 643a 0a20 2020 2020 206e 616d 653a 2061  d:.      name: a
│ │ │ +001bf1b0: 7564 6974 640a 2020 2020 2020 656e 6162  uditd.      enab
│ │ │ +001bf1c0: 6c65 643a 2074 7275 650a 2020 2020 2020  led: true.      
│ │ │ +001bf1d0: 7374 6174 653a 2073 7461 7274 6564 0a20  state: started. 
│ │ │ +001bf1e0: 2020 2020 206d 6173 6b65 643a 2066 616c       masked: fal
│ │ │ +001bf1f0: 7365 0a20 2020 2077 6865 6e3a 0a20 2020  se.    when:.   
│ │ │ +001bf200: 202d 2027 2261 7564 6974 2220 696e 2061   - '"audit" in a
│ │ │ +001bf210: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001bf220: 6b61 6765 7327 0a20 2074 6167 733a 0a20  kages'.  tags:. 
│ │ │ +001bf230: 202d 2043 4a49 532d 352e 342e 312e 310a   - CJIS-5.4.1.1.
│ │ │ +001bf240: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ +001bf250: 2d33 2e33 2e31 0a20 202d 204e 4953 542d  -3.3.1.  - NIST-
│ │ │ +001bf260: 3830 302d 3137 312d 332e 332e 320a 2020  800-171-3.3.2.  
│ │ │ +001bf270: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33  - NIST-800-171-3
│ │ │ +001bf280: 2e33 2e36 0a20 202d 204e 4953 542d 3830  .3.6.  - NIST-80
│ │ │ +001bf290: 302d 3533 2d41 432d 3228 6729 0a20 202d  0-53-AC-2(g).  -
│ │ │ +001bf2a0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001bf2b0: 3628 3929 0a20 202d 204e 4953 542d 3830  6(9).  - NIST-80
│ │ │ +001bf2c0: 302d 3533 2d41 552d 3130 0a20 202d 204e  0-53-AU-10.  - N
│ │ │ +001bf2d0: 4953 542d 3830 302d 3533 2d41 552d 3132  IST-800-53-AU-12
│ │ │ +001bf2e0: 2863 290a 2020 2d20 4e49 5354 2d38 3030  (c).  - NIST-800
│ │ │ +001bf2f0: 2d35 332d 4155 2d31 3428 3129 0a20 202d  -53-AU-14(1).  -
│ │ │ +001bf300: 204e 4953 542d 3830 302d 3533 2d41 552d   NIST-800-53-AU-
│ │ │ +001bf310: 3228 6429 0a20 202d 204e 4953 542d 3830  2(d).  - NIST-80
│ │ │ +001bf320: 302d 3533 2d41 552d 330a 2020 2d20 4e49  0-53-AU-3.  - NI
│ │ │ +001bf330: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +001bf340: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001bf350: 332d 5349 2d34 2832 3329 0a20 202d 2050  3-SI-4(23).  - P
│ │ │ +001bf360: 4349 2d44 5353 2d52 6571 2d31 302e 310a  CI-DSS-Req-10.1.
│ │ │ +001bf370: 2020 2d20 5043 492d 4453 5376 342d 3130    - PCI-DSSv4-10
│ │ │ +001bf380: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ +001bf390: 2d31 302e 322e 310a 2020 2d20 656e 6162  -10.2.1.  - enab
│ │ │ +001bf3a0: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ +001bf3b0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001bf3c0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +001bf3d0: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ +001bf3e0: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ +001bf3f0: 6f6f 745f 6e65 6564 6564 0a20 202d 2073  oot_needed.  - s
│ │ │ +001bf400: 6572 7669 6365 5f61 7564 6974 645f 656e  ervice_auditd_en
│ │ │ +001bf410: 6162 6c65 640a 2020 2d20 7370 6563 6961  abled.  - specia
│ │ │ +001bf420: 6c5f 7365 7276 6963 655f 626c 6f63 6b0a  l_service_block.
│ │ │ +001bf430: 2020 7768 656e 3a0a 2020 2d20 2722 6b65    when:.  - '"ke
│ │ │ +001bf440: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +001bf450: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ +001bf460: 0a20 202d 2027 2261 7564 6974 2220 696e  .  - '"audit" in
│ │ │ +001bf470: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001bf480: 6163 6b61 6765 7327 0a3c 2f63 6f64 653e  ackages'.
│ │ │ +001bf490: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +001bf540: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ +001bf550: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +001bf560: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001bf570: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001bf580: 7365 2220 6964 3d22 6964 3437 3322 3e3c se" id="id473">< │ │ │ +001bf590: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001bf5a0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001bf5b0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001bf5c0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +001bf5d0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Disruption:Strategy: │ │ │ +001bf660: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c < │ │ │ +001bf670: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
Complexity:low
Disrup │ │ │ +001bee00: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +001bee10: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +001bee50: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +001bee60: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complex │ │ │ +001bf5e0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +001bf5f0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ +001bf630: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +001bf640: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
enable
include e
│ │ │ +001bf690: 6e61 626c 655f 6175 6469 7464 0a0a 636c  nable_auditd..cl
│ │ │ +001bf6a0: 6173 7320 656e 6162 6c65 5f61 7564 6974  ass enable_audit
│ │ │ +001bf6b0: 6420 7b0a 2020 7365 7276 6963 6520 7b27  d {.  service {'
│ │ │ +001bf6c0: 6175 6469 7464 273a 0a20 2020 2065 6e61  auditd':.    ena
│ │ │ +001bf6d0: 626c 6520 3d26 6774 3b20 7472 7565 2c0a  ble => true,.
│ │ │ +001bf6e0: 2020 2020 656e 7375 7265 203d 2667 743b      ensure =>
│ │ │ +001bf6f0: 2027 7275 6e6e 696e 6727 2c0a 2020 7d0a   'running',.  }.
│ │ │ +001bf700: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ +001bf710: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation OS │ │ │ +001bf7c0: 4275 696c 6420 426c 7565 7072 696e 7420 Build Blueprint │ │ │ +001bf7d0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +001bf7e0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
.[
│ │ │ +001bf820: 6375 7374 6f6d 697a 6174 696f 6e73 2e73  customizations.s
│ │ │ +001bf830: 6572 7669 6365 735d 0a65 6e61 626c 6564  ervices].enabled
│ │ │ +001bf840: 203d 205b 2261 7564 6974 6422 5d0a 3c2f   = ["auditd"].
'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -254,14 +237,31 @@ │ │ │ │ - PCI-DSSv4-11.5.2 │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_aide_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_aide │ │ │ │ + │ │ │ │ +class install_aide { │ │ │ │ + package { 'aide': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "aide" │ │ │ │ +version = "*" │ │ │ │ ****** RRuullee? ?  CCoonnffiigguurree PPeerriiooddiicc EExxeeccuuttiioonn ooff AAIIDDEE ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ At a minimum, AIDE should be configured to run a weekly scan. To implement a daily execution of │ │ │ │ AIDE at 4:05am using cron, add the following line to /etc/crontab: │ │ │ │ 05 4 * * * root /usr/sbin/aide --check │ │ │ │ To implement a weekly execution of AIDE at 4:05am using cron, add the following line to /etc/ │ │ │ │ crontab: │ │ │ │ 05 4 * * 0 root /usr/sbin/aide --check │ │ │ │ @@ -726,31 +726,14 @@ │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_sudo_installed │ │ │ │ _n_i_s_t CM-6(a) │ │ │ │ _o_s_p_p FMT_MOF_EXT.1 │ │ │ │ References: _o_s_-_s_r_g SRG-OS-000324-GPOS-00125 │ │ │ │ _a_n_s_s_i R33 │ │ │ │ _i_s_m 1386 │ │ │ │ _p_c_i_d_s_s_4 2.2.6, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "sudo" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_sudo │ │ │ │ - │ │ │ │ -class install_sudo { │ │ │ │ - package { 'sudo': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -777,14 +760,31 @@ │ │ │ │ - PCI-DSSv4-2.2.6 │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_sudo_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_sudo │ │ │ │ + │ │ │ │ +class install_sudo { │ │ │ │ + package { 'sudo': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "sudo" │ │ │ │ +version = "*" │ │ │ │ ****** RRuullee? ?  EEnnssuurree OOnnllyy UUsseerrss LLooggggeedd IInn TToo RReeaall ttttyy CCaann EExxeeccuuttee SSuuddoo -- ssuuddoo uussee__ppttyy ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The sudo use_pty tag, when specified, will only execute sudo commands from users logged in to a │ │ │ │ real tty. This should be enabled by making sure that the use_pty tag exists in /etc/sudoers │ │ │ │ configuration file or any sudo configuration snippets in /etc/sudoers.d/. │ │ │ │ Rationale: Requiring that sudo commands be run in a pseudo-terminal can prevent an attacker from │ │ │ │ retaining access to the user's terminal after the main program has finished executing. │ │ │ │ Severity:  medium │ │ │ │ @@ -4962,31 +4962,14 @@ │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 SR 2.10, SR 2.11, SR 2.12, SR 2.8, SR 2.9 │ │ │ │ References: _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.4.1, A.12.4.2, A.12.4.3, A.12.4.4, A.12.7.1 │ │ │ │ _n_i_s_t CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.PT-1 │ │ │ │ _p_c_i_d_s_s Req-10.7 │ │ │ │ _a_n_s_s_i R71 │ │ │ │ _p_c_i_d_s_s_4 10.5.1, 10.5 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "logrotate" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_logrotate │ │ │ │ - │ │ │ │ -class install_logrotate { │ │ │ │ - package { 'logrotate': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -5015,14 +4998,31 @@ │ │ │ │ - PCI-DSSv4-10.5.1 │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_logrotate_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_logrotate │ │ │ │ + │ │ │ │ +class install_logrotate { │ │ │ │ + package { 'logrotate': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "logrotate" │ │ │ │ +version = "*" │ │ │ │ Group   Network Configuration and Firewalls   Group contains 13 groups and 17 rules │ │ │ │ _[_r_e_f_]   Most systems must be connected to a network of some sort, and this brings with it the │ │ │ │ substantial risk of network attack. This section discusses the security impact of decisions about │ │ │ │ networking which must be made when configuring a system. │ │ │ │ │ │ │ │ This section also discusses firewalls, network access controls, and other network security │ │ │ │ frameworks, which allow system-level rules to be written that can limit an attackers' ability to │ │ │ │ @@ -5125,31 +5125,14 @@ │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_firewalld_installed │ │ │ │ _n_i_s_t CM-6(a) │ │ │ │ _o_s_p_p FMT_SMF_EXT.1 │ │ │ │ References: _o_s_-_s_r_g SRG-OS-000096-GPOS-00050, SRG-OS-000297-GPOS-00115, SRG-OS-000298-GPOS-00116, │ │ │ │ SRG-OS-000480-GPOS-00227, SRG-OS-000480-GPOS-00232 │ │ │ │ _i_s_m 1409 │ │ │ │ _p_c_i_d_s_s_4 1.2.1, 1.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "firewalld" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_firewalld │ │ │ │ - │ │ │ │ -class install_firewalld { │ │ │ │ - package { 'firewalld': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -5176,14 +5159,31 @@ │ │ │ │ - PCI-DSSv4-1.2.1 │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_firewalld_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_firewalld │ │ │ │ + │ │ │ │ +class install_firewalld { │ │ │ │ + package { 'firewalld': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "firewalld" │ │ │ │ +version = "*" │ │ │ │ ****** RRuullee? ?  VVeerriiffyy ffiirreewwaalllldd EEnnaabblleedd ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The firewalld service can be enabled with the following command: │ │ │ │ $ sudo systemctl enable firewalld.service │ │ │ │ Access control methods provide the ability to enhance system security posture by │ │ │ │ Rationale: restricting services and known good IP addresses and address ranges. This prevents │ │ │ │ connections from unknown hosts and protocols. │ │ │ │ Severity:  medium │ │ │ │ @@ -5199,31 +5199,14 @@ │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1 │ │ │ │ _o_s_p_p FMT_SMF_EXT.1 │ │ │ │ _o_s_-_s_r_g SRG-OS-000096-GPOS-00050, SRG-OS-000297-GPOS-00115, SRG-OS-000480-GPOS- │ │ │ │ 00227, SRG-OS-000480-GPOS-00231, SRG-OS-000480-GPOS-00232 │ │ │ │ _b_s_i SYS.1.6.A5, SYS.1.6.A21 │ │ │ │ _i_s_m 1409 │ │ │ │ _p_c_i_d_s_s_4 1.2.1, 1.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -enabled = ["firewalld"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include enable_firewalld │ │ │ │ - │ │ │ │ -class enable_firewalld { │ │ │ │ - service {'firewalld': │ │ │ │ - enable => true, │ │ │ │ - ensure => 'running', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -5276,14 +5259,31 @@ │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_firewalld_enabled │ │ │ │ - special_service_block │ │ │ │ when: │ │ │ │ - '"kernel" in ansible_facts.packages' │ │ │ │ - '"firewalld" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include enable_firewalld │ │ │ │ + │ │ │ │ +class enable_firewalld { │ │ │ │ + service {'firewalld': │ │ │ │ + enable => true, │ │ │ │ + ensure => 'running', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +enabled = ["firewalld"] │ │ │ │ Group   iptables and ip6tables   Group contains 1 group and 1 rule │ │ │ │ _[_r_e_f_]   A host-based firewall called netfilter is included as part of the Linux kernel distributed │ │ │ │ with the system. It is activated by default. This firewall is controlled by the program iptables, │ │ │ │ and the entire capability is frequently referred to by this name. An analogous program called │ │ │ │ ip6tables handles filtering for IPv6. │ │ │ │ │ │ │ │ Unlike TCP Wrappers, which depends on the network server program to support and respect the rules │ │ │ │ @@ -7379,31 +7379,14 @@ │ │ │ │ with the following command: │ │ │ │ systemctl disable nftables │ │ │ │ Rationale: Running both firewalld and nftables may lead to conflict. nftables is actually one of │ │ │ │ the backends for firewalld management tools. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_service_nftables_disabled │ │ │ │ References: _p_c_i_d_s_s_4 1.2.1, 1.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -masked = ["nftables"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include disable_nftables │ │ │ │ - │ │ │ │ -class disable_nftables { │ │ │ │ - service {'nftables': │ │ │ │ - enable => false, │ │ │ │ - ensure => 'stopped', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -7459,14 +7442,31 @@ │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_nftables_disabled │ │ │ │ - special_service_block │ │ │ │ when: ( "firewalld" in ansible_facts.packages and "nftables" in ansible_facts.packages │ │ │ │ and "kernel" in ansible_facts.packages ) │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include disable_nftables │ │ │ │ + │ │ │ │ +class disable_nftables { │ │ │ │ + service {'nftables': │ │ │ │ + enable => false, │ │ │ │ + ensure => 'stopped', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +masked = ["nftables"] │ │ │ │ Group   Uncommon Network Protocols   Group contains 2 rules │ │ │ │ _[_r_e_f_]   The system includes support for several network protocols which are not commonly used. │ │ │ │ Although security vulnerabilities in kernel networking code are not frequently discovered, the │ │ │ │ consequences can be dramatic. Ensuring uncommon network protocols are disabled reduces the system's │ │ │ │ risk to attacks targeted at its implementation of those protocols. │ │ │ │ Warning:  Although these protocols are not commonly used, avoid disruption in your network │ │ │ │ environment by ensuring they are not needed prior to disabling them. │ │ │ │ @@ -10448,31 +10448,14 @@ │ │ │ │ $ sudo yum install libselinux │ │ │ │ Security-enhanced Linux is a feature of the Linux kernel and a number of utilities with │ │ │ │ Rationale: enhanced security functionality designed to add mandatory access controls to Linux. The │ │ │ │ libselinux package contains the core library of the Security-enhanced Linux system. │ │ │ │ Severity:  high │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_libselinux_installed │ │ │ │ References: _p_c_i_d_s_s_4 1.2.6, 1.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "libselinux" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_libselinux │ │ │ │ - │ │ │ │ -class install_libselinux { │ │ │ │ - package { 'libselinux': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -10497,14 +10480,31 @@ │ │ │ │ - PCI-DSSv4-1.2.6 │ │ │ │ - enable_strategy │ │ │ │ - high_severity │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - package_libselinux_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_libselinux │ │ │ │ + │ │ │ │ +class install_libselinux { │ │ │ │ + package { 'libselinux': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "libselinux" │ │ │ │ +version = "*" │ │ │ │ ****** RRuullee? ?  EEnnssuurree SSEELLiinnuuxx NNoott DDiissaabblleedd iinn //eettcc//ddeeffaauulltt//ggrruubb ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ SELinux can be disabled at boot time by an argument in /etc/default/grub. Remove any instances of │ │ │ │ selinux=0 from the kernel arguments in that file to prevent SELinux from being disabled at boot. │ │ │ │ Disabling a major host protection feature, such as SELinux, at boot time prevents it │ │ │ │ Rationale: from confining system services at boot time. Further, it increases the chances that it │ │ │ │ will remain off during system operation. │ │ │ │ Severity:  medium │ │ │ │ @@ -10808,31 +10808,14 @@ │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 1.5, SR 1.6, SR 1.7, SR 1.8, SR 1.9, SR 2.1, SR 2.2, SR 2.3, SR 2.4, SR │ │ │ │ 2.5, SR 2.6, SR 2.7, SR 7.6 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.1.2, A.12.5.1, A.12.6.2, A.14.2.2, A.14.2.3, A.14.2.4, A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-3 │ │ │ │ _i_s_m 1409 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -masked = ["avahi-daemon"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include disable_avahi-daemon │ │ │ │ - │ │ │ │ -class disable_avahi-daemon { │ │ │ │ - service {'avahi-daemon': │ │ │ │ - enable => false, │ │ │ │ - ensure => 'stopped', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -10894,14 +10877,31 @@ │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_avahi-daemon_disabled │ │ │ │ - special_service_block │ │ │ │ when: ( "avahi" in ansible_facts.packages and "kernel" in ansible_facts.packages │ │ │ │ ) │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include disable_avahi-daemon │ │ │ │ + │ │ │ │ +class disable_avahi-daemon { │ │ │ │ + service {'avahi-daemon': │ │ │ │ + enable => false, │ │ │ │ + ensure => 'stopped', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +masked = ["avahi-daemon"] │ │ │ │ Group   Cron and At Daemons   Group contains 1 group and 27 rules │ │ │ │ _[_r_e_f_]   The cron and at services are used to allow commands to be executed at a later time. The cron │ │ │ │ service is required by almost all systems to perform necessary maintenance tasks, while at may or │ │ │ │ may not be required on a given system. Both daemons should be configured defensively. │ │ │ │ Group   Restrict at and cron to Authorized Users if Necessary   Group contains 8 rules │ │ │ │ _[_r_e_f_]   The /etc/cron.allow and /etc/at.allow files contain lists of users who are allowed to use │ │ │ │ cron and at to delay execution of processes. If these files exist and if the corresponding files / │ │ │ │ @@ -11620,31 +11620,14 @@ │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 1.5, SR 1.6, SR 1.7, SR 1.8, SR 1.9, SR 2.1, SR 2.2, SR 2.3, SR 2.4, SR │ │ │ │ 2.5, SR 2.6, SR 2.7, SR 7.6 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.1.2, A.12.5.1, A.12.6.2, A.14.2.2, A.14.2.3, A.14.2.4, A.9.1.2 │ │ │ │ _n_i_s_t CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-3 │ │ │ │ _o_s_-_s_r_g SRG-OS-000480-GPOS-00227 │ │ │ │ _p_c_i_d_s_s_4 2.2.6, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "cron" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_cron │ │ │ │ - │ │ │ │ -class install_cron { │ │ │ │ - package { 'cron': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -11671,14 +11654,31 @@ │ │ │ │ - PCI-DSSv4-2.2.6 │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_cron_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_cron │ │ │ │ + │ │ │ │ +class install_cron { │ │ │ │ + package { 'cron': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "cron" │ │ │ │ +version = "*" │ │ │ │ ****** RRuullee? ?  VVeerriiffyy GGrroouupp WWhhoo OOwwnnss ccrroonn..dd ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ To properly set the group owner of /etc/cron.d, run the command: │ │ │ │ $ sudo chgrp root /etc/cron.d │ │ │ │ Service configuration files enable or disable features of their respective services that │ │ │ │ Rationale: if configured incorrectly can lead to insecure and vulnerable configurations. Therefore, │ │ │ │ service configuration files should be owned by the correct group to prevent unauthorized │ │ │ │ changes. │ │ │ │ @@ -13523,31 +13523,14 @@ │ │ │ │ following command: │ │ │ │ $ sudo systemctl mask --now rpcbind.service │ │ │ │ Rationale: If the system does not require rpc based services, it is recommended that rpcbind be │ │ │ │ disabled to reduce the attack surface. │ │ │ │ Severity:  low │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_service_rpcbind_disabled │ │ │ │ References: _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -masked = ["rpcbind"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include disable_rpcbind │ │ │ │ - │ │ │ │ -class disable_rpcbind { │ │ │ │ - service {'rpcbind': │ │ │ │ - enable => false, │ │ │ │ - ensure => 'stopped', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -13601,14 +13584,31 @@ │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_rpcbind_disabled │ │ │ │ - special_service_block │ │ │ │ when: '"kernel" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include disable_rpcbind │ │ │ │ + │ │ │ │ +class disable_rpcbind { │ │ │ │ + service {'rpcbind': │ │ │ │ + enable => false, │ │ │ │ + ensure => 'stopped', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +masked = ["rpcbind"] │ │ │ │ Group   Network Time Protocol   Group contains 3 rules │ │ │ │ _[_r_e_f_]   The Network Time Protocol is used to manage the system clock over a network. Computer clocks │ │ │ │ are not very accurate, so time will drift unpredictably on unmanaged systems. Central time protocols │ │ │ │ can be used both to ensure that time is consistent among a network of systems, and that their time │ │ │ │ is consistent with the outside world. │ │ │ │ │ │ │ │ If every system on a network reliably reports the same time, then it is much easier to correlate log │ │ │ │ @@ -13661,31 +13661,14 @@ │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_chrony_installed │ │ │ │ _o_s_p_p FMT_SMF_EXT.1 │ │ │ │ _p_c_i_d_s_s Req-10.4 │ │ │ │ References: _o_s_-_s_r_g SRG-OS-000355-GPOS-00143 │ │ │ │ _a_n_s_s_i R71 │ │ │ │ _i_s_m 0988, 1405 │ │ │ │ _p_c_i_d_s_s_4 10.6.1, 10.6 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "chrony" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_chrony │ │ │ │ - │ │ │ │ -class install_chrony { │ │ │ │ - package { 'chrony': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -13712,14 +13695,31 @@ │ │ │ │ - PCI-DSSv4-10.6.1 │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_chrony_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_chrony │ │ │ │ + │ │ │ │ +class install_chrony { │ │ │ │ + package { 'chrony': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "chrony" │ │ │ │ +version = "*" │ │ │ │ ****** RRuullee? ?  AA rreemmoottee ttiimmee sseerrvveerr ffoorr CChhrroonnyy iiss ccoonnffiigguurreedd ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ Chrony is a daemon which implements the Network Time Protocol (NTP). It is designed to synchronize │ │ │ │ system clocks across a variety of systems and use a source that is highly accurate. More │ │ │ │ information on chrony can be found at _h_t_t_p_s_:_/_/_c_h_r_o_n_y_-_p_r_o_j_e_c_t_._o_r_g_/. Chrony can be configured to be a │ │ │ │ client and/or a server. Add or edit server or pool lines to /etc/chrony.conf as appropriate: │ │ │ │ server │ │ │ │ Alternatively, server or pool directives can be specified in files included via sourcedir or │ │ │ │ @@ -14139,27 +14139,14 @@ │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.11.2.6, A.12.1.2, A.12.5.1, A.12.6.2, A.13.1.1, A.13.2.1, A.14.1.3, │ │ │ │ A.14.2.2, A.14.2.3, A.14.2.4, A.6.2.1, A.6.2.2, A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-3, PR.IP-1, PR.PT-3, PR.PT-4 │ │ │ │ _a_n_s_s_i R62 │ │ │ │ _i_s_m 1409 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_xinetd │ │ │ │ - │ │ │ │ -class remove_xinetd { │ │ │ │ - package { 'xinetd': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -14190,14 +14177,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_xinetd_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_xinetd │ │ │ │ + │ │ │ │ +class remove_xinetd { │ │ │ │ + package { 'xinetd': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -14232,27 +14232,14 @@ │ │ │ │ Severity:  unknown │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_ypbind_removed │ │ │ │ _h_i_p_a_a 164.308(a)(4)(i), 164.308(b)(1), 164.308(b)(3), 164.310(b), 164.312(e)(1), │ │ │ │ 164.312(e)(2)(ii) │ │ │ │ References: _a_n_s_s_i R62 │ │ │ │ _i_s_m 1409 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_ypbind │ │ │ │ - │ │ │ │ -class remove_ypbind { │ │ │ │ - package { 'ypbind': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Remove NIS Client: Ensure ypbind is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -14263,14 +14250,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - package_ypbind_removed │ │ │ │ - unknown_severity │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_ypbind │ │ │ │ + │ │ │ │ +class remove_ypbind { │ │ │ │ + package { 'ypbind': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove ypbind │ │ │ │ @@ -14297,27 +14297,14 @@ │ │ │ │ _c_u_i 3.1.13 │ │ │ │ _h_i_p_a_a 164.308(a)(4)(i), 164.308(b)(1), 164.308(b)(3), 164.310(b), 164.312(e)(1), │ │ │ │ 164.312(e)(2)(ii) │ │ │ │ References: _i_s_o_2_7_0_0_1_-_2_0_1_3 A.8.2.3, A.13.1.1, A.13.2.1, A.13.2.3, A.14.1.2, A.14.1.3 │ │ │ │ _a_n_s_s_i R62 │ │ │ │ _i_s_m 1409 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_telnet │ │ │ │ - │ │ │ │ -class remove_telnet { │ │ │ │ - package { 'telnet': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Remove telnet Clients: Ensure telnet is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -14329,14 +14316,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_telnet_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_telnet │ │ │ │ + │ │ │ │ +class remove_telnet { │ │ │ │ + package { 'telnet': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove telnet │ │ │ │ @@ -14353,31 +14353,14 @@ │ │ │ │ The rsyncd service can be disabled with the following command: │ │ │ │ $ sudo systemctl mask --now rsyncd.service │ │ │ │ Rationale: The rsyncd service presents a security risk as it uses unencrypted protocols for │ │ │ │ communication. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_service_rsyncd_disabled │ │ │ │ References: _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -masked = ["rsyncd"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include disable_rsyncd │ │ │ │ - │ │ │ │ -class disable_rsyncd { │ │ │ │ - service {'rsyncd': │ │ │ │ - enable => false, │ │ │ │ - ensure => 'stopped', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -14432,14 +14415,31 @@ │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_rsyncd_disabled │ │ │ │ - special_service_block │ │ │ │ when: '"kernel" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include disable_rsyncd │ │ │ │ + │ │ │ │ +class disable_rsyncd { │ │ │ │ + service {'rsyncd': │ │ │ │ + enable => false, │ │ │ │ + ensure => 'stopped', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +masked = ["rsyncd"] │ │ │ │ Group   SSH Server   Group contains 1 group and 19 rules │ │ │ │ _[_r_e_f_]   The SSH protocol is recommended for remote login and remote file transfer. SSH provides │ │ │ │ confidentiality and integrity for data exchanged between two systems, as well as server │ │ │ │ authentication, through the use of public key cryptography. The implementation included with the │ │ │ │ system is called OpenSSH, and more detailed documentation is available from its website, _h_t_t_p_s_:_/_/ │ │ │ │ _w_w_w_._o_p_e_n_s_s_h_._c_o_m. Its server program is called sshd and provided by the RPM package openssh-server. │ │ │ │ Group   Configure OpenSSH Server if Necessary   Group contains 16 rules │ │ │ │ @@ -16416,23 +16416,14 @@ │ │ │ │ _n_i_s_t AC-17(a), CM-6(a), AC-6(1) │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-4, PR.DS-5 │ │ │ │ _p_c_i_d_s_s Req-2.2.4 │ │ │ │ _o_s_-_s_r_g SRG-OS-000480-GPOS-00227 │ │ │ │ _a_n_s_s_i R50 │ │ │ │ _i_s_m 1449 │ │ │ │ _p_c_i_d_s_s_4 2.2.6, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -include ssh_private_key_perms │ │ │ │ - │ │ │ │ -class ssh_private_key_perms { │ │ │ │ - exec { 'sshd_priv_key': │ │ │ │ - command => "chmod 0640 /etc/ssh/*_key", │ │ │ │ - path => '/bin:/usr/bin' │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -16496,14 +16487,23 @@ │ │ │ │ - PCI-DSSv4-2.2.6 │ │ │ │ - configure_strategy │ │ │ │ - file_permissions_sshd_private_key │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +include ssh_private_key_perms │ │ │ │ + │ │ │ │ +class ssh_private_key_perms { │ │ │ │ + exec { 'sshd_priv_key': │ │ │ │ + command => "chmod 0640 /etc/ssh/*_key", │ │ │ │ + path => '/bin:/usr/bin' │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ │ │ │ │ for keyfile in /etc/ssh/*_key; do │ │ │ │ test -f "$keyfile" || continue │ │ │ │ if test root:root = "$(stat -c "%U:%G" "$keyfile")"; then │ │ │ │ @@ -16542,23 +16542,14 @@ │ │ │ │ 3 R5.1.2 │ │ │ │ _n_i_s_t AC-17(a), CM-6(a), AC-6(1) │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-4, PR.DS-5 │ │ │ │ _p_c_i_d_s_s Req-2.2.4 │ │ │ │ _o_s_-_s_r_g SRG-OS-000480-GPOS-00227 │ │ │ │ _a_n_s_s_i R50 │ │ │ │ _p_c_i_d_s_s_4 2.2.6, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -include ssh_public_key_perms │ │ │ │ - │ │ │ │ -class ssh_public_key_perms { │ │ │ │ - exec { 'sshd_pub_key': │ │ │ │ - command => "chmod 0644 /etc/ssh/*.pub", │ │ │ │ - path => '/bin:/usr/bin' │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -16622,14 +16613,23 @@ │ │ │ │ - PCI-DSSv4-2.2.6 │ │ │ │ - configure_strategy │ │ │ │ - file_permissions_sshd_pub_key │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +include ssh_public_key_perms │ │ │ │ + │ │ │ │ +class ssh_public_key_perms { │ │ │ │ + exec { 'sshd_pub_key': │ │ │ │ + command => "chmod 0644 /etc/ssh/*.pub", │ │ │ │ + path => '/bin:/usr/bin' │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -25402,31 +25402,14 @@ │ │ │ │ SRG-OS-000337-GPOS-00129, SRG-OS-000348-GPOS-00136, SRG-OS-000349-GPOS-00137, │ │ │ │ SRG-OS-000350-GPOS-00138, SRG-OS-000351-GPOS-00139, SRG-OS-000352-GPOS-00140, │ │ │ │ SRG-OS-000353-GPOS-00141, SRG-OS-000354-GPOS-00142, SRG-OS-000358-GPOS-00145, │ │ │ │ SRG-OS-000365-GPOS-00152, SRG-OS-000392-GPOS-00172, SRG-OS-000475-GPOS-00220 │ │ │ │ _a_n_s_s_i R33, R73 │ │ │ │ _i_s_m 0582, 0846 │ │ │ │ _p_c_i_d_s_s_4 10.2.1, 10.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "audit" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_audit │ │ │ │ - │ │ │ │ -class install_audit { │ │ │ │ - package { 'audit': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -25467,14 +25450,31 @@ │ │ │ │ - PCI-DSSv4-10.2.1 │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_audit_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_audit │ │ │ │ + │ │ │ │ +class install_audit { │ │ │ │ + package { 'audit': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "audit" │ │ │ │ +version = "*" │ │ │ │ ****** RRuullee? ?  EEnnaabbllee aauuddiittdd SSeerrvviiccee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The auditd service is an essential userspace component of the Linux Auditing System, as it is │ │ │ │ responsible for writing audit records to disk. The auditd service can be enabled with the following │ │ │ │ command: │ │ │ │ $ sudo systemctl enable auditd.service │ │ │ │ Without establishing what type of events occurred, it would be difficult to establish, │ │ │ │ correlate, and investigate the events leading up to an outage or attack. Ensuring the │ │ │ │ @@ -25520,31 +25520,14 @@ │ │ │ │ 000354-GPOS-00142, SRG-OS-000358-GPOS-00145, SRG-OS-000365-GPOS-00152, │ │ │ │ SRG-OS-000392-GPOS-00172, SRG-OS-000475-GPOS-00220 │ │ │ │ _a_p_p_-_s_r_g_-_c_t_r SRG-APP-000095-CTR-000170, SRG-APP-000409-CTR-000990, SRG-APP-000508-CTR- │ │ │ │ 001300, SRG-APP-000510-CTR-001310 │ │ │ │ _a_n_s_s_i R33, R73 │ │ │ │ _i_s_m 1409 │ │ │ │ _p_c_i_d_s_s_4 10.2.1, 10.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -enabled = ["auditd"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include enable_auditd │ │ │ │ - │ │ │ │ -class enable_auditd { │ │ │ │ - service {'auditd': │ │ │ │ - enable => true, │ │ │ │ - ensure => 'running', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -25611,14 +25594,31 @@ │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_auditd_enabled │ │ │ │ - special_service_block │ │ │ │ when: │ │ │ │ - '"kernel" in ansible_facts.packages' │ │ │ │ - '"audit" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include enable_auditd │ │ │ │ + │ │ │ │ +class enable_auditd { │ │ │ │ + service {'auditd': │ │ │ │ + enable => true, │ │ │ │ + ensure => 'running', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +enabled = ["auditd"] │ │ │ │ ****** RRuullee? ?  EEnnaabbllee AAuuddiittiinngg ffoorr PPrroocceesssseess WWhhiicchh SSttaarrtt PPrriioorr ttoo tthhee AAuuddiitt DDaaeemmoonn ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ To ensure all processes can be audited, even those which start prior to the audit daemon, add the │ │ │ │ argument audit=1 to the default GRUB 2 command line for the Linux operating system. Configure the │ │ │ │ default Grub2 kernel command line to contain audit=1 as follows: │ │ │ │ # grub2-editenv - set "$(grub2-editenv - list | grep kernelopts) audit=1" │ │ │ │ Each process on the system carries an "auditable" flag which indicates whether its │ │ │ │ Rationale: activities can be audited. Although auditd takes care of enabling this for all processes │ │ ├── ./usr/share/doc/ssg-nondebian/ssg-alinux3-guide-standard.html │ │ │ @@ -20210,208 +20210,208 @@ │ │ │ 0004ef10: 6172 6765 743d 2223 6964 3331 2220 7461 arget="#id31" ta │ │ │ 0004ef20: 6269 6e64 6578 3d22 3022 2072 6f6c 653d bindex="0" role= │ │ │ 0004ef30: 2262 7574 746f 6e22 2061 7269 612d 6578 "button" aria-ex │ │ │ 0004ef40: 7061 6e64 6564 3d22 6661 6c73 6522 2074 panded="false" t │ │ │ 0004ef50: 6974 6c65 3d22 4163 7469 7661 7465 2074 itle="Activate t │ │ │ 0004ef60: 6f20 7265 7665 616c 2220 6872 6566 3d22 o reveal" href=" │ │ │ 0004ef70: 2321 223e 5265 6d65 6469 6174 696f 6e20 #!">Remediation │ │ │ -0004ef80: 4f53 4275 696c 6420 426c 7565 7072 696e OSBuild Blueprin │ │ │ -0004ef90: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
.
│ │ │ -0004efe0: 5b63 7573 746f 6d69 7a61 7469 6f6e 732e  [customizations.
│ │ │ -0004eff0: 7365 7276 6963 6573 5d0a 6d61 736b 6564  services].masked
│ │ │ -0004f000: 203d 205b 2261 7574 6f66 7322 5d0a 3c2f   = ["autofs"].
Rem │ │ │ -0004f0c0: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ -0004f0d0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -0004f0e0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Comp │ │ │ -0004f160: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -0004f170: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -0004f190: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -0004f1b0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -0004f1c0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -0004f200: 7072 653e 3c63 6f64 653e 696e 636c 7564 pre>includ │ │ │ -0004f210: 6520 6469 7361 626c 655f 6175 746f 6673 e disable_autofs │ │ │ -0004f220: 0a0a 636c 6173 7320 6469 7361 626c 655f ..class disable_ │ │ │ -0004f230: 6175 746f 6673 207b 0a20 2073 6572 7669 autofs {. servi │ │ │ -0004f240: 6365 207b 2761 7574 6f66 7327 3a0a 2020 ce {'autofs':. │ │ │ -0004f250: 2020 656e 6162 6c65 203d 2667 743b 2066 enable => f │ │ │ -0004f260: 616c 7365 2c0a 2020 2020 656e 7375 7265 alse,. ensure │ │ │ -0004f270: 203d 2667 743b 2027 7374 6f70 7065 6427 => 'stopped' │ │ │ -0004f280: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c ,. }.}.< │ │ │ -0004f290: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>
Remediati │ │ │ -0004f340: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070 on Ansible snipp │ │ │ -0004f350: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
< │ │ │ -0004f3d0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -0004f3e0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -0004f400: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -0004f410: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -0004f430: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -0004f450: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ -0004f480: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -0004f490: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -0004f4a0: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -0004f4b0: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -0004f4c0: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -0004f4d0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d31  :.  - NIST-800-1
│ │ │ -0004f4e0: 3731 2d33 2e34 2e36 0a20 202d 204e 4953  71-3.4.6.  - NIS
│ │ │ -0004f4f0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -0004f500: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -0004f510: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ -0004f520: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ -0004f530: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -0004f540: 2d4d 502d 370a 2020 2d20 6469 7361 626c  -MP-7.  - disabl
│ │ │ -0004f550: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ -0004f560: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -0004f570: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -0004f580: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -0004f590: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -0004f5a0: 6f74 5f6e 6565 6465 640a 2020 2d20 7365  ot_needed.  - se
│ │ │ -0004f5b0: 7276 6963 655f 6175 746f 6673 5f64 6973  rvice_autofs_dis
│ │ │ -0004f5c0: 6162 6c65 640a 0a2d 206e 616d 653a 2044  abled..- name: D
│ │ │ -0004f5d0: 6973 6162 6c65 2074 6865 2041 7574 6f6d  isable the Autom
│ │ │ -0004f5e0: 6f75 6e74 6572 202d 2044 6973 6162 6c65  ounter - Disable
│ │ │ -0004f5f0: 2073 6572 7669 6365 2061 7574 6f66 730a   service autofs.
│ │ │ -0004f600: 2020 626c 6f63 6b3a 0a0a 2020 2d20 6e61    block:..  - na
│ │ │ -0004f610: 6d65 3a20 4469 7361 626c 6520 7468 6520  me: Disable the 
│ │ │ -0004f620: 4175 746f 6d6f 756e 7465 7220 2d20 436f  Automounter - Co
│ │ │ -0004f630: 6c6c 6563 7420 7379 7374 656d 6420 5365  llect systemd Se
│ │ │ -0004f640: 7276 6963 6573 2050 7265 7365 6e74 2069  rvices Present i
│ │ │ -0004f650: 6e20 7468 6520 5379 7374 656d 0a20 2020  n the System.   
│ │ │ -0004f660: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -0004f670: 2e63 6f6d 6d61 6e64 3a20 7379 7374 656d  .command: system
│ │ │ -0004f680: 6374 6c20 2d71 206c 6973 742d 756e 6974  ctl -q list-unit
│ │ │ -0004f690: 2d66 696c 6573 202d 2d74 7970 6520 7365  -files --type se
│ │ │ -0004f6a0: 7276 6963 650a 2020 2020 7265 6769 7374  rvice.    regist
│ │ │ -0004f6b0: 6572 3a20 7365 7276 6963 655f 6578 6973  er: service_exis
│ │ │ -0004f6c0: 7473 0a20 2020 2063 6861 6e67 6564 5f77  ts.    changed_w
│ │ │ -0004f6d0: 6865 6e3a 2066 616c 7365 0a20 2020 2066  hen: false.    f
│ │ │ -0004f6e0: 6169 6c65 645f 7768 656e 3a20 7365 7276  ailed_when: serv
│ │ │ -0004f6f0: 6963 655f 6578 6973 7473 2e72 6320 6e6f  ice_exists.rc no
│ │ │ -0004f700: 7420 696e 205b 302c 2031 5d0a 2020 2020  t in [0, 1].    
│ │ │ -0004f710: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73  check_mode: fals
│ │ │ -0004f720: 650a 0a20 202d 206e 616d 653a 2044 6973  e..  - name: Dis
│ │ │ -0004f730: 6162 6c65 2074 6865 2041 7574 6f6d 6f75  able the Automou
│ │ │ -0004f740: 6e74 6572 202d 2045 6e73 7572 6520 6175  nter - Ensure au
│ │ │ -0004f750: 746f 6673 2e73 6572 7669 6365 2069 7320  tofs.service is 
│ │ │ -0004f760: 4d61 736b 6564 0a20 2020 2061 6e73 6962  Masked.    ansib
│ │ │ -0004f770: 6c65 2e62 7569 6c74 696e 2e73 7973 7465  le.builtin.syste
│ │ │ -0004f780: 6d64 3a0a 2020 2020 2020 6e61 6d65 3a20  md:.      name: 
│ │ │ -0004f790: 6175 746f 6673 2e73 6572 7669 6365 0a20  autofs.service. 
│ │ │ -0004f7a0: 2020 2020 2073 7461 7465 3a20 7374 6f70       state: stop
│ │ │ -0004f7b0: 7065 640a 2020 2020 2020 656e 6162 6c65  ped.      enable
│ │ │ -0004f7c0: 643a 2066 616c 7365 0a20 2020 2020 206d  d: false.      m
│ │ │ -0004f7d0: 6173 6b65 643a 2074 7275 650a 2020 2020  asked: true.    
│ │ │ -0004f7e0: 7768 656e 3a20 7365 7276 6963 655f 6578  when: service_ex
│ │ │ -0004f7f0: 6973 7473 2e73 7464 6f75 745f 6c69 6e65  ists.stdout_line
│ │ │ -0004f800: 7320 6973 2073 6561 7263 6828 2261 7574  s is search("aut
│ │ │ -0004f810: 6f66 732e 7365 7276 6963 6522 2c20 6d75  ofs.service", mu
│ │ │ -0004f820: 6c74 696c 696e 653d 5472 7565 290a 0a20  ltiline=True).. 
│ │ │ -0004f830: 202d 206e 616d 653a 2055 6e69 7420 536f   - name: Unit So
│ │ │ -0004f840: 636b 6574 2045 7869 7374 7320 2d20 6175  cket Exists - au
│ │ │ -0004f850: 746f 6673 2e73 6f63 6b65 740a 2020 2020  tofs.socket.    
│ │ │ -0004f860: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -0004f870: 636f 6d6d 616e 643a 2073 7973 7465 6d63  command: systemc
│ │ │ -0004f880: 746c 202d 7120 6c69 7374 2d75 6e69 742d  tl -q list-unit-
│ │ │ -0004f890: 6669 6c65 7320 6175 746f 6673 2e73 6f63  files autofs.soc
│ │ │ -0004f8a0: 6b65 740a 2020 2020 7265 6769 7374 6572  ket.    register
│ │ │ -0004f8b0: 3a20 736f 636b 6574 5f66 696c 655f 6578  : socket_file_ex
│ │ │ -0004f8c0: 6973 7473 0a20 2020 2063 6861 6e67 6564  ists.    changed
│ │ │ -0004f8d0: 5f77 6865 6e3a 2066 616c 7365 0a20 2020  _when: false.   
│ │ │ -0004f8e0: 2066 6169 6c65 645f 7768 656e 3a20 736f   failed_when: so
│ │ │ -0004f8f0: 636b 6574 5f66 696c 655f 6578 6973 7473  cket_file_exists
│ │ │ -0004f900: 2e72 6320 6e6f 7420 696e 205b 302c 2031  .rc not in [0, 1
│ │ │ -0004f910: 5d0a 2020 2020 6368 6563 6b5f 6d6f 6465  ].    check_mode
│ │ │ -0004f920: 3a20 6661 6c73 650a 0a20 202d 206e 616d  : false..  - nam
│ │ │ -0004f930: 653a 2044 6973 6162 6c65 2074 6865 2041  e: Disable the A
│ │ │ -0004f940: 7574 6f6d 6f75 6e74 6572 202d 2044 6973  utomounter - Dis
│ │ │ -0004f950: 6162 6c65 2053 6f63 6b65 7420 6175 746f  able Socket auto
│ │ │ -0004f960: 6673 0a20 2020 2061 6e73 6962 6c65 2e62  fs.    ansible.b
│ │ │ -0004f970: 7569 6c74 696e 2e73 7973 7465 6d64 3a0a  uiltin.systemd:.
│ │ │ -0004f980: 2020 2020 2020 6e61 6d65 3a20 6175 746f        name: auto
│ │ │ -0004f990: 6673 2e73 6f63 6b65 740a 2020 2020 2020  fs.socket.      
│ │ │ -0004f9a0: 656e 6162 6c65 643a 2066 616c 7365 0a20  enabled: false. 
│ │ │ -0004f9b0: 2020 2020 2073 7461 7465 3a20 7374 6f70       state: stop
│ │ │ -0004f9c0: 7065 640a 2020 2020 2020 6d61 736b 6564  ped.      masked
│ │ │ -0004f9d0: 3a20 7472 7565 0a20 2020 2077 6865 6e3a  : true.    when:
│ │ │ -0004f9e0: 2073 6f63 6b65 745f 6669 6c65 5f65 7869   socket_file_exi
│ │ │ -0004f9f0: 7374 732e 7374 646f 7574 5f6c 696e 6573  sts.stdout_lines
│ │ │ -0004fa00: 2069 7320 7365 6172 6368 2822 6175 746f   is search("auto
│ │ │ -0004fa10: 6673 2e73 6f63 6b65 7422 2c20 6d75 6c74  fs.socket", mult
│ │ │ -0004fa20: 696c 696e 653d 5472 7565 290a 2020 7461  iline=True).  ta
│ │ │ -0004fa30: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -0004fa40: 2d31 3731 2d33 2e34 2e36 0a20 202d 204e  -171-3.4.6.  - N
│ │ │ -0004fa50: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -0004fa60: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -0004fa70: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ -0004fa80: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -0004fa90: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ -0004faa0: 3533 2d4d 502d 370a 2020 2d20 6469 7361  53-MP-7.  - disa
│ │ │ -0004fab0: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ -0004fac0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -0004fad0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -0004fae0: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ -0004faf0: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ -0004fb00: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ -0004fb10: 7365 7276 6963 655f 6175 746f 6673 5f64  service_autofs_d
│ │ │ -0004fb20: 6973 6162 6c65 640a 2020 2d20 7370 6563  isabled.  - spec
│ │ │ -0004fb30: 6961 6c5f 7365 7276 6963 655f 626c 6f63  ial_service_bloc
│ │ │ -0004fb40: 6b0a 2020 7768 656e 3a20 2820 2261 7574  k.  when: ( "aut
│ │ │ -0004fb50: 6f66 7322 2069 6e20 616e 7369 626c 655f  ofs" in ansible_
│ │ │ -0004fb60: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -0004fb70: 6e64 2022 6b65 726e 656c 2220 696e 2061  nd "kernel" in a
│ │ │ -0004fb80: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -0004fb90: 6b61 6765 730a 2020 2020 290a 3c2f 636f  kages.    ).
│ │ │ +0004f010: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +0004f030: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +0004f080: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +0004f0b0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +0004f020: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +0004f040: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +0004f090: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +0004f0a0: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
- name: Gathe
│ │ │ +0004f0d0: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ +0004f0e0: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ +0004f0f0: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ +0004f100: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ +0004f110: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ +0004f120: 332e 342e 360a 2020 2d20 4e49 5354 2d38  3.4.6.  - NIST-8
│ │ │ +0004f130: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ +0004f140: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +0004f150: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ +0004f160: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ +0004f170: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ +0004f180: 2d37 0a20 202d 2064 6973 6162 6c65 5f73  -7.  - disable_s
│ │ │ +0004f190: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ +0004f1a0: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +0004f1b0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +0004f1c0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +0004f1d0: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +0004f1e0: 6e65 6564 6564 0a20 202d 2073 6572 7669  needed.  - servi
│ │ │ +0004f1f0: 6365 5f61 7574 6f66 735f 6469 7361 626c  ce_autofs_disabl
│ │ │ +0004f200: 6564 0a0a 2d20 6e61 6d65 3a20 4469 7361  ed..- name: Disa
│ │ │ +0004f210: 626c 6520 7468 6520 4175 746f 6d6f 756e  ble the Automoun
│ │ │ +0004f220: 7465 7220 2d20 4469 7361 626c 6520 7365  ter - Disable se
│ │ │ +0004f230: 7276 6963 6520 6175 746f 6673 0a20 2062  rvice autofs.  b
│ │ │ +0004f240: 6c6f 636b 3a0a 0a20 202d 206e 616d 653a  lock:..  - name:
│ │ │ +0004f250: 2044 6973 6162 6c65 2074 6865 2041 7574   Disable the Aut
│ │ │ +0004f260: 6f6d 6f75 6e74 6572 202d 2043 6f6c 6c65  omounter - Colle
│ │ │ +0004f270: 6374 2073 7973 7465 6d64 2053 6572 7669  ct systemd Servi
│ │ │ +0004f280: 6365 7320 5072 6573 656e 7420 696e 2074  ces Present in t
│ │ │ +0004f290: 6865 2053 7973 7465 6d0a 2020 2020 616e  he System.    an
│ │ │ +0004f2a0: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ +0004f2b0: 6d6d 616e 643a 2073 7973 7465 6d63 746c  mmand: systemctl
│ │ │ +0004f2c0: 202d 7120 6c69 7374 2d75 6e69 742d 6669   -q list-unit-fi
│ │ │ +0004f2d0: 6c65 7320 2d2d 7479 7065 2073 6572 7669  les --type servi
│ │ │ +0004f2e0: 6365 0a20 2020 2072 6567 6973 7465 723a  ce.    register:
│ │ │ +0004f2f0: 2073 6572 7669 6365 5f65 7869 7374 730a   service_exists.
│ │ │ +0004f300: 2020 2020 6368 616e 6765 645f 7768 656e      changed_when
│ │ │ +0004f310: 3a20 6661 6c73 650a 2020 2020 6661 696c  : false.    fail
│ │ │ +0004f320: 6564 5f77 6865 6e3a 2073 6572 7669 6365  ed_when: service
│ │ │ +0004f330: 5f65 7869 7374 732e 7263 206e 6f74 2069  _exists.rc not i
│ │ │ +0004f340: 6e20 5b30 2c20 315d 0a20 2020 2063 6865  n [0, 1].    che
│ │ │ +0004f350: 636b 5f6d 6f64 653a 2066 616c 7365 0a0a  ck_mode: false..
│ │ │ +0004f360: 2020 2d20 6e61 6d65 3a20 4469 7361 626c    - name: Disabl
│ │ │ +0004f370: 6520 7468 6520 4175 746f 6d6f 756e 7465  e the Automounte
│ │ │ +0004f380: 7220 2d20 456e 7375 7265 2061 7574 6f66  r - Ensure autof
│ │ │ +0004f390: 732e 7365 7276 6963 6520 6973 204d 6173  s.service is Mas
│ │ │ +0004f3a0: 6b65 640a 2020 2020 616e 7369 626c 652e  ked.    ansible.
│ │ │ +0004f3b0: 6275 696c 7469 6e2e 7379 7374 656d 643a  builtin.systemd:
│ │ │ +0004f3c0: 0a20 2020 2020 206e 616d 653a 2061 7574  .      name: aut
│ │ │ +0004f3d0: 6f66 732e 7365 7276 6963 650a 2020 2020  ofs.service.    
│ │ │ +0004f3e0: 2020 7374 6174 653a 2073 746f 7070 6564    state: stopped
│ │ │ +0004f3f0: 0a20 2020 2020 2065 6e61 626c 6564 3a20  .      enabled: 
│ │ │ +0004f400: 6661 6c73 650a 2020 2020 2020 6d61 736b  false.      mask
│ │ │ +0004f410: 6564 3a20 7472 7565 0a20 2020 2077 6865  ed: true.    whe
│ │ │ +0004f420: 6e3a 2073 6572 7669 6365 5f65 7869 7374  n: service_exist
│ │ │ +0004f430: 732e 7374 646f 7574 5f6c 696e 6573 2069  s.stdout_lines i
│ │ │ +0004f440: 7320 7365 6172 6368 2822 6175 746f 6673  s search("autofs
│ │ │ +0004f450: 2e73 6572 7669 6365 222c 206d 756c 7469  .service", multi
│ │ │ +0004f460: 6c69 6e65 3d54 7275 6529 0a0a 2020 2d20  line=True)..  - 
│ │ │ +0004f470: 6e61 6d65 3a20 556e 6974 2053 6f63 6b65  name: Unit Socke
│ │ │ +0004f480: 7420 4578 6973 7473 202d 2061 7574 6f66  t Exists - autof
│ │ │ +0004f490: 732e 736f 636b 6574 0a20 2020 2061 6e73  s.socket.    ans
│ │ │ +0004f4a0: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d  ible.builtin.com
│ │ │ +0004f4b0: 6d61 6e64 3a20 7379 7374 656d 6374 6c20  mand: systemctl 
│ │ │ +0004f4c0: 2d71 206c 6973 742d 756e 6974 2d66 696c  -q list-unit-fil
│ │ │ +0004f4d0: 6573 2061 7574 6f66 732e 736f 636b 6574  es autofs.socket
│ │ │ +0004f4e0: 0a20 2020 2072 6567 6973 7465 723a 2073  .    register: s
│ │ │ +0004f4f0: 6f63 6b65 745f 6669 6c65 5f65 7869 7374  ocket_file_exist
│ │ │ +0004f500: 730a 2020 2020 6368 616e 6765 645f 7768  s.    changed_wh
│ │ │ +0004f510: 656e 3a20 6661 6c73 650a 2020 2020 6661  en: false.    fa
│ │ │ +0004f520: 696c 6564 5f77 6865 6e3a 2073 6f63 6b65  iled_when: socke
│ │ │ +0004f530: 745f 6669 6c65 5f65 7869 7374 732e 7263  t_file_exists.rc
│ │ │ +0004f540: 206e 6f74 2069 6e20 5b30 2c20 315d 0a20   not in [0, 1]. 
│ │ │ +0004f550: 2020 2063 6865 636b 5f6d 6f64 653a 2066     check_mode: f
│ │ │ +0004f560: 616c 7365 0a0a 2020 2d20 6e61 6d65 3a20  alse..  - name: 
│ │ │ +0004f570: 4469 7361 626c 6520 7468 6520 4175 746f  Disable the Auto
│ │ │ +0004f580: 6d6f 756e 7465 7220 2d20 4469 7361 626c  mounter - Disabl
│ │ │ +0004f590: 6520 536f 636b 6574 2061 7574 6f66 730a  e Socket autofs.
│ │ │ +0004f5a0: 2020 2020 616e 7369 626c 652e 6275 696c      ansible.buil
│ │ │ +0004f5b0: 7469 6e2e 7379 7374 656d 643a 0a20 2020  tin.systemd:.   
│ │ │ +0004f5c0: 2020 206e 616d 653a 2061 7574 6f66 732e     name: autofs.
│ │ │ +0004f5d0: 736f 636b 6574 0a20 2020 2020 2065 6e61  socket.      ena
│ │ │ +0004f5e0: 626c 6564 3a20 6661 6c73 650a 2020 2020  bled: false.    
│ │ │ +0004f5f0: 2020 7374 6174 653a 2073 746f 7070 6564    state: stopped
│ │ │ +0004f600: 0a20 2020 2020 206d 6173 6b65 643a 2074  .      masked: t
│ │ │ +0004f610: 7275 650a 2020 2020 7768 656e 3a20 736f  rue.    when: so
│ │ │ +0004f620: 636b 6574 5f66 696c 655f 6578 6973 7473  cket_file_exists
│ │ │ +0004f630: 2e73 7464 6f75 745f 6c69 6e65 7320 6973  .stdout_lines is
│ │ │ +0004f640: 2073 6561 7263 6828 2261 7574 6f66 732e   search("autofs.
│ │ │ +0004f650: 736f 636b 6574 222c 206d 756c 7469 6c69  socket", multili
│ │ │ +0004f660: 6e65 3d54 7275 6529 0a20 2074 6167 733a  ne=True).  tags:
│ │ │ +0004f670: 0a20 202d 204e 4953 542d 3830 302d 3137  .  - NIST-800-17
│ │ │ +0004f680: 312d 332e 342e 360a 2020 2d20 4e49 5354  1-3.4.6.  - NIST
│ │ │ +0004f690: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +0004f6a0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +0004f6b0: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +0004f6c0: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +0004f6d0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +0004f6e0: 4d50 2d37 0a20 202d 2064 6973 6162 6c65  MP-7.  - disable
│ │ │ +0004f6f0: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ +0004f700: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +0004f710: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +0004f720: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +0004f730: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ +0004f740: 745f 6e65 6564 6564 0a20 202d 2073 6572  t_needed.  - ser
│ │ │ +0004f750: 7669 6365 5f61 7574 6f66 735f 6469 7361  vice_autofs_disa
│ │ │ +0004f760: 626c 6564 0a20 202d 2073 7065 6369 616c  bled.  - special
│ │ │ +0004f770: 5f73 6572 7669 6365 5f62 6c6f 636b 0a20  _service_block. 
│ │ │ +0004f780: 2077 6865 6e3a 2028 2022 6175 746f 6673   when: ( "autofs
│ │ │ +0004f790: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +0004f7a0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +0004f7b0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +0004f7c0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +0004f7d0: 6573 0a20 2020 2029 0a3c 2f63 6f64 653e  es.    ).
│ │ │ +0004f7e0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remediat │ │ │ +0004f890: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ +0004f8a0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
< │ │ │ +0004f920: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +0004f930: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +0004f950: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +0004f960: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +0004f980: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +0004f9a0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ +0004f9d0: 636f 6465 3e69 6e63 6c75 6465 2064 6973  code>include dis
│ │ │ +0004f9e0: 6162 6c65 5f61 7574 6f66 730a 0a63 6c61  able_autofs..cla
│ │ │ +0004f9f0: 7373 2064 6973 6162 6c65 5f61 7574 6f66  ss disable_autof
│ │ │ +0004fa00: 7320 7b0a 2020 7365 7276 6963 6520 7b27  s {.  service {'
│ │ │ +0004fa10: 6175 746f 6673 273a 0a20 2020 2065 6e61  autofs':.    ena
│ │ │ +0004fa20: 626c 6520 3d26 6774 3b20 6661 6c73 652c  ble => false,
│ │ │ +0004fa30: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ +0004fa40: 3b20 2773 746f 7070 6564 272c 0a20 207d  ; 'stopped',.  }
│ │ │ +0004fa50: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e  .}.
│ │ │ +0004fa60: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation OS │ │ │ +0004fb10: 4275 696c 6420 426c 7565 7072 696e 7420 Build Blueprint │ │ │ +0004fb20: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +0004fb30: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
.[c
│ │ │ +0004fb70: 7573 746f 6d69 7a61 7469 6f6e 732e 7365  ustomizations.se
│ │ │ +0004fb80: 7276 6963 6573 5d0a 6d61 736b 6564 203d  rvices].masked =
│ │ │ +0004fb90: 205b 2261 7574 6f66 7322 5d0a 3c2f 636f   ["autofs"].
< │ │ │ 0004fbb0: 2f64 6976 3e3c 2f74 643e 3c2f 7472 3e3c /div>< │ │ │ 0004fbc0: 2f74 626f 6479 3e3c 2f74 6162 6c65 3e3c /tbody>< │ │ │ 0004fbd0: 2f74 643e 3c2f 7472 3e3c 7472 2064 6174 /td>Remediation │ │ │ -00051510: 204f 5342 7569 6c64 2042 6c75 6570 7269 OSBuild Bluepri │ │ │ -00051520: 6e74 2073 6e69 7070 6574 20e2 87b2 3c2f nt snippet ...

│ │ │ -00051570: 0a5b 6375 7374 6f6d 697a 6174 696f 6e73  .[customizations
│ │ │ -00051580: 2e73 6572 7669 6365 735d 0a6d 6173 6b65  .services].maske
│ │ │ -00051590: 6420 3d20 5b22 6162 7274 6422 5d0a 3c2f  d = ["abrtd"].
Rem │ │ │ -00051650: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ -00051660: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -00051670: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Comp │ │ │ -000516f0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -00051700: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -00051720: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -00051740: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -00051750: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -00051790: 7072 653e 3c63 6f64 653e 696e 636c 7564 pre>includ │ │ │ -000517a0: 6520 6469 7361 626c 655f 6162 7274 640a e disable_abrtd. │ │ │ -000517b0: 0a63 6c61 7373 2064 6973 6162 6c65 5f61 .class disable_a │ │ │ -000517c0: 6272 7464 207b 0a20 2073 6572 7669 6365 brtd {. service │ │ │ -000517d0: 207b 2761 6272 7464 273a 0a20 2020 2065 {'abrtd':. e │ │ │ -000517e0: 6e61 626c 6520 3d26 6774 3b20 6661 6c73 nable => fals │ │ │ -000517f0: 652c 0a20 2020 2065 6e73 7572 6520 3d26 e,. ensure =& │ │ │ -00051800: 6774 3b20 2773 746f 7070 6564 272c 0a20 gt; 'stopped',. │ │ │ -00051810: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 }.}.
Remediation │ │ │ -000518d0: 416e 7369 626c 6520 736e 6970 7065 7420 Ansible snippet │ │ │ -000518e0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
│ │ │ -00051960: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -00051980: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -000519d0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -00051a00: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -00051970: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -00051990: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -000519e0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -000519f0: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
- name: Gathe
│ │ │ -00051a20: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ -00051a30: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ -00051a40: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ -00051a50: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ -00051a60: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -00051a70: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ -00051a80: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ -00051a90: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ -00051aa0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ -00051ab0: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -00051ac0: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -00051ad0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -00051ae0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -00051af0: 6564 0a20 202d 2073 6572 7669 6365 5f61  ed.  - service_a
│ │ │ -00051b00: 6272 7464 5f64 6973 6162 6c65 640a 0a2d  brtd_disabled..-
│ │ │ -00051b10: 206e 616d 653a 2044 6973 6162 6c65 2041   name: Disable A
│ │ │ -00051b20: 7574 6f6d 6174 6963 2042 7567 2052 6570  utomatic Bug Rep
│ │ │ -00051b30: 6f72 7469 6e67 2054 6f6f 6c20 2861 6272  orting Tool (abr
│ │ │ -00051b40: 7464 2920 2d20 4469 7361 626c 6520 7365  td) - Disable se
│ │ │ -00051b50: 7276 6963 6520 6162 7274 640a 2020 626c  rvice abrtd.  bl
│ │ │ -00051b60: 6f63 6b3a 0a0a 2020 2d20 6e61 6d65 3a20  ock:..  - name: 
│ │ │ -00051b70: 4469 7361 626c 6520 4175 746f 6d61 7469  Disable Automati
│ │ │ -00051b80: 6320 4275 6720 5265 706f 7274 696e 6720  c Bug Reporting 
│ │ │ -00051b90: 546f 6f6c 2028 6162 7274 6429 202d 2043  Tool (abrtd) - C
│ │ │ -00051ba0: 6f6c 6c65 6374 2073 7973 7465 6d64 2053  ollect systemd S
│ │ │ -00051bb0: 6572 7669 6365 730a 2020 2020 2020 5072  ervices.      Pr
│ │ │ -00051bc0: 6573 656e 7420 696e 2074 6865 2053 7973  esent in the Sys
│ │ │ -00051bd0: 7465 6d0a 2020 2020 616e 7369 626c 652e  tem.    ansible.
│ │ │ -00051be0: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ -00051bf0: 2073 7973 7465 6d63 746c 202d 7120 6c69   systemctl -q li
│ │ │ -00051c00: 7374 2d75 6e69 742d 6669 6c65 7320 2d2d  st-unit-files --
│ │ │ -00051c10: 7479 7065 2073 6572 7669 6365 0a20 2020  type service.   
│ │ │ -00051c20: 2072 6567 6973 7465 723a 2073 6572 7669   register: servi
│ │ │ -00051c30: 6365 5f65 7869 7374 730a 2020 2020 6368  ce_exists.    ch
│ │ │ -00051c40: 616e 6765 645f 7768 656e 3a20 6661 6c73  anged_when: fals
│ │ │ -00051c50: 650a 2020 2020 6661 696c 6564 5f77 6865  e.    failed_whe
│ │ │ -00051c60: 6e3a 2073 6572 7669 6365 5f65 7869 7374  n: service_exist
│ │ │ -00051c70: 732e 7263 206e 6f74 2069 6e20 5b30 2c20  s.rc not in [0, 
│ │ │ -00051c80: 315d 0a20 2020 2063 6865 636b 5f6d 6f64  1].    check_mod
│ │ │ -00051c90: 653a 2066 616c 7365 0a0a 2020 2d20 6e61  e: false..  - na
│ │ │ -00051ca0: 6d65 3a20 4469 7361 626c 6520 4175 746f  me: Disable Auto
│ │ │ -00051cb0: 6d61 7469 6320 4275 6720 5265 706f 7274  matic Bug Report
│ │ │ -00051cc0: 696e 6720 546f 6f6c 2028 6162 7274 6429  ing Tool (abrtd)
│ │ │ -00051cd0: 202d 2045 6e73 7572 6520 6162 7274 642e   - Ensure abrtd.
│ │ │ -00051ce0: 7365 7276 6963 6520 6973 204d 6173 6b65  service is Maske
│ │ │ -00051cf0: 640a 2020 2020 616e 7369 626c 652e 6275  d.    ansible.bu
│ │ │ -00051d00: 696c 7469 6e2e 7379 7374 656d 643a 0a20  iltin.systemd:. 
│ │ │ -00051d10: 2020 2020 206e 616d 653a 2061 6272 7464       name: abrtd
│ │ │ -00051d20: 2e73 6572 7669 6365 0a20 2020 2020 2073  .service.      s
│ │ │ -00051d30: 7461 7465 3a20 7374 6f70 7065 640a 2020  tate: stopped.  
│ │ │ -00051d40: 2020 2020 656e 6162 6c65 643a 2066 616c      enabled: fal
│ │ │ -00051d50: 7365 0a20 2020 2020 206d 6173 6b65 643a  se.      masked:
│ │ │ -00051d60: 2074 7275 650a 2020 2020 7768 656e 3a20   true.    when: 
│ │ │ -00051d70: 7365 7276 6963 655f 6578 6973 7473 2e73  service_exists.s
│ │ │ -00051d80: 7464 6f75 745f 6c69 6e65 7320 6973 2073  tdout_lines is s
│ │ │ -00051d90: 6561 7263 6828 2261 6272 7464 2e73 6572  earch("abrtd.ser
│ │ │ -00051da0: 7669 6365 222c 206d 756c 7469 6c69 6e65  vice", multiline
│ │ │ -00051db0: 3d54 7275 6529 0a0a 2020 2d20 6e61 6d65  =True)..  - name
│ │ │ -00051dc0: 3a20 556e 6974 2053 6f63 6b65 7420 4578  : Unit Socket Ex
│ │ │ -00051dd0: 6973 7473 202d 2061 6272 7464 2e73 6f63  ists - abrtd.soc
│ │ │ -00051de0: 6b65 740a 2020 2020 616e 7369 626c 652e  ket.    ansible.
│ │ │ -00051df0: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ -00051e00: 2073 7973 7465 6d63 746c 202d 7120 6c69   systemctl -q li
│ │ │ -00051e10: 7374 2d75 6e69 742d 6669 6c65 7320 6162  st-unit-files ab
│ │ │ -00051e20: 7274 642e 736f 636b 6574 0a20 2020 2072  rtd.socket.    r
│ │ │ -00051e30: 6567 6973 7465 723a 2073 6f63 6b65 745f  egister: socket_
│ │ │ -00051e40: 6669 6c65 5f65 7869 7374 730a 2020 2020  file_exists.    
│ │ │ -00051e50: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ -00051e60: 6c73 650a 2020 2020 6661 696c 6564 5f77  lse.    failed_w
│ │ │ -00051e70: 6865 6e3a 2073 6f63 6b65 745f 6669 6c65  hen: socket_file
│ │ │ -00051e80: 5f65 7869 7374 732e 7263 206e 6f74 2069  _exists.rc not i
│ │ │ -00051e90: 6e20 5b30 2c20 315d 0a20 2020 2063 6865  n [0, 1].    che
│ │ │ -00051ea0: 636b 5f6d 6f64 653a 2066 616c 7365 0a0a  ck_mode: false..
│ │ │ -00051eb0: 2020 2d20 6e61 6d65 3a20 4469 7361 626c    - name: Disabl
│ │ │ -00051ec0: 6520 4175 746f 6d61 7469 6320 4275 6720  e Automatic Bug 
│ │ │ -00051ed0: 5265 706f 7274 696e 6720 546f 6f6c 2028  Reporting Tool (
│ │ │ -00051ee0: 6162 7274 6429 202d 2044 6973 6162 6c65  abrtd) - Disable
│ │ │ -00051ef0: 2053 6f63 6b65 7420 6162 7274 640a 2020   Socket abrtd.  
│ │ │ -00051f00: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -00051f10: 6e2e 7379 7374 656d 643a 0a20 2020 2020  n.systemd:.     
│ │ │ -00051f20: 206e 616d 653a 2061 6272 7464 2e73 6f63   name: abrtd.soc
│ │ │ -00051f30: 6b65 740a 2020 2020 2020 656e 6162 6c65  ket.      enable
│ │ │ -00051f40: 643a 2066 616c 7365 0a20 2020 2020 2073  d: false.      s
│ │ │ -00051f50: 7461 7465 3a20 7374 6f70 7065 640a 2020  tate: stopped.  
│ │ │ -00051f60: 2020 2020 6d61 736b 6564 3a20 7472 7565      masked: true
│ │ │ -00051f70: 0a20 2020 2077 6865 6e3a 2073 6f63 6b65  .    when: socke
│ │ │ -00051f80: 745f 6669 6c65 5f65 7869 7374 732e 7374  t_file_exists.st
│ │ │ -00051f90: 646f 7574 5f6c 696e 6573 2069 7320 7365  dout_lines is se
│ │ │ -00051fa0: 6172 6368 2822 6162 7274 642e 736f 636b  arch("abrtd.sock
│ │ │ -00051fb0: 6574 222c 206d 756c 7469 6c69 6e65 3d54  et", multiline=T
│ │ │ -00051fc0: 7275 6529 0a20 2074 6167 733a 0a20 202d  rue).  tags:.  -
│ │ │ -00051fd0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -00051fe0: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ -00051ff0: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ -00052000: 2064 6973 6162 6c65 5f73 7472 6174 6567   disable_strateg
│ │ │ -00052010: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -00052020: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -00052030: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ -00052040: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -00052050: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -00052060: 0a20 202d 2073 6572 7669 6365 5f61 6272  .  - service_abr
│ │ │ -00052070: 7464 5f64 6973 6162 6c65 640a 2020 2d20  td_disabled.  - 
│ │ │ -00052080: 7370 6563 6961 6c5f 7365 7276 6963 655f  special_service_
│ │ │ -00052090: 626c 6f63 6b0a 2020 7768 656e 3a20 2722  block.  when: '"
│ │ │ -000520a0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -000520b0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -000520c0: 7327 0a3c 2f63 6f64 653e 3c2f 7072 653e  s'.
│ │ │ +00051510: 2041 6e73 6962 6c65 2073 6e69 7070 6574 Ansible snippet │ │ │ +00051520: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity: │ │ │ +000515b0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +000515d0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +000515f0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +00051620: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +00051630: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
- name: Gath
│ │ │ +00051660: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ +00051670: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ +00051680: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ +00051690: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ +000516a0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +000516b0: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ +000516c0: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ +000516d0: 2020 2d20 6469 7361 626c 655f 7374 7261    - disable_stra
│ │ │ +000516e0: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ +000516f0: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +00051700: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ +00051710: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +00051720: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +00051730: 6465 640a 2020 2d20 7365 7276 6963 655f  ded.  - service_
│ │ │ +00051740: 6162 7274 645f 6469 7361 626c 6564 0a0a  abrtd_disabled..
│ │ │ +00051750: 2d20 6e61 6d65 3a20 4469 7361 626c 6520  - name: Disable 
│ │ │ +00051760: 4175 746f 6d61 7469 6320 4275 6720 5265  Automatic Bug Re
│ │ │ +00051770: 706f 7274 696e 6720 546f 6f6c 2028 6162  porting Tool (ab
│ │ │ +00051780: 7274 6429 202d 2044 6973 6162 6c65 2073  rtd) - Disable s
│ │ │ +00051790: 6572 7669 6365 2061 6272 7464 0a20 2062  ervice abrtd.  b
│ │ │ +000517a0: 6c6f 636b 3a0a 0a20 202d 206e 616d 653a  lock:..  - name:
│ │ │ +000517b0: 2044 6973 6162 6c65 2041 7574 6f6d 6174   Disable Automat
│ │ │ +000517c0: 6963 2042 7567 2052 6570 6f72 7469 6e67  ic Bug Reporting
│ │ │ +000517d0: 2054 6f6f 6c20 2861 6272 7464 2920 2d20   Tool (abrtd) - 
│ │ │ +000517e0: 436f 6c6c 6563 7420 7379 7374 656d 6420  Collect systemd 
│ │ │ +000517f0: 5365 7276 6963 6573 0a20 2020 2020 2050  Services.      P
│ │ │ +00051800: 7265 7365 6e74 2069 6e20 7468 6520 5379  resent in the Sy
│ │ │ +00051810: 7374 656d 0a20 2020 2061 6e73 6962 6c65  stem.    ansible
│ │ │ +00051820: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ +00051830: 3a20 7379 7374 656d 6374 6c20 2d71 206c  : systemctl -q l
│ │ │ +00051840: 6973 742d 756e 6974 2d66 696c 6573 202d  ist-unit-files -
│ │ │ +00051850: 2d74 7970 6520 7365 7276 6963 650a 2020  -type service.  
│ │ │ +00051860: 2020 7265 6769 7374 6572 3a20 7365 7276    register: serv
│ │ │ +00051870: 6963 655f 6578 6973 7473 0a20 2020 2063  ice_exists.    c
│ │ │ +00051880: 6861 6e67 6564 5f77 6865 6e3a 2066 616c  hanged_when: fal
│ │ │ +00051890: 7365 0a20 2020 2066 6169 6c65 645f 7768  se.    failed_wh
│ │ │ +000518a0: 656e 3a20 7365 7276 6963 655f 6578 6973  en: service_exis
│ │ │ +000518b0: 7473 2e72 6320 6e6f 7420 696e 205b 302c  ts.rc not in [0,
│ │ │ +000518c0: 2031 5d0a 2020 2020 6368 6563 6b5f 6d6f   1].    check_mo
│ │ │ +000518d0: 6465 3a20 6661 6c73 650a 0a20 202d 206e  de: false..  - n
│ │ │ +000518e0: 616d 653a 2044 6973 6162 6c65 2041 7574  ame: Disable Aut
│ │ │ +000518f0: 6f6d 6174 6963 2042 7567 2052 6570 6f72  omatic Bug Repor
│ │ │ +00051900: 7469 6e67 2054 6f6f 6c20 2861 6272 7464  ting Tool (abrtd
│ │ │ +00051910: 2920 2d20 456e 7375 7265 2061 6272 7464  ) - Ensure abrtd
│ │ │ +00051920: 2e73 6572 7669 6365 2069 7320 4d61 736b  .service is Mask
│ │ │ +00051930: 6564 0a20 2020 2061 6e73 6962 6c65 2e62  ed.    ansible.b
│ │ │ +00051940: 7569 6c74 696e 2e73 7973 7465 6d64 3a0a  uiltin.systemd:.
│ │ │ +00051950: 2020 2020 2020 6e61 6d65 3a20 6162 7274        name: abrt
│ │ │ +00051960: 642e 7365 7276 6963 650a 2020 2020 2020  d.service.      
│ │ │ +00051970: 7374 6174 653a 2073 746f 7070 6564 0a20  state: stopped. 
│ │ │ +00051980: 2020 2020 2065 6e61 626c 6564 3a20 6661       enabled: fa
│ │ │ +00051990: 6c73 650a 2020 2020 2020 6d61 736b 6564  lse.      masked
│ │ │ +000519a0: 3a20 7472 7565 0a20 2020 2077 6865 6e3a  : true.    when:
│ │ │ +000519b0: 2073 6572 7669 6365 5f65 7869 7374 732e   service_exists.
│ │ │ +000519c0: 7374 646f 7574 5f6c 696e 6573 2069 7320  stdout_lines is 
│ │ │ +000519d0: 7365 6172 6368 2822 6162 7274 642e 7365  search("abrtd.se
│ │ │ +000519e0: 7276 6963 6522 2c20 6d75 6c74 696c 696e  rvice", multilin
│ │ │ +000519f0: 653d 5472 7565 290a 0a20 202d 206e 616d  e=True)..  - nam
│ │ │ +00051a00: 653a 2055 6e69 7420 536f 636b 6574 2045  e: Unit Socket E
│ │ │ +00051a10: 7869 7374 7320 2d20 6162 7274 642e 736f  xists - abrtd.so
│ │ │ +00051a20: 636b 6574 0a20 2020 2061 6e73 6962 6c65  cket.    ansible
│ │ │ +00051a30: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ +00051a40: 3a20 7379 7374 656d 6374 6c20 2d71 206c  : systemctl -q l
│ │ │ +00051a50: 6973 742d 756e 6974 2d66 696c 6573 2061  ist-unit-files a
│ │ │ +00051a60: 6272 7464 2e73 6f63 6b65 740a 2020 2020  brtd.socket.    
│ │ │ +00051a70: 7265 6769 7374 6572 3a20 736f 636b 6574  register: socket
│ │ │ +00051a80: 5f66 696c 655f 6578 6973 7473 0a20 2020  _file_exists.   
│ │ │ +00051a90: 2063 6861 6e67 6564 5f77 6865 6e3a 2066   changed_when: f
│ │ │ +00051aa0: 616c 7365 0a20 2020 2066 6169 6c65 645f  alse.    failed_
│ │ │ +00051ab0: 7768 656e 3a20 736f 636b 6574 5f66 696c  when: socket_fil
│ │ │ +00051ac0: 655f 6578 6973 7473 2e72 6320 6e6f 7420  e_exists.rc not 
│ │ │ +00051ad0: 696e 205b 302c 2031 5d0a 2020 2020 6368  in [0, 1].    ch
│ │ │ +00051ae0: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a  eck_mode: false.
│ │ │ +00051af0: 0a20 202d 206e 616d 653a 2044 6973 6162  .  - name: Disab
│ │ │ +00051b00: 6c65 2041 7574 6f6d 6174 6963 2042 7567  le Automatic Bug
│ │ │ +00051b10: 2052 6570 6f72 7469 6e67 2054 6f6f 6c20   Reporting Tool 
│ │ │ +00051b20: 2861 6272 7464 2920 2d20 4469 7361 626c  (abrtd) - Disabl
│ │ │ +00051b30: 6520 536f 636b 6574 2061 6272 7464 0a20  e Socket abrtd. 
│ │ │ +00051b40: 2020 2061 6e73 6962 6c65 2e62 7569 6c74     ansible.built
│ │ │ +00051b50: 696e 2e73 7973 7465 6d64 3a0a 2020 2020  in.systemd:.    
│ │ │ +00051b60: 2020 6e61 6d65 3a20 6162 7274 642e 736f    name: abrtd.so
│ │ │ +00051b70: 636b 6574 0a20 2020 2020 2065 6e61 626c  cket.      enabl
│ │ │ +00051b80: 6564 3a20 6661 6c73 650a 2020 2020 2020  ed: false.      
│ │ │ +00051b90: 7374 6174 653a 2073 746f 7070 6564 0a20  state: stopped. 
│ │ │ +00051ba0: 2020 2020 206d 6173 6b65 643a 2074 7275       masked: tru
│ │ │ +00051bb0: 650a 2020 2020 7768 656e 3a20 736f 636b  e.    when: sock
│ │ │ +00051bc0: 6574 5f66 696c 655f 6578 6973 7473 2e73  et_file_exists.s
│ │ │ +00051bd0: 7464 6f75 745f 6c69 6e65 7320 6973 2073  tdout_lines is s
│ │ │ +00051be0: 6561 7263 6828 2261 6272 7464 2e73 6f63  earch("abrtd.soc
│ │ │ +00051bf0: 6b65 7422 2c20 6d75 6c74 696c 696e 653d  ket", multiline=
│ │ │ +00051c00: 5472 7565 290a 2020 7461 6773 3a0a 2020  True).  tags:.  
│ │ │ +00051c10: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +00051c20: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ +00051c30: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ +00051c40: 2d20 6469 7361 626c 655f 7374 7261 7465  - disable_strate
│ │ │ +00051c50: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ +00051c60: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ +00051c70: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ +00051c80: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +00051c90: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +00051ca0: 640a 2020 2d20 7365 7276 6963 655f 6162  d.  - service_ab
│ │ │ +00051cb0: 7274 645f 6469 7361 626c 6564 0a20 202d  rtd_disabled.  -
│ │ │ +00051cc0: 2073 7065 6369 616c 5f73 6572 7669 6365   special_service
│ │ │ +00051cd0: 5f62 6c6f 636b 0a20 2077 6865 6e3a 2027  _block.  when: '
│ │ │ +00051ce0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +00051cf0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +00051d00: 6573 270a 3c2f 636f 6465 3e3c 2f70 7265  es'.
Remediation P │ │ │ +00051dc0: 7570 7065 7420 736e 6970 7065 7420 e287 uppet snippet .. │ │ │ +00051dd0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
Complexity: │ │ │ +00051ea0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00051eb0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +00051f00: 696e 636c 7564 6520 6469 7361 626c 655f  include disable_
│ │ │ +00051f10: 6162 7274 640a 0a63 6c61 7373 2064 6973  abrtd..class dis
│ │ │ +00051f20: 6162 6c65 5f61 6272 7464 207b 0a20 2073  able_abrtd {.  s
│ │ │ +00051f30: 6572 7669 6365 207b 2761 6272 7464 273a  ervice {'abrtd':
│ │ │ +00051f40: 0a20 2020 2065 6e61 626c 6520 3d26 6774  .    enable =>
│ │ │ +00051f50: 3b20 6661 6c73 652c 0a20 2020 2065 6e73  ; false,.    ens
│ │ │ +00051f60: 7572 6520 3d26 6774 3b20 2773 746f 7070  ure => 'stopp
│ │ │ +00051f70: 6564 272c 0a20 207d 0a7d 0a3c 2f63 6f64  ed',.  }.}.
Remedi │ │ │ +00052030: 6174 696f 6e20 4f53 4275 696c 6420 426c ation OSBuild Bl │ │ │ +00052040: 7565 7072 696e 7420 736e 6970 7065 7420 ueprint snippet │ │ │ +00052050: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
<
│ │ │ +00052090: 636f 6465 3e0a 5b63 7573 746f 6d69 7a61  code>.[customiza
│ │ │ +000520a0: 7469 6f6e 732e 7365 7276 6963 6573 5d0a  tions.services].
│ │ │ +000520b0: 6d61 736b 6564 203d 205b 2261 6272 7464  masked = ["abrtd
│ │ │ +000520c0: 225d 0a3c 2f63 6f64 653e 3c2f 7072 653e  "].
│ │ │ 000520d0: 3c2f 6469 763e 3c2f 6469 763e 3c2f 7464
│ │ │ 00052100: 3c74 7220 6461 7461 2d74 742d 6964 3d22 Remediation OS │ │ │ -00053060: 4275 696c 6420 426c 7565 7072 696e 7420 Build Blueprint │ │ │ -00053070: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -00053080: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
.[c
│ │ │ -000530c0: 7573 746f 6d69 7a61 7469 6f6e 732e 7365  ustomizations.se
│ │ │ -000530d0: 7276 6963 6573 5d0a 6d61 736b 6564 203d  rvices].masked =
│ │ │ -000530e0: 205b 226e 7470 6461 7465 225d 0a3c 2f63   ["ntpdate"].
│ │ │ -00053100: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Reme │ │ │ -000531a0: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ -000531b0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
low
Disru │ │ │ +00051e80: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00051e90: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00051ed0: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +00051ee0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
│ │ │ -00053260: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -00053280: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -000532b0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -00053240: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -00053250: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00053270: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -00053290: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -000532a0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

include │ │ │ -000532f0: 2064 6973 6162 6c65 5f6e 7470 6461 7465 disable_ntpdate │ │ │ -00053300: 0a0a 636c 6173 7320 6469 7361 626c 655f ..class disable_ │ │ │ -00053310: 6e74 7064 6174 6520 7b0a 2020 7365 7276 ntpdate {. serv │ │ │ -00053320: 6963 6520 7b27 6e74 7064 6174 6527 3a0a ice {'ntpdate':. │ │ │ -00053330: 2020 2020 656e 6162 6c65 203d 2667 743b enable => │ │ │ -00053340: 2066 616c 7365 2c0a 2020 2020 656e 7375 false,. ensu │ │ │ -00053350: 7265 203d 2667 743b 2027 7374 6f70 7065 re => 'stoppe │ │ │ -00053360: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 d',. }.}.

Remedia │ │ │ -00053420: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -00053430: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -00053440: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
< │ │ │ -00053470: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -00053480: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -00053490: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -000534a0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -000534b0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -000534c0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -000534d0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -00053510: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -00053520: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -00053540: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ -00053550: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 - name: │ │ │ -00053570: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ -00053580: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ -00053590: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ -000535a0: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ -000535b0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ -000535c0: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ -000535d0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37 NIST-800-53-CM-7 │ │ │ -000535e0: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ -000535f0: 2d35 332d 434d 2d37 2862 290a 2020 2d20 -53-CM-7(b). - │ │ │ -00053600: 6469 7361 626c 655f 7374 7261 7465 6779 disable_strategy │ │ │ -00053610: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ -00053620: 6974 790a 2020 2d20 6c6f 775f 6469 7372 ity. - low_disr │ │ │ -00053630: 7570 7469 6f6e 0a20 202d 206c 6f77 5f73 uption. - low_s │ │ │ -00053640: 6576 6572 6974 790a 2020 2d20 6e6f 5f72 everity. - no_r │ │ │ -00053650: 6562 6f6f 745f 6e65 6564 6564 0a20 202d eboot_needed. - │ │ │ -00053660: 2073 6572 7669 6365 5f6e 7470 6461 7465 service_ntpdate │ │ │ -00053670: 5f64 6973 6162 6c65 640a 0a2d 206e 616d _disabled..- nam │ │ │ -00053680: 653a 2044 6973 6162 6c65 206e 7470 6461 e: Disable ntpda │ │ │ -00053690: 7465 2053 6572 7669 6365 2028 6e74 7064 te Service (ntpd │ │ │ -000536a0: 6174 6529 202d 2044 6973 6162 6c65 2073 ate) - Disable s │ │ │ -000536b0: 6572 7669 6365 206e 7470 6461 7465 0a20 ervice ntpdate. │ │ │ -000536c0: 2062 6c6f 636b 3a0a 0a20 202d 206e 616d block:.. - nam │ │ │ -000536d0: 653a 2044 6973 6162 6c65 206e 7470 6461 e: Disable ntpda │ │ │ -000536e0: 7465 2053 6572 7669 6365 2028 6e74 7064 te Service (ntpd │ │ │ -000536f0: 6174 6529 202d 2043 6f6c 6c65 6374 2073 ate) - Collect s │ │ │ -00053700: 7973 7465 6d64 2053 6572 7669 6365 7320 ystemd Services │ │ │ -00053710: 5072 6573 656e 7420 696e 0a20 2020 2020 Present in. │ │ │ -00053720: 2074 6865 2053 7973 7465 6d0a 2020 2020 the System. │ │ │ -00053730: 616e 7369 626c 652e 6275 696c 7469 6e2e ansible.builtin. │ │ │ -00053740: 636f 6d6d 616e 643a 2073 7973 7465 6d63 command: systemc │ │ │ -00053750: 746c 202d 7120 6c69 7374 2d75 6e69 742d tl -q list-unit- │ │ │ -00053760: 6669 6c65 7320 2d2d 7479 7065 2073 6572 files --type ser │ │ │ -00053770: 7669 6365 0a20 2020 2072 6567 6973 7465 vice. registe │ │ │ -00053780: 723a 2073 6572 7669 6365 5f65 7869 7374 r: service_exist │ │ │ -00053790: 730a 2020 2020 6368 616e 6765 645f 7768 s. changed_wh │ │ │ -000537a0: 656e 3a20 6661 6c73 650a 2020 2020 6661 en: false. fa │ │ │ -000537b0: 696c 6564 5f77 6865 6e3a 2073 6572 7669 iled_when: servi │ │ │ -000537c0: 6365 5f65 7869 7374 732e 7263 206e 6f74 ce_exists.rc not │ │ │ -000537d0: 2069 6e20 5b30 2c20 315d 0a20 2020 2063 in [0, 1]. c │ │ │ -000537e0: 6865 636b 5f6d 6f64 653a 2066 616c 7365 heck_mode: false │ │ │ -000537f0: 0a0a 2020 2d20 6e61 6d65 3a20 4469 7361 .. - name: Disa │ │ │ -00053800: 626c 6520 6e74 7064 6174 6520 5365 7276 ble ntpdate Serv │ │ │ -00053810: 6963 6520 286e 7470 6461 7465 2920 2d20 ice (ntpdate) - │ │ │ -00053820: 456e 7375 7265 206e 7470 6461 7465 2e73 Ensure ntpdate.s │ │ │ -00053830: 6572 7669 6365 2069 7320 4d61 736b 6564 ervice is Masked │ │ │ -00053840: 0a20 2020 2061 6e73 6962 6c65 2e62 7569 . ansible.bui │ │ │ -00053850: 6c74 696e 2e73 7973 7465 6d64 3a0a 2020 ltin.systemd:. │ │ │ -00053860: 2020 2020 6e61 6d65 3a20 6e74 7064 6174 name: ntpdat │ │ │ -00053870: 652e 7365 7276 6963 650a 2020 2020 2020 e.service. │ │ │ -00053880: 7374 6174 653a 2073 746f 7070 6564 0a20 state: stopped. │ │ │ -00053890: 2020 2020 2065 6e61 626c 6564 3a20 6661 enabled: fa │ │ │ -000538a0: 6c73 650a 2020 2020 2020 6d61 736b 6564 lse. masked │ │ │ -000538b0: 3a20 7472 7565 0a20 2020 2077 6865 6e3a : true. when: │ │ │ -000538c0: 2073 6572 7669 6365 5f65 7869 7374 732e service_exists. │ │ │ -000538d0: 7374 646f 7574 5f6c 696e 6573 2069 7320 stdout_lines is │ │ │ -000538e0: 7365 6172 6368 2822 6e74 7064 6174 652e search("ntpdate. │ │ │ -000538f0: 7365 7276 6963 6522 2c20 6d75 6c74 696c service", multil │ │ │ -00053900: 696e 653d 5472 7565 290a 0a20 202d 206e ine=True).. - n │ │ │ -00053910: 616d 653a 2055 6e69 7420 536f 636b 6574 ame: Unit Socket │ │ │ -00053920: 2045 7869 7374 7320 2d20 6e74 7064 6174 Exists - ntpdat │ │ │ -00053930: 652e 736f 636b 6574 0a20 2020 2061 6e73 e.socket. ans │ │ │ -00053940: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d ible.builtin.com │ │ │ -00053950: 6d61 6e64 3a20 7379 7374 656d 6374 6c20 mand: systemctl │ │ │ -00053960: 2d71 206c 6973 742d 756e 6974 2d66 696c -q list-unit-fil │ │ │ -00053970: 6573 206e 7470 6461 7465 2e73 6f63 6b65 es ntpdate.socke │ │ │ -00053980: 740a 2020 2020 7265 6769 7374 6572 3a20 t. register: │ │ │ -00053990: 736f 636b 6574 5f66 696c 655f 6578 6973 socket_file_exis │ │ │ -000539a0: 7473 0a20 2020 2063 6861 6e67 6564 5f77 ts. changed_w │ │ │ -000539b0: 6865 6e3a 2066 616c 7365 0a20 2020 2066 hen: false. f │ │ │ -000539c0: 6169 6c65 645f 7768 656e 3a20 736f 636b ailed_when: sock │ │ │ -000539d0: 6574 5f66 696c 655f 6578 6973 7473 2e72 et_file_exists.r │ │ │ -000539e0: 6320 6e6f 7420 696e 205b 302c 2031 5d0a c not in [0, 1]. │ │ │ -000539f0: 2020 2020 6368 6563 6b5f 6d6f 6465 3a20 check_mode: │ │ │ -00053a00: 6661 6c73 650a 0a20 202d 206e 616d 653a false.. - name: │ │ │ -00053a10: 2044 6973 6162 6c65 206e 7470 6461 7465 Disable ntpdate │ │ │ -00053a20: 2053 6572 7669 6365 2028 6e74 7064 6174 Service (ntpdat │ │ │ -00053a30: 6529 202d 2044 6973 6162 6c65 2053 6f63 e) - Disable Soc │ │ │ -00053a40: 6b65 7420 6e74 7064 6174 650a 2020 2020 ket ntpdate. │ │ │ -00053a50: 616e 7369 626c 652e 6275 696c 7469 6e2e ansible.builtin. │ │ │ -00053a60: 7379 7374 656d 643a 0a20 2020 2020 206e systemd:. n │ │ │ -00053a70: 616d 653a 206e 7470 6461 7465 2e73 6f63 ame: ntpdate.soc │ │ │ -00053a80: 6b65 740a 2020 2020 2020 656e 6162 6c65 ket. enable │ │ │ -00053a90: 643a 2066 616c 7365 0a20 2020 2020 2073 d: false. s │ │ │ -00053aa0: 7461 7465 3a20 7374 6f70 7065 640a 2020 tate: stopped. │ │ │ -00053ab0: 2020 2020 6d61 736b 6564 3a20 7472 7565 masked: true │ │ │ -00053ac0: 0a20 2020 2077 6865 6e3a 2073 6f63 6b65 . when: socke │ │ │ -00053ad0: 745f 6669 6c65 5f65 7869 7374 732e 7374 t_file_exists.st │ │ │ -00053ae0: 646f 7574 5f6c 696e 6573 2069 7320 7365 dout_lines is se │ │ │ -00053af0: 6172 6368 2822 6e74 7064 6174 652e 736f arch("ntpdate.so │ │ │ -00053b00: 636b 6574 222c 206d 756c 7469 6c69 6e65 cket", multiline │ │ │ -00053b10: 3d54 7275 6529 0a20 2074 6167 733a 0a20 =True). tags:. │ │ │ -00053b20: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ -00053b30: 4d2d 3628 6129 0a20 202d 204e 4953 542d M-6(a). - NIST- │ │ │ -00053b40: 3830 302d 3533 2d43 4d2d 3728 6129 0a20 800-53-CM-7(a). │ │ │ -00053b50: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ -00053b60: 4d2d 3728 6229 0a20 202d 2064 6973 6162 M-7(b). - disab │ │ │ -00053b70: 6c65 5f73 7472 6174 6567 790a 2020 2d20 le_strategy. - │ │ │ -00053b80: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20 low_complexity. │ │ │ -00053b90: 202d 206c 6f77 5f64 6973 7275 7074 696f - low_disruptio │ │ │ -00053ba0: 6e0a 2020 2d20 6c6f 775f 7365 7665 7269 n. - low_severi │ │ │ -00053bb0: 7479 0a20 202d 206e 6f5f 7265 626f 6f74 ty. - no_reboot │ │ │ -00053bc0: 5f6e 6565 6465 640a 2020 2d20 7365 7276 _needed. - serv │ │ │ -00053bd0: 6963 655f 6e74 7064 6174 655f 6469 7361 ice_ntpdate_disa │ │ │ -00053be0: 626c 6564 0a20 202d 2073 7065 6369 616c bled. - special │ │ │ -00053bf0: 5f73 6572 7669 6365 5f62 6c6f 636b 0a20 _service_block. │ │ │ -00053c00: 2077 6865 6e3a 2027 226b 6572 6e65 6c22 when: '"kernel" │ │ │ -00053c10: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -00053c20: 732e 7061 636b 6167 6573 270a 3c2f 636f s.packages'.Remediation An │ │ │ +00053060: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ +00053070: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
Complexity: │ │ │ +00053140: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00053150: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
- name: Gather 
│ │ │ +000531b0: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ +000531c0: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ +000531d0: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ +000531e0: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ +000531f0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +00053200: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ +00053210: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ +00053220: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +00053230: 3728 6229 0a20 202d 2064 6973 6162 6c65  7(b).  - disable
│ │ │ +00053240: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ +00053250: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +00053260: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +00053270: 2020 2d20 6c6f 775f 7365 7665 7269 7479    - low_severity
│ │ │ +00053280: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +00053290: 6565 6465 640a 2020 2d20 7365 7276 6963  eeded.  - servic
│ │ │ +000532a0: 655f 6e74 7064 6174 655f 6469 7361 626c  e_ntpdate_disabl
│ │ │ +000532b0: 6564 0a0a 2d20 6e61 6d65 3a20 4469 7361  ed..- name: Disa
│ │ │ +000532c0: 626c 6520 6e74 7064 6174 6520 5365 7276  ble ntpdate Serv
│ │ │ +000532d0: 6963 6520 286e 7470 6461 7465 2920 2d20  ice (ntpdate) - 
│ │ │ +000532e0: 4469 7361 626c 6520 7365 7276 6963 6520  Disable service 
│ │ │ +000532f0: 6e74 7064 6174 650a 2020 626c 6f63 6b3a  ntpdate.  block:
│ │ │ +00053300: 0a0a 2020 2d20 6e61 6d65 3a20 4469 7361  ..  - name: Disa
│ │ │ +00053310: 626c 6520 6e74 7064 6174 6520 5365 7276  ble ntpdate Serv
│ │ │ +00053320: 6963 6520 286e 7470 6461 7465 2920 2d20  ice (ntpdate) - 
│ │ │ +00053330: 436f 6c6c 6563 7420 7379 7374 656d 6420  Collect systemd 
│ │ │ +00053340: 5365 7276 6963 6573 2050 7265 7365 6e74  Services Present
│ │ │ +00053350: 2069 6e0a 2020 2020 2020 7468 6520 5379   in.      the Sy
│ │ │ +00053360: 7374 656d 0a20 2020 2061 6e73 6962 6c65  stem.    ansible
│ │ │ +00053370: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ +00053380: 3a20 7379 7374 656d 6374 6c20 2d71 206c  : systemctl -q l
│ │ │ +00053390: 6973 742d 756e 6974 2d66 696c 6573 202d  ist-unit-files -
│ │ │ +000533a0: 2d74 7970 6520 7365 7276 6963 650a 2020  -type service.  
│ │ │ +000533b0: 2020 7265 6769 7374 6572 3a20 7365 7276    register: serv
│ │ │ +000533c0: 6963 655f 6578 6973 7473 0a20 2020 2063  ice_exists.    c
│ │ │ +000533d0: 6861 6e67 6564 5f77 6865 6e3a 2066 616c  hanged_when: fal
│ │ │ +000533e0: 7365 0a20 2020 2066 6169 6c65 645f 7768  se.    failed_wh
│ │ │ +000533f0: 656e 3a20 7365 7276 6963 655f 6578 6973  en: service_exis
│ │ │ +00053400: 7473 2e72 6320 6e6f 7420 696e 205b 302c  ts.rc not in [0,
│ │ │ +00053410: 2031 5d0a 2020 2020 6368 6563 6b5f 6d6f   1].    check_mo
│ │ │ +00053420: 6465 3a20 6661 6c73 650a 0a20 202d 206e  de: false..  - n
│ │ │ +00053430: 616d 653a 2044 6973 6162 6c65 206e 7470  ame: Disable ntp
│ │ │ +00053440: 6461 7465 2053 6572 7669 6365 2028 6e74  date Service (nt
│ │ │ +00053450: 7064 6174 6529 202d 2045 6e73 7572 6520  pdate) - Ensure 
│ │ │ +00053460: 6e74 7064 6174 652e 7365 7276 6963 6520  ntpdate.service 
│ │ │ +00053470: 6973 204d 6173 6b65 640a 2020 2020 616e  is Masked.    an
│ │ │ +00053480: 7369 626c 652e 6275 696c 7469 6e2e 7379  sible.builtin.sy
│ │ │ +00053490: 7374 656d 643a 0a20 2020 2020 206e 616d  stemd:.      nam
│ │ │ +000534a0: 653a 206e 7470 6461 7465 2e73 6572 7669  e: ntpdate.servi
│ │ │ +000534b0: 6365 0a20 2020 2020 2073 7461 7465 3a20  ce.      state: 
│ │ │ +000534c0: 7374 6f70 7065 640a 2020 2020 2020 656e  stopped.      en
│ │ │ +000534d0: 6162 6c65 643a 2066 616c 7365 0a20 2020  abled: false.   
│ │ │ +000534e0: 2020 206d 6173 6b65 643a 2074 7275 650a     masked: true.
│ │ │ +000534f0: 2020 2020 7768 656e 3a20 7365 7276 6963      when: servic
│ │ │ +00053500: 655f 6578 6973 7473 2e73 7464 6f75 745f  e_exists.stdout_
│ │ │ +00053510: 6c69 6e65 7320 6973 2073 6561 7263 6828  lines is search(
│ │ │ +00053520: 226e 7470 6461 7465 2e73 6572 7669 6365  "ntpdate.service
│ │ │ +00053530: 222c 206d 756c 7469 6c69 6e65 3d54 7275  ", multiline=Tru
│ │ │ +00053540: 6529 0a0a 2020 2d20 6e61 6d65 3a20 556e  e)..  - name: Un
│ │ │ +00053550: 6974 2053 6f63 6b65 7420 4578 6973 7473  it Socket Exists
│ │ │ +00053560: 202d 206e 7470 6461 7465 2e73 6f63 6b65   - ntpdate.socke
│ │ │ +00053570: 740a 2020 2020 616e 7369 626c 652e 6275  t.    ansible.bu
│ │ │ +00053580: 696c 7469 6e2e 636f 6d6d 616e 643a 2073  iltin.command: s
│ │ │ +00053590: 7973 7465 6d63 746c 202d 7120 6c69 7374  ystemctl -q list
│ │ │ +000535a0: 2d75 6e69 742d 6669 6c65 7320 6e74 7064  -unit-files ntpd
│ │ │ +000535b0: 6174 652e 736f 636b 6574 0a20 2020 2072  ate.socket.    r
│ │ │ +000535c0: 6567 6973 7465 723a 2073 6f63 6b65 745f  egister: socket_
│ │ │ +000535d0: 6669 6c65 5f65 7869 7374 730a 2020 2020  file_exists.    
│ │ │ +000535e0: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ +000535f0: 6c73 650a 2020 2020 6661 696c 6564 5f77  lse.    failed_w
│ │ │ +00053600: 6865 6e3a 2073 6f63 6b65 745f 6669 6c65  hen: socket_file
│ │ │ +00053610: 5f65 7869 7374 732e 7263 206e 6f74 2069  _exists.rc not i
│ │ │ +00053620: 6e20 5b30 2c20 315d 0a20 2020 2063 6865  n [0, 1].    che
│ │ │ +00053630: 636b 5f6d 6f64 653a 2066 616c 7365 0a0a  ck_mode: false..
│ │ │ +00053640: 2020 2d20 6e61 6d65 3a20 4469 7361 626c    - name: Disabl
│ │ │ +00053650: 6520 6e74 7064 6174 6520 5365 7276 6963  e ntpdate Servic
│ │ │ +00053660: 6520 286e 7470 6461 7465 2920 2d20 4469  e (ntpdate) - Di
│ │ │ +00053670: 7361 626c 6520 536f 636b 6574 206e 7470  sable Socket ntp
│ │ │ +00053680: 6461 7465 0a20 2020 2061 6e73 6962 6c65  date.    ansible
│ │ │ +00053690: 2e62 7569 6c74 696e 2e73 7973 7465 6d64  .builtin.systemd
│ │ │ +000536a0: 3a0a 2020 2020 2020 6e61 6d65 3a20 6e74  :.      name: nt
│ │ │ +000536b0: 7064 6174 652e 736f 636b 6574 0a20 2020  pdate.socket.   
│ │ │ +000536c0: 2020 2065 6e61 626c 6564 3a20 6661 6c73     enabled: fals
│ │ │ +000536d0: 650a 2020 2020 2020 7374 6174 653a 2073  e.      state: s
│ │ │ +000536e0: 746f 7070 6564 0a20 2020 2020 206d 6173  topped.      mas
│ │ │ +000536f0: 6b65 643a 2074 7275 650a 2020 2020 7768  ked: true.    wh
│ │ │ +00053700: 656e 3a20 736f 636b 6574 5f66 696c 655f  en: socket_file_
│ │ │ +00053710: 6578 6973 7473 2e73 7464 6f75 745f 6c69  exists.stdout_li
│ │ │ +00053720: 6e65 7320 6973 2073 6561 7263 6828 226e  nes is search("n
│ │ │ +00053730: 7470 6461 7465 2e73 6f63 6b65 7422 2c20  tpdate.socket", 
│ │ │ +00053740: 6d75 6c74 696c 696e 653d 5472 7565 290a  multiline=True).
│ │ │ +00053750: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +00053760: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +00053770: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +00053780: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +00053790: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +000537a0: 2020 2d20 6469 7361 626c 655f 7374 7261    - disable_stra
│ │ │ +000537b0: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ +000537c0: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +000537d0: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +000537e0: 6f77 5f73 6576 6572 6974 790a 2020 2d20  ow_severity.  - 
│ │ │ +000537f0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +00053800: 0a20 202d 2073 6572 7669 6365 5f6e 7470  .  - service_ntp
│ │ │ +00053810: 6461 7465 5f64 6973 6162 6c65 640a 2020  date_disabled.  
│ │ │ +00053820: 2d20 7370 6563 6961 6c5f 7365 7276 6963  - special_servic
│ │ │ +00053830: 655f 626c 6f63 6b0a 2020 7768 656e 3a20  e_block.  when: 
│ │ │ +00053840: 2722 6b65 726e 656c 2220 696e 2061 6e73  '"kernel" in ans
│ │ │ +00053850: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +00053860: 6765 7327 0a3c 2f63 6f64 653e 3c2f 7072  ges'.Remediation 
│ │ │ +00053920: 5075 7070 6574 2073 6e69 7070 6574 20e2  Puppet snippet .
│ │ │ +00053930: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063  ..
low
Disru │ │ │ +00053120: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00053130: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00053170: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +00053180: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ +000539b0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +000539d0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +00053a20: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
include disable
│ │ │ +00053a70: 5f6e 7470 6461 7465 0a0a 636c 6173 7320  _ntpdate..class 
│ │ │ +00053a80: 6469 7361 626c 655f 6e74 7064 6174 6520  disable_ntpdate 
│ │ │ +00053a90: 7b0a 2020 7365 7276 6963 6520 7b27 6e74  {.  service {'nt
│ │ │ +00053aa0: 7064 6174 6527 3a0a 2020 2020 656e 6162  pdate':.    enab
│ │ │ +00053ab0: 6c65 203d 2667 743b 2066 616c 7365 2c0a  le => false,.
│ │ │ +00053ac0: 2020 2020 656e 7375 7265 203d 2667 743b      ensure =>
│ │ │ +00053ad0: 2027 7374 6f70 7065 6427 2c0a 2020 7d0a   'stopped',.  }.
│ │ │ +00053ae0: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ +00053af0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation OSB │ │ │ +00053ba0: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ +00053bb0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
.[cu
│ │ │ +00053c00: 7374 6f6d 697a 6174 696f 6e73 2e73 6572  stomizations.ser
│ │ │ +00053c10: 7669 6365 735d 0a6d 6173 6b65 6420 3d20  vices].masked = 
│ │ │ +00053c20: 5b22 6e74 7064 6174 6522 5d0a 3c2f 636f  ["ntpdate"].
< │ │ │ 00053c40: 2f64 6976 3e3c 2f74 643e 3c2f 7472 3e3c /div>< │ │ │ 00053c50: 2f74 626f 6479 3e3c 2f74 6162 6c65 3e3c /tbody>
low
Disr │ │ │ +000539e0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +000539f0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +00053a30: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +00053a40: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ 00053c60: 2f74 643e 3c2f 7472 3e3c 7472 2064 6174 /td>R │ │ │ -00054ad0: 656d 6564 6961 7469 6f6e 204f 5342 7569 emediation OSBui │ │ │ -00054ae0: 6c64 2042 6c75 6570 7269 6e74 2073 6e69 ld Blueprint sni │ │ │ -00054af0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -00054b00: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
< │ │ │ -00054b30: 7072 653e 3c63 6f64 653e 0a5b 6375 7374 pre>.[cust │ │ │ -00054b40: 6f6d 697a 6174 696f 6e73 2e73 6572 7669 omizations.servi │ │ │ -00054b50: 6365 735d 0a6d 6173 6b65 6420 3d20 5b22 ces].masked = [" │ │ │ -00054b60: 6f64 646a 6f62 6422 5d0a 3c2f 636f 6465 oddjobd"].
Remedia │ │ │ -00054c20: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ -00054c30: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00054c40: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00054c50: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00054c60: 7365 2220 6964 3d22 6964 3434 223e 3c74 se" id="id44"> │ │ │ -00054cb0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -00054cc0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -00054cd0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -00054d10: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -00054d20: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -00054d40: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ -00054d60: 3c63 6f64 653e 696e 636c 7564 6520 6469  include di
│ │ │ -00054d70: 7361 626c 655f 6f64 646a 6f62 640a 0a63  sable_oddjobd..c
│ │ │ -00054d80: 6c61 7373 2064 6973 6162 6c65 5f6f 6464  lass disable_odd
│ │ │ -00054d90: 6a6f 6264 207b 0a20 2073 6572 7669 6365  jobd {.  service
│ │ │ -00054da0: 207b 276f 6464 6a6f 6264 273a 0a20 2020   {'oddjobd':.   
│ │ │ -00054db0: 2065 6e61 626c 6520 3d26 6774 3b20 6661   enable => fa
│ │ │ -00054dc0: 6c73 652c 0a20 2020 2065 6e73 7572 6520  lse,.    ensure 
│ │ │ -00054dd0: 3d26 6774 3b20 2773 746f 7070 6564 272c  => 'stopped',
│ │ │ -00054de0: 0a20 207d 0a7d 0a3c 2f63 6f64 653e 3c2f  .  }.}.
Remediatio │ │ │ -00054ea0: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ -00054eb0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
Complexity │ │ │ -00054f40: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -00054f60: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -00054f70: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00054f80: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -00054f90: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -00054fb0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -00054fe0: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ -00054ff0: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ -00055000: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ -00055010: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ -00055020: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ -00055030: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -00055040: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ -00055050: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ -00055060: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -00055070: 2d43 4d2d 3728 6229 0a20 202d 2064 6973  -CM-7(b).  - dis
│ │ │ -00055080: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ -00055090: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -000550a0: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -000550b0: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ -000550c0: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ -000550d0: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ -000550e0: 2073 6572 7669 6365 5f6f 6464 6a6f 6264   service_oddjobd
│ │ │ -000550f0: 5f64 6973 6162 6c65 640a 0a2d 206e 616d  _disabled..- nam
│ │ │ -00055100: 653a 2044 6973 6162 6c65 204f 6464 204a  e: Disable Odd J
│ │ │ -00055110: 6f62 2044 6165 6d6f 6e20 286f 6464 6a6f  ob Daemon (oddjo
│ │ │ -00055120: 6264 2920 2d20 4469 7361 626c 6520 7365  bd) - Disable se
│ │ │ -00055130: 7276 6963 6520 6f64 646a 6f62 640a 2020  rvice oddjobd.  
│ │ │ -00055140: 626c 6f63 6b3a 0a0a 2020 2d20 6e61 6d65  block:..  - name
│ │ │ -00055150: 3a20 4469 7361 626c 6520 4f64 6420 4a6f  : Disable Odd Jo
│ │ │ -00055160: 6220 4461 656d 6f6e 2028 6f64 646a 6f62  b Daemon (oddjob
│ │ │ -00055170: 6429 202d 2043 6f6c 6c65 6374 2073 7973  d) - Collect sys
│ │ │ -00055180: 7465 6d64 2053 6572 7669 6365 7320 5072  temd Services Pr
│ │ │ -00055190: 6573 656e 7420 696e 2074 6865 0a20 2020  esent in the.   
│ │ │ -000551a0: 2020 2053 7973 7465 6d0a 2020 2020 616e     System.    an
│ │ │ -000551b0: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ -000551c0: 6d6d 616e 643a 2073 7973 7465 6d63 746c  mmand: systemctl
│ │ │ -000551d0: 202d 7120 6c69 7374 2d75 6e69 742d 6669   -q list-unit-fi
│ │ │ -000551e0: 6c65 7320 2d2d 7479 7065 2073 6572 7669  les --type servi
│ │ │ -000551f0: 6365 0a20 2020 2072 6567 6973 7465 723a  ce.    register:
│ │ │ -00055200: 2073 6572 7669 6365 5f65 7869 7374 730a   service_exists.
│ │ │ -00055210: 2020 2020 6368 616e 6765 645f 7768 656e      changed_when
│ │ │ -00055220: 3a20 6661 6c73 650a 2020 2020 6661 696c  : false.    fail
│ │ │ -00055230: 6564 5f77 6865 6e3a 2073 6572 7669 6365  ed_when: service
│ │ │ -00055240: 5f65 7869 7374 732e 7263 206e 6f74 2069  _exists.rc not i
│ │ │ -00055250: 6e20 5b30 2c20 315d 0a20 2020 2063 6865  n [0, 1].    che
│ │ │ -00055260: 636b 5f6d 6f64 653a 2066 616c 7365 0a0a  ck_mode: false..
│ │ │ -00055270: 2020 2d20 6e61 6d65 3a20 4469 7361 626c    - name: Disabl
│ │ │ -00055280: 6520 4f64 6420 4a6f 6220 4461 656d 6f6e  e Odd Job Daemon
│ │ │ -00055290: 2028 6f64 646a 6f62 6429 202d 2045 6e73   (oddjobd) - Ens
│ │ │ -000552a0: 7572 6520 6f64 646a 6f62 642e 7365 7276  ure oddjobd.serv
│ │ │ -000552b0: 6963 6520 6973 204d 6173 6b65 640a 2020  ice is Masked.  
│ │ │ -000552c0: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -000552d0: 6e2e 7379 7374 656d 643a 0a20 2020 2020  n.systemd:.     
│ │ │ -000552e0: 206e 616d 653a 206f 6464 6a6f 6264 2e73   name: oddjobd.s
│ │ │ -000552f0: 6572 7669 6365 0a20 2020 2020 2073 7461  ervice.      sta
│ │ │ -00055300: 7465 3a20 7374 6f70 7065 640a 2020 2020  te: stopped.    
│ │ │ -00055310: 2020 656e 6162 6c65 643a 2066 616c 7365    enabled: false
│ │ │ -00055320: 0a20 2020 2020 206d 6173 6b65 643a 2074  .      masked: t
│ │ │ -00055330: 7275 650a 2020 2020 7768 656e 3a20 7365  rue.    when: se
│ │ │ -00055340: 7276 6963 655f 6578 6973 7473 2e73 7464  rvice_exists.std
│ │ │ -00055350: 6f75 745f 6c69 6e65 7320 6973 2073 6561  out_lines is sea
│ │ │ -00055360: 7263 6828 226f 6464 6a6f 6264 2e73 6572  rch("oddjobd.ser
│ │ │ -00055370: 7669 6365 222c 206d 756c 7469 6c69 6e65  vice", multiline
│ │ │ -00055380: 3d54 7275 6529 0a0a 2020 2d20 6e61 6d65  =True)..  - name
│ │ │ -00055390: 3a20 556e 6974 2053 6f63 6b65 7420 4578  : Unit Socket Ex
│ │ │ -000553a0: 6973 7473 202d 206f 6464 6a6f 6264 2e73  ists - oddjobd.s
│ │ │ -000553b0: 6f63 6b65 740a 2020 2020 616e 7369 626c  ocket.    ansibl
│ │ │ -000553c0: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ -000553d0: 643a 2073 7973 7465 6d63 746c 202d 7120  d: systemctl -q 
│ │ │ -000553e0: 6c69 7374 2d75 6e69 742d 6669 6c65 7320  list-unit-files 
│ │ │ -000553f0: 6f64 646a 6f62 642e 736f 636b 6574 0a20  oddjobd.socket. 
│ │ │ -00055400: 2020 2072 6567 6973 7465 723a 2073 6f63     register: soc
│ │ │ -00055410: 6b65 745f 6669 6c65 5f65 7869 7374 730a  ket_file_exists.
│ │ │ -00055420: 2020 2020 6368 616e 6765 645f 7768 656e      changed_when
│ │ │ -00055430: 3a20 6661 6c73 650a 2020 2020 6661 696c  : false.    fail
│ │ │ -00055440: 6564 5f77 6865 6e3a 2073 6f63 6b65 745f  ed_when: socket_
│ │ │ -00055450: 6669 6c65 5f65 7869 7374 732e 7263 206e  file_exists.rc n
│ │ │ -00055460: 6f74 2069 6e20 5b30 2c20 315d 0a20 2020  ot in [0, 1].   
│ │ │ -00055470: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ -00055480: 7365 0a0a 2020 2d20 6e61 6d65 3a20 4469  se..  - name: Di
│ │ │ -00055490: 7361 626c 6520 4f64 6420 4a6f 6220 4461  sable Odd Job Da
│ │ │ -000554a0: 656d 6f6e 2028 6f64 646a 6f62 6429 202d  emon (oddjobd) -
│ │ │ -000554b0: 2044 6973 6162 6c65 2053 6f63 6b65 7420   Disable Socket 
│ │ │ -000554c0: 6f64 646a 6f62 640a 2020 2020 616e 7369  oddjobd.    ansi
│ │ │ -000554d0: 626c 652e 6275 696c 7469 6e2e 7379 7374  ble.builtin.syst
│ │ │ -000554e0: 656d 643a 0a20 2020 2020 206e 616d 653a  emd:.      name:
│ │ │ -000554f0: 206f 6464 6a6f 6264 2e73 6f63 6b65 740a   oddjobd.socket.
│ │ │ -00055500: 2020 2020 2020 656e 6162 6c65 643a 2066        enabled: f
│ │ │ -00055510: 616c 7365 0a20 2020 2020 2073 7461 7465  alse.      state
│ │ │ -00055520: 3a20 7374 6f70 7065 640a 2020 2020 2020  : stopped.      
│ │ │ -00055530: 6d61 736b 6564 3a20 7472 7565 0a20 2020  masked: true.   
│ │ │ -00055540: 2077 6865 6e3a 2073 6f63 6b65 745f 6669   when: socket_fi
│ │ │ -00055550: 6c65 5f65 7869 7374 732e 7374 646f 7574  le_exists.stdout
│ │ │ -00055560: 5f6c 696e 6573 2069 7320 7365 6172 6368  _lines is search
│ │ │ -00055570: 2822 6f64 646a 6f62 642e 736f 636b 6574  ("oddjobd.socket
│ │ │ -00055580: 222c 206d 756c 7469 6c69 6e65 3d54 7275  ", multiline=Tru
│ │ │ -00055590: 6529 0a20 2074 6167 733a 0a20 202d 204e  e).  tags:.  - N
│ │ │ -000555a0: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -000555b0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -000555c0: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ -000555d0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -000555e0: 6229 0a20 202d 2064 6973 6162 6c65 5f73  b).  - disable_s
│ │ │ -000555f0: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ -00055600: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ -00055610: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -00055620: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -00055630: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ -00055640: 6e65 6564 6564 0a20 202d 2073 6572 7669  needed.  - servi
│ │ │ -00055650: 6365 5f6f 6464 6a6f 6264 5f64 6973 6162  ce_oddjobd_disab
│ │ │ -00055660: 6c65 640a 2020 2d20 7370 6563 6961 6c5f  led.  - special_
│ │ │ -00055670: 7365 7276 6963 655f 626c 6f63 6b0a 2020  service_block.  
│ │ │ -00055680: 7768 656e 3a20 2722 6b65 726e 656c 2220  when: '"kernel" 
│ │ │ -00055690: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -000556a0: 2e70 6163 6b61 6765 7327 0a3c 2f63 6f64  .packages'.
< │ │ │ +00054b80: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00054b90: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +00054be0: 3c74 723e 3c74 683e 5374 7261 7465 6779
- 
│ │ │ +00054c20: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ +00054c30: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ +00054c40: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ +00054c50: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ +00054c60: 6f0a 2020 7461 6773 3a0a 2020 2d20 4e49  o.  tags:.  - NI
│ │ │ +00054c70: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +00054c80: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +00054c90: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +00054ca0: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +00054cb0: 290a 2020 2d20 6469 7361 626c 655f 7374  ).  - disable_st
│ │ │ +00054cc0: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ +00054cd0: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ +00054ce0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +00054cf0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +00054d00: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +00054d10: 6565 6465 640a 2020 2d20 7365 7276 6963  eeded.  - servic
│ │ │ +00054d20: 655f 6f64 646a 6f62 645f 6469 7361 626c  e_oddjobd_disabl
│ │ │ +00054d30: 6564 0a0a 2d20 6e61 6d65 3a20 4469 7361  ed..- name: Disa
│ │ │ +00054d40: 626c 6520 4f64 6420 4a6f 6220 4461 656d  ble Odd Job Daem
│ │ │ +00054d50: 6f6e 2028 6f64 646a 6f62 6429 202d 2044  on (oddjobd) - D
│ │ │ +00054d60: 6973 6162 6c65 2073 6572 7669 6365 206f  isable service o
│ │ │ +00054d70: 6464 6a6f 6264 0a20 2062 6c6f 636b 3a0a  ddjobd.  block:.
│ │ │ +00054d80: 0a20 202d 206e 616d 653a 2044 6973 6162  .  - name: Disab
│ │ │ +00054d90: 6c65 204f 6464 204a 6f62 2044 6165 6d6f  le Odd Job Daemo
│ │ │ +00054da0: 6e20 286f 6464 6a6f 6264 2920 2d20 436f  n (oddjobd) - Co
│ │ │ +00054db0: 6c6c 6563 7420 7379 7374 656d 6420 5365  llect systemd Se
│ │ │ +00054dc0: 7276 6963 6573 2050 7265 7365 6e74 2069  rvices Present i
│ │ │ +00054dd0: 6e20 7468 650a 2020 2020 2020 5379 7374  n the.      Syst
│ │ │ +00054de0: 656d 0a20 2020 2061 6e73 6962 6c65 2e62  em.    ansible.b
│ │ │ +00054df0: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ +00054e00: 7379 7374 656d 6374 6c20 2d71 206c 6973  systemctl -q lis
│ │ │ +00054e10: 742d 756e 6974 2d66 696c 6573 202d 2d74  t-unit-files --t
│ │ │ +00054e20: 7970 6520 7365 7276 6963 650a 2020 2020  ype service.    
│ │ │ +00054e30: 7265 6769 7374 6572 3a20 7365 7276 6963  register: servic
│ │ │ +00054e40: 655f 6578 6973 7473 0a20 2020 2063 6861  e_exists.    cha
│ │ │ +00054e50: 6e67 6564 5f77 6865 6e3a 2066 616c 7365  nged_when: false
│ │ │ +00054e60: 0a20 2020 2066 6169 6c65 645f 7768 656e  .    failed_when
│ │ │ +00054e70: 3a20 7365 7276 6963 655f 6578 6973 7473  : service_exists
│ │ │ +00054e80: 2e72 6320 6e6f 7420 696e 205b 302c 2031  .rc not in [0, 1
│ │ │ +00054e90: 5d0a 2020 2020 6368 6563 6b5f 6d6f 6465  ].    check_mode
│ │ │ +00054ea0: 3a20 6661 6c73 650a 0a20 202d 206e 616d  : false..  - nam
│ │ │ +00054eb0: 653a 2044 6973 6162 6c65 204f 6464 204a  e: Disable Odd J
│ │ │ +00054ec0: 6f62 2044 6165 6d6f 6e20 286f 6464 6a6f  ob Daemon (oddjo
│ │ │ +00054ed0: 6264 2920 2d20 456e 7375 7265 206f 6464  bd) - Ensure odd
│ │ │ +00054ee0: 6a6f 6264 2e73 6572 7669 6365 2069 7320  jobd.service is 
│ │ │ +00054ef0: 4d61 736b 6564 0a20 2020 2061 6e73 6962  Masked.    ansib
│ │ │ +00054f00: 6c65 2e62 7569 6c74 696e 2e73 7973 7465  le.builtin.syste
│ │ │ +00054f10: 6d64 3a0a 2020 2020 2020 6e61 6d65 3a20  md:.      name: 
│ │ │ +00054f20: 6f64 646a 6f62 642e 7365 7276 6963 650a  oddjobd.service.
│ │ │ +00054f30: 2020 2020 2020 7374 6174 653a 2073 746f        state: sto
│ │ │ +00054f40: 7070 6564 0a20 2020 2020 2065 6e61 626c  pped.      enabl
│ │ │ +00054f50: 6564 3a20 6661 6c73 650a 2020 2020 2020  ed: false.      
│ │ │ +00054f60: 6d61 736b 6564 3a20 7472 7565 0a20 2020  masked: true.   
│ │ │ +00054f70: 2077 6865 6e3a 2073 6572 7669 6365 5f65   when: service_e
│ │ │ +00054f80: 7869 7374 732e 7374 646f 7574 5f6c 696e  xists.stdout_lin
│ │ │ +00054f90: 6573 2069 7320 7365 6172 6368 2822 6f64  es is search("od
│ │ │ +00054fa0: 646a 6f62 642e 7365 7276 6963 6522 2c20  djobd.service", 
│ │ │ +00054fb0: 6d75 6c74 696c 696e 653d 5472 7565 290a  multiline=True).
│ │ │ +00054fc0: 0a20 202d 206e 616d 653a 2055 6e69 7420  .  - name: Unit 
│ │ │ +00054fd0: 536f 636b 6574 2045 7869 7374 7320 2d20  Socket Exists - 
│ │ │ +00054fe0: 6f64 646a 6f62 642e 736f 636b 6574 0a20  oddjobd.socket. 
│ │ │ +00054ff0: 2020 2061 6e73 6962 6c65 2e62 7569 6c74     ansible.built
│ │ │ +00055000: 696e 2e63 6f6d 6d61 6e64 3a20 7379 7374  in.command: syst
│ │ │ +00055010: 656d 6374 6c20 2d71 206c 6973 742d 756e  emctl -q list-un
│ │ │ +00055020: 6974 2d66 696c 6573 206f 6464 6a6f 6264  it-files oddjobd
│ │ │ +00055030: 2e73 6f63 6b65 740a 2020 2020 7265 6769  .socket.    regi
│ │ │ +00055040: 7374 6572 3a20 736f 636b 6574 5f66 696c  ster: socket_fil
│ │ │ +00055050: 655f 6578 6973 7473 0a20 2020 2063 6861  e_exists.    cha
│ │ │ +00055060: 6e67 6564 5f77 6865 6e3a 2066 616c 7365  nged_when: false
│ │ │ +00055070: 0a20 2020 2066 6169 6c65 645f 7768 656e  .    failed_when
│ │ │ +00055080: 3a20 736f 636b 6574 5f66 696c 655f 6578  : socket_file_ex
│ │ │ +00055090: 6973 7473 2e72 6320 6e6f 7420 696e 205b  ists.rc not in [
│ │ │ +000550a0: 302c 2031 5d0a 2020 2020 6368 6563 6b5f  0, 1].    check_
│ │ │ +000550b0: 6d6f 6465 3a20 6661 6c73 650a 0a20 202d  mode: false..  -
│ │ │ +000550c0: 206e 616d 653a 2044 6973 6162 6c65 204f   name: Disable O
│ │ │ +000550d0: 6464 204a 6f62 2044 6165 6d6f 6e20 286f  dd Job Daemon (o
│ │ │ +000550e0: 6464 6a6f 6264 2920 2d20 4469 7361 626c  ddjobd) - Disabl
│ │ │ +000550f0: 6520 536f 636b 6574 206f 6464 6a6f 6264  e Socket oddjobd
│ │ │ +00055100: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ +00055110: 6c74 696e 2e73 7973 7465 6d64 3a0a 2020  ltin.systemd:.  
│ │ │ +00055120: 2020 2020 6e61 6d65 3a20 6f64 646a 6f62      name: oddjob
│ │ │ +00055130: 642e 736f 636b 6574 0a20 2020 2020 2065  d.socket.      e
│ │ │ +00055140: 6e61 626c 6564 3a20 6661 6c73 650a 2020  nabled: false.  
│ │ │ +00055150: 2020 2020 7374 6174 653a 2073 746f 7070      state: stopp
│ │ │ +00055160: 6564 0a20 2020 2020 206d 6173 6b65 643a  ed.      masked:
│ │ │ +00055170: 2074 7275 650a 2020 2020 7768 656e 3a20   true.    when: 
│ │ │ +00055180: 736f 636b 6574 5f66 696c 655f 6578 6973  socket_file_exis
│ │ │ +00055190: 7473 2e73 7464 6f75 745f 6c69 6e65 7320  ts.stdout_lines 
│ │ │ +000551a0: 6973 2073 6561 7263 6828 226f 6464 6a6f  is search("oddjo
│ │ │ +000551b0: 6264 2e73 6f63 6b65 7422 2c20 6d75 6c74  bd.socket", mult
│ │ │ +000551c0: 696c 696e 653d 5472 7565 290a 2020 7461  iline=True).  ta
│ │ │ +000551d0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +000551e0: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +000551f0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +00055200: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +00055210: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ +00055220: 6469 7361 626c 655f 7374 7261 7465 6779  disable_strategy
│ │ │ +00055230: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +00055240: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +00055250: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +00055260: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ +00055270: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +00055280: 2020 2d20 7365 7276 6963 655f 6f64 646a    - service_oddj
│ │ │ +00055290: 6f62 645f 6469 7361 626c 6564 0a20 202d  obd_disabled.  -
│ │ │ +000552a0: 2073 7065 6369 616c 5f73 6572 7669 6365   special_service
│ │ │ +000552b0: 5f62 6c6f 636b 0a20 2077 6865 6e3a 2027  _block.  when: '
│ │ │ +000552c0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +000552d0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +000552e0: 6573 270a 3c2f 636f 6465 3e3c 2f70 7265  es'.
Remediation P │ │ │ +000553a0: 7570 7065 7420 736e 6970 7065 7420 e287 uppet snippet .. │ │ │ +000553b0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
C │ │ │ +00054b70: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +00054ba0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +00054bb0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +00054bf0: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ +00054c00: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexity: │ │ │ +00055480: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00055490: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +000554e0: 696e 636c 7564 6520 6469 7361 626c 655f  include disable_
│ │ │ +000554f0: 6f64 646a 6f62 640a 0a63 6c61 7373 2064  oddjobd..class d
│ │ │ +00055500: 6973 6162 6c65 5f6f 6464 6a6f 6264 207b  isable_oddjobd {
│ │ │ +00055510: 0a20 2073 6572 7669 6365 207b 276f 6464  .  service {'odd
│ │ │ +00055520: 6a6f 6264 273a 0a20 2020 2065 6e61 626c  jobd':.    enabl
│ │ │ +00055530: 6520 3d26 6774 3b20 6661 6c73 652c 0a20  e => false,. 
│ │ │ +00055540: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ +00055550: 2773 746f 7070 6564 272c 0a20 207d 0a7d  'stopped',.  }.}
│ │ │ +00055560: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
│ │ │ +00055610: 5265 6d65 6469 6174 696f 6e20 4f53 4275 Remediation OSBu │ │ │ +00055620: 696c 6420 426c 7565 7072 696e 7420 736e ild Blueprint sn │ │ │ +00055630: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ +00055670: 3c70 7265 3e3c 636f 6465 3e0a 5b63 7573
.[cus
│ │ │ +00055680: 746f 6d69 7a61 7469 6f6e 732e 7365 7276  tomizations.serv
│ │ │ +00055690: 6963 6573 5d0a 6d61 736b 6564 203d 205b  ices].masked = [
│ │ │ +000556a0: 226f 6464 6a6f 6264 225d 0a3c 2f63 6f64  "oddjobd"].
low
Disru │ │ │ +00055460: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00055470: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +000554b0: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +000554c0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Rem │ │ │ -00056640: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ -00056650: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ -00056660: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
.[custom │ │ │ -000566b0: 697a 6174 696f 6e73 2e73 6572 7669 6365 izations.service │ │ │ -000566c0: 735d 0a6d 6173 6b65 6420 3d20 5b22 7170 s].masked = ["qp │ │ │ -000566d0: 6964 6422 5d0a 3c2f 636f 6465 3e3c 2f70 idd"].

Remediation │ │ │ -00056790: 2050 7570 7065 7420 736e 6970 7065 7420 Puppet snippet │ │ │ -000567a0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
│ │ │ -00056820: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -00056840: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -00056890: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ -000568c0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
include disabl
│ │ │ -000568e0: 655f 7170 6964 640a 0a63 6c61 7373 2064  e_qpidd..class d
│ │ │ -000568f0: 6973 6162 6c65 5f71 7069 6464 207b 0a20  isable_qpidd {. 
│ │ │ -00056900: 2073 6572 7669 6365 207b 2771 7069 6464   service {'qpidd
│ │ │ -00056910: 273a 0a20 2020 2065 6e61 626c 6520 3d26  ':.    enable =&
│ │ │ -00056920: 6774 3b20 6661 6c73 652c 0a20 2020 2065  gt; false,.    e
│ │ │ -00056930: 6e73 7572 6520 3d26 6774 3b20 2773 746f  nsure => 'sto
│ │ │ -00056940: 7070 6564 272c 0a20 207d 0a7d 0a3c 2f63  pped',.  }.}.
│ │ │ -00056960: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Reme │ │ │ -00056a00: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ -00056a10: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -00056a20: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Complexity:< │ │ │ -00056830: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -00056850: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -000568a0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ -000568b0: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
Comp │ │ │ -00056aa0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -00056ab0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -00056ad0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -00056af0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -00056b00: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -00056b40: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ -00056b50: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ -00056b60: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ -00056b70: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ -00056b80: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ -00056b90: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -00056ba0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -00056bb0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -00056bc0: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -00056bd0: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -00056be0: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ -00056bf0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ -00056c00: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -00056c10: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -00056c20: 775f 7365 7665 7269 7479 0a20 202d 206e  w_severity.  - n
│ │ │ -00056c30: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -00056c40: 2020 2d20 7365 7276 6963 655f 7170 6964    - service_qpid
│ │ │ -00056c50: 645f 6469 7361 626c 6564 0a0a 2d20 6e61  d_disabled..- na
│ │ │ -00056c60: 6d65 3a20 4469 7361 626c 6520 4170 6163  me: Disable Apac
│ │ │ -00056c70: 6865 2051 7069 6420 2871 7069 6464 2920  he Qpid (qpidd) 
│ │ │ -00056c80: 2d20 4469 7361 626c 6520 7365 7276 6963  - Disable servic
│ │ │ -00056c90: 6520 7170 6964 640a 2020 626c 6f63 6b3a  e qpidd.  block:
│ │ │ -00056ca0: 0a0a 2020 2d20 6e61 6d65 3a20 4469 7361  ..  - name: Disa
│ │ │ -00056cb0: 626c 6520 4170 6163 6865 2051 7069 6420  ble Apache Qpid 
│ │ │ -00056cc0: 2871 7069 6464 2920 2d20 436f 6c6c 6563  (qpidd) - Collec
│ │ │ -00056cd0: 7420 7379 7374 656d 6420 5365 7276 6963  t systemd Servic
│ │ │ -00056ce0: 6573 2050 7265 7365 6e74 2069 6e20 7468  es Present in th
│ │ │ -00056cf0: 6520 5379 7374 656d 0a20 2020 2061 6e73  e System.    ans
│ │ │ -00056d00: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d  ible.builtin.com
│ │ │ -00056d10: 6d61 6e64 3a20 7379 7374 656d 6374 6c20  mand: systemctl 
│ │ │ -00056d20: 2d71 206c 6973 742d 756e 6974 2d66 696c  -q list-unit-fil
│ │ │ -00056d30: 6573 202d 2d74 7970 6520 7365 7276 6963  es --type servic
│ │ │ -00056d40: 650a 2020 2020 7265 6769 7374 6572 3a20  e.    register: 
│ │ │ -00056d50: 7365 7276 6963 655f 6578 6973 7473 0a20  service_exists. 
│ │ │ -00056d60: 2020 2063 6861 6e67 6564 5f77 6865 6e3a     changed_when:
│ │ │ -00056d70: 2066 616c 7365 0a20 2020 2066 6169 6c65   false.    faile
│ │ │ -00056d80: 645f 7768 656e 3a20 7365 7276 6963 655f  d_when: service_
│ │ │ -00056d90: 6578 6973 7473 2e72 6320 6e6f 7420 696e  exists.rc not in
│ │ │ -00056da0: 205b 302c 2031 5d0a 2020 2020 6368 6563   [0, 1].    chec
│ │ │ -00056db0: 6b5f 6d6f 6465 3a20 6661 6c73 650a 0a20  k_mode: false.. 
│ │ │ -00056dc0: 202d 206e 616d 653a 2044 6973 6162 6c65   - name: Disable
│ │ │ -00056dd0: 2041 7061 6368 6520 5170 6964 2028 7170   Apache Qpid (qp
│ │ │ -00056de0: 6964 6429 202d 2045 6e73 7572 6520 7170  idd) - Ensure qp
│ │ │ -00056df0: 6964 642e 7365 7276 6963 6520 6973 204d  idd.service is M
│ │ │ -00056e00: 6173 6b65 640a 2020 2020 616e 7369 626c  asked.    ansibl
│ │ │ -00056e10: 652e 6275 696c 7469 6e2e 7379 7374 656d  e.builtin.system
│ │ │ -00056e20: 643a 0a20 2020 2020 206e 616d 653a 2071  d:.      name: q
│ │ │ -00056e30: 7069 6464 2e73 6572 7669 6365 0a20 2020  pidd.service.   
│ │ │ -00056e40: 2020 2073 7461 7465 3a20 7374 6f70 7065     state: stoppe
│ │ │ -00056e50: 640a 2020 2020 2020 656e 6162 6c65 643a  d.      enabled:
│ │ │ -00056e60: 2066 616c 7365 0a20 2020 2020 206d 6173   false.      mas
│ │ │ -00056e70: 6b65 643a 2074 7275 650a 2020 2020 7768  ked: true.    wh
│ │ │ -00056e80: 656e 3a20 7365 7276 6963 655f 6578 6973  en: service_exis
│ │ │ -00056e90: 7473 2e73 7464 6f75 745f 6c69 6e65 7320  ts.stdout_lines 
│ │ │ -00056ea0: 6973 2073 6561 7263 6828 2271 7069 6464  is search("qpidd
│ │ │ -00056eb0: 2e73 6572 7669 6365 222c 206d 756c 7469  .service", multi
│ │ │ -00056ec0: 6c69 6e65 3d54 7275 6529 0a0a 2020 2d20  line=True)..  - 
│ │ │ -00056ed0: 6e61 6d65 3a20 556e 6974 2053 6f63 6b65  name: Unit Socke
│ │ │ -00056ee0: 7420 4578 6973 7473 202d 2071 7069 6464  t Exists - qpidd
│ │ │ -00056ef0: 2e73 6f63 6b65 740a 2020 2020 616e 7369  .socket.    ansi
│ │ │ -00056f00: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ -00056f10: 616e 643a 2073 7973 7465 6d63 746c 202d  and: systemctl -
│ │ │ -00056f20: 7120 6c69 7374 2d75 6e69 742d 6669 6c65  q list-unit-file
│ │ │ -00056f30: 7320 7170 6964 642e 736f 636b 6574 0a20  s qpidd.socket. 
│ │ │ -00056f40: 2020 2072 6567 6973 7465 723a 2073 6f63     register: soc
│ │ │ -00056f50: 6b65 745f 6669 6c65 5f65 7869 7374 730a  ket_file_exists.
│ │ │ -00056f60: 2020 2020 6368 616e 6765 645f 7768 656e      changed_when
│ │ │ -00056f70: 3a20 6661 6c73 650a 2020 2020 6661 696c  : false.    fail
│ │ │ -00056f80: 6564 5f77 6865 6e3a 2073 6f63 6b65 745f  ed_when: socket_
│ │ │ -00056f90: 6669 6c65 5f65 7869 7374 732e 7263 206e  file_exists.rc n
│ │ │ -00056fa0: 6f74 2069 6e20 5b30 2c20 315d 0a20 2020  ot in [0, 1].   
│ │ │ -00056fb0: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ -00056fc0: 7365 0a0a 2020 2d20 6e61 6d65 3a20 4469  se..  - name: Di
│ │ │ -00056fd0: 7361 626c 6520 4170 6163 6865 2051 7069  sable Apache Qpi
│ │ │ -00056fe0: 6420 2871 7069 6464 2920 2d20 4469 7361  d (qpidd) - Disa
│ │ │ -00056ff0: 626c 6520 536f 636b 6574 2071 7069 6464  ble Socket qpidd
│ │ │ -00057000: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ -00057010: 6c74 696e 2e73 7973 7465 6d64 3a0a 2020  ltin.systemd:.  
│ │ │ -00057020: 2020 2020 6e61 6d65 3a20 7170 6964 642e      name: qpidd.
│ │ │ -00057030: 736f 636b 6574 0a20 2020 2020 2065 6e61  socket.      ena
│ │ │ -00057040: 626c 6564 3a20 6661 6c73 650a 2020 2020  bled: false.    
│ │ │ -00057050: 2020 7374 6174 653a 2073 746f 7070 6564    state: stopped
│ │ │ -00057060: 0a20 2020 2020 206d 6173 6b65 643a 2074  .      masked: t
│ │ │ -00057070: 7275 650a 2020 2020 7768 656e 3a20 736f  rue.    when: so
│ │ │ -00057080: 636b 6574 5f66 696c 655f 6578 6973 7473  cket_file_exists
│ │ │ -00057090: 2e73 7464 6f75 745f 6c69 6e65 7320 6973  .stdout_lines is
│ │ │ -000570a0: 2073 6561 7263 6828 2271 7069 6464 2e73   search("qpidd.s
│ │ │ -000570b0: 6f63 6b65 7422 2c20 6d75 6c74 696c 696e  ocket", multilin
│ │ │ -000570c0: 653d 5472 7565 290a 2020 7461 6773 3a0a  e=True).  tags:.
│ │ │ -000570d0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -000570e0: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ -000570f0: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ -00057100: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -00057110: 434d 2d37 2862 290a 2020 2d20 6469 7361  CM-7(b).  - disa
│ │ │ -00057120: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ -00057130: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -00057140: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -00057150: 6f6e 0a20 202d 206c 6f77 5f73 6576 6572  on.  - low_sever
│ │ │ -00057160: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ -00057170: 745f 6e65 6564 6564 0a20 202d 2073 6572  t_needed.  - ser
│ │ │ -00057180: 7669 6365 5f71 7069 6464 5f64 6973 6162  vice_qpidd_disab
│ │ │ -00057190: 6c65 640a 2020 2d20 7370 6563 6961 6c5f  led.  - special_
│ │ │ -000571a0: 7365 7276 6963 655f 626c 6f63 6b0a 2020  service_block.  
│ │ │ -000571b0: 7768 656e 3a20 2722 6b65 726e 656c 2220  when: '"kernel" 
│ │ │ -000571c0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -000571d0: 2e70 6163 6b61 6765 7327 0a3c 2f63 6f64  .packages'.
│ │ │ +00056660: 3c62 723e 3c64 6976 2063 6c61 7373 3d22  
Com │ │ │ +000566e0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +00056710: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +00056730: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +00056740: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +00056760: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +00056770: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ +00056790: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ +000567a0: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ +000567b0: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ +000567c0: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ +000567d0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +000567e0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +000567f0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +00056800: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +00056810: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +00056820: 2020 2d20 6469 7361 626c 655f 7374 7261    - disable_stra
│ │ │ +00056830: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ +00056840: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +00056850: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +00056860: 6f77 5f73 6576 6572 6974 790a 2020 2d20  ow_severity.  - 
│ │ │ +00056870: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +00056880: 0a20 202d 2073 6572 7669 6365 5f71 7069  .  - service_qpi
│ │ │ +00056890: 6464 5f64 6973 6162 6c65 640a 0a2d 206e  dd_disabled..- n
│ │ │ +000568a0: 616d 653a 2044 6973 6162 6c65 2041 7061  ame: Disable Apa
│ │ │ +000568b0: 6368 6520 5170 6964 2028 7170 6964 6429  che Qpid (qpidd)
│ │ │ +000568c0: 202d 2044 6973 6162 6c65 2073 6572 7669   - Disable servi
│ │ │ +000568d0: 6365 2071 7069 6464 0a20 2062 6c6f 636b  ce qpidd.  block
│ │ │ +000568e0: 3a0a 0a20 202d 206e 616d 653a 2044 6973  :..  - name: Dis
│ │ │ +000568f0: 6162 6c65 2041 7061 6368 6520 5170 6964  able Apache Qpid
│ │ │ +00056900: 2028 7170 6964 6429 202d 2043 6f6c 6c65   (qpidd) - Colle
│ │ │ +00056910: 6374 2073 7973 7465 6d64 2053 6572 7669  ct systemd Servi
│ │ │ +00056920: 6365 7320 5072 6573 656e 7420 696e 2074  ces Present in t
│ │ │ +00056930: 6865 2053 7973 7465 6d0a 2020 2020 616e  he System.    an
│ │ │ +00056940: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ +00056950: 6d6d 616e 643a 2073 7973 7465 6d63 746c  mmand: systemctl
│ │ │ +00056960: 202d 7120 6c69 7374 2d75 6e69 742d 6669   -q list-unit-fi
│ │ │ +00056970: 6c65 7320 2d2d 7479 7065 2073 6572 7669  les --type servi
│ │ │ +00056980: 6365 0a20 2020 2072 6567 6973 7465 723a  ce.    register:
│ │ │ +00056990: 2073 6572 7669 6365 5f65 7869 7374 730a   service_exists.
│ │ │ +000569a0: 2020 2020 6368 616e 6765 645f 7768 656e      changed_when
│ │ │ +000569b0: 3a20 6661 6c73 650a 2020 2020 6661 696c  : false.    fail
│ │ │ +000569c0: 6564 5f77 6865 6e3a 2073 6572 7669 6365  ed_when: service
│ │ │ +000569d0: 5f65 7869 7374 732e 7263 206e 6f74 2069  _exists.rc not i
│ │ │ +000569e0: 6e20 5b30 2c20 315d 0a20 2020 2063 6865  n [0, 1].    che
│ │ │ +000569f0: 636b 5f6d 6f64 653a 2066 616c 7365 0a0a  ck_mode: false..
│ │ │ +00056a00: 2020 2d20 6e61 6d65 3a20 4469 7361 626c    - name: Disabl
│ │ │ +00056a10: 6520 4170 6163 6865 2051 7069 6420 2871  e Apache Qpid (q
│ │ │ +00056a20: 7069 6464 2920 2d20 456e 7375 7265 2071  pidd) - Ensure q
│ │ │ +00056a30: 7069 6464 2e73 6572 7669 6365 2069 7320  pidd.service is 
│ │ │ +00056a40: 4d61 736b 6564 0a20 2020 2061 6e73 6962  Masked.    ansib
│ │ │ +00056a50: 6c65 2e62 7569 6c74 696e 2e73 7973 7465  le.builtin.syste
│ │ │ +00056a60: 6d64 3a0a 2020 2020 2020 6e61 6d65 3a20  md:.      name: 
│ │ │ +00056a70: 7170 6964 642e 7365 7276 6963 650a 2020  qpidd.service.  
│ │ │ +00056a80: 2020 2020 7374 6174 653a 2073 746f 7070      state: stopp
│ │ │ +00056a90: 6564 0a20 2020 2020 2065 6e61 626c 6564  ed.      enabled
│ │ │ +00056aa0: 3a20 6661 6c73 650a 2020 2020 2020 6d61  : false.      ma
│ │ │ +00056ab0: 736b 6564 3a20 7472 7565 0a20 2020 2077  sked: true.    w
│ │ │ +00056ac0: 6865 6e3a 2073 6572 7669 6365 5f65 7869  hen: service_exi
│ │ │ +00056ad0: 7374 732e 7374 646f 7574 5f6c 696e 6573  sts.stdout_lines
│ │ │ +00056ae0: 2069 7320 7365 6172 6368 2822 7170 6964   is search("qpid
│ │ │ +00056af0: 642e 7365 7276 6963 6522 2c20 6d75 6c74  d.service", mult
│ │ │ +00056b00: 696c 696e 653d 5472 7565 290a 0a20 202d  iline=True)..  -
│ │ │ +00056b10: 206e 616d 653a 2055 6e69 7420 536f 636b   name: Unit Sock
│ │ │ +00056b20: 6574 2045 7869 7374 7320 2d20 7170 6964  et Exists - qpid
│ │ │ +00056b30: 642e 736f 636b 6574 0a20 2020 2061 6e73  d.socket.    ans
│ │ │ +00056b40: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d  ible.builtin.com
│ │ │ +00056b50: 6d61 6e64 3a20 7379 7374 656d 6374 6c20  mand: systemctl 
│ │ │ +00056b60: 2d71 206c 6973 742d 756e 6974 2d66 696c  -q list-unit-fil
│ │ │ +00056b70: 6573 2071 7069 6464 2e73 6f63 6b65 740a  es qpidd.socket.
│ │ │ +00056b80: 2020 2020 7265 6769 7374 6572 3a20 736f      register: so
│ │ │ +00056b90: 636b 6574 5f66 696c 655f 6578 6973 7473  cket_file_exists
│ │ │ +00056ba0: 0a20 2020 2063 6861 6e67 6564 5f77 6865  .    changed_whe
│ │ │ +00056bb0: 6e3a 2066 616c 7365 0a20 2020 2066 6169  n: false.    fai
│ │ │ +00056bc0: 6c65 645f 7768 656e 3a20 736f 636b 6574  led_when: socket
│ │ │ +00056bd0: 5f66 696c 655f 6578 6973 7473 2e72 6320  _file_exists.rc 
│ │ │ +00056be0: 6e6f 7420 696e 205b 302c 2031 5d0a 2020  not in [0, 1].  
│ │ │ +00056bf0: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661    check_mode: fa
│ │ │ +00056c00: 6c73 650a 0a20 202d 206e 616d 653a 2044  lse..  - name: D
│ │ │ +00056c10: 6973 6162 6c65 2041 7061 6368 6520 5170  isable Apache Qp
│ │ │ +00056c20: 6964 2028 7170 6964 6429 202d 2044 6973  id (qpidd) - Dis
│ │ │ +00056c30: 6162 6c65 2053 6f63 6b65 7420 7170 6964  able Socket qpid
│ │ │ +00056c40: 640a 2020 2020 616e 7369 626c 652e 6275  d.    ansible.bu
│ │ │ +00056c50: 696c 7469 6e2e 7379 7374 656d 643a 0a20  iltin.systemd:. 
│ │ │ +00056c60: 2020 2020 206e 616d 653a 2071 7069 6464       name: qpidd
│ │ │ +00056c70: 2e73 6f63 6b65 740a 2020 2020 2020 656e  .socket.      en
│ │ │ +00056c80: 6162 6c65 643a 2066 616c 7365 0a20 2020  abled: false.   
│ │ │ +00056c90: 2020 2073 7461 7465 3a20 7374 6f70 7065     state: stoppe
│ │ │ +00056ca0: 640a 2020 2020 2020 6d61 736b 6564 3a20  d.      masked: 
│ │ │ +00056cb0: 7472 7565 0a20 2020 2077 6865 6e3a 2073  true.    when: s
│ │ │ +00056cc0: 6f63 6b65 745f 6669 6c65 5f65 7869 7374  ocket_file_exist
│ │ │ +00056cd0: 732e 7374 646f 7574 5f6c 696e 6573 2069  s.stdout_lines i
│ │ │ +00056ce0: 7320 7365 6172 6368 2822 7170 6964 642e  s search("qpidd.
│ │ │ +00056cf0: 736f 636b 6574 222c 206d 756c 7469 6c69  socket", multili
│ │ │ +00056d00: 6e65 3d54 7275 6529 0a20 2074 6167 733a  ne=True).  tags:
│ │ │ +00056d10: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +00056d20: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ +00056d30: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ +00056d40: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +00056d50: 2d43 4d2d 3728 6229 0a20 202d 2064 6973  -CM-7(b).  - dis
│ │ │ +00056d60: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ +00056d70: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +00056d80: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +00056d90: 696f 6e0a 2020 2d20 6c6f 775f 7365 7665  ion.  - low_seve
│ │ │ +00056da0: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ +00056db0: 6f74 5f6e 6565 6465 640a 2020 2d20 7365  ot_needed.  - se
│ │ │ +00056dc0: 7276 6963 655f 7170 6964 645f 6469 7361  rvice_qpidd_disa
│ │ │ +00056dd0: 626c 6564 0a20 202d 2073 7065 6369 616c  bled.  - special
│ │ │ +00056de0: 5f73 6572 7669 6365 5f62 6c6f 636b 0a20  _service_block. 
│ │ │ +00056df0: 2077 6865 6e3a 2027 226b 6572 6e65 6c22   when: '"kernel"
│ │ │ +00056e00: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +00056e10: 732e 7061 636b 6167 6573 270a 3c2f 636f  s.packages'.
< │ │ │ +00056e30: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +00056e40: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +00056e50: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +00056e60: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +00056e70: 6434 3822 2074 6162 696e 6465 783d 2230 d48" tabindex="0 │ │ │ +00056e80: 2220 726f 6c65 3d22 6275 7474 6f6e 2220 " role="button" │ │ │ +00056e90: 6172 6961 2d65 7870 616e 6465 643d 2266 aria-expanded="f │ │ │ +00056ea0: 616c 7365 2220 7469 746c 653d 2241 6374 alse" title="Act │ │ │ +00056eb0: 6976 6174 6520 746f 2072 6576 6561 6c22 ivate to reveal" │ │ │ +00056ec0: 2068 7265 663d 2223 2122 3e52 656d 6564 href="#!">Remed │ │ │ +00056ed0: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ +00056ee0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ +00056f20: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +00056f90: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +00056fb0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +00056fe0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ +00057000: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ +00056f70: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +00056f80: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +00056fc0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +00056fd0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
include │ │ │ +00057020: 6469 7361 626c 655f 7170 6964 640a 0a63 disable_qpidd..c │ │ │ +00057030: 6c61 7373 2064 6973 6162 6c65 5f71 7069 lass disable_qpi │ │ │ +00057040: 6464 207b 0a20 2073 6572 7669 6365 207b dd {. service { │ │ │ +00057050: 2771 7069 6464 273a 0a20 2020 2065 6e61 'qpidd':. ena │ │ │ +00057060: 626c 6520 3d26 6774 3b20 6661 6c73 652c ble => false, │ │ │ +00057070: 0a20 2020 2065 6e73 7572 6520 3d26 6774 . ensure => │ │ │ +00057080: 3b20 2773 746f 7070 6564 272c 0a20 207d ; 'stopped',. } │ │ │ +00057090: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e .}.
│ │ │ +000570a0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation OS │ │ │ +00057150: 4275 696c 6420 426c 7565 7072 696e 7420 Build Blueprint │ │ │ +00057160: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +00057170: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
.[c
│ │ │ +000571b0: 7573 746f 6d69 7a61 7469 6f6e 732e 7365  ustomizations.se
│ │ │ +000571c0: 7276 6963 6573 5d0a 6d61 736b 6564 203d  rvices].masked =
│ │ │ +000571d0: 205b 2271 7069 6464 225d 0a3c 2f63 6f64   ["qpidd"].
Re │ │ │ -000582c0: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ -000582d0: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ -000582e0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -000582f0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00058300: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00058310: 7365 2220 6964 3d22 6964 3531 223e 3c70 se" id="id51">

.[custo │ │ │ -00058330: 6d69 7a61 7469 6f6e 732e 7365 7276 6963 mizations.servic │ │ │ -00058340: 6573 5d0a 6d61 736b 6564 203d 205b 2272 es].masked = ["r │ │ │ -00058350: 6469 7363 225d 0a3c 2f63 6f64 653e 3c2f disc"].

Remediatio │ │ │ -00058410: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ -00058420: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity: │ │ │ -000584b0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -000584d0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -000584f0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -00058520: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -00058530: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ -00058540: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
include disab
│ │ │ -00058560: 6c65 5f72 6469 7363 0a0a 636c 6173 7320  le_rdisc..class 
│ │ │ -00058570: 6469 7361 626c 655f 7264 6973 6320 7b0a  disable_rdisc {.
│ │ │ -00058580: 2020 7365 7276 6963 6520 7b27 7264 6973    service {'rdis
│ │ │ -00058590: 6327 3a0a 2020 2020 656e 6162 6c65 203d  c':.    enable =
│ │ │ -000585a0: 2667 743b 2066 616c 7365 2c0a 2020 2020  > false,.    
│ │ │ -000585b0: 656e 7375 7265 203d 2667 743b 2027 7374  ensure => 'st
│ │ │ -000585c0: 6f70 7065 6427 2c0a 2020 7d0a 7d0a 3c2f  opped',.  }.}.
Rem │ │ │ -00058680: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -00058690: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -000586a0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
Com │ │ │ -00058720: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -00058750: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -00058770: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -00058780: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -000587a0: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -000587b0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -000587d0: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ -000587e0: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ -000587f0: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ -00058800: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ -00058810: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -00058820: 2d38 3030 2d35 332d 4143 2d34 0a20 202d  -800-53-AC-4.  -
│ │ │ -00058830: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -00058840: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ -00058850: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ -00058860: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -00058870: 3728 6229 0a20 202d 2064 6973 6162 6c65  7(b).  - disable
│ │ │ -00058880: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ -00058890: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -000588a0: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -000588b0: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -000588c0: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ -000588d0: 745f 6e65 6564 6564 0a20 202d 2073 6572  t_needed.  - ser
│ │ │ -000588e0: 7669 6365 5f72 6469 7363 5f64 6973 6162  vice_rdisc_disab
│ │ │ -000588f0: 6c65 640a 0a2d 206e 616d 653a 2044 6973  led..- name: Dis
│ │ │ -00058900: 6162 6c65 204e 6574 776f 726b 2052 6f75  able Network Rou
│ │ │ -00058910: 7465 7220 4469 7363 6f76 6572 7920 4461  ter Discovery Da
│ │ │ -00058920: 656d 6f6e 2028 7264 6973 6329 202d 2044  emon (rdisc) - D
│ │ │ -00058930: 6973 6162 6c65 2073 6572 7669 6365 2072  isable service r
│ │ │ -00058940: 6469 7363 0a20 2062 6c6f 636b 3a0a 0a20  disc.  block:.. 
│ │ │ -00058950: 202d 206e 616d 653a 2044 6973 6162 6c65   - name: Disable
│ │ │ -00058960: 204e 6574 776f 726b 2052 6f75 7465 7220   Network Router 
│ │ │ -00058970: 4469 7363 6f76 6572 7920 4461 656d 6f6e  Discovery Daemon
│ │ │ -00058980: 2028 7264 6973 6329 202d 2043 6f6c 6c65   (rdisc) - Colle
│ │ │ -00058990: 6374 2073 7973 7465 6d64 2053 6572 7669  ct systemd Servi
│ │ │ -000589a0: 6365 730a 2020 2020 2020 5072 6573 656e  ces.      Presen
│ │ │ -000589b0: 7420 696e 2074 6865 2053 7973 7465 6d0a  t in the System.
│ │ │ -000589c0: 2020 2020 616e 7369 626c 652e 6275 696c      ansible.buil
│ │ │ -000589d0: 7469 6e2e 636f 6d6d 616e 643a 2073 7973  tin.command: sys
│ │ │ -000589e0: 7465 6d63 746c 202d 7120 6c69 7374 2d75  temctl -q list-u
│ │ │ -000589f0: 6e69 742d 6669 6c65 7320 2d2d 7479 7065  nit-files --type
│ │ │ -00058a00: 2073 6572 7669 6365 0a20 2020 2072 6567   service.    reg
│ │ │ -00058a10: 6973 7465 723a 2073 6572 7669 6365 5f65  ister: service_e
│ │ │ -00058a20: 7869 7374 730a 2020 2020 6368 616e 6765  xists.    change
│ │ │ -00058a30: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ -00058a40: 2020 6661 696c 6564 5f77 6865 6e3a 2073    failed_when: s
│ │ │ -00058a50: 6572 7669 6365 5f65 7869 7374 732e 7263  ervice_exists.rc
│ │ │ -00058a60: 206e 6f74 2069 6e20 5b30 2c20 315d 0a20   not in [0, 1]. 
│ │ │ -00058a70: 2020 2063 6865 636b 5f6d 6f64 653a 2066     check_mode: f
│ │ │ -00058a80: 616c 7365 0a0a 2020 2d20 6e61 6d65 3a20  alse..  - name: 
│ │ │ -00058a90: 4469 7361 626c 6520 4e65 7477 6f72 6b20  Disable Network 
│ │ │ -00058aa0: 526f 7574 6572 2044 6973 636f 7665 7279  Router Discovery
│ │ │ -00058ab0: 2044 6165 6d6f 6e20 2872 6469 7363 2920   Daemon (rdisc) 
│ │ │ -00058ac0: 2d20 456e 7375 7265 2072 6469 7363 2e73  - Ensure rdisc.s
│ │ │ -00058ad0: 6572 7669 6365 2069 730a 2020 2020 2020  ervice is.      
│ │ │ -00058ae0: 4d61 736b 6564 0a20 2020 2061 6e73 6962  Masked.    ansib
│ │ │ -00058af0: 6c65 2e62 7569 6c74 696e 2e73 7973 7465  le.builtin.syste
│ │ │ -00058b00: 6d64 3a0a 2020 2020 2020 6e61 6d65 3a20  md:.      name: 
│ │ │ -00058b10: 7264 6973 632e 7365 7276 6963 650a 2020  rdisc.service.  
│ │ │ -00058b20: 2020 2020 7374 6174 653a 2073 746f 7070      state: stopp
│ │ │ -00058b30: 6564 0a20 2020 2020 2065 6e61 626c 6564  ed.      enabled
│ │ │ -00058b40: 3a20 6661 6c73 650a 2020 2020 2020 6d61  : false.      ma
│ │ │ -00058b50: 736b 6564 3a20 7472 7565 0a20 2020 2077  sked: true.    w
│ │ │ -00058b60: 6865 6e3a 2073 6572 7669 6365 5f65 7869  hen: service_exi
│ │ │ -00058b70: 7374 732e 7374 646f 7574 5f6c 696e 6573  sts.stdout_lines
│ │ │ -00058b80: 2069 7320 7365 6172 6368 2822 7264 6973   is search("rdis
│ │ │ -00058b90: 632e 7365 7276 6963 6522 2c20 6d75 6c74  c.service", mult
│ │ │ -00058ba0: 696c 696e 653d 5472 7565 290a 0a20 202d  iline=True)..  -
│ │ │ -00058bb0: 206e 616d 653a 2055 6e69 7420 536f 636b   name: Unit Sock
│ │ │ -00058bc0: 6574 2045 7869 7374 7320 2d20 7264 6973  et Exists - rdis
│ │ │ -00058bd0: 632e 736f 636b 6574 0a20 2020 2061 6e73  c.socket.    ans
│ │ │ -00058be0: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d  ible.builtin.com
│ │ │ -00058bf0: 6d61 6e64 3a20 7379 7374 656d 6374 6c20  mand: systemctl 
│ │ │ -00058c00: 2d71 206c 6973 742d 756e 6974 2d66 696c  -q list-unit-fil
│ │ │ -00058c10: 6573 2072 6469 7363 2e73 6f63 6b65 740a  es rdisc.socket.
│ │ │ -00058c20: 2020 2020 7265 6769 7374 6572 3a20 736f      register: so
│ │ │ -00058c30: 636b 6574 5f66 696c 655f 6578 6973 7473  cket_file_exists
│ │ │ -00058c40: 0a20 2020 2063 6861 6e67 6564 5f77 6865  .    changed_whe
│ │ │ -00058c50: 6e3a 2066 616c 7365 0a20 2020 2066 6169  n: false.    fai
│ │ │ -00058c60: 6c65 645f 7768 656e 3a20 736f 636b 6574  led_when: socket
│ │ │ -00058c70: 5f66 696c 655f 6578 6973 7473 2e72 6320  _file_exists.rc 
│ │ │ -00058c80: 6e6f 7420 696e 205b 302c 2031 5d0a 2020  not in [0, 1].  
│ │ │ -00058c90: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661    check_mode: fa
│ │ │ -00058ca0: 6c73 650a 0a20 202d 206e 616d 653a 2044  lse..  - name: D
│ │ │ -00058cb0: 6973 6162 6c65 204e 6574 776f 726b 2052  isable Network R
│ │ │ -00058cc0: 6f75 7465 7220 4469 7363 6f76 6572 7920  outer Discovery 
│ │ │ -00058cd0: 4461 656d 6f6e 2028 7264 6973 6329 202d  Daemon (rdisc) -
│ │ │ -00058ce0: 2044 6973 6162 6c65 2053 6f63 6b65 7420   Disable Socket 
│ │ │ -00058cf0: 7264 6973 630a 2020 2020 616e 7369 626c  rdisc.    ansibl
│ │ │ -00058d00: 652e 6275 696c 7469 6e2e 7379 7374 656d  e.builtin.system
│ │ │ -00058d10: 643a 0a20 2020 2020 206e 616d 653a 2072  d:.      name: r
│ │ │ -00058d20: 6469 7363 2e73 6f63 6b65 740a 2020 2020  disc.socket.    
│ │ │ -00058d30: 2020 656e 6162 6c65 643a 2066 616c 7365    enabled: false
│ │ │ -00058d40: 0a20 2020 2020 2073 7461 7465 3a20 7374  .      state: st
│ │ │ -00058d50: 6f70 7065 640a 2020 2020 2020 6d61 736b  opped.      mask
│ │ │ -00058d60: 6564 3a20 7472 7565 0a20 2020 2077 6865  ed: true.    whe
│ │ │ -00058d70: 6e3a 2073 6f63 6b65 745f 6669 6c65 5f65  n: socket_file_e
│ │ │ -00058d80: 7869 7374 732e 7374 646f 7574 5f6c 696e  xists.stdout_lin
│ │ │ -00058d90: 6573 2069 7320 7365 6172 6368 2822 7264  es is search("rd
│ │ │ -00058da0: 6973 632e 736f 636b 6574 222c 206d 756c  isc.socket", mul
│ │ │ -00058db0: 7469 6c69 6e65 3d54 7275 6529 0a20 2074  tiline=True).  t
│ │ │ -00058dc0: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -00058dd0: 302d 3533 2d41 432d 340a 2020 2d20 4e49  0-53-AC-4.  - NI
│ │ │ -00058de0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -00058df0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -00058e00: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ -00058e10: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ -00058e20: 290a 2020 2d20 6469 7361 626c 655f 7374  ).  - disable_st
│ │ │ -00058e30: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ -00058e40: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -00058e50: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -00058e60: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -00058e70: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -00058e80: 6565 6465 640a 2020 2d20 7365 7276 6963  eeded.  - servic
│ │ │ -00058e90: 655f 7264 6973 635f 6469 7361 626c 6564  e_rdisc_disabled
│ │ │ -00058ea0: 0a20 202d 2073 7065 6369 616c 5f73 6572  .  - special_ser
│ │ │ -00058eb0: 7669 6365 5f62 6c6f 636b 0a20 2077 6865  vice_block.  whe
│ │ │ -00058ec0: 6e3a 2027 226b 6572 6e65 6c22 2069 6e20  n: '"kernel" in 
│ │ │ -00058ed0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -00058ee0: 636b 6167 6573 270a 3c2f 636f 6465 3e3c  ckages'.<
│ │ │ +000582c0: 6d65 6469 6174 696f 6e20 416e 7369 626c  mediation Ansibl
│ │ │ +000582d0: 6520 736e 6970 7065 7420 e287 b23c 2f61  e snippet ...
low< │ │ │ +00058380: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +000583d0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
- n
│ │ │ +00058410: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ +00058420: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ +00058430: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ +00058440: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ +00058450: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +00058460: 542d 3830 302d 3533 2d41 432d 340a 2020  T-800-53-AC-4.  
│ │ │ +00058470: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +00058480: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ +00058490: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ +000584a0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +000584b0: 2d37 2862 290a 2020 2d20 6469 7361 626c  -7(b).  - disabl
│ │ │ +000584c0: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ +000584d0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +000584e0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +000584f0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +00058500: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ +00058510: 6f74 5f6e 6565 6465 640a 2020 2d20 7365  ot_needed.  - se
│ │ │ +00058520: 7276 6963 655f 7264 6973 635f 6469 7361  rvice_rdisc_disa
│ │ │ +00058530: 626c 6564 0a0a 2d20 6e61 6d65 3a20 4469  bled..- name: Di
│ │ │ +00058540: 7361 626c 6520 4e65 7477 6f72 6b20 526f  sable Network Ro
│ │ │ +00058550: 7574 6572 2044 6973 636f 7665 7279 2044  uter Discovery D
│ │ │ +00058560: 6165 6d6f 6e20 2872 6469 7363 2920 2d20  aemon (rdisc) - 
│ │ │ +00058570: 4469 7361 626c 6520 7365 7276 6963 6520  Disable service 
│ │ │ +00058580: 7264 6973 630a 2020 626c 6f63 6b3a 0a0a  rdisc.  block:..
│ │ │ +00058590: 2020 2d20 6e61 6d65 3a20 4469 7361 626c    - name: Disabl
│ │ │ +000585a0: 6520 4e65 7477 6f72 6b20 526f 7574 6572  e Network Router
│ │ │ +000585b0: 2044 6973 636f 7665 7279 2044 6165 6d6f   Discovery Daemo
│ │ │ +000585c0: 6e20 2872 6469 7363 2920 2d20 436f 6c6c  n (rdisc) - Coll
│ │ │ +000585d0: 6563 7420 7379 7374 656d 6420 5365 7276  ect systemd Serv
│ │ │ +000585e0: 6963 6573 0a20 2020 2020 2050 7265 7365  ices.      Prese
│ │ │ +000585f0: 6e74 2069 6e20 7468 6520 5379 7374 656d  nt in the System
│ │ │ +00058600: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ +00058610: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 7379  ltin.command: sy
│ │ │ +00058620: 7374 656d 6374 6c20 2d71 206c 6973 742d  stemctl -q list-
│ │ │ +00058630: 756e 6974 2d66 696c 6573 202d 2d74 7970  unit-files --typ
│ │ │ +00058640: 6520 7365 7276 6963 650a 2020 2020 7265  e service.    re
│ │ │ +00058650: 6769 7374 6572 3a20 7365 7276 6963 655f  gister: service_
│ │ │ +00058660: 6578 6973 7473 0a20 2020 2063 6861 6e67  exists.    chang
│ │ │ +00058670: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ +00058680: 2020 2066 6169 6c65 645f 7768 656e 3a20     failed_when: 
│ │ │ +00058690: 7365 7276 6963 655f 6578 6973 7473 2e72  service_exists.r
│ │ │ +000586a0: 6320 6e6f 7420 696e 205b 302c 2031 5d0a  c not in [0, 1].
│ │ │ +000586b0: 2020 2020 6368 6563 6b5f 6d6f 6465 3a20      check_mode: 
│ │ │ +000586c0: 6661 6c73 650a 0a20 202d 206e 616d 653a  false..  - name:
│ │ │ +000586d0: 2044 6973 6162 6c65 204e 6574 776f 726b   Disable Network
│ │ │ +000586e0: 2052 6f75 7465 7220 4469 7363 6f76 6572   Router Discover
│ │ │ +000586f0: 7920 4461 656d 6f6e 2028 7264 6973 6329  y Daemon (rdisc)
│ │ │ +00058700: 202d 2045 6e73 7572 6520 7264 6973 632e   - Ensure rdisc.
│ │ │ +00058710: 7365 7276 6963 6520 6973 0a20 2020 2020  service is.     
│ │ │ +00058720: 204d 6173 6b65 640a 2020 2020 616e 7369   Masked.    ansi
│ │ │ +00058730: 626c 652e 6275 696c 7469 6e2e 7379 7374  ble.builtin.syst
│ │ │ +00058740: 656d 643a 0a20 2020 2020 206e 616d 653a  emd:.      name:
│ │ │ +00058750: 2072 6469 7363 2e73 6572 7669 6365 0a20   rdisc.service. 
│ │ │ +00058760: 2020 2020 2073 7461 7465 3a20 7374 6f70       state: stop
│ │ │ +00058770: 7065 640a 2020 2020 2020 656e 6162 6c65  ped.      enable
│ │ │ +00058780: 643a 2066 616c 7365 0a20 2020 2020 206d  d: false.      m
│ │ │ +00058790: 6173 6b65 643a 2074 7275 650a 2020 2020  asked: true.    
│ │ │ +000587a0: 7768 656e 3a20 7365 7276 6963 655f 6578  when: service_ex
│ │ │ +000587b0: 6973 7473 2e73 7464 6f75 745f 6c69 6e65  ists.stdout_line
│ │ │ +000587c0: 7320 6973 2073 6561 7263 6828 2272 6469  s is search("rdi
│ │ │ +000587d0: 7363 2e73 6572 7669 6365 222c 206d 756c  sc.service", mul
│ │ │ +000587e0: 7469 6c69 6e65 3d54 7275 6529 0a0a 2020  tiline=True)..  
│ │ │ +000587f0: 2d20 6e61 6d65 3a20 556e 6974 2053 6f63  - name: Unit Soc
│ │ │ +00058800: 6b65 7420 4578 6973 7473 202d 2072 6469  ket Exists - rdi
│ │ │ +00058810: 7363 2e73 6f63 6b65 740a 2020 2020 616e  sc.socket.    an
│ │ │ +00058820: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ +00058830: 6d6d 616e 643a 2073 7973 7465 6d63 746c  mmand: systemctl
│ │ │ +00058840: 202d 7120 6c69 7374 2d75 6e69 742d 6669   -q list-unit-fi
│ │ │ +00058850: 6c65 7320 7264 6973 632e 736f 636b 6574  les rdisc.socket
│ │ │ +00058860: 0a20 2020 2072 6567 6973 7465 723a 2073  .    register: s
│ │ │ +00058870: 6f63 6b65 745f 6669 6c65 5f65 7869 7374  ocket_file_exist
│ │ │ +00058880: 730a 2020 2020 6368 616e 6765 645f 7768  s.    changed_wh
│ │ │ +00058890: 656e 3a20 6661 6c73 650a 2020 2020 6661  en: false.    fa
│ │ │ +000588a0: 696c 6564 5f77 6865 6e3a 2073 6f63 6b65  iled_when: socke
│ │ │ +000588b0: 745f 6669 6c65 5f65 7869 7374 732e 7263  t_file_exists.rc
│ │ │ +000588c0: 206e 6f74 2069 6e20 5b30 2c20 315d 0a20   not in [0, 1]. 
│ │ │ +000588d0: 2020 2063 6865 636b 5f6d 6f64 653a 2066     check_mode: f
│ │ │ +000588e0: 616c 7365 0a0a 2020 2d20 6e61 6d65 3a20  alse..  - name: 
│ │ │ +000588f0: 4469 7361 626c 6520 4e65 7477 6f72 6b20  Disable Network 
│ │ │ +00058900: 526f 7574 6572 2044 6973 636f 7665 7279  Router Discovery
│ │ │ +00058910: 2044 6165 6d6f 6e20 2872 6469 7363 2920   Daemon (rdisc) 
│ │ │ +00058920: 2d20 4469 7361 626c 6520 536f 636b 6574  - Disable Socket
│ │ │ +00058930: 2072 6469 7363 0a20 2020 2061 6e73 6962   rdisc.    ansib
│ │ │ +00058940: 6c65 2e62 7569 6c74 696e 2e73 7973 7465  le.builtin.syste
│ │ │ +00058950: 6d64 3a0a 2020 2020 2020 6e61 6d65 3a20  md:.      name: 
│ │ │ +00058960: 7264 6973 632e 736f 636b 6574 0a20 2020  rdisc.socket.   
│ │ │ +00058970: 2020 2065 6e61 626c 6564 3a20 6661 6c73     enabled: fals
│ │ │ +00058980: 650a 2020 2020 2020 7374 6174 653a 2073  e.      state: s
│ │ │ +00058990: 746f 7070 6564 0a20 2020 2020 206d 6173  topped.      mas
│ │ │ +000589a0: 6b65 643a 2074 7275 650a 2020 2020 7768  ked: true.    wh
│ │ │ +000589b0: 656e 3a20 736f 636b 6574 5f66 696c 655f  en: socket_file_
│ │ │ +000589c0: 6578 6973 7473 2e73 7464 6f75 745f 6c69  exists.stdout_li
│ │ │ +000589d0: 6e65 7320 6973 2073 6561 7263 6828 2272  nes is search("r
│ │ │ +000589e0: 6469 7363 2e73 6f63 6b65 7422 2c20 6d75  disc.socket", mu
│ │ │ +000589f0: 6c74 696c 696e 653d 5472 7565 290a 2020  ltiline=True).  
│ │ │ +00058a00: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +00058a10: 3030 2d35 332d 4143 2d34 0a20 202d 204e  00-53-AC-4.  - N
│ │ │ +00058a20: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +00058a30: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +00058a40: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ +00058a50: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +00058a60: 6229 0a20 202d 2064 6973 6162 6c65 5f73  b).  - disable_s
│ │ │ +00058a70: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ +00058a80: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +00058a90: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +00058aa0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +00058ab0: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +00058ac0: 6e65 6564 6564 0a20 202d 2073 6572 7669  needed.  - servi
│ │ │ +00058ad0: 6365 5f72 6469 7363 5f64 6973 6162 6c65  ce_rdisc_disable
│ │ │ +00058ae0: 640a 2020 2d20 7370 6563 6961 6c5f 7365  d.  - special_se
│ │ │ +00058af0: 7276 6963 655f 626c 6f63 6b0a 2020 7768  rvice_block.  wh
│ │ │ +00058b00: 656e 3a20 2722 6b65 726e 656c 2220 696e  en: '"kernel" in
│ │ │ +00058b10: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +00058b20: 6163 6b61 6765 7327 0a3c 2f63 6f64 653e  ackages'.
│ │ │ +00058b30: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remediat │ │ │ +00058be0: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ +00058bf0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
< │ │ │ +00058c70: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr> │ │ │ +00058cb0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 enable
Co │ │ │ +00058360: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +00058390: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +000583b0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +000583c0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +000583e0: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +000583f0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexit │ │ │ +00058c80: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ +00058ca0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ +00058cd0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ +00058cf0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
<
│ │ │ +00058d20: 636f 6465 3e69 6e63 6c75 6465 2064 6973  code>include dis
│ │ │ +00058d30: 6162 6c65 5f72 6469 7363 0a0a 636c 6173  able_rdisc..clas
│ │ │ +00058d40: 7320 6469 7361 626c 655f 7264 6973 6320  s disable_rdisc 
│ │ │ +00058d50: 7b0a 2020 7365 7276 6963 6520 7b27 7264  {.  service {'rd
│ │ │ +00058d60: 6973 6327 3a0a 2020 2020 656e 6162 6c65  isc':.    enable
│ │ │ +00058d70: 203d 2667 743b 2066 616c 7365 2c0a 2020   => false,.  
│ │ │ +00058d80: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ +00058d90: 7374 6f70 7065 6427 2c0a 2020 7d0a 7d0a  stopped',.  }.}.
│ │ │ +00058da0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
R │ │ │ +00058e50: 656d 6564 6961 7469 6f6e 204f 5342 7569 emediation OSBui │ │ │ +00058e60: 6c64 2042 6c75 6570 7269 6e74 2073 6e69 ld Blueprint sni │ │ │ +00058e70: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +00058e80: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
< │ │ │ +00058eb0: 7072 653e 3c63 6f64 653e 0a5b 6375 7374 pre>.[cust │ │ │ +00058ec0: 6f6d 697a 6174 696f 6e73 2e73 6572 7669 omizations.servi │ │ │ +00058ed0: 6365 735d 0a6d 6173 6b65 6420 3d20 5b22 ces].masked = [" │ │ │ +00058ee0: 7264 6973 6322 5d0a 3c2f 636f 6465 3e3c rdisc"].< │ │ │ 00058ef0: 2f70 7265 3e3c 2f64 6976 3e3c 2f64 6976 /pre>
│ │ │ 00058f20: 3c2f 7472 3e3c 7472 2064 6174 612d 7474 Remediation │ │ │ -0005a200: 4f53 4275 696c 6420 426c 7565 7072 696e OSBuild Blueprin │ │ │ -0005a210: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
.
│ │ │ -0005a260: 5b63 7573 746f 6d69 7a61 7469 6f6e 732e  [customizations.
│ │ │ -0005a270: 7365 7276 6963 6573 5d0a 6d61 736b 6564  services].masked
│ │ │ -0005a280: 203d 205b 2261 7464 225d 0a3c 2f63 6f64   = ["atd"].
Remedi │ │ │ -0005a340: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ -0005a350: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -0005a360: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
< │ │ │ -0005a390: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -0005a3a0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -0005a3b0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -0005a3c0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -0005a3d0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -0005a3e0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -0005a3f0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -0005a430: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -0005a440: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -0005a460: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ -0005a470: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
include d
│ │ │ -0005a490: 6973 6162 6c65 5f61 7464 0a0a 636c 6173  isable_atd..clas
│ │ │ -0005a4a0: 7320 6469 7361 626c 655f 6174 6420 7b0a  s disable_atd {.
│ │ │ -0005a4b0: 2020 7365 7276 6963 6520 7b27 6174 6427    service {'atd'
│ │ │ -0005a4c0: 3a0a 2020 2020 656e 6162 6c65 203d 2667  :.    enable =&g
│ │ │ -0005a4d0: 743b 2066 616c 7365 2c0a 2020 2020 656e  t; false,.    en
│ │ │ -0005a4e0: 7375 7265 203d 2667 743b 2027 7374 6f70  sure => 'stop
│ │ │ -0005a4f0: 7065 6427 2c0a 2020 7d0a 7d0a 3c2f 636f  ped',.  }.}.
< │ │ │ -0005a510: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -0005a520: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -0005a530: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -0005a540: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -0005a550: 6435 3722 2074 6162 696e 6465 783d 2230 d57" tabindex="0 │ │ │ -0005a560: 2220 726f 6c65 3d22 6275 7474 6f6e 2220 " role="button" │ │ │ -0005a570: 6172 6961 2d65 7870 616e 6465 643d 2266 aria-expanded="f │ │ │ -0005a580: 616c 7365 2220 7469 746c 653d 2241 6374 alse" title="Act │ │ │ -0005a590: 6976 6174 6520 746f 2072 6576 6561 6c22 ivate to reveal" │ │ │ -0005a5a0: 2068 7265 663d 2223 2122 3e52 656d 6564 href="#!">Remed │ │ │ -0005a5b0: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ -0005a5c0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
│ │ │ -0005a670: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -0005a690: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -0005a6c0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -0005a650: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -0005a660: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -0005a680: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -0005a6a0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -0005a6b0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -0005a6f0: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -0005a700: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -0005a710: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -0005a720: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -0005a730: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -0005a740: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ -0005a750: 3030 2d35 332d 434d 2d36 2861 290a 2020 00-53-CM-6(a). │ │ │ -0005a760: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -0005a770: 2d37 2861 290a 2020 2d20 4e49 5354 2d38 -7(a). - NIST-8 │ │ │ -0005a780: 3030 2d35 332d 434d 2d37 2862 290a 2020 00-53-CM-7(b). │ │ │ -0005a790: 2d20 6469 7361 626c 655f 7374 7261 7465 - disable_strate │ │ │ -0005a7a0: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c gy. - low_compl │ │ │ -0005a7b0: 6578 6974 790a 2020 2d20 6c6f 775f 6469 exity. - low_di │ │ │ -0005a7c0: 7372 7570 7469 6f6e 0a20 202d 206d 6564 sruption. - med │ │ │ -0005a7d0: 6975 6d5f 7365 7665 7269 7479 0a20 202d ium_severity. - │ │ │ -0005a7e0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ -0005a7f0: 640a 2020 2d20 7365 7276 6963 655f 6174 d. - service_at │ │ │ -0005a800: 645f 6469 7361 626c 6564 0a0a 2d20 6e61 d_disabled..- na │ │ │ -0005a810: 6d65 3a20 4469 7361 626c 6520 4174 2053 me: Disable At S │ │ │ -0005a820: 6572 7669 6365 2028 6174 6429 202d 2044 ervice (atd) - D │ │ │ -0005a830: 6973 6162 6c65 2073 6572 7669 6365 2061 isable service a │ │ │ -0005a840: 7464 0a20 2062 6c6f 636b 3a0a 0a20 202d td. block:.. - │ │ │ -0005a850: 206e 616d 653a 2044 6973 6162 6c65 2041 name: Disable A │ │ │ -0005a860: 7420 5365 7276 6963 6520 2861 7464 2920 t Service (atd) │ │ │ -0005a870: 2d20 436f 6c6c 6563 7420 7379 7374 656d - Collect system │ │ │ -0005a880: 6420 5365 7276 6963 6573 2050 7265 7365 d Services Prese │ │ │ -0005a890: 6e74 2069 6e20 7468 6520 5379 7374 656d nt in the System │ │ │ -0005a8a0: 0a20 2020 2061 6e73 6962 6c65 2e62 7569 . ansible.bui │ │ │ -0005a8b0: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 7379 ltin.command: sy │ │ │ -0005a8c0: 7374 656d 6374 6c20 2d71 206c 6973 742d stemctl -q list- │ │ │ -0005a8d0: 756e 6974 2d66 696c 6573 202d 2d74 7970 unit-files --typ │ │ │ -0005a8e0: 6520 7365 7276 6963 650a 2020 2020 7265 e service. re │ │ │ -0005a8f0: 6769 7374 6572 3a20 7365 7276 6963 655f gister: service_ │ │ │ -0005a900: 6578 6973 7473 0a20 2020 2063 6861 6e67 exists. chang │ │ │ -0005a910: 6564 5f77 6865 6e3a 2066 616c 7365 0a20 ed_when: false. │ │ │ -0005a920: 2020 2066 6169 6c65 645f 7768 656e 3a20 failed_when: │ │ │ -0005a930: 7365 7276 6963 655f 6578 6973 7473 2e72 service_exists.r │ │ │ -0005a940: 6320 6e6f 7420 696e 205b 302c 2031 5d0a c not in [0, 1]. │ │ │ -0005a950: 2020 2020 6368 6563 6b5f 6d6f 6465 3a20 check_mode: │ │ │ -0005a960: 6661 6c73 650a 0a20 202d 206e 616d 653a false.. - name: │ │ │ -0005a970: 2044 6973 6162 6c65 2041 7420 5365 7276 Disable At Serv │ │ │ -0005a980: 6963 6520 2861 7464 2920 2d20 456e 7375 ice (atd) - Ensu │ │ │ -0005a990: 7265 2061 7464 2e73 6572 7669 6365 2069 re atd.service i │ │ │ -0005a9a0: 7320 4d61 736b 6564 0a20 2020 2061 6e73 s Masked. ans │ │ │ -0005a9b0: 6962 6c65 2e62 7569 6c74 696e 2e73 7973 ible.builtin.sys │ │ │ -0005a9c0: 7465 6d64 3a0a 2020 2020 2020 6e61 6d65 temd:. name │ │ │ -0005a9d0: 3a20 6174 642e 7365 7276 6963 650a 2020 : atd.service. │ │ │ -0005a9e0: 2020 2020 7374 6174 653a 2073 746f 7070 state: stopp │ │ │ -0005a9f0: 6564 0a20 2020 2020 2065 6e61 626c 6564 ed. enabled │ │ │ -0005aa00: 3a20 6661 6c73 650a 2020 2020 2020 6d61 : false. ma │ │ │ -0005aa10: 736b 6564 3a20 7472 7565 0a20 2020 2077 sked: true. w │ │ │ -0005aa20: 6865 6e3a 2073 6572 7669 6365 5f65 7869 hen: service_exi │ │ │ -0005aa30: 7374 732e 7374 646f 7574 5f6c 696e 6573 sts.stdout_lines │ │ │ -0005aa40: 2069 7320 7365 6172 6368 2822 6174 642e is search("atd. │ │ │ -0005aa50: 7365 7276 6963 6522 2c20 6d75 6c74 696c service", multil │ │ │ -0005aa60: 696e 653d 5472 7565 290a 0a20 202d 206e ine=True).. - n │ │ │ -0005aa70: 616d 653a 2055 6e69 7420 536f 636b 6574 ame: Unit Socket │ │ │ -0005aa80: 2045 7869 7374 7320 2d20 6174 642e 736f Exists - atd.so │ │ │ -0005aa90: 636b 6574 0a20 2020 2061 6e73 6962 6c65 cket. ansible │ │ │ -0005aaa0: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64 .builtin.command │ │ │ -0005aab0: 3a20 7379 7374 656d 6374 6c20 2d71 206c : systemctl -q l │ │ │ -0005aac0: 6973 742d 756e 6974 2d66 696c 6573 2061 ist-unit-files a │ │ │ -0005aad0: 7464 2e73 6f63 6b65 740a 2020 2020 7265 td.socket. re │ │ │ -0005aae0: 6769 7374 6572 3a20 736f 636b 6574 5f66 gister: socket_f │ │ │ -0005aaf0: 696c 655f 6578 6973 7473 0a20 2020 2063 ile_exists. c │ │ │ -0005ab00: 6861 6e67 6564 5f77 6865 6e3a 2066 616c hanged_when: fal │ │ │ -0005ab10: 7365 0a20 2020 2066 6169 6c65 645f 7768 se. failed_wh │ │ │ -0005ab20: 656e 3a20 736f 636b 6574 5f66 696c 655f en: socket_file_ │ │ │ -0005ab30: 6578 6973 7473 2e72 6320 6e6f 7420 696e exists.rc not in │ │ │ -0005ab40: 205b 302c 2031 5d0a 2020 2020 6368 6563 [0, 1]. chec │ │ │ -0005ab50: 6b5f 6d6f 6465 3a20 6661 6c73 650a 0a20 k_mode: false.. │ │ │ -0005ab60: 202d 206e 616d 653a 2044 6973 6162 6c65 - name: Disable │ │ │ -0005ab70: 2041 7420 5365 7276 6963 6520 2861 7464 At Service (atd │ │ │ -0005ab80: 2920 2d20 4469 7361 626c 6520 536f 636b ) - Disable Sock │ │ │ -0005ab90: 6574 2061 7464 0a20 2020 2061 6e73 6962 et atd. ansib │ │ │ -0005aba0: 6c65 2e62 7569 6c74 696e 2e73 7973 7465 le.builtin.syste │ │ │ -0005abb0: 6d64 3a0a 2020 2020 2020 6e61 6d65 3a20 md:. name: │ │ │ -0005abc0: 6174 642e 736f 636b 6574 0a20 2020 2020 atd.socket. │ │ │ -0005abd0: 2065 6e61 626c 6564 3a20 6661 6c73 650a enabled: false. │ │ │ -0005abe0: 2020 2020 2020 7374 6174 653a 2073 746f state: sto │ │ │ -0005abf0: 7070 6564 0a20 2020 2020 206d 6173 6b65 pped. maske │ │ │ -0005ac00: 643a 2074 7275 650a 2020 2020 7768 656e d: true. when │ │ │ -0005ac10: 3a20 736f 636b 6574 5f66 696c 655f 6578 : socket_file_ex │ │ │ -0005ac20: 6973 7473 2e73 7464 6f75 745f 6c69 6e65 ists.stdout_line │ │ │ -0005ac30: 7320 6973 2073 6561 7263 6828 2261 7464 s is search("atd │ │ │ -0005ac40: 2e73 6f63 6b65 7422 2c20 6d75 6c74 696c .socket", multil │ │ │ -0005ac50: 696e 653d 5472 7565 290a 2020 7461 6773 ine=True). tags │ │ │ -0005ac60: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35 :. - NIST-800-5 │ │ │ -0005ac70: 332d 434d 2d36 2861 290a 2020 2d20 4e49 3-CM-6(a). - NI │ │ │ -0005ac80: 5354 2d38 3030 2d35 332d 434d 2d37 2861 ST-800-53-CM-7(a │ │ │ -0005ac90: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -0005aca0: 332d 434d 2d37 2862 290a 2020 2d20 6469 3-CM-7(b). - di │ │ │ -0005acb0: 7361 626c 655f 7374 7261 7465 6779 0a20 sable_strategy. │ │ │ -0005acc0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ -0005acd0: 790a 2020 2d20 6c6f 775f 6469 7372 7570 y. - low_disrup │ │ │ -0005ace0: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f tion. - medium_ │ │ │ -0005acf0: 7365 7665 7269 7479 0a20 202d 206e 6f5f severity. - no_ │ │ │ -0005ad00: 7265 626f 6f74 5f6e 6565 6465 640a 2020 reboot_needed. │ │ │ -0005ad10: 2d20 7365 7276 6963 655f 6174 645f 6469 - service_atd_di │ │ │ -0005ad20: 7361 626c 6564 0a20 202d 2073 7065 6369 sabled. - speci │ │ │ -0005ad30: 616c 5f73 6572 7669 6365 5f62 6c6f 636b al_service_block │ │ │ -0005ad40: 0a20 2077 6865 6e3a 2027 226b 6572 6e65 . when: '"kerne │ │ │ -0005ad50: 6c22 2069 6e20 616e 7369 626c 655f 6661 l" in ansible_fa │ │ │ -0005ad60: 6374 732e 7061 636b 6167 6573 270a 3c2f cts.packages'.
│ │ │ +0005a290: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +0005a2b0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +0005a300: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +0005a330: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +0005a2a0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +0005a2c0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +0005a310: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +0005a320: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
- name: Gathe
│ │ │ +0005a350: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ +0005a360: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ +0005a370: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ +0005a380: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ +0005a390: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +0005a3a0: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ +0005a3b0: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ +0005a3c0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +0005a3d0: 4d2d 3728 6229 0a20 202d 2064 6973 6162  M-7(b).  - disab
│ │ │ +0005a3e0: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ +0005a3f0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +0005a400: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +0005a410: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ +0005a420: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ +0005a430: 6f6f 745f 6e65 6564 6564 0a20 202d 2073  oot_needed.  - s
│ │ │ +0005a440: 6572 7669 6365 5f61 7464 5f64 6973 6162  ervice_atd_disab
│ │ │ +0005a450: 6c65 640a 0a2d 206e 616d 653a 2044 6973  led..- name: Dis
│ │ │ +0005a460: 6162 6c65 2041 7420 5365 7276 6963 6520  able At Service 
│ │ │ +0005a470: 2861 7464 2920 2d20 4469 7361 626c 6520  (atd) - Disable 
│ │ │ +0005a480: 7365 7276 6963 6520 6174 640a 2020 626c  service atd.  bl
│ │ │ +0005a490: 6f63 6b3a 0a0a 2020 2d20 6e61 6d65 3a20  ock:..  - name: 
│ │ │ +0005a4a0: 4469 7361 626c 6520 4174 2053 6572 7669  Disable At Servi
│ │ │ +0005a4b0: 6365 2028 6174 6429 202d 2043 6f6c 6c65  ce (atd) - Colle
│ │ │ +0005a4c0: 6374 2073 7973 7465 6d64 2053 6572 7669  ct systemd Servi
│ │ │ +0005a4d0: 6365 7320 5072 6573 656e 7420 696e 2074  ces Present in t
│ │ │ +0005a4e0: 6865 2053 7973 7465 6d0a 2020 2020 616e  he System.    an
│ │ │ +0005a4f0: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ +0005a500: 6d6d 616e 643a 2073 7973 7465 6d63 746c  mmand: systemctl
│ │ │ +0005a510: 202d 7120 6c69 7374 2d75 6e69 742d 6669   -q list-unit-fi
│ │ │ +0005a520: 6c65 7320 2d2d 7479 7065 2073 6572 7669  les --type servi
│ │ │ +0005a530: 6365 0a20 2020 2072 6567 6973 7465 723a  ce.    register:
│ │ │ +0005a540: 2073 6572 7669 6365 5f65 7869 7374 730a   service_exists.
│ │ │ +0005a550: 2020 2020 6368 616e 6765 645f 7768 656e      changed_when
│ │ │ +0005a560: 3a20 6661 6c73 650a 2020 2020 6661 696c  : false.    fail
│ │ │ +0005a570: 6564 5f77 6865 6e3a 2073 6572 7669 6365  ed_when: service
│ │ │ +0005a580: 5f65 7869 7374 732e 7263 206e 6f74 2069  _exists.rc not i
│ │ │ +0005a590: 6e20 5b30 2c20 315d 0a20 2020 2063 6865  n [0, 1].    che
│ │ │ +0005a5a0: 636b 5f6d 6f64 653a 2066 616c 7365 0a0a  ck_mode: false..
│ │ │ +0005a5b0: 2020 2d20 6e61 6d65 3a20 4469 7361 626c    - name: Disabl
│ │ │ +0005a5c0: 6520 4174 2053 6572 7669 6365 2028 6174  e At Service (at
│ │ │ +0005a5d0: 6429 202d 2045 6e73 7572 6520 6174 642e  d) - Ensure atd.
│ │ │ +0005a5e0: 7365 7276 6963 6520 6973 204d 6173 6b65  service is Maske
│ │ │ +0005a5f0: 640a 2020 2020 616e 7369 626c 652e 6275  d.    ansible.bu
│ │ │ +0005a600: 696c 7469 6e2e 7379 7374 656d 643a 0a20  iltin.systemd:. 
│ │ │ +0005a610: 2020 2020 206e 616d 653a 2061 7464 2e73       name: atd.s
│ │ │ +0005a620: 6572 7669 6365 0a20 2020 2020 2073 7461  ervice.      sta
│ │ │ +0005a630: 7465 3a20 7374 6f70 7065 640a 2020 2020  te: stopped.    
│ │ │ +0005a640: 2020 656e 6162 6c65 643a 2066 616c 7365    enabled: false
│ │ │ +0005a650: 0a20 2020 2020 206d 6173 6b65 643a 2074  .      masked: t
│ │ │ +0005a660: 7275 650a 2020 2020 7768 656e 3a20 7365  rue.    when: se
│ │ │ +0005a670: 7276 6963 655f 6578 6973 7473 2e73 7464  rvice_exists.std
│ │ │ +0005a680: 6f75 745f 6c69 6e65 7320 6973 2073 6561  out_lines is sea
│ │ │ +0005a690: 7263 6828 2261 7464 2e73 6572 7669 6365  rch("atd.service
│ │ │ +0005a6a0: 222c 206d 756c 7469 6c69 6e65 3d54 7275  ", multiline=Tru
│ │ │ +0005a6b0: 6529 0a0a 2020 2d20 6e61 6d65 3a20 556e  e)..  - name: Un
│ │ │ +0005a6c0: 6974 2053 6f63 6b65 7420 4578 6973 7473  it Socket Exists
│ │ │ +0005a6d0: 202d 2061 7464 2e73 6f63 6b65 740a 2020   - atd.socket.  
│ │ │ +0005a6e0: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +0005a6f0: 6e2e 636f 6d6d 616e 643a 2073 7973 7465  n.command: syste
│ │ │ +0005a700: 6d63 746c 202d 7120 6c69 7374 2d75 6e69  mctl -q list-uni
│ │ │ +0005a710: 742d 6669 6c65 7320 6174 642e 736f 636b  t-files atd.sock
│ │ │ +0005a720: 6574 0a20 2020 2072 6567 6973 7465 723a  et.    register:
│ │ │ +0005a730: 2073 6f63 6b65 745f 6669 6c65 5f65 7869   socket_file_exi
│ │ │ +0005a740: 7374 730a 2020 2020 6368 616e 6765 645f  sts.    changed_
│ │ │ +0005a750: 7768 656e 3a20 6661 6c73 650a 2020 2020  when: false.    
│ │ │ +0005a760: 6661 696c 6564 5f77 6865 6e3a 2073 6f63  failed_when: soc
│ │ │ +0005a770: 6b65 745f 6669 6c65 5f65 7869 7374 732e  ket_file_exists.
│ │ │ +0005a780: 7263 206e 6f74 2069 6e20 5b30 2c20 315d  rc not in [0, 1]
│ │ │ +0005a790: 0a20 2020 2063 6865 636b 5f6d 6f64 653a  .    check_mode:
│ │ │ +0005a7a0: 2066 616c 7365 0a0a 2020 2d20 6e61 6d65   false..  - name
│ │ │ +0005a7b0: 3a20 4469 7361 626c 6520 4174 2053 6572  : Disable At Ser
│ │ │ +0005a7c0: 7669 6365 2028 6174 6429 202d 2044 6973  vice (atd) - Dis
│ │ │ +0005a7d0: 6162 6c65 2053 6f63 6b65 7420 6174 640a  able Socket atd.
│ │ │ +0005a7e0: 2020 2020 616e 7369 626c 652e 6275 696c      ansible.buil
│ │ │ +0005a7f0: 7469 6e2e 7379 7374 656d 643a 0a20 2020  tin.systemd:.   
│ │ │ +0005a800: 2020 206e 616d 653a 2061 7464 2e73 6f63     name: atd.soc
│ │ │ +0005a810: 6b65 740a 2020 2020 2020 656e 6162 6c65  ket.      enable
│ │ │ +0005a820: 643a 2066 616c 7365 0a20 2020 2020 2073  d: false.      s
│ │ │ +0005a830: 7461 7465 3a20 7374 6f70 7065 640a 2020  tate: stopped.  
│ │ │ +0005a840: 2020 2020 6d61 736b 6564 3a20 7472 7565      masked: true
│ │ │ +0005a850: 0a20 2020 2077 6865 6e3a 2073 6f63 6b65  .    when: socke
│ │ │ +0005a860: 745f 6669 6c65 5f65 7869 7374 732e 7374  t_file_exists.st
│ │ │ +0005a870: 646f 7574 5f6c 696e 6573 2069 7320 7365  dout_lines is se
│ │ │ +0005a880: 6172 6368 2822 6174 642e 736f 636b 6574  arch("atd.socket
│ │ │ +0005a890: 222c 206d 756c 7469 6c69 6e65 3d54 7275  ", multiline=Tru
│ │ │ +0005a8a0: 6529 0a20 2074 6167 733a 0a20 202d 204e  e).  tags:.  - N
│ │ │ +0005a8b0: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +0005a8c0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +0005a8d0: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ +0005a8e0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +0005a8f0: 6229 0a20 202d 2064 6973 6162 6c65 5f73  b).  - disable_s
│ │ │ +0005a900: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ +0005a910: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +0005a920: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +0005a930: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +0005a940: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +0005a950: 6e65 6564 6564 0a20 202d 2073 6572 7669  needed.  - servi
│ │ │ +0005a960: 6365 5f61 7464 5f64 6973 6162 6c65 640a  ce_atd_disabled.
│ │ │ +0005a970: 2020 2d20 7370 6563 6961 6c5f 7365 7276    - special_serv
│ │ │ +0005a980: 6963 655f 626c 6f63 6b0a 2020 7768 656e  ice_block.  when
│ │ │ +0005a990: 3a20 2722 6b65 726e 656c 2220 696e 2061  : '"kernel" in a
│ │ │ +0005a9a0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +0005a9b0: 6b61 6765 7327 0a3c 2f63 6f64 653e 3c2f  kages'.
Remediatio │ │ │ +0005aa70: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ +0005aa80: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity: │ │ │ +0005ab10: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +0005ab30: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +0005ab50: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +0005ab80: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +0005ab90: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ +0005aba0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
include disab
│ │ │ +0005abc0: 6c65 5f61 7464 0a0a 636c 6173 7320 6469  le_atd..class di
│ │ │ +0005abd0: 7361 626c 655f 6174 6420 7b0a 2020 7365  sable_atd {.  se
│ │ │ +0005abe0: 7276 6963 6520 7b27 6174 6427 3a0a 2020  rvice {'atd':.  
│ │ │ +0005abf0: 2020 656e 6162 6c65 203d 2667 743b 2066    enable => f
│ │ │ +0005ac00: 616c 7365 2c0a 2020 2020 656e 7375 7265  alse,.    ensure
│ │ │ +0005ac10: 203d 2667 743b 2027 7374 6f70 7065 6427   => 'stopped'
│ │ │ +0005ac20: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ +0005ac30: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediati │ │ │ +0005ace0: 6f6e 204f 5342 7569 6c64 2042 6c75 6570 on OSBuild Bluep │ │ │ +0005acf0: 7269 6e74 2073 6e69 7070 6574 20e2 87b2 rint snippet ... │ │ │ +0005ad00: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
.[customizatio
│ │ │ +0005ad50: 6e73 2e73 6572 7669 6365 735d 0a6d 6173  ns.services].mas
│ │ │ +0005ad60: 6b65 6420 3d20 5b22 6174 6422 5d0a 3c2f  ked = ["atd"].
false, │ │ │ │ - ensure => 'stopped', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -1275,14 +1258,31 @@ │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_autofs_disabled │ │ │ │ - special_service_block │ │ │ │ when: ( "autofs" in ansible_facts.packages and "kernel" in ansible_facts.packages │ │ │ │ ) │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include disable_autofs │ │ │ │ + │ │ │ │ +class disable_autofs { │ │ │ │ + service {'autofs': │ │ │ │ + enable => false, │ │ │ │ + ensure => 'stopped', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +masked = ["autofs"] │ │ │ │ Group   Services   Group contains 2 groups and 6 rules │ │ │ │ _[_r_e_f_]   The best protection against vulnerable software is running less software. This │ │ │ │ section describes how to review the software which Alibaba Cloud Linux 3 installs on a │ │ │ │ system and disable software which is not needed. It then enumerates the software │ │ │ │ packages installed on a default Alibaba Cloud Linux 3 system and provides guidance about │ │ │ │ which ones can be safely disabled. │ │ │ │ │ │ │ │ @@ -1322,31 +1322,14 @@ │ │ │ │ SR 3.8, SR 4.1, SR 4.3, SR 5.1, SR 5.2, SR 5.3, SR 7.1, SR │ │ │ │ 7.6 │ │ │ │ A.11.2.6, A.12.1.2, A.12.5.1, A.12.6.2, A.13.1.1, A.13.2.1, │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.14.1.3, A.14.2.2, A.14.2.3, A.14.2.4, A.6.2.1, A.6.2.2, │ │ │ │ A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-3, PR.IP-1, PR.PT-3, PR.PT-4 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -masked = ["abrtd"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include disable_abrtd │ │ │ │ - │ │ │ │ -class disable_abrtd { │ │ │ │ - service {'abrtd': │ │ │ │ - enable => false, │ │ │ │ - ensure => 'stopped', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -1401,14 +1384,31 @@ │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_abrtd_disabled │ │ │ │ - special_service_block │ │ │ │ when: '"kernel" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include disable_abrtd │ │ │ │ + │ │ │ │ +class disable_abrtd { │ │ │ │ + service {'abrtd': │ │ │ │ + enable => false, │ │ │ │ + ensure => 'stopped', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +masked = ["abrtd"] │ │ │ │ ****** RRuullee? ?  DDiissaabbllee nnttppddaattee SSeerrvviiccee ((nnttppddaattee)) ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The ntpdate service sets the local hardware clock by polling NTP servers when the │ │ │ │ system boots. It synchronizes to the NTP servers listed in /etc/ntp/step-tickers or / │ │ │ │ etc/ntp.conf and then sets the local hardware clock to the newly synchronized system │ │ │ │ time. The ntpdate service can be disabled with the following command: │ │ │ │ $ sudo systemctl mask --now ntpdate.service │ │ │ │ The ntpdate service may only be suitable for systems which are rebooted │ │ │ │ @@ -1431,31 +1431,14 @@ │ │ │ │ SR 3.8, SR 4.1, SR 4.3, SR 5.1, SR 5.2, SR 5.3, SR 7.1, SR │ │ │ │ 7.6 │ │ │ │ A.11.2.6, A.12.1.2, A.12.5.1, A.12.6.2, A.13.1.1, A.13.2.1, │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.14.1.3, A.14.2.2, A.14.2.3, A.14.2.4, A.6.2.1, A.6.2.2, │ │ │ │ A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-3, PR.IP-1, PR.PT-3, PR.PT-4 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -masked = ["ntpdate"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include disable_ntpdate │ │ │ │ - │ │ │ │ -class disable_ntpdate { │ │ │ │ - service {'ntpdate': │ │ │ │ - enable => false, │ │ │ │ - ensure => 'stopped', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -1512,14 +1495,31 @@ │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_ntpdate_disabled │ │ │ │ - special_service_block │ │ │ │ when: '"kernel" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include disable_ntpdate │ │ │ │ + │ │ │ │ +class disable_ntpdate { │ │ │ │ + service {'ntpdate': │ │ │ │ + enable => false, │ │ │ │ + ensure => 'stopped', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +masked = ["ntpdate"] │ │ │ │ ****** RRuullee? ?  DDiissaabbllee OOdddd JJoobb DDaaeemmoonn ((ooddddjjoobbdd)) ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The oddjobd service exists to provide an interface and access control mechanism through │ │ │ │ which specified privileged tasks can run tasks for unprivileged client applications. │ │ │ │ Communication with oddjobd through the system message bus. The oddjobd service can be │ │ │ │ disabled with the following command: │ │ │ │ $ sudo systemctl mask --now oddjobd.service │ │ │ │ The oddjobd service may provide necessary functionality in some │ │ │ │ @@ -1539,31 +1539,14 @@ │ │ │ │ SR 1.1, SR 1.10, SR 1.11, SR 1.12, SR 1.13, SR 1.2, SR 1.3, │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 SR 1.4, SR 1.5, SR 1.6, SR 1.7, SR 1.8, SR 1.9, SR 2.1, SR │ │ │ │ 2.2, SR 2.3, SR 2.4, SR 2.5, SR 2.6, SR 2.7, SR 7.6 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.1.2, A.12.5.1, A.12.6.2, A.14.2.2, A.14.2.3, A.14.2.4, │ │ │ │ A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-3 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -masked = ["oddjobd"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include disable_oddjobd │ │ │ │ - │ │ │ │ -class disable_oddjobd { │ │ │ │ - service {'oddjobd': │ │ │ │ - enable => false, │ │ │ │ - ensure => 'stopped', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -1620,14 +1603,31 @@ │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_oddjobd_disabled │ │ │ │ - special_service_block │ │ │ │ when: '"kernel" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include disable_oddjobd │ │ │ │ + │ │ │ │ +class disable_oddjobd { │ │ │ │ + service {'oddjobd': │ │ │ │ + enable => false, │ │ │ │ + ensure => 'stopped', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +masked = ["oddjobd"] │ │ │ │ ****** RRuullee? ?  DDiissaabbllee AAppaacchhee QQppiidd ((qqppiidddd)) ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The qpidd service provides high speed, secure, guaranteed delivery services. It is an │ │ │ │ implementation of the Advanced Message Queuing Protocol. By default the qpidd service │ │ │ │ will bind to port 5672 and listen for connection attempts. The qpidd service can be │ │ │ │ disabled with the following command: │ │ │ │ $ sudo systemctl mask --now qpidd.service │ │ │ │ The qpidd service is automatically installed when the base package selection │ │ │ │ @@ -1651,31 +1651,14 @@ │ │ │ │ SR 3.8, SR 4.1, SR 4.3, SR 5.1, SR 5.2, SR 5.3, SR 7.1, SR │ │ │ │ 7.6 │ │ │ │ A.11.2.6, A.12.1.2, A.12.5.1, A.12.6.2, A.13.1.1, A.13.2.1, │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.14.1.3, A.14.2.2, A.14.2.3, A.14.2.4, A.6.2.1, A.6.2.2, │ │ │ │ A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-3, PR.IP-1, PR.PT-3, PR.PT-4 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -masked = ["qpidd"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include disable_qpidd │ │ │ │ - │ │ │ │ -class disable_qpidd { │ │ │ │ - service {'qpidd': │ │ │ │ - enable => false, │ │ │ │ - ensure => 'stopped', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -1731,14 +1714,31 @@ │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_qpidd_disabled │ │ │ │ - special_service_block │ │ │ │ when: '"kernel" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include disable_qpidd │ │ │ │ + │ │ │ │ +class disable_qpidd { │ │ │ │ + service {'qpidd': │ │ │ │ + enable => false, │ │ │ │ + ensure => 'stopped', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +masked = ["qpidd"] │ │ │ │ ****** RRuullee? ?  DDiissaabbllee NNeettwwoorrkk RRoouutteerr DDiissccoovveerryy DDaaeemmoonn ((rrddiisscc)) ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The rdisc service implements the client side of the ICMP Internet Router Discovery │ │ │ │ Protocol (IRDP), which allows discovery of routers on the local subnet. If a router is │ │ │ │ discovered then the local routing table is updated with a corresponding default route. │ │ │ │ By default this daemon is disabled. The rdisc service can be disabled with the following │ │ │ │ command: │ │ │ │ $ sudo systemctl mask --now rdisc.service │ │ │ │ @@ -1767,31 +1767,14 @@ │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.13.2.1, A.13.2.2, A.13.2.3, A.13.2.4, A.14.1.2, A.14.1.3, │ │ │ │ A.14.2.2, A.14.2.3, A.14.2.4, A.6.1.2, A.6.2.1, A.6.2.2, │ │ │ │ A.7.1.1, A.7.1.2, A.7.3.1, A.8.2.2, A.8.2.3, A.9.1.1, │ │ │ │ A.9.1.2, A.9.2.3, A.9.4.1, A.9.4.4, A.9.4.5 │ │ │ │ _n_i_s_t AC-4, CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f DE.AE-1, ID.AM-3, PR.AC-3, PR.AC-5, PR.DS-5, PR.IP-1, PR.PT- │ │ │ │ 3, PR.PT-4 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -masked = ["rdisc"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include disable_rdisc │ │ │ │ - │ │ │ │ -class disable_rdisc { │ │ │ │ - service {'rdisc': │ │ │ │ - enable => false, │ │ │ │ - ensure => 'stopped', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -1851,14 +1834,31 @@ │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_rdisc_disabled │ │ │ │ - special_service_block │ │ │ │ when: '"kernel" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include disable_rdisc │ │ │ │ + │ │ │ │ +class disable_rdisc { │ │ │ │ + service {'rdisc': │ │ │ │ + enable => false, │ │ │ │ + ensure => 'stopped', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +masked = ["rdisc"] │ │ │ │ Group   Cron and At Daemons   Group contains 1 rule │ │ │ │ _[_r_e_f_]   The cron and at services are used to allow commands to be executed at a later │ │ │ │ time. The cron service is required by almost all systems to perform necessary │ │ │ │ maintenance tasks, while at may or may not be required on a given system. Both daemons │ │ │ │ should be configured defensively. │ │ │ │ ****** RRuullee? ?  DDiissaabbllee AAtt SSeerrvviiccee ((aattdd)) ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The at and batch commands can be used to schedule tasks that are meant to be executed │ │ │ │ @@ -1884,31 +1884,14 @@ │ │ │ │ SR 1.1, SR 1.10, SR 1.11, SR 1.12, SR 1.13, SR 1.2, SR 1.3, │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 SR 1.4, SR 1.5, SR 1.6, SR 1.7, SR 1.8, SR 1.9, SR 2.1, SR │ │ │ │ 2.2, SR 2.3, SR 2.4, SR 2.5, SR 2.6, SR 2.7, SR 7.6 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.1.2, A.12.5.1, A.12.6.2, A.14.2.2, A.14.2.3, A.14.2.4, │ │ │ │ A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-3 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -masked = ["atd"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include disable_atd │ │ │ │ - │ │ │ │ -class disable_atd { │ │ │ │ - service {'atd': │ │ │ │ - enable => false, │ │ │ │ - ensure => 'stopped', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -1964,14 +1947,31 @@ │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_atd_disabled │ │ │ │ - special_service_block │ │ │ │ when: '"kernel" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include disable_atd │ │ │ │ + │ │ │ │ +class disable_atd { │ │ │ │ + service {'atd': │ │ │ │ + enable => false, │ │ │ │ + ensure => 'stopped', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +masked = ["atd"] │ │ │ │ Group   System Accounting with auditd   Group contains 4 groups and 3 rules │ │ │ │ _[_r_e_f_]   The audit service provides substantial capabilities for recording system │ │ │ │ activities. By default, the service audits about SELinux AVC denials and certain types │ │ │ │ of security-relevant events such as system logins, account modifications, and │ │ │ │ authentication events performed by programs such as sudo. Under its default │ │ │ │ configuration, auditd has modest disk space requirements, and should not noticeably │ │ │ │ impact system performance. │ │ ├── ./usr/share/doc/ssg-nondebian/ssg-almalinux9-guide-anssi_bp28_enhanced.html │ │ │ @@ -15047,212 +15047,212 @@ │ │ │ 0003ac60: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ 0003ac70: 6431 3222 2074 6162 696e 6465 783d 2230 d12" tabindex="0 │ │ │ 0003ac80: 2220 726f 6c65 3d22 6275 7474 6f6e 2220 " role="button" │ │ │ 0003ac90: 6172 6961 2d65 7870 616e 6465 643d 2266 aria-expanded="f │ │ │ 0003aca0: 616c 7365 2220 7469 746c 653d 2241 6374 alse" title="Act │ │ │ 0003acb0: 6976 6174 6520 746f 2072 6576 6561 6c22 ivate to reveal" │ │ │ 0003acc0: 2068 7265 663d 2223 2122 3e52 656d 6564 href="#!">Remed │ │ │ -0003acd0: 6961 7469 6f6e 204f 5342 7569 6c64 2042 iation OSBuild B │ │ │ -0003ace0: 6c75 6570 7269 6e74 2073 6e69 7070 6574 lueprint snippet │ │ │ -0003acf0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
│ │ │ -0003ad30: 3c63 6f64 653e 0a5b 5b70 6163 6b61 6765  .[[package
│ │ │ -0003ad40: 735d 5d0a 6e61 6d65 203d 2022 6169 6465  s]].name = "aide
│ │ │ -0003ad50: 220a 7665 7273 696f 6e20 3d20 222a 220a  ".version = "*".
│ │ │ -0003ad60: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
R │ │ │ -0003ae10: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ -0003ae20: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ -0003ae30: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -0003aec0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.p
│ │ │ -0003af60: 6163 6b61 6765 202d 2d61 6464 3d61 6964  ackage --add=aid
│ │ │ -0003af70: 650a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  e.
< │ │ │ -0003af80: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pup │ │ │ -0003b030: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ -0003b040: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -0003aeb0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -0003aee0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -0003aef0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -0003af30: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -0003af40: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ -0003b0d0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
in
│ │ │ -0003b170: 636c 7564 6520 696e 7374 616c 6c5f 6169  clude install_ai
│ │ │ -0003b180: 6465 0a0a 636c 6173 7320 696e 7374 616c  de..class instal
│ │ │ -0003b190: 6c5f 6169 6465 207b 0a20 2070 6163 6b61  l_aide {.  packa
│ │ │ -0003b1a0: 6765 207b 2027 6169 6465 273a 0a20 2020  ge { 'aide':.   
│ │ │ -0003b1b0: 2065 6e73 7572 6520 3d26 6774 3b20 2769   ensure => 'i
│ │ │ -0003b1c0: 6e73 7461 6c6c 6564 272c 0a20 207d 0a7d  nstalled',.  }.}
│ │ │ -0003b1d0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
│ │ │ -0003b280: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -0003b290: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -0003b2a0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -0003b0c0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -0003b0f0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -0003b100: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -0003b140: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -0003b150: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ -0003b330: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
- 
│ │ │ -0003b3d0: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ -0003b3e0: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ -0003b3f0: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ -0003b400: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ -0003b410: 6f0a 2020 7461 6773 3a0a 2020 2d20 434a  o.  tags:.  - CJ
│ │ │ -0003b420: 4953 2d35 2e31 302e 312e 330a 2020 2d20  IS-5.10.1.3.  - 
│ │ │ -0003b430: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -0003b440: 2861 290a 2020 2d20 5043 492d 4453 532d  (a).  - PCI-DSS-
│ │ │ -0003b450: 5265 712d 3131 2e35 0a20 202d 2050 4349  Req-11.5.  - PCI
│ │ │ -0003b460: 2d44 5353 7634 2d31 312e 352e 320a 2020  -DSSv4-11.5.2.  
│ │ │ -0003b470: 2d20 656e 6162 6c65 5f73 7472 6174 6567  - enable_strateg
│ │ │ -0003b480: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -0003b490: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -0003b4a0: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ -0003b4b0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -0003b4c0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -0003b4d0: 0a20 202d 2070 6163 6b61 6765 5f61 6964  .  - package_aid
│ │ │ -0003b4e0: 655f 696e 7374 616c 6c65 640a 0a2d 206e  e_installed..- n
│ │ │ -0003b4f0: 616d 653a 2045 6e73 7572 6520 6169 6465  ame: Ensure aide
│ │ │ -0003b500: 2069 7320 696e 7374 616c 6c65 640a 2020   is installed.  
│ │ │ -0003b510: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -0003b520: 7061 636b 6167 653a 0a20 2020 206e 616d  package:.    nam
│ │ │ -0003b530: 653a 2061 6964 650a 2020 2020 7374 6174  e: aide.    stat
│ │ │ -0003b540: 653a 2070 7265 7365 6e74 0a20 2077 6865  e: present.  whe
│ │ │ -0003b550: 6e3a 2027 226b 6572 6e65 6c22 2069 6e20  n: '"kernel" in 
│ │ │ -0003b560: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -0003b570: 636b 6167 6573 270a 2020 7461 6773 3a0a  ckages'.  tags:.
│ │ │ -0003b580: 2020 2d20 434a 4953 2d35 2e31 302e 312e    - CJIS-5.10.1.
│ │ │ -0003b590: 330a 2020 2d20 4e49 5354 2d38 3030 2d35  3.  - NIST-800-5
│ │ │ -0003b5a0: 332d 434d 2d36 2861 290a 2020 2d20 5043  3-CM-6(a).  - PC
│ │ │ -0003b5b0: 492d 4453 532d 5265 712d 3131 2e35 0a20  I-DSS-Req-11.5. 
│ │ │ -0003b5c0: 202d 2050 4349 2d44 5353 7634 2d31 312e   - PCI-DSSv4-11.
│ │ │ -0003b5d0: 352e 320a 2020 2d20 656e 6162 6c65 5f73  5.2.  - enable_s
│ │ │ -0003b5e0: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ -0003b5f0: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ -0003b600: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -0003b610: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -0003b620: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ -0003b630: 6e65 6564 6564 0a20 202d 2070 6163 6b61  needed.  - packa
│ │ │ -0003b640: 6765 5f61 6964 655f 696e 7374 616c 6c65  ge_aide_installe
│ │ │ -0003b650: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ -0003b660: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation She │ │ │ -0003b710: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...
│ │ │ -0003b320: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -0003b350: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -0003b360: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -0003b3a0: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -0003b3b0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
low< │ │ │ -0003b7c0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -0003b810: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ -0003b7a0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -0003b7d0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -0003b7f0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -0003b800: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -0003b820: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -0003b830: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
# Re
│ │ │ -0003b850: 6d65 6469 6174 696f 6e20 6973 2061 7070  mediation is app
│ │ │ -0003b860: 6c69 6361 626c 6520 6f6e 6c79 2069 6e20  licable only in 
│ │ │ -0003b870: 6365 7274 6169 6e20 706c 6174 666f 726d  certain platform
│ │ │ -0003b880: 730a 6966 2072 706d 202d 2d71 7569 6574  s.if rpm --quiet
│ │ │ -0003b890: 202d 7120 6b65 726e 656c 3b20 7468 656e   -q kernel; then
│ │ │ -0003b8a0: 0a0a 6966 2021 2072 706d 202d 7120 2d2d  ..if ! rpm -q --
│ │ │ -0003b8b0: 7175 6965 7420 2261 6964 6522 203b 2074  quiet "aide" ; t
│ │ │ -0003b8c0: 6865 6e0a 2020 2020 646e 6620 696e 7374  hen.    dnf inst
│ │ │ -0003b8d0: 616c 6c20 2d79 2022 6169 6465 220a 6669  all -y "aide".fi
│ │ │ -0003b8e0: 0a0a 656c 7365 0a20 2020 2026 6774 3b26  ..else.    >&
│ │ │ -0003b8f0: 616d 703b 3220 6563 686f 2027 5265 6d65  amp;2 echo 'Reme
│ │ │ -0003b900: 6469 6174 696f 6e20 6973 206e 6f74 2061  diation is not a
│ │ │ -0003b910: 7070 6c69 6361 626c 652c 206e 6f74 6869  pplicable, nothi
│ │ │ -0003b920: 6e67 2077 6173 2064 6f6e 6527 0a66 690a  ng was done'.fi.
│ │ │ +0003acd0: 6961 7469 6f6e 2041 6e73 6962 6c65 2073  iation Ansible s
│ │ │ +0003ace0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62  nippet ...
│ │ │ +0003ad90: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +0003adb0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +0003ade0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +0003ad70: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +0003ad80: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +0003ada0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +0003adc0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +0003add0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

- name: │ │ │ +0003ae20: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ +0003ae30: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ +0003ae40: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ +0003ae50: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ +0003ae60: 6167 733a 0a20 202d 2043 4a49 532d 352e ags:. - CJIS-5. │ │ │ +0003ae70: 3130 2e31 2e33 0a20 202d 204e 4953 542d 10.1.3. - NIST- │ │ │ +0003ae80: 3830 302d 3533 2d43 4d2d 3628 6129 0a20 800-53-CM-6(a). │ │ │ +0003ae90: 202d 2050 4349 2d44 5353 2d52 6571 2d31 - PCI-DSS-Req-1 │ │ │ +0003aea0: 312e 350a 2020 2d20 5043 492d 4453 5376 1.5. - PCI-DSSv │ │ │ +0003aeb0: 342d 3131 2e35 2e32 0a20 202d 2065 6e61 4-11.5.2. - ena │ │ │ +0003aec0: 626c 655f 7374 7261 7465 6779 0a20 202d ble_strategy. - │ │ │ +0003aed0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a low_complexity. │ │ │ +0003aee0: 2020 2d20 6c6f 775f 6469 7372 7570 7469 - low_disrupti │ │ │ +0003aef0: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365 on. - medium_se │ │ │ +0003af00: 7665 7269 7479 0a20 202d 206e 6f5f 7265 verity. - no_re │ │ │ +0003af10: 626f 6f74 5f6e 6565 6465 640a 2020 2d20 boot_needed. - │ │ │ +0003af20: 7061 636b 6167 655f 6169 6465 5f69 6e73 package_aide_ins │ │ │ +0003af30: 7461 6c6c 6564 0a0a 2d20 6e61 6d65 3a20 talled..- name: │ │ │ +0003af40: 456e 7375 7265 2061 6964 6520 6973 2069 Ensure aide is i │ │ │ +0003af50: 6e73 7461 6c6c 6564 0a20 2061 6e73 6962 nstalled. ansib │ │ │ +0003af60: 6c65 2e62 7569 6c74 696e 2e70 6163 6b61 le.builtin.packa │ │ │ +0003af70: 6765 3a0a 2020 2020 6e61 6d65 3a20 6169 ge:. name: ai │ │ │ +0003af80: 6465 0a20 2020 2073 7461 7465 3a20 7072 de. state: pr │ │ │ +0003af90: 6573 656e 740a 2020 7768 656e 3a20 2722 esent. when: '" │ │ │ +0003afa0: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ +0003afb0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ +0003afc0: 7327 0a20 2074 6167 733a 0a20 202d 2043 s'. tags:. - C │ │ │ +0003afd0: 4a49 532d 352e 3130 2e31 2e33 0a20 202d JIS-5.10.1.3. - │ │ │ +0003afe0: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ +0003aff0: 3628 6129 0a20 202d 2050 4349 2d44 5353 6(a). - PCI-DSS │ │ │ +0003b000: 2d52 6571 2d31 312e 350a 2020 2d20 5043 -Req-11.5. - PC │ │ │ +0003b010: 492d 4453 5376 342d 3131 2e35 2e32 0a20 I-DSSv4-11.5.2. │ │ │ +0003b020: 202d 2065 6e61 626c 655f 7374 7261 7465 - enable_strate │ │ │ +0003b030: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c gy. - low_compl │ │ │ +0003b040: 6578 6974 790a 2020 2d20 6c6f 775f 6469 exity. - low_di │ │ │ +0003b050: 7372 7570 7469 6f6e 0a20 202d 206d 6564 sruption. - med │ │ │ +0003b060: 6975 6d5f 7365 7665 7269 7479 0a20 202d ium_severity. - │ │ │ +0003b070: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ +0003b080: 640a 2020 2d20 7061 636b 6167 655f 6169 d. - package_ai │ │ │ +0003b090: 6465 5f69 6e73 7461 6c6c 6564 0a3c 2f63 de_installed.

│ │ │ +0003b0b0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Reme │ │ │ +0003b150: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ +0003b160: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
│ │ │ +0003b210: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +0003b230: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +0003b260: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +0003b1f0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +0003b200: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +0003b220: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +0003b240: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +0003b250: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

include │ │ │ +0003b2a0: 2069 6e73 7461 6c6c 5f61 6964 650a 0a63 install_aide..c │ │ │ +0003b2b0: 6c61 7373 2069 6e73 7461 6c6c 5f61 6964 lass install_aid │ │ │ +0003b2c0: 6520 7b0a 2020 7061 636b 6167 6520 7b20 e {. package { │ │ │ +0003b2d0: 2761 6964 6527 3a0a 2020 2020 656e 7375 'aide':. ensu │ │ │ +0003b2e0: 7265 203d 2667 743b 2027 696e 7374 616c re => 'instal │ │ │ +0003b2f0: 6c65 6427 2c0a 2020 7d0a 7d0a 3c2f 636f led',. }.}.

< │ │ │ +0003b310: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +0003b320: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +0003b330: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +0003b340: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +0003b350: 6431 3422 2074 6162 696e 6465 783d 2230 d14" tabindex="0 │ │ │ +0003b360: 2220 726f 6c65 3d22 6275 7474 6f6e 2220 " role="button" │ │ │ +0003b370: 6172 6961 2d65 7870 616e 6465 643d 2266 aria-expanded="f │ │ │ +0003b380: 616c 7365 2220 7469 746c 653d 2241 6374 alse" title="Act │ │ │ +0003b390: 6976 6174 6520 746f 2072 6576 6561 6c22 ivate to reveal" │ │ │ +0003b3a0: 2068 7265 663d 2223 2122 3e52 656d 6564 href="#!">Remed │ │ │ +0003b3b0: 6961 7469 6f6e 204f 5342 7569 6c64 2042 iation OSBuild B │ │ │ +0003b3c0: 6c75 6570 7269 6e74 2073 6e69 7070 6574 lueprint snippet │ │ │ +0003b3d0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
│ │ │ +0003b410: 3c63 6f64 653e 0a5b 5b70 6163 6b61 6765  .[[package
│ │ │ +0003b420: 735d 5d0a 6e61 6d65 203d 2022 6169 6465  s]].name = "aide
│ │ │ +0003b430: 220a 7665 7273 696f 6e20 3d20 222a 220a  ".version = "*".
│ │ │ +0003b440: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
R │ │ │ +0003b4f0: 656d 6564 6961 7469 6f6e 2053 6865 6c6c emediation Shell │ │ │ +0003b500: 2073 6372 6970 7420 e287 b23c 2f61 3e3c script ...< │ │ │ +0003b510: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Comp │ │ │ +0003b590: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +0003b5a0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +0003b5c0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +0003b5e0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +0003b5f0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ +0003b630: 7072 653e 3c63 6f64 653e 2320 5265 6d65 pre># Reme │ │ │ +0003b640: 6469 6174 696f 6e20 6973 2061 7070 6c69 diation is appli │ │ │ +0003b650: 6361 626c 6520 6f6e 6c79 2069 6e20 6365 cable only in ce │ │ │ +0003b660: 7274 6169 6e20 706c 6174 666f 726d 730a rtain platforms. │ │ │ +0003b670: 6966 2072 706d 202d 2d71 7569 6574 202d if rpm --quiet - │ │ │ +0003b680: 7120 6b65 726e 656c 3b20 7468 656e 0a0a q kernel; then.. │ │ │ +0003b690: 6966 2021 2072 706d 202d 7120 2d2d 7175 if ! rpm -q --qu │ │ │ +0003b6a0: 6965 7420 2261 6964 6522 203b 2074 6865 iet "aide" ; the │ │ │ +0003b6b0: 6e0a 2020 2020 646e 6620 696e 7374 616c n. dnf instal │ │ │ +0003b6c0: 6c20 2d79 2022 6169 6465 220a 6669 0a0a l -y "aide".fi.. │ │ │ +0003b6d0: 656c 7365 0a20 2020 2026 6774 3b26 616d else. >&am │ │ │ +0003b6e0: 703b 3220 6563 686f 2027 5265 6d65 6469 p;2 echo 'Remedi │ │ │ +0003b6f0: 6174 696f 6e20 6973 206e 6f74 2061 7070 ation is not app │ │ │ +0003b700: 6c69 6361 626c 652c 206e 6f74 6869 6e67 licable, nothing │ │ │ +0003b710: 2077 6173 2064 6f6e 6527 0a66 690a 3c2f was done'.fi.
Rem │ │ │ +0003b7d0: 6564 6961 7469 6f6e 2041 6e61 636f 6e64 ediation Anacond │ │ │ +0003b7e0: 6120 736e 6970 7065 7420 e287 b23c 2f61 a snippet ...
low< │ │ │ +0003b890: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0003b8e0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +0003b870: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0003b8a0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0003b8c0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0003b8d0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0003b8f0: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +0003b900: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.pac
│ │ │ +0003b920: 6b61 6765 202d 2d61 6464 3d61 6964 650a  kage --add=aide.
│ │ │  0003b930: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -000441d0: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ -000441e0: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ -000441f0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
< │ │ │ -000442c0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -000442d0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
.
│ │ │ -00044320: 7365 7276 6963 6573 202d 2d65 6e61 626c  services --enabl
│ │ │ -00044330: 6564 3d74 6d70 2e6d 6f75 6e74 0a3c 2f63  ed=tmp.mount.
│ │ │ -00044350: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Reme │ │ │ -000443f0: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ -00044400: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -00044410: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Complexity:low
Disrup │ │ │ -000442a0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -000442b0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -000442f0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -00044300: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Comp │ │ │ -00044490: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -000444a0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -000444c0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -000444e0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -000444f0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -00044530: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -00044540: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -00044550: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -00044560: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -00044570: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -00044580: 7461 6773 3a0a 2020 2d20 656e 6162 6c65 tags:. - enable │ │ │ -00044590: 5f73 7472 6174 6567 790a 2020 2d20 6c6f _strategy. - lo │ │ │ -000445a0: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ -000445b0: 206c 6f77 5f64 6973 7275 7074 696f 6e0a low_disruption. │ │ │ -000445c0: 2020 2d20 6c6f 775f 7365 7665 7269 7479 - low_severity │ │ │ -000445d0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ -000445e0: 6565 6465 640a 2020 2d20 7379 7374 656d eeded. - system │ │ │ -000445f0: 645f 746d 705f 6d6f 756e 745f 656e 6162 d_tmp_mount_enab │ │ │ -00044600: 6c65 640a 0a2d 206e 616d 653a 2045 6e61 led..- name: Ena │ │ │ -00044610: 626c 6520 6d6f 756e 7420 746d 700a 2020 ble mount tmp. │ │ │ -00044620: 616e 7369 626c 652e 6275 696c 7469 6e2e ansible.builtin. │ │ │ -00044630: 7379 7374 656d 643a 0a20 2020 206e 616d systemd:. nam │ │ │ -00044640: 653a 2074 6d70 2e6d 6f75 6e74 0a20 2020 e: tmp.mount. │ │ │ -00044650: 2065 6e61 626c 6564 3a20 2779 6573 270a enabled: 'yes'. │ │ │ -00044660: 2020 2020 7374 6174 653a 2073 7461 7274 state: start │ │ │ -00044670: 6564 0a20 2020 206d 6173 6b65 643a 2027 ed. masked: ' │ │ │ -00044680: 6661 6c73 6527 0a20 2077 6865 6e3a 2028 false'. when: ( │ │ │ -00044690: 206e 6f74 2028 2022 6b65 726e 656c 2220 not ( "kernel" │ │ │ -000446a0: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ -000446b0: 2e70 6163 6b61 6765 7320 616e 6420 2272 .packages and "r │ │ │ -000446c0: 706d 2d6f 7374 7265 6522 2069 6e20 616e pm-ostree" in an │ │ │ -000446d0: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ -000446e0: 6167 6573 0a20 2020 2061 6e64 2022 626f ages. and "bo │ │ │ -000446f0: 6f74 6322 2069 6e20 616e 7369 626c 655f otc" in ansible_ │ │ │ -00044700: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ -00044710: 6e64 206e 6f74 2022 6f70 656e 7368 6966 nd not "openshif │ │ │ -00044720: 742d 6b75 6265 6c65 7422 2069 6e20 616e t-kubelet" in an │ │ │ -00044730: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ -00044740: 6167 6573 0a20 2020 2061 6e64 2022 6f73 ages. and "os │ │ │ -00044750: 7472 6565 2220 696e 2061 6e73 6962 6c65 tree" in ansible │ │ │ -00044760: 5f70 726f 635f 636d 646c 696e 6520 2920 _proc_cmdline ) │ │ │ -00044770: 616e 6420 6e6f 7420 2820 616e 7369 626c and not ( ansibl │ │ │ -00044780: 655f 7669 7274 7561 6c69 7a61 7469 6f6e e_virtualization │ │ │ -00044790: 5f74 7970 6520 696e 0a20 2020 205b 2264 _type in. ["d │ │ │ -000447a0: 6f63 6b65 7222 2c20 226c 7863 222c 2022 ocker", "lxc", " │ │ │ -000447b0: 6f70 656e 767a 222c 2022 706f 646d 616e openvz", "podman │ │ │ -000447c0: 222c 2022 636f 6e74 6169 6e65 7222 5d20 ", "container"] │ │ │ -000447d0: 2920 290a 2020 7461 6773 3a0a 2020 2d20 ) ). tags:. - │ │ │ -000447e0: 656e 6162 6c65 5f73 7472 6174 6567 790a enable_strategy. │ │ │ -000447f0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ -00044800: 7479 0a20 202d 206c 6f77 5f64 6973 7275 ty. - low_disru │ │ │ -00044810: 7074 696f 6e0a 2020 2d20 6c6f 775f 7365 ption. - low_se │ │ │ -00044820: 7665 7269 7479 0a20 202d 206e 6f5f 7265 verity. - no_re │ │ │ -00044830: 626f 6f74 5f6e 6565 6465 640a 2020 2d20 boot_needed. - │ │ │ -00044840: 7379 7374 656d 645f 746d 705f 6d6f 756e systemd_tmp_moun │ │ │ -00044850: 745f 656e 6162 6c65 640a 3c2f 636f 6465 t_enabled.
Remedia │ │ │ -00044910: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ -00044920: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
Complexity │ │ │ -000449b0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -000449d0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -000449e0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -000449f0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -00044a00: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -00044a20: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
# Remediatio
│ │ │ -00044a60: 6e20 6973 2061 7070 6c69 6361 626c 6520  n is applicable 
│ │ │ -00044a70: 6f6e 6c79 2069 6e20 6365 7274 6169 6e20  only in certain 
│ │ │ -00044a80: 706c 6174 666f 726d 730a 6966 2028 2021  platforms.if ( !
│ │ │ -00044a90: 2028 207b 2072 706d 202d 2d71 7569 6574   ( { rpm --quiet
│ │ │ -00044aa0: 202d 7120 6b65 726e 656c 203b 7d20 2661   -q kernel ;} &a
│ │ │ -00044ab0: 6d70 3b26 616d 703b 207b 2072 706d 202d  mp;& { rpm -
│ │ │ -00044ac0: 2d71 7569 6574 202d 7120 7270 6d2d 6f73  -quiet -q rpm-os
│ │ │ -00044ad0: 7472 6565 203b 7d20 2661 6d70 3b26 616d  tree ;} &&am
│ │ │ -00044ae0: 703b 207b 2072 706d 202d 2d71 7569 6574  p; { rpm --quiet
│ │ │ -00044af0: 202d 7120 626f 6f74 6320 3b7d 2026 616d   -q bootc ;} &am
│ │ │ -00044b00: 703b 2661 6d70 3b20 7b20 2120 7270 6d20  p;& { ! rpm 
│ │ │ -00044b10: 2d2d 7175 6965 7420 2d71 206f 7065 6e73  --quiet -q opens
│ │ │ -00044b20: 6869 6674 2d6b 7562 656c 6574 203b 7d20  hift-kubelet ;} 
│ │ │ -00044b30: 2661 6d70 3b26 616d 703b 2028 5b20 2d66  && ([ -f
│ │ │ -00044b40: 202f 7275 6e2f 6f73 7472 6565 2d62 6f6f   /run/ostree-boo
│ │ │ -00044b50: 7465 6420 5d20 7c7c 205b 202d 4c20 2f6f  ted ] || [ -L /o
│ │ │ -00044b60: 7374 7265 6520 5d29 2029 2026 616d 703b  stree ]) ) &
│ │ │ -00044b70: 2661 6d70 3b20 2120 2820 5b20 2d66 202f  & ! ( [ -f /
│ │ │ -00044b80: 2e64 6f63 6b65 7265 6e76 205d 207c 7c20  .dockerenv ] || 
│ │ │ -00044b90: 5b20 2d66 202f 7275 6e2f 2e63 6f6e 7461  [ -f /run/.conta
│ │ │ -00044ba0: 696e 6572 656e 7620 5d20 2920 293b 2074  inerenv ] ) ); t
│ │ │ -00044bb0: 6865 6e0a 0a53 5953 5445 4d43 544c 5f45  hen..SYSTEMCTL_E
│ │ │ -00044bc0: 5845 433d 272f 7573 722f 6269 6e2f 7379  XEC='/usr/bin/sy
│ │ │ -00044bd0: 7374 656d 6374 6c27 0a22 2453 5953 5445  stemctl'."$SYSTE
│ │ │ -00044be0: 4d43 544c 5f45 5845 4322 2075 6e6d 6173  MCTL_EXEC" unmas
│ │ │ -00044bf0: 6b20 2774 6d70 2e6d 6f75 6e74 270a 6966  k 'tmp.mount'.if
│ │ │ -00044c00: 205b 5b20 2428 2224 5359 5354 454d 4354   [[ $("$SYSTEMCT
│ │ │ -00044c10: 4c5f 4558 4543 2220 6973 2d73 7973 7465  L_EXEC" is-syste
│ │ │ -00044c20: 6d2d 7275 6e6e 696e 6729 2021 3d20 226f  m-running) != "o
│ │ │ -00044c30: 6666 6c69 6e65 2220 5d5d 3b20 7468 656e  ffline" ]]; then
│ │ │ -00044c40: 0a20 2022 2453 5953 5445 4d43 544c 5f45  .  "$SYSTEMCTL_E
│ │ │ -00044c50: 5845 4322 2073 7461 7274 2027 746d 702e  XEC" start 'tmp.
│ │ │ -00044c60: 6d6f 756e 7427 0a66 690a 2224 5359 5354  mount'.fi."$SYST
│ │ │ -00044c70: 454d 4354 4c5f 4558 4543 2220 656e 6162  EMCTL_EXEC" enab
│ │ │ -00044c80: 6c65 2027 746d 702e 6d6f 756e 7427 0a0a  le 'tmp.mount'..
│ │ │ -00044c90: 656c 7365 0a20 2020 2026 6774 3b26 616d  else.    >&am
│ │ │ -00044ca0: 703b 3220 6563 686f 2027 5265 6d65 6469  p;2 echo 'Remedi
│ │ │ -00044cb0: 6174 696f 6e20 6973 206e 6f74 2061 7070  ation is not app
│ │ │ -00044cc0: 6c69 6361 626c 652c 206e 6f74 6869 6e67  licable, nothing
│ │ │ -00044cd0: 2077 6173 2064 6f6e 6527 0a66 690a 3c2f   was done'.fi.
│ │ │ +00044280: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
- 
│ │ │ +00044320: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ +00044330: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ +00044340: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ +00044350: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ +00044360: 6f0a 2020 7461 6773 3a0a 2020 2d20 656e  o.  tags:.  - en
│ │ │ +00044370: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ +00044380: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +00044390: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +000443a0: 696f 6e0a 2020 2d20 6c6f 775f 7365 7665  ion.  - low_seve
│ │ │ +000443b0: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ +000443c0: 6f74 5f6e 6565 6465 640a 2020 2d20 7379  ot_needed.  - sy
│ │ │ +000443d0: 7374 656d 645f 746d 705f 6d6f 756e 745f  stemd_tmp_mount_
│ │ │ +000443e0: 656e 6162 6c65 640a 0a2d 206e 616d 653a  enabled..- name:
│ │ │ +000443f0: 2045 6e61 626c 6520 6d6f 756e 7420 746d   Enable mount tm
│ │ │ +00044400: 700a 2020 616e 7369 626c 652e 6275 696c  p.  ansible.buil
│ │ │ +00044410: 7469 6e2e 7379 7374 656d 643a 0a20 2020  tin.systemd:.   
│ │ │ +00044420: 206e 616d 653a 2074 6d70 2e6d 6f75 6e74   name: tmp.mount
│ │ │ +00044430: 0a20 2020 2065 6e61 626c 6564 3a20 2779  .    enabled: 'y
│ │ │ +00044440: 6573 270a 2020 2020 7374 6174 653a 2073  es'.    state: s
│ │ │ +00044450: 7461 7274 6564 0a20 2020 206d 6173 6b65  tarted.    maske
│ │ │ +00044460: 643a 2027 6661 6c73 6527 0a20 2077 6865  d: 'false'.  whe
│ │ │ +00044470: 6e3a 2028 206e 6f74 2028 2022 6b65 726e  n: ( not ( "kern
│ │ │ +00044480: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +00044490: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +000444a0: 6420 2272 706d 2d6f 7374 7265 6522 2069  d "rpm-ostree" i
│ │ │ +000444b0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +000444c0: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +000444d0: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ +000444e0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +000444f0: 6573 2061 6e64 206e 6f74 2022 6f70 656e  es and not "open
│ │ │ +00044500: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ +00044510: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +00044520: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +00044530: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ +00044540: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ +00044550: 6520 2920 616e 6420 6e6f 7420 2820 616e  e ) and not ( an
│ │ │ +00044560: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ +00044570: 7469 6f6e 5f74 7970 6520 696e 0a20 2020  tion_type in.   
│ │ │ +00044580: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ +00044590: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ +000445a0: 646d 616e 222c 2022 636f 6e74 6169 6e65  dman", "containe
│ │ │ +000445b0: 7222 5d20 2920 290a 2020 7461 6773 3a0a  r"] ) ).  tags:.
│ │ │ +000445c0: 2020 2d20 656e 6162 6c65 5f73 7472 6174    - enable_strat
│ │ │ +000445d0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +000445e0: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +000445f0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +00044600: 775f 7365 7665 7269 7479 0a20 202d 206e  w_severity.  - n
│ │ │ +00044610: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +00044620: 2020 2d20 7379 7374 656d 645f 746d 705f    - systemd_tmp_
│ │ │ +00044630: 6d6f 756e 745f 656e 6162 6c65 640a 3c2f  mount_enabled.
Rem │ │ │ +000446f0: 6564 6961 7469 6f6e 2053 6865 6c6c 2073 ediation Shell s │ │ │ +00044700: 6372 6970 7420 e287 b23c 2f61 3e3c 6272 cript ...
│ │ │ +00044740: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
│ │ │ +00044270: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +000442a0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +000442b0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +000442f0: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ +00044300: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ +000447b0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +000447d0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +00044800: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ +00044820: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ +00044790: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +000447a0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +000447e0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +000447f0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
# Remedi │ │ │ +00044840: 6174 696f 6e20 6973 2061 7070 6c69 6361 ation is applica │ │ │ +00044850: 626c 6520 6f6e 6c79 2069 6e20 6365 7274 ble only in cert │ │ │ +00044860: 6169 6e20 706c 6174 666f 726d 730a 6966 ain platforms.if │ │ │ +00044870: 2028 2021 2028 207b 2072 706d 202d 2d71 ( ! ( { rpm --q │ │ │ +00044880: 7569 6574 202d 7120 6b65 726e 656c 203b uiet -q kernel ; │ │ │ +00044890: 7d20 2661 6d70 3b26 616d 703b 207b 2072 } && { r │ │ │ +000448a0: 706d 202d 2d71 7569 6574 202d 7120 7270 pm --quiet -q rp │ │ │ +000448b0: 6d2d 6f73 7472 6565 203b 7d20 2661 6d70 m-ostree ;} & │ │ │ +000448c0: 3b26 616d 703b 207b 2072 706d 202d 2d71 ;& { rpm --q │ │ │ +000448d0: 7569 6574 202d 7120 626f 6f74 6320 3b7d uiet -q bootc ;} │ │ │ +000448e0: 2026 616d 703b 2661 6d70 3b20 7b20 2120 && { ! │ │ │ +000448f0: 7270 6d20 2d2d 7175 6965 7420 2d71 206f rpm --quiet -q o │ │ │ +00044900: 7065 6e73 6869 6674 2d6b 7562 656c 6574 penshift-kubelet │ │ │ +00044910: 203b 7d20 2661 6d70 3b26 616d 703b 2028 ;} && ( │ │ │ +00044920: 5b20 2d66 202f 7275 6e2f 6f73 7472 6565 [ -f /run/ostree │ │ │ +00044930: 2d62 6f6f 7465 6420 5d20 7c7c 205b 202d -booted ] || [ - │ │ │ +00044940: 4c20 2f6f 7374 7265 6520 5d29 2029 2026 L /ostree ]) ) & │ │ │ +00044950: 616d 703b 2661 6d70 3b20 2120 2820 5b20 amp;& ! ( [ │ │ │ +00044960: 2d66 202f 2e64 6f63 6b65 7265 6e76 205d -f /.dockerenv ] │ │ │ +00044970: 207c 7c20 5b20 2d66 202f 7275 6e2f 2e63 || [ -f /run/.c │ │ │ +00044980: 6f6e 7461 696e 6572 656e 7620 5d20 2920 ontainerenv ] ) │ │ │ +00044990: 293b 2074 6865 6e0a 0a53 5953 5445 4d43 ); then..SYSTEMC │ │ │ +000449a0: 544c 5f45 5845 433d 272f 7573 722f 6269 TL_EXEC='/usr/bi │ │ │ +000449b0: 6e2f 7379 7374 656d 6374 6c27 0a22 2453 n/systemctl'."$S │ │ │ +000449c0: 5953 5445 4d43 544c 5f45 5845 4322 2075 YSTEMCTL_EXEC" u │ │ │ +000449d0: 6e6d 6173 6b20 2774 6d70 2e6d 6f75 6e74 nmask 'tmp.mount │ │ │ +000449e0: 270a 6966 205b 5b20 2428 2224 5359 5354 '.if [[ $("$SYST │ │ │ +000449f0: 454d 4354 4c5f 4558 4543 2220 6973 2d73 EMCTL_EXEC" is-s │ │ │ +00044a00: 7973 7465 6d2d 7275 6e6e 696e 6729 2021 ystem-running) ! │ │ │ +00044a10: 3d20 226f 6666 6c69 6e65 2220 5d5d 3b20 = "offline" ]]; │ │ │ +00044a20: 7468 656e 0a20 2022 2453 5953 5445 4d43 then. "$SYSTEMC │ │ │ +00044a30: 544c 5f45 5845 4322 2073 7461 7274 2027 TL_EXEC" start ' │ │ │ +00044a40: 746d 702e 6d6f 756e 7427 0a66 690a 2224 tmp.mount'.fi."$ │ │ │ +00044a50: 5359 5354 454d 4354 4c5f 4558 4543 2220 SYSTEMCTL_EXEC" │ │ │ +00044a60: 656e 6162 6c65 2027 746d 702e 6d6f 756e enable 'tmp.moun │ │ │ +00044a70: 7427 0a0a 656c 7365 0a20 2020 2026 6774 t'..else. > │ │ │ +00044a80: 3b26 616d 703b 3220 6563 686f 2027 5265 ;&2 echo 'Re │ │ │ +00044a90: 6d65 6469 6174 696f 6e20 6973 206e 6f74 mediation is not │ │ │ +00044aa0: 2061 7070 6c69 6361 626c 652c 206e 6f74 applicable, not │ │ │ +00044ab0: 6869 6e67 2077 6173 2064 6f6e 6527 0a66 hing was done'.f │ │ │ +00044ac0: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c i.
< │ │ │ +00044ad0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Ana │ │ │ +00044b80: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ +00044b90: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
Complexity: │ │ │ +00044c60: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00044c70: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +00044cc0: 0a73 6572 7669 6365 7320 2d2d 656e 6162  .services --enab
│ │ │ +00044cd0: 6c65 643d 746d 702e 6d6f 756e 740a 3c2f  led=tmp.mount.
low
Disru │ │ │ +00044c40: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00044c50: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00044c90: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +00044ca0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Remedi │ │ │ -00045d10: 6174 696f 6e20 4f53 4275 696c 6420 426c ation OSBuild Bl │ │ │ -00045d20: 7565 7072 696e 7420 736e 6970 7065 7420 ueprint snippet │ │ │ -00045d30: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
<
│ │ │ -00045d70: 636f 6465 3e0a 5b5b 7061 636b 6167 6573  code>.[[packages
│ │ │ -00045d80: 5d5d 0a6e 616d 6520 3d20 2273 7564 6f22  ]].name = "sudo"
│ │ │ -00045d90: 0a76 6572 7369 6f6e 203d 2022 2a22 0a3c  .version = "*".<
│ │ │ -00045da0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Re │ │ │ -00045e50: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ -00045e60: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
< │ │ │ -00045f00: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00045f10: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -00045f60: 3c74 723e 3c74 683e 5374 7261 7465 6779
.pa
│ │ │ -00045fa0: 636b 6167 6520 2d2d 6164 643d 7375 646f  ckage --add=sudo
│ │ │ -00045fb0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
│ │ │ -00046060: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ -00046070: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
C │ │ │ -00045ef0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -00045f20: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -00045f30: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -00045f70: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -00045f80: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ -00046110: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00046120: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -00046170: 3c74 723e 3c74 683e 5374 7261 7465 6779
inc
│ │ │ -000461b0: 6c75 6465 2069 6e73 7461 6c6c 5f73 7564  lude install_sud
│ │ │ -000461c0: 6f0a 0a63 6c61 7373 2069 6e73 7461 6c6c  o..class install
│ │ │ -000461d0: 5f73 7564 6f20 7b0a 2020 7061 636b 6167  _sudo {.  packag
│ │ │ -000461e0: 6520 7b20 2773 7564 6f27 3a0a 2020 2020  e { 'sudo':.    
│ │ │ -000461f0: 656e 7375 7265 203d 2667 743b 2027 696e  ensure => 'in
│ │ │ -00046200: 7374 616c 6c65 6427 2c0a 2020 7d0a 7d0a  stalled',.  }.}.
│ │ │ -00046210: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
R │ │ │ -000462c0: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -000462d0: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
C │ │ │ -00046100: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -00046130: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -00046140: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -00046180: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -00046190: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ -00046370: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00046380: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -000463d0: 3c74 723e 3c74 683e 5374 7261 7465 6779
- n
│ │ │ -00046410: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ -00046420: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ -00046430: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -00046440: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ -00046450: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -00046460: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -00046470: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ -00046480: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ -00046490: 2d32 2e32 2e36 0a20 202d 2065 6e61 626c  -2.2.6.  - enabl
│ │ │ -000464a0: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ -000464b0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -000464c0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -000464d0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -000464e0: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -000464f0: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ -00046500: 636b 6167 655f 7375 646f 5f69 6e73 7461  ckage_sudo_insta
│ │ │ -00046510: 6c6c 6564 0a0a 2d20 6e61 6d65 3a20 456e  lled..- name: En
│ │ │ -00046520: 7375 7265 2073 7564 6f20 6973 2069 6e73  sure sudo is ins
│ │ │ -00046530: 7461 6c6c 6564 0a20 2061 6e73 6962 6c65  talled.  ansible
│ │ │ -00046540: 2e62 7569 6c74 696e 2e70 6163 6b61 6765  .builtin.package
│ │ │ -00046550: 3a0a 2020 2020 6e61 6d65 3a20 7375 646f  :.    name: sudo
│ │ │ -00046560: 0a20 2020 2073 7461 7465 3a20 7072 6573  .    state: pres
│ │ │ -00046570: 656e 740a 2020 7768 656e 3a20 2722 6b65  ent.  when: '"ke
│ │ │ -00046580: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -00046590: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ -000465a0: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -000465b0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -000465c0: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ -000465d0: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ -000465e0: 2d32 2e32 2e36 0a20 202d 2065 6e61 626c  -2.2.6.  - enabl
│ │ │ -000465f0: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ -00046600: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -00046610: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -00046620: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -00046630: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -00046640: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ -00046650: 636b 6167 655f 7375 646f 5f69 6e73 7461  ckage_sudo_insta
│ │ │ -00046660: 6c6c 6564 0a3c 2f63 6f64 653e 3c2f 7072  lled.Remediation 
│ │ │ -00046720: 5368 656c 6c20 7363 7269 7074 20e2 87b2  Shell script ...
│ │ │ -00046730: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
C │ │ │ -00046360: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -00046390: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -000463a0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -000463e0: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -000463f0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ -00046800: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00046810: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
#
│ │ │ -00046860: 2052 656d 6564 6961 7469 6f6e 2069 7320   Remediation is 
│ │ │ -00046870: 6170 706c 6963 6162 6c65 206f 6e6c 7920  applicable only 
│ │ │ -00046880: 696e 2063 6572 7461 696e 2070 6c61 7466  in certain platf
│ │ │ -00046890: 6f72 6d73 0a69 6620 7270 6d20 2d2d 7175  orms.if rpm --qu
│ │ │ -000468a0: 6965 7420 2d71 206b 6572 6e65 6c3b 2074  iet -q kernel; t
│ │ │ -000468b0: 6865 6e0a 0a69 6620 2120 7270 6d20 2d71  hen..if ! rpm -q
│ │ │ -000468c0: 202d 2d71 7569 6574 2022 7375 646f 2220   --quiet "sudo" 
│ │ │ -000468d0: 3b20 7468 656e 0a20 2020 2064 6e66 2069  ; then.    dnf i
│ │ │ -000468e0: 6e73 7461 6c6c 202d 7920 2273 7564 6f22  nstall -y "sudo"
│ │ │ -000468f0: 0a66 690a 0a65 6c73 650a 2020 2020 2667  .fi..else.    &g
│ │ │ -00046900: 743b 2661 6d70 3b32 2065 6368 6f20 2752  t;&2 echo 'R
│ │ │ -00046910: 656d 6564 6961 7469 6f6e 2069 7320 6e6f  emediation is no
│ │ │ -00046920: 7420 6170 706c 6963 6162 6c65 2c20 6e6f  t applicable, no
│ │ │ -00046930: 7468 696e 6720 7761 7320 646f 6e65 270a  thing was done'.
│ │ │ -00046940: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e  fi.
│ │ │ +00045d10: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ +00045d20: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ +00045d60: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Complexity:low
Disrup │ │ │ -000467e0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -000467f0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00046830: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -00046840: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ +00045dd0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +00045df0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +00045e20: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ +00045e40: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ +00045db0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +00045dc0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +00045e00: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +00045e10: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
- name: │ │ │ +00045e60: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ +00045e70: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ +00045e80: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ +00045e90: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ +00045ea0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ +00045eb0: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ +00045ec0: 5043 492d 4453 5376 342d 322e 320a 2020 PCI-DSSv4-2.2. │ │ │ +00045ed0: 2d20 5043 492d 4453 5376 342d 322e 322e - PCI-DSSv4-2.2. │ │ │ +00045ee0: 360a 2020 2d20 656e 6162 6c65 5f73 7472 6. - enable_str │ │ │ +00045ef0: 6174 6567 790a 2020 2d20 6c6f 775f 636f ategy. - low_co │ │ │ +00045f00: 6d70 6c65 7869 7479 0a20 202d 206c 6f77 mplexity. - low │ │ │ +00045f10: 5f64 6973 7275 7074 696f 6e0a 2020 2d20 _disruption. - │ │ │ +00045f20: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ +00045f30: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ +00045f40: 6564 6564 0a20 202d 2070 6163 6b61 6765 eded. - package │ │ │ +00045f50: 5f73 7564 6f5f 696e 7374 616c 6c65 640a _sudo_installed. │ │ │ +00045f60: 0a2d 206e 616d 653a 2045 6e73 7572 6520 .- name: Ensure │ │ │ +00045f70: 7375 646f 2069 7320 696e 7374 616c 6c65 sudo is installe │ │ │ +00045f80: 640a 2020 616e 7369 626c 652e 6275 696c d. ansible.buil │ │ │ +00045f90: 7469 6e2e 7061 636b 6167 653a 0a20 2020 tin.package:. │ │ │ +00045fa0: 206e 616d 653a 2073 7564 6f0a 2020 2020 name: sudo. │ │ │ +00045fb0: 7374 6174 653a 2070 7265 7365 6e74 0a20 state: present. │ │ │ +00045fc0: 2077 6865 6e3a 2027 226b 6572 6e65 6c22 when: '"kernel" │ │ │ +00045fd0: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +00045fe0: 732e 7061 636b 6167 6573 270a 2020 7461 s.packages'. ta │ │ │ +00045ff0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ +00046000: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ +00046010: 5043 492d 4453 5376 342d 322e 320a 2020 PCI-DSSv4-2.2. │ │ │ +00046020: 2d20 5043 492d 4453 5376 342d 322e 322e - PCI-DSSv4-2.2. │ │ │ +00046030: 360a 2020 2d20 656e 6162 6c65 5f73 7472 6. - enable_str │ │ │ +00046040: 6174 6567 790a 2020 2d20 6c6f 775f 636f ategy. - low_co │ │ │ +00046050: 6d70 6c65 7869 7479 0a20 202d 206c 6f77 mplexity. - low │ │ │ +00046060: 5f64 6973 7275 7074 696f 6e0a 2020 2d20 _disruption. - │ │ │ +00046070: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ +00046080: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ +00046090: 6564 6564 0a20 202d 2070 6163 6b61 6765 eded. - package │ │ │ +000460a0: 5f73 7564 6f5f 696e 7374 616c 6c65 640a _sudo_installed. │ │ │ +000460b0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64 R │ │ │ +00046160: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ +00046170: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
low< │ │ │ +00046220: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +00046270: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +00046200: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +00046230: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +00046250: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +00046260: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +00046280: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +00046290: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
incl
│ │ │ +000462b0: 7564 6520 696e 7374 616c 6c5f 7375 646f  ude install_sudo
│ │ │ +000462c0: 0a0a 636c 6173 7320 696e 7374 616c 6c5f  ..class install_
│ │ │ +000462d0: 7375 646f 207b 0a20 2070 6163 6b61 6765  sudo {.  package
│ │ │ +000462e0: 207b 2027 7375 646f 273a 0a20 2020 2065   { 'sudo':.    e
│ │ │ +000462f0: 6e73 7572 6520 3d26 6774 3b20 2769 6e73  nsure => 'ins
│ │ │ +00046300: 7461 6c6c 6564 272c 0a20 207d 0a7d 0a3c  talled',.  }.}.<
│ │ │ +00046310: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Re │ │ │ +000463c0: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ +000463d0: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ +000463e0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +000463f0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +00046400: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +00046410: 7365 2220 6964 3d22 6964 3339 223e 3c70 se" id="id39">

.[[pack │ │ │ +00046430: 6167 6573 5d5d 0a6e 616d 6520 3d20 2273 ages]].name = "s │ │ │ +00046440: 7564 6f22 0a76 6572 7369 6f6e 203d 2022 udo".version = " │ │ │ +00046450: 2a22 0a3c 2f63 6f64 653e 3c2f 7072 653e *". │ │ │ +00046460: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22

Remediation Sh │ │ │ +00046510: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
< │ │ │ +000465b0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +000465c0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +00046610: 3c74 723e 3c74 683e 5374 7261 7465 6779
# R
│ │ │ +00046650: 656d 6564 6961 7469 6f6e 2069 7320 6170  emediation is ap
│ │ │ +00046660: 706c 6963 6162 6c65 206f 6e6c 7920 696e  plicable only in
│ │ │ +00046670: 2063 6572 7461 696e 2070 6c61 7466 6f72   certain platfor
│ │ │ +00046680: 6d73 0a69 6620 7270 6d20 2d2d 7175 6965  ms.if rpm --quie
│ │ │ +00046690: 7420 2d71 206b 6572 6e65 6c3b 2074 6865  t -q kernel; the
│ │ │ +000466a0: 6e0a 0a69 6620 2120 7270 6d20 2d71 202d  n..if ! rpm -q -
│ │ │ +000466b0: 2d71 7569 6574 2022 7375 646f 2220 3b20  -quiet "sudo" ; 
│ │ │ +000466c0: 7468 656e 0a20 2020 2064 6e66 2069 6e73  then.    dnf ins
│ │ │ +000466d0: 7461 6c6c 202d 7920 2273 7564 6f22 0a66  tall -y "sudo".f
│ │ │ +000466e0: 690a 0a65 6c73 650a 2020 2020 2667 743b  i..else.    >
│ │ │ +000466f0: 2661 6d70 3b32 2065 6368 6f20 2752 656d  &2 echo 'Rem
│ │ │ +00046700: 6564 6961 7469 6f6e 2069 7320 6e6f 7420  ediation is not 
│ │ │ +00046710: 6170 706c 6963 6162 6c65 2c20 6e6f 7468  applicable, noth
│ │ │ +00046720: 696e 6720 7761 7320 646f 6e65 270a 6669  ing was done'.fi
│ │ │ +00046730: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
│ │ │ +000467e0: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ +000467f0: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ +00046800: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
C │ │ │ +000465a0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +000465d0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +000465e0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +00046620: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +00046630: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ +000468d0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +000468e0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
.
│ │ │ +00046930: 7061 636b 6167 6520 2d2d 6164 643d 7375  package --add=su
│ │ │ +00046940: 646f 0a3c 2f63 6f64 653e 3c2f 7072 653e  do.
│ │ │ 00046950: 3c2f 6469 763e 3c2f 6469 763e 3c2f 7464 │ │ │ 00046980: 3c74 7220 6461 7461 2d74 742d 6964 3d22 Remediatio │ │ │ -00055990: 6e20 4f53 4275 696c 6420 426c 7565 7072 n OSBuild Bluepr │ │ │ -000559a0: 696e 7420 736e 6970 7065 7420 e287 b23c int snippet ...< │ │ │ -000559b0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
.[[packages]].n
│ │ │ -00055a00: 616d 6520 3d20 2264 6e66 2d61 7574 6f6d  ame = "dnf-autom
│ │ │ -00055a10: 6174 6963 220a 7665 7273 696f 6e20 3d20  atic".version = 
│ │ │ -00055a20: 222a 220a 3c2f 636f 6465 3e3c 2f70 7265  "*".
Remediation A │ │ │ -00055ae0: 6e61 636f 6e64 6120 736e 6970 7065 7420 naconda snippet │ │ │ -00055af0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity:low
Disrup │ │ │ +000468b0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +000468c0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +00046900: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +00046910: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
│ │ │ -00055b70: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -00055b90: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -00055be0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ -00055c10: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.package --add
│ │ │ -00055c30: 3d64 6e66 2d61 7574 6f6d 6174 6963 0a3c  =dnf-automatic.<
│ │ │ -00055c40: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Re │ │ │ -00055cf0: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ -00055d00: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -00055d10: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
Complexity:< │ │ │ -00055b80: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -00055ba0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -00055bf0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ -00055c00: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
Com │ │ │ -00055d90: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -00055dc0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -00055de0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -00055df0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -00055e10: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -00055e30: 3c70 7265 3e3c 636f 6465 3e69 6e63 6c75
inclu
│ │ │ -00055e40: 6465 2069 6e73 7461 6c6c 5f64 6e66 2d61  de install_dnf-a
│ │ │ -00055e50: 7574 6f6d 6174 6963 0a0a 636c 6173 7320  utomatic..class 
│ │ │ -00055e60: 696e 7374 616c 6c5f 646e 662d 6175 746f  install_dnf-auto
│ │ │ -00055e70: 6d61 7469 6320 7b0a 2020 7061 636b 6167  matic {.  packag
│ │ │ -00055e80: 6520 7b20 2764 6e66 2d61 7574 6f6d 6174  e { 'dnf-automat
│ │ │ -00055e90: 6963 273a 0a20 2020 2065 6e73 7572 6520  ic':.    ensure 
│ │ │ -00055ea0: 3d26 6774 3b20 2769 6e73 7461 6c6c 6564  => 'installed
│ │ │ -00055eb0: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e  ',.  }.}.
│ │ │ -00055ec0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remediat │ │ │ -00055f70: 696f 6e20 416e 7369 626c 6520 736e 6970 ion Ansible snip │ │ │ -00055f80: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00055f90: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00055fa0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00055fb0: 7365 2220 6964 3d22 6964 3830 223e 3c74 se" id="id80"> │ │ │ -00056000: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -00056010: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -00056020: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -00056060: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -00056070: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -00056090: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ -000560b0: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -000560c0: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -000560d0: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -000560e0: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -000560f0: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -00056100: 3a0a 2020 2d20 656e 6162 6c65 5f73 7472  :.  - enable_str
│ │ │ -00056110: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ -00056120: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ -00056130: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -00056140: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -00056150: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -00056160: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ -00056170: 5f64 6e66 2d61 7574 6f6d 6174 6963 5f69  _dnf-automatic_i
│ │ │ -00056180: 6e73 7461 6c6c 6564 0a0a 2d20 6e61 6d65  nstalled..- name
│ │ │ -00056190: 3a20 456e 7375 7265 2064 6e66 2d61 7574  : Ensure dnf-aut
│ │ │ -000561a0: 6f6d 6174 6963 2069 7320 696e 7374 616c  omatic is instal
│ │ │ -000561b0: 6c65 640a 2020 616e 7369 626c 652e 6275  led.  ansible.bu
│ │ │ -000561c0: 696c 7469 6e2e 7061 636b 6167 653a 0a20  iltin.package:. 
│ │ │ -000561d0: 2020 206e 616d 653a 2064 6e66 2d61 7574     name: dnf-aut
│ │ │ -000561e0: 6f6d 6174 6963 0a20 2020 2073 7461 7465  omatic.    state
│ │ │ -000561f0: 3a20 7072 6573 656e 740a 2020 7768 656e  : present.  when
│ │ │ -00056200: 3a20 2820 6e6f 7420 2820 226b 6572 6e65  : ( not ( "kerne
│ │ │ -00056210: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -00056220: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -00056230: 2022 7270 6d2d 6f73 7472 6565 2220 696e   "rpm-ostree" in
│ │ │ -00056240: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -00056250: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -00056260: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ -00056270: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -00056280: 7320 616e 6420 6e6f 7420 226f 7065 6e73  s and not "opens
│ │ │ -00056290: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ -000562a0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -000562b0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -000562c0: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ -000562d0: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ -000562e0: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ -000562f0: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ -00056300: 696f 6e5f 7479 7065 2069 6e0a 2020 2020  ion_type in.    
│ │ │ -00056310: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ -00056320: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ -00056330: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572  man", "container
│ │ │ -00056340: 225d 2029 2029 0a20 2074 6167 733a 0a20  "] ) ).  tags:. 
│ │ │ -00056350: 202d 2065 6e61 626c 655f 7374 7261 7465   - enable_strate
│ │ │ -00056360: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ -00056370: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ -00056380: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ -00056390: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -000563a0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -000563b0: 640a 2020 2d20 7061 636b 6167 655f 646e  d.  - package_dn
│ │ │ -000563c0: 662d 6175 746f 6d61 7469 635f 696e 7374  f-automatic_inst
│ │ │ -000563d0: 616c 6c65 640a 3c2f 636f 6465 3e3c 2f70  alled.

Remediation │ │ │ -00056490: 2053 6865 6c6c 2073 6372 6970 7420 e287 Shell script .. │ │ │ -000564a0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
Complexity: │ │ │ -00056570: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -00056580: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -000565d0: 2320 5265 6d65 6469 6174 696f 6e20 6973  # Remediation is
│ │ │ -000565e0: 2061 7070 6c69 6361 626c 6520 6f6e 6c79   applicable only
│ │ │ -000565f0: 2069 6e20 6365 7274 6169 6e20 706c 6174   in certain plat
│ │ │ -00056600: 666f 726d 730a 6966 2028 2028 2021 2028  forms.if ( ( ! (
│ │ │ -00056610: 207b 2072 706d 202d 2d71 7569 6574 202d   { rpm --quiet -
│ │ │ -00056620: 7120 6b65 726e 656c 203b 7d20 2661 6d70  q kernel ;} &
│ │ │ -00056630: 3b26 616d 703b 207b 2072 706d 202d 2d71  ;& { rpm --q
│ │ │ -00056640: 7569 6574 202d 7120 7270 6d2d 6f73 7472  uiet -q rpm-ostr
│ │ │ -00056650: 6565 203b 7d20 2661 6d70 3b26 616d 703b  ee ;} &&
│ │ │ -00056660: 207b 2072 706d 202d 2d71 7569 6574 202d   { rpm --quiet -
│ │ │ -00056670: 7120 626f 6f74 6320 3b7d 2026 616d 703b  q bootc ;} &
│ │ │ -00056680: 2661 6d70 3b20 7b20 2120 7270 6d20 2d2d  & { ! rpm --
│ │ │ -00056690: 7175 6965 7420 2d71 206f 7065 6e73 6869  quiet -q openshi
│ │ │ -000566a0: 6674 2d6b 7562 656c 6574 203b 7d20 2661  ft-kubelet ;} &a
│ │ │ -000566b0: 6d70 3b26 616d 703b 2028 5b20 2d66 202f  mp;& ([ -f /
│ │ │ -000566c0: 7275 6e2f 6f73 7472 6565 2d62 6f6f 7465  run/ostree-boote
│ │ │ -000566d0: 6420 5d20 7c7c 205b 202d 4c20 2f6f 7374  d ] || [ -L /ost
│ │ │ -000566e0: 7265 6520 5d29 2029 2026 616d 703b 2661  ree ]) ) &&a
│ │ │ -000566f0: 6d70 3b20 2120 2820 5b20 2d66 202f 2e64  mp; ! ( [ -f /.d
│ │ │ -00056700: 6f63 6b65 7265 6e76 205d 207c 7c20 5b20  ockerenv ] || [ 
│ │ │ -00056710: 2d66 202f 7275 6e2f 2e63 6f6e 7461 696e  -f /run/.contain
│ │ │ -00056720: 6572 656e 7620 5d20 2920 2920 293b 2074  erenv ] ) ) ); t
│ │ │ -00056730: 6865 6e0a 0a69 6620 2120 7270 6d20 2d71  hen..if ! rpm -q
│ │ │ -00056740: 202d 2d71 7569 6574 2022 646e 662d 6175   --quiet "dnf-au
│ │ │ -00056750: 746f 6d61 7469 6322 203b 2074 6865 6e0a  tomatic" ; then.
│ │ │ -00056760: 2020 2020 646e 6620 696e 7374 616c 6c20      dnf install 
│ │ │ -00056770: 2d79 2022 646e 662d 6175 746f 6d61 7469  -y "dnf-automati
│ │ │ -00056780: 6322 0a66 690a 0a65 6c73 650a 2020 2020  c".fi..else.    
│ │ │ -00056790: 2667 743b 2661 6d70 3b32 2065 6368 6f20  >&2 echo 
│ │ │ -000567a0: 2752 656d 6564 6961 7469 6f6e 2069 7320  'Remediation is 
│ │ │ -000567b0: 6e6f 7420 6170 706c 6963 6162 6c65 2c20  not applicable, 
│ │ │ -000567c0: 6e6f 7468 696e 6720 7761 7320 646f 6e65  nothing was done
│ │ │ -000567d0: 270a 6669 0a3c 2f63 6f64 653e 3c2f 7072  '.fi.
< │ │ │ +00055a60: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00055a70: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
low
Disru │ │ │ -00056550: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -00056560: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -000565a0: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -000565b0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexity │ │ │ +00055a30: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ +00055a50: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ +00055a80: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ +00055aa0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
- name: Gath
│ │ │ +00055ae0: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ +00055af0: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ +00055b00: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ +00055b10: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ +00055b20: 2020 2d20 656e 6162 6c65 5f73 7472 6174    - enable_strat
│ │ │ +00055b30: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +00055b40: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +00055b50: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +00055b60: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +00055b70: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +00055b80: 6564 0a20 202d 2070 6163 6b61 6765 5f64  ed.  - package_d
│ │ │ +00055b90: 6e66 2d61 7574 6f6d 6174 6963 5f69 6e73  nf-automatic_ins
│ │ │ +00055ba0: 7461 6c6c 6564 0a0a 2d20 6e61 6d65 3a20  talled..- name: 
│ │ │ +00055bb0: 456e 7375 7265 2064 6e66 2d61 7574 6f6d  Ensure dnf-autom
│ │ │ +00055bc0: 6174 6963 2069 7320 696e 7374 616c 6c65  atic is installe
│ │ │ +00055bd0: 640a 2020 616e 7369 626c 652e 6275 696c  d.  ansible.buil
│ │ │ +00055be0: 7469 6e2e 7061 636b 6167 653a 0a20 2020  tin.package:.   
│ │ │ +00055bf0: 206e 616d 653a 2064 6e66 2d61 7574 6f6d   name: dnf-autom
│ │ │ +00055c00: 6174 6963 0a20 2020 2073 7461 7465 3a20  atic.    state: 
│ │ │ +00055c10: 7072 6573 656e 740a 2020 7768 656e 3a20  present.  when: 
│ │ │ +00055c20: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ +00055c30: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +00055c40: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +00055c50: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ +00055c60: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +00055c70: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ +00055c80: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +00055c90: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +00055ca0: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ +00055cb0: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ +00055cc0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +00055cd0: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ +00055ce0: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +00055cf0: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ +00055d00: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ +00055d10: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ +00055d20: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ +00055d30: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +00055d40: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +00055d50: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ +00055d60: 2029 2029 0a20 2074 6167 733a 0a20 202d   ) ).  tags:.  -
│ │ │ +00055d70: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ +00055d80: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +00055d90: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +00055da0: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +00055db0: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ +00055dc0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +00055dd0: 2020 2d20 7061 636b 6167 655f 646e 662d    - package_dnf-
│ │ │ +00055de0: 6175 746f 6d61 7469 635f 696e 7374 616c  automatic_instal
│ │ │ +00055df0: 6c65 640a 3c2f 636f 6465 3e3c 2f70 7265  led.
Remediation P │ │ │ +00055eb0: 7570 7065 7420 736e 6970 7065 7420 e287 uppet snippet .. │ │ │ +00055ec0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
Complexity: │ │ │ +00055f90: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00055fa0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +00055ff0: 696e 636c 7564 6520 696e 7374 616c 6c5f  include install_
│ │ │ +00056000: 646e 662d 6175 746f 6d61 7469 630a 0a63  dnf-automatic..c
│ │ │ +00056010: 6c61 7373 2069 6e73 7461 6c6c 5f64 6e66  lass install_dnf
│ │ │ +00056020: 2d61 7574 6f6d 6174 6963 207b 0a20 2070  -automatic {.  p
│ │ │ +00056030: 6163 6b61 6765 207b 2027 646e 662d 6175  ackage { 'dnf-au
│ │ │ +00056040: 746f 6d61 7469 6327 3a0a 2020 2020 656e  tomatic':.    en
│ │ │ +00056050: 7375 7265 203d 2667 743b 2027 696e 7374  sure => 'inst
│ │ │ +00056060: 616c 6c65 6427 2c0a 2020 7d0a 7d0a 3c2f  alled',.  }.}.
Rem │ │ │ +00056120: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ +00056130: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ +00056140: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
.[[packa │ │ │ +00056190: 6765 735d 5d0a 6e61 6d65 203d 2022 646e ges]].name = "dn │ │ │ +000561a0: 662d 6175 746f 6d61 7469 6322 0a76 6572 f-automatic".ver │ │ │ +000561b0: 7369 6f6e 203d 2022 2a22 0a3c 2f63 6f64 sion = "*".Remedi │ │ │ +00056270: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ +00056280: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
< │ │ │ +00056300: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ +00056340: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 enable
low
Disru │ │ │ +00055f70: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00055f80: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00055fc0: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +00055fd0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexit │ │ │ +00056310: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ +00056330: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ +00056360: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ +00056380: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
<
│ │ │ +000563b0: 636f 6465 3e23 2052 656d 6564 6961 7469  code># Remediati
│ │ │ +000563c0: 6f6e 2069 7320 6170 706c 6963 6162 6c65  on is applicable
│ │ │ +000563d0: 206f 6e6c 7920 696e 2063 6572 7461 696e   only in certain
│ │ │ +000563e0: 2070 6c61 7466 6f72 6d73 0a69 6620 2820   platforms.if ( 
│ │ │ +000563f0: 2820 2120 2820 7b20 7270 6d20 2d2d 7175  ( ! ( { rpm --qu
│ │ │ +00056400: 6965 7420 2d71 206b 6572 6e65 6c20 3b7d  iet -q kernel ;}
│ │ │ +00056410: 2026 616d 703b 2661 6d70 3b20 7b20 7270   && { rp
│ │ │ +00056420: 6d20 2d2d 7175 6965 7420 2d71 2072 706d  m --quiet -q rpm
│ │ │ +00056430: 2d6f 7374 7265 6520 3b7d 2026 616d 703b  -ostree ;} &
│ │ │ +00056440: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ +00056450: 6965 7420 2d71 2062 6f6f 7463 203b 7d20  iet -q bootc ;} 
│ │ │ +00056460: 2661 6d70 3b26 616d 703b 207b 2021 2072  && { ! r
│ │ │ +00056470: 706d 202d 2d71 7569 6574 202d 7120 6f70  pm --quiet -q op
│ │ │ +00056480: 656e 7368 6966 742d 6b75 6265 6c65 7420  enshift-kubelet 
│ │ │ +00056490: 3b7d 2026 616d 703b 2661 6d70 3b20 285b  ;} && ([
│ │ │ +000564a0: 202d 6620 2f72 756e 2f6f 7374 7265 652d   -f /run/ostree-
│ │ │ +000564b0: 626f 6f74 6564 205d 207c 7c20 5b20 2d4c  booted ] || [ -L
│ │ │ +000564c0: 202f 6f73 7472 6565 205d 2920 2920 2661   /ostree ]) ) &a
│ │ │ +000564d0: 6d70 3b26 616d 703b 2021 2028 205b 202d  mp;& ! ( [ -
│ │ │ +000564e0: 6620 2f2e 646f 636b 6572 656e 7620 5d20  f /.dockerenv ] 
│ │ │ +000564f0: 7c7c 205b 202d 6620 2f72 756e 2f2e 636f  || [ -f /run/.co
│ │ │ +00056500: 6e74 6169 6e65 7265 6e76 205d 2029 2029  ntainerenv ] ) )
│ │ │ +00056510: 2029 3b20 7468 656e 0a0a 6966 2021 2072   ); then..if ! r
│ │ │ +00056520: 706d 202d 7120 2d2d 7175 6965 7420 2264  pm -q --quiet "d
│ │ │ +00056530: 6e66 2d61 7574 6f6d 6174 6963 2220 3b20  nf-automatic" ; 
│ │ │ +00056540: 7468 656e 0a20 2020 2064 6e66 2069 6e73  then.    dnf ins
│ │ │ +00056550: 7461 6c6c 202d 7920 2264 6e66 2d61 7574  tall -y "dnf-aut
│ │ │ +00056560: 6f6d 6174 6963 220a 6669 0a0a 656c 7365  omatic".fi..else
│ │ │ +00056570: 0a20 2020 2026 6774 3b26 616d 703b 3220  .    >&2 
│ │ │ +00056580: 6563 686f 2027 5265 6d65 6469 6174 696f  echo 'Remediatio
│ │ │ +00056590: 6e20 6973 206e 6f74 2061 7070 6c69 6361  n is not applica
│ │ │ +000565a0: 626c 652c 206e 6f74 6869 6e67 2077 6173  ble, nothing was
│ │ │ +000565b0: 2064 6f6e 6527 0a66 690a 3c2f 636f 6465   done'.fi.
Remedia │ │ │ +00056670: 7469 6f6e 2041 6e61 636f 6e64 6120 736e tion Anaconda sn │ │ │ +00056680: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ +000566c0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +00056730: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +00056750: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +00056780: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ +000567a0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ +00056710: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +00056720: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +00056760: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +00056770: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
.package │ │ │ +000567c0: 202d 2d61 6464 3d64 6e66 2d61 7574 6f6d --add=dnf-autom │ │ │ +000567d0: 6174 6963 0a3c 2f63 6f64 653e 3c2f 7072 atic.
│ │ │ 00056800: 3c2f 7461 626c 653e 3c2f 7464 3e3c 2f74 Remediat │ │ │ -000ebdd0: 696f 6e20 4f53 4275 696c 6420 426c 7565 ion OSBuild Blue │ │ │ -000ebde0: 7072 696e 7420 736e 6970 7065 7420 e287 print snippet .. │ │ │ -000ebdf0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
[customizati
│ │ │ -000ebe40: 6f6e 732e 6b65 726e 656c 5d0a 6170 7065  ons.kernel].appe
│ │ │ -000ebe50: 6e64 203d 2022 696f 6d6d 753d 666f 7263  nd = "iommu=forc
│ │ │ -000ebe60: 6522 0a3c 2f63 6f64 653e 3c2f 7072 653e  e".
│ │ │ -000ebe70: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation A │ │ │ -000ebf20: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ -000ebf30: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -000ebfb0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -000ebff0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472
Complexity:< │ │ │ -000ebfc0: 2f74 683e 3c74 643e 6d65 6469 756d 3c2f /th>medium
│ │ │ -000ebfe0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ -000ec010: 3c2f 7468 3e3c 7464 3e74 7275 653c 2f74 true
S │ │ │ -000ec030: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:restrict
│ │ │ -000ec060: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -000ec070: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -000ec080: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -000ec090: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -000ec0a0: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -000ec0b0: 3a0a 2020 2d20 6772 7562 325f 656e 6162  :.  - grub2_enab
│ │ │ -000ec0c0: 6c65 5f69 6f6d 6d75 5f66 6f72 6365 0a20  le_iommu_force. 
│ │ │ -000ec0d0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -000ec0e0: 6e0a 2020 2d20 6d65 6469 756d 5f63 6f6d  n.  - medium_com
│ │ │ -000ec0f0: 706c 6578 6974 790a 2020 2d20 7265 626f  plexity.  - rebo
│ │ │ -000ec100: 6f74 5f72 6571 7569 7265 640a 2020 2d20  ot_required.  - 
│ │ │ -000ec110: 7265 7374 7269 6374 5f73 7472 6174 6567  restrict_strateg
│ │ │ -000ec120: 790a 2020 2d20 756e 6b6e 6f77 6e5f 7365  y.  - unknown_se
│ │ │ -000ec130: 7665 7269 7479 0a0a 2d20 6e61 6d65 3a20  verity..- name: 
│ │ │ -000ec140: 4368 6563 6b20 6966 2069 6f6d 6d75 2061  Check if iommu a
│ │ │ -000ec150: 7267 756d 656e 7420 6973 2061 6c72 6561  rgument is alrea
│ │ │ -000ec160: 6479 2070 7265 7365 6e74 2069 6e20 2f65  dy present in /e
│ │ │ -000ec170: 7463 2f64 6566 6175 6c74 2f67 7275 620a  tc/default/grub.
│ │ │ -000ec180: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -000ec190: 6e2e 736c 7572 703a 0a20 2020 2073 7263  n.slurp:.    src
│ │ │ -000ec1a0: 3a20 2f65 7463 2f64 6566 6175 6c74 2f67  : /etc/default/g
│ │ │ -000ec1b0: 7275 620a 2020 7265 6769 7374 6572 3a20  rub.  register: 
│ │ │ -000ec1c0: 6574 635f 6465 6661 756c 745f 6772 7562  etc_default_grub
│ │ │ -000ec1d0: 0a20 2077 6865 6e3a 2028 2022 6772 7562  .  when: ( "grub
│ │ │ -000ec1e0: 322d 636f 6d6d 6f6e 2220 696e 2061 6e73  2-common" in ans
│ │ │ -000ec1f0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -000ec200: 6765 7320 616e 6420 226b 6572 6e65 6c22  ges and "kernel"
│ │ │ -000ec210: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -000ec220: 732e 7061 636b 6167 6573 0a20 2020 2029  s.packages.    )
│ │ │ -000ec230: 0a20 2074 6167 733a 0a20 202d 2067 7275  .  tags:.  - gru
│ │ │ -000ec240: 6232 5f65 6e61 626c 655f 696f 6d6d 755f  b2_enable_iommu_
│ │ │ -000ec250: 666f 7263 650a 2020 2d20 6c6f 775f 6469  force.  - low_di
│ │ │ -000ec260: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ -000ec270: 6975 6d5f 636f 6d70 6c65 7869 7479 0a20  ium_complexity. 
│ │ │ -000ec280: 202d 2072 6562 6f6f 745f 7265 7175 6972   - reboot_requir
│ │ │ -000ec290: 6564 0a20 202d 2072 6573 7472 6963 745f  ed.  - restrict_
│ │ │ -000ec2a0: 7374 7261 7465 6779 0a20 202d 2075 6e6b  strategy.  - unk
│ │ │ -000ec2b0: 6e6f 776e 5f73 6576 6572 6974 790a 0a2d  nown_severity..-
│ │ │ -000ec2c0: 206e 616d 653a 2043 6865 636b 2069 6620   name: Check if 
│ │ │ -000ec2d0: 696f 6d6d 7520 6172 6775 6d65 6e74 2069  iommu argument i
│ │ │ -000ec2e0: 7320 616c 7265 6164 7920 7072 6573 656e  s already presen
│ │ │ -000ec2f0: 740a 2020 616e 7369 626c 652e 6275 696c  t.  ansible.buil
│ │ │ -000ec300: 7469 6e2e 636f 6d6d 616e 643a 202f 7362  tin.command: /sb
│ │ │ -000ec310: 696e 2f67 7275 6262 7920 2d2d 696e 666f  in/grubby --info
│ │ │ -000ec320: 3d41 4c4c 0a20 2072 6567 6973 7465 723a  =ALL.  register:
│ │ │ -000ec330: 2067 7275 6262 795f 696e 666f 0a20 2063   grubby_info.  c
│ │ │ -000ec340: 6865 636b 5f6d 6f64 653a 2066 616c 7365  heck_mode: false
│ │ │ -000ec350: 0a20 2063 6861 6e67 6564 5f77 6865 6e3a  .  changed_when:
│ │ │ -000ec360: 2066 616c 7365 0a20 2066 6169 6c65 645f   false.  failed_
│ │ │ -000ec370: 7768 656e 3a20 6661 6c73 650a 2020 7768  when: false.  wh
│ │ │ -000ec380: 656e 3a20 2820 2267 7275 6232 2d63 6f6d  en: ( "grub2-com
│ │ │ -000ec390: 6d6f 6e22 2069 6e20 616e 7369 626c 655f  mon" in ansible_
│ │ │ -000ec3a0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -000ec3b0: 6e64 2022 6b65 726e 656c 2220 696e 2061  nd "kernel" in a
│ │ │ -000ec3c0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -000ec3d0: 6b61 6765 730a 2020 2020 290a 2020 7461  kages.    ).  ta
│ │ │ -000ec3e0: 6773 3a0a 2020 2d20 6772 7562 325f 656e  gs:.  - grub2_en
│ │ │ -000ec3f0: 6162 6c65 5f69 6f6d 6d75 5f66 6f72 6365  able_iommu_force
│ │ │ -000ec400: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -000ec410: 696f 6e0a 2020 2d20 6d65 6469 756d 5f63  ion.  - medium_c
│ │ │ -000ec420: 6f6d 706c 6578 6974 790a 2020 2d20 7265  omplexity.  - re
│ │ │ -000ec430: 626f 6f74 5f72 6571 7569 7265 640a 2020  boot_required.  
│ │ │ -000ec440: 2d20 7265 7374 7269 6374 5f73 7472 6174  - restrict_strat
│ │ │ -000ec450: 6567 790a 2020 2d20 756e 6b6e 6f77 6e5f  egy.  - unknown_
│ │ │ -000ec460: 7365 7665 7269 7479 0a0a 2d20 6e61 6d65  severity..- name
│ │ │ -000ec470: 3a20 5570 6461 7465 2067 7275 6220 6465  : Update grub de
│ │ │ -000ec480: 6661 756c 7473 2061 6e64 2074 6865 2062  faults and the b
│ │ │ -000ec490: 6f6f 746c 6f61 6465 7220 6d65 6e75 0a20  ootloader menu. 
│ │ │ -000ec4a0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -000ec4b0: 2e63 6f6d 6d61 6e64 3a20 2f73 6269 6e2f  .command: /sbin/
│ │ │ -000ec4c0: 6772 7562 6279 202d 2d75 7064 6174 652d  grubby --update-
│ │ │ -000ec4d0: 6b65 726e 656c 3d41 4c4c 202d 2d61 7267  kernel=ALL --arg
│ │ │ -000ec4e0: 733d 2269 6f6d 6d75 3d66 6f72 6365 220a  s="iommu=force".
│ │ │ -000ec4f0: 2020 7768 656e 3a0a 2020 2d20 2820 2267    when:.  - ( "g
│ │ │ -000ec500: 7275 6232 2d63 6f6d 6d6f 6e22 2069 6e20  rub2-common" in 
│ │ │ -000ec510: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -000ec520: 636b 6167 6573 2061 6e64 2022 6b65 726e  ckages and "kern
│ │ │ -000ec530: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -000ec540: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -000ec550: 2020 290a 2020 2d20 2867 7275 6262 795f    ).  - (grubby_
│ │ │ -000ec560: 696e 666f 2e73 7464 6f75 7420 6973 206e  info.stdout is n
│ │ │ -000ec570: 6f74 2073 6561 7263 6828 2769 6f6d 6d75  ot search('iommu
│ │ │ -000ec580: 3d66 6f72 6365 2729 2920 6f72 2028 2865  =force')) or ((e
│ │ │ -000ec590: 7463 5f64 6566 6175 6c74 5f67 7275 625b  tc_default_grub[
│ │ │ -000ec5a0: 2763 6f6e 7465 6e74 275d 0a20 2020 207c  'content'].    |
│ │ │ -000ec5b0: 2062 3634 6465 636f 6465 2920 6973 206e   b64decode) is n
│ │ │ -000ec5c0: 6f74 2073 6561 7263 6828 2769 6f6d 6d75  ot search('iommu
│ │ │ -000ec5d0: 3d66 6f72 6365 2729 290a 2020 7461 6773  =force')).  tags
│ │ │ -000ec5e0: 3a0a 2020 2d20 6772 7562 325f 656e 6162  :.  - grub2_enab
│ │ │ -000ec5f0: 6c65 5f69 6f6d 6d75 5f66 6f72 6365 0a20  le_iommu_force. 
│ │ │ -000ec600: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -000ec610: 6e0a 2020 2d20 6d65 6469 756d 5f63 6f6d  n.  - medium_com
│ │ │ -000ec620: 706c 6578 6974 790a 2020 2d20 7265 626f  plexity.  - rebo
│ │ │ -000ec630: 6f74 5f72 6571 7569 7265 640a 2020 2d20  ot_required.  - 
│ │ │ -000ec640: 7265 7374 7269 6374 5f73 7472 6174 6567  restrict_strateg
│ │ │ -000ec650: 790a 2020 2d20 756e 6b6e 6f77 6e5f 7365  y.  - unknown_se
│ │ │ -000ec660: 7665 7269 7479 0a3c 2f63 6f64 653e 3c2f  verity.
< │ │ │ +000ebdf0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +000ebe00: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +000ebe10: 7365 2220 6964 3d22 6964 3231 3622 3e3c se" id="id216">< │ │ │ +000ebe20: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +000ebe30: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +000ebe40: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +000ebe50: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +000ebe60: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +000ebe70: 6974 793a 3c2f 7468 3e3c 7464 3e6d 6564 ity:med │ │ │ +000ebe80: 6975 6d3c 2f74 643e 3c2f 7472 3e3c 7472 iumDisruption: │ │ │ +000ebea0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowRe │ │ │ +000ebec0: 626f 6f74 3a3c 2f74 683e 3c74 643e 7472 boot:tr │ │ │ +000ebed0: 7565 3c2f 7464 3e3c 2f74 723e 3c74 723e ue │ │ │ +000ebee0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74 Strategy:restrict │ │ │ +000ebf10: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ +000ebf20: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ +000ebf30: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ +000ebf40: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ +000ebf50: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ +000ebf60: 2074 6167 733a 0a20 202d 2067 7275 6232   tags:.  - grub2
│ │ │ +000ebf70: 5f65 6e61 626c 655f 696f 6d6d 755f 666f  _enable_iommu_fo
│ │ │ +000ebf80: 7263 650a 2020 2d20 6c6f 775f 6469 7372  rce.  - low_disr
│ │ │ +000ebf90: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +000ebfa0: 6d5f 636f 6d70 6c65 7869 7479 0a20 202d  m_complexity.  -
│ │ │ +000ebfb0: 2072 6562 6f6f 745f 7265 7175 6972 6564   reboot_required
│ │ │ +000ebfc0: 0a20 202d 2072 6573 7472 6963 745f 7374  .  - restrict_st
│ │ │ +000ebfd0: 7261 7465 6779 0a20 202d 2075 6e6b 6e6f  rategy.  - unkno
│ │ │ +000ebfe0: 776e 5f73 6576 6572 6974 790a 0a2d 206e  wn_severity..- n
│ │ │ +000ebff0: 616d 653a 2043 6865 636b 2069 6620 696f  ame: Check if io
│ │ │ +000ec000: 6d6d 7520 6172 6775 6d65 6e74 2069 7320  mmu argument is 
│ │ │ +000ec010: 616c 7265 6164 7920 7072 6573 656e 7420  already present 
│ │ │ +000ec020: 696e 202f 6574 632f 6465 6661 756c 742f  in /etc/default/
│ │ │ +000ec030: 6772 7562 0a20 2061 6e73 6962 6c65 2e62  grub.  ansible.b
│ │ │ +000ec040: 7569 6c74 696e 2e73 6c75 7270 3a0a 2020  uiltin.slurp:.  
│ │ │ +000ec050: 2020 7372 633a 202f 6574 632f 6465 6661    src: /etc/defa
│ │ │ +000ec060: 756c 742f 6772 7562 0a20 2072 6567 6973  ult/grub.  regis
│ │ │ +000ec070: 7465 723a 2065 7463 5f64 6566 6175 6c74  ter: etc_default
│ │ │ +000ec080: 5f67 7275 620a 2020 7768 656e 3a20 2820  _grub.  when: ( 
│ │ │ +000ec090: 2267 7275 6232 2d63 6f6d 6d6f 6e22 2069  "grub2-common" i
│ │ │ +000ec0a0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +000ec0b0: 7061 636b 6167 6573 2061 6e64 2022 6b65  packages and "ke
│ │ │ +000ec0c0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +000ec0d0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +000ec0e0: 2020 2020 290a 2020 7461 6773 3a0a 2020      ).  tags:.  
│ │ │ +000ec0f0: 2d20 6772 7562 325f 656e 6162 6c65 5f69  - grub2_enable_i
│ │ │ +000ec100: 6f6d 6d75 5f66 6f72 6365 0a20 202d 206c  ommu_force.  - l
│ │ │ +000ec110: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +000ec120: 2d20 6d65 6469 756d 5f63 6f6d 706c 6578  - medium_complex
│ │ │ +000ec130: 6974 790a 2020 2d20 7265 626f 6f74 5f72  ity.  - reboot_r
│ │ │ +000ec140: 6571 7569 7265 640a 2020 2d20 7265 7374  equired.  - rest
│ │ │ +000ec150: 7269 6374 5f73 7472 6174 6567 790a 2020  rict_strategy.  
│ │ │ +000ec160: 2d20 756e 6b6e 6f77 6e5f 7365 7665 7269  - unknown_severi
│ │ │ +000ec170: 7479 0a0a 2d20 6e61 6d65 3a20 4368 6563  ty..- name: Chec
│ │ │ +000ec180: 6b20 6966 2069 6f6d 6d75 2061 7267 756d  k if iommu argum
│ │ │ +000ec190: 656e 7420 6973 2061 6c72 6561 6479 2070  ent is already p
│ │ │ +000ec1a0: 7265 7365 6e74 0a20 2061 6e73 6962 6c65  resent.  ansible
│ │ │ +000ec1b0: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ +000ec1c0: 3a20 2f73 6269 6e2f 6772 7562 6279 202d  : /sbin/grubby -
│ │ │ +000ec1d0: 2d69 6e66 6f3d 414c 4c0a 2020 7265 6769  -info=ALL.  regi
│ │ │ +000ec1e0: 7374 6572 3a20 6772 7562 6279 5f69 6e66  ster: grubby_inf
│ │ │ +000ec1f0: 6f0a 2020 6368 6563 6b5f 6d6f 6465 3a20  o.  check_mode: 
│ │ │ +000ec200: 6661 6c73 650a 2020 6368 616e 6765 645f  false.  changed_
│ │ │ +000ec210: 7768 656e 3a20 6661 6c73 650a 2020 6661  when: false.  fa
│ │ │ +000ec220: 696c 6564 5f77 6865 6e3a 2066 616c 7365  iled_when: false
│ │ │ +000ec230: 0a20 2077 6865 6e3a 2028 2022 6772 7562  .  when: ( "grub
│ │ │ +000ec240: 322d 636f 6d6d 6f6e 2220 696e 2061 6e73  2-common" in ans
│ │ │ +000ec250: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +000ec260: 6765 7320 616e 6420 226b 6572 6e65 6c22  ges and "kernel"
│ │ │ +000ec270: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +000ec280: 732e 7061 636b 6167 6573 0a20 2020 2029  s.packages.    )
│ │ │ +000ec290: 0a20 2074 6167 733a 0a20 202d 2067 7275  .  tags:.  - gru
│ │ │ +000ec2a0: 6232 5f65 6e61 626c 655f 696f 6d6d 755f  b2_enable_iommu_
│ │ │ +000ec2b0: 666f 7263 650a 2020 2d20 6c6f 775f 6469  force.  - low_di
│ │ │ +000ec2c0: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ +000ec2d0: 6975 6d5f 636f 6d70 6c65 7869 7479 0a20  ium_complexity. 
│ │ │ +000ec2e0: 202d 2072 6562 6f6f 745f 7265 7175 6972   - reboot_requir
│ │ │ +000ec2f0: 6564 0a20 202d 2072 6573 7472 6963 745f  ed.  - restrict_
│ │ │ +000ec300: 7374 7261 7465 6779 0a20 202d 2075 6e6b  strategy.  - unk
│ │ │ +000ec310: 6e6f 776e 5f73 6576 6572 6974 790a 0a2d  nown_severity..-
│ │ │ +000ec320: 206e 616d 653a 2055 7064 6174 6520 6772   name: Update gr
│ │ │ +000ec330: 7562 2064 6566 6175 6c74 7320 616e 6420  ub defaults and 
│ │ │ +000ec340: 7468 6520 626f 6f74 6c6f 6164 6572 206d  the bootloader m
│ │ │ +000ec350: 656e 750a 2020 616e 7369 626c 652e 6275  enu.  ansible.bu
│ │ │ +000ec360: 696c 7469 6e2e 636f 6d6d 616e 643a 202f  iltin.command: /
│ │ │ +000ec370: 7362 696e 2f67 7275 6262 7920 2d2d 7570  sbin/grubby --up
│ │ │ +000ec380: 6461 7465 2d6b 6572 6e65 6c3d 414c 4c20  date-kernel=ALL 
│ │ │ +000ec390: 2d2d 6172 6773 3d22 696f 6d6d 753d 666f  --args="iommu=fo
│ │ │ +000ec3a0: 7263 6522 0a20 2077 6865 6e3a 0a20 202d  rce".  when:.  -
│ │ │ +000ec3b0: 2028 2022 6772 7562 322d 636f 6d6d 6f6e   ( "grub2-common
│ │ │ +000ec3c0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +000ec3d0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +000ec3e0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +000ec3f0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +000ec400: 6573 0a20 2020 2029 0a20 202d 2028 6772  es.    ).  - (gr
│ │ │ +000ec410: 7562 6279 5f69 6e66 6f2e 7374 646f 7574  ubby_info.stdout
│ │ │ +000ec420: 2069 7320 6e6f 7420 7365 6172 6368 2827   is not search('
│ │ │ +000ec430: 696f 6d6d 753d 666f 7263 6527 2929 206f  iommu=force')) o
│ │ │ +000ec440: 7220 2828 6574 635f 6465 6661 756c 745f  r ((etc_default_
│ │ │ +000ec450: 6772 7562 5b27 636f 6e74 656e 7427 5d0a  grub['content'].
│ │ │ +000ec460: 2020 2020 7c20 6236 3464 6563 6f64 6529      | b64decode)
│ │ │ +000ec470: 2069 7320 6e6f 7420 7365 6172 6368 2827   is not search('
│ │ │ +000ec480: 696f 6d6d 753d 666f 7263 6527 2929 0a20  iommu=force')). 
│ │ │ +000ec490: 2074 6167 733a 0a20 202d 2067 7275 6232   tags:.  - grub2
│ │ │ +000ec4a0: 5f65 6e61 626c 655f 696f 6d6d 755f 666f  _enable_iommu_fo
│ │ │ +000ec4b0: 7263 650a 2020 2d20 6c6f 775f 6469 7372  rce.  - low_disr
│ │ │ +000ec4c0: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +000ec4d0: 6d5f 636f 6d70 6c65 7869 7479 0a20 202d  m_complexity.  -
│ │ │ +000ec4e0: 2072 6562 6f6f 745f 7265 7175 6972 6564   reboot_required
│ │ │ +000ec4f0: 0a20 202d 2072 6573 7472 6963 745f 7374  .  - restrict_st
│ │ │ +000ec500: 7261 7465 6779 0a20 202d 2075 6e6b 6e6f  rategy.  - unkno
│ │ │ +000ec510: 776e 5f73 6576 6572 6974 790a 3c2f 636f  wn_severity.
< │ │ │ +000ec530: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +000ec540: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +000ec550: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +000ec560: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +000ec570: 6432 3137 2220 7461 6269 6e64 6578 3d22 d217" tabindex=" │ │ │ +000ec580: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +000ec590: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +000ec5a0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +000ec5b0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +000ec5c0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +000ec5d0: 6469 6174 696f 6e20 4f53 4275 696c 6420 diation OSBuild │ │ │ +000ec5e0: 426c 7565 7072 696e 7420 736e 6970 7065 Blueprint snippe │ │ │ +000ec5f0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
[customi │ │ │ +000ec640: 7a61 7469 6f6e 732e 6b65 726e 656c 5d0a zations.kernel]. │ │ │ +000ec650: 6170 7065 6e64 203d 2022 696f 6d6d 753d append = "iommu= │ │ │ +000ec660: 666f 7263 6522 0a3c 2f63 6f64 653e 3c2f force".
Re │ │ │ -000ed710: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ -000ed720: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ -000ed730: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -000ed740: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -000ed750: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -000ed760: 7365 2220 6964 3d22 6964 3232 3022 3e3c se" id="id220">< │ │ │ -000ed770: 7072 653e 3c63 6f64 653e 5b63 7573 746f pre>[custo │ │ │ -000ed780: 6d69 7a61 7469 6f6e 732e 6b65 726e 656c mizations.kernel │ │ │ -000ed790: 5d0a 6170 7065 6e64 203d 2022 6c31 7466 ].append = "l1tf │ │ │ -000ed7a0: 3d3c 6162 6272 2074 6974 6c65 3d22 6672 =fu │ │ │ -000ed800: 6c6c 2c66 6f72 6365 3c2f 6162 6272 3e22 ll,force" │ │ │ -000ed810: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .Remediation Ans │ │ │ -000ed8d0: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ -000ed8e0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity:low< │ │ │ -000ed9b0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ -000ed9d0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472
medium
Di │ │ │ -000ed990: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:true
Str │ │ │ -000ed9e0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e72 ategy:r │ │ │ -000ed9f0: 6573 7472 6963 743c 2f74 643e 3c2f 7472 estrict
- name: Gath
│ │ │ -000eda20: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ -000eda30: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ -000eda40: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ -000eda50: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ -000eda60: 2020 2d20 6772 7562 325f 6c31 7466 5f61    - grub2_l1tf_a
│ │ │ -000eda70: 7267 756d 656e 740a 2020 2d20 6869 6768  rgument.  - high
│ │ │ -000eda80: 5f73 6576 6572 6974 790a 2020 2d20 6c6f  _severity.  - lo
│ │ │ -000eda90: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -000edaa0: 206d 6564 6975 6d5f 636f 6d70 6c65 7869   medium_complexi
│ │ │ -000edab0: 7479 0a20 202d 2072 6562 6f6f 745f 7265  ty.  - reboot_re
│ │ │ -000edac0: 7175 6972 6564 0a20 202d 2072 6573 7472  quired.  - restr
│ │ │ -000edad0: 6963 745f 7374 7261 7465 6779 0a2d 206e  ict_strategy.- n
│ │ │ -000edae0: 616d 653a 2058 4343 4446 2056 616c 7565  ame: XCCDF Value
│ │ │ -000edaf0: 2076 6172 5f6c 3174 665f 6f70 7469 6f6e   var_l1tf_option
│ │ │ -000edb00: 7320 2320 7072 6f6d 6f74 6520 746f 2076  s # promote to v
│ │ │ -000edb10: 6172 6961 626c 650a 2020 7365 745f 6661  ariable.  set_fa
│ │ │ -000edb20: 6374 3a0a 2020 2020 7661 725f 6c31 7466  ct:.    var_l1tf
│ │ │ -000edb30: 5f6f 7074 696f 6e73 3a20 2121 7374 7220  _options: !!str 
│ │ │ -000edb40: 3c61 6262 7220 7469 746c 653d 2266 726f  ful
│ │ │ -000edba0: 6c2c 666f 7263 653c 2f61 6262 723e 0a20  l,force. 
│ │ │ -000edbb0: 2074 6167 733a 0a20 2020 202d 2061 6c77   tags:.    - alw
│ │ │ -000edbc0: 6179 730a 0a2d 206e 616d 653a 2043 6865  ays..- name: Che
│ │ │ -000edbd0: 636b 2069 6620 6c31 7466 2061 7267 756d  ck if l1tf argum
│ │ │ -000edbe0: 656e 7420 6973 2061 6c72 6561 6479 2070  ent is already p
│ │ │ -000edbf0: 7265 7365 6e74 2069 6e20 2f65 7463 2f64  resent in /etc/d
│ │ │ -000edc00: 6566 6175 6c74 2f67 7275 620a 2020 616e  efault/grub.  an
│ │ │ -000edc10: 7369 626c 652e 6275 696c 7469 6e2e 736c  sible.builtin.sl
│ │ │ -000edc20: 7572 703a 0a20 2020 2073 7263 3a20 2f65  urp:.    src: /e
│ │ │ -000edc30: 7463 2f64 6566 6175 6c74 2f67 7275 620a  tc/default/grub.
│ │ │ -000edc40: 2020 7265 6769 7374 6572 3a20 6574 635f    register: etc_
│ │ │ -000edc50: 6465 6661 756c 745f 6772 7562 0a20 2077  default_grub.  w
│ │ │ -000edc60: 6865 6e3a 2028 2022 6772 7562 322d 636f  hen: ( "grub2-co
│ │ │ -000edc70: 6d6d 6f6e 2220 696e 2061 6e73 6962 6c65  mmon" in ansible
│ │ │ -000edc80: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -000edc90: 616e 6420 226b 6572 6e65 6c22 2069 6e20  and "kernel" in 
│ │ │ -000edca0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -000edcb0: 636b 6167 6573 0a20 2020 2029 0a20 2074  ckages.    ).  t
│ │ │ -000edcc0: 6167 733a 0a20 202d 2067 7275 6232 5f6c  ags:.  - grub2_l
│ │ │ -000edcd0: 3174 665f 6172 6775 6d65 6e74 0a20 202d  1tf_argument.  -
│ │ │ -000edce0: 2068 6967 685f 7365 7665 7269 7479 0a20   high_severity. 
│ │ │ -000edcf0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -000edd00: 6e0a 2020 2d20 6d65 6469 756d 5f63 6f6d  n.  - medium_com
│ │ │ -000edd10: 706c 6578 6974 790a 2020 2d20 7265 626f  plexity.  - rebo
│ │ │ -000edd20: 6f74 5f72 6571 7569 7265 640a 2020 2d20  ot_required.  - 
│ │ │ -000edd30: 7265 7374 7269 6374 5f73 7472 6174 6567  restrict_strateg
│ │ │ -000edd40: 790a 0a2d 206e 616d 653a 2043 6865 636b  y..- name: Check
│ │ │ -000edd50: 2069 6620 6c31 7466 2061 7267 756d 656e   if l1tf argumen
│ │ │ -000edd60: 7420 6973 2061 6c72 6561 6479 2070 7265  t is already pre
│ │ │ -000edd70: 7365 6e74 0a20 2061 6e73 6962 6c65 2e62  sent.  ansible.b
│ │ │ -000edd80: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ -000edd90: 2f73 6269 6e2f 6772 7562 6279 202d 2d69  /sbin/grubby --i
│ │ │ -000edda0: 6e66 6f3d 414c 4c0a 2020 7265 6769 7374  nfo=ALL.  regist
│ │ │ -000eddb0: 6572 3a20 6772 7562 6279 5f69 6e66 6f0a  er: grubby_info.
│ │ │ -000eddc0: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661    check_mode: fa
│ │ │ -000eddd0: 6c73 650a 2020 6368 616e 6765 645f 7768  lse.  changed_wh
│ │ │ -000edde0: 656e 3a20 6661 6c73 650a 2020 6661 696c  en: false.  fail
│ │ │ -000eddf0: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ -000ede00: 2077 6865 6e3a 2028 2022 6772 7562 322d   when: ( "grub2-
│ │ │ -000ede10: 636f 6d6d 6f6e 2220 696e 2061 6e73 6962  common" in ansib
│ │ │ -000ede20: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -000ede30: 7320 616e 6420 226b 6572 6e65 6c22 2069  s and "kernel" i
│ │ │ -000ede40: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -000ede50: 7061 636b 6167 6573 0a20 2020 2029 0a20  packages.    ). 
│ │ │ -000ede60: 2074 6167 733a 0a20 202d 2067 7275 6232   tags:.  - grub2
│ │ │ -000ede70: 5f6c 3174 665f 6172 6775 6d65 6e74 0a20  _l1tf_argument. 
│ │ │ -000ede80: 202d 2068 6967 685f 7365 7665 7269 7479   - high_severity
│ │ │ -000ede90: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -000edea0: 696f 6e0a 2020 2d20 6d65 6469 756d 5f63  ion.  - medium_c
│ │ │ -000edeb0: 6f6d 706c 6578 6974 790a 2020 2d20 7265  omplexity.  - re
│ │ │ -000edec0: 626f 6f74 5f72 6571 7569 7265 640a 2020  boot_required.  
│ │ │ -000eded0: 2d20 7265 7374 7269 6374 5f73 7472 6174  - restrict_strat
│ │ │ -000edee0: 6567 790a 0a2d 206e 616d 653a 2055 7064  egy..- name: Upd
│ │ │ -000edef0: 6174 6520 6772 7562 2064 6566 6175 6c74  ate grub default
│ │ │ -000edf00: 7320 616e 6420 7468 6520 626f 6f74 6c6f  s and the bootlo
│ │ │ -000edf10: 6164 6572 206d 656e 750a 2020 616e 7369  ader menu.  ansi
│ │ │ -000edf20: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ -000edf30: 616e 643a 202f 7362 696e 2f67 7275 6262  and: /sbin/grubb
│ │ │ -000edf40: 7920 2d2d 7570 6461 7465 2d6b 6572 6e65  y --update-kerne
│ │ │ -000edf50: 6c3d 414c 4c20 2d2d 6172 6773 3d22 6c31  l=ALL --args="l1
│ │ │ -000edf60: 7466 3d7b 7b20 7661 725f 6c31 7466 5f6f  tf={{ var_l1tf_o
│ │ │ -000edf70: 7074 696f 6e73 0a20 2020 207d 7d22 0a20  ptions.    }}". 
│ │ │ -000edf80: 2077 6865 6e3a 0a20 202d 2028 2022 6772   when:.  - ( "gr
│ │ │ -000edf90: 7562 322d 636f 6d6d 6f6e 2220 696e 2061  ub2-common" in a
│ │ │ -000edfa0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -000edfb0: 6b61 6765 7320 616e 6420 226b 6572 6e65  kages and "kerne
│ │ │ -000edfc0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -000edfd0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -000edfe0: 2029 0a20 202d 2028 6772 7562 6279 5f69   ).  - (grubby_i
│ │ │ -000edff0: 6e66 6f2e 7374 646f 7574 2069 7320 6e6f  nfo.stdout is no
│ │ │ -000ee000: 7420 7365 6172 6368 2827 6c31 7466 3d27  t search('l1tf='
│ │ │ -000ee010: 207e 2076 6172 5f6c 3174 665f 6f70 7469   ~ var_l1tf_opti
│ │ │ -000ee020: 6f6e 7329 2920 6f72 2028 2865 7463 5f64  ons)) or ((etc_d
│ │ │ -000ee030: 6566 6175 6c74 5f67 7275 625b 2763 6f6e  efault_grub['con
│ │ │ -000ee040: 7465 6e74 275d 0a20 2020 207c 2062 3634  tent'].    | b64
│ │ │ -000ee050: 6465 636f 6465 2920 6973 206e 6f74 2073  decode) is not s
│ │ │ -000ee060: 6561 7263 6828 276c 3174 663d 2720 7e20  earch('l1tf=' ~ 
│ │ │ -000ee070: 7661 725f 6c31 7466 5f6f 7074 696f 6e73  var_l1tf_options
│ │ │ -000ee080: 2929 0a20 2074 6167 733a 0a20 202d 2067  )).  tags:.  - g
│ │ │ -000ee090: 7275 6232 5f6c 3174 665f 6172 6775 6d65  rub2_l1tf_argume
│ │ │ -000ee0a0: 6e74 0a20 202d 2068 6967 685f 7365 7665  nt.  - high_seve
│ │ │ -000ee0b0: 7269 7479 0a20 202d 206c 6f77 5f64 6973  rity.  - low_dis
│ │ │ -000ee0c0: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ -000ee0d0: 756d 5f63 6f6d 706c 6578 6974 790a 2020  um_complexity.  
│ │ │ -000ee0e0: 2d20 7265 626f 6f74 5f72 6571 7569 7265  - reboot_require
│ │ │ -000ee0f0: 640a 2020 2d20 7265 7374 7269 6374 5f73  d.  - restrict_s
│ │ │ -000ee100: 7472 6174 6567 790a 3c2f 636f 6465 3e3c  trategy.<
│ │ │ +000ed710: 6d65 6469 6174 696f 6e20 416e 7369 626c  mediation Ansibl
│ │ │ +000ed720: 6520 736e 6970 7065 7420 e287 b23c 2f61  e snippet ...
< │ │ │ +000ed7c0: 7464 3e6d 6564 6975 6d3c 2f74 643e 3c2f td>medium │ │ │ +000ed800: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +000ed810: 3c74 643e 7472 7565 3c2f 7464 3e3c 2f74
- name: Gather 
│ │ │ +000ed870: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ +000ed880: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ +000ed890: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ +000ed8a0: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ +000ed8b0: 2067 7275 6232 5f6c 3174 665f 6172 6775   grub2_l1tf_argu
│ │ │ +000ed8c0: 6d65 6e74 0a20 202d 2068 6967 685f 7365  ment.  - high_se
│ │ │ +000ed8d0: 7665 7269 7479 0a20 202d 206c 6f77 5f64  verity.  - low_d
│ │ │ +000ed8e0: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +000ed8f0: 6469 756d 5f63 6f6d 706c 6578 6974 790a  dium_complexity.
│ │ │ +000ed900: 2020 2d20 7265 626f 6f74 5f72 6571 7569    - reboot_requi
│ │ │ +000ed910: 7265 640a 2020 2d20 7265 7374 7269 6374  red.  - restrict
│ │ │ +000ed920: 5f73 7472 6174 6567 790a 2d20 6e61 6d65  _strategy.- name
│ │ │ +000ed930: 3a20 5843 4344 4620 5661 6c75 6520 7661  : XCCDF Value va
│ │ │ +000ed940: 725f 6c31 7466 5f6f 7074 696f 6e73 2023  r_l1tf_options #
│ │ │ +000ed950: 2070 726f 6d6f 7465 2074 6f20 7661 7269   promote to vari
│ │ │ +000ed960: 6162 6c65 0a20 2073 6574 5f66 6163 743a  able.  set_fact:
│ │ │ +000ed970: 0a20 2020 2076 6172 5f6c 3174 665f 6f70  .    var_l1tf_op
│ │ │ +000ed980: 7469 6f6e 733a 2021 2173 7472 203c 6162  tions: !!str full,f
│ │ │ +000ed9f0: 6f72 6365 3c2f 6162 6272 3e0a 2020 7461  orce.  ta
│ │ │ +000eda00: 6773 3a0a 2020 2020 2d20 616c 7761 7973  gs:.    - always
│ │ │ +000eda10: 0a0a 2d20 6e61 6d65 3a20 4368 6563 6b20  ..- name: Check 
│ │ │ +000eda20: 6966 206c 3174 6620 6172 6775 6d65 6e74  if l1tf argument
│ │ │ +000eda30: 2069 7320 616c 7265 6164 7920 7072 6573   is already pres
│ │ │ +000eda40: 656e 7420 696e 202f 6574 632f 6465 6661  ent in /etc/defa
│ │ │ +000eda50: 756c 742f 6772 7562 0a20 2061 6e73 6962  ult/grub.  ansib
│ │ │ +000eda60: 6c65 2e62 7569 6c74 696e 2e73 6c75 7270  le.builtin.slurp
│ │ │ +000eda70: 3a0a 2020 2020 7372 633a 202f 6574 632f  :.    src: /etc/
│ │ │ +000eda80: 6465 6661 756c 742f 6772 7562 0a20 2072  default/grub.  r
│ │ │ +000eda90: 6567 6973 7465 723a 2065 7463 5f64 6566  egister: etc_def
│ │ │ +000edaa0: 6175 6c74 5f67 7275 620a 2020 7768 656e  ault_grub.  when
│ │ │ +000edab0: 3a20 2820 2267 7275 6232 2d63 6f6d 6d6f  : ( "grub2-commo
│ │ │ +000edac0: 6e22 2069 6e20 616e 7369 626c 655f 6661  n" in ansible_fa
│ │ │ +000edad0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +000edae0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +000edaf0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +000edb00: 6765 730a 2020 2020 290a 2020 7461 6773  ges.    ).  tags
│ │ │ +000edb10: 3a0a 2020 2d20 6772 7562 325f 6c31 7466  :.  - grub2_l1tf
│ │ │ +000edb20: 5f61 7267 756d 656e 740a 2020 2d20 6869  _argument.  - hi
│ │ │ +000edb30: 6768 5f73 6576 6572 6974 790a 2020 2d20  gh_severity.  - 
│ │ │ +000edb40: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +000edb50: 202d 206d 6564 6975 6d5f 636f 6d70 6c65   - medium_comple
│ │ │ +000edb60: 7869 7479 0a20 202d 2072 6562 6f6f 745f  xity.  - reboot_
│ │ │ +000edb70: 7265 7175 6972 6564 0a20 202d 2072 6573  required.  - res
│ │ │ +000edb80: 7472 6963 745f 7374 7261 7465 6779 0a0a  trict_strategy..
│ │ │ +000edb90: 2d20 6e61 6d65 3a20 4368 6563 6b20 6966  - name: Check if
│ │ │ +000edba0: 206c 3174 6620 6172 6775 6d65 6e74 2069   l1tf argument i
│ │ │ +000edbb0: 7320 616c 7265 6164 7920 7072 6573 656e  s already presen
│ │ │ +000edbc0: 740a 2020 616e 7369 626c 652e 6275 696c  t.  ansible.buil
│ │ │ +000edbd0: 7469 6e2e 636f 6d6d 616e 643a 202f 7362  tin.command: /sb
│ │ │ +000edbe0: 696e 2f67 7275 6262 7920 2d2d 696e 666f  in/grubby --info
│ │ │ +000edbf0: 3d41 4c4c 0a20 2072 6567 6973 7465 723a  =ALL.  register:
│ │ │ +000edc00: 2067 7275 6262 795f 696e 666f 0a20 2063   grubby_info.  c
│ │ │ +000edc10: 6865 636b 5f6d 6f64 653a 2066 616c 7365  heck_mode: false
│ │ │ +000edc20: 0a20 2063 6861 6e67 6564 5f77 6865 6e3a  .  changed_when:
│ │ │ +000edc30: 2066 616c 7365 0a20 2066 6169 6c65 645f   false.  failed_
│ │ │ +000edc40: 7768 656e 3a20 6661 6c73 650a 2020 7768  when: false.  wh
│ │ │ +000edc50: 656e 3a20 2820 2267 7275 6232 2d63 6f6d  en: ( "grub2-com
│ │ │ +000edc60: 6d6f 6e22 2069 6e20 616e 7369 626c 655f  mon" in ansible_
│ │ │ +000edc70: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +000edc80: 6e64 2022 6b65 726e 656c 2220 696e 2061  nd "kernel" in a
│ │ │ +000edc90: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +000edca0: 6b61 6765 730a 2020 2020 290a 2020 7461  kages.    ).  ta
│ │ │ +000edcb0: 6773 3a0a 2020 2d20 6772 7562 325f 6c31  gs:.  - grub2_l1
│ │ │ +000edcc0: 7466 5f61 7267 756d 656e 740a 2020 2d20  tf_argument.  - 
│ │ │ +000edcd0: 6869 6768 5f73 6576 6572 6974 790a 2020  high_severity.  
│ │ │ +000edce0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +000edcf0: 0a20 202d 206d 6564 6975 6d5f 636f 6d70  .  - medium_comp
│ │ │ +000edd00: 6c65 7869 7479 0a20 202d 2072 6562 6f6f  lexity.  - reboo
│ │ │ +000edd10: 745f 7265 7175 6972 6564 0a20 202d 2072  t_required.  - r
│ │ │ +000edd20: 6573 7472 6963 745f 7374 7261 7465 6779  estrict_strategy
│ │ │ +000edd30: 0a0a 2d20 6e61 6d65 3a20 5570 6461 7465  ..- name: Update
│ │ │ +000edd40: 2067 7275 6220 6465 6661 756c 7473 2061   grub defaults a
│ │ │ +000edd50: 6e64 2074 6865 2062 6f6f 746c 6f61 6465  nd the bootloade
│ │ │ +000edd60: 7220 6d65 6e75 0a20 2061 6e73 6962 6c65  r menu.  ansible
│ │ │ +000edd70: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ +000edd80: 3a20 2f73 6269 6e2f 6772 7562 6279 202d  : /sbin/grubby -
│ │ │ +000edd90: 2d75 7064 6174 652d 6b65 726e 656c 3d41  -update-kernel=A
│ │ │ +000edda0: 4c4c 202d 2d61 7267 733d 226c 3174 663d  LL --args="l1tf=
│ │ │ +000eddb0: 7b7b 2076 6172 5f6c 3174 665f 6f70 7469  {{ var_l1tf_opti
│ │ │ +000eddc0: 6f6e 730a 2020 2020 7d7d 220a 2020 7768  ons.    }}".  wh
│ │ │ +000eddd0: 656e 3a0a 2020 2d20 2820 2267 7275 6232  en:.  - ( "grub2
│ │ │ +000edde0: 2d63 6f6d 6d6f 6e22 2069 6e20 616e 7369  -common" in ansi
│ │ │ +000eddf0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +000ede00: 6573 2061 6e64 2022 6b65 726e 656c 2220  es and "kernel" 
│ │ │ +000ede10: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +000ede20: 2e70 6163 6b61 6765 730a 2020 2020 290a  .packages.    ).
│ │ │ +000ede30: 2020 2d20 2867 7275 6262 795f 696e 666f    - (grubby_info
│ │ │ +000ede40: 2e73 7464 6f75 7420 6973 206e 6f74 2073  .stdout is not s
│ │ │ +000ede50: 6561 7263 6828 276c 3174 663d 2720 7e20  earch('l1tf=' ~ 
│ │ │ +000ede60: 7661 725f 6c31 7466 5f6f 7074 696f 6e73  var_l1tf_options
│ │ │ +000ede70: 2929 206f 7220 2828 6574 635f 6465 6661  )) or ((etc_defa
│ │ │ +000ede80: 756c 745f 6772 7562 5b27 636f 6e74 656e  ult_grub['conten
│ │ │ +000ede90: 7427 5d0a 2020 2020 7c20 6236 3464 6563  t'].    | b64dec
│ │ │ +000edea0: 6f64 6529 2069 7320 6e6f 7420 7365 6172  ode) is not sear
│ │ │ +000edeb0: 6368 2827 6c31 7466 3d27 207e 2076 6172  ch('l1tf=' ~ var
│ │ │ +000edec0: 5f6c 3174 665f 6f70 7469 6f6e 7329 290a  _l1tf_options)).
│ │ │ +000eded0: 2020 7461 6773 3a0a 2020 2d20 6772 7562    tags:.  - grub
│ │ │ +000edee0: 325f 6c31 7466 5f61 7267 756d 656e 740a  2_l1tf_argument.
│ │ │ +000edef0: 2020 2d20 6869 6768 5f73 6576 6572 6974    - high_severit
│ │ │ +000edf00: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ +000edf10: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ +000edf20: 636f 6d70 6c65 7869 7479 0a20 202d 2072  complexity.  - r
│ │ │ +000edf30: 6562 6f6f 745f 7265 7175 6972 6564 0a20  eboot_required. 
│ │ │ +000edf40: 202d 2072 6573 7472 6963 745f 7374 7261   - restrict_stra
│ │ │ +000edf50: 7465 6779 0a3c 2f63 6f64 653e 3c2f 7072  tegy.Remediation
│ │ │ +000ee010: 204f 5342 7569 6c64 2042 6c75 6570 7269   OSBuild Bluepri
│ │ │ +000ee020: 6e74 2073 6e69 7070 6574 20e2 87b2 3c2f  nt snippet ...
[customizations
│ │ │ +000ee080: 2e6b 6572 6e65 6c5d 0a61 7070 656e 6420  .kernel].append 
│ │ │ +000ee090: 3d20 226c 3174 663d 3c61 6262 7220 7469  = "l1tf=full,force<
│ │ │ +000ee100: 2f61 6262 723e 220a 3c2f 636f 6465 3e3c  /abbr>".<
│ │ │  000ee110: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remedia │ │ │ -000eef90: 7469 6f6e 204f 5342 7569 6c64 2042 6c75 tion OSBuild Blu │ │ │ -000eefa0: 6570 7269 6e74 2073 6e69 7070 6574 20e2 eprint snippet . │ │ │ -000eefb0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
<
│ │ │ -000eeff0: 636f 6465 3e5b 6375 7374 6f6d 697a 6174  code>[customizat
│ │ │ -000ef000: 696f 6e73 2e6b 6572 6e65 6c5d 0a61 7070  ions.kernel].app
│ │ │ -000ef010: 656e 6420 3d20 226d 6365 3d30 220a 3c2f  end = "mce=0".
Re │ │ │ -000ef0d0: 6d65 6469 6174 696f 6e20 416e 7369 626c mediation Ansibl │ │ │ -000ef0e0: 6520 736e 6970 7065 7420 e287 b23c 2f61 e snippet ...
C │ │ │ +000ed7b0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disru │ │ │ +000ed7e0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +000ed7f0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:true
Strate │ │ │ +000ed830: 6779 3a3c 2f74 683e 3c74 643e 7265 7374 gy:rest │ │ │ +000ed840: 7269 6374 3c2f 7464 3e3c 2f74 723e 3c2f rict
< │ │ │ -000ef180: 7464 3e6d 6564 6975 6d3c 2f74 643e 3c2f td>medium │ │ │ -000ef1c0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -000ef1d0: 3c74 643e 7472 7565 3c2f 7464 3e3c 2f74
- name: Gather 
│ │ │ -000ef230: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -000ef240: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -000ef250: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -000ef260: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -000ef270: 2067 7275 6232 5f6d 6365 5f61 7267 756d   grub2_mce_argum
│ │ │ -000ef280: 656e 740a 2020 2d20 6c6f 775f 6469 7372  ent.  - low_disr
│ │ │ -000ef290: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ -000ef2a0: 6d5f 636f 6d70 6c65 7869 7479 0a20 202d  m_complexity.  -
│ │ │ -000ef2b0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -000ef2c0: 0a20 202d 2072 6562 6f6f 745f 7265 7175  .  - reboot_requ
│ │ │ -000ef2d0: 6972 6564 0a20 202d 2072 6573 7472 6963  ired.  - restric
│ │ │ -000ef2e0: 745f 7374 7261 7465 6779 0a0a 2d20 6e61  t_strategy..- na
│ │ │ -000ef2f0: 6d65 3a20 4368 6563 6b20 6966 206d 6365  me: Check if mce
│ │ │ -000ef300: 2061 7267 756d 656e 7420 6973 2061 6c72   argument is alr
│ │ │ -000ef310: 6561 6479 2070 7265 7365 6e74 2069 6e20  eady present in 
│ │ │ -000ef320: 2f65 7463 2f64 6566 6175 6c74 2f67 7275  /etc/default/gru
│ │ │ -000ef330: 620a 2020 616e 7369 626c 652e 6275 696c  b.  ansible.buil
│ │ │ -000ef340: 7469 6e2e 736c 7572 703a 0a20 2020 2073  tin.slurp:.    s
│ │ │ -000ef350: 7263 3a20 2f65 7463 2f64 6566 6175 6c74  rc: /etc/default
│ │ │ -000ef360: 2f67 7275 620a 2020 7265 6769 7374 6572  /grub.  register
│ │ │ -000ef370: 3a20 6574 635f 6465 6661 756c 745f 6772  : etc_default_gr
│ │ │ -000ef380: 7562 0a20 2077 6865 6e3a 2028 2022 6772  ub.  when: ( "gr
│ │ │ -000ef390: 7562 322d 636f 6d6d 6f6e 2220 696e 2061  ub2-common" in a
│ │ │ -000ef3a0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -000ef3b0: 6b61 6765 7320 616e 6420 226b 6572 6e65  kages and "kerne
│ │ │ -000ef3c0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -000ef3d0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -000ef3e0: 2029 0a20 2074 6167 733a 0a20 202d 2067   ).  tags:.  - g
│ │ │ -000ef3f0: 7275 6232 5f6d 6365 5f61 7267 756d 656e  rub2_mce_argumen
│ │ │ -000ef400: 740a 2020 2d20 6c6f 775f 6469 7372 7570  t.  - low_disrup
│ │ │ -000ef410: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ -000ef420: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -000ef430: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -000ef440: 202d 2072 6562 6f6f 745f 7265 7175 6972   - reboot_requir
│ │ │ -000ef450: 6564 0a20 202d 2072 6573 7472 6963 745f  ed.  - restrict_
│ │ │ -000ef460: 7374 7261 7465 6779 0a0a 2d20 6e61 6d65  strategy..- name
│ │ │ -000ef470: 3a20 4368 6563 6b20 6966 206d 6365 2061  : Check if mce a
│ │ │ -000ef480: 7267 756d 656e 7420 6973 2061 6c72 6561  rgument is alrea
│ │ │ -000ef490: 6479 2070 7265 7365 6e74 0a20 2061 6e73  dy present.  ans
│ │ │ -000ef4a0: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d  ible.builtin.com
│ │ │ -000ef4b0: 6d61 6e64 3a20 2f73 6269 6e2f 6772 7562  mand: /sbin/grub
│ │ │ -000ef4c0: 6279 202d 2d69 6e66 6f3d 414c 4c0a 2020  by --info=ALL.  
│ │ │ -000ef4d0: 7265 6769 7374 6572 3a20 6772 7562 6279  register: grubby
│ │ │ -000ef4e0: 5f69 6e66 6f0a 2020 6368 6563 6b5f 6d6f  _info.  check_mo
│ │ │ -000ef4f0: 6465 3a20 6661 6c73 650a 2020 6368 616e  de: false.  chan
│ │ │ -000ef500: 6765 645f 7768 656e 3a20 6661 6c73 650a  ged_when: false.
│ │ │ -000ef510: 2020 6661 696c 6564 5f77 6865 6e3a 2066    failed_when: f
│ │ │ -000ef520: 616c 7365 0a20 2077 6865 6e3a 2028 2022  alse.  when: ( "
│ │ │ -000ef530: 6772 7562 322d 636f 6d6d 6f6e 2220 696e  grub2-common" in
│ │ │ -000ef540: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -000ef550: 6163 6b61 6765 7320 616e 6420 226b 6572  ackages and "ker
│ │ │ -000ef560: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -000ef570: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -000ef580: 2020 2029 0a20 2074 6167 733a 0a20 202d     ).  tags:.  -
│ │ │ -000ef590: 2067 7275 6232 5f6d 6365 5f61 7267 756d   grub2_mce_argum
│ │ │ -000ef5a0: 656e 740a 2020 2d20 6c6f 775f 6469 7372  ent.  - low_disr
│ │ │ -000ef5b0: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ -000ef5c0: 6d5f 636f 6d70 6c65 7869 7479 0a20 202d  m_complexity.  -
│ │ │ -000ef5d0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -000ef5e0: 0a20 202d 2072 6562 6f6f 745f 7265 7175  .  - reboot_requ
│ │ │ -000ef5f0: 6972 6564 0a20 202d 2072 6573 7472 6963  ired.  - restric
│ │ │ -000ef600: 745f 7374 7261 7465 6779 0a0a 2d20 6e61  t_strategy..- na
│ │ │ -000ef610: 6d65 3a20 5570 6461 7465 2067 7275 6220  me: Update grub 
│ │ │ -000ef620: 6465 6661 756c 7473 2061 6e64 2074 6865  defaults and the
│ │ │ -000ef630: 2062 6f6f 746c 6f61 6465 7220 6d65 6e75   bootloader menu
│ │ │ -000ef640: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -000ef650: 696e 2e63 6f6d 6d61 6e64 3a20 2f73 6269  in.command: /sbi
│ │ │ -000ef660: 6e2f 6772 7562 6279 202d 2d75 7064 6174  n/grubby --updat
│ │ │ -000ef670: 652d 6b65 726e 656c 3d41 4c4c 202d 2d61  e-kernel=ALL --a
│ │ │ -000ef680: 7267 733d 226d 6365 3d30 220a 2020 7768  rgs="mce=0".  wh
│ │ │ -000ef690: 656e 3a0a 2020 2d20 2820 2267 7275 6232  en:.  - ( "grub2
│ │ │ -000ef6a0: 2d63 6f6d 6d6f 6e22 2069 6e20 616e 7369  -common" in ansi
│ │ │ -000ef6b0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -000ef6c0: 6573 2061 6e64 2022 6b65 726e 656c 2220  es and "kernel" 
│ │ │ -000ef6d0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -000ef6e0: 2e70 6163 6b61 6765 730a 2020 2020 290a  .packages.    ).
│ │ │ -000ef6f0: 2020 2d20 2867 7275 6262 795f 696e 666f    - (grubby_info
│ │ │ -000ef700: 2e73 7464 6f75 7420 6973 206e 6f74 2073  .stdout is not s
│ │ │ -000ef710: 6561 7263 6828 276d 6365 3d30 2729 2920  earch('mce=0')) 
│ │ │ -000ef720: 6f72 2028 2865 7463 5f64 6566 6175 6c74  or ((etc_default
│ │ │ -000ef730: 5f67 7275 625b 2763 6f6e 7465 6e74 275d  _grub['content']
│ │ │ -000ef740: 207c 0a20 2020 2062 3634 6465 636f 6465   |.    b64decode
│ │ │ -000ef750: 2920 6973 206e 6f74 2073 6561 7263 6828  ) is not search(
│ │ │ -000ef760: 276d 6365 3d30 2729 290a 2020 7461 6773  'mce=0')).  tags
│ │ │ -000ef770: 3a0a 2020 2d20 6772 7562 325f 6d63 655f  :.  - grub2_mce_
│ │ │ -000ef780: 6172 6775 6d65 6e74 0a20 202d 206c 6f77  argument.  - low
│ │ │ -000ef790: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -000ef7a0: 6d65 6469 756d 5f63 6f6d 706c 6578 6974  medium_complexit
│ │ │ -000ef7b0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -000ef7c0: 6572 6974 790a 2020 2d20 7265 626f 6f74  erity.  - reboot
│ │ │ -000ef7d0: 5f72 6571 7569 7265 640a 2020 2d20 7265  _required.  - re
│ │ │ -000ef7e0: 7374 7269 6374 5f73 7472 6174 6567 790a  strict_strategy.
│ │ │ +000eef90: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69  tion Ansible sni
│ │ │ +000eefa0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e  ppet ...
│ │ │ +000eefb0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +000eefe0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
C │ │ │ -000ef170: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disru │ │ │ -000ef1a0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -000ef1b0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:true
Strate │ │ │ -000ef1f0: 6779 3a3c 2f74 683e 3c74 643e 7265 7374 gy:rest │ │ │ -000ef200: 7269 6374 3c2f 7464 3e3c 2f74 723e 3c2f rict
Comple │ │ │ +000ef030: 7869 7479 3a3c 2f74 683e 3c74 643e 6d65 xity:me │ │ │ +000ef040: 6469 756d 3c2f 7464 3e3c 2f74 723e 3c74 dium
Disruption │ │ │ +000ef060: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +000ef080: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e74 eboot:t │ │ │ +000ef090: 7275 653c 2f74 643e 3c2f 7472 3e3c 7472 rue
Strategy:restrict< │ │ │ +000ef0c0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ +000ef0e0: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ +000ef0f0: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ +000ef100: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ +000ef110: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ +000ef120: 2020 7461 6773 3a0a 2020 2d20 6772 7562    tags:.  - grub
│ │ │ +000ef130: 325f 6d63 655f 6172 6775 6d65 6e74 0a20  2_mce_argument. 
│ │ │ +000ef140: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +000ef150: 6e0a 2020 2d20 6d65 6469 756d 5f63 6f6d  n.  - medium_com
│ │ │ +000ef160: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +000ef170: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +000ef180: 7265 626f 6f74 5f72 6571 7569 7265 640a  reboot_required.
│ │ │ +000ef190: 2020 2d20 7265 7374 7269 6374 5f73 7472    - restrict_str
│ │ │ +000ef1a0: 6174 6567 790a 0a2d 206e 616d 653a 2043  ategy..- name: C
│ │ │ +000ef1b0: 6865 636b 2069 6620 6d63 6520 6172 6775  heck if mce argu
│ │ │ +000ef1c0: 6d65 6e74 2069 7320 616c 7265 6164 7920  ment is already 
│ │ │ +000ef1d0: 7072 6573 656e 7420 696e 202f 6574 632f  present in /etc/
│ │ │ +000ef1e0: 6465 6661 756c 742f 6772 7562 0a20 2061  default/grub.  a
│ │ │ +000ef1f0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e73  nsible.builtin.s
│ │ │ +000ef200: 6c75 7270 3a0a 2020 2020 7372 633a 202f  lurp:.    src: /
│ │ │ +000ef210: 6574 632f 6465 6661 756c 742f 6772 7562  etc/default/grub
│ │ │ +000ef220: 0a20 2072 6567 6973 7465 723a 2065 7463  .  register: etc
│ │ │ +000ef230: 5f64 6566 6175 6c74 5f67 7275 620a 2020  _default_grub.  
│ │ │ +000ef240: 7768 656e 3a20 2820 2267 7275 6232 2d63  when: ( "grub2-c
│ │ │ +000ef250: 6f6d 6d6f 6e22 2069 6e20 616e 7369 626c  ommon" in ansibl
│ │ │ +000ef260: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +000ef270: 2061 6e64 2022 6b65 726e 656c 2220 696e   and "kernel" in
│ │ │ +000ef280: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +000ef290: 6163 6b61 6765 730a 2020 2020 290a 2020  ackages.    ).  
│ │ │ +000ef2a0: 7461 6773 3a0a 2020 2d20 6772 7562 325f  tags:.  - grub2_
│ │ │ +000ef2b0: 6d63 655f 6172 6775 6d65 6e74 0a20 202d  mce_argument.  -
│ │ │ +000ef2c0: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +000ef2d0: 2020 2d20 6d65 6469 756d 5f63 6f6d 706c    - medium_compl
│ │ │ +000ef2e0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ +000ef2f0: 5f73 6576 6572 6974 790a 2020 2d20 7265  _severity.  - re
│ │ │ +000ef300: 626f 6f74 5f72 6571 7569 7265 640a 2020  boot_required.  
│ │ │ +000ef310: 2d20 7265 7374 7269 6374 5f73 7472 6174  - restrict_strat
│ │ │ +000ef320: 6567 790a 0a2d 206e 616d 653a 2043 6865  egy..- name: Che
│ │ │ +000ef330: 636b 2069 6620 6d63 6520 6172 6775 6d65  ck if mce argume
│ │ │ +000ef340: 6e74 2069 7320 616c 7265 6164 7920 7072  nt is already pr
│ │ │ +000ef350: 6573 656e 740a 2020 616e 7369 626c 652e  esent.  ansible.
│ │ │ +000ef360: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ +000ef370: 202f 7362 696e 2f67 7275 6262 7920 2d2d   /sbin/grubby --
│ │ │ +000ef380: 696e 666f 3d41 4c4c 0a20 2072 6567 6973  info=ALL.  regis
│ │ │ +000ef390: 7465 723a 2067 7275 6262 795f 696e 666f  ter: grubby_info
│ │ │ +000ef3a0: 0a20 2063 6865 636b 5f6d 6f64 653a 2066  .  check_mode: f
│ │ │ +000ef3b0: 616c 7365 0a20 2063 6861 6e67 6564 5f77  alse.  changed_w
│ │ │ +000ef3c0: 6865 6e3a 2066 616c 7365 0a20 2066 6169  hen: false.  fai
│ │ │ +000ef3d0: 6c65 645f 7768 656e 3a20 6661 6c73 650a  led_when: false.
│ │ │ +000ef3e0: 2020 7768 656e 3a20 2820 2267 7275 6232    when: ( "grub2
│ │ │ +000ef3f0: 2d63 6f6d 6d6f 6e22 2069 6e20 616e 7369  -common" in ansi
│ │ │ +000ef400: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +000ef410: 6573 2061 6e64 2022 6b65 726e 656c 2220  es and "kernel" 
│ │ │ +000ef420: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +000ef430: 2e70 6163 6b61 6765 730a 2020 2020 290a  .packages.    ).
│ │ │ +000ef440: 2020 7461 6773 3a0a 2020 2d20 6772 7562    tags:.  - grub
│ │ │ +000ef450: 325f 6d63 655f 6172 6775 6d65 6e74 0a20  2_mce_argument. 
│ │ │ +000ef460: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +000ef470: 6e0a 2020 2d20 6d65 6469 756d 5f63 6f6d  n.  - medium_com
│ │ │ +000ef480: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +000ef490: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +000ef4a0: 7265 626f 6f74 5f72 6571 7569 7265 640a  reboot_required.
│ │ │ +000ef4b0: 2020 2d20 7265 7374 7269 6374 5f73 7472    - restrict_str
│ │ │ +000ef4c0: 6174 6567 790a 0a2d 206e 616d 653a 2055  ategy..- name: U
│ │ │ +000ef4d0: 7064 6174 6520 6772 7562 2064 6566 6175  pdate grub defau
│ │ │ +000ef4e0: 6c74 7320 616e 6420 7468 6520 626f 6f74  lts and the boot
│ │ │ +000ef4f0: 6c6f 6164 6572 206d 656e 750a 2020 616e  loader menu.  an
│ │ │ +000ef500: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ +000ef510: 6d6d 616e 643a 202f 7362 696e 2f67 7275  mmand: /sbin/gru
│ │ │ +000ef520: 6262 7920 2d2d 7570 6461 7465 2d6b 6572  bby --update-ker
│ │ │ +000ef530: 6e65 6c3d 414c 4c20 2d2d 6172 6773 3d22  nel=ALL --args="
│ │ │ +000ef540: 6d63 653d 3022 0a20 2077 6865 6e3a 0a20  mce=0".  when:. 
│ │ │ +000ef550: 202d 2028 2022 6772 7562 322d 636f 6d6d   - ( "grub2-comm
│ │ │ +000ef560: 6f6e 2220 696e 2061 6e73 6962 6c65 5f66  on" in ansible_f
│ │ │ +000ef570: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +000ef580: 6420 226b 6572 6e65 6c22 2069 6e20 616e  d "kernel" in an
│ │ │ +000ef590: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +000ef5a0: 6167 6573 0a20 2020 2029 0a20 202d 2028  ages.    ).  - (
│ │ │ +000ef5b0: 6772 7562 6279 5f69 6e66 6f2e 7374 646f  grubby_info.stdo
│ │ │ +000ef5c0: 7574 2069 7320 6e6f 7420 7365 6172 6368  ut is not search
│ │ │ +000ef5d0: 2827 6d63 653d 3027 2929 206f 7220 2828  ('mce=0')) or ((
│ │ │ +000ef5e0: 6574 635f 6465 6661 756c 745f 6772 7562  etc_default_grub
│ │ │ +000ef5f0: 5b27 636f 6e74 656e 7427 5d20 7c0a 2020  ['content'] |.  
│ │ │ +000ef600: 2020 6236 3464 6563 6f64 6529 2069 7320    b64decode) is 
│ │ │ +000ef610: 6e6f 7420 7365 6172 6368 2827 6d63 653d  not search('mce=
│ │ │ +000ef620: 3027 2929 0a20 2074 6167 733a 0a20 202d  0')).  tags:.  -
│ │ │ +000ef630: 2067 7275 6232 5f6d 6365 5f61 7267 756d   grub2_mce_argum
│ │ │ +000ef640: 656e 740a 2020 2d20 6c6f 775f 6469 7372  ent.  - low_disr
│ │ │ +000ef650: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +000ef660: 6d5f 636f 6d70 6c65 7869 7479 0a20 202d  m_complexity.  -
│ │ │ +000ef670: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +000ef680: 0a20 202d 2072 6562 6f6f 745f 7265 7175  .  - reboot_requ
│ │ │ +000ef690: 6972 6564 0a20 202d 2072 6573 7472 6963  ired.  - restric
│ │ │ +000ef6a0: 745f 7374 7261 7465 6779 0a3c 2f63 6f64  t_strategy.
Remed │ │ │ +000ef760: 6961 7469 6f6e 204f 5342 7569 6c64 2042 iation OSBuild B │ │ │ +000ef770: 6c75 6570 7269 6e74 2073 6e69 7070 6574 lueprint snippet │ │ │ +000ef780: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
[customiz
│ │ │ +000ef7d0: 6174 696f 6e73 2e6b 6572 6e65 6c5d 0a61  ations.kernel].a
│ │ │ +000ef7e0: 7070 656e 6420 3d20 226d 6365 3d30 220a  ppend = "mce=0".
│ │ │  000ef7f0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
R │ │ │ -000f0a80: 656d 6564 6961 7469 6f6e 204f 5342 7569 emediation OSBui │ │ │ -000f0a90: 6c64 2042 6c75 6570 7269 6e74 2073 6e69 ld Blueprint sni │ │ │ -000f0aa0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -000f0ab0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -000f0ae0: 3c70 7265 3e3c 636f 6465 3e5b 6375 7374
[cust
│ │ │ -000f0af0: 6f6d 697a 6174 696f 6e73 2e6b 6572 6e65  omizations.kerne
│ │ │ -000f0b00: 6c5d 0a61 7070 656e 6420 3d20 226d 6473  l].append = "mds
│ │ │ -000f0b10: 3d3c 6162 6272 2074 6974 6c65 3d22 6672  =ful
│ │ │ -000f0b70: 6c2c 6e6f 736d 743c 2f61 6262 723e 220a  l,nosmt".
│ │ │ -000f0b80: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -000f0c30: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -000f0c40: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -000f0c50: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -000f0cf0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ -000f0d40: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr> │ │ │ -000f0d70: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:medium
Dis │ │ │ -000f0d00: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:true
Stra │ │ │ -000f0d50: 7465 6779 3a3c 2f74 683e 3c74 643e 7265 tegy:re │ │ │ -000f0d60: 7374 7269 6374 3c2f 7464 3e3c 2f74 723e strict
- name: Gathe
│ │ │ -000f0d90: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ -000f0da0: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ -000f0db0: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ -000f0dc0: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ -000f0dd0: 202d 2067 7275 6232 5f6d 6473 5f61 7267   - grub2_mds_arg
│ │ │ -000f0de0: 756d 656e 740a 2020 2d20 6c6f 775f 6469  ument.  - low_di
│ │ │ -000f0df0: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ -000f0e00: 6975 6d5f 636f 6d70 6c65 7869 7479 0a20  ium_complexity. 
│ │ │ -000f0e10: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -000f0e20: 7479 0a20 202d 2072 6562 6f6f 745f 7265  ty.  - reboot_re
│ │ │ -000f0e30: 7175 6972 6564 0a20 202d 2072 6573 7472  quired.  - restr
│ │ │ -000f0e40: 6963 745f 7374 7261 7465 6779 0a2d 206e  ict_strategy.- n
│ │ │ -000f0e50: 616d 653a 2058 4343 4446 2056 616c 7565  ame: XCCDF Value
│ │ │ -000f0e60: 2076 6172 5f6d 6473 5f6f 7074 696f 6e73   var_mds_options
│ │ │ -000f0e70: 2023 2070 726f 6d6f 7465 2074 6f20 7661   # promote to va
│ │ │ -000f0e80: 7269 6162 6c65 0a20 2073 6574 5f66 6163  riable.  set_fac
│ │ │ -000f0e90: 743a 0a20 2020 2076 6172 5f6d 6473 5f6f  t:.    var_mds_o
│ │ │ -000f0ea0: 7074 696f 6e73 3a20 2121 7374 7220 3c61  ptions: !!str full,n
│ │ │ -000f0f10: 6f73 6d74 3c2f 6162 6272 3e0a 2020 7461  osmt.  ta
│ │ │ -000f0f20: 6773 3a0a 2020 2020 2d20 616c 7761 7973  gs:.    - always
│ │ │ -000f0f30: 0a0a 2d20 6e61 6d65 3a20 4368 6563 6b20  ..- name: Check 
│ │ │ -000f0f40: 6966 206d 6473 2061 7267 756d 656e 7420  if mds argument 
│ │ │ -000f0f50: 6973 2061 6c72 6561 6479 2070 7265 7365  is already prese
│ │ │ -000f0f60: 6e74 2069 6e20 2f65 7463 2f64 6566 6175  nt in /etc/defau
│ │ │ -000f0f70: 6c74 2f67 7275 620a 2020 616e 7369 626c  lt/grub.  ansibl
│ │ │ -000f0f80: 652e 6275 696c 7469 6e2e 736c 7572 703a  e.builtin.slurp:
│ │ │ -000f0f90: 0a20 2020 2073 7263 3a20 2f65 7463 2f64  .    src: /etc/d
│ │ │ -000f0fa0: 6566 6175 6c74 2f67 7275 620a 2020 7265  efault/grub.  re
│ │ │ -000f0fb0: 6769 7374 6572 3a20 6574 635f 6465 6661  gister: etc_defa
│ │ │ -000f0fc0: 756c 745f 6772 7562 0a20 2077 6865 6e3a  ult_grub.  when:
│ │ │ -000f0fd0: 2028 2022 6772 7562 322d 636f 6d6d 6f6e   ( "grub2-common
│ │ │ -000f0fe0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -000f0ff0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -000f1000: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -000f1010: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -000f1020: 6573 0a20 2020 2029 0a20 2074 6167 733a  es.    ).  tags:
│ │ │ -000f1030: 0a20 202d 2067 7275 6232 5f6d 6473 5f61  .  - grub2_mds_a
│ │ │ -000f1040: 7267 756d 656e 740a 2020 2d20 6c6f 775f  rgument.  - low_
│ │ │ -000f1050: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -000f1060: 6564 6975 6d5f 636f 6d70 6c65 7869 7479  edium_complexity
│ │ │ -000f1070: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -000f1080: 7269 7479 0a20 202d 2072 6562 6f6f 745f  rity.  - reboot_
│ │ │ -000f1090: 7265 7175 6972 6564 0a20 202d 2072 6573  required.  - res
│ │ │ -000f10a0: 7472 6963 745f 7374 7261 7465 6779 0a0a  trict_strategy..
│ │ │ -000f10b0: 2d20 6e61 6d65 3a20 4368 6563 6b20 6966  - name: Check if
│ │ │ -000f10c0: 206d 6473 2061 7267 756d 656e 7420 6973   mds argument is
│ │ │ -000f10d0: 2061 6c72 6561 6479 2070 7265 7365 6e74   already present
│ │ │ -000f10e0: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -000f10f0: 696e 2e63 6f6d 6d61 6e64 3a20 2f73 6269  in.command: /sbi
│ │ │ -000f1100: 6e2f 6772 7562 6279 202d 2d69 6e66 6f3d  n/grubby --info=
│ │ │ -000f1110: 414c 4c0a 2020 7265 6769 7374 6572 3a20  ALL.  register: 
│ │ │ -000f1120: 6772 7562 6279 5f69 6e66 6f0a 2020 6368  grubby_info.  ch
│ │ │ -000f1130: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a  eck_mode: false.
│ │ │ -000f1140: 2020 6368 616e 6765 645f 7768 656e 3a20    changed_when: 
│ │ │ -000f1150: 6661 6c73 650a 2020 6661 696c 6564 5f77  false.  failed_w
│ │ │ -000f1160: 6865 6e3a 2066 616c 7365 0a20 2077 6865  hen: false.  whe
│ │ │ -000f1170: 6e3a 2028 2022 6772 7562 322d 636f 6d6d  n: ( "grub2-comm
│ │ │ -000f1180: 6f6e 2220 696e 2061 6e73 6962 6c65 5f66  on" in ansible_f
│ │ │ -000f1190: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -000f11a0: 6420 226b 6572 6e65 6c22 2069 6e20 616e  d "kernel" in an
│ │ │ -000f11b0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -000f11c0: 6167 6573 0a20 2020 2029 0a20 2074 6167  ages.    ).  tag
│ │ │ -000f11d0: 733a 0a20 202d 2067 7275 6232 5f6d 6473  s:.  - grub2_mds
│ │ │ -000f11e0: 5f61 7267 756d 656e 740a 2020 2d20 6c6f  _argument.  - lo
│ │ │ -000f11f0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -000f1200: 206d 6564 6975 6d5f 636f 6d70 6c65 7869   medium_complexi
│ │ │ -000f1210: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ -000f1220: 7665 7269 7479 0a20 202d 2072 6562 6f6f  verity.  - reboo
│ │ │ -000f1230: 745f 7265 7175 6972 6564 0a20 202d 2072  t_required.  - r
│ │ │ -000f1240: 6573 7472 6963 745f 7374 7261 7465 6779  estrict_strategy
│ │ │ -000f1250: 0a0a 2d20 6e61 6d65 3a20 5570 6461 7465  ..- name: Update
│ │ │ -000f1260: 2067 7275 6220 6465 6661 756c 7473 2061   grub defaults a
│ │ │ -000f1270: 6e64 2074 6865 2062 6f6f 746c 6f61 6465  nd the bootloade
│ │ │ -000f1280: 7220 6d65 6e75 0a20 2061 6e73 6962 6c65  r menu.  ansible
│ │ │ -000f1290: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ -000f12a0: 3a20 2f73 6269 6e2f 6772 7562 6279 202d  : /sbin/grubby -
│ │ │ -000f12b0: 2d75 7064 6174 652d 6b65 726e 656c 3d41  -update-kernel=A
│ │ │ -000f12c0: 4c4c 202d 2d61 7267 733d 226d 6473 3d7b  LL --args="mds={
│ │ │ -000f12d0: 7b20 7661 725f 6d64 735f 6f70 7469 6f6e  { var_mds_option
│ │ │ -000f12e0: 730a 2020 2020 7d7d 220a 2020 7768 656e  s.    }}".  when
│ │ │ -000f12f0: 3a0a 2020 2d20 2820 2267 7275 6232 2d63  :.  - ( "grub2-c
│ │ │ -000f1300: 6f6d 6d6f 6e22 2069 6e20 616e 7369 626c  ommon" in ansibl
│ │ │ -000f1310: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -000f1320: 2061 6e64 2022 6b65 726e 656c 2220 696e   and "kernel" in
│ │ │ -000f1330: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -000f1340: 6163 6b61 6765 730a 2020 2020 290a 2020  ackages.    ).  
│ │ │ -000f1350: 2d20 2867 7275 6262 795f 696e 666f 2e73  - (grubby_info.s
│ │ │ -000f1360: 7464 6f75 7420 6973 206e 6f74 2073 6561  tdout is not sea
│ │ │ -000f1370: 7263 6828 276d 6473 3d27 207e 2076 6172  rch('mds=' ~ var
│ │ │ -000f1380: 5f6d 6473 5f6f 7074 696f 6e73 2929 206f  _mds_options)) o
│ │ │ -000f1390: 7220 2828 6574 635f 6465 6661 756c 745f  r ((etc_default_
│ │ │ -000f13a0: 6772 7562 5b27 636f 6e74 656e 7427 5d0a  grub['content'].
│ │ │ -000f13b0: 2020 2020 7c20 6236 3464 6563 6f64 6529      | b64decode)
│ │ │ -000f13c0: 2069 7320 6e6f 7420 7365 6172 6368 2827   is not search('
│ │ │ -000f13d0: 6d64 733d 2720 7e20 7661 725f 6d64 735f  mds=' ~ var_mds_
│ │ │ -000f13e0: 6f70 7469 6f6e 7329 290a 2020 7461 6773  options)).  tags
│ │ │ -000f13f0: 3a0a 2020 2d20 6772 7562 325f 6d64 735f  :.  - grub2_mds_
│ │ │ -000f1400: 6172 6775 6d65 6e74 0a20 202d 206c 6f77  argument.  - low
│ │ │ -000f1410: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -000f1420: 6d65 6469 756d 5f63 6f6d 706c 6578 6974  medium_complexit
│ │ │ -000f1430: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -000f1440: 6572 6974 790a 2020 2d20 7265 626f 6f74  erity.  - reboot
│ │ │ -000f1450: 5f72 6571 7569 7265 640a 2020 2d20 7265  _required.  - re
│ │ │ -000f1460: 7374 7269 6374 5f73 7472 6174 6567 790a  strict_strategy.
│ │ │ +000f0a80: 656d 6564 6961 7469 6f6e 2041 6e73 6962  emediation Ansib
│ │ │ +000f0a90: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f  le snippet ...
│ │ │ +000f0b30: 3c74 643e 6d65 6469 756d 3c2f 7464 3e3c < │ │ │ +000f0b40: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +000f0bc0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ +000f0be0: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ +000f0bf0: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ +000f0c00: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ +000f0c10: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ +000f0c20: 2d20 6772 7562 325f 6d64 735f 6172 6775  - grub2_mds_argu
│ │ │ +000f0c30: 6d65 6e74 0a20 202d 206c 6f77 5f64 6973  ment.  - low_dis
│ │ │ +000f0c40: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ +000f0c50: 756d 5f63 6f6d 706c 6578 6974 790a 2020  um_complexity.  
│ │ │ +000f0c60: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +000f0c70: 790a 2020 2d20 7265 626f 6f74 5f72 6571  y.  - reboot_req
│ │ │ +000f0c80: 7569 7265 640a 2020 2d20 7265 7374 7269  uired.  - restri
│ │ │ +000f0c90: 6374 5f73 7472 6174 6567 790a 2d20 6e61  ct_strategy.- na
│ │ │ +000f0ca0: 6d65 3a20 5843 4344 4620 5661 6c75 6520  me: XCCDF Value 
│ │ │ +000f0cb0: 7661 725f 6d64 735f 6f70 7469 6f6e 7320  var_mds_options 
│ │ │ +000f0cc0: 2320 7072 6f6d 6f74 6520 746f 2076 6172  # promote to var
│ │ │ +000f0cd0: 6961 626c 650a 2020 7365 745f 6661 6374  iable.  set_fact
│ │ │ +000f0ce0: 3a0a 2020 2020 7661 725f 6d64 735f 6f70  :.    var_mds_op
│ │ │ +000f0cf0: 7469 6f6e 733a 2021 2173 7472 203c 6162  tions: !!str full,no
│ │ │ +000f0d60: 736d 743c 2f61 6262 723e 0a20 2074 6167  smt.  tag
│ │ │ +000f0d70: 733a 0a20 2020 202d 2061 6c77 6179 730a  s:.    - always.
│ │ │ +000f0d80: 0a2d 206e 616d 653a 2043 6865 636b 2069  .- name: Check i
│ │ │ +000f0d90: 6620 6d64 7320 6172 6775 6d65 6e74 2069  f mds argument i
│ │ │ +000f0da0: 7320 616c 7265 6164 7920 7072 6573 656e  s already presen
│ │ │ +000f0db0: 7420 696e 202f 6574 632f 6465 6661 756c  t in /etc/defaul
│ │ │ +000f0dc0: 742f 6772 7562 0a20 2061 6e73 6962 6c65  t/grub.  ansible
│ │ │ +000f0dd0: 2e62 7569 6c74 696e 2e73 6c75 7270 3a0a  .builtin.slurp:.
│ │ │ +000f0de0: 2020 2020 7372 633a 202f 6574 632f 6465      src: /etc/de
│ │ │ +000f0df0: 6661 756c 742f 6772 7562 0a20 2072 6567  fault/grub.  reg
│ │ │ +000f0e00: 6973 7465 723a 2065 7463 5f64 6566 6175  ister: etc_defau
│ │ │ +000f0e10: 6c74 5f67 7275 620a 2020 7768 656e 3a20  lt_grub.  when: 
│ │ │ +000f0e20: 2820 2267 7275 6232 2d63 6f6d 6d6f 6e22  ( "grub2-common"
│ │ │ +000f0e30: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +000f0e40: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +000f0e50: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +000f0e60: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +000f0e70: 730a 2020 2020 290a 2020 7461 6773 3a0a  s.    ).  tags:.
│ │ │ +000f0e80: 2020 2d20 6772 7562 325f 6d64 735f 6172    - grub2_mds_ar
│ │ │ +000f0e90: 6775 6d65 6e74 0a20 202d 206c 6f77 5f64  gument.  - low_d
│ │ │ +000f0ea0: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +000f0eb0: 6469 756d 5f63 6f6d 706c 6578 6974 790a  dium_complexity.
│ │ │ +000f0ec0: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +000f0ed0: 6974 790a 2020 2d20 7265 626f 6f74 5f72  ity.  - reboot_r
│ │ │ +000f0ee0: 6571 7569 7265 640a 2020 2d20 7265 7374  equired.  - rest
│ │ │ +000f0ef0: 7269 6374 5f73 7472 6174 6567 790a 0a2d  rict_strategy..-
│ │ │ +000f0f00: 206e 616d 653a 2043 6865 636b 2069 6620   name: Check if 
│ │ │ +000f0f10: 6d64 7320 6172 6775 6d65 6e74 2069 7320  mds argument is 
│ │ │ +000f0f20: 616c 7265 6164 7920 7072 6573 656e 740a  already present.
│ │ │ +000f0f30: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +000f0f40: 6e2e 636f 6d6d 616e 643a 202f 7362 696e  n.command: /sbin
│ │ │ +000f0f50: 2f67 7275 6262 7920 2d2d 696e 666f 3d41  /grubby --info=A
│ │ │ +000f0f60: 4c4c 0a20 2072 6567 6973 7465 723a 2067  LL.  register: g
│ │ │ +000f0f70: 7275 6262 795f 696e 666f 0a20 2063 6865  rubby_info.  che
│ │ │ +000f0f80: 636b 5f6d 6f64 653a 2066 616c 7365 0a20  ck_mode: false. 
│ │ │ +000f0f90: 2063 6861 6e67 6564 5f77 6865 6e3a 2066   changed_when: f
│ │ │ +000f0fa0: 616c 7365 0a20 2066 6169 6c65 645f 7768  alse.  failed_wh
│ │ │ +000f0fb0: 656e 3a20 6661 6c73 650a 2020 7768 656e  en: false.  when
│ │ │ +000f0fc0: 3a20 2820 2267 7275 6232 2d63 6f6d 6d6f  : ( "grub2-commo
│ │ │ +000f0fd0: 6e22 2069 6e20 616e 7369 626c 655f 6661  n" in ansible_fa
│ │ │ +000f0fe0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +000f0ff0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +000f1000: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +000f1010: 6765 730a 2020 2020 290a 2020 7461 6773  ges.    ).  tags
│ │ │ +000f1020: 3a0a 2020 2d20 6772 7562 325f 6d64 735f  :.  - grub2_mds_
│ │ │ +000f1030: 6172 6775 6d65 6e74 0a20 202d 206c 6f77  argument.  - low
│ │ │ +000f1040: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +000f1050: 6d65 6469 756d 5f63 6f6d 706c 6578 6974  medium_complexit
│ │ │ +000f1060: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +000f1070: 6572 6974 790a 2020 2d20 7265 626f 6f74  erity.  - reboot
│ │ │ +000f1080: 5f72 6571 7569 7265 640a 2020 2d20 7265  _required.  - re
│ │ │ +000f1090: 7374 7269 6374 5f73 7472 6174 6567 790a  strict_strategy.
│ │ │ +000f10a0: 0a2d 206e 616d 653a 2055 7064 6174 6520  .- name: Update 
│ │ │ +000f10b0: 6772 7562 2064 6566 6175 6c74 7320 616e  grub defaults an
│ │ │ +000f10c0: 6420 7468 6520 626f 6f74 6c6f 6164 6572  d the bootloader
│ │ │ +000f10d0: 206d 656e 750a 2020 616e 7369 626c 652e   menu.  ansible.
│ │ │ +000f10e0: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ +000f10f0: 202f 7362 696e 2f67 7275 6262 7920 2d2d   /sbin/grubby --
│ │ │ +000f1100: 7570 6461 7465 2d6b 6572 6e65 6c3d 414c  update-kernel=AL
│ │ │ +000f1110: 4c20 2d2d 6172 6773 3d22 6d64 733d 7b7b  L --args="mds={{
│ │ │ +000f1120: 2076 6172 5f6d 6473 5f6f 7074 696f 6e73   var_mds_options
│ │ │ +000f1130: 0a20 2020 207d 7d22 0a20 2077 6865 6e3a  .    }}".  when:
│ │ │ +000f1140: 0a20 202d 2028 2022 6772 7562 322d 636f  .  - ( "grub2-co
│ │ │ +000f1150: 6d6d 6f6e 2220 696e 2061 6e73 6962 6c65  mmon" in ansible
│ │ │ +000f1160: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +000f1170: 616e 6420 226b 6572 6e65 6c22 2069 6e20  and "kernel" in 
│ │ │ +000f1180: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +000f1190: 636b 6167 6573 0a20 2020 2029 0a20 202d  ckages.    ).  -
│ │ │ +000f11a0: 2028 6772 7562 6279 5f69 6e66 6f2e 7374   (grubby_info.st
│ │ │ +000f11b0: 646f 7574 2069 7320 6e6f 7420 7365 6172  dout is not sear
│ │ │ +000f11c0: 6368 2827 6d64 733d 2720 7e20 7661 725f  ch('mds=' ~ var_
│ │ │ +000f11d0: 6d64 735f 6f70 7469 6f6e 7329 2920 6f72  mds_options)) or
│ │ │ +000f11e0: 2028 2865 7463 5f64 6566 6175 6c74 5f67   ((etc_default_g
│ │ │ +000f11f0: 7275 625b 2763 6f6e 7465 6e74 275d 0a20  rub['content']. 
│ │ │ +000f1200: 2020 207c 2062 3634 6465 636f 6465 2920     | b64decode) 
│ │ │ +000f1210: 6973 206e 6f74 2073 6561 7263 6828 276d  is not search('m
│ │ │ +000f1220: 6473 3d27 207e 2076 6172 5f6d 6473 5f6f  ds=' ~ var_mds_o
│ │ │ +000f1230: 7074 696f 6e73 2929 0a20 2074 6167 733a  ptions)).  tags:
│ │ │ +000f1240: 0a20 202d 2067 7275 6232 5f6d 6473 5f61  .  - grub2_mds_a
│ │ │ +000f1250: 7267 756d 656e 740a 2020 2d20 6c6f 775f  rgument.  - low_
│ │ │ +000f1260: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ +000f1270: 6564 6975 6d5f 636f 6d70 6c65 7869 7479  edium_complexity
│ │ │ +000f1280: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +000f1290: 7269 7479 0a20 202d 2072 6562 6f6f 745f  rity.  - reboot_
│ │ │ +000f12a0: 7265 7175 6972 6564 0a20 202d 2072 6573  required.  - res
│ │ │ +000f12b0: 7472 6963 745f 7374 7261 7465 6779 0a3c  trict_strategy.<
│ │ │ +000f12c0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +000f1370: 656d 6564 6961 7469 6f6e 204f 5342 7569 emediation OSBui │ │ │ +000f1380: 6c64 2042 6c75 6570 7269 6e74 2073 6e69 ld Blueprint sni │ │ │ +000f1390: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +000f13a0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +000f13d0: 3c70 7265 3e3c 636f 6465 3e5b 6375 7374
[cust
│ │ │ +000f13e0: 6f6d 697a 6174 696f 6e73 2e6b 6572 6e65  omizations.kerne
│ │ │ +000f13f0: 6c5d 0a61 7070 656e 6420 3d20 226d 6473  l].append = "mds
│ │ │ +000f1400: 3d3c 6162 6272 2074 6974 6c65 3d22 6672  =ful
│ │ │ +000f1460: 6c2c 6e6f 736d 743c 2f61 6262 723e 220a  l,nosmt".
│ │ │  000f1470: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
Remediation OSB │ │ │ -000f4f40: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ -000f4f50: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
[cu
│ │ │ -000f4fa0: 7374 6f6d 697a 6174 696f 6e73 2e6b 6572  stomizations.ker
│ │ │ -000f4fb0: 6e65 6c5d 0a61 7070 656e 6420 3d20 2270  nel].append = "p
│ │ │ -000f4fc0: 6167 655f 616c 6c6f 632e 7368 7566 666c  age_alloc.shuffl
│ │ │ -000f4fd0: 653d 3122 0a3c 2f63 6f64 653e 3c2f 7072  e=1".
Remediation │ │ │ -000f5090: 2041 6e73 6962 6c65 2073 6e69 7070 6574 Ansible snippet │ │ │ -000f50a0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Disruption:< │ │ │ -000f51b0: 7464 3e72 6573 7472 6963 743c 2f74 643e td>restrict │ │ │ -000f51c0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
│ │ │ +000f0b20: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:medium
Disr │ │ │ +000f0b50: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +000f0b60: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:true
Strat │ │ │ +000f0ba0: 6567 793a 3c2f 7468 3e3c 7464 3e72 6573 egy:res │ │ │ +000f0bb0: 7472 6963 743c 2f74 643e 3c2f 7472 3e3c trict
Complexity │ │ │ -000f5130: 3a3c 2f74 683e 3c74 643e 6d65 6469 756d :medium │ │ │ -000f5140: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ -000f5180: 743a 3c2f 7468 3e3c 7464 3e74 7275 653c t:true< │ │ │ -000f5190: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
- name: │ │ │ -000f51e0: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ -000f51f0: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ -000f5200: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ -000f5210: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ -000f5220: 6773 3a0a 2020 2d20 6772 7562 325f 7061 gs:. - grub2_pa │ │ │ -000f5230: 6765 5f61 6c6c 6f63 5f73 6875 6666 6c65 ge_alloc_shuffle │ │ │ -000f5240: 5f61 7267 756d 656e 740a 2020 2d20 6c6f _argument. - lo │ │ │ -000f5250: 775f 6469 7372 7570 7469 6f6e 0a20 202d w_disruption. - │ │ │ -000f5260: 206d 6564 6975 6d5f 636f 6d70 6c65 7869 medium_complexi │ │ │ -000f5270: 7479 0a20 202d 206d 6564 6975 6d5f 7365 ty. - medium_se │ │ │ -000f5280: 7665 7269 7479 0a20 202d 2072 6562 6f6f verity. - reboo │ │ │ -000f5290: 745f 7265 7175 6972 6564 0a20 202d 2072 t_required. - r │ │ │ -000f52a0: 6573 7472 6963 745f 7374 7261 7465 6779 estrict_strategy │ │ │ -000f52b0: 0a0a 2d20 6e61 6d65 3a20 4368 6563 6b20 ..- name: Check │ │ │ -000f52c0: 6966 2070 6167 655f 616c 6c6f 632e 7368 if page_alloc.sh │ │ │ -000f52d0: 7566 666c 6520 6172 6775 6d65 6e74 2069 uffle argument i │ │ │ -000f52e0: 7320 616c 7265 6164 7920 7072 6573 656e s already presen │ │ │ -000f52f0: 7420 696e 202f 6574 632f 6465 6661 756c t in /etc/defaul │ │ │ -000f5300: 742f 6772 7562 0a20 2061 6e73 6962 6c65 t/grub. ansible │ │ │ -000f5310: 2e62 7569 6c74 696e 2e73 6c75 7270 3a0a .builtin.slurp:. │ │ │ -000f5320: 2020 2020 7372 633a 202f 6574 632f 6465 src: /etc/de │ │ │ -000f5330: 6661 756c 742f 6772 7562 0a20 2072 6567 fault/grub. reg │ │ │ -000f5340: 6973 7465 723a 2065 7463 5f64 6566 6175 ister: etc_defau │ │ │ -000f5350: 6c74 5f67 7275 620a 2020 7768 656e 3a20 lt_grub. when: │ │ │ -000f5360: 2820 2267 7275 6232 2d63 6f6d 6d6f 6e22 ( "grub2-common" │ │ │ -000f5370: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -000f5380: 732e 7061 636b 6167 6573 2061 6e64 2022 s.packages and " │ │ │ -000f5390: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ -000f53a0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -000f53b0: 730a 2020 2020 290a 2020 7461 6773 3a0a s. ). tags:. │ │ │ -000f53c0: 2020 2d20 6772 7562 325f 7061 6765 5f61 - grub2_page_a │ │ │ -000f53d0: 6c6c 6f63 5f73 6875 6666 6c65 5f61 7267 lloc_shuffle_arg │ │ │ -000f53e0: 756d 656e 740a 2020 2d20 6c6f 775f 6469 ument. - low_di │ │ │ -000f53f0: 7372 7570 7469 6f6e 0a20 202d 206d 6564 sruption. - med │ │ │ -000f5400: 6975 6d5f 636f 6d70 6c65 7869 7479 0a20 ium_complexity. │ │ │ -000f5410: 202d 206d 6564 6975 6d5f 7365 7665 7269 - medium_severi │ │ │ -000f5420: 7479 0a20 202d 2072 6562 6f6f 745f 7265 ty. - reboot_re │ │ │ -000f5430: 7175 6972 6564 0a20 202d 2072 6573 7472 quired. - restr │ │ │ -000f5440: 6963 745f 7374 7261 7465 6779 0a0a 2d20 ict_strategy..- │ │ │ -000f5450: 6e61 6d65 3a20 4368 6563 6b20 6966 2070 name: Check if p │ │ │ -000f5460: 6167 655f 616c 6c6f 632e 7368 7566 666c age_alloc.shuffl │ │ │ -000f5470: 6520 6172 6775 6d65 6e74 2069 7320 616c e argument is al │ │ │ -000f5480: 7265 6164 7920 7072 6573 656e 740a 2020 ready present. │ │ │ -000f5490: 616e 7369 626c 652e 6275 696c 7469 6e2e ansible.builtin. │ │ │ -000f54a0: 636f 6d6d 616e 643a 202f 7362 696e 2f67 command: /sbin/g │ │ │ -000f54b0: 7275 6262 7920 2d2d 696e 666f 3d41 4c4c rubby --info=ALL │ │ │ -000f54c0: 0a20 2072 6567 6973 7465 723a 2067 7275 . register: gru │ │ │ -000f54d0: 6262 795f 696e 666f 0a20 2063 6865 636b bby_info. check │ │ │ -000f54e0: 5f6d 6f64 653a 2066 616c 7365 0a20 2063 _mode: false. c │ │ │ -000f54f0: 6861 6e67 6564 5f77 6865 6e3a 2066 616c hanged_when: fal │ │ │ -000f5500: 7365 0a20 2066 6169 6c65 645f 7768 656e se. failed_when │ │ │ -000f5510: 3a20 6661 6c73 650a 2020 7768 656e 3a20 : false. when: │ │ │ -000f5520: 2820 2267 7275 6232 2d63 6f6d 6d6f 6e22 ( "grub2-common" │ │ │ -000f5530: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -000f5540: 732e 7061 636b 6167 6573 2061 6e64 2022 s.packages and " │ │ │ -000f5550: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ -000f5560: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -000f5570: 730a 2020 2020 290a 2020 7461 6773 3a0a s. ). tags:. │ │ │ -000f5580: 2020 2d20 6772 7562 325f 7061 6765 5f61 - grub2_page_a │ │ │ -000f5590: 6c6c 6f63 5f73 6875 6666 6c65 5f61 7267 lloc_shuffle_arg │ │ │ -000f55a0: 756d 656e 740a 2020 2d20 6c6f 775f 6469 ument. - low_di │ │ │ -000f55b0: 7372 7570 7469 6f6e 0a20 202d 206d 6564 sruption. - med │ │ │ -000f55c0: 6975 6d5f 636f 6d70 6c65 7869 7479 0a20 ium_complexity. │ │ │ -000f55d0: 202d 206d 6564 6975 6d5f 7365 7665 7269 - medium_severi │ │ │ -000f55e0: 7479 0a20 202d 2072 6562 6f6f 745f 7265 ty. - reboot_re │ │ │ -000f55f0: 7175 6972 6564 0a20 202d 2072 6573 7472 quired. - restr │ │ │ -000f5600: 6963 745f 7374 7261 7465 6779 0a0a 2d20 ict_strategy..- │ │ │ -000f5610: 6e61 6d65 3a20 5570 6461 7465 2067 7275 name: Update gru │ │ │ -000f5620: 6220 6465 6661 756c 7473 2061 6e64 2074 b defaults and t │ │ │ -000f5630: 6865 2062 6f6f 746c 6f61 6465 7220 6d65 he bootloader me │ │ │ -000f5640: 6e75 0a20 2061 6e73 6962 6c65 2e62 7569 nu. ansible.bui │ │ │ -000f5650: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 2f73 ltin.command: /s │ │ │ -000f5660: 6269 6e2f 6772 7562 6279 202d 2d75 7064 bin/grubby --upd │ │ │ -000f5670: 6174 652d 6b65 726e 656c 3d41 4c4c 202d ate-kernel=ALL - │ │ │ -000f5680: 2d61 7267 733d 2270 6167 655f 616c 6c6f -args="page_allo │ │ │ -000f5690: 632e 7368 7566 666c 653d 3122 0a20 2077 c.shuffle=1". w │ │ │ -000f56a0: 6865 6e3a 0a20 202d 2028 2022 6772 7562 hen:. - ( "grub │ │ │ -000f56b0: 322d 636f 6d6d 6f6e 2220 696e 2061 6e73 2-common" in ans │ │ │ -000f56c0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ -000f56d0: 6765 7320 616e 6420 226b 6572 6e65 6c22 ges and "kernel" │ │ │ -000f56e0: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -000f56f0: 732e 7061 636b 6167 6573 0a20 2020 2029 s.packages. ) │ │ │ -000f5700: 0a20 202d 2028 6772 7562 6279 5f69 6e66 . - (grubby_inf │ │ │ -000f5710: 6f2e 7374 646f 7574 2069 7320 6e6f 7420 o.stdout is not │ │ │ -000f5720: 7365 6172 6368 2827 7061 6765 5f61 6c6c search('page_all │ │ │ -000f5730: 6f63 2e73 6875 6666 6c65 3d31 2729 2920 oc.shuffle=1')) │ │ │ -000f5740: 6f72 2028 2865 7463 5f64 6566 6175 6c74 or ((etc_default │ │ │ -000f5750: 5f67 7275 625b 2763 6f6e 7465 6e74 275d _grub['content'] │ │ │ -000f5760: 0a20 2020 207c 2062 3634 6465 636f 6465 . | b64decode │ │ │ -000f5770: 2920 6973 206e 6f74 2073 6561 7263 6828 ) is not search( │ │ │ -000f5780: 2770 6167 655f 616c 6c6f 632e 7368 7566 'page_alloc.shuf │ │ │ -000f5790: 666c 653d 3127 2929 0a20 2074 6167 733a fle=1')). tags: │ │ │ -000f57a0: 0a20 202d 2067 7275 6232 5f70 6167 655f . - grub2_page_ │ │ │ -000f57b0: 616c 6c6f 635f 7368 7566 666c 655f 6172 alloc_shuffle_ar │ │ │ -000f57c0: 6775 6d65 6e74 0a20 202d 206c 6f77 5f64 gument. - low_d │ │ │ -000f57d0: 6973 7275 7074 696f 6e0a 2020 2d20 6d65 isruption. - me │ │ │ -000f57e0: 6469 756d 5f63 6f6d 706c 6578 6974 790a dium_complexity. │ │ │ -000f57f0: 2020 2d20 6d65 6469 756d 5f73 6576 6572 - medium_sever │ │ │ -000f5800: 6974 790a 2020 2d20 7265 626f 6f74 5f72 ity. - reboot_r │ │ │ -000f5810: 6571 7569 7265 640a 2020 2d20 7265 7374 equired. - rest │ │ │ -000f5820: 7269 6374 5f73 7472 6174 6567 790a 3c2f rict_strategy.Remediation Ans │ │ │ +000f4f40: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ +000f4f50: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity:low< │ │ │ +000f5020: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ +000f5040: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472
medium
Di │ │ │ +000f5000: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:true
Str │ │ │ +000f5050: 6174 6567 793a 3c2f 7468 3e3c 7464 3e72 ategy:r │ │ │ +000f5060: 6573 7472 6963 743c 2f74 643e 3c2f 7472 estrict
- name: Gath
│ │ │ +000f5090: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ +000f50a0: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ +000f50b0: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ +000f50c0: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ +000f50d0: 2020 2d20 6772 7562 325f 7061 6765 5f61    - grub2_page_a
│ │ │ +000f50e0: 6c6c 6f63 5f73 6875 6666 6c65 5f61 7267  lloc_shuffle_arg
│ │ │ +000f50f0: 756d 656e 740a 2020 2d20 6c6f 775f 6469  ument.  - low_di
│ │ │ +000f5100: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ +000f5110: 6975 6d5f 636f 6d70 6c65 7869 7479 0a20  ium_complexity. 
│ │ │ +000f5120: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +000f5130: 7479 0a20 202d 2072 6562 6f6f 745f 7265  ty.  - reboot_re
│ │ │ +000f5140: 7175 6972 6564 0a20 202d 2072 6573 7472  quired.  - restr
│ │ │ +000f5150: 6963 745f 7374 7261 7465 6779 0a0a 2d20  ict_strategy..- 
│ │ │ +000f5160: 6e61 6d65 3a20 4368 6563 6b20 6966 2070  name: Check if p
│ │ │ +000f5170: 6167 655f 616c 6c6f 632e 7368 7566 666c  age_alloc.shuffl
│ │ │ +000f5180: 6520 6172 6775 6d65 6e74 2069 7320 616c  e argument is al
│ │ │ +000f5190: 7265 6164 7920 7072 6573 656e 7420 696e  ready present in
│ │ │ +000f51a0: 202f 6574 632f 6465 6661 756c 742f 6772   /etc/default/gr
│ │ │ +000f51b0: 7562 0a20 2061 6e73 6962 6c65 2e62 7569  ub.  ansible.bui
│ │ │ +000f51c0: 6c74 696e 2e73 6c75 7270 3a0a 2020 2020  ltin.slurp:.    
│ │ │ +000f51d0: 7372 633a 202f 6574 632f 6465 6661 756c  src: /etc/defaul
│ │ │ +000f51e0: 742f 6772 7562 0a20 2072 6567 6973 7465  t/grub.  registe
│ │ │ +000f51f0: 723a 2065 7463 5f64 6566 6175 6c74 5f67  r: etc_default_g
│ │ │ +000f5200: 7275 620a 2020 7768 656e 3a20 2820 2267  rub.  when: ( "g
│ │ │ +000f5210: 7275 6232 2d63 6f6d 6d6f 6e22 2069 6e20  rub2-common" in 
│ │ │ +000f5220: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +000f5230: 636b 6167 6573 2061 6e64 2022 6b65 726e  ckages and "kern
│ │ │ +000f5240: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +000f5250: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +000f5260: 2020 290a 2020 7461 6773 3a0a 2020 2d20    ).  tags:.  - 
│ │ │ +000f5270: 6772 7562 325f 7061 6765 5f61 6c6c 6f63  grub2_page_alloc
│ │ │ +000f5280: 5f73 6875 6666 6c65 5f61 7267 756d 656e  _shuffle_argumen
│ │ │ +000f5290: 740a 2020 2d20 6c6f 775f 6469 7372 7570  t.  - low_disrup
│ │ │ +000f52a0: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ +000f52b0: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +000f52c0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +000f52d0: 202d 2072 6562 6f6f 745f 7265 7175 6972   - reboot_requir
│ │ │ +000f52e0: 6564 0a20 202d 2072 6573 7472 6963 745f  ed.  - restrict_
│ │ │ +000f52f0: 7374 7261 7465 6779 0a0a 2d20 6e61 6d65  strategy..- name
│ │ │ +000f5300: 3a20 4368 6563 6b20 6966 2070 6167 655f  : Check if page_
│ │ │ +000f5310: 616c 6c6f 632e 7368 7566 666c 6520 6172  alloc.shuffle ar
│ │ │ +000f5320: 6775 6d65 6e74 2069 7320 616c 7265 6164  gument is alread
│ │ │ +000f5330: 7920 7072 6573 656e 740a 2020 616e 7369  y present.  ansi
│ │ │ +000f5340: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ +000f5350: 616e 643a 202f 7362 696e 2f67 7275 6262  and: /sbin/grubb
│ │ │ +000f5360: 7920 2d2d 696e 666f 3d41 4c4c 0a20 2072  y --info=ALL.  r
│ │ │ +000f5370: 6567 6973 7465 723a 2067 7275 6262 795f  egister: grubby_
│ │ │ +000f5380: 696e 666f 0a20 2063 6865 636b 5f6d 6f64  info.  check_mod
│ │ │ +000f5390: 653a 2066 616c 7365 0a20 2063 6861 6e67  e: false.  chang
│ │ │ +000f53a0: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ +000f53b0: 2066 6169 6c65 645f 7768 656e 3a20 6661   failed_when: fa
│ │ │ +000f53c0: 6c73 650a 2020 7768 656e 3a20 2820 2267  lse.  when: ( "g
│ │ │ +000f53d0: 7275 6232 2d63 6f6d 6d6f 6e22 2069 6e20  rub2-common" in 
│ │ │ +000f53e0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +000f53f0: 636b 6167 6573 2061 6e64 2022 6b65 726e  ckages and "kern
│ │ │ +000f5400: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +000f5410: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +000f5420: 2020 290a 2020 7461 6773 3a0a 2020 2d20    ).  tags:.  - 
│ │ │ +000f5430: 6772 7562 325f 7061 6765 5f61 6c6c 6f63  grub2_page_alloc
│ │ │ +000f5440: 5f73 6875 6666 6c65 5f61 7267 756d 656e  _shuffle_argumen
│ │ │ +000f5450: 740a 2020 2d20 6c6f 775f 6469 7372 7570  t.  - low_disrup
│ │ │ +000f5460: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ +000f5470: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +000f5480: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +000f5490: 202d 2072 6562 6f6f 745f 7265 7175 6972   - reboot_requir
│ │ │ +000f54a0: 6564 0a20 202d 2072 6573 7472 6963 745f  ed.  - restrict_
│ │ │ +000f54b0: 7374 7261 7465 6779 0a0a 2d20 6e61 6d65  strategy..- name
│ │ │ +000f54c0: 3a20 5570 6461 7465 2067 7275 6220 6465  : Update grub de
│ │ │ +000f54d0: 6661 756c 7473 2061 6e64 2074 6865 2062  faults and the b
│ │ │ +000f54e0: 6f6f 746c 6f61 6465 7220 6d65 6e75 0a20  ootloader menu. 
│ │ │ +000f54f0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +000f5500: 2e63 6f6d 6d61 6e64 3a20 2f73 6269 6e2f  .command: /sbin/
│ │ │ +000f5510: 6772 7562 6279 202d 2d75 7064 6174 652d  grubby --update-
│ │ │ +000f5520: 6b65 726e 656c 3d41 4c4c 202d 2d61 7267  kernel=ALL --arg
│ │ │ +000f5530: 733d 2270 6167 655f 616c 6c6f 632e 7368  s="page_alloc.sh
│ │ │ +000f5540: 7566 666c 653d 3122 0a20 2077 6865 6e3a  uffle=1".  when:
│ │ │ +000f5550: 0a20 202d 2028 2022 6772 7562 322d 636f  .  - ( "grub2-co
│ │ │ +000f5560: 6d6d 6f6e 2220 696e 2061 6e73 6962 6c65  mmon" in ansible
│ │ │ +000f5570: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +000f5580: 616e 6420 226b 6572 6e65 6c22 2069 6e20  and "kernel" in 
│ │ │ +000f5590: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +000f55a0: 636b 6167 6573 0a20 2020 2029 0a20 202d  ckages.    ).  -
│ │ │ +000f55b0: 2028 6772 7562 6279 5f69 6e66 6f2e 7374   (grubby_info.st
│ │ │ +000f55c0: 646f 7574 2069 7320 6e6f 7420 7365 6172  dout is not sear
│ │ │ +000f55d0: 6368 2827 7061 6765 5f61 6c6c 6f63 2e73  ch('page_alloc.s
│ │ │ +000f55e0: 6875 6666 6c65 3d31 2729 2920 6f72 2028  huffle=1')) or (
│ │ │ +000f55f0: 2865 7463 5f64 6566 6175 6c74 5f67 7275  (etc_default_gru
│ │ │ +000f5600: 625b 2763 6f6e 7465 6e74 275d 0a20 2020  b['content'].   
│ │ │ +000f5610: 207c 2062 3634 6465 636f 6465 2920 6973   | b64decode) is
│ │ │ +000f5620: 206e 6f74 2073 6561 7263 6828 2770 6167   not search('pag
│ │ │ +000f5630: 655f 616c 6c6f 632e 7368 7566 666c 653d  e_alloc.shuffle=
│ │ │ +000f5640: 3127 2929 0a20 2074 6167 733a 0a20 202d  1')).  tags:.  -
│ │ │ +000f5650: 2067 7275 6232 5f70 6167 655f 616c 6c6f   grub2_page_allo
│ │ │ +000f5660: 635f 7368 7566 666c 655f 6172 6775 6d65  c_shuffle_argume
│ │ │ +000f5670: 6e74 0a20 202d 206c 6f77 5f64 6973 7275  nt.  - low_disru
│ │ │ +000f5680: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ +000f5690: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +000f56a0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +000f56b0: 2020 2d20 7265 626f 6f74 5f72 6571 7569    - reboot_requi
│ │ │ +000f56c0: 7265 640a 2020 2d20 7265 7374 7269 6374  red.  - restrict
│ │ │ +000f56d0: 5f73 7472 6174 6567 790a 3c2f 636f 6465  _strategy.
Remedi │ │ │ +000f5790: 6174 696f 6e20 4f53 4275 696c 6420 426c ation OSBuild Bl │ │ │ +000f57a0: 7565 7072 696e 7420 736e 6970 7065 7420 ueprint snippet │ │ │ +000f57b0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
│ │ │ +000f57f0: 3c63 6f64 653e 5b63 7573 746f 6d69 7a61  [customiza
│ │ │ +000f5800: 7469 6f6e 732e 6b65 726e 656c 5d0a 6170  tions.kernel].ap
│ │ │ +000f5810: 7065 6e64 203d 2022 7061 6765 5f61 6c6c  pend = "page_all
│ │ │ +000f5820: 6f63 2e73 6875 6666 6c65 3d31 220a 3c2f  oc.shuffle=1".
Reme │ │ │ -000f66a0: 6469 6174 696f 6e20 4f53 4275 696c 6420 diation OSBuild │ │ │ -000f66b0: 426c 7565 7072 696e 7420 736e 6970 7065 Blueprint snippe │ │ │ -000f66c0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
[customi │ │ │ -000f6710: 7a61 7469 6f6e 732e 6b65 726e 656c 5d0a zations.kernel]. │ │ │ -000f6720: 6170 7065 6e64 203d 2022 7074 693d 6f6e append = "pti=on │ │ │ -000f6730: 220a 3c2f 636f 6465 3e3c 2f70 7265 3e3c ".
< │ │ │ -000f6740: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -000f67f0: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -000f6800: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -000f6880: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -000f68c0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -000f68d0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
medium
D │ │ │ -000f68b0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ -000f68e0: 2f74 683e 3c74 643e 7472 7565 3c2f 7464 /th>true
St │ │ │ -000f6900: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -000f6910: 7265 7374 7269 6374 3c2f 7464 3e3c 2f74 restrict
<
│ │ │ -000f6930: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ -000f6940: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ -000f6950: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ -000f6960: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ -000f6970: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ -000f6980: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -000f6990: 2d53 492d 3136 0a20 202d 2067 7275 6232  -SI-16.  - grub2
│ │ │ -000f69a0: 5f70 7469 5f61 7267 756d 656e 740a 2020  _pti_argument.  
│ │ │ -000f69b0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -000f69c0: 0a20 202d 206c 6f77 5f73 6576 6572 6974  .  - low_severit
│ │ │ -000f69d0: 790a 2020 2d20 6d65 6469 756d 5f63 6f6d  y.  - medium_com
│ │ │ -000f69e0: 706c 6578 6974 790a 2020 2d20 7265 626f  plexity.  - rebo
│ │ │ -000f69f0: 6f74 5f72 6571 7569 7265 640a 2020 2d20  ot_required.  - 
│ │ │ -000f6a00: 7265 7374 7269 6374 5f73 7472 6174 6567  restrict_strateg
│ │ │ -000f6a10: 790a 0a2d 206e 616d 653a 2043 6865 636b  y..- name: Check
│ │ │ -000f6a20: 2069 6620 7074 6920 6172 6775 6d65 6e74   if pti argument
│ │ │ -000f6a30: 2069 7320 616c 7265 6164 7920 7072 6573   is already pres
│ │ │ -000f6a40: 656e 7420 696e 202f 6574 632f 6465 6661  ent in /etc/defa
│ │ │ -000f6a50: 756c 742f 6772 7562 0a20 2061 6e73 6962  ult/grub.  ansib
│ │ │ -000f6a60: 6c65 2e62 7569 6c74 696e 2e73 6c75 7270  le.builtin.slurp
│ │ │ -000f6a70: 3a0a 2020 2020 7372 633a 202f 6574 632f  :.    src: /etc/
│ │ │ -000f6a80: 6465 6661 756c 742f 6772 7562 0a20 2072  default/grub.  r
│ │ │ -000f6a90: 6567 6973 7465 723a 2065 7463 5f64 6566  egister: etc_def
│ │ │ -000f6aa0: 6175 6c74 5f67 7275 620a 2020 7768 656e  ault_grub.  when
│ │ │ -000f6ab0: 3a20 2820 2267 7275 6232 2d63 6f6d 6d6f  : ( "grub2-commo
│ │ │ -000f6ac0: 6e22 2069 6e20 616e 7369 626c 655f 6661  n" in ansible_fa
│ │ │ -000f6ad0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -000f6ae0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -000f6af0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -000f6b00: 6765 730a 2020 2020 290a 2020 7461 6773  ges.    ).  tags
│ │ │ -000f6b10: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -000f6b20: 332d 5349 2d31 360a 2020 2d20 6772 7562  3-SI-16.  - grub
│ │ │ -000f6b30: 325f 7074 695f 6172 6775 6d65 6e74 0a20  2_pti_argument. 
│ │ │ -000f6b40: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -000f6b50: 6e0a 2020 2d20 6c6f 775f 7365 7665 7269  n.  - low_severi
│ │ │ -000f6b60: 7479 0a20 202d 206d 6564 6975 6d5f 636f  ty.  - medium_co
│ │ │ -000f6b70: 6d70 6c65 7869 7479 0a20 202d 2072 6562  mplexity.  - reb
│ │ │ -000f6b80: 6f6f 745f 7265 7175 6972 6564 0a20 202d  oot_required.  -
│ │ │ -000f6b90: 2072 6573 7472 6963 745f 7374 7261 7465   restrict_strate
│ │ │ -000f6ba0: 6779 0a0a 2d20 6e61 6d65 3a20 4368 6563  gy..- name: Chec
│ │ │ -000f6bb0: 6b20 6966 2070 7469 2061 7267 756d 656e  k if pti argumen
│ │ │ -000f6bc0: 7420 6973 2061 6c72 6561 6479 2070 7265  t is already pre
│ │ │ -000f6bd0: 7365 6e74 0a20 2061 6e73 6962 6c65 2e62  sent.  ansible.b
│ │ │ -000f6be0: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ -000f6bf0: 2f73 6269 6e2f 6772 7562 6279 202d 2d69  /sbin/grubby --i
│ │ │ -000f6c00: 6e66 6f3d 414c 4c0a 2020 7265 6769 7374  nfo=ALL.  regist
│ │ │ -000f6c10: 6572 3a20 6772 7562 6279 5f69 6e66 6f0a  er: grubby_info.
│ │ │ -000f6c20: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661    check_mode: fa
│ │ │ -000f6c30: 6c73 650a 2020 6368 616e 6765 645f 7768  lse.  changed_wh
│ │ │ -000f6c40: 656e 3a20 6661 6c73 650a 2020 6661 696c  en: false.  fail
│ │ │ -000f6c50: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ -000f6c60: 2077 6865 6e3a 2028 2022 6772 7562 322d   when: ( "grub2-
│ │ │ -000f6c70: 636f 6d6d 6f6e 2220 696e 2061 6e73 6962  common" in ansib
│ │ │ -000f6c80: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -000f6c90: 7320 616e 6420 226b 6572 6e65 6c22 2069  s and "kernel" i
│ │ │ -000f6ca0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -000f6cb0: 7061 636b 6167 6573 0a20 2020 2029 0a20  packages.    ). 
│ │ │ -000f6cc0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -000f6cd0: 3830 302d 3533 2d53 492d 3136 0a20 202d  800-53-SI-16.  -
│ │ │ -000f6ce0: 2067 7275 6232 5f70 7469 5f61 7267 756d   grub2_pti_argum
│ │ │ -000f6cf0: 656e 740a 2020 2d20 6c6f 775f 6469 7372  ent.  - low_disr
│ │ │ -000f6d00: 7570 7469 6f6e 0a20 202d 206c 6f77 5f73  uption.  - low_s
│ │ │ -000f6d10: 6576 6572 6974 790a 2020 2d20 6d65 6469  everity.  - medi
│ │ │ -000f6d20: 756d 5f63 6f6d 706c 6578 6974 790a 2020  um_complexity.  
│ │ │ -000f6d30: 2d20 7265 626f 6f74 5f72 6571 7569 7265  - reboot_require
│ │ │ -000f6d40: 640a 2020 2d20 7265 7374 7269 6374 5f73  d.  - restrict_s
│ │ │ -000f6d50: 7472 6174 6567 790a 0a2d 206e 616d 653a  trategy..- name:
│ │ │ -000f6d60: 2055 7064 6174 6520 6772 7562 2064 6566   Update grub def
│ │ │ -000f6d70: 6175 6c74 7320 616e 6420 7468 6520 626f  aults and the bo
│ │ │ -000f6d80: 6f74 6c6f 6164 6572 206d 656e 750a 2020  otloader menu.  
│ │ │ -000f6d90: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -000f6da0: 636f 6d6d 616e 643a 202f 7362 696e 2f67  command: /sbin/g
│ │ │ -000f6db0: 7275 6262 7920 2d2d 7570 6461 7465 2d6b  rubby --update-k
│ │ │ -000f6dc0: 6572 6e65 6c3d 414c 4c20 2d2d 6172 6773  ernel=ALL --args
│ │ │ -000f6dd0: 3d22 7074 693d 6f6e 220a 2020 7768 656e  ="pti=on".  when
│ │ │ -000f6de0: 3a0a 2020 2d20 2820 2267 7275 6232 2d63  :.  - ( "grub2-c
│ │ │ -000f6df0: 6f6d 6d6f 6e22 2069 6e20 616e 7369 626c  ommon" in ansibl
│ │ │ -000f6e00: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -000f6e10: 2061 6e64 2022 6b65 726e 656c 2220 696e   and "kernel" in
│ │ │ -000f6e20: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -000f6e30: 6163 6b61 6765 730a 2020 2020 290a 2020  ackages.    ).  
│ │ │ -000f6e40: 2d20 2867 7275 6262 795f 696e 666f 2e73  - (grubby_info.s
│ │ │ -000f6e50: 7464 6f75 7420 6973 206e 6f74 2073 6561  tdout is not sea
│ │ │ -000f6e60: 7263 6828 2770 7469 3d6f 6e27 2929 206f  rch('pti=on')) o
│ │ │ -000f6e70: 7220 2828 6574 635f 6465 6661 756c 745f  r ((etc_default_
│ │ │ -000f6e80: 6772 7562 5b27 636f 6e74 656e 7427 5d0a  grub['content'].
│ │ │ -000f6e90: 2020 2020 7c20 6236 3464 6563 6f64 6529      | b64decode)
│ │ │ -000f6ea0: 2069 7320 6e6f 7420 7365 6172 6368 2827   is not search('
│ │ │ -000f6eb0: 7074 693d 6f6e 2729 290a 2020 7461 6773  pti=on')).  tags
│ │ │ -000f6ec0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -000f6ed0: 332d 5349 2d31 360a 2020 2d20 6772 7562  3-SI-16.  - grub
│ │ │ -000f6ee0: 325f 7074 695f 6172 6775 6d65 6e74 0a20  2_pti_argument. 
│ │ │ -000f6ef0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -000f6f00: 6e0a 2020 2d20 6c6f 775f 7365 7665 7269  n.  - low_severi
│ │ │ -000f6f10: 7479 0a20 202d 206d 6564 6975 6d5f 636f  ty.  - medium_co
│ │ │ -000f6f20: 6d70 6c65 7869 7479 0a20 202d 2072 6562  mplexity.  - reb
│ │ │ -000f6f30: 6f6f 745f 7265 7175 6972 6564 0a20 202d  oot_required.  -
│ │ │ -000f6f40: 2072 6573 7472 6963 745f 7374 7261 7465   restrict_strate
│ │ │ -000f6f50: 6779 0a3c 2f63 6f64 653e 3c2f 7072 653e  gy.
│ │ │ +000f66a0: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ +000f66b0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +000f66c0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Reboot:true │ │ │ +000f67b0: 3c74 723e 3c74 683e 5374 7261 7465 6779
-
│ │ │ +000f67f0: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +000f6800: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +000f6810: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ +000f6820: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ +000f6830: 746f 0a20 2074 6167 733a 0a20 202d 204e  to.  tags:.  - N
│ │ │ +000f6840: 4953 542d 3830 302d 3533 2d53 492d 3136  IST-800-53-SI-16
│ │ │ +000f6850: 0a20 202d 2067 7275 6232 5f70 7469 5f61  .  - grub2_pti_a
│ │ │ +000f6860: 7267 756d 656e 740a 2020 2d20 6c6f 775f  rgument.  - low_
│ │ │ +000f6870: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +000f6880: 6f77 5f73 6576 6572 6974 790a 2020 2d20  ow_severity.  - 
│ │ │ +000f6890: 6d65 6469 756d 5f63 6f6d 706c 6578 6974  medium_complexit
│ │ │ +000f68a0: 790a 2020 2d20 7265 626f 6f74 5f72 6571  y.  - reboot_req
│ │ │ +000f68b0: 7569 7265 640a 2020 2d20 7265 7374 7269  uired.  - restri
│ │ │ +000f68c0: 6374 5f73 7472 6174 6567 790a 0a2d 206e  ct_strategy..- n
│ │ │ +000f68d0: 616d 653a 2043 6865 636b 2069 6620 7074  ame: Check if pt
│ │ │ +000f68e0: 6920 6172 6775 6d65 6e74 2069 7320 616c  i argument is al
│ │ │ +000f68f0: 7265 6164 7920 7072 6573 656e 7420 696e  ready present in
│ │ │ +000f6900: 202f 6574 632f 6465 6661 756c 742f 6772   /etc/default/gr
│ │ │ +000f6910: 7562 0a20 2061 6e73 6962 6c65 2e62 7569  ub.  ansible.bui
│ │ │ +000f6920: 6c74 696e 2e73 6c75 7270 3a0a 2020 2020  ltin.slurp:.    
│ │ │ +000f6930: 7372 633a 202f 6574 632f 6465 6661 756c  src: /etc/defaul
│ │ │ +000f6940: 742f 6772 7562 0a20 2072 6567 6973 7465  t/grub.  registe
│ │ │ +000f6950: 723a 2065 7463 5f64 6566 6175 6c74 5f67  r: etc_default_g
│ │ │ +000f6960: 7275 620a 2020 7768 656e 3a20 2820 2267  rub.  when: ( "g
│ │ │ +000f6970: 7275 6232 2d63 6f6d 6d6f 6e22 2069 6e20  rub2-common" in 
│ │ │ +000f6980: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +000f6990: 636b 6167 6573 2061 6e64 2022 6b65 726e  ckages and "kern
│ │ │ +000f69a0: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +000f69b0: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +000f69c0: 2020 290a 2020 7461 6773 3a0a 2020 2d20    ).  tags:.  - 
│ │ │ +000f69d0: 4e49 5354 2d38 3030 2d35 332d 5349 2d31  NIST-800-53-SI-1
│ │ │ +000f69e0: 360a 2020 2d20 6772 7562 325f 7074 695f  6.  - grub2_pti_
│ │ │ +000f69f0: 6172 6775 6d65 6e74 0a20 202d 206c 6f77  argument.  - low
│ │ │ +000f6a00: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +000f6a10: 6c6f 775f 7365 7665 7269 7479 0a20 202d  low_severity.  -
│ │ │ +000f6a20: 206d 6564 6975 6d5f 636f 6d70 6c65 7869   medium_complexi
│ │ │ +000f6a30: 7479 0a20 202d 2072 6562 6f6f 745f 7265  ty.  - reboot_re
│ │ │ +000f6a40: 7175 6972 6564 0a20 202d 2072 6573 7472  quired.  - restr
│ │ │ +000f6a50: 6963 745f 7374 7261 7465 6779 0a0a 2d20  ict_strategy..- 
│ │ │ +000f6a60: 6e61 6d65 3a20 4368 6563 6b20 6966 2070  name: Check if p
│ │ │ +000f6a70: 7469 2061 7267 756d 656e 7420 6973 2061  ti argument is a
│ │ │ +000f6a80: 6c72 6561 6479 2070 7265 7365 6e74 0a20  lready present. 
│ │ │ +000f6a90: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +000f6aa0: 2e63 6f6d 6d61 6e64 3a20 2f73 6269 6e2f  .command: /sbin/
│ │ │ +000f6ab0: 6772 7562 6279 202d 2d69 6e66 6f3d 414c  grubby --info=AL
│ │ │ +000f6ac0: 4c0a 2020 7265 6769 7374 6572 3a20 6772  L.  register: gr
│ │ │ +000f6ad0: 7562 6279 5f69 6e66 6f0a 2020 6368 6563  ubby_info.  chec
│ │ │ +000f6ae0: 6b5f 6d6f 6465 3a20 6661 6c73 650a 2020  k_mode: false.  
│ │ │ +000f6af0: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ +000f6b00: 6c73 650a 2020 6661 696c 6564 5f77 6865  lse.  failed_whe
│ │ │ +000f6b10: 6e3a 2066 616c 7365 0a20 2077 6865 6e3a  n: false.  when:
│ │ │ +000f6b20: 2028 2022 6772 7562 322d 636f 6d6d 6f6e   ( "grub2-common
│ │ │ +000f6b30: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +000f6b40: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +000f6b50: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +000f6b60: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +000f6b70: 6573 0a20 2020 2029 0a20 2074 6167 733a  es.    ).  tags:
│ │ │ +000f6b80: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +000f6b90: 2d53 492d 3136 0a20 202d 2067 7275 6232  -SI-16.  - grub2
│ │ │ +000f6ba0: 5f70 7469 5f61 7267 756d 656e 740a 2020  _pti_argument.  
│ │ │ +000f6bb0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +000f6bc0: 0a20 202d 206c 6f77 5f73 6576 6572 6974  .  - low_severit
│ │ │ +000f6bd0: 790a 2020 2d20 6d65 6469 756d 5f63 6f6d  y.  - medium_com
│ │ │ +000f6be0: 706c 6578 6974 790a 2020 2d20 7265 626f  plexity.  - rebo
│ │ │ +000f6bf0: 6f74 5f72 6571 7569 7265 640a 2020 2d20  ot_required.  - 
│ │ │ +000f6c00: 7265 7374 7269 6374 5f73 7472 6174 6567  restrict_strateg
│ │ │ +000f6c10: 790a 0a2d 206e 616d 653a 2055 7064 6174  y..- name: Updat
│ │ │ +000f6c20: 6520 6772 7562 2064 6566 6175 6c74 7320  e grub defaults 
│ │ │ +000f6c30: 616e 6420 7468 6520 626f 6f74 6c6f 6164  and the bootload
│ │ │ +000f6c40: 6572 206d 656e 750a 2020 616e 7369 626c  er menu.  ansibl
│ │ │ +000f6c50: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ +000f6c60: 643a 202f 7362 696e 2f67 7275 6262 7920  d: /sbin/grubby 
│ │ │ +000f6c70: 2d2d 7570 6461 7465 2d6b 6572 6e65 6c3d  --update-kernel=
│ │ │ +000f6c80: 414c 4c20 2d2d 6172 6773 3d22 7074 693d  ALL --args="pti=
│ │ │ +000f6c90: 6f6e 220a 2020 7768 656e 3a0a 2020 2d20  on".  when:.  - 
│ │ │ +000f6ca0: 2820 2267 7275 6232 2d63 6f6d 6d6f 6e22  ( "grub2-common"
│ │ │ +000f6cb0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +000f6cc0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +000f6cd0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +000f6ce0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +000f6cf0: 730a 2020 2020 290a 2020 2d20 2867 7275  s.    ).  - (gru
│ │ │ +000f6d00: 6262 795f 696e 666f 2e73 7464 6f75 7420  bby_info.stdout 
│ │ │ +000f6d10: 6973 206e 6f74 2073 6561 7263 6828 2770  is not search('p
│ │ │ +000f6d20: 7469 3d6f 6e27 2929 206f 7220 2828 6574  ti=on')) or ((et
│ │ │ +000f6d30: 635f 6465 6661 756c 745f 6772 7562 5b27  c_default_grub['
│ │ │ +000f6d40: 636f 6e74 656e 7427 5d0a 2020 2020 7c20  content'].    | 
│ │ │ +000f6d50: 6236 3464 6563 6f64 6529 2069 7320 6e6f  b64decode) is no
│ │ │ +000f6d60: 7420 7365 6172 6368 2827 7074 693d 6f6e  t search('pti=on
│ │ │ +000f6d70: 2729 290a 2020 7461 6773 3a0a 2020 2d20  ')).  tags:.  - 
│ │ │ +000f6d80: 4e49 5354 2d38 3030 2d35 332d 5349 2d31  NIST-800-53-SI-1
│ │ │ +000f6d90: 360a 2020 2d20 6772 7562 325f 7074 695f  6.  - grub2_pti_
│ │ │ +000f6da0: 6172 6775 6d65 6e74 0a20 202d 206c 6f77  argument.  - low
│ │ │ +000f6db0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +000f6dc0: 6c6f 775f 7365 7665 7269 7479 0a20 202d  low_severity.  -
│ │ │ +000f6dd0: 206d 6564 6975 6d5f 636f 6d70 6c65 7869   medium_complexi
│ │ │ +000f6de0: 7479 0a20 202d 2072 6562 6f6f 745f 7265  ty.  - reboot_re
│ │ │ +000f6df0: 7175 6972 6564 0a20 202d 2072 6573 7472  quired.  - restr
│ │ │ +000f6e00: 6963 745f 7374 7261 7465 6779 0a3c 2f63  ict_strategy.
│ │ │ +000f6e20: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +000f6ec0: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ +000f6ed0: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ +000f6ee0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...

[custom │ │ │ +000f6f30: 697a 6174 696f 6e73 2e6b 6572 6e65 6c5d izations.kernel] │ │ │ +000f6f40: 0a61 7070 656e 6420 3d20 2270 7469 3d6f .append = "pti=o │ │ │ +000f6f50: 6e22 0a3c 2f63 6f64 653e 3c2f 7072 653e n". │ │ │ 000f6f60: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation OS │ │ │ -000f8120: 4275 696c 6420 426c 7565 7072 696e 7420 Build Blueprint │ │ │ -000f8130: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -000f8140: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>

[c
│ │ │ -000f8180: 7573 746f 6d69 7a61 7469 6f6e 732e 6b65  ustomizations.ke
│ │ │ -000f8190: 726e 656c 5d0a 6170 7065 6e64 203d 2022  rnel].append = "
│ │ │ -000f81a0: 726e 675f 636f 7265 2e64 6566 6175 6c74  rng_core.default
│ │ │ -000f81b0: 5f71 7561 6c69 7479 3d3c 6162 6272 2074  _quality=500".
Re │ │ │ -000f82e0: 6d65 6469 6174 696f 6e20 416e 7369 626c mediation Ansibl │ │ │ -000f82f0: 6520 736e 6970 7065 7420 e287 b23c 2f61 e snippet ...
Com │ │ │ +000f6740: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:medium
Disrupt │ │ │ +000f6770: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +000f6780: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strategy │ │ │ +000f67c0: 3a3c 2f74 683e 3c74 643e 7265 7374 7269 :restri │ │ │ +000f67d0: 6374 3c2f 7464 3e3c 2f74 723e 3c2f 7461 ct
< │ │ │ -000f8390: 7464 3e6d 6564 6975 6d3c 2f74 643e 3c2f td>medium │ │ │ -000f83d0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -000f83e0: 3c74 643e 7472 7565 3c2f 7464 3e3c 2f74
- name: Gather 
│ │ │ -000f8440: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -000f8450: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -000f8460: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -000f8470: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -000f8480: 2067 7275 6232 5f72 6e67 5f63 6f72 655f   grub2_rng_core_
│ │ │ -000f8490: 6465 6661 756c 745f 7175 616c 6974 795f  default_quality_
│ │ │ -000f84a0: 6172 6775 6d65 6e74 0a20 202d 206c 6f77  argument.  - low
│ │ │ -000f84b0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -000f84c0: 6c6f 775f 7365 7665 7269 7479 0a20 202d  low_severity.  -
│ │ │ -000f84d0: 206d 6564 6975 6d5f 636f 6d70 6c65 7869   medium_complexi
│ │ │ -000f84e0: 7479 0a20 202d 2072 6562 6f6f 745f 7265  ty.  - reboot_re
│ │ │ -000f84f0: 7175 6972 6564 0a20 202d 2072 6573 7472  quired.  - restr
│ │ │ -000f8500: 6963 745f 7374 7261 7465 6779 0a2d 206e  ict_strategy.- n
│ │ │ -000f8510: 616d 653a 2058 4343 4446 2056 616c 7565  ame: XCCDF Value
│ │ │ -000f8520: 2076 6172 5f72 6e67 5f63 6f72 655f 6465   var_rng_core_de
│ │ │ -000f8530: 6661 756c 745f 7175 616c 6974 7920 2320  fault_quality # 
│ │ │ -000f8540: 7072 6f6d 6f74 6520 746f 2076 6172 6961  promote to varia
│ │ │ -000f8550: 626c 650a 2020 7365 745f 6661 6374 3a0a  ble.  set_fact:.
│ │ │ -000f8560: 2020 2020 7661 725f 726e 675f 636f 7265      var_rng_core
│ │ │ -000f8570: 5f64 6566 6175 6c74 5f71 7561 6c69 7479  _default_quality
│ │ │ -000f8580: 3a20 2121 7374 7220 3c61 6262 7220 7469  : !!str 500.  ta
│ │ │ -000f8600: 6773 3a0a 2020 2020 2d20 616c 7761 7973  gs:.    - always
│ │ │ -000f8610: 0a0a 2d20 6e61 6d65 3a20 4368 6563 6b20  ..- name: Check 
│ │ │ -000f8620: 6966 2072 6e67 5f63 6f72 652e 6465 6661  if rng_core.defa
│ │ │ -000f8630: 756c 745f 7175 616c 6974 7920 6172 6775  ult_quality argu
│ │ │ -000f8640: 6d65 6e74 2069 7320 616c 7265 6164 7920  ment is already 
│ │ │ -000f8650: 7072 6573 656e 7420 696e 202f 6574 632f  present in /etc/
│ │ │ -000f8660: 6465 6661 756c 742f 6772 7562 0a20 2061  default/grub.  a
│ │ │ -000f8670: 6e73 6962 6c65 2e62 7569 6c74 696e 2e73  nsible.builtin.s
│ │ │ -000f8680: 6c75 7270 3a0a 2020 2020 7372 633a 202f  lurp:.    src: /
│ │ │ -000f8690: 6574 632f 6465 6661 756c 742f 6772 7562  etc/default/grub
│ │ │ -000f86a0: 0a20 2072 6567 6973 7465 723a 2065 7463  .  register: etc
│ │ │ -000f86b0: 5f64 6566 6175 6c74 5f67 7275 620a 2020  _default_grub.  
│ │ │ -000f86c0: 7768 656e 3a20 2820 2267 7275 6232 2d63  when: ( "grub2-c
│ │ │ -000f86d0: 6f6d 6d6f 6e22 2069 6e20 616e 7369 626c  ommon" in ansibl
│ │ │ -000f86e0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -000f86f0: 2061 6e64 2022 6b65 726e 656c 2220 696e   and "kernel" in
│ │ │ -000f8700: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -000f8710: 6163 6b61 6765 730a 2020 2020 290a 2020  ackages.    ).  
│ │ │ -000f8720: 7461 6773 3a0a 2020 2d20 6772 7562 325f  tags:.  - grub2_
│ │ │ -000f8730: 726e 675f 636f 7265 5f64 6566 6175 6c74  rng_core_default
│ │ │ -000f8740: 5f71 7561 6c69 7479 5f61 7267 756d 656e  _quality_argumen
│ │ │ -000f8750: 740a 2020 2d20 6c6f 775f 6469 7372 7570  t.  - low_disrup
│ │ │ -000f8760: 7469 6f6e 0a20 202d 206c 6f77 5f73 6576  tion.  - low_sev
│ │ │ -000f8770: 6572 6974 790a 2020 2d20 6d65 6469 756d  erity.  - medium
│ │ │ -000f8780: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -000f8790: 7265 626f 6f74 5f72 6571 7569 7265 640a  reboot_required.
│ │ │ -000f87a0: 2020 2d20 7265 7374 7269 6374 5f73 7472    - restrict_str
│ │ │ -000f87b0: 6174 6567 790a 0a2d 206e 616d 653a 2043  ategy..- name: C
│ │ │ -000f87c0: 6865 636b 2069 6620 726e 675f 636f 7265  heck if rng_core
│ │ │ -000f87d0: 2e64 6566 6175 6c74 5f71 7561 6c69 7479  .default_quality
│ │ │ -000f87e0: 2061 7267 756d 656e 7420 6973 2061 6c72   argument is alr
│ │ │ -000f87f0: 6561 6479 2070 7265 7365 6e74 0a20 2061  eady present.  a
│ │ │ -000f8800: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ -000f8810: 6f6d 6d61 6e64 3a20 2f73 6269 6e2f 6772  ommand: /sbin/gr
│ │ │ -000f8820: 7562 6279 202d 2d69 6e66 6f3d 414c 4c0a  ubby --info=ALL.
│ │ │ -000f8830: 2020 7265 6769 7374 6572 3a20 6772 7562    register: grub
│ │ │ -000f8840: 6279 5f69 6e66 6f0a 2020 6368 6563 6b5f  by_info.  check_
│ │ │ -000f8850: 6d6f 6465 3a20 6661 6c73 650a 2020 6368  mode: false.  ch
│ │ │ -000f8860: 616e 6765 645f 7768 656e 3a20 6661 6c73  anged_when: fals
│ │ │ -000f8870: 650a 2020 6661 696c 6564 5f77 6865 6e3a  e.  failed_when:
│ │ │ -000f8880: 2066 616c 7365 0a20 2077 6865 6e3a 2028   false.  when: (
│ │ │ -000f8890: 2022 6772 7562 322d 636f 6d6d 6f6e 2220   "grub2-common" 
│ │ │ -000f88a0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -000f88b0: 2e70 6163 6b61 6765 7320 616e 6420 226b  .packages and "k
│ │ │ -000f88c0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -000f88d0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -000f88e0: 0a20 2020 2029 0a20 2074 6167 733a 0a20  .    ).  tags:. 
│ │ │ -000f88f0: 202d 2067 7275 6232 5f72 6e67 5f63 6f72   - grub2_rng_cor
│ │ │ -000f8900: 655f 6465 6661 756c 745f 7175 616c 6974  e_default_qualit
│ │ │ -000f8910: 795f 6172 6775 6d65 6e74 0a20 202d 206c  y_argument.  - l
│ │ │ -000f8920: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -000f8930: 2d20 6c6f 775f 7365 7665 7269 7479 0a20  - low_severity. 
│ │ │ -000f8940: 202d 206d 6564 6975 6d5f 636f 6d70 6c65   - medium_comple
│ │ │ -000f8950: 7869 7479 0a20 202d 2072 6562 6f6f 745f  xity.  - reboot_
│ │ │ -000f8960: 7265 7175 6972 6564 0a20 202d 2072 6573  required.  - res
│ │ │ -000f8970: 7472 6963 745f 7374 7261 7465 6779 0a0a  trict_strategy..
│ │ │ -000f8980: 2d20 6e61 6d65 3a20 5570 6461 7465 2067  - name: Update g
│ │ │ -000f8990: 7275 6220 6465 6661 756c 7473 2061 6e64  rub defaults and
│ │ │ -000f89a0: 2074 6865 2062 6f6f 746c 6f61 6465 7220   the bootloader 
│ │ │ -000f89b0: 6d65 6e75 0a20 2061 6e73 6962 6c65 2e62  menu.  ansible.b
│ │ │ -000f89c0: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ -000f89d0: 2f73 6269 6e2f 6772 7562 6279 202d 2d75  /sbin/grubby --u
│ │ │ -000f89e0: 7064 6174 652d 6b65 726e 656c 3d41 4c4c  pdate-kernel=ALL
│ │ │ -000f89f0: 202d 2d61 7267 733d 2272 6e67 5f63 6f72   --args="rng_cor
│ │ │ -000f8a00: 652e 6465 6661 756c 745f 7175 616c 6974  e.default_qualit
│ │ │ -000f8a10: 793d 7b7b 0a20 2020 2076 6172 5f72 6e67  y={{.    var_rng
│ │ │ -000f8a20: 5f63 6f72 655f 6465 6661 756c 745f 7175  _core_default_qu
│ │ │ -000f8a30: 616c 6974 7920 7d7d 220a 2020 7768 656e  ality }}".  when
│ │ │ -000f8a40: 3a0a 2020 2d20 2820 2267 7275 6232 2d63  :.  - ( "grub2-c
│ │ │ -000f8a50: 6f6d 6d6f 6e22 2069 6e20 616e 7369 626c  ommon" in ansibl
│ │ │ -000f8a60: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -000f8a70: 2061 6e64 2022 6b65 726e 656c 2220 696e   and "kernel" in
│ │ │ -000f8a80: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -000f8a90: 6163 6b61 6765 730a 2020 2020 290a 2020  ackages.    ).  
│ │ │ -000f8aa0: 2d20 2867 7275 6262 795f 696e 666f 2e73  - (grubby_info.s
│ │ │ -000f8ab0: 7464 6f75 7420 6973 206e 6f74 2073 6561  tdout is not sea
│ │ │ -000f8ac0: 7263 6828 2772 6e67 5f63 6f72 652e 6465  rch('rng_core.de
│ │ │ -000f8ad0: 6661 756c 745f 7175 616c 6974 793d 2720  fault_quality=' 
│ │ │ -000f8ae0: 7e20 7661 725f 726e 675f 636f 7265 5f64  ~ var_rng_core_d
│ │ │ -000f8af0: 6566 6175 6c74 5f71 7561 6c69 7479 2929  efault_quality))
│ │ │ -000f8b00: 0a20 2020 206f 7220 2828 6574 635f 6465  .    or ((etc_de
│ │ │ -000f8b10: 6661 756c 745f 6772 7562 5b27 636f 6e74  fault_grub['cont
│ │ │ -000f8b20: 656e 7427 5d20 7c20 6236 3464 6563 6f64  ent'] | b64decod
│ │ │ -000f8b30: 6529 2069 7320 6e6f 7420 7365 6172 6368  e) is not search
│ │ │ -000f8b40: 2827 726e 675f 636f 7265 2e64 6566 6175  ('rng_core.defau
│ │ │ -000f8b50: 6c74 5f71 7561 6c69 7479 3d27 0a20 2020  lt_quality='.   
│ │ │ -000f8b60: 207e 2076 6172 5f72 6e67 5f63 6f72 655f   ~ var_rng_core_
│ │ │ -000f8b70: 6465 6661 756c 745f 7175 616c 6974 7929  default_quality)
│ │ │ -000f8b80: 290a 2020 7461 6773 3a0a 2020 2d20 6772  ).  tags:.  - gr
│ │ │ -000f8b90: 7562 325f 726e 675f 636f 7265 5f64 6566  ub2_rng_core_def
│ │ │ -000f8ba0: 6175 6c74 5f71 7561 6c69 7479 5f61 7267  ault_quality_arg
│ │ │ -000f8bb0: 756d 656e 740a 2020 2d20 6c6f 775f 6469  ument.  - low_di
│ │ │ -000f8bc0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -000f8bd0: 5f73 6576 6572 6974 790a 2020 2d20 6d65  _severity.  - me
│ │ │ -000f8be0: 6469 756d 5f63 6f6d 706c 6578 6974 790a  dium_complexity.
│ │ │ -000f8bf0: 2020 2d20 7265 626f 6f74 5f72 6571 7569    - reboot_requi
│ │ │ -000f8c00: 7265 640a 2020 2d20 7265 7374 7269 6374  red.  - restrict
│ │ │ -000f8c10: 5f73 7472 6174 6567 790a 3c2f 636f 6465  _strategy.Remediation An
│ │ │ +000f8120: 7369 626c 6520 736e 6970 7065 7420 e287  sible snippet ..
│ │ │ +000f8130: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
C │ │ │ -000f8380: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disru │ │ │ -000f83b0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -000f83c0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:true
Strate │ │ │ -000f8400: 6779 3a3c 2f74 683e 3c74 643e 7265 7374 gy:rest │ │ │ -000f8410: 7269 6374 3c2f 7464 3e3c 2f74 723e 3c2f rict
< │ │ │ +000f81b0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +000f81f0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +000f8200: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
medium
D │ │ │ +000f81e0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ +000f8210: 2f74 683e 3c74 643e 7472 7565 3c2f 7464 /th>true
St │ │ │ +000f8230: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +000f8240: 7265 7374 7269 6374 3c2f 7464 3e3c 2f74 restrict
<
│ │ │ +000f8260: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ +000f8270: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ +000f8280: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ +000f8290: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ +000f82a0: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ +000f82b0: 0a20 202d 2067 7275 6232 5f72 6e67 5f63  .  - grub2_rng_c
│ │ │ +000f82c0: 6f72 655f 6465 6661 756c 745f 7175 616c  ore_default_qual
│ │ │ +000f82d0: 6974 795f 6172 6775 6d65 6e74 0a20 202d  ity_argument.  -
│ │ │ +000f82e0: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +000f82f0: 2020 2d20 6c6f 775f 7365 7665 7269 7479    - low_severity
│ │ │ +000f8300: 0a20 202d 206d 6564 6975 6d5f 636f 6d70  .  - medium_comp
│ │ │ +000f8310: 6c65 7869 7479 0a20 202d 2072 6562 6f6f  lexity.  - reboo
│ │ │ +000f8320: 745f 7265 7175 6972 6564 0a20 202d 2072  t_required.  - r
│ │ │ +000f8330: 6573 7472 6963 745f 7374 7261 7465 6779  estrict_strategy
│ │ │ +000f8340: 0a2d 206e 616d 653a 2058 4343 4446 2056  .- name: XCCDF V
│ │ │ +000f8350: 616c 7565 2076 6172 5f72 6e67 5f63 6f72  alue var_rng_cor
│ │ │ +000f8360: 655f 6465 6661 756c 745f 7175 616c 6974  e_default_qualit
│ │ │ +000f8370: 7920 2320 7072 6f6d 6f74 6520 746f 2076  y # promote to v
│ │ │ +000f8380: 6172 6961 626c 650a 2020 7365 745f 6661  ariable.  set_fa
│ │ │ +000f8390: 6374 3a0a 2020 2020 7661 725f 726e 675f  ct:.    var_rng_
│ │ │ +000f83a0: 636f 7265 5f64 6566 6175 6c74 5f71 7561  core_default_qua
│ │ │ +000f83b0: 6c69 7479 3a20 2121 7374 7220 3c61 6262  lity: !!str 500.
│ │ │ +000f8430: 2020 7461 6773 3a0a 2020 2020 2d20 616c    tags:.    - al
│ │ │ +000f8440: 7761 7973 0a0a 2d20 6e61 6d65 3a20 4368  ways..- name: Ch
│ │ │ +000f8450: 6563 6b20 6966 2072 6e67 5f63 6f72 652e  eck if rng_core.
│ │ │ +000f8460: 6465 6661 756c 745f 7175 616c 6974 7920  default_quality 
│ │ │ +000f8470: 6172 6775 6d65 6e74 2069 7320 616c 7265  argument is alre
│ │ │ +000f8480: 6164 7920 7072 6573 656e 7420 696e 202f  ady present in /
│ │ │ +000f8490: 6574 632f 6465 6661 756c 742f 6772 7562  etc/default/grub
│ │ │ +000f84a0: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ +000f84b0: 696e 2e73 6c75 7270 3a0a 2020 2020 7372  in.slurp:.    sr
│ │ │ +000f84c0: 633a 202f 6574 632f 6465 6661 756c 742f  c: /etc/default/
│ │ │ +000f84d0: 6772 7562 0a20 2072 6567 6973 7465 723a  grub.  register:
│ │ │ +000f84e0: 2065 7463 5f64 6566 6175 6c74 5f67 7275   etc_default_gru
│ │ │ +000f84f0: 620a 2020 7768 656e 3a20 2820 2267 7275  b.  when: ( "gru
│ │ │ +000f8500: 6232 2d63 6f6d 6d6f 6e22 2069 6e20 616e  b2-common" in an
│ │ │ +000f8510: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +000f8520: 6167 6573 2061 6e64 2022 6b65 726e 656c  ages and "kernel
│ │ │ +000f8530: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +000f8540: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +000f8550: 290a 2020 7461 6773 3a0a 2020 2d20 6772  ).  tags:.  - gr
│ │ │ +000f8560: 7562 325f 726e 675f 636f 7265 5f64 6566  ub2_rng_core_def
│ │ │ +000f8570: 6175 6c74 5f71 7561 6c69 7479 5f61 7267  ault_quality_arg
│ │ │ +000f8580: 756d 656e 740a 2020 2d20 6c6f 775f 6469  ument.  - low_di
│ │ │ +000f8590: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +000f85a0: 5f73 6576 6572 6974 790a 2020 2d20 6d65  _severity.  - me
│ │ │ +000f85b0: 6469 756d 5f63 6f6d 706c 6578 6974 790a  dium_complexity.
│ │ │ +000f85c0: 2020 2d20 7265 626f 6f74 5f72 6571 7569    - reboot_requi
│ │ │ +000f85d0: 7265 640a 2020 2d20 7265 7374 7269 6374  red.  - restrict
│ │ │ +000f85e0: 5f73 7472 6174 6567 790a 0a2d 206e 616d  _strategy..- nam
│ │ │ +000f85f0: 653a 2043 6865 636b 2069 6620 726e 675f  e: Check if rng_
│ │ │ +000f8600: 636f 7265 2e64 6566 6175 6c74 5f71 7561  core.default_qua
│ │ │ +000f8610: 6c69 7479 2061 7267 756d 656e 7420 6973  lity argument is
│ │ │ +000f8620: 2061 6c72 6561 6479 2070 7265 7365 6e74   already present
│ │ │ +000f8630: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ +000f8640: 696e 2e63 6f6d 6d61 6e64 3a20 2f73 6269  in.command: /sbi
│ │ │ +000f8650: 6e2f 6772 7562 6279 202d 2d69 6e66 6f3d  n/grubby --info=
│ │ │ +000f8660: 414c 4c0a 2020 7265 6769 7374 6572 3a20  ALL.  register: 
│ │ │ +000f8670: 6772 7562 6279 5f69 6e66 6f0a 2020 6368  grubby_info.  ch
│ │ │ +000f8680: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a  eck_mode: false.
│ │ │ +000f8690: 2020 6368 616e 6765 645f 7768 656e 3a20    changed_when: 
│ │ │ +000f86a0: 6661 6c73 650a 2020 6661 696c 6564 5f77  false.  failed_w
│ │ │ +000f86b0: 6865 6e3a 2066 616c 7365 0a20 2077 6865  hen: false.  whe
│ │ │ +000f86c0: 6e3a 2028 2022 6772 7562 322d 636f 6d6d  n: ( "grub2-comm
│ │ │ +000f86d0: 6f6e 2220 696e 2061 6e73 6962 6c65 5f66  on" in ansible_f
│ │ │ +000f86e0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +000f86f0: 6420 226b 6572 6e65 6c22 2069 6e20 616e  d "kernel" in an
│ │ │ +000f8700: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +000f8710: 6167 6573 0a20 2020 2029 0a20 2074 6167  ages.    ).  tag
│ │ │ +000f8720: 733a 0a20 202d 2067 7275 6232 5f72 6e67  s:.  - grub2_rng
│ │ │ +000f8730: 5f63 6f72 655f 6465 6661 756c 745f 7175  _core_default_qu
│ │ │ +000f8740: 616c 6974 795f 6172 6775 6d65 6e74 0a20  ality_argument. 
│ │ │ +000f8750: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +000f8760: 6e0a 2020 2d20 6c6f 775f 7365 7665 7269  n.  - low_severi
│ │ │ +000f8770: 7479 0a20 202d 206d 6564 6975 6d5f 636f  ty.  - medium_co
│ │ │ +000f8780: 6d70 6c65 7869 7479 0a20 202d 2072 6562  mplexity.  - reb
│ │ │ +000f8790: 6f6f 745f 7265 7175 6972 6564 0a20 202d  oot_required.  -
│ │ │ +000f87a0: 2072 6573 7472 6963 745f 7374 7261 7465   restrict_strate
│ │ │ +000f87b0: 6779 0a0a 2d20 6e61 6d65 3a20 5570 6461  gy..- name: Upda
│ │ │ +000f87c0: 7465 2067 7275 6220 6465 6661 756c 7473  te grub defaults
│ │ │ +000f87d0: 2061 6e64 2074 6865 2062 6f6f 746c 6f61   and the bootloa
│ │ │ +000f87e0: 6465 7220 6d65 6e75 0a20 2061 6e73 6962  der menu.  ansib
│ │ │ +000f87f0: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61  le.builtin.comma
│ │ │ +000f8800: 6e64 3a20 2f73 6269 6e2f 6772 7562 6279  nd: /sbin/grubby
│ │ │ +000f8810: 202d 2d75 7064 6174 652d 6b65 726e 656c   --update-kernel
│ │ │ +000f8820: 3d41 4c4c 202d 2d61 7267 733d 2272 6e67  =ALL --args="rng
│ │ │ +000f8830: 5f63 6f72 652e 6465 6661 756c 745f 7175  _core.default_qu
│ │ │ +000f8840: 616c 6974 793d 7b7b 0a20 2020 2076 6172  ality={{.    var
│ │ │ +000f8850: 5f72 6e67 5f63 6f72 655f 6465 6661 756c  _rng_core_defaul
│ │ │ +000f8860: 745f 7175 616c 6974 7920 7d7d 220a 2020  t_quality }}".  
│ │ │ +000f8870: 7768 656e 3a0a 2020 2d20 2820 2267 7275  when:.  - ( "gru
│ │ │ +000f8880: 6232 2d63 6f6d 6d6f 6e22 2069 6e20 616e  b2-common" in an
│ │ │ +000f8890: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +000f88a0: 6167 6573 2061 6e64 2022 6b65 726e 656c  ages and "kernel
│ │ │ +000f88b0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +000f88c0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +000f88d0: 290a 2020 2d20 2867 7275 6262 795f 696e  ).  - (grubby_in
│ │ │ +000f88e0: 666f 2e73 7464 6f75 7420 6973 206e 6f74  fo.stdout is not
│ │ │ +000f88f0: 2073 6561 7263 6828 2772 6e67 5f63 6f72   search('rng_cor
│ │ │ +000f8900: 652e 6465 6661 756c 745f 7175 616c 6974  e.default_qualit
│ │ │ +000f8910: 793d 2720 7e20 7661 725f 726e 675f 636f  y=' ~ var_rng_co
│ │ │ +000f8920: 7265 5f64 6566 6175 6c74 5f71 7561 6c69  re_default_quali
│ │ │ +000f8930: 7479 2929 0a20 2020 206f 7220 2828 6574  ty)).    or ((et
│ │ │ +000f8940: 635f 6465 6661 756c 745f 6772 7562 5b27  c_default_grub['
│ │ │ +000f8950: 636f 6e74 656e 7427 5d20 7c20 6236 3464  content'] | b64d
│ │ │ +000f8960: 6563 6f64 6529 2069 7320 6e6f 7420 7365  ecode) is not se
│ │ │ +000f8970: 6172 6368 2827 726e 675f 636f 7265 2e64  arch('rng_core.d
│ │ │ +000f8980: 6566 6175 6c74 5f71 7561 6c69 7479 3d27  efault_quality='
│ │ │ +000f8990: 0a20 2020 207e 2076 6172 5f72 6e67 5f63  .    ~ var_rng_c
│ │ │ +000f89a0: 6f72 655f 6465 6661 756c 745f 7175 616c  ore_default_qual
│ │ │ +000f89b0: 6974 7929 290a 2020 7461 6773 3a0a 2020  ity)).  tags:.  
│ │ │ +000f89c0: 2d20 6772 7562 325f 726e 675f 636f 7265  - grub2_rng_core
│ │ │ +000f89d0: 5f64 6566 6175 6c74 5f71 7561 6c69 7479  _default_quality
│ │ │ +000f89e0: 5f61 7267 756d 656e 740a 2020 2d20 6c6f  _argument.  - lo
│ │ │ +000f89f0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +000f8a00: 206c 6f77 5f73 6576 6572 6974 790a 2020   low_severity.  
│ │ │ +000f8a10: 2d20 6d65 6469 756d 5f63 6f6d 706c 6578  - medium_complex
│ │ │ +000f8a20: 6974 790a 2020 2d20 7265 626f 6f74 5f72  ity.  - reboot_r
│ │ │ +000f8a30: 6571 7569 7265 640a 2020 2d20 7265 7374  equired.  - rest
│ │ │ +000f8a40: 7269 6374 5f73 7472 6174 6567 790a 3c2f  rict_strategy.
Re │ │ │ +000f8b00: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ +000f8b10: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ +000f8b20: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +000f8b30: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +000f8b40: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +000f8b50: 7365 2220 6964 3d22 6964 3234 3722 3e3c se" id="id247">< │ │ │ +000f8b60: 7072 653e 3c63 6f64 653e 5b63 7573 746f pre>[custo │ │ │ +000f8b70: 6d69 7a61 7469 6f6e 732e 6b65 726e 656c mizations.kernel │ │ │ +000f8b80: 5d0a 6170 7065 6e64 203d 2022 726e 675f ].append = "rng_ │ │ │ +000f8b90: 636f 7265 2e64 6566 6175 6c74 5f71 7561 core.default_qua │ │ │ +000f8ba0: 6c69 7479 3d3c 6162 6272 2074 6974 6c65 lity=50 │ │ │ +000f8c10: 303c 2f61 6262 723e 220a 3c2f 636f 6465 0".
Remediation O │ │ │ -000f9d70: 5342 7569 6c64 2042 6c75 6570 7269 6e74 SBuild Blueprint │ │ │ -000f9d80: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -000f9d90: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
[
│ │ │ -000f9dd0: 6375 7374 6f6d 697a 6174 696f 6e73 2e6b  customizations.k
│ │ │ -000f9de0: 6572 6e65 6c5d 0a61 7070 656e 6420 3d20  ernel].append = 
│ │ │ -000f9df0: 2273 6c61 625f 6e6f 6d65 7267 653d 7965  "slab_nomerge=ye
│ │ │ -000f9e00: 7322 0a3c 2f63 6f64 653e 3c2f 7072 653e  s".
│ │ │ -000f9e10: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation A │ │ │ -000f9ec0: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ -000f9ed0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -000f9f50: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -000f9f90: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472
Complexity:< │ │ │ -000f9f60: 2f74 683e 3c74 643e 6d65 6469 756d 3c2f /th>medium
│ │ │ -000f9f80: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ -000f9fb0: 3c2f 7468 3e3c 7464 3e74 7275 653c 2f74 true
S │ │ │ -000f9fd0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:restrict
│ │ │ -000fa000: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -000fa010: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -000fa020: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -000fa030: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -000fa040: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -000fa050: 3a0a 2020 2d20 6772 7562 325f 736c 6162  :.  - grub2_slab
│ │ │ -000fa060: 5f6e 6f6d 6572 6765 5f61 7267 756d 656e  _nomerge_argumen
│ │ │ -000fa070: 740a 2020 2d20 6c6f 775f 6469 7372 7570  t.  - low_disrup
│ │ │ -000fa080: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ -000fa090: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -000fa0a0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -000fa0b0: 202d 2072 6562 6f6f 745f 7265 7175 6972   - reboot_requir
│ │ │ -000fa0c0: 6564 0a20 202d 2072 6573 7472 6963 745f  ed.  - restrict_
│ │ │ -000fa0d0: 7374 7261 7465 6779 0a0a 2d20 6e61 6d65  strategy..- name
│ │ │ -000fa0e0: 3a20 4368 6563 6b20 6966 2073 6c61 625f  : Check if slab_
│ │ │ -000fa0f0: 6e6f 6d65 7267 6520 6172 6775 6d65 6e74  nomerge argument
│ │ │ -000fa100: 2069 7320 616c 7265 6164 7920 7072 6573   is already pres
│ │ │ -000fa110: 656e 7420 696e 202f 6574 632f 6465 6661  ent in /etc/defa
│ │ │ -000fa120: 756c 742f 6772 7562 0a20 2061 6e73 6962  ult/grub.  ansib
│ │ │ -000fa130: 6c65 2e62 7569 6c74 696e 2e73 6c75 7270  le.builtin.slurp
│ │ │ -000fa140: 3a0a 2020 2020 7372 633a 202f 6574 632f  :.    src: /etc/
│ │ │ -000fa150: 6465 6661 756c 742f 6772 7562 0a20 2072  default/grub.  r
│ │ │ -000fa160: 6567 6973 7465 723a 2065 7463 5f64 6566  egister: etc_def
│ │ │ -000fa170: 6175 6c74 5f67 7275 620a 2020 7768 656e  ault_grub.  when
│ │ │ -000fa180: 3a20 2820 2267 7275 6232 2d63 6f6d 6d6f  : ( "grub2-commo
│ │ │ -000fa190: 6e22 2069 6e20 616e 7369 626c 655f 6661  n" in ansible_fa
│ │ │ -000fa1a0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -000fa1b0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -000fa1c0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -000fa1d0: 6765 730a 2020 2020 290a 2020 7461 6773  ges.    ).  tags
│ │ │ -000fa1e0: 3a0a 2020 2d20 6772 7562 325f 736c 6162  :.  - grub2_slab
│ │ │ -000fa1f0: 5f6e 6f6d 6572 6765 5f61 7267 756d 656e  _nomerge_argumen
│ │ │ -000fa200: 740a 2020 2d20 6c6f 775f 6469 7372 7570  t.  - low_disrup
│ │ │ -000fa210: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ -000fa220: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -000fa230: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -000fa240: 202d 2072 6562 6f6f 745f 7265 7175 6972   - reboot_requir
│ │ │ -000fa250: 6564 0a20 202d 2072 6573 7472 6963 745f  ed.  - restrict_
│ │ │ -000fa260: 7374 7261 7465 6779 0a0a 2d20 6e61 6d65  strategy..- name
│ │ │ -000fa270: 3a20 4368 6563 6b20 6966 2073 6c61 625f  : Check if slab_
│ │ │ -000fa280: 6e6f 6d65 7267 6520 6172 6775 6d65 6e74  nomerge argument
│ │ │ -000fa290: 2069 7320 616c 7265 6164 7920 7072 6573   is already pres
│ │ │ -000fa2a0: 656e 740a 2020 616e 7369 626c 652e 6275  ent.  ansible.bu
│ │ │ -000fa2b0: 696c 7469 6e2e 636f 6d6d 616e 643a 202f  iltin.command: /
│ │ │ -000fa2c0: 7362 696e 2f67 7275 6262 7920 2d2d 696e  sbin/grubby --in
│ │ │ -000fa2d0: 666f 3d41 4c4c 0a20 2072 6567 6973 7465  fo=ALL.  registe
│ │ │ -000fa2e0: 723a 2067 7275 6262 795f 696e 666f 0a20  r: grubby_info. 
│ │ │ -000fa2f0: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ -000fa300: 7365 0a20 2063 6861 6e67 6564 5f77 6865  se.  changed_whe
│ │ │ -000fa310: 6e3a 2066 616c 7365 0a20 2066 6169 6c65  n: false.  faile
│ │ │ -000fa320: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ -000fa330: 7768 656e 3a20 2820 2267 7275 6232 2d63  when: ( "grub2-c
│ │ │ -000fa340: 6f6d 6d6f 6e22 2069 6e20 616e 7369 626c  ommon" in ansibl
│ │ │ -000fa350: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -000fa360: 2061 6e64 2022 6b65 726e 656c 2220 696e   and "kernel" in
│ │ │ -000fa370: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -000fa380: 6163 6b61 6765 730a 2020 2020 290a 2020  ackages.    ).  
│ │ │ -000fa390: 7461 6773 3a0a 2020 2d20 6772 7562 325f  tags:.  - grub2_
│ │ │ -000fa3a0: 736c 6162 5f6e 6f6d 6572 6765 5f61 7267  slab_nomerge_arg
│ │ │ -000fa3b0: 756d 656e 740a 2020 2d20 6c6f 775f 6469  ument.  - low_di
│ │ │ -000fa3c0: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ -000fa3d0: 6975 6d5f 636f 6d70 6c65 7869 7479 0a20  ium_complexity. 
│ │ │ -000fa3e0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -000fa3f0: 7479 0a20 202d 2072 6562 6f6f 745f 7265  ty.  - reboot_re
│ │ │ -000fa400: 7175 6972 6564 0a20 202d 2072 6573 7472  quired.  - restr
│ │ │ -000fa410: 6963 745f 7374 7261 7465 6779 0a0a 2d20  ict_strategy..- 
│ │ │ -000fa420: 6e61 6d65 3a20 5570 6461 7465 2067 7275  name: Update gru
│ │ │ -000fa430: 6220 6465 6661 756c 7473 2061 6e64 2074  b defaults and t
│ │ │ -000fa440: 6865 2062 6f6f 746c 6f61 6465 7220 6d65  he bootloader me
│ │ │ -000fa450: 6e75 0a20 2061 6e73 6962 6c65 2e62 7569  nu.  ansible.bui
│ │ │ -000fa460: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 2f73  ltin.command: /s
│ │ │ -000fa470: 6269 6e2f 6772 7562 6279 202d 2d75 7064  bin/grubby --upd
│ │ │ -000fa480: 6174 652d 6b65 726e 656c 3d41 4c4c 202d  ate-kernel=ALL -
│ │ │ -000fa490: 2d61 7267 733d 2273 6c61 625f 6e6f 6d65  -args="slab_nome
│ │ │ -000fa4a0: 7267 653d 7965 7322 0a20 2077 6865 6e3a  rge=yes".  when:
│ │ │ -000fa4b0: 0a20 202d 2028 2022 6772 7562 322d 636f  .  - ( "grub2-co
│ │ │ -000fa4c0: 6d6d 6f6e 2220 696e 2061 6e73 6962 6c65  mmon" in ansible
│ │ │ -000fa4d0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -000fa4e0: 616e 6420 226b 6572 6e65 6c22 2069 6e20  and "kernel" in 
│ │ │ -000fa4f0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -000fa500: 636b 6167 6573 0a20 2020 2029 0a20 202d  ckages.    ).  -
│ │ │ -000fa510: 2028 6772 7562 6279 5f69 6e66 6f2e 7374   (grubby_info.st
│ │ │ -000fa520: 646f 7574 2069 7320 6e6f 7420 7365 6172  dout is not sear
│ │ │ -000fa530: 6368 2827 736c 6162 5f6e 6f6d 6572 6765  ch('slab_nomerge
│ │ │ -000fa540: 3d79 6573 2729 2920 6f72 2028 2865 7463  =yes')) or ((etc
│ │ │ -000fa550: 5f64 6566 6175 6c74 5f67 7275 625b 2763  _default_grub['c
│ │ │ -000fa560: 6f6e 7465 6e74 275d 0a20 2020 207c 2062  ontent'].    | b
│ │ │ -000fa570: 3634 6465 636f 6465 2920 6973 206e 6f74  64decode) is not
│ │ │ -000fa580: 2073 6561 7263 6828 2773 6c61 625f 6e6f   search('slab_no
│ │ │ -000fa590: 6d65 7267 653d 7965 7327 2929 0a20 2074  merge=yes')).  t
│ │ │ -000fa5a0: 6167 733a 0a20 202d 2067 7275 6232 5f73  ags:.  - grub2_s
│ │ │ -000fa5b0: 6c61 625f 6e6f 6d65 7267 655f 6172 6775  lab_nomerge_argu
│ │ │ -000fa5c0: 6d65 6e74 0a20 202d 206c 6f77 5f64 6973  ment.  - low_dis
│ │ │ -000fa5d0: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ -000fa5e0: 756d 5f63 6f6d 706c 6578 6974 790a 2020  um_complexity.  
│ │ │ -000fa5f0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -000fa600: 790a 2020 2d20 7265 626f 6f74 5f72 6571  y.  - reboot_req
│ │ │ -000fa610: 7569 7265 640a 2020 2d20 7265 7374 7269  uired.  - restri
│ │ │ -000fa620: 6374 5f73 7472 6174 6567 790a 3c2f 636f  ct_strategy.Remediation A
│ │ │ +000f9d70: 6e73 6962 6c65 2073 6e69 7070 6574 20e2  nsible snippet .
│ │ │ +000f9d80: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063  ..
│ │ │ +000f9e00: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +000f9e40: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472
Complexity:< │ │ │ +000f9e10: 2f74 683e 3c74 643e 6d65 6469 756d 3c2f /th>medium
│ │ │ +000f9e30: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ +000f9e60: 3c2f 7468 3e3c 7464 3e74 7275 653c 2f74 true
S │ │ │ +000f9e80: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:restrict
│ │ │ +000f9eb0: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ +000f9ec0: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ +000f9ed0: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ +000f9ee0: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ +000f9ef0: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ +000f9f00: 3a0a 2020 2d20 6772 7562 325f 736c 6162  :.  - grub2_slab
│ │ │ +000f9f10: 5f6e 6f6d 6572 6765 5f61 7267 756d 656e  _nomerge_argumen
│ │ │ +000f9f20: 740a 2020 2d20 6c6f 775f 6469 7372 7570  t.  - low_disrup
│ │ │ +000f9f30: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ +000f9f40: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +000f9f50: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +000f9f60: 202d 2072 6562 6f6f 745f 7265 7175 6972   - reboot_requir
│ │ │ +000f9f70: 6564 0a20 202d 2072 6573 7472 6963 745f  ed.  - restrict_
│ │ │ +000f9f80: 7374 7261 7465 6779 0a0a 2d20 6e61 6d65  strategy..- name
│ │ │ +000f9f90: 3a20 4368 6563 6b20 6966 2073 6c61 625f  : Check if slab_
│ │ │ +000f9fa0: 6e6f 6d65 7267 6520 6172 6775 6d65 6e74  nomerge argument
│ │ │ +000f9fb0: 2069 7320 616c 7265 6164 7920 7072 6573   is already pres
│ │ │ +000f9fc0: 656e 7420 696e 202f 6574 632f 6465 6661  ent in /etc/defa
│ │ │ +000f9fd0: 756c 742f 6772 7562 0a20 2061 6e73 6962  ult/grub.  ansib
│ │ │ +000f9fe0: 6c65 2e62 7569 6c74 696e 2e73 6c75 7270  le.builtin.slurp
│ │ │ +000f9ff0: 3a0a 2020 2020 7372 633a 202f 6574 632f  :.    src: /etc/
│ │ │ +000fa000: 6465 6661 756c 742f 6772 7562 0a20 2072  default/grub.  r
│ │ │ +000fa010: 6567 6973 7465 723a 2065 7463 5f64 6566  egister: etc_def
│ │ │ +000fa020: 6175 6c74 5f67 7275 620a 2020 7768 656e  ault_grub.  when
│ │ │ +000fa030: 3a20 2820 2267 7275 6232 2d63 6f6d 6d6f  : ( "grub2-commo
│ │ │ +000fa040: 6e22 2069 6e20 616e 7369 626c 655f 6661  n" in ansible_fa
│ │ │ +000fa050: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +000fa060: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +000fa070: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +000fa080: 6765 730a 2020 2020 290a 2020 7461 6773  ges.    ).  tags
│ │ │ +000fa090: 3a0a 2020 2d20 6772 7562 325f 736c 6162  :.  - grub2_slab
│ │ │ +000fa0a0: 5f6e 6f6d 6572 6765 5f61 7267 756d 656e  _nomerge_argumen
│ │ │ +000fa0b0: 740a 2020 2d20 6c6f 775f 6469 7372 7570  t.  - low_disrup
│ │ │ +000fa0c0: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ +000fa0d0: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +000fa0e0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +000fa0f0: 202d 2072 6562 6f6f 745f 7265 7175 6972   - reboot_requir
│ │ │ +000fa100: 6564 0a20 202d 2072 6573 7472 6963 745f  ed.  - restrict_
│ │ │ +000fa110: 7374 7261 7465 6779 0a0a 2d20 6e61 6d65  strategy..- name
│ │ │ +000fa120: 3a20 4368 6563 6b20 6966 2073 6c61 625f  : Check if slab_
│ │ │ +000fa130: 6e6f 6d65 7267 6520 6172 6775 6d65 6e74  nomerge argument
│ │ │ +000fa140: 2069 7320 616c 7265 6164 7920 7072 6573   is already pres
│ │ │ +000fa150: 656e 740a 2020 616e 7369 626c 652e 6275  ent.  ansible.bu
│ │ │ +000fa160: 696c 7469 6e2e 636f 6d6d 616e 643a 202f  iltin.command: /
│ │ │ +000fa170: 7362 696e 2f67 7275 6262 7920 2d2d 696e  sbin/grubby --in
│ │ │ +000fa180: 666f 3d41 4c4c 0a20 2072 6567 6973 7465  fo=ALL.  registe
│ │ │ +000fa190: 723a 2067 7275 6262 795f 696e 666f 0a20  r: grubby_info. 
│ │ │ +000fa1a0: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ +000fa1b0: 7365 0a20 2063 6861 6e67 6564 5f77 6865  se.  changed_whe
│ │ │ +000fa1c0: 6e3a 2066 616c 7365 0a20 2066 6169 6c65  n: false.  faile
│ │ │ +000fa1d0: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ +000fa1e0: 7768 656e 3a20 2820 2267 7275 6232 2d63  when: ( "grub2-c
│ │ │ +000fa1f0: 6f6d 6d6f 6e22 2069 6e20 616e 7369 626c  ommon" in ansibl
│ │ │ +000fa200: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +000fa210: 2061 6e64 2022 6b65 726e 656c 2220 696e   and "kernel" in
│ │ │ +000fa220: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +000fa230: 6163 6b61 6765 730a 2020 2020 290a 2020  ackages.    ).  
│ │ │ +000fa240: 7461 6773 3a0a 2020 2d20 6772 7562 325f  tags:.  - grub2_
│ │ │ +000fa250: 736c 6162 5f6e 6f6d 6572 6765 5f61 7267  slab_nomerge_arg
│ │ │ +000fa260: 756d 656e 740a 2020 2d20 6c6f 775f 6469  ument.  - low_di
│ │ │ +000fa270: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ +000fa280: 6975 6d5f 636f 6d70 6c65 7869 7479 0a20  ium_complexity. 
│ │ │ +000fa290: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +000fa2a0: 7479 0a20 202d 2072 6562 6f6f 745f 7265  ty.  - reboot_re
│ │ │ +000fa2b0: 7175 6972 6564 0a20 202d 2072 6573 7472  quired.  - restr
│ │ │ +000fa2c0: 6963 745f 7374 7261 7465 6779 0a0a 2d20  ict_strategy..- 
│ │ │ +000fa2d0: 6e61 6d65 3a20 5570 6461 7465 2067 7275  name: Update gru
│ │ │ +000fa2e0: 6220 6465 6661 756c 7473 2061 6e64 2074  b defaults and t
│ │ │ +000fa2f0: 6865 2062 6f6f 746c 6f61 6465 7220 6d65  he bootloader me
│ │ │ +000fa300: 6e75 0a20 2061 6e73 6962 6c65 2e62 7569  nu.  ansible.bui
│ │ │ +000fa310: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 2f73  ltin.command: /s
│ │ │ +000fa320: 6269 6e2f 6772 7562 6279 202d 2d75 7064  bin/grubby --upd
│ │ │ +000fa330: 6174 652d 6b65 726e 656c 3d41 4c4c 202d  ate-kernel=ALL -
│ │ │ +000fa340: 2d61 7267 733d 2273 6c61 625f 6e6f 6d65  -args="slab_nome
│ │ │ +000fa350: 7267 653d 7965 7322 0a20 2077 6865 6e3a  rge=yes".  when:
│ │ │ +000fa360: 0a20 202d 2028 2022 6772 7562 322d 636f  .  - ( "grub2-co
│ │ │ +000fa370: 6d6d 6f6e 2220 696e 2061 6e73 6962 6c65  mmon" in ansible
│ │ │ +000fa380: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +000fa390: 616e 6420 226b 6572 6e65 6c22 2069 6e20  and "kernel" in 
│ │ │ +000fa3a0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +000fa3b0: 636b 6167 6573 0a20 2020 2029 0a20 202d  ckages.    ).  -
│ │ │ +000fa3c0: 2028 6772 7562 6279 5f69 6e66 6f2e 7374   (grubby_info.st
│ │ │ +000fa3d0: 646f 7574 2069 7320 6e6f 7420 7365 6172  dout is not sear
│ │ │ +000fa3e0: 6368 2827 736c 6162 5f6e 6f6d 6572 6765  ch('slab_nomerge
│ │ │ +000fa3f0: 3d79 6573 2729 2920 6f72 2028 2865 7463  =yes')) or ((etc
│ │ │ +000fa400: 5f64 6566 6175 6c74 5f67 7275 625b 2763  _default_grub['c
│ │ │ +000fa410: 6f6e 7465 6e74 275d 0a20 2020 207c 2062  ontent'].    | b
│ │ │ +000fa420: 3634 6465 636f 6465 2920 6973 206e 6f74  64decode) is not
│ │ │ +000fa430: 2073 6561 7263 6828 2773 6c61 625f 6e6f   search('slab_no
│ │ │ +000fa440: 6d65 7267 653d 7965 7327 2929 0a20 2074  merge=yes')).  t
│ │ │ +000fa450: 6167 733a 0a20 202d 2067 7275 6232 5f73  ags:.  - grub2_s
│ │ │ +000fa460: 6c61 625f 6e6f 6d65 7267 655f 6172 6775  lab_nomerge_argu
│ │ │ +000fa470: 6d65 6e74 0a20 202d 206c 6f77 5f64 6973  ment.  - low_dis
│ │ │ +000fa480: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ +000fa490: 756d 5f63 6f6d 706c 6578 6974 790a 2020  um_complexity.  
│ │ │ +000fa4a0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +000fa4b0: 790a 2020 2d20 7265 626f 6f74 5f72 6571  y.  - reboot_req
│ │ │ +000fa4c0: 7569 7265 640a 2020 2d20 7265 7374 7269  uired.  - restri
│ │ │ +000fa4d0: 6374 5f73 7472 6174 6567 790a 3c2f 636f  ct_strategy.
< │ │ │ +000fa4f0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +000fa500: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +000fa510: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +000fa520: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +000fa530: 6432 3531 2220 7461 6269 6e64 6578 3d22 d251" tabindex=" │ │ │ +000fa540: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +000fa550: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +000fa560: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +000fa570: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +000fa580: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +000fa590: 6469 6174 696f 6e20 4f53 4275 696c 6420 diation OSBuild │ │ │ +000fa5a0: 426c 7565 7072 696e 7420 736e 6970 7065 Blueprint snippe │ │ │ +000fa5b0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
[customi │ │ │ +000fa600: 7a61 7469 6f6e 732e 6b65 726e 656c 5d0a zations.kernel]. │ │ │ +000fa610: 6170 7065 6e64 203d 2022 736c 6162 5f6e append = "slab_n │ │ │ +000fa620: 6f6d 6572 6765 3d79 6573 220a 3c2f 636f omerge=yes".
< │ │ │ 000fa640: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ 000fa650: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ 000fa660: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ 000fa670: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ 000fa680: 6432 3532 2220 7461 6269 6e64 6578 3d22 d252" tabindex=" │ │ │ 000fa690: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ @@ -64392,196 +64392,196 @@ │ │ │ 000fb870: 7461 2d74 6172 6765 743d 2223 6964 3235 ta-target="#id25 │ │ │ 000fb880: 3422 2074 6162 696e 6465 783d 2230 2220 4" tabindex="0" │ │ │ 000fb890: 726f 6c65 3d22 6275 7474 6f6e 2220 6172 role="button" ar │ │ │ 000fb8a0: 6961 2d65 7870 616e 6465 643d 2266 616c ia-expanded="fal │ │ │ 000fb8b0: 7365 2220 7469 746c 653d 2241 6374 6976 se" title="Activ │ │ │ 000fb8c0: 6174 6520 746f 2072 6576 6561 6c22 2068 ate to reveal" h │ │ │ 000fb8d0: 7265 663d 2223 2122 3e52 656d 6564 6961 ref="#!">Remedia │ │ │ -000fb8e0: 7469 6f6e 204f 5342 7569 6c64 2042 6c75 tion OSBuild Blu │ │ │ -000fb8f0: 6570 7269 6e74 2073 6e69 7070 6574 20e2 eprint snippet . │ │ │ -000fb900: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
<
│ │ │ -000fb940: 636f 6465 3e5b 6375 7374 6f6d 697a 6174  code>[customizat
│ │ │ -000fb950: 696f 6e73 2e6b 6572 6e65 6c5d 0a61 7070  ions.kernel].app
│ │ │ -000fb960: 656e 6420 3d20 2273 7065 635f 7374 6f72  end = "spec_stor
│ │ │ -000fb970: 655f 6279 7061 7373 5f64 6973 6162 6c65  e_bypass_disable
│ │ │ -000fb980: 3d3c 6162 6272 2074 6974 6c65 3d22 6672  =seccomp".
│ │ │ -000fba10: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation A │ │ │ -000fbac0: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ -000fbad0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -000fbb50: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -000fbb90: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472
Complexity:< │ │ │ -000fbb60: 2f74 683e 3c74 643e 6d65 6469 756d 3c2f /th>medium
│ │ │ -000fbb80: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ -000fbbb0: 3c2f 7468 3e3c 7464 3e74 7275 653c 2f74 true
S │ │ │ -000fbbd0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:restrict
│ │ │ -000fbc00: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -000fbc10: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -000fbc20: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -000fbc30: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -000fbc40: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -000fbc50: 3a0a 2020 2d20 6772 7562 325f 7370 6563  :.  - grub2_spec
│ │ │ -000fbc60: 5f73 746f 7265 5f62 7970 6173 735f 6469  _store_bypass_di
│ │ │ -000fbc70: 7361 626c 655f 6172 6775 6d65 6e74 0a20  sable_argument. 
│ │ │ -000fbc80: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -000fbc90: 6e0a 2020 2d20 6d65 6469 756d 5f63 6f6d  n.  - medium_com
│ │ │ -000fbca0: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -000fbcb0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -000fbcc0: 7265 626f 6f74 5f72 6571 7569 7265 640a  reboot_required.
│ │ │ -000fbcd0: 2020 2d20 7265 7374 7269 6374 5f73 7472    - restrict_str
│ │ │ -000fbce0: 6174 6567 790a 2d20 6e61 6d65 3a20 5843  ategy.- name: XC
│ │ │ -000fbcf0: 4344 4620 5661 6c75 6520 7661 725f 7370  CDF Value var_sp
│ │ │ -000fbd00: 6563 5f73 746f 7265 5f62 7970 6173 735f  ec_store_bypass_
│ │ │ -000fbd10: 6469 7361 626c 655f 6f70 7469 6f6e 7320  disable_options 
│ │ │ -000fbd20: 2320 7072 6f6d 6f74 6520 746f 2076 6172  # promote to var
│ │ │ -000fbd30: 6961 626c 650a 2020 7365 745f 6661 6374  iable.  set_fact
│ │ │ -000fbd40: 3a0a 2020 2020 7661 725f 7370 6563 5f73  :.    var_spec_s
│ │ │ -000fbd50: 746f 7265 5f62 7970 6173 735f 6469 7361  tore_bypass_disa
│ │ │ -000fbd60: 626c 655f 6f70 7469 6f6e 733a 2021 2173  ble_options: !!s
│ │ │ -000fbd70: 7472 203c 6162 6272 2074 6974 6c65 3d22  tr seccomp.  tags:.    
│ │ │ -000fbe00: 2d20 616c 7761 7973 0a0a 2d20 6e61 6d65  - always..- name
│ │ │ -000fbe10: 3a20 4368 6563 6b20 6966 2073 7065 635f  : Check if spec_
│ │ │ -000fbe20: 7374 6f72 655f 6279 7061 7373 5f64 6973  store_bypass_dis
│ │ │ -000fbe30: 6162 6c65 2061 7267 756d 656e 7420 6973  able argument is
│ │ │ -000fbe40: 2061 6c72 6561 6479 2070 7265 7365 6e74   already present
│ │ │ -000fbe50: 2069 6e20 2f65 7463 2f64 6566 6175 6c74   in /etc/default
│ │ │ -000fbe60: 2f67 7275 620a 2020 616e 7369 626c 652e  /grub.  ansible.
│ │ │ -000fbe70: 6275 696c 7469 6e2e 736c 7572 703a 0a20  builtin.slurp:. 
│ │ │ -000fbe80: 2020 2073 7263 3a20 2f65 7463 2f64 6566     src: /etc/def
│ │ │ -000fbe90: 6175 6c74 2f67 7275 620a 2020 7265 6769  ault/grub.  regi
│ │ │ -000fbea0: 7374 6572 3a20 6574 635f 6465 6661 756c  ster: etc_defaul
│ │ │ -000fbeb0: 745f 6772 7562 0a20 2077 6865 6e3a 2028  t_grub.  when: (
│ │ │ -000fbec0: 2022 6772 7562 322d 636f 6d6d 6f6e 2220   "grub2-common" 
│ │ │ -000fbed0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -000fbee0: 2e70 6163 6b61 6765 7320 616e 6420 226b  .packages and "k
│ │ │ -000fbef0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -000fbf00: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -000fbf10: 0a20 2020 2029 0a20 2074 6167 733a 0a20  .    ).  tags:. 
│ │ │ -000fbf20: 202d 2067 7275 6232 5f73 7065 635f 7374   - grub2_spec_st
│ │ │ -000fbf30: 6f72 655f 6279 7061 7373 5f64 6973 6162  ore_bypass_disab
│ │ │ -000fbf40: 6c65 5f61 7267 756d 656e 740a 2020 2d20  le_argument.  - 
│ │ │ -000fbf50: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -000fbf60: 202d 206d 6564 6975 6d5f 636f 6d70 6c65   - medium_comple
│ │ │ -000fbf70: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ -000fbf80: 7365 7665 7269 7479 0a20 202d 2072 6562  severity.  - reb
│ │ │ -000fbf90: 6f6f 745f 7265 7175 6972 6564 0a20 202d  oot_required.  -
│ │ │ -000fbfa0: 2072 6573 7472 6963 745f 7374 7261 7465   restrict_strate
│ │ │ -000fbfb0: 6779 0a0a 2d20 6e61 6d65 3a20 4368 6563  gy..- name: Chec
│ │ │ -000fbfc0: 6b20 6966 2073 7065 635f 7374 6f72 655f  k if spec_store_
│ │ │ -000fbfd0: 6279 7061 7373 5f64 6973 6162 6c65 2061  bypass_disable a
│ │ │ -000fbfe0: 7267 756d 656e 7420 6973 2061 6c72 6561  rgument is alrea
│ │ │ -000fbff0: 6479 2070 7265 7365 6e74 0a20 2061 6e73  dy present.  ans
│ │ │ -000fc000: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d  ible.builtin.com
│ │ │ -000fc010: 6d61 6e64 3a20 2f73 6269 6e2f 6772 7562  mand: /sbin/grub
│ │ │ -000fc020: 6279 202d 2d69 6e66 6f3d 414c 4c0a 2020  by --info=ALL.  
│ │ │ -000fc030: 7265 6769 7374 6572 3a20 6772 7562 6279  register: grubby
│ │ │ -000fc040: 5f69 6e66 6f0a 2020 6368 6563 6b5f 6d6f  _info.  check_mo
│ │ │ -000fc050: 6465 3a20 6661 6c73 650a 2020 6368 616e  de: false.  chan
│ │ │ -000fc060: 6765 645f 7768 656e 3a20 6661 6c73 650a  ged_when: false.
│ │ │ -000fc070: 2020 6661 696c 6564 5f77 6865 6e3a 2066    failed_when: f
│ │ │ -000fc080: 616c 7365 0a20 2077 6865 6e3a 2028 2022  alse.  when: ( "
│ │ │ -000fc090: 6772 7562 322d 636f 6d6d 6f6e 2220 696e  grub2-common" in
│ │ │ -000fc0a0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -000fc0b0: 6163 6b61 6765 7320 616e 6420 226b 6572  ackages and "ker
│ │ │ -000fc0c0: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -000fc0d0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -000fc0e0: 2020 2029 0a20 2074 6167 733a 0a20 202d     ).  tags:.  -
│ │ │ -000fc0f0: 2067 7275 6232 5f73 7065 635f 7374 6f72   grub2_spec_stor
│ │ │ +000fb8e0: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69  tion Ansible sni
│ │ │ +000fb8f0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e  ppet ...
│ │ │ +000fb900: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +000fb930: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Comple │ │ │ +000fb980: 7869 7479 3a3c 2f74 683e 3c74 643e 6d65 xity:me │ │ │ +000fb990: 6469 756d 3c2f 7464 3e3c 2f74 723e 3c74 dium
Disruption │ │ │ +000fb9b0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +000fb9d0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e74 eboot:t │ │ │ +000fb9e0: 7275 653c 2f74 643e 3c2f 7472 3e3c 7472 rue
Strategy:restrict< │ │ │ +000fba10: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ +000fba30: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ +000fba40: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ +000fba50: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ +000fba60: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ +000fba70: 2020 7461 6773 3a0a 2020 2d20 6772 7562    tags:.  - grub
│ │ │ +000fba80: 325f 7370 6563 5f73 746f 7265 5f62 7970  2_spec_store_byp
│ │ │ +000fba90: 6173 735f 6469 7361 626c 655f 6172 6775  ass_disable_argu
│ │ │ +000fbaa0: 6d65 6e74 0a20 202d 206c 6f77 5f64 6973  ment.  - low_dis
│ │ │ +000fbab0: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ +000fbac0: 756d 5f63 6f6d 706c 6578 6974 790a 2020  um_complexity.  
│ │ │ +000fbad0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +000fbae0: 790a 2020 2d20 7265 626f 6f74 5f72 6571  y.  - reboot_req
│ │ │ +000fbaf0: 7569 7265 640a 2020 2d20 7265 7374 7269  uired.  - restri
│ │ │ +000fbb00: 6374 5f73 7472 6174 6567 790a 2d20 6e61  ct_strategy.- na
│ │ │ +000fbb10: 6d65 3a20 5843 4344 4620 5661 6c75 6520  me: XCCDF Value 
│ │ │ +000fbb20: 7661 725f 7370 6563 5f73 746f 7265 5f62  var_spec_store_b
│ │ │ +000fbb30: 7970 6173 735f 6469 7361 626c 655f 6f70  ypass_disable_op
│ │ │ +000fbb40: 7469 6f6e 7320 2320 7072 6f6d 6f74 6520  tions # promote 
│ │ │ +000fbb50: 746f 2076 6172 6961 626c 650a 2020 7365  to variable.  se
│ │ │ +000fbb60: 745f 6661 6374 3a0a 2020 2020 7661 725f  t_fact:.    var_
│ │ │ +000fbb70: 7370 6563 5f73 746f 7265 5f62 7970 6173  spec_store_bypas
│ │ │ +000fbb80: 735f 6469 7361 626c 655f 6f70 7469 6f6e  s_disable_option
│ │ │ +000fbb90: 733a 2021 2173 7472 203c 6162 6272 2074  s: !!str secco
│ │ │ +000fbc10: 6d70 3c2f 6162 6272 3e0a 2020 7461 6773  mp.  tags
│ │ │ +000fbc20: 3a0a 2020 2020 2d20 616c 7761 7973 0a0a  :.    - always..
│ │ │ +000fbc30: 2d20 6e61 6d65 3a20 4368 6563 6b20 6966  - name: Check if
│ │ │ +000fbc40: 2073 7065 635f 7374 6f72 655f 6279 7061   spec_store_bypa
│ │ │ +000fbc50: 7373 5f64 6973 6162 6c65 2061 7267 756d  ss_disable argum
│ │ │ +000fbc60: 656e 7420 6973 2061 6c72 6561 6479 2070  ent is already p
│ │ │ +000fbc70: 7265 7365 6e74 2069 6e20 2f65 7463 2f64  resent in /etc/d
│ │ │ +000fbc80: 6566 6175 6c74 2f67 7275 620a 2020 616e  efault/grub.  an
│ │ │ +000fbc90: 7369 626c 652e 6275 696c 7469 6e2e 736c  sible.builtin.sl
│ │ │ +000fbca0: 7572 703a 0a20 2020 2073 7263 3a20 2f65  urp:.    src: /e
│ │ │ +000fbcb0: 7463 2f64 6566 6175 6c74 2f67 7275 620a  tc/default/grub.
│ │ │ +000fbcc0: 2020 7265 6769 7374 6572 3a20 6574 635f    register: etc_
│ │ │ +000fbcd0: 6465 6661 756c 745f 6772 7562 0a20 2077  default_grub.  w
│ │ │ +000fbce0: 6865 6e3a 2028 2022 6772 7562 322d 636f  hen: ( "grub2-co
│ │ │ +000fbcf0: 6d6d 6f6e 2220 696e 2061 6e73 6962 6c65  mmon" in ansible
│ │ │ +000fbd00: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +000fbd10: 616e 6420 226b 6572 6e65 6c22 2069 6e20  and "kernel" in 
│ │ │ +000fbd20: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +000fbd30: 636b 6167 6573 0a20 2020 2029 0a20 2074  ckages.    ).  t
│ │ │ +000fbd40: 6167 733a 0a20 202d 2067 7275 6232 5f73  ags:.  - grub2_s
│ │ │ +000fbd50: 7065 635f 7374 6f72 655f 6279 7061 7373  pec_store_bypass
│ │ │ +000fbd60: 5f64 6973 6162 6c65 5f61 7267 756d 656e  _disable_argumen
│ │ │ +000fbd70: 740a 2020 2d20 6c6f 775f 6469 7372 7570  t.  - low_disrup
│ │ │ +000fbd80: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ +000fbd90: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +000fbda0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +000fbdb0: 202d 2072 6562 6f6f 745f 7265 7175 6972   - reboot_requir
│ │ │ +000fbdc0: 6564 0a20 202d 2072 6573 7472 6963 745f  ed.  - restrict_
│ │ │ +000fbdd0: 7374 7261 7465 6779 0a0a 2d20 6e61 6d65  strategy..- name
│ │ │ +000fbde0: 3a20 4368 6563 6b20 6966 2073 7065 635f  : Check if spec_
│ │ │ +000fbdf0: 7374 6f72 655f 6279 7061 7373 5f64 6973  store_bypass_dis
│ │ │ +000fbe00: 6162 6c65 2061 7267 756d 656e 7420 6973  able argument is
│ │ │ +000fbe10: 2061 6c72 6561 6479 2070 7265 7365 6e74   already present
│ │ │ +000fbe20: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ +000fbe30: 696e 2e63 6f6d 6d61 6e64 3a20 2f73 6269  in.command: /sbi
│ │ │ +000fbe40: 6e2f 6772 7562 6279 202d 2d69 6e66 6f3d  n/grubby --info=
│ │ │ +000fbe50: 414c 4c0a 2020 7265 6769 7374 6572 3a20  ALL.  register: 
│ │ │ +000fbe60: 6772 7562 6279 5f69 6e66 6f0a 2020 6368  grubby_info.  ch
│ │ │ +000fbe70: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a  eck_mode: false.
│ │ │ +000fbe80: 2020 6368 616e 6765 645f 7768 656e 3a20    changed_when: 
│ │ │ +000fbe90: 6661 6c73 650a 2020 6661 696c 6564 5f77  false.  failed_w
│ │ │ +000fbea0: 6865 6e3a 2066 616c 7365 0a20 2077 6865  hen: false.  whe
│ │ │ +000fbeb0: 6e3a 2028 2022 6772 7562 322d 636f 6d6d  n: ( "grub2-comm
│ │ │ +000fbec0: 6f6e 2220 696e 2061 6e73 6962 6c65 5f66  on" in ansible_f
│ │ │ +000fbed0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +000fbee0: 6420 226b 6572 6e65 6c22 2069 6e20 616e  d "kernel" in an
│ │ │ +000fbef0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +000fbf00: 6167 6573 0a20 2020 2029 0a20 2074 6167  ages.    ).  tag
│ │ │ +000fbf10: 733a 0a20 202d 2067 7275 6232 5f73 7065  s:.  - grub2_spe
│ │ │ +000fbf20: 635f 7374 6f72 655f 6279 7061 7373 5f64  c_store_bypass_d
│ │ │ +000fbf30: 6973 6162 6c65 5f61 7267 756d 656e 740a  isable_argument.
│ │ │ +000fbf40: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +000fbf50: 6f6e 0a20 202d 206d 6564 6975 6d5f 636f  on.  - medium_co
│ │ │ +000fbf60: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +000fbf70: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +000fbf80: 2072 6562 6f6f 745f 7265 7175 6972 6564   reboot_required
│ │ │ +000fbf90: 0a20 202d 2072 6573 7472 6963 745f 7374  .  - restrict_st
│ │ │ +000fbfa0: 7261 7465 6779 0a0a 2d20 6e61 6d65 3a20  rategy..- name: 
│ │ │ +000fbfb0: 5570 6461 7465 2067 7275 6220 6465 6661  Update grub defa
│ │ │ +000fbfc0: 756c 7473 2061 6e64 2074 6865 2062 6f6f  ults and the boo
│ │ │ +000fbfd0: 746c 6f61 6465 7220 6d65 6e75 0a20 2061  tloader menu.  a
│ │ │ +000fbfe0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ +000fbff0: 6f6d 6d61 6e64 3a20 2f73 6269 6e2f 6772  ommand: /sbin/gr
│ │ │ +000fc000: 7562 6279 202d 2d75 7064 6174 652d 6b65  ubby --update-ke
│ │ │ +000fc010: 726e 656c 3d41 4c4c 202d 2d61 7267 733d  rnel=ALL --args=
│ │ │ +000fc020: 2273 7065 635f 7374 6f72 655f 6279 7061  "spec_store_bypa
│ │ │ +000fc030: 7373 5f64 6973 6162 6c65 3d7b 7b0a 2020  ss_disable={{.  
│ │ │ +000fc040: 2020 7661 725f 7370 6563 5f73 746f 7265    var_spec_store
│ │ │ +000fc050: 5f62 7970 6173 735f 6469 7361 626c 655f  _bypass_disable_
│ │ │ +000fc060: 6f70 7469 6f6e 7320 7d7d 220a 2020 7768  options }}".  wh
│ │ │ +000fc070: 656e 3a0a 2020 2d20 2820 2267 7275 6232  en:.  - ( "grub2
│ │ │ +000fc080: 2d63 6f6d 6d6f 6e22 2069 6e20 616e 7369  -common" in ansi
│ │ │ +000fc090: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +000fc0a0: 6573 2061 6e64 2022 6b65 726e 656c 2220  es and "kernel" 
│ │ │ +000fc0b0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +000fc0c0: 2e70 6163 6b61 6765 730a 2020 2020 290a  .packages.    ).
│ │ │ +000fc0d0: 2020 2d20 2867 7275 6262 795f 696e 666f    - (grubby_info
│ │ │ +000fc0e0: 2e73 7464 6f75 7420 6973 206e 6f74 2073  .stdout is not s
│ │ │ +000fc0f0: 6561 7263 6828 2773 7065 635f 7374 6f72  earch('spec_stor
│ │ │  000fc100: 655f 6279 7061 7373 5f64 6973 6162 6c65  e_bypass_disable
│ │ │ -000fc110: 5f61 7267 756d 656e 740a 2020 2d20 6c6f  _argument.  - lo
│ │ │ -000fc120: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -000fc130: 206d 6564 6975 6d5f 636f 6d70 6c65 7869   medium_complexi
│ │ │ -000fc140: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ -000fc150: 7665 7269 7479 0a20 202d 2072 6562 6f6f  verity.  - reboo
│ │ │ -000fc160: 745f 7265 7175 6972 6564 0a20 202d 2072  t_required.  - r
│ │ │ -000fc170: 6573 7472 6963 745f 7374 7261 7465 6779  estrict_strategy
│ │ │ -000fc180: 0a0a 2d20 6e61 6d65 3a20 5570 6461 7465  ..- name: Update
│ │ │ -000fc190: 2067 7275 6220 6465 6661 756c 7473 2061   grub defaults a
│ │ │ -000fc1a0: 6e64 2074 6865 2062 6f6f 746c 6f61 6465  nd the bootloade
│ │ │ -000fc1b0: 7220 6d65 6e75 0a20 2061 6e73 6962 6c65  r menu.  ansible
│ │ │ -000fc1c0: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ -000fc1d0: 3a20 2f73 6269 6e2f 6772 7562 6279 202d  : /sbin/grubby -
│ │ │ -000fc1e0: 2d75 7064 6174 652d 6b65 726e 656c 3d41  -update-kernel=A
│ │ │ -000fc1f0: 4c4c 202d 2d61 7267 733d 2273 7065 635f  LL --args="spec_
│ │ │ -000fc200: 7374 6f72 655f 6279 7061 7373 5f64 6973  store_bypass_dis
│ │ │ -000fc210: 6162 6c65 3d7b 7b0a 2020 2020 7661 725f  able={{.    var_
│ │ │ -000fc220: 7370 6563 5f73 746f 7265 5f62 7970 6173  spec_store_bypas
│ │ │ -000fc230: 735f 6469 7361 626c 655f 6f70 7469 6f6e  s_disable_option
│ │ │ -000fc240: 7320 7d7d 220a 2020 7768 656e 3a0a 2020  s }}".  when:.  
│ │ │ -000fc250: 2d20 2820 2267 7275 6232 2d63 6f6d 6d6f  - ( "grub2-commo
│ │ │ -000fc260: 6e22 2069 6e20 616e 7369 626c 655f 6661  n" in ansible_fa
│ │ │ -000fc270: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -000fc280: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -000fc290: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -000fc2a0: 6765 730a 2020 2020 290a 2020 2d20 2867  ges.    ).  - (g
│ │ │ -000fc2b0: 7275 6262 795f 696e 666f 2e73 7464 6f75  rubby_info.stdou
│ │ │ -000fc2c0: 7420 6973 206e 6f74 2073 6561 7263 6828  t is not search(
│ │ │ -000fc2d0: 2773 7065 635f 7374 6f72 655f 6279 7061  'spec_store_bypa
│ │ │ -000fc2e0: 7373 5f64 6973 6162 6c65 3d27 207e 2076  ss_disable=' ~ v
│ │ │ -000fc2f0: 6172 5f73 7065 635f 7374 6f72 655f 6279  ar_spec_store_by
│ │ │ -000fc300: 7061 7373 5f64 6973 6162 6c65 5f6f 7074  pass_disable_opt
│ │ │ -000fc310: 696f 6e73 2929 0a20 2020 206f 7220 2828  ions)).    or ((
│ │ │ -000fc320: 6574 635f 6465 6661 756c 745f 6772 7562  etc_default_grub
│ │ │ -000fc330: 5b27 636f 6e74 656e 7427 5d20 7c20 6236  ['content'] | b6
│ │ │ -000fc340: 3464 6563 6f64 6529 2069 7320 6e6f 7420  4decode) is not 
│ │ │ -000fc350: 7365 6172 6368 2827 7370 6563 5f73 746f  search('spec_sto
│ │ │ -000fc360: 7265 5f62 7970 6173 735f 6469 7361 626c  re_bypass_disabl
│ │ │ -000fc370: 653d 270a 2020 2020 7e20 7661 725f 7370  e='.    ~ var_sp
│ │ │ -000fc380: 6563 5f73 746f 7265 5f62 7970 6173 735f  ec_store_bypass_
│ │ │ -000fc390: 6469 7361 626c 655f 6f70 7469 6f6e 7329  disable_options)
│ │ │ -000fc3a0: 290a 2020 7461 6773 3a0a 2020 2d20 6772  ).  tags:.  - gr
│ │ │ -000fc3b0: 7562 325f 7370 6563 5f73 746f 7265 5f62  ub2_spec_store_b
│ │ │ -000fc3c0: 7970 6173 735f 6469 7361 626c 655f 6172  ypass_disable_ar
│ │ │ -000fc3d0: 6775 6d65 6e74 0a20 202d 206c 6f77 5f64  gument.  - low_d
│ │ │ -000fc3e0: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -000fc3f0: 6469 756d 5f63 6f6d 706c 6578 6974 790a  dium_complexity.
│ │ │ -000fc400: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -000fc410: 6974 790a 2020 2d20 7265 626f 6f74 5f72  ity.  - reboot_r
│ │ │ -000fc420: 6571 7569 7265 640a 2020 2d20 7265 7374  equired.  - rest
│ │ │ -000fc430: 7269 6374 5f73 7472 6174 6567 790a 3c2f  rict_strategy.
Remediation │ │ │ +000fc320: 4f53 4275 696c 6420 426c 7565 7072 696e OSBuild Blueprin │ │ │ +000fc330: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...

│ │ │ +000fc380: 5b63 7573 746f 6d69 7a61 7469 6f6e 732e  [customizations.
│ │ │ +000fc390: 6b65 726e 656c 5d0a 6170 7065 6e64 203d  kernel].append =
│ │ │ +000fc3a0: 2022 7370 6563 5f73 746f 7265 5f62 7970   "spec_store_byp
│ │ │ +000fc3b0: 6173 735f 6469 7361 626c 653d 3c61 6262  ass_disable=se
│ │ │ +000fc430: 6363 6f6d 703c 2f61 6262 723e 220a 3c2f  ccomp".
Remedi │ │ │ -000fd430: 6174 696f 6e20 4f53 4275 696c 6420 426c ation OSBuild Bl │ │ │ -000fd440: 7565 7072 696e 7420 736e 6970 7065 7420 ueprint snippet │ │ │ -000fd450: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
│ │ │ -000fd490: 3c63 6f64 653e 5b63 7573 746f 6d69 7a61  [customiza
│ │ │ -000fd4a0: 7469 6f6e 732e 6b65 726e 656c 5d0a 6170  tions.kernel].ap
│ │ │ -000fd4b0: 7065 6e64 203d 2022 7370 6563 7472 655f  pend = "spectre_
│ │ │ -000fd4c0: 7632 3d6f 6e22 0a3c 2f63 6f64 653e 3c2f  v2=on".
Remediati │ │ │ -000fd580: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070 on Ansible snipp │ │ │ -000fd590: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -000fd610: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -000fd620: 7479 3a3c 2f74 683e 3c74 643e 6d65 6469 ty:medi │ │ │ -000fd630: 756d 3c2f 7464 3e3c 2f74 723e 3c74 723e um │ │ │ -000fd640: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c Disruption:< │ │ │ -000fd650: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low │ │ │ -000fd660: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 Reb │ │ │ -000fd670: 6f6f 743a 3c2f 7468 3e3c 7464 3e74 7275 oot:tru │ │ │ -000fd680: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e< │ │ │ -000fd690: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:restrict< │ │ │ -000fd6c0: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -000fd6d0: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -000fd6e0: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -000fd6f0: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -000fd700: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -000fd710: 7461 6773 3a0a 2020 2d20 6772 7562 325f tags:. - grub2_ │ │ │ -000fd720: 7370 6563 7472 655f 7632 5f61 7267 756d spectre_v2_argum │ │ │ -000fd730: 656e 740a 2020 2d20 6869 6768 5f73 6576 ent. - high_sev │ │ │ -000fd740: 6572 6974 790a 2020 2d20 6c6f 775f 6469 erity. - low_di │ │ │ -000fd750: 7372 7570 7469 6f6e 0a20 202d 206d 6564 sruption. - med │ │ │ -000fd760: 6975 6d5f 636f 6d70 6c65 7869 7479 0a20 ium_complexity. │ │ │ -000fd770: 202d 2072 6562 6f6f 745f 7265 7175 6972 - reboot_requir │ │ │ -000fd780: 6564 0a20 202d 2072 6573 7472 6963 745f ed. - restrict_ │ │ │ -000fd790: 7374 7261 7465 6779 0a0a 2d20 6e61 6d65 strategy..- name │ │ │ -000fd7a0: 3a20 4368 6563 6b20 6966 2073 7065 6374 : Check if spect │ │ │ -000fd7b0: 7265 5f76 3220 6172 6775 6d65 6e74 2069 re_v2 argument i │ │ │ -000fd7c0: 7320 616c 7265 6164 7920 7072 6573 656e s already presen │ │ │ -000fd7d0: 7420 696e 202f 6574 632f 6465 6661 756c t in /etc/defaul │ │ │ -000fd7e0: 742f 6772 7562 0a20 2061 6e73 6962 6c65 t/grub. ansible │ │ │ -000fd7f0: 2e62 7569 6c74 696e 2e73 6c75 7270 3a0a .builtin.slurp:. │ │ │ -000fd800: 2020 2020 7372 633a 202f 6574 632f 6465 src: /etc/de │ │ │ -000fd810: 6661 756c 742f 6772 7562 0a20 2072 6567 fault/grub. reg │ │ │ -000fd820: 6973 7465 723a 2065 7463 5f64 6566 6175 ister: etc_defau │ │ │ -000fd830: 6c74 5f67 7275 620a 2020 7768 656e 3a20 lt_grub. when: │ │ │ -000fd840: 2820 2267 7275 6232 2d63 6f6d 6d6f 6e22 ( "grub2-common" │ │ │ -000fd850: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -000fd860: 732e 7061 636b 6167 6573 2061 6e64 2022 s.packages and " │ │ │ -000fd870: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ -000fd880: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -000fd890: 730a 2020 2020 290a 2020 7461 6773 3a0a s. ). tags:. │ │ │ -000fd8a0: 2020 2d20 6772 7562 325f 7370 6563 7472 - grub2_spectr │ │ │ -000fd8b0: 655f 7632 5f61 7267 756d 656e 740a 2020 e_v2_argument. │ │ │ -000fd8c0: 2d20 6869 6768 5f73 6576 6572 6974 790a - high_severity. │ │ │ -000fd8d0: 2020 2d20 6c6f 775f 6469 7372 7570 7469 - low_disrupti │ │ │ -000fd8e0: 6f6e 0a20 202d 206d 6564 6975 6d5f 636f on. - medium_co │ │ │ -000fd8f0: 6d70 6c65 7869 7479 0a20 202d 2072 6562 mplexity. - reb │ │ │ -000fd900: 6f6f 745f 7265 7175 6972 6564 0a20 202d oot_required. - │ │ │ -000fd910: 2072 6573 7472 6963 745f 7374 7261 7465 restrict_strate │ │ │ -000fd920: 6779 0a0a 2d20 6e61 6d65 3a20 4368 6563 gy..- name: Chec │ │ │ -000fd930: 6b20 6966 2073 7065 6374 7265 5f76 3220 k if spectre_v2 │ │ │ -000fd940: 6172 6775 6d65 6e74 2069 7320 616c 7265 argument is alre │ │ │ -000fd950: 6164 7920 7072 6573 656e 740a 2020 616e ady present. an │ │ │ -000fd960: 7369 626c 652e 6275 696c 7469 6e2e 636f sible.builtin.co │ │ │ -000fd970: 6d6d 616e 643a 202f 7362 696e 2f67 7275 mmand: /sbin/gru │ │ │ -000fd980: 6262 7920 2d2d 696e 666f 3d41 4c4c 0a20 bby --info=ALL. │ │ │ -000fd990: 2072 6567 6973 7465 723a 2067 7275 6262 register: grubb │ │ │ -000fd9a0: 795f 696e 666f 0a20 2063 6865 636b 5f6d y_info. check_m │ │ │ -000fd9b0: 6f64 653a 2066 616c 7365 0a20 2063 6861 ode: false. cha │ │ │ -000fd9c0: 6e67 6564 5f77 6865 6e3a 2066 616c 7365 nged_when: false │ │ │ -000fd9d0: 0a20 2066 6169 6c65 645f 7768 656e 3a20 . failed_when: │ │ │ -000fd9e0: 6661 6c73 650a 2020 7768 656e 3a20 2820 false. when: ( │ │ │ -000fd9f0: 2267 7275 6232 2d63 6f6d 6d6f 6e22 2069 "grub2-common" i │ │ │ -000fda00: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -000fda10: 7061 636b 6167 6573 2061 6e64 2022 6b65 packages and "ke │ │ │ -000fda20: 726e 656c 2220 696e 2061 6e73 6962 6c65 rnel" in ansible │ │ │ -000fda30: 5f66 6163 7473 2e70 6163 6b61 6765 730a _facts.packages. │ │ │ -000fda40: 2020 2020 290a 2020 7461 6773 3a0a 2020 ). tags:. │ │ │ -000fda50: 2d20 6772 7562 325f 7370 6563 7472 655f - grub2_spectre_ │ │ │ -000fda60: 7632 5f61 7267 756d 656e 740a 2020 2d20 v2_argument. - │ │ │ -000fda70: 6869 6768 5f73 6576 6572 6974 790a 2020 high_severity. │ │ │ -000fda80: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e - low_disruption │ │ │ -000fda90: 0a20 202d 206d 6564 6975 6d5f 636f 6d70 . - medium_comp │ │ │ -000fdaa0: 6c65 7869 7479 0a20 202d 2072 6562 6f6f lexity. - reboo │ │ │ -000fdab0: 745f 7265 7175 6972 6564 0a20 202d 2072 t_required. - r │ │ │ -000fdac0: 6573 7472 6963 745f 7374 7261 7465 6779 estrict_strategy │ │ │ -000fdad0: 0a0a 2d20 6e61 6d65 3a20 5570 6461 7465 ..- name: Update │ │ │ -000fdae0: 2067 7275 6220 6465 6661 756c 7473 2061 grub defaults a │ │ │ -000fdaf0: 6e64 2074 6865 2062 6f6f 746c 6f61 6465 nd the bootloade │ │ │ -000fdb00: 7220 6d65 6e75 0a20 2061 6e73 6962 6c65 r menu. ansible │ │ │ -000fdb10: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64 .builtin.command │ │ │ -000fdb20: 3a20 2f73 6269 6e2f 6772 7562 6279 202d : /sbin/grubby - │ │ │ -000fdb30: 2d75 7064 6174 652d 6b65 726e 656c 3d41 -update-kernel=A │ │ │ -000fdb40: 4c4c 202d 2d61 7267 733d 2273 7065 6374 LL --args="spect │ │ │ -000fdb50: 7265 5f76 323d 6f6e 220a 2020 7768 656e re_v2=on". when │ │ │ -000fdb60: 3a0a 2020 2d20 2820 2267 7275 6232 2d63 :. - ( "grub2-c │ │ │ -000fdb70: 6f6d 6d6f 6e22 2069 6e20 616e 7369 626c ommon" in ansibl │ │ │ -000fdb80: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -000fdb90: 2061 6e64 2022 6b65 726e 656c 2220 696e and "kernel" in │ │ │ -000fdba0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -000fdbb0: 6163 6b61 6765 730a 2020 2020 290a 2020 ackages. ). │ │ │ -000fdbc0: 2d20 2867 7275 6262 795f 696e 666f 2e73 - (grubby_info.s │ │ │ -000fdbd0: 7464 6f75 7420 6973 206e 6f74 2073 6561 tdout is not sea │ │ │ -000fdbe0: 7263 6828 2773 7065 6374 7265 5f76 323d rch('spectre_v2= │ │ │ -000fdbf0: 6f6e 2729 2920 6f72 2028 2865 7463 5f64 on')) or ((etc_d │ │ │ -000fdc00: 6566 6175 6c74 5f67 7275 625b 2763 6f6e efault_grub['con │ │ │ -000fdc10: 7465 6e74 275d 0a20 2020 207c 2062 3634 tent']. | b64 │ │ │ -000fdc20: 6465 636f 6465 2920 6973 206e 6f74 2073 decode) is not s │ │ │ -000fdc30: 6561 7263 6828 2773 7065 6374 7265 5f76 earch('spectre_v │ │ │ -000fdc40: 323d 6f6e 2729 290a 2020 7461 6773 3a0a 2=on')). tags:. │ │ │ -000fdc50: 2020 2d20 6772 7562 325f 7370 6563 7472 - grub2_spectr │ │ │ -000fdc60: 655f 7632 5f61 7267 756d 656e 740a 2020 e_v2_argument. │ │ │ -000fdc70: 2d20 6869 6768 5f73 6576 6572 6974 790a - high_severity. │ │ │ -000fdc80: 2020 2d20 6c6f 775f 6469 7372 7570 7469 - low_disrupti │ │ │ -000fdc90: 6f6e 0a20 202d 206d 6564 6975 6d5f 636f on. - medium_co │ │ │ -000fdca0: 6d70 6c65 7869 7479 0a20 202d 2072 6562 mplexity. - reb │ │ │ -000fdcb0: 6f6f 745f 7265 7175 6972 6564 0a20 202d oot_required. - │ │ │ -000fdcc0: 2072 6573 7472 6963 745f 7374 7261 7465 restrict_strate │ │ │ -000fdcd0: 6779 0a3c 2f63 6f64 653e 3c2f 7072 653e gy.
│ │ │ +000fd430: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ +000fd440: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
< │ │ │ +000fd4f0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>
- n
│ │ │ +000fd580: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ +000fd590: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ +000fd5a0: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ +000fd5b0: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ +000fd5c0: 0a20 2074 6167 733a 0a20 202d 2067 7275  .  tags:.  - gru
│ │ │ +000fd5d0: 6232 5f73 7065 6374 7265 5f76 325f 6172  b2_spectre_v2_ar
│ │ │ +000fd5e0: 6775 6d65 6e74 0a20 202d 2068 6967 685f  gument.  - high_
│ │ │ +000fd5f0: 7365 7665 7269 7479 0a20 202d 206c 6f77  severity.  - low
│ │ │ +000fd600: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +000fd610: 6d65 6469 756d 5f63 6f6d 706c 6578 6974  medium_complexit
│ │ │ +000fd620: 790a 2020 2d20 7265 626f 6f74 5f72 6571  y.  - reboot_req
│ │ │ +000fd630: 7569 7265 640a 2020 2d20 7265 7374 7269  uired.  - restri
│ │ │ +000fd640: 6374 5f73 7472 6174 6567 790a 0a2d 206e  ct_strategy..- n
│ │ │ +000fd650: 616d 653a 2043 6865 636b 2069 6620 7370  ame: Check if sp
│ │ │ +000fd660: 6563 7472 655f 7632 2061 7267 756d 656e  ectre_v2 argumen
│ │ │ +000fd670: 7420 6973 2061 6c72 6561 6479 2070 7265  t is already pre
│ │ │ +000fd680: 7365 6e74 2069 6e20 2f65 7463 2f64 6566  sent in /etc/def
│ │ │ +000fd690: 6175 6c74 2f67 7275 620a 2020 616e 7369  ault/grub.  ansi
│ │ │ +000fd6a0: 626c 652e 6275 696c 7469 6e2e 736c 7572  ble.builtin.slur
│ │ │ +000fd6b0: 703a 0a20 2020 2073 7263 3a20 2f65 7463  p:.    src: /etc
│ │ │ +000fd6c0: 2f64 6566 6175 6c74 2f67 7275 620a 2020  /default/grub.  
│ │ │ +000fd6d0: 7265 6769 7374 6572 3a20 6574 635f 6465  register: etc_de
│ │ │ +000fd6e0: 6661 756c 745f 6772 7562 0a20 2077 6865  fault_grub.  whe
│ │ │ +000fd6f0: 6e3a 2028 2022 6772 7562 322d 636f 6d6d  n: ( "grub2-comm
│ │ │ +000fd700: 6f6e 2220 696e 2061 6e73 6962 6c65 5f66  on" in ansible_f
│ │ │ +000fd710: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +000fd720: 6420 226b 6572 6e65 6c22 2069 6e20 616e  d "kernel" in an
│ │ │ +000fd730: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +000fd740: 6167 6573 0a20 2020 2029 0a20 2074 6167  ages.    ).  tag
│ │ │ +000fd750: 733a 0a20 202d 2067 7275 6232 5f73 7065  s:.  - grub2_spe
│ │ │ +000fd760: 6374 7265 5f76 325f 6172 6775 6d65 6e74  ctre_v2_argument
│ │ │ +000fd770: 0a20 202d 2068 6967 685f 7365 7665 7269  .  - high_severi
│ │ │ +000fd780: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ +000fd790: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ +000fd7a0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +000fd7b0: 7265 626f 6f74 5f72 6571 7569 7265 640a  reboot_required.
│ │ │ +000fd7c0: 2020 2d20 7265 7374 7269 6374 5f73 7472    - restrict_str
│ │ │ +000fd7d0: 6174 6567 790a 0a2d 206e 616d 653a 2043  ategy..- name: C
│ │ │ +000fd7e0: 6865 636b 2069 6620 7370 6563 7472 655f  heck if spectre_
│ │ │ +000fd7f0: 7632 2061 7267 756d 656e 7420 6973 2061  v2 argument is a
│ │ │ +000fd800: 6c72 6561 6479 2070 7265 7365 6e74 0a20  lready present. 
│ │ │ +000fd810: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +000fd820: 2e63 6f6d 6d61 6e64 3a20 2f73 6269 6e2f  .command: /sbin/
│ │ │ +000fd830: 6772 7562 6279 202d 2d69 6e66 6f3d 414c  grubby --info=AL
│ │ │ +000fd840: 4c0a 2020 7265 6769 7374 6572 3a20 6772  L.  register: gr
│ │ │ +000fd850: 7562 6279 5f69 6e66 6f0a 2020 6368 6563  ubby_info.  chec
│ │ │ +000fd860: 6b5f 6d6f 6465 3a20 6661 6c73 650a 2020  k_mode: false.  
│ │ │ +000fd870: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ +000fd880: 6c73 650a 2020 6661 696c 6564 5f77 6865  lse.  failed_whe
│ │ │ +000fd890: 6e3a 2066 616c 7365 0a20 2077 6865 6e3a  n: false.  when:
│ │ │ +000fd8a0: 2028 2022 6772 7562 322d 636f 6d6d 6f6e   ( "grub2-common
│ │ │ +000fd8b0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +000fd8c0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +000fd8d0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +000fd8e0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +000fd8f0: 6573 0a20 2020 2029 0a20 2074 6167 733a  es.    ).  tags:
│ │ │ +000fd900: 0a20 202d 2067 7275 6232 5f73 7065 6374  .  - grub2_spect
│ │ │ +000fd910: 7265 5f76 325f 6172 6775 6d65 6e74 0a20  re_v2_argument. 
│ │ │ +000fd920: 202d 2068 6967 685f 7365 7665 7269 7479   - high_severity
│ │ │ +000fd930: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +000fd940: 696f 6e0a 2020 2d20 6d65 6469 756d 5f63  ion.  - medium_c
│ │ │ +000fd950: 6f6d 706c 6578 6974 790a 2020 2d20 7265  omplexity.  - re
│ │ │ +000fd960: 626f 6f74 5f72 6571 7569 7265 640a 2020  boot_required.  
│ │ │ +000fd970: 2d20 7265 7374 7269 6374 5f73 7472 6174  - restrict_strat
│ │ │ +000fd980: 6567 790a 0a2d 206e 616d 653a 2055 7064  egy..- name: Upd
│ │ │ +000fd990: 6174 6520 6772 7562 2064 6566 6175 6c74  ate grub default
│ │ │ +000fd9a0: 7320 616e 6420 7468 6520 626f 6f74 6c6f  s and the bootlo
│ │ │ +000fd9b0: 6164 6572 206d 656e 750a 2020 616e 7369  ader menu.  ansi
│ │ │ +000fd9c0: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ +000fd9d0: 616e 643a 202f 7362 696e 2f67 7275 6262  and: /sbin/grubb
│ │ │ +000fd9e0: 7920 2d2d 7570 6461 7465 2d6b 6572 6e65  y --update-kerne
│ │ │ +000fd9f0: 6c3d 414c 4c20 2d2d 6172 6773 3d22 7370  l=ALL --args="sp
│ │ │ +000fda00: 6563 7472 655f 7632 3d6f 6e22 0a20 2077  ectre_v2=on".  w
│ │ │ +000fda10: 6865 6e3a 0a20 202d 2028 2022 6772 7562  hen:.  - ( "grub
│ │ │ +000fda20: 322d 636f 6d6d 6f6e 2220 696e 2061 6e73  2-common" in ans
│ │ │ +000fda30: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +000fda40: 6765 7320 616e 6420 226b 6572 6e65 6c22  ges and "kernel"
│ │ │ +000fda50: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +000fda60: 732e 7061 636b 6167 6573 0a20 2020 2029  s.packages.    )
│ │ │ +000fda70: 0a20 202d 2028 6772 7562 6279 5f69 6e66  .  - (grubby_inf
│ │ │ +000fda80: 6f2e 7374 646f 7574 2069 7320 6e6f 7420  o.stdout is not 
│ │ │ +000fda90: 7365 6172 6368 2827 7370 6563 7472 655f  search('spectre_
│ │ │ +000fdaa0: 7632 3d6f 6e27 2929 206f 7220 2828 6574  v2=on')) or ((et
│ │ │ +000fdab0: 635f 6465 6661 756c 745f 6772 7562 5b27  c_default_grub['
│ │ │ +000fdac0: 636f 6e74 656e 7427 5d0a 2020 2020 7c20  content'].    | 
│ │ │ +000fdad0: 6236 3464 6563 6f64 6529 2069 7320 6e6f  b64decode) is no
│ │ │ +000fdae0: 7420 7365 6172 6368 2827 7370 6563 7472  t search('spectr
│ │ │ +000fdaf0: 655f 7632 3d6f 6e27 2929 0a20 2074 6167  e_v2=on')).  tag
│ │ │ +000fdb00: 733a 0a20 202d 2067 7275 6232 5f73 7065  s:.  - grub2_spe
│ │ │ +000fdb10: 6374 7265 5f76 325f 6172 6775 6d65 6e74  ctre_v2_argument
│ │ │ +000fdb20: 0a20 202d 2068 6967 685f 7365 7665 7269  .  - high_severi
│ │ │ +000fdb30: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ +000fdb40: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ +000fdb50: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +000fdb60: 7265 626f 6f74 5f72 6571 7569 7265 640a  reboot_required.
│ │ │ +000fdb70: 2020 2d20 7265 7374 7269 6374 5f73 7472    - restrict_str
│ │ │ +000fdb80: 6174 6567 790a 3c2f 636f 6465 3e3c 2f70  ategy.

Remediatio │ │ │ +000fdc40: 6e20 4f53 4275 696c 6420 426c 7565 7072 n OSBuild Bluepr │ │ │ +000fdc50: 696e 7420 736e 6970 7065 7420 e287 b23c int snippet ...< │ │ │ +000fdc60: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
[customization
│ │ │ +000fdcb0: 732e 6b65 726e 656c 5d0a 6170 7065 6e64  s.kernel].append
│ │ │ +000fdcc0: 203d 2022 7370 6563 7472 655f 7632 3d6f   = "spectre_v2=o
│ │ │ +000fdcd0: 6e22 0a3c 2f63 6f64 653e 3c2f 7072 653e  n".
│ │ │ 000fdce0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediati │ │ │ -0010c440: 6f6e 204f 5342 7569 6c64 2042 6c75 6570 on OSBuild Bluep │ │ │ -0010c450: 7269 6e74 2073 6e69 7070 6574 20e2 87b2 rint snippet ... │ │ │ -0010c460: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
.[[packages]]
│ │ │ -0010c4b0: 0a6e 616d 6520 3d20 226c 6f67 726f 7461  .name = "logrota
│ │ │ -0010c4c0: 7465 220a 7665 7273 696f 6e20 3d20 222a  te".version = "*
│ │ │ -0010c4d0: 220a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  ".
< │ │ │ -0010c4e0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -0010c590: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ -0010c5a0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
Compl │ │ │ +000fd4d0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6d exity:m │ │ │ +000fd4e0: 6564 6975 6d3c 2f74 643e 3c2f 7472 3e3c edium
Disruptio │ │ │ +000fd500: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +000fd520: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +000fd530: 7472 7565 3c2f 7464 3e3c 2f74 723e 3c74 true
Strategy:< │ │ │ +000fd550: 2f74 683e 3c74 643e 7265 7374 7269 6374 /th>restrict │ │ │ +000fd560: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ -0010c620: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -0010c640: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -0010c690: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ -0010c6c0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.package --add
│ │ │ -0010c6e0: 3d6c 6f67 726f 7461 7465 0a3c 2f63 6f64  =logrotate.
Remed │ │ │ -0010c7a0: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ -0010c7b0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
Complexity:< │ │ │ -0010c630: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -0010c650: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -0010c6a0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ -0010c6b0: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
│ │ │ -0010c860: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -0010c880: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -0010c8b0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -0010c840: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -0010c850: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -0010c870: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -0010c890: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -0010c8a0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

include │ │ │ -0010c8f0: 2069 6e73 7461 6c6c 5f6c 6f67 726f 7461 install_logrota │ │ │ -0010c900: 7465 0a0a 636c 6173 7320 696e 7374 616c te..class instal │ │ │ -0010c910: 6c5f 6c6f 6772 6f74 6174 6520 7b0a 2020 l_logrotate {. │ │ │ -0010c920: 7061 636b 6167 6520 7b20 276c 6f67 726f package { 'logro │ │ │ -0010c930: 7461 7465 273a 0a20 2020 2065 6e73 7572 tate':. ensur │ │ │ -0010c940: 6520 3d26 6774 3b20 2769 6e73 7461 6c6c e => 'install │ │ │ -0010c950: 6564 272c 0a20 207d 0a7d 0a3c 2f63 6f64 ed',. }.}.

Remed │ │ │ -0010ca10: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ -0010ca20: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -0010cab0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -0010cac0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -0010cae0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -0010cb00: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -0010cb10: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -0010cb50: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -0010cb60: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -0010cb70: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -0010cb80: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -0010cb90: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -0010cba0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ -0010cbb0: 3030 2d35 332d 434d 2d36 2861 290a 2020 00-53-CM-6(a). │ │ │ -0010cbc0: 2d20 5043 492d 4453 532d 5265 712d 3130 - PCI-DSS-Req-10 │ │ │ -0010cbd0: 2e37 0a20 202d 2050 4349 2d44 5353 7634 .7. - PCI-DSSv4 │ │ │ -0010cbe0: 2d31 302e 350a 2020 2d20 5043 492d 4453 -10.5. - PCI-DS │ │ │ -0010cbf0: 5376 342d 3130 2e35 2e31 0a20 202d 2065 Sv4-10.5.1. - e │ │ │ -0010cc00: 6e61 626c 655f 7374 7261 7465 6779 0a20 nable_strategy. │ │ │ -0010cc10: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ -0010cc20: 790a 2020 2d20 6c6f 775f 6469 7372 7570 y. - low_disrup │ │ │ -0010cc30: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f tion. - medium_ │ │ │ -0010cc40: 7365 7665 7269 7479 0a20 202d 206e 6f5f severity. - no_ │ │ │ -0010cc50: 7265 626f 6f74 5f6e 6565 6465 640a 2020 reboot_needed. │ │ │ -0010cc60: 2d20 7061 636b 6167 655f 6c6f 6772 6f74 - package_logrot │ │ │ -0010cc70: 6174 655f 696e 7374 616c 6c65 640a 0a2d ate_installed..- │ │ │ -0010cc80: 206e 616d 653a 2045 6e73 7572 6520 6c6f name: Ensure lo │ │ │ -0010cc90: 6772 6f74 6174 6520 6973 2069 6e73 7461 grotate is insta │ │ │ -0010cca0: 6c6c 6564 0a20 2061 6e73 6962 6c65 2e62 lled. ansible.b │ │ │ -0010ccb0: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a uiltin.package:. │ │ │ -0010ccc0: 2020 2020 6e61 6d65 3a20 6c6f 6772 6f74 name: logrot │ │ │ -0010ccd0: 6174 650a 2020 2020 7374 6174 653a 2070 ate. state: p │ │ │ -0010cce0: 7265 7365 6e74 0a20 2077 6865 6e3a 2027 resent. when: ' │ │ │ -0010ccf0: 226b 6572 6e65 6c22 2069 6e20 616e 7369 "kernel" in ansi │ │ │ -0010cd00: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -0010cd10: 6573 270a 2020 7461 6773 3a0a 2020 2d20 es'. tags:. - │ │ │ -0010cd20: 4e49 5354 2d38 3030 2d35 332d 434d 2d36 NIST-800-53-CM-6 │ │ │ -0010cd30: 2861 290a 2020 2d20 5043 492d 4453 532d (a). - PCI-DSS- │ │ │ -0010cd40: 5265 712d 3130 2e37 0a20 202d 2050 4349 Req-10.7. - PCI │ │ │ -0010cd50: 2d44 5353 7634 2d31 302e 350a 2020 2d20 -DSSv4-10.5. - │ │ │ -0010cd60: 5043 492d 4453 5376 342d 3130 2e35 2e31 PCI-DSSv4-10.5.1 │ │ │ -0010cd70: 0a20 202d 2065 6e61 626c 655f 7374 7261 . - enable_stra │ │ │ -0010cd80: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d tegy. - low_com │ │ │ -0010cd90: 706c 6578 6974 790a 2020 2d20 6c6f 775f plexity. - low_ │ │ │ -0010cda0: 6469 7372 7570 7469 6f6e 0a20 202d 206d disruption. - m │ │ │ -0010cdb0: 6564 6975 6d5f 7365 7665 7269 7479 0a20 edium_severity. │ │ │ -0010cdc0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ -0010cdd0: 6465 640a 2020 2d20 7061 636b 6167 655f ded. - package_ │ │ │ -0010cde0: 6c6f 6772 6f74 6174 655f 696e 7374 616c logrotate_instal │ │ │ -0010cdf0: 6c65 640a 3c2f 636f 6465 3e3c 2f70 7265 led.
Remediation │ │ │ -0010ceb0: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ -0010cec0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -0010cf90: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -0010cfa0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -0010cff0: 2320 5265 6d65 6469 6174 696f 6e20 6973  # Remediation is
│ │ │ -0010d000: 2061 7070 6c69 6361 626c 6520 6f6e 6c79   applicable only
│ │ │ -0010d010: 2069 6e20 6365 7274 6169 6e20 706c 6174   in certain plat
│ │ │ -0010d020: 666f 726d 730a 6966 2072 706d 202d 2d71  forms.if rpm --q
│ │ │ -0010d030: 7569 6574 202d 7120 6b65 726e 656c 3b20  uiet -q kernel; 
│ │ │ -0010d040: 7468 656e 0a0a 6966 2021 2072 706d 202d  then..if ! rpm -
│ │ │ -0010d050: 7120 2d2d 7175 6965 7420 226c 6f67 726f  q --quiet "logro
│ │ │ -0010d060: 7461 7465 2220 3b20 7468 656e 0a20 2020  tate" ; then.   
│ │ │ -0010d070: 2064 6e66 2069 6e73 7461 6c6c 202d 7920   dnf install -y 
│ │ │ -0010d080: 226c 6f67 726f 7461 7465 220a 6669 0a0a  "logrotate".fi..
│ │ │ -0010d090: 656c 7365 0a20 2020 2026 6774 3b26 616d  else.    >&am
│ │ │ -0010d0a0: 703b 3220 6563 686f 2027 5265 6d65 6469  p;2 echo 'Remedi
│ │ │ -0010d0b0: 6174 696f 6e20 6973 206e 6f74 2061 7070  ation is not app
│ │ │ -0010d0c0: 6c69 6361 626c 652c 206e 6f74 6869 6e67  licable, nothing
│ │ │ -0010d0d0: 2077 6173 2064 6f6e 6527 0a66 690a 3c2f   was done'.fi.
│ │ │ +0010c4d0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ +0010c560: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
low
Disru │ │ │ -0010cf70: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -0010cf80: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -0010cfc0: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -0010cfd0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexi │ │ │ +0010c4e0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +0010c4f0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +0010c530: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +0010c540: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
│ │ │ +0010c580: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ +0010c590: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ +0010c5a0: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ +0010c5b0: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ +0010c5c0: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ +0010c5d0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +0010c5e0: 332d 434d 2d36 2861 290a 2020 2d20 5043  3-CM-6(a).  - PC
│ │ │ +0010c5f0: 492d 4453 532d 5265 712d 3130 2e37 0a20  I-DSS-Req-10.7. 
│ │ │ +0010c600: 202d 2050 4349 2d44 5353 7634 2d31 302e   - PCI-DSSv4-10.
│ │ │ +0010c610: 350a 2020 2d20 5043 492d 4453 5376 342d  5.  - PCI-DSSv4-
│ │ │ +0010c620: 3130 2e35 2e31 0a20 202d 2065 6e61 626c  10.5.1.  - enabl
│ │ │ +0010c630: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ +0010c640: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +0010c650: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +0010c660: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +0010c670: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ +0010c680: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ +0010c690: 636b 6167 655f 6c6f 6772 6f74 6174 655f  ckage_logrotate_
│ │ │ +0010c6a0: 696e 7374 616c 6c65 640a 0a2d 206e 616d  installed..- nam
│ │ │ +0010c6b0: 653a 2045 6e73 7572 6520 6c6f 6772 6f74  e: Ensure logrot
│ │ │ +0010c6c0: 6174 6520 6973 2069 6e73 7461 6c6c 6564  ate is installed
│ │ │ +0010c6d0: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ +0010c6e0: 696e 2e70 6163 6b61 6765 3a0a 2020 2020  in.package:.    
│ │ │ +0010c6f0: 6e61 6d65 3a20 6c6f 6772 6f74 6174 650a  name: logrotate.
│ │ │ +0010c700: 2020 2020 7374 6174 653a 2070 7265 7365      state: prese
│ │ │ +0010c710: 6e74 0a20 2077 6865 6e3a 2027 226b 6572  nt.  when: '"ker
│ │ │ +0010c720: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +0010c730: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ +0010c740: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +0010c750: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +0010c760: 2020 2d20 5043 492d 4453 532d 5265 712d    - PCI-DSS-Req-
│ │ │ +0010c770: 3130 2e37 0a20 202d 2050 4349 2d44 5353  10.7.  - PCI-DSS
│ │ │ +0010c780: 7634 2d31 302e 350a 2020 2d20 5043 492d  v4-10.5.  - PCI-
│ │ │ +0010c790: 4453 5376 342d 3130 2e35 2e31 0a20 202d  DSSv4-10.5.1.  -
│ │ │ +0010c7a0: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ +0010c7b0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +0010c7c0: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +0010c7d0: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +0010c7e0: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ +0010c7f0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +0010c800: 2020 2d20 7061 636b 6167 655f 6c6f 6772    - package_logr
│ │ │ +0010c810: 6f74 6174 655f 696e 7374 616c 6c65 640a  otate_installed.
│ │ │ +0010c820: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +0010c8d0: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +0010c8e0: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
│ │ │ +0010c980: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
in
│ │ │ +0010ca20: 636c 7564 6520 696e 7374 616c 6c5f 6c6f  clude install_lo
│ │ │ +0010ca30: 6772 6f74 6174 650a 0a63 6c61 7373 2069  grotate..class i
│ │ │ +0010ca40: 6e73 7461 6c6c 5f6c 6f67 726f 7461 7465  nstall_logrotate
│ │ │ +0010ca50: 207b 0a20 2070 6163 6b61 6765 207b 2027   {.  package { '
│ │ │ +0010ca60: 6c6f 6772 6f74 6174 6527 3a0a 2020 2020  logrotate':.    
│ │ │ +0010ca70: 656e 7375 7265 203d 2667 743b 2027 696e  ensure => 'in
│ │ │ +0010ca80: 7374 616c 6c65 6427 2c0a 2020 7d0a 7d0a  stalled',.  }.}.
│ │ │ +0010ca90: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +0010cb40: 5265 6d65 6469 6174 696f 6e20 4f53 4275 Remediation OSBu │ │ │ +0010cb50: 696c 6420 426c 7565 7072 696e 7420 736e ild Blueprint sn │ │ │ +0010cb60: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
.[[p
│ │ │ +0010cbb0: 6163 6b61 6765 735d 5d0a 6e61 6d65 203d  ackages]].name =
│ │ │ +0010cbc0: 2022 6c6f 6772 6f74 6174 6522 0a76 6572   "logrotate".ver
│ │ │ +0010cbd0: 7369 6f6e 203d 2022 2a22 0a3c 2f63 6f64  sion = "*".
Remed │ │ │ +0010cc90: 6961 7469 6f6e 2053 6865 6c6c 2073 6372 iation Shell scr │ │ │ +0010cca0: 6970 7420 e287 b23c 2f61 3e3c 6272 3e3c ipt ...
< │ │ │ +0010ccb0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +0010ccc0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +0010ccd0: 7365 2220 6964 3d22 6964 3237 3422 3e3c se" id="id274">< │ │ │ +0010cce0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +0010ccf0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +0010cd00: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +0010cd10: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +0010cd20: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:Strategy: │ │ │ +0010cdb0: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c < │ │ │ +0010cdc0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
│ │ │ +0010c970: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +0010c9a0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +0010c9b0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +0010c9f0: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ +0010ca00: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complex │ │ │ +0010cd30: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +0010cd40: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ +0010cd80: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +0010cd90: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
enable
# Remedia
│ │ │ +0010cde0: 7469 6f6e 2069 7320 6170 706c 6963 6162  tion is applicab
│ │ │ +0010cdf0: 6c65 206f 6e6c 7920 696e 2063 6572 7461  le only in certa
│ │ │ +0010ce00: 696e 2070 6c61 7466 6f72 6d73 0a69 6620  in platforms.if 
│ │ │ +0010ce10: 7270 6d20 2d2d 7175 6965 7420 2d71 206b  rpm --quiet -q k
│ │ │ +0010ce20: 6572 6e65 6c3b 2074 6865 6e0a 0a69 6620  ernel; then..if 
│ │ │ +0010ce30: 2120 7270 6d20 2d71 202d 2d71 7569 6574  ! rpm -q --quiet
│ │ │ +0010ce40: 2022 6c6f 6772 6f74 6174 6522 203b 2074   "logrotate" ; t
│ │ │ +0010ce50: 6865 6e0a 2020 2020 646e 6620 696e 7374  hen.    dnf inst
│ │ │ +0010ce60: 616c 6c20 2d79 2022 6c6f 6772 6f74 6174  all -y "logrotat
│ │ │ +0010ce70: 6522 0a66 690a 0a65 6c73 650a 2020 2020  e".fi..else.    
│ │ │ +0010ce80: 2667 743b 2661 6d70 3b32 2065 6368 6f20  >&2 echo 
│ │ │ +0010ce90: 2752 656d 6564 6961 7469 6f6e 2069 7320  'Remediation is 
│ │ │ +0010cea0: 6e6f 7420 6170 706c 6963 6162 6c65 2c20  not applicable, 
│ │ │ +0010ceb0: 6e6f 7468 696e 6720 7761 7320 646f 6e65  nothing was done
│ │ │ +0010cec0: 270a 6669 0a3c 2f63 6f64 653e 3c2f 7072  '.fi.
Remediation │ │ │ +0010cf80: 2041 6e61 636f 6e64 6120 736e 6970 7065 Anaconda snippe │ │ │ +0010cf90: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +0010d010: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +0010d020: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +0010d040: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +0010d050: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +0010d070: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +0010d090: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ +0010d0c0: 636f 6465 3e0a 7061 636b 6167 6520 2d2d  code>.package --
│ │ │ +0010d0d0: 6164 643d 6c6f 6772 6f74 6174 650a 3c2f  add=logrotate.
Remediation O │ │ │ -001176a0: 5342 7569 6c64 2042 6c75 6570 7269 6e74 SBuild Blueprint │ │ │ -001176b0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -001176c0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
.
│ │ │ -00117700: 5b5b 7061 636b 6167 6573 5d5d 0a6e 616d  [[packages]].nam
│ │ │ -00117710: 6520 3d20 2272 7379 736c 6f67 2d67 6e75  e = "rsyslog-gnu
│ │ │ -00117720: 746c 7322 0a76 6572 7369 6f6e 203d 2022  tls".version = "
│ │ │ -00117730: 2a22 0a3c 2f63 6f64 653e 3c2f 7072 653e  *".
│ │ │ -00117740: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation A │ │ │ -001177f0: 6e61 636f 6e64 6120 736e 6970 7065 7420 naconda snippet │ │ │ -00117800: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -00117890: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -001178b0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -001178d0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -00117900: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -00117910: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ -00117920: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
.package --ad
│ │ │ -00117940: 643d 7273 7973 6c6f 672d 676e 7574 6c73  d=rsyslog-gnutls
│ │ │ -00117950: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Pup │ │ │ -00117a10: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ -00117a20: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -00117af0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00117b00: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
i
│ │ │ -00117b50: 6e63 6c75 6465 2069 6e73 7461 6c6c 5f72  nclude install_r
│ │ │ -00117b60: 7379 736c 6f67 2d67 6e75 746c 730a 0a63  syslog-gnutls..c
│ │ │ -00117b70: 6c61 7373 2069 6e73 7461 6c6c 5f72 7379  lass install_rsy
│ │ │ -00117b80: 736c 6f67 2d67 6e75 746c 7320 7b0a 2020  slog-gnutls {.  
│ │ │ -00117b90: 7061 636b 6167 6520 7b20 2772 7379 736c  package { 'rsysl
│ │ │ -00117ba0: 6f67 2d67 6e75 746c 7327 3a0a 2020 2020  og-gnutls':.    
│ │ │ -00117bb0: 656e 7375 7265 203d 2667 743b 2027 696e  ensure => 'in
│ │ │ -00117bc0: 7374 616c 6c65 6427 2c0a 2020 7d0a 7d0a  stalled',.  }.}.
│ │ │ -00117bd0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -00117c80: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -00117c90: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -00117ca0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
Complexity:low
Disrup │ │ │ -00117ad0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00117ae0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00117b20: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -00117b30: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ -00117d70: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00117d80: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
-
│ │ │ -00117dd0: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ -00117de0: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ -00117df0: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ -00117e00: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ -00117e10: 746f 0a20 2074 6167 733a 0a20 202d 2065  to.  tags:.  - e
│ │ │ -00117e20: 6e61 626c 655f 7374 7261 7465 6779 0a20  nable_strategy. 
│ │ │ -00117e30: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -00117e40: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -00117e50: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ -00117e60: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ -00117e70: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ -00117e80: 2d20 7061 636b 6167 655f 7273 7973 6c6f  - package_rsyslo
│ │ │ -00117e90: 672d 676e 7574 6c73 5f69 6e73 7461 6c6c  g-gnutls_install
│ │ │ -00117ea0: 6564 0a0a 2d20 6e61 6d65 3a20 456e 7375  ed..- name: Ensu
│ │ │ -00117eb0: 7265 2072 7379 736c 6f67 2d67 6e75 746c  re rsyslog-gnutl
│ │ │ -00117ec0: 7320 6973 2069 6e73 7461 6c6c 6564 0a20  s is installed. 
│ │ │ -00117ed0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -00117ee0: 2e70 6163 6b61 6765 3a0a 2020 2020 6e61  .package:.    na
│ │ │ -00117ef0: 6d65 3a20 7273 7973 6c6f 672d 676e 7574  me: rsyslog-gnut
│ │ │ -00117f00: 6c73 0a20 2020 2073 7461 7465 3a20 7072  ls.    state: pr
│ │ │ -00117f10: 6573 656e 740a 2020 7768 656e 3a20 2722  esent.  when: '"
│ │ │ -00117f20: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -00117f30: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -00117f40: 7327 0a20 2074 6167 733a 0a20 202d 2065  s'.  tags:.  - e
│ │ │ -00117f50: 6e61 626c 655f 7374 7261 7465 6779 0a20  nable_strategy. 
│ │ │ -00117f60: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -00117f70: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -00117f80: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ -00117f90: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ -00117fa0: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ -00117fb0: 2d20 7061 636b 6167 655f 7273 7973 6c6f  - package_rsyslo
│ │ │ -00117fc0: 672d 676e 7574 6c73 5f69 6e73 7461 6c6c  g-gnutls_install
│ │ │ -00117fd0: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e  ed.
│ │ │ -00117fe0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation S │ │ │ -00118090: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ -001180a0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
Complexity:low
Disrup │ │ │ -00117d50: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00117d60: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00117da0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -00117db0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ -00118170: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00118180: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
#
│ │ │ -001181d0: 2052 656d 6564 6961 7469 6f6e 2069 7320   Remediation is 
│ │ │ -001181e0: 6170 706c 6963 6162 6c65 206f 6e6c 7920  applicable only 
│ │ │ -001181f0: 696e 2063 6572 7461 696e 2070 6c61 7466  in certain platf
│ │ │ -00118200: 6f72 6d73 0a69 6620 7270 6d20 2d2d 7175  orms.if rpm --qu
│ │ │ -00118210: 6965 7420 2d71 206b 6572 6e65 6c3b 2074  iet -q kernel; t
│ │ │ -00118220: 6865 6e0a 0a69 6620 2120 7270 6d20 2d71  hen..if ! rpm -q
│ │ │ -00118230: 202d 2d71 7569 6574 2022 7273 7973 6c6f   --quiet "rsyslo
│ │ │ -00118240: 672d 676e 7574 6c73 2220 3b20 7468 656e  g-gnutls" ; then
│ │ │ -00118250: 0a20 2020 2064 6e66 2069 6e73 7461 6c6c  .    dnf install
│ │ │ -00118260: 202d 7920 2272 7379 736c 6f67 2d67 6e75   -y "rsyslog-gnu
│ │ │ -00118270: 746c 7322 0a66 690a 0a65 6c73 650a 2020  tls".fi..else.  
│ │ │ -00118280: 2020 2667 743b 2661 6d70 3b32 2065 6368    >&2 ech
│ │ │ -00118290: 6f20 2752 656d 6564 6961 7469 6f6e 2069  o 'Remediation i
│ │ │ -001182a0: 7320 6e6f 7420 6170 706c 6963 6162 6c65  s not applicable
│ │ │ -001182b0: 2c20 6e6f 7468 696e 6720 7761 7320 646f  , nothing was do
│ │ │ -001182c0: 6e65 270a 6669 0a3c 2f63 6f64 653e 3c2f  ne'.fi.Remediation A
│ │ │ +001176a0: 6e73 6962 6c65 2073 6e69 7070 6574 20e2  nsible snippet .
│ │ │ +001176b0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063  ..
Complexity:low
Disrup │ │ │ -00118150: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00118160: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -001181a0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -001181b0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
│ │ │ +00117730: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +00117750: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +001177a0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ +001177d0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ +001177f0: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ +00117800: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ +00117810: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ +00117820: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ +00117830: 2d20 656e 6162 6c65 5f73 7472 6174 6567  - enable_strateg
│ │ │ +00117840: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ +00117850: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ +00117860: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ +00117870: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +00117880: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +00117890: 0a20 202d 2070 6163 6b61 6765 5f72 7379  .  - package_rsy
│ │ │ +001178a0: 736c 6f67 2d67 6e75 746c 735f 696e 7374  slog-gnutls_inst
│ │ │ +001178b0: 616c 6c65 640a 0a2d 206e 616d 653a 2045  alled..- name: E
│ │ │ +001178c0: 6e73 7572 6520 7273 7973 6c6f 672d 676e  nsure rsyslog-gn
│ │ │ +001178d0: 7574 6c73 2069 7320 696e 7374 616c 6c65  utls is installe
│ │ │ +001178e0: 640a 2020 616e 7369 626c 652e 6275 696c  d.  ansible.buil
│ │ │ +001178f0: 7469 6e2e 7061 636b 6167 653a 0a20 2020  tin.package:.   
│ │ │ +00117900: 206e 616d 653a 2072 7379 736c 6f67 2d67   name: rsyslog-g
│ │ │ +00117910: 6e75 746c 730a 2020 2020 7374 6174 653a  nutls.    state:
│ │ │ +00117920: 2070 7265 7365 6e74 0a20 2077 6865 6e3a   present.  when:
│ │ │ +00117930: 2027 226b 6572 6e65 6c22 2069 6e20 616e   '"kernel" in an
│ │ │ +00117940: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +00117950: 6167 6573 270a 2020 7461 6773 3a0a 2020  ages'.  tags:.  
│ │ │ +00117960: 2d20 656e 6162 6c65 5f73 7472 6174 6567  - enable_strateg
│ │ │ +00117970: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ +00117980: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ +00117990: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ +001179a0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001179b0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001179c0: 0a20 202d 2070 6163 6b61 6765 5f72 7379  .  - package_rsy
│ │ │ +001179d0: 736c 6f67 2d67 6e75 746c 735f 696e 7374  slog-gnutls_inst
│ │ │ +001179e0: 616c 6c65 640a 3c2f 636f 6465 3e3c 2f70  alled.

Remediatio │ │ │ +00117aa0: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ +00117ab0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
< │ │ │ +00117b70: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00117b80: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
Complexity:< │ │ │ +00117740: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00117760: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +001177b0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ +001177c0: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
Complexity │ │ │ +00117b40: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ +00117b60: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ +00117b90: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ +00117bb0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
include inst
│ │ │ +00117bf0: 616c 6c5f 7273 7973 6c6f 672d 676e 7574  all_rsyslog-gnut
│ │ │ +00117c00: 6c73 0a0a 636c 6173 7320 696e 7374 616c  ls..class instal
│ │ │ +00117c10: 6c5f 7273 7973 6c6f 672d 676e 7574 6c73  l_rsyslog-gnutls
│ │ │ +00117c20: 207b 0a20 2070 6163 6b61 6765 207b 2027   {.  package { '
│ │ │ +00117c30: 7273 7973 6c6f 672d 676e 7574 6c73 273a  rsyslog-gnutls':
│ │ │ +00117c40: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ +00117c50: 3b20 2769 6e73 7461 6c6c 6564 272c 0a20  ; 'installed',. 
│ │ │ +00117c60: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.
Remediation │ │ │ +00117d20: 204f 5342 7569 6c64 2042 6c75 6570 7269 OSBuild Bluepri │ │ │ +00117d30: 6e74 2073 6e69 7070 6574 20e2 87b2 3c2f nt snippet ...
.[[packages]].n
│ │ │ +00117d90: 616d 6520 3d20 2272 7379 736c 6f67 2d67  ame = "rsyslog-g
│ │ │ +00117da0: 6e75 746c 7322 0a76 6572 7369 6f6e 203d  nutls".version =
│ │ │ +00117db0: 2022 2a22 0a3c 2f63 6f64 653e 3c2f 7072   "*".
Remediation │ │ │ +00117e70: 2053 6865 6c6c 2073 6372 6970 7420 e287 Shell script .. │ │ │ +00117e80: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ +00117f00: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +00117f20: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +00117f70: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
# Remediation i
│ │ │ +00117fc0: 7320 6170 706c 6963 6162 6c65 206f 6e6c  s applicable onl
│ │ │ +00117fd0: 7920 696e 2063 6572 7461 696e 2070 6c61  y in certain pla
│ │ │ +00117fe0: 7466 6f72 6d73 0a69 6620 7270 6d20 2d2d  tforms.if rpm --
│ │ │ +00117ff0: 7175 6965 7420 2d71 206b 6572 6e65 6c3b  quiet -q kernel;
│ │ │ +00118000: 2074 6865 6e0a 0a69 6620 2120 7270 6d20   then..if ! rpm 
│ │ │ +00118010: 2d71 202d 2d71 7569 6574 2022 7273 7973  -q --quiet "rsys
│ │ │ +00118020: 6c6f 672d 676e 7574 6c73 2220 3b20 7468  log-gnutls" ; th
│ │ │ +00118030: 656e 0a20 2020 2064 6e66 2069 6e73 7461  en.    dnf insta
│ │ │ +00118040: 6c6c 202d 7920 2272 7379 736c 6f67 2d67  ll -y "rsyslog-g
│ │ │ +00118050: 6e75 746c 7322 0a66 690a 0a65 6c73 650a  nutls".fi..else.
│ │ │ +00118060: 2020 2020 2667 743b 2661 6d70 3b32 2065      >&2 e
│ │ │ +00118070: 6368 6f20 2752 656d 6564 6961 7469 6f6e  cho 'Remediation
│ │ │ +00118080: 2069 7320 6e6f 7420 6170 706c 6963 6162   is not applicab
│ │ │ +00118090: 6c65 2c20 6e6f 7468 696e 6720 7761 7320  le, nothing was 
│ │ │ +001180a0: 646f 6e65 270a 6669 0a3c 2f63 6f64 653e  done'.fi.
│ │ │ +001180b0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +00118160: 7469 6f6e 2041 6e61 636f 6e64 6120 736e tion Anaconda sn │ │ │ +00118170: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
low
Disr │ │ │ +00117f30: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +00117f40: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +00117f80: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +00117f90: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ +00118220: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +00118240: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +00118270: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +00118200: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +00118210: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +00118230: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +00118250: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +00118260: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

.packag │ │ │ +001182b0: 6520 2d2d 6164 643d 7273 7973 6c6f 672d e --add=rsyslog- │ │ │ +001182c0: 676e 7574 6c73 0a3c 2f63 6f64 653e 3c2f gnutls.

│ │ │ 001182e0: 3c2f 7464 3e3c 2f74 723e 3c2f 7462 6f64 < │ │ │ 00118300: 2f74 723e 3c74 7220 6461 7461 2d74 742d /tr>Remedi │ │ │ -001d1fa0: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ -001d1fb0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -001d2040: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -001d2050: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -001d2070: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ -001d2090: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001d20a0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -001d20c0: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -001d20e0: 3c70 7265 3e3c 636f 6465 3e0a 7061 7274
.part
│ │ │ -001d20f0: 202f 626f 6f74 202d 2d6d 6f75 6e74 6f70   /boot --mountop
│ │ │ -001d2100: 7469 6f6e 733d 226e 6f65 7865 6322 0a3c  tions="noexec".<
│ │ │ -001d2110: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -001d21c0: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -001d21d0: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
│ │ │ -001d2270: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 < │ │ │ -001d22b0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -001d22c0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false< │ │ │ -001d2300: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ -001d2320: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ -001d2330: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ -001d2340: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ -001d2350: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ -001d2360: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -001d2370: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ -001d2380: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -001d2390: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001d23a0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -001d23b0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ -001d23c0: 5f62 6f6f 745f 6e6f 6578 6563 0a20 202d  _boot_noexec.  -
│ │ │ -001d23d0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -001d23e0: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ -001d23f0: 6e6f 6578 6563 204f 7074 696f 6e20 746f  noexec Option to
│ │ │ -001d2400: 202f 626f 6f74 3a20 4368 6563 6b20 696e   /boot: Check in
│ │ │ -001d2410: 666f 726d 6174 696f 6e20 6173 736f 6369  formation associ
│ │ │ -001d2420: 6174 6564 2074 6f20 6d6f 756e 7470 6f69  ated to mountpoi
│ │ │ -001d2430: 6e74 270a 2020 616e 7369 626c 652e 6275  nt'.  ansible.bu
│ │ │ -001d2440: 696c 7469 6e2e 636f 6d6d 616e 643a 2066  iltin.command: f
│ │ │ -001d2450: 696e 646d 6e74 202d 2d66 7374 6162 2027  indmnt --fstab '
│ │ │ -001d2460: 2f62 6f6f 7427 0a20 2072 6567 6973 7465  /boot'.  registe
│ │ │ -001d2470: 723a 2064 6576 6963 655f 6e61 6d65 0a20  r: device_name. 
│ │ │ -001d2480: 2066 6169 6c65 645f 7768 656e 3a20 6465   failed_when: de
│ │ │ -001d2490: 7669 6365 5f6e 616d 652e 7263 2026 6774  vice_name.rc >
│ │ │ -001d24a0: 3b20 310a 2020 6368 616e 6765 645f 7768  ; 1.  changed_wh
│ │ │ -001d24b0: 656e 3a20 6661 6c73 650a 2020 6368 6563  en: false.  chec
│ │ │ -001d24c0: 6b5f 6d6f 6465 3a20 6661 6c73 650a 2020  k_mode: false.  
│ │ │ -001d24d0: 7768 656e 3a20 2820 6e6f 7420 2820 226b  when: ( not ( "k
│ │ │ -001d24e0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -001d24f0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001d2500: 2061 6e64 2022 7270 6d2d 6f73 7472 6565   and "rpm-ostree
│ │ │ -001d2510: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001d2520: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001d2530: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ -001d2540: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001d2550: 6b61 6765 7320 616e 6420 6e6f 7420 226f  kages and not "o
│ │ │ -001d2560: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ -001d2570: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001d2580: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001d2590: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ -001d25a0: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ -001d25b0: 6c69 6e65 2029 2061 6e64 206e 6f74 2028  line ) and not (
│ │ │ -001d25c0: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ -001d25d0: 697a 6174 696f 6e5f 7479 7065 2069 6e0a  ization_type in.
│ │ │ -001d25e0: 2020 2020 5b22 646f 636b 6572 222c 2022      ["docker", "
│ │ │ -001d25f0: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ -001d2600: 2270 6f64 6d61 6e22 2c20 2263 6f6e 7461  "podman", "conta
│ │ │ -001d2610: 696e 6572 225d 2029 2029 0a20 2074 6167  iner"] ) ).  tag
│ │ │ -001d2620: 733a 0a20 202d 2063 6f6e 6669 6775 7265  s:.  - configure
│ │ │ -001d2630: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ -001d2640: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ -001d2650: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001d2660: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -001d2670: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ -001d2680: 7074 696f 6e5f 626f 6f74 5f6e 6f65 7865  ption_boot_noexe
│ │ │ -001d2690: 630a 2020 2d20 6e6f 5f72 6562 6f6f 745f  c.  - no_reboot_
│ │ │ -001d26a0: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ -001d26b0: 2741 6464 206e 6f65 7865 6320 4f70 7469  'Add noexec Opti
│ │ │ -001d26c0: 6f6e 2074 6f20 2f62 6f6f 743a 2043 7265  on to /boot: Cre
│ │ │ -001d26d0: 6174 6520 6d6f 756e 745f 696e 666f 2064  ate mount_info d
│ │ │ -001d26e0: 6963 7469 6f6e 6172 7920 7661 7269 6162  ictionary variab
│ │ │ -001d26f0: 6c65 270a 2020 7365 745f 6661 6374 3a0a  le'.  set_fact:.
│ │ │ -001d2700: 2020 2020 6d6f 756e 745f 696e 666f 3a20      mount_info: 
│ │ │ -001d2710: 277b 7b20 6d6f 756e 745f 696e 666f 7c64  '{{ mount_info|d
│ │ │ -001d2720: 6566 6175 6c74 287b 7d29 7c63 6f6d 6269  efault({})|combi
│ │ │ -001d2730: 6e65 287b 6974 656d 2e30 3a20 6974 656d  ne({item.0: item
│ │ │ -001d2740: 2e31 7d29 207d 7d27 0a20 2077 6974 685f  .1}) }}'.  with_
│ │ │ -001d2750: 746f 6765 7468 6572 3a0a 2020 2d20 277b  together:.  - '{
│ │ │ -001d2760: 7b20 6465 7669 6365 5f6e 616d 652e 7374  { device_name.st
│ │ │ -001d2770: 646f 7574 5f6c 696e 6573 5b30 5d2e 7370  dout_lines[0].sp
│ │ │ -001d2780: 6c69 7428 2920 7c20 6d61 7028 2727 6c6f  lit() | map(''lo
│ │ │ -001d2790: 7765 7227 2729 207c 206c 6973 7420 7d7d  wer'') | list }}
│ │ │ -001d27a0: 270a 2020 2d20 277b 7b20 6465 7669 6365  '.  - '{{ device
│ │ │ -001d27b0: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ -001d27c0: 6573 5b31 5d2e 7370 6c69 7428 2920 7c20  es[1].split() | 
│ │ │ -001d27d0: 6c69 7374 207d 7d27 0a20 2077 6865 6e3a  list }}'.  when:
│ │ │ -001d27e0: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ -001d27f0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -001d2800: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001d2810: 616e 6420 2272 706d 2d6f 7374 7265 6522  and "rpm-ostree"
│ │ │ -001d2820: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001d2830: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001d2840: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ -001d2850: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001d2860: 6167 6573 2061 6e64 206e 6f74 2022 6f70  ages and not "op
│ │ │ -001d2870: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ -001d2880: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001d2890: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001d28a0: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ -001d28b0: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ -001d28c0: 696e 6520 2920 616e 6420 6e6f 7420 2820  ine ) and not ( 
│ │ │ -001d28d0: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ -001d28e0: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20  zation_type in. 
│ │ │ -001d28f0: 2020 205b 2264 6f63 6b65 7222 2c20 226c     ["docker", "l
│ │ │ -001d2900: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ -001d2910: 706f 646d 616e 222c 2022 636f 6e74 6169  podman", "contai
│ │ │ -001d2920: 6e65 7222 5d20 2920 290a 2020 2d20 6465  ner"] ) ).  - de
│ │ │ -001d2930: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001d2940: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ -001d2950: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001d2960: 7574 5f6c 696e 6573 2069 7320 6465 6669  ut_lines is defi
│ │ │ -001d2970: 6e65 640a 2020 2d20 2864 6576 6963 655f  ned.  - (device_
│ │ │ -001d2980: 6e61 6d65 2e73 7464 6f75 7420 7c20 6c65  name.stdout | le
│ │ │ -001d2990: 6e67 7468 2026 6774 3b20 3029 0a20 2074  ngth > 0).  t
│ │ │ -001d29a0: 6167 733a 0a20 202d 2063 6f6e 6669 6775  ags:.  - configu
│ │ │ -001d29b0: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ -001d29c0: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ -001d29d0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -001d29e0: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ -001d29f0: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ -001d2a00: 5f6f 7074 696f 6e5f 626f 6f74 5f6e 6f65  _option_boot_noe
│ │ │ -001d2a10: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f  xec.  - no_reboo
│ │ │ -001d2a20: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ -001d2a30: 3a20 2741 6464 206e 6f65 7865 6320 4f70  : 'Add noexec Op
│ │ │ -001d2a40: 7469 6f6e 2074 6f20 2f62 6f6f 743a 2049  tion to /boot: I
│ │ │ -001d2a50: 6620 2f62 6f6f 7420 6e6f 7420 6d6f 756e  f /boot not moun
│ │ │ -001d2a60: 7465 642c 2063 7261 6674 206d 6f75 6e74  ted, craft mount
│ │ │ -001d2a70: 5f69 6e66 6f20 6d61 6e75 616c 6c79 270a  _info manually'.
│ │ │ -001d2a80: 2020 7365 745f 6661 6374 3a0a 2020 2020    set_fact:.    
│ │ │ -001d2a90: 6d6f 756e 745f 696e 666f 3a20 277b 7b20  mount_info: '{{ 
│ │ │ -001d2aa0: 6d6f 756e 745f 696e 666f 7c64 6566 6175  mount_info|defau
│ │ │ -001d2ab0: 6c74 287b 7d29 7c63 6f6d 6269 6e65 287b  lt({})|combine({
│ │ │ -001d2ac0: 6974 656d 2e30 3a20 6974 656d 2e31 7d29  item.0: item.1})
│ │ │ -001d2ad0: 207d 7d27 0a20 2077 6974 685f 746f 6765   }}'.  with_toge
│ │ │ -001d2ae0: 7468 6572 3a0a 2020 2d20 2d20 7461 7267  ther:.  - - targ
│ │ │ -001d2af0: 6574 0a20 2020 202d 2073 6f75 7263 650a  et.    - source.
│ │ │ -001d2b00: 2020 2020 2d20 6673 7479 7065 0a20 2020      - fstype.   
│ │ │ -001d2b10: 202d 206f 7074 696f 6e73 0a20 202d 202d   - options.  - -
│ │ │ -001d2b20: 202f 626f 6f74 0a20 2020 202d 2027 270a   /boot.    - ''.
│ │ │ -001d2b30: 2020 2020 2d20 2727 0a20 2020 202d 2064      - ''.    - d
│ │ │ -001d2b40: 6566 6175 6c74 730a 2020 7768 656e 3a0a  efaults.  when:.
│ │ │ -001d2b50: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ -001d2b60: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -001d2b70: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001d2b80: 6e64 2022 7270 6d2d 6f73 7472 6565 2220  nd "rpm-ostree" 
│ │ │ -001d2b90: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001d2ba0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001d2bb0: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ -001d2bc0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001d2bd0: 6765 7320 616e 6420 6e6f 7420 226f 7065  ges and not "ope
│ │ │ -001d2be0: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ -001d2bf0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001d2c00: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001d2c10: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ -001d2c20: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ -001d2c30: 6e65 2029 2061 6e64 206e 6f74 2028 2061  ne ) and not ( a
│ │ │ -001d2c40: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ -001d2c50: 6174 696f 6e5f 7479 7065 2069 6e0a 2020  ation_type in.  
│ │ │ -001d2c60: 2020 5b22 646f 636b 6572 222c 2022 6c78    ["docker", "lx
│ │ │ -001d2c70: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ -001d2c80: 6f64 6d61 6e22 2c20 2263 6f6e 7461 696e  odman", "contain
│ │ │ -001d2c90: 6572 225d 2029 2029 0a20 202d 2028 222d  er"] ) ).  - ("-
│ │ │ -001d2ca0: 2d66 7374 6162 2220 7c20 6c65 6e67 7468  -fstab" | length
│ │ │ -001d2cb0: 203d 3d20 3029 0a20 202d 2064 6576 6963   == 0).  - devic
│ │ │ -001d2cc0: 655f 6e61 6d65 2e73 7464 6f75 7420 6973  e_name.stdout is
│ │ │ -001d2cd0: 2064 6566 696e 6564 2061 6e64 2064 6576   defined and dev
│ │ │ -001d2ce0: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ -001d2cf0: 6c69 6e65 7320 6973 2064 6566 696e 6564  lines is defined
│ │ │ -001d2d00: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ -001d2d10: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ -001d2d20: 6820 3d3d 2030 290a 2020 7461 6773 3a0a  h == 0).  tags:.
│ │ │ -001d2d30: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ -001d2d40: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ -001d2d50: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -001d2d60: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -001d2d70: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -001d2d80: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ -001d2d90: 6f6e 5f62 6f6f 745f 6e6f 6578 6563 0a20  on_boot_noexec. 
│ │ │ -001d2da0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -001d2db0: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ -001d2dc0: 6420 6e6f 6578 6563 204f 7074 696f 6e20  d noexec Option 
│ │ │ -001d2dd0: 746f 202f 626f 6f74 3a20 4d61 6b65 2073  to /boot: Make s
│ │ │ -001d2de0: 7572 6520 6e6f 6578 6563 206f 7074 696f  ure noexec optio
│ │ │ -001d2df0: 6e20 6973 2070 6172 7420 6f66 2074 6865  n is part of the
│ │ │ -001d2e00: 2074 6f20 2f62 6f6f 740a 2020 2020 6f70   to /boot.    op
│ │ │ -001d2e10: 7469 6f6e 7327 0a20 2073 6574 5f66 6163  tions'.  set_fac
│ │ │ -001d2e20: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66  t:.    mount_inf
│ │ │ -001d2e30: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66  o: '{{ mount_inf
│ │ │ -001d2e40: 6f20 7c20 636f 6d62 696e 6528 207b 2727  o | combine( {''
│ │ │ -001d2e50: 6f70 7469 6f6e 7327 273a 2727 2727 7e28  options'':''''~(
│ │ │ -001d2e60: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ -001d2e70: 6e73 207c 0a20 2020 2020 2064 6566 6175  ns |.      defau
│ │ │ -001d2e80: 6c74 2827 2727 2729 297e 2827 272c 2727  lt(''''))~('',''
│ │ │ -001d2e90: 2069 6620 286d 6f75 6e74 5f69 6e66 6f2e   if (mount_info.
│ │ │ -001d2ea0: 6f70 7469 6f6e 7320 7c20 6465 6661 756c  options | defaul
│ │ │ -001d2eb0: 7428 2727 2727 2929 2065 6c73 6520 2727  t('''')) else ''
│ │ │ -001d2ec0: 2727 297e 2727 6e6f 6578 6563 2727 0a20  '')~''noexec''. 
│ │ │ -001d2ed0: 2020 2020 207d 2920 7d7d 270a 2020 7768       }) }}'.  wh
│ │ │ -001d2ee0: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ -001d2ef0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -001d2f00: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001d2f10: 6573 2061 6e64 2022 7270 6d2d 6f73 7472  es and "rpm-ostr
│ │ │ -001d2f20: 6565 2220 696e 2061 6e73 6962 6c65 5f66  ee" in ansible_f
│ │ │ -001d2f30: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -001d2f40: 2020 616e 6420 2262 6f6f 7463 2220 696e    and "bootc" in
│ │ │ -001d2f50: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001d2f60: 6163 6b61 6765 7320 616e 6420 6e6f 7420  ackages and not 
│ │ │ -001d2f70: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ -001d2f80: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ -001d2f90: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -001d2fa0: 2020 616e 6420 226f 7374 7265 6522 2069    and "ostree" i
│ │ │ -001d2fb0: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ -001d2fc0: 6d64 6c69 6e65 2029 2061 6e64 206e 6f74  mdline ) and not
│ │ │ -001d2fd0: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ -001d2fe0: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ -001d2ff0: 6e0a 2020 2020 5b22 646f 636b 6572 222c  n.    ["docker",
│ │ │ -001d3000: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ -001d3010: 2c20 2270 6f64 6d61 6e22 2c20 2263 6f6e  , "podman", "con
│ │ │ -001d3020: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ -001d3030: 206d 6f75 6e74 5f69 6e66 6f20 6973 2064   mount_info is d
│ │ │ -001d3040: 6566 696e 6564 2061 6e64 2022 6e6f 6578  efined and "noex
│ │ │ -001d3050: 6563 2220 6e6f 7420 696e 2028 6d6f 756e  ec" not in (moun
│ │ │ -001d3060: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ -001d3070: 2064 6566 6175 6c74 2827 2729 290a 2020   default('')).  
│ │ │ -001d3080: 7461 6773 3a0a 2020 2d20 636f 6e66 6967  tags:.  - config
│ │ │ -001d3090: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001d30a0: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001d30b0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001d30c0: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001d30d0: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001d30e0: 745f 6f70 7469 6f6e 5f62 6f6f 745f 6e6f  t_option_boot_no
│ │ │ -001d30f0: 6578 6563 0a20 202d 206e 6f5f 7265 626f  exec.  - no_rebo
│ │ │ -001d3100: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -001d3110: 653a 2027 4164 6420 6e6f 6578 6563 204f  e: 'Add noexec O
│ │ │ -001d3120: 7074 696f 6e20 746f 202f 626f 6f74 3a20  ption to /boot: 
│ │ │ -001d3130: 456e 7375 7265 202f 626f 6f74 2069 7320  Ensure /boot is 
│ │ │ -001d3140: 6d6f 756e 7465 6420 7769 7468 206e 6f65  mounted with noe
│ │ │ -001d3150: 7865 6320 6f70 7469 6f6e 270a 2020 616e  xec option'.  an
│ │ │ -001d3160: 7369 626c 652e 706f 7369 782e 6d6f 756e  sible.posix.moun
│ │ │ -001d3170: 743a 0a20 2020 2070 6174 683a 202f 626f  t:.    path: /bo
│ │ │ -001d3180: 6f74 0a20 2020 2073 7263 3a20 277b 7b20  ot.    src: '{{ 
│ │ │ -001d3190: 6d6f 756e 745f 696e 666f 2e73 6f75 7263  mount_info.sourc
│ │ │ -001d31a0: 6520 7c20 6465 6661 756c 7428 2727 2727  e | default(''''
│ │ │ -001d31b0: 2920 7d7d 270a 2020 2020 6f70 7473 3a20  ) }}'.    opts: 
│ │ │ -001d31c0: 277b 7b20 6d6f 756e 745f 696e 666f 2e6f  '{{ mount_info.o
│ │ │ -001d31d0: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ -001d31e0: 2827 2727 2729 207d 7d27 0a20 2020 2073  ('''') }}'.    s
│ │ │ -001d31f0: 7461 7465 3a20 6d6f 756e 7465 640a 2020  tate: mounted.  
│ │ │ -001d3200: 2020 6673 7479 7065 3a20 277b 7b20 6d6f    fstype: '{{ mo
│ │ │ -001d3210: 756e 745f 696e 666f 2e66 7374 7970 6520  unt_info.fstype 
│ │ │ -001d3220: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ -001d3230: 7d7d 270a 2020 7265 6769 7374 6572 3a20  }}'.  register: 
│ │ │ -001d3240: 6d6f 756e 745f 7265 7375 6c74 0a20 2066  mount_result.  f
│ │ │ -001d3250: 6169 6c65 645f 7768 656e 3a0a 2020 2d20  ailed_when:.  - 
│ │ │ -001d3260: 6d6f 756e 745f 7265 7375 6c74 2069 7320  mount_result is 
│ │ │ -001d3270: 6661 696c 6564 0a20 202d 2027 2727 7461  failed.  - '''ta
│ │ │ -001d3280: 7267 6574 2069 7320 6275 7379 2727 206e  rget is busy'' n
│ │ │ -001d3290: 6f74 2069 6e20 286d 6f75 6e74 5f72 6573  ot in (mount_res
│ │ │ -001d32a0: 756c 742e 6d73 6720 7c20 6465 6661 756c  ult.msg | defaul
│ │ │ -001d32b0: 7428 2727 2727 2929 270a 2020 2d20 2727  t(''''))'.  - ''
│ │ │ -001d32c0: 2761 6c72 6561 6479 206d 6f75 6e74 6564  'already mounted
│ │ │ -001d32d0: 2727 206e 6f74 2069 6e20 286d 6f75 6e74  '' not in (mount
│ │ │ -001d32e0: 5f72 6573 756c 742e 6d73 6720 7c20 6465  _result.msg | de
│ │ │ -001d32f0: 6661 756c 7428 2727 2727 2929 270a 2020  fault(''''))'.  
│ │ │ -001d3300: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ -001d3310: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ -001d3320: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001d3330: 6167 6573 2061 6e64 2022 7270 6d2d 6f73  ages and "rpm-os
│ │ │ -001d3340: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001d3350: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001d3360: 2020 2020 616e 6420 2262 6f6f 7463 2220      and "bootc" 
│ │ │ -001d3370: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001d3380: 2e70 6163 6b61 6765 7320 616e 6420 6e6f  .packages and no
│ │ │ -001d3390: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ -001d33a0: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ -001d33b0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001d33c0: 2020 2020 616e 6420 226f 7374 7265 6522      and "ostree"
│ │ │ -001d33d0: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ -001d33e0: 5f63 6d64 6c69 6e65 2029 2061 6e64 206e  _cmdline ) and n
│ │ │ -001d33f0: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ -001d3400: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ -001d3410: 2069 6e0a 2020 2020 5b22 646f 636b 6572   in.    ["docker
│ │ │ -001d3420: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ -001d3430: 7a22 2c20 2270 6f64 6d61 6e22 2c20 2263  z", "podman", "c
│ │ │ -001d3440: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ -001d3450: 202d 206d 6f75 6e74 5f69 6e66 6f20 6973   - mount_info is
│ │ │ -001d3460: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ -001d3470: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001d3480: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ -001d3490: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ -001d34a0: 6f75 7420 7c20 6c65 6e67 7468 2026 6774  out | length >
│ │ │ -001d34b0: 3b20 3029 2920 6f72 2028 222d 2d66 7374  ; 0)) or ("--fst
│ │ │ -001d34c0: 6162 220a 2020 2020 7c20 6c65 6e67 7468  ab".    | length
│ │ │ -001d34d0: 203d 3d20 3029 0a20 2074 6167 733a 0a20   == 0).  tags:. 
│ │ │ -001d34e0: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -001d34f0: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -001d3500: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -001d3510: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -001d3520: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -001d3530: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ -001d3540: 6e5f 626f 6f74 5f6e 6f65 7865 630a 2020  n_boot_noexec.  
│ │ │ -001d3550: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -001d3560: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e  ed.
│ │ │ -001d3570: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation S │ │ │ -001d3620: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ -001d3630: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -001d2260: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -001d2290: 696f 6e3a 3c2f 7468 3e3c 7464 3e68 6967 ion:hig │ │ │ -001d22a0: 683c 2f74 643e 3c2f 7472 3e3c 7472 3e3c h
Strate │ │ │ -001d22e0: 6779 3a3c 2f74 683e 3c74 643e 636f 6e66 gy:conf │ │ │ -001d22f0: 6967 7572 653c 2f74 643e 3c2f 7472 3e3c igure
│ │ │ -001d36d0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Reboot:false
# Remediation
│ │ │ -001d36f0: 2069 7320 6170 706c 6963 6162 6c65 206f   is applicable o
│ │ │ -001d3700: 6e6c 7920 696e 2063 6572 7461 696e 2070  nly in certain p
│ │ │ -001d3710: 6c61 7466 6f72 6d73 0a69 6620 2820 2120  latforms.if ( ! 
│ │ │ -001d3720: 2820 7b20 7270 6d20 2d2d 7175 6965 7420  ( { rpm --quiet 
│ │ │ -001d3730: 2d71 206b 6572 6e65 6c20 3b7d 2026 616d  -q kernel ;} &am
│ │ │ -001d3740: 703b 2661 6d70 3b20 7b20 7270 6d20 2d2d  p;& { rpm --
│ │ │ -001d3750: 7175 6965 7420 2d71 2072 706d 2d6f 7374  quiet -q rpm-ost
│ │ │ -001d3760: 7265 6520 3b7d 2026 616d 703b 2661 6d70  ree ;} &&
│ │ │ -001d3770: 3b20 7b20 7270 6d20 2d2d 7175 6965 7420  ; { rpm --quiet 
│ │ │ -001d3780: 2d71 2062 6f6f 7463 203b 7d20 2661 6d70  -q bootc ;} &
│ │ │ -001d3790: 3b26 616d 703b 207b 2021 2072 706d 202d  ;& { ! rpm -
│ │ │ -001d37a0: 2d71 7569 6574 202d 7120 6f70 656e 7368  -quiet -q opensh
│ │ │ -001d37b0: 6966 742d 6b75 6265 6c65 7420 3b7d 2026  ift-kubelet ;} &
│ │ │ -001d37c0: 616d 703b 2661 6d70 3b20 285b 202d 6620  amp;& ([ -f 
│ │ │ -001d37d0: 2f72 756e 2f6f 7374 7265 652d 626f 6f74  /run/ostree-boot
│ │ │ -001d37e0: 6564 205d 207c 7c20 5b20 2d4c 202f 6f73  ed ] || [ -L /os
│ │ │ -001d37f0: 7472 6565 205d 2920 2920 2661 6d70 3b26  tree ]) ) &&
│ │ │ -001d3800: 616d 703b 2021 2028 205b 202d 6620 2f2e  amp; ! ( [ -f /.
│ │ │ -001d3810: 646f 636b 6572 656e 7620 5d20 7c7c 205b  dockerenv ] || [
│ │ │ -001d3820: 202d 6620 2f72 756e 2f2e 636f 6e74 6169   -f /run/.contai
│ │ │ -001d3830: 6e65 7265 6e76 205d 2029 2029 3b20 7468  nerenv ] ) ); th
│ │ │ -001d3840: 656e 0a0a 6675 6e63 7469 6f6e 2070 6572  en..function per
│ │ │ -001d3850: 666f 726d 5f72 656d 6564 6961 7469 6f6e  form_remediation
│ │ │ -001d3860: 207b 0a0a 2020 2020 0a20 2020 2020 2020   {..    .       
│ │ │ -001d3870: 2023 2074 6865 206d 6f75 6e74 2070 6f69   # the mount poi
│ │ │ -001d3880: 6e74 202f 626f 6f74 2068 6173 2074 6f20  nt /boot has to 
│ │ │ -001d3890: 6265 2064 6566 696e 6564 2069 6e20 2f65  be defined in /e
│ │ │ -001d38a0: 7463 2f66 7374 6162 0a20 2020 2020 2020  tc/fstab.       
│ │ │ -001d38b0: 2023 2062 6566 6f72 6520 7468 6973 2072   # before this r
│ │ │ -001d38c0: 656d 6564 6961 7469 6f6e 2063 616e 2062  emediation can b
│ │ │ -001d38d0: 6520 6578 6563 7574 6564 2e20 496e 2063  e executed. In c
│ │ │ -001d38e0: 6173 6520 6974 2069 7320 6e6f 7420 6465  ase it is not de
│ │ │ -001d38f0: 6669 6e65 642c 2074 6865 0a20 2020 2020  fined, the.     
│ │ │ -001d3900: 2020 2023 2072 656d 6564 6961 7469 6f6e     # remediation
│ │ │ -001d3910: 2061 626f 7274 7320 616e 6420 6e6f 2063   aborts and no c
│ │ │ -001d3920: 6861 6e67 6573 2072 6567 6172 6469 6e67  hanges regarding
│ │ │ -001d3930: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ -001d3940: 2061 7265 2064 6f6e 652e 0a20 2020 2020   are done..     
│ │ │ -001d3950: 2020 206d 6f75 6e74 5f70 6f69 6e74 5f6d     mount_point_m
│ │ │ -001d3960: 6174 6368 5f72 6567 6578 703d 2224 2870  atch_regexp="$(p
│ │ │ -001d3970: 7269 6e74 6620 225e 5b5b 3a73 7061 6365  rintf "^[[:space
│ │ │ -001d3980: 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061  :]]*[^#].*[[:spa
│ │ │ -001d3990: 6365 3a5d 5d25 735b 5b3a 7370 6163 653a  ce:]]%s[[:space:
│ │ │ -001d39a0: 5d5d 2220 222f 626f 6f74 2229 220a 0a20  ]]" "/boot")".. 
│ │ │ -001d39b0: 2020 2067 7265 7020 2224 6d6f 756e 745f     grep "$mount_
│ │ │ -001d39c0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001d39d0: 7870 2220 2d71 202f 6574 632f 6673 7461  xp" -q /etc/fsta
│ │ │ -001d39e0: 6220 5c0a 2020 2020 2020 2020 7c7c 207b  b \.        || {
│ │ │ -001d39f0: 2065 6368 6f20 2254 6865 206d 6f75 6e74   echo "The mount
│ │ │ -001d3a00: 2070 6f69 6e74 2027 2f62 6f6f 7427 2069   point '/boot' i
│ │ │ -001d3a10: 7320 6e6f 7420 6576 656e 2069 6e20 2f65  s not even in /e
│ │ │ -001d3a20: 7463 2f66 7374 6162 2c20 736f 2077 6520  tc/fstab, so we 
│ │ │ -001d3a30: 6361 6e27 7420 7365 7420 7570 206d 6f75  can't set up mou
│ │ │ -001d3a40: 6e74 206f 7074 696f 6e73 2220 2667 743b  nt options" >
│ │ │ -001d3a50: 2661 6d70 3b32 3b0a 2020 2020 2020 2020  &2;.        
│ │ │ -001d3a60: 2020 2020 2020 2020 6563 686f 2022 4e6f          echo "No
│ │ │ -001d3a70: 7420 7265 6d65 6469 6174 696e 672c 2062  t remediating, b
│ │ │ -001d3a80: 6563 6175 7365 2074 6865 7265 2069 7320  ecause there is 
│ │ │ -001d3a90: 6e6f 2072 6563 6f72 6420 6f66 202f 626f  no record of /bo
│ │ │ -001d3aa0: 6f74 2069 6e20 2f65 7463 2f66 7374 6162  ot in /etc/fstab
│ │ │ -001d3ab0: 2220 2667 743b 2661 6d70 3b32 3b20 7265  " >&2; re
│ │ │ -001d3ac0: 7475 726e 2031 3b20 7d0a 2020 2020 0a0a  turn 1; }.    ..
│ │ │ -001d3ad0: 0a20 2020 206d 6f75 6e74 5f70 6f69 6e74  .    mount_point
│ │ │ -001d3ae0: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ -001d3af0: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ -001d3b00: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ -001d3b10: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ -001d3b20: 653a 5d5d 2220 2f62 6f6f 7429 220a 0a20  e:]]" /boot)".. 
│ │ │ -001d3b30: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ -001d3b40: 7420 706f 696e 7420 6973 206e 6f74 2069  t point is not i
│ │ │ -001d3b50: 6e20 2f65 7463 2f66 7374 6162 2c20 6765  n /etc/fstab, ge
│ │ │ -001d3b60: 7420 7072 6576 696f 7573 206d 6f75 6e74  t previous mount
│ │ │ -001d3b70: 206f 7074 696f 6e73 2066 726f 6d20 2f65   options from /e
│ │ │ -001d3b80: 7463 2f6d 7461 620a 2020 2020 6966 2021  tc/mtab.    if !
│ │ │ -001d3b90: 2067 7265 7020 2d71 2022 246d 6f75 6e74   grep -q "$mount
│ │ │ -001d3ba0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001d3bb0: 6578 7022 202f 6574 632f 6673 7461 623b  exp" /etc/fstab;
│ │ │ -001d3bc0: 2074 6865 6e0a 2020 2020 2020 2020 2320   then.        # 
│ │ │ -001d3bd0: 7275 6e74 696d 6520 6f70 7473 2077 6974  runtime opts wit
│ │ │ -001d3be0: 686f 7574 2073 6f6d 6520 6175 746f 6d61  hout some automa
│ │ │ -001d3bf0: 7469 6320 6b65 726e 656c 2f75 7365 7273  tic kernel/users
│ │ │ -001d3c00: 7061 6365 2d61 6464 6564 2064 6566 6175  pace-added defau
│ │ │ -001d3c10: 6c74 730a 2020 2020 2020 2020 7072 6576  lts.        prev
│ │ │ -001d3c20: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d  ious_mount_opts=
│ │ │ -001d3c30: 2428 6772 6570 2022 246d 6f75 6e74 5f70  $(grep "$mount_p
│ │ │ -001d3c40: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001d3c50: 7022 202f 6574 632f 6d74 6162 207c 2068  p" /etc/mtab | h
│ │ │ -001d3c60: 6561 6420 2d31 207c 2020 6177 6b20 277b  ead -1 |  awk '{
│ │ │ -001d3c70: 7072 696e 7420 2434 7d27 205c 0a20 2020  print $4}' \.   
│ │ │ -001d3c80: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -001d3c90: 207c 2073 6564 202d 4520 2273 2f28 7277   | sed -E "s/(rw
│ │ │ -001d3ca0: 7c64 6566 6175 6c74 737c 7365 636c 6162  |defaults|seclab
│ │ │ -001d3cb0: 656c 7c6e 6f65 7865 6329 282c 7c24 292f  el|noexec)(,|$)/
│ │ │ -001d3cc0: 2f67 3b73 2f2c 242f 2f22 290a 2020 2020  /g;s/,$//").    
│ │ │ -001d3cd0: 2020 2020 5b20 2224 7072 6576 696f 7573      [ "$previous
│ │ │ -001d3ce0: 5f6d 6f75 6e74 5f6f 7074 7322 205d 2026  _mount_opts" ] &
│ │ │ -001d3cf0: 616d 703b 2661 6d70 3b20 7072 6576 696f  amp;& previo
│ │ │ -001d3d00: 7573 5f6d 6f75 6e74 5f6f 7074 732b 3d22  us_mount_opts+="
│ │ │ -001d3d10: 2c22 0a20 2020 2020 2020 2023 2049 6e20  ,".        # In 
│ │ │ -001d3d20: 6973 6f39 3636 3020 6669 6c65 7379 7374  iso9660 filesyst
│ │ │ -001d3d30: 656d 7320 6d74 6162 2063 6f75 6c64 2064  ems mtab could d
│ │ │ -001d3d40: 6573 6372 6962 6520 6120 2262 6c6f 636b  escribe a "block
│ │ │ -001d3d50: 7369 7a65 2220 7661 6c75 652c 2074 6869  size" value, thi
│ │ │ -001d3d60: 7320 7368 6f75 6c64 2062 6520 7265 666c  s should be refl
│ │ │ -001d3d70: 6563 7465 6420 696e 0a20 2020 2020 2020  ected in.       
│ │ │ -001d3d80: 2023 2066 7374 6162 2061 7320 2262 6c6f   # fstab as "blo
│ │ │ -001d3d90: 636b 222e 2020 5468 6520 6e65 7874 2076  ck".  The next v
│ │ │ -001d3da0: 6172 6961 626c 6520 6973 2074 6f20 7361  ariable is to sa
│ │ │ -001d3db0: 7469 7366 7920 7368 656c 6c63 6865 636b  tisfy shellcheck
│ │ │ -001d3dc0: 2053 4332 3035 302e 0a20 2020 2020 2020   SC2050..       
│ │ │ -001d3dd0: 2066 735f 7479 7065 3d22 220a 2020 2020   fs_type="".    
│ │ │ -001d3de0: 2020 2020 6966 205b 2020 2224 6673 5f74      if [  "$fs_t
│ │ │ -001d3df0: 7970 6522 203d 3d20 2269 736f 3936 3630  ype" == "iso9660
│ │ │ -001d3e00: 2220 5d20 3b20 7468 656e 0a20 2020 2020  " ] ; then.     
│ │ │ -001d3e10: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ -001d3e20: 6d6f 756e 745f 6f70 7473 3d24 2873 6564  mount_opts=$(sed
│ │ │ -001d3e30: 2027 732f 626c 6f63 6b73 697a 653d 2f62   's/blocksize=/b
│ │ │ -001d3e40: 6c6f 636b 3d2f 2720 266c 743b 266c 743b  lock=/' <<
│ │ │ -001d3e50: 266c 743b 2022 2470 7265 7669 6f75 735f  < "$previous_
│ │ │ -001d3e60: 6d6f 756e 745f 6f70 7473 2229 0a20 2020  mount_opts").   
│ │ │ -001d3e70: 2020 2020 2066 690a 2020 2020 2020 2020       fi.        
│ │ │ -001d3e80: 6563 686f 2022 202f 626f 6f74 2020 6465  echo " /boot  de
│ │ │ -001d3e90: 6661 756c 7473 2c24 7b70 7265 7669 6f75  faults,${previou
│ │ │ -001d3ea0: 735f 6d6f 756e 745f 6f70 7473 7d6e 6f65  s_mount_opts}noe
│ │ │ -001d3eb0: 7865 6320 3020 3022 2026 6774 3b26 6774  xec 0 0" >>
│ │ │ -001d3ec0: 3b20 2f65 7463 2f66 7374 6162 0a20 2020  ; /etc/fstab.   
│ │ │ -001d3ed0: 2023 2049 6620 7468 6520 6d6f 756e 745f   # If the mount_
│ │ │ -001d3ee0: 6f70 7420 6f70 7469 6f6e 2069 7320 6e6f  opt option is no
│ │ │ -001d3ef0: 7420 616c 7265 6164 7920 696e 2074 6865  t already in the
│ │ │ -001d3f00: 206d 6f75 6e74 2070 6f69 6e74 2773 202f   mount point's /
│ │ │ -001d3f10: 6574 632f 6673 7461 6220 656e 7472 792c  etc/fstab entry,
│ │ │ -001d3f20: 2061 6464 2069 740a 2020 2020 656c 6966   add it.    elif
│ │ │ -001d3f30: 2021 2067 7265 7020 2224 6d6f 756e 745f   ! grep "$mount_
│ │ │ -001d3f40: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001d3f50: 7870 2220 2f65 7463 2f66 7374 6162 207c  xp" /etc/fstab |
│ │ │ -001d3f60: 2067 7265 7020 2d71 2022 6e6f 6578 6563   grep -q "noexec
│ │ │ -001d3f70: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ -001d3f80: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001d3f90: 7074 733d 2428 6772 6570 2022 246d 6f75  pts=$(grep "$mou
│ │ │ -001d3fa0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001d3fb0: 6567 6578 7022 202f 6574 632f 6673 7461  egexp" /etc/fsta
│ │ │ -001d3fc0: 6220 7c20 6177 6b20 277b 7072 696e 7420  b | awk '{print 
│ │ │ -001d3fd0: 2434 7d27 290a 2020 2020 2020 2020 7365  $4}').        se
│ │ │ -001d3fe0: 6420 2d69 2022 737c 5c28 247b 6d6f 756e  d -i "s|\(${moun
│ │ │ -001d3ff0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001d4000: 6765 7870 7d2e 2a24 7b70 7265 7669 6f75  gexp}.*${previou
│ │ │ -001d4010: 735f 6d6f 756e 745f 6f70 7473 7d5c 297c  s_mount_opts}\)|
│ │ │ -001d4020: 5c31 2c6e 6f65 7865 637c 2220 2f65 7463  \1,noexec|" /etc
│ │ │ -001d4030: 2f66 7374 6162 0a20 2020 2066 690a 0a0a  /fstab.    fi...
│ │ │ -001d4040: 2020 2020 6966 206d 6b64 6972 202d 7020      if mkdir -p 
│ │ │ -001d4050: 222f 626f 6f74 223b 2074 6865 6e0a 2020  "/boot"; then.  
│ │ │ -001d4060: 2020 2020 2020 6966 206d 6f75 6e74 706f        if mountpo
│ │ │ -001d4070: 696e 7420 2d71 2022 2f62 6f6f 7422 3b20  int -q "/boot"; 
│ │ │ -001d4080: 7468 656e 0a20 2020 2020 2020 2020 2020  then.           
│ │ │ -001d4090: 206d 6f75 6e74 202d 6f20 7265 6d6f 756e   mount -o remoun
│ │ │ -001d40a0: 7420 2d2d 7461 7267 6574 2022 2f62 6f6f  t --target "/boo
│ │ │ -001d40b0: 7422 0a20 2020 2020 2020 2066 690a 2020  t".        fi.  
│ │ │ -001d40c0: 2020 6669 0a7d 0a0a 7065 7266 6f72 6d5f    fi.}..perform_
│ │ │ -001d40d0: 7265 6d65 6469 6174 696f 6e0a 0a65 6c73  remediation..els
│ │ │ -001d40e0: 650a 2020 2020 2667 743b 2661 6d70 3b32  e.    >&2
│ │ │ -001d40f0: 2065 6368 6f20 2752 656d 6564 6961 7469   echo 'Remediati
│ │ │ -001d4100: 6f6e 2069 7320 6e6f 7420 6170 706c 6963  on is not applic
│ │ │ -001d4110: 6162 6c65 2c20 6e6f 7468 696e 6720 7761  able, nothing wa
│ │ │ -001d4120: 7320 646f 6e65 270a 6669 0a3c 2f63 6f64  s done'.fi.
│ │ │ +001d2060: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c
- n
│ │ │ +001d20f0: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ +001d2100: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ +001d2110: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ +001d2120: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ +001d2130: 0a20 2074 6167 733a 0a20 202d 2063 6f6e  .  tags:.  - con
│ │ │ +001d2140: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +001d2150: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ +001d2160: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ +001d2170: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ +001d2180: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ +001d2190: 6f75 6e74 5f6f 7074 696f 6e5f 626f 6f74  ount_option_boot
│ │ │ +001d21a0: 5f6e 6f65 7865 630a 2020 2d20 6e6f 5f72  _noexec.  - no_r
│ │ │ +001d21b0: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +001d21c0: 6e61 6d65 3a20 2741 6464 206e 6f65 7865  name: 'Add noexe
│ │ │ +001d21d0: 6320 4f70 7469 6f6e 2074 6f20 2f62 6f6f  c Option to /boo
│ │ │ +001d21e0: 743a 2043 6865 636b 2069 6e66 6f72 6d61  t: Check informa
│ │ │ +001d21f0: 7469 6f6e 2061 7373 6f63 6961 7465 6420  tion associated 
│ │ │ +001d2200: 746f 206d 6f75 6e74 706f 696e 7427 0a20  to mountpoint'. 
│ │ │ +001d2210: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +001d2220: 2e63 6f6d 6d61 6e64 3a20 6669 6e64 6d6e  .command: findmn
│ │ │ +001d2230: 7420 2d2d 6673 7461 6220 272f 626f 6f74  t --fstab '/boot
│ │ │ +001d2240: 270a 2020 7265 6769 7374 6572 3a20 6465  '.  register: de
│ │ │ +001d2250: 7669 6365 5f6e 616d 650a 2020 6661 696c  vice_name.  fail
│ │ │ +001d2260: 6564 5f77 6865 6e3a 2064 6576 6963 655f  ed_when: device_
│ │ │ +001d2270: 6e61 6d65 2e72 6320 2667 743b 2031 0a20  name.rc > 1. 
│ │ │ +001d2280: 2063 6861 6e67 6564 5f77 6865 6e3a 2066   changed_when: f
│ │ │ +001d2290: 616c 7365 0a20 2063 6865 636b 5f6d 6f64  alse.  check_mod
│ │ │ +001d22a0: 653a 2066 616c 7365 0a20 2077 6865 6e3a  e: false.  when:
│ │ │ +001d22b0: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ +001d22c0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001d22d0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001d22e0: 2272 706d 2d6f 7374 7265 6522 2069 6e20  "rpm-ostree" in 
│ │ │ +001d22f0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001d2300: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ +001d2310: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ +001d2320: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001d2330: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ +001d2340: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ +001d2350: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001d2360: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ +001d2370: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001d2380: 6c65 5f70 726f 635f 636d 646c 696e 6520  le_proc_cmdline 
│ │ │ +001d2390: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ +001d23a0: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ +001d23b0: 6f6e 5f74 7970 6520 696e 0a20 2020 205b  on_type in.    [
│ │ │ +001d23c0: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ +001d23d0: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ +001d23e0: 616e 222c 2022 636f 6e74 6169 6e65 7222  an", "container"
│ │ │ +001d23f0: 5d20 2920 290a 2020 7461 6773 3a0a 2020  ] ) ).  tags:.  
│ │ │ +001d2400: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001d2410: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001d2420: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001d2430: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001d2440: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001d2450: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001d2460: 5f62 6f6f 745f 6e6f 6578 6563 0a20 202d  _boot_noexec.  -
│ │ │ +001d2470: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +001d2480: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ +001d2490: 6e6f 6578 6563 204f 7074 696f 6e20 746f  noexec Option to
│ │ │ +001d24a0: 202f 626f 6f74 3a20 4372 6561 7465 206d   /boot: Create m
│ │ │ +001d24b0: 6f75 6e74 5f69 6e66 6f20 6469 6374 696f  ount_info dictio
│ │ │ +001d24c0: 6e61 7279 2076 6172 6961 626c 6527 0a20  nary variable'. 
│ │ │ +001d24d0: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ +001d24e0: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ +001d24f0: 6f75 6e74 5f69 6e66 6f7c 6465 6661 756c  ount_info|defaul
│ │ │ +001d2500: 7428 7b7d 297c 636f 6d62 696e 6528 7b69  t({})|combine({i
│ │ │ +001d2510: 7465 6d2e 303a 2069 7465 6d2e 317d 2920  tem.0: item.1}) 
│ │ │ +001d2520: 7d7d 270a 2020 7769 7468 5f74 6f67 6574  }}'.  with_toget
│ │ │ +001d2530: 6865 723a 0a20 202d 2027 7b7b 2064 6576  her:.  - '{{ dev
│ │ │ +001d2540: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ +001d2550: 6c69 6e65 735b 305d 2e73 706c 6974 2829  lines[0].split()
│ │ │ +001d2560: 207c 206d 6170 2827 276c 6f77 6572 2727   | map(''lower''
│ │ │ +001d2570: 2920 7c20 6c69 7374 207d 7d27 0a20 202d  ) | list }}'.  -
│ │ │ +001d2580: 2027 7b7b 2064 6576 6963 655f 6e61 6d65   '{{ device_name
│ │ │ +001d2590: 2e73 7464 6f75 745f 6c69 6e65 735b 315d  .stdout_lines[1]
│ │ │ +001d25a0: 2e73 706c 6974 2829 207c 206c 6973 7420  .split() | list 
│ │ │ +001d25b0: 7d7d 270a 2020 7768 656e 3a0a 2020 2d20  }}'.  when:.  - 
│ │ │ +001d25c0: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ +001d25d0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001d25e0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001d25f0: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ +001d2600: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001d2610: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ +001d2620: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +001d2630: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001d2640: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ +001d2650: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ +001d2660: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001d2670: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ +001d2680: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001d2690: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ +001d26a0: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ +001d26b0: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ +001d26c0: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ +001d26d0: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +001d26e0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +001d26f0: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ +001d2700: 2029 2029 0a20 202d 2064 6576 6963 655f   ) ).  - device_
│ │ │ +001d2710: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ +001d2720: 6566 696e 6564 2061 6e64 2064 6576 6963  efined and devic
│ │ │ +001d2730: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ +001d2740: 6e65 7320 6973 2064 6566 696e 6564 0a20  nes is defined. 
│ │ │ +001d2750: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ +001d2760: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ +001d2770: 2667 743b 2030 290a 2020 7461 6773 3a0a  > 0).  tags:.
│ │ │ +001d2780: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +001d2790: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +001d27a0: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +001d27b0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +001d27c0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001d27d0: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ +001d27e0: 6f6e 5f62 6f6f 745f 6e6f 6578 6563 0a20  on_boot_noexec. 
│ │ │ +001d27f0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +001d2800: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ +001d2810: 6420 6e6f 6578 6563 204f 7074 696f 6e20  d noexec Option 
│ │ │ +001d2820: 746f 202f 626f 6f74 3a20 4966 202f 626f  to /boot: If /bo
│ │ │ +001d2830: 6f74 206e 6f74 206d 6f75 6e74 6564 2c20  ot not mounted, 
│ │ │ +001d2840: 6372 6166 7420 6d6f 756e 745f 696e 666f  craft mount_info
│ │ │ +001d2850: 206d 616e 7561 6c6c 7927 0a20 2073 6574   manually'.  set
│ │ │ +001d2860: 5f66 6163 743a 0a20 2020 206d 6f75 6e74  _fact:.    mount
│ │ │ +001d2870: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74  _info: '{{ mount
│ │ │ +001d2880: 5f69 6e66 6f7c 6465 6661 756c 7428 7b7d  _info|default({}
│ │ │ +001d2890: 297c 636f 6d62 696e 6528 7b69 7465 6d2e  )|combine({item.
│ │ │ +001d28a0: 303a 2069 7465 6d2e 317d 2920 7d7d 270a  0: item.1}) }}'.
│ │ │ +001d28b0: 2020 7769 7468 5f74 6f67 6574 6865 723a    with_together:
│ │ │ +001d28c0: 0a20 202d 202d 2074 6172 6765 740a 2020  .  - - target.  
│ │ │ +001d28d0: 2020 2d20 736f 7572 6365 0a20 2020 202d    - source.    -
│ │ │ +001d28e0: 2066 7374 7970 650a 2020 2020 2d20 6f70   fstype.    - op
│ │ │ +001d28f0: 7469 6f6e 730a 2020 2d20 2d20 2f62 6f6f  tions.  - - /boo
│ │ │ +001d2900: 740a 2020 2020 2d20 2727 0a20 2020 202d  t.    - ''.    -
│ │ │ +001d2910: 2027 270a 2020 2020 2d20 6465 6661 756c   ''.    - defaul
│ │ │ +001d2920: 7473 0a20 2077 6865 6e3a 0a20 202d 2028  ts.  when:.  - (
│ │ │ +001d2930: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +001d2940: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001d2950: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ +001d2960: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ +001d2970: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001d2980: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ +001d2990: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ +001d29a0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001d29b0: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ +001d29c0: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ +001d29d0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001d29e0: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ +001d29f0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001d2a00: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ +001d2a10: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ +001d2a20: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ +001d2a30: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ +001d2a40: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ +001d2a50: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ +001d2a60: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ +001d2a70: 2920 290a 2020 2d20 2822 2d2d 6673 7461  ) ).  - ("--fsta
│ │ │ +001d2a80: 6222 207c 206c 656e 6774 6820 3d3d 2030  b" | length == 0
│ │ │ +001d2a90: 290a 2020 2d20 6465 7669 6365 5f6e 616d  ).  - device_nam
│ │ │ +001d2aa0: 652e 7374 646f 7574 2069 7320 6465 6669  e.stdout is defi
│ │ │ +001d2ab0: 6e65 6420 616e 6420 6465 7669 6365 5f6e  ned and device_n
│ │ │ +001d2ac0: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ +001d2ad0: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ +001d2ae0: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ +001d2af0: 6f75 7420 7c20 6c65 6e67 7468 203d 3d20  out | length == 
│ │ │ +001d2b00: 3029 0a20 2074 6167 733a 0a20 202d 2063  0).  tags:.  - c
│ │ │ +001d2b10: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +001d2b20: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +001d2b30: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +001d2b40: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +001d2b50: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001d2b60: 206d 6f75 6e74 5f6f 7074 696f 6e5f 626f   mount_option_bo
│ │ │ +001d2b70: 6f74 5f6e 6f65 7865 630a 2020 2d20 6e6f  ot_noexec.  - no
│ │ │ +001d2b80: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +001d2b90: 2d20 6e61 6d65 3a20 2741 6464 206e 6f65  - name: 'Add noe
│ │ │ +001d2ba0: 7865 6320 4f70 7469 6f6e 2074 6f20 2f62  xec Option to /b
│ │ │ +001d2bb0: 6f6f 743a 204d 616b 6520 7375 7265 206e  oot: Make sure n
│ │ │ +001d2bc0: 6f65 7865 6320 6f70 7469 6f6e 2069 7320  oexec option is 
│ │ │ +001d2bd0: 7061 7274 206f 6620 7468 6520 746f 202f  part of the to /
│ │ │ +001d2be0: 626f 6f74 0a20 2020 206f 7074 696f 6e73  boot.    options
│ │ │ +001d2bf0: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ +001d2c00: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ +001d2c10: 7b20 6d6f 756e 745f 696e 666f 207c 2063  { mount_info | c
│ │ │ +001d2c20: 6f6d 6269 6e65 2820 7b27 276f 7074 696f  ombine( {''optio
│ │ │ +001d2c30: 6e73 2727 3a27 2727 277e 286d 6f75 6e74  ns'':''''~(mount
│ │ │ +001d2c40: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c0a  _info.options |.
│ │ │ +001d2c50: 2020 2020 2020 6465 6661 756c 7428 2727        default(''
│ │ │ +001d2c60: 2727 2929 7e28 2727 2c27 2720 6966 2028  ''))~('','' if (
│ │ │ +001d2c70: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ +001d2c80: 6e73 207c 2064 6566 6175 6c74 2827 2727  ns | default('''
│ │ │ +001d2c90: 2729 2920 656c 7365 2027 2727 2729 7e27  ')) else '''')~'
│ │ │ +001d2ca0: 276e 6f65 7865 6327 270a 2020 2020 2020  'noexec''.      
│ │ │ +001d2cb0: 7d29 207d 7d27 0a20 2077 6865 6e3a 0a20  }) }}'.  when:. 
│ │ │ +001d2cc0: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ +001d2cd0: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +001d2ce0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001d2cf0: 6420 2272 706d 2d6f 7374 7265 6522 2069  d "rpm-ostree" i
│ │ │ +001d2d00: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001d2d10: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +001d2d20: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ +001d2d30: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001d2d40: 6573 2061 6e64 206e 6f74 2022 6f70 656e  es and not "open
│ │ │ +001d2d50: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ +001d2d60: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001d2d70: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +001d2d80: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ +001d2d90: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ +001d2da0: 6520 2920 616e 6420 6e6f 7420 2820 616e  e ) and not ( an
│ │ │ +001d2db0: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ +001d2dc0: 7469 6f6e 5f74 7970 6520 696e 0a20 2020  tion_type in.   
│ │ │ +001d2dd0: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ +001d2de0: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ +001d2df0: 646d 616e 222c 2022 636f 6e74 6169 6e65  dman", "containe
│ │ │ +001d2e00: 7222 5d20 2920 290a 2020 2d20 6d6f 756e  r"] ) ).  - moun
│ │ │ +001d2e10: 745f 696e 666f 2069 7320 6465 6669 6e65  t_info is define
│ │ │ +001d2e20: 6420 616e 6420 226e 6f65 7865 6322 206e  d and "noexec" n
│ │ │ +001d2e30: 6f74 2069 6e20 286d 6f75 6e74 5f69 6e66  ot in (mount_inf
│ │ │ +001d2e40: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ +001d2e50: 756c 7428 2727 2929 0a20 2074 6167 733a  ult('')).  tags:
│ │ │ +001d2e60: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +001d2e70: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +001d2e80: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001d2e90: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001d2ea0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001d2eb0: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001d2ec0: 696f 6e5f 626f 6f74 5f6e 6f65 7865 630a  ion_boot_noexec.
│ │ │ +001d2ed0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001d2ee0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001d2ef0: 6464 206e 6f65 7865 6320 4f70 7469 6f6e  dd noexec Option
│ │ │ +001d2f00: 2074 6f20 2f62 6f6f 743a 2045 6e73 7572   to /boot: Ensur
│ │ │ +001d2f10: 6520 2f62 6f6f 7420 6973 206d 6f75 6e74  e /boot is mount
│ │ │ +001d2f20: 6564 2077 6974 6820 6e6f 6578 6563 206f  ed with noexec o
│ │ │ +001d2f30: 7074 696f 6e27 0a20 2061 6e73 6962 6c65  ption'.  ansible
│ │ │ +001d2f40: 2e70 6f73 6978 2e6d 6f75 6e74 3a0a 2020  .posix.mount:.  
│ │ │ +001d2f50: 2020 7061 7468 3a20 2f62 6f6f 740a 2020    path: /boot.  
│ │ │ +001d2f60: 2020 7372 633a 2027 7b7b 206d 6f75 6e74    src: '{{ mount
│ │ │ +001d2f70: 5f69 6e66 6f2e 736f 7572 6365 207c 2064  _info.source | d
│ │ │ +001d2f80: 6566 6175 6c74 2827 2727 2729 207d 7d27  efault('''') }}'
│ │ │ +001d2f90: 0a20 2020 206f 7074 733a 2027 7b7b 206d  .    opts: '{{ m
│ │ │ +001d2fa0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ +001d2fb0: 7320 7c20 6465 6661 756c 7428 2727 2727  s | default(''''
│ │ │ +001d2fc0: 2920 7d7d 270a 2020 2020 7374 6174 653a  ) }}'.    state:
│ │ │ +001d2fd0: 206d 6f75 6e74 6564 0a20 2020 2066 7374   mounted.    fst
│ │ │ +001d2fe0: 7970 653a 2027 7b7b 206d 6f75 6e74 5f69  ype: '{{ mount_i
│ │ │ +001d2ff0: 6e66 6f2e 6673 7479 7065 207c 2064 6566  nfo.fstype | def
│ │ │ +001d3000: 6175 6c74 2827 2727 2729 207d 7d27 0a20  ault('''') }}'. 
│ │ │ +001d3010: 2072 6567 6973 7465 723a 206d 6f75 6e74   register: mount
│ │ │ +001d3020: 5f72 6573 756c 740a 2020 6661 696c 6564  _result.  failed
│ │ │ +001d3030: 5f77 6865 6e3a 0a20 202d 206d 6f75 6e74  _when:.  - mount
│ │ │ +001d3040: 5f72 6573 756c 7420 6973 2066 6169 6c65  _result is faile
│ │ │ +001d3050: 640a 2020 2d20 2727 2774 6172 6765 7420  d.  - '''target 
│ │ │ +001d3060: 6973 2062 7573 7927 2720 6e6f 7420 696e  is busy'' not in
│ │ │ +001d3070: 2028 6d6f 756e 745f 7265 7375 6c74 2e6d   (mount_result.m
│ │ │ +001d3080: 7367 207c 2064 6566 6175 6c74 2827 2727  sg | default('''
│ │ │ +001d3090: 2729 2927 0a20 202d 2027 2727 616c 7265  '))'.  - '''alre
│ │ │ +001d30a0: 6164 7920 6d6f 756e 7465 6427 2720 6e6f  ady mounted'' no
│ │ │ +001d30b0: 7420 696e 2028 6d6f 756e 745f 7265 7375  t in (mount_resu
│ │ │ +001d30c0: 6c74 2e6d 7367 207c 2064 6566 6175 6c74  lt.msg | default
│ │ │ +001d30d0: 2827 2727 2729 2927 0a20 2077 6865 6e3a  (''''))'.  when:
│ │ │ +001d30e0: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ +001d30f0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +001d3100: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001d3110: 616e 6420 2272 706d 2d6f 7374 7265 6522  and "rpm-ostree"
│ │ │ +001d3120: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001d3130: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001d3140: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ +001d3150: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001d3160: 6167 6573 2061 6e64 206e 6f74 2022 6f70  ages and not "op
│ │ │ +001d3170: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ +001d3180: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001d3190: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001d31a0: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ +001d31b0: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ +001d31c0: 696e 6520 2920 616e 6420 6e6f 7420 2820  ine ) and not ( 
│ │ │ +001d31d0: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ +001d31e0: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20  zation_type in. 
│ │ │ +001d31f0: 2020 205b 2264 6f63 6b65 7222 2c20 226c     ["docker", "l
│ │ │ +001d3200: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ +001d3210: 706f 646d 616e 222c 2022 636f 6e74 6169  podman", "contai
│ │ │ +001d3220: 6e65 7222 5d20 2920 290a 2020 2d20 6d6f  ner"] ) ).  - mo
│ │ │ +001d3230: 756e 745f 696e 666f 2069 7320 6465 6669  unt_info is defi
│ │ │ +001d3240: 6e65 640a 2020 2d20 2864 6576 6963 655f  ned.  - (device_
│ │ │ +001d3250: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ +001d3260: 6566 696e 6564 2061 6e64 2028 6465 7669  efined and (devi
│ │ │ +001d3270: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ +001d3280: 206c 656e 6774 6820 2667 743b 2030 2929   length > 0))
│ │ │ +001d3290: 206f 7220 2822 2d2d 6673 7461 6222 0a20   or ("--fstab". 
│ │ │ +001d32a0: 2020 207c 206c 656e 6774 6820 3d3d 2030     | length == 0
│ │ │ +001d32b0: 290a 2020 7461 6773 3a0a 2020 2d20 636f  ).  tags:.  - co
│ │ │ +001d32c0: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001d32d0: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001d32e0: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001d32f0: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001d3300: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001d3310: 6d6f 756e 745f 6f70 7469 6f6e 5f62 6f6f  mount_option_boo
│ │ │ +001d3320: 745f 6e6f 6578 6563 0a20 202d 206e 6f5f  t_noexec.  - no_
│ │ │ +001d3330: 7265 626f 6f74 5f6e 6565 6465 640a 3c2f  reboot_needed.
Re │ │ │ +001d33f0: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ +001d3400: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
Compl │ │ │ +001d2040: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +001d2050: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +001d2070: 2f74 683e 3c74 643e 6869 6768 3c2f 7464 /th>high
Re │ │ │ +001d2090: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +001d20a0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:configure │ │ │ +001d20d0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
# 
│ │ │ +001d34c0: 5265 6d65 6469 6174 696f 6e20 6973 2061  Remediation is a
│ │ │ +001d34d0: 7070 6c69 6361 626c 6520 6f6e 6c79 2069  pplicable only i
│ │ │ +001d34e0: 6e20 6365 7274 6169 6e20 706c 6174 666f  n certain platfo
│ │ │ +001d34f0: 726d 730a 6966 2028 2021 2028 207b 2072  rms.if ( ! ( { r
│ │ │ +001d3500: 706d 202d 2d71 7569 6574 202d 7120 6b65  pm --quiet -q ke
│ │ │ +001d3510: 726e 656c 203b 7d20 2661 6d70 3b26 616d  rnel ;} &&am
│ │ │ +001d3520: 703b 207b 2072 706d 202d 2d71 7569 6574  p; { rpm --quiet
│ │ │ +001d3530: 202d 7120 7270 6d2d 6f73 7472 6565 203b   -q rpm-ostree ;
│ │ │ +001d3540: 7d20 2661 6d70 3b26 616d 703b 207b 2072  } && { r
│ │ │ +001d3550: 706d 202d 2d71 7569 6574 202d 7120 626f  pm --quiet -q bo
│ │ │ +001d3560: 6f74 6320 3b7d 2026 616d 703b 2661 6d70  otc ;} &&
│ │ │ +001d3570: 3b20 7b20 2120 7270 6d20 2d2d 7175 6965  ; { ! rpm --quie
│ │ │ +001d3580: 7420 2d71 206f 7065 6e73 6869 6674 2d6b  t -q openshift-k
│ │ │ +001d3590: 7562 656c 6574 203b 7d20 2661 6d70 3b26  ubelet ;} &&
│ │ │ +001d35a0: 616d 703b 2028 5b20 2d66 202f 7275 6e2f  amp; ([ -f /run/
│ │ │ +001d35b0: 6f73 7472 6565 2d62 6f6f 7465 6420 5d20  ostree-booted ] 
│ │ │ +001d35c0: 7c7c 205b 202d 4c20 2f6f 7374 7265 6520  || [ -L /ostree 
│ │ │ +001d35d0: 5d29 2029 2026 616d 703b 2661 6d70 3b20  ]) ) && 
│ │ │ +001d35e0: 2120 2820 5b20 2d66 202f 2e64 6f63 6b65  ! ( [ -f /.docke
│ │ │ +001d35f0: 7265 6e76 205d 207c 7c20 5b20 2d66 202f  renv ] || [ -f /
│ │ │ +001d3600: 7275 6e2f 2e63 6f6e 7461 696e 6572 656e  run/.containeren
│ │ │ +001d3610: 7620 5d20 2920 293b 2074 6865 6e0a 0a66  v ] ) ); then..f
│ │ │ +001d3620: 756e 6374 696f 6e20 7065 7266 6f72 6d5f  unction perform_
│ │ │ +001d3630: 7265 6d65 6469 6174 696f 6e20 7b0a 0a20  remediation {.. 
│ │ │ +001d3640: 2020 200a 2020 2020 2020 2020 2320 7468     .        # th
│ │ │ +001d3650: 6520 6d6f 756e 7420 706f 696e 7420 2f62  e mount point /b
│ │ │ +001d3660: 6f6f 7420 6861 7320 746f 2062 6520 6465  oot has to be de
│ │ │ +001d3670: 6669 6e65 6420 696e 202f 6574 632f 6673  fined in /etc/fs
│ │ │ +001d3680: 7461 620a 2020 2020 2020 2020 2320 6265  tab.        # be
│ │ │ +001d3690: 666f 7265 2074 6869 7320 7265 6d65 6469  fore this remedi
│ │ │ +001d36a0: 6174 696f 6e20 6361 6e20 6265 2065 7865  ation can be exe
│ │ │ +001d36b0: 6375 7465 642e 2049 6e20 6361 7365 2069  cuted. In case i
│ │ │ +001d36c0: 7420 6973 206e 6f74 2064 6566 696e 6564  t is not defined
│ │ │ +001d36d0: 2c20 7468 650a 2020 2020 2020 2020 2320  , the.        # 
│ │ │ +001d36e0: 7265 6d65 6469 6174 696f 6e20 6162 6f72  remediation abor
│ │ │ +001d36f0: 7473 2061 6e64 206e 6f20 6368 616e 6765  ts and no change
│ │ │ +001d3700: 7320 7265 6761 7264 696e 6720 7468 6520  s regarding the 
│ │ │ +001d3710: 6d6f 756e 7420 706f 696e 7420 6172 6520  mount point are 
│ │ │ +001d3720: 646f 6e65 2e0a 2020 2020 2020 2020 6d6f  done..        mo
│ │ │ +001d3730: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001d3740: 7265 6765 7870 3d22 2428 7072 696e 7466  regexp="$(printf
│ │ │ +001d3750: 2022 5e5b 5b3a 7370 6163 653a 5d5d 2a5b   "^[[:space:]]*[
│ │ │ +001d3760: 5e23 5d2e 2a5b 5b3a 7370 6163 653a 5d5d  ^#].*[[:space:]]
│ │ │ +001d3770: 2573 5b5b 3a73 7061 6365 3a5d 5d22 2022  %s[[:space:]]" "
│ │ │ +001d3780: 2f62 6f6f 7422 2922 0a0a 2020 2020 6772  /boot")"..    gr
│ │ │ +001d3790: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ +001d37a0: 5f6d 6174 6368 5f72 6567 6578 7022 202d  _match_regexp" -
│ │ │ +001d37b0: 7120 2f65 7463 2f66 7374 6162 205c 0a20  q /etc/fstab \. 
│ │ │ +001d37c0: 2020 2020 2020 207c 7c20 7b20 6563 686f         || { echo
│ │ │ +001d37d0: 2022 5468 6520 6d6f 756e 7420 706f 696e   "The mount poin
│ │ │ +001d37e0: 7420 272f 626f 6f74 2720 6973 206e 6f74  t '/boot' is not
│ │ │ +001d37f0: 2065 7665 6e20 696e 202f 6574 632f 6673   even in /etc/fs
│ │ │ +001d3800: 7461 622c 2073 6f20 7765 2063 616e 2774  tab, so we can't
│ │ │ +001d3810: 2073 6574 2075 7020 6d6f 756e 7420 6f70   set up mount op
│ │ │ +001d3820: 7469 6f6e 7322 2026 6774 3b26 616d 703b  tions" >&
│ │ │ +001d3830: 323b 0a20 2020 2020 2020 2020 2020 2020  2;.             
│ │ │ +001d3840: 2020 2065 6368 6f20 224e 6f74 2072 656d     echo "Not rem
│ │ │ +001d3850: 6564 6961 7469 6e67 2c20 6265 6361 7573  ediating, becaus
│ │ │ +001d3860: 6520 7468 6572 6520 6973 206e 6f20 7265  e there is no re
│ │ │ +001d3870: 636f 7264 206f 6620 2f62 6f6f 7420 696e  cord of /boot in
│ │ │ +001d3880: 202f 6574 632f 6673 7461 6222 2026 6774   /etc/fstab" >
│ │ │ +001d3890: 3b26 616d 703b 323b 2072 6574 7572 6e20  ;&2; return 
│ │ │ +001d38a0: 313b 207d 0a20 2020 200a 0a0a 2020 2020  1; }.    ...    
│ │ │ +001d38b0: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001d38c0: 685f 7265 6765 7870 3d22 2428 7072 696e  h_regexp="$(prin
│ │ │ +001d38d0: 7466 2022 5e5b 5b3a 7370 6163 653a 5d5d  tf "^[[:space:]]
│ │ │ +001d38e0: 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163 653a  *[^#].*[[:space:
│ │ │ +001d38f0: 5d5d 2573 5b5b 3a73 7061 6365 3a5d 5d22  ]]%s[[:space:]]"
│ │ │ +001d3900: 202f 626f 6f74 2922 0a0a 2020 2020 2320   /boot)"..    # 
│ │ │ +001d3910: 4966 2074 6865 206d 6f75 6e74 2070 6f69  If the mount poi
│ │ │ +001d3920: 6e74 2069 7320 6e6f 7420 696e 202f 6574  nt is not in /et
│ │ │ +001d3930: 632f 6673 7461 622c 2067 6574 2070 7265  c/fstab, get pre
│ │ │ +001d3940: 7669 6f75 7320 6d6f 756e 7420 6f70 7469  vious mount opti
│ │ │ +001d3950: 6f6e 7320 6672 6f6d 202f 6574 632f 6d74  ons from /etc/mt
│ │ │ +001d3960: 6162 0a20 2020 2069 6620 2120 6772 6570  ab.    if ! grep
│ │ │ +001d3970: 202d 7120 2224 6d6f 756e 745f 706f 696e   -q "$mount_poin
│ │ │ +001d3980: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ +001d3990: 2f65 7463 2f66 7374 6162 3b20 7468 656e  /etc/fstab; then
│ │ │ +001d39a0: 0a20 2020 2020 2020 2023 2072 756e 7469  .        # runti
│ │ │ +001d39b0: 6d65 206f 7074 7320 7769 7468 6f75 7420  me opts without 
│ │ │ +001d39c0: 736f 6d65 2061 7574 6f6d 6174 6963 206b  some automatic k
│ │ │ +001d39d0: 6572 6e65 6c2f 7573 6572 7370 6163 652d  ernel/userspace-
│ │ │ +001d39e0: 6164 6465 6420 6465 6661 756c 7473 0a20  added defaults. 
│ │ │ +001d39f0: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ +001d3a00: 6d6f 756e 745f 6f70 7473 3d24 2867 7265  mount_opts=$(gre
│ │ │ +001d3a10: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ +001d3a20: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ +001d3a30: 7463 2f6d 7461 6220 7c20 6865 6164 202d  tc/mtab | head -
│ │ │ +001d3a40: 3120 7c20 2061 776b 2027 7b70 7269 6e74  1 |  awk '{print
│ │ │ +001d3a50: 2024 347d 2720 5c0a 2020 2020 2020 2020   $4}' \.        
│ │ │ +001d3a60: 2020 2020 2020 2020 2020 2020 7c20 7365              | se
│ │ │ +001d3a70: 6420 2d45 2022 732f 2872 777c 6465 6661  d -E "s/(rw|defa
│ │ │ +001d3a80: 756c 7473 7c73 6563 6c61 6265 6c7c 6e6f  ults|seclabel|no
│ │ │ +001d3a90: 6578 6563 2928 2c7c 2429 2f2f 673b 732f  exec)(,|$)//g;s/
│ │ │ +001d3aa0: 2c24 2f2f 2229 0a20 2020 2020 2020 205b  ,$//").        [
│ │ │ +001d3ab0: 2022 2470 7265 7669 6f75 735f 6d6f 756e   "$previous_moun
│ │ │ +001d3ac0: 745f 6f70 7473 2220 5d20 2661 6d70 3b26  t_opts" ] &&
│ │ │ +001d3ad0: 616d 703b 2070 7265 7669 6f75 735f 6d6f  amp; previous_mo
│ │ │ +001d3ae0: 756e 745f 6f70 7473 2b3d 222c 220a 2020  unt_opts+=",".  
│ │ │ +001d3af0: 2020 2020 2020 2320 496e 2069 736f 3936        # In iso96
│ │ │ +001d3b00: 3630 2066 696c 6573 7973 7465 6d73 206d  60 filesystems m
│ │ │ +001d3b10: 7461 6220 636f 756c 6420 6465 7363 7269  tab could descri
│ │ │ +001d3b20: 6265 2061 2022 626c 6f63 6b73 697a 6522  be a "blocksize"
│ │ │ +001d3b30: 2076 616c 7565 2c20 7468 6973 2073 686f   value, this sho
│ │ │ +001d3b40: 756c 6420 6265 2072 6566 6c65 6374 6564  uld be reflected
│ │ │ +001d3b50: 2069 6e0a 2020 2020 2020 2020 2320 6673   in.        # fs
│ │ │ +001d3b60: 7461 6220 6173 2022 626c 6f63 6b22 2e20  tab as "block". 
│ │ │ +001d3b70: 2054 6865 206e 6578 7420 7661 7269 6162   The next variab
│ │ │ +001d3b80: 6c65 2069 7320 746f 2073 6174 6973 6679  le is to satisfy
│ │ │ +001d3b90: 2073 6865 6c6c 6368 6563 6b20 5343 3230   shellcheck SC20
│ │ │ +001d3ba0: 3530 2e0a 2020 2020 2020 2020 6673 5f74  50..        fs_t
│ │ │ +001d3bb0: 7970 653d 2222 0a20 2020 2020 2020 2069  ype="".        i
│ │ │ +001d3bc0: 6620 5b20 2022 2466 735f 7479 7065 2220  f [  "$fs_type" 
│ │ │ +001d3bd0: 3d3d 2022 6973 6f39 3636 3022 205d 203b  == "iso9660" ] ;
│ │ │ +001d3be0: 2074 6865 6e0a 2020 2020 2020 2020 2020   then.          
│ │ │ +001d3bf0: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ +001d3c00: 5f6f 7074 733d 2428 7365 6420 2773 2f62  _opts=$(sed 's/b
│ │ │ +001d3c10: 6c6f 636b 7369 7a65 3d2f 626c 6f63 6b3d  locksize=/block=
│ │ │ +001d3c20: 2f27 2026 6c74 3b26 6c74 3b26 6c74 3b20  /' <<< 
│ │ │ +001d3c30: 2224 7072 6576 696f 7573 5f6d 6f75 6e74  "$previous_mount
│ │ │ +001d3c40: 5f6f 7074 7322 290a 2020 2020 2020 2020  _opts").        
│ │ │ +001d3c50: 6669 0a20 2020 2020 2020 2065 6368 6f20  fi.        echo 
│ │ │ +001d3c60: 2220 2f62 6f6f 7420 2064 6566 6175 6c74  " /boot  default
│ │ │ +001d3c70: 732c 247b 7072 6576 696f 7573 5f6d 6f75  s,${previous_mou
│ │ │ +001d3c80: 6e74 5f6f 7074 737d 6e6f 6578 6563 2030  nt_opts}noexec 0
│ │ │ +001d3c90: 2030 2220 2667 743b 2667 743b 202f 6574   0" >> /et
│ │ │ +001d3ca0: 632f 6673 7461 620a 2020 2020 2320 4966  c/fstab.    # If
│ │ │ +001d3cb0: 2074 6865 206d 6f75 6e74 5f6f 7074 206f   the mount_opt o
│ │ │ +001d3cc0: 7074 696f 6e20 6973 206e 6f74 2061 6c72  ption is not alr
│ │ │ +001d3cd0: 6561 6479 2069 6e20 7468 6520 6d6f 756e  eady in the moun
│ │ │ +001d3ce0: 7420 706f 696e 7427 7320 2f65 7463 2f66  t point's /etc/f
│ │ │ +001d3cf0: 7374 6162 2065 6e74 7279 2c20 6164 6420  stab entry, add 
│ │ │ +001d3d00: 6974 0a20 2020 2065 6c69 6620 2120 6772  it.    elif ! gr
│ │ │ +001d3d10: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ +001d3d20: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ +001d3d30: 6574 632f 6673 7461 6220 7c20 6772 6570  etc/fstab | grep
│ │ │ +001d3d40: 202d 7120 226e 6f65 7865 6322 3b20 7468   -q "noexec"; th
│ │ │ +001d3d50: 656e 0a20 2020 2020 2020 2070 7265 7669  en.        previ
│ │ │ +001d3d60: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ +001d3d70: 2867 7265 7020 2224 6d6f 756e 745f 706f  (grep "$mount_po
│ │ │ +001d3d80: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001d3d90: 2220 2f65 7463 2f66 7374 6162 207c 2061  " /etc/fstab | a
│ │ │ +001d3da0: 776b 2027 7b70 7269 6e74 2024 347d 2729  wk '{print $4}')
│ │ │ +001d3db0: 0a20 2020 2020 2020 2073 6564 202d 6920  .        sed -i 
│ │ │ +001d3dc0: 2273 7c5c 2824 7b6d 6f75 6e74 5f70 6f69  "s|\(${mount_poi
│ │ │ +001d3dd0: 6e74 5f6d 6174 6368 5f72 6567 6578 707d  nt_match_regexp}
│ │ │ +001d3de0: 2e2a 247b 7072 6576 696f 7573 5f6d 6f75  .*${previous_mou
│ │ │ +001d3df0: 6e74 5f6f 7074 737d 5c29 7c5c 312c 6e6f  nt_opts}\)|\1,no
│ │ │ +001d3e00: 6578 6563 7c22 202f 6574 632f 6673 7461  exec|" /etc/fsta
│ │ │ +001d3e10: 620a 2020 2020 6669 0a0a 0a20 2020 2069  b.    fi...    i
│ │ │ +001d3e20: 6620 6d6b 6469 7220 2d70 2022 2f62 6f6f  f mkdir -p "/boo
│ │ │ +001d3e30: 7422 3b20 7468 656e 0a20 2020 2020 2020  t"; then.       
│ │ │ +001d3e40: 2069 6620 6d6f 756e 7470 6f69 6e74 202d   if mountpoint -
│ │ │ +001d3e50: 7120 222f 626f 6f74 223b 2074 6865 6e0a  q "/boot"; then.
│ │ │ +001d3e60: 2020 2020 2020 2020 2020 2020 6d6f 756e              moun
│ │ │ +001d3e70: 7420 2d6f 2072 656d 6f75 6e74 202d 2d74  t -o remount --t
│ │ │ +001d3e80: 6172 6765 7420 222f 626f 6f74 220a 2020  arget "/boot".  
│ │ │ +001d3e90: 2020 2020 2020 6669 0a20 2020 2066 690a        fi.    fi.
│ │ │ +001d3ea0: 7d0a 0a70 6572 666f 726d 5f72 656d 6564  }..perform_remed
│ │ │ +001d3eb0: 6961 7469 6f6e 0a0a 656c 7365 0a20 2020  iation..else.   
│ │ │ +001d3ec0: 2026 6774 3b26 616d 703b 3220 6563 686f   >&2 echo
│ │ │ +001d3ed0: 2027 5265 6d65 6469 6174 696f 6e20 6973   'Remediation is
│ │ │ +001d3ee0: 206e 6f74 2061 7070 6c69 6361 626c 652c   not applicable,
│ │ │ +001d3ef0: 206e 6f74 6869 6e67 2077 6173 2064 6f6e   nothing was don
│ │ │ +001d3f00: 6527 0a66 690a 3c2f 636f 6465 3e3c 2f70  e'.fi.

Remediatio │ │ │ +001d3fc0: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ +001d3fd0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +001d4050: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
Strategy: │ │ │ +001d40e0: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c < │ │ │ +001d40f0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
Rebo │ │ │ +001d3490: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001d34a0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexi │ │ │ +001d4060: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +001d4070: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:high
Reboo │ │ │ +001d40b0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +001d40c0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
enable
.part /bo
│ │ │ +001d4110: 6f74 202d 2d6d 6f75 6e74 6f70 7469 6f6e  ot --mountoption
│ │ │ +001d4120: 733d 226e 6f65 7865 6322 0a3c 2f63 6f64  s="noexec".
Remediat │ │ │ -001d4d10: 696f 6e20 416e 6163 6f6e 6461 2073 6e69 ion Anaconda sni │ │ │ -001d4d20: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -001d4d30: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -001d4d60: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -001d4dd0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption: │ │ │ -001d4df0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -001d4e20: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Comple │ │ │ -001d4db0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -001d4dc0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
high
Reb │ │ │ -001d4e00: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -001d4e10: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

.part / │ │ │ -001d4e60: 626f 6f74 202d 2d6d 6f75 6e74 6f70 7469 boot --mountopti │ │ │ -001d4e70: 6f6e 733d 226e 6f73 7569 6422 0a3c 2f63 ons="nosuid".

│ │ │ -001d4e90: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -001d4f30: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -001d4f40: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -001d4f50: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -001d4ff0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr> │ │ │ -001d5040: 3c74 723e 3c74 683e 5374 7261 7465 6779

│ │ │ -001d5080: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ -001d5090: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ -001d50a0: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ -001d50b0: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ -001d50c0: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ -001d50d0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001d50e0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001d50f0: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ -001d5100: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -001d5110: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001d5120: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ -001d5130: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ -001d5140: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001d5150: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ -001d5160: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001d5170: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001d5180: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001d5190: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001d51a0: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001d51b0: 745f 6f70 7469 6f6e 5f62 6f6f 745f 6e6f  t_option_boot_no
│ │ │ -001d51c0: 7375 6964 0a20 202d 206e 6f5f 7265 626f  suid.  - no_rebo
│ │ │ -001d51d0: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -001d51e0: 653a 2027 4164 6420 6e6f 7375 6964 204f  e: 'Add nosuid O
│ │ │ -001d51f0: 7074 696f 6e20 746f 202f 626f 6f74 3a20  ption to /boot: 
│ │ │ -001d5200: 4368 6563 6b20 696e 666f 726d 6174 696f  Check informatio
│ │ │ -001d5210: 6e20 6173 736f 6369 6174 6564 2074 6f20  n associated to 
│ │ │ -001d5220: 6d6f 756e 7470 6f69 6e74 270a 2020 616e  mountpoint'.  an
│ │ │ -001d5230: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ -001d5240: 6d6d 616e 643a 2066 696e 646d 6e74 202d  mmand: findmnt -
│ │ │ -001d5250: 2d66 7374 6162 2027 2f62 6f6f 7427 0a20  -fstab '/boot'. 
│ │ │ -001d5260: 2072 6567 6973 7465 723a 2064 6576 6963   register: devic
│ │ │ -001d5270: 655f 6e61 6d65 0a20 2066 6169 6c65 645f  e_name.  failed_
│ │ │ -001d5280: 7768 656e 3a20 6465 7669 6365 5f6e 616d  when: device_nam
│ │ │ -001d5290: 652e 7263 2026 6774 3b20 310a 2020 6368  e.rc > 1.  ch
│ │ │ -001d52a0: 616e 6765 645f 7768 656e 3a20 6661 6c73  anged_when: fals
│ │ │ -001d52b0: 650a 2020 6368 6563 6b5f 6d6f 6465 3a20  e.  check_mode: 
│ │ │ -001d52c0: 6661 6c73 650a 2020 7768 656e 3a20 2820  false.  when: ( 
│ │ │ -001d52d0: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ -001d52e0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001d52f0: 7061 636b 6167 6573 2061 6e64 2022 7270  packages and "rp
│ │ │ -001d5300: 6d2d 6f73 7472 6565 2220 696e 2061 6e73  m-ostree" in ans
│ │ │ -001d5310: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001d5320: 6765 730a 2020 2020 616e 6420 2262 6f6f  ges.    and "boo
│ │ │ -001d5330: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ -001d5340: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001d5350: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ -001d5360: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ -001d5370: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001d5380: 6765 730a 2020 2020 616e 6420 226f 7374  ges.    and "ost
│ │ │ -001d5390: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -001d53a0: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061  proc_cmdline ) a
│ │ │ -001d53b0: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ -001d53c0: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ -001d53d0: 7479 7065 2069 6e0a 2020 2020 5b22 646f  type in.    ["do
│ │ │ -001d53e0: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ -001d53f0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ -001d5400: 2c20 2263 6f6e 7461 696e 6572 225d 2029  , "container"] )
│ │ │ -001d5410: 2029 0a20 2074 6167 733a 0a20 202d 204e   ).  tags:.  - N
│ │ │ -001d5420: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ -001d5430: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001d5440: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ -001d5450: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -001d5460: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001d5470: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ -001d5480: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ -001d5490: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001d54a0: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ -001d54b0: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ -001d54c0: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ -001d54d0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -001d54e0: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ -001d54f0: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ -001d5500: 5f6f 7074 696f 6e5f 626f 6f74 5f6e 6f73  _option_boot_nos
│ │ │ -001d5510: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f  uid.  - no_reboo
│ │ │ -001d5520: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ -001d5530: 3a20 2741 6464 206e 6f73 7569 6420 4f70  : 'Add nosuid Op
│ │ │ -001d5540: 7469 6f6e 2074 6f20 2f62 6f6f 743a 2043  tion to /boot: C
│ │ │ -001d5550: 7265 6174 6520 6d6f 756e 745f 696e 666f  reate mount_info
│ │ │ -001d5560: 2064 6963 7469 6f6e 6172 7920 7661 7269   dictionary vari
│ │ │ -001d5570: 6162 6c65 270a 2020 7365 745f 6661 6374  able'.  set_fact
│ │ │ -001d5580: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ -001d5590: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001d55a0: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d  |default({})|com
│ │ │ -001d55b0: 6269 6e65 287b 6974 656d 2e30 3a20 6974  bine({item.0: it
│ │ │ -001d55c0: 656d 2e31 7d29 207d 7d27 0a20 2077 6974  em.1}) }}'.  wit
│ │ │ -001d55d0: 685f 746f 6765 7468 6572 3a0a 2020 2d20  h_together:.  - 
│ │ │ -001d55e0: 277b 7b20 6465 7669 6365 5f6e 616d 652e  '{{ device_name.
│ │ │ -001d55f0: 7374 646f 7574 5f6c 696e 6573 5b30 5d2e  stdout_lines[0].
│ │ │ -001d5600: 7370 6c69 7428 2920 7c20 6d61 7028 2727  split() | map(''
│ │ │ -001d5610: 6c6f 7765 7227 2729 207c 206c 6973 7420  lower'') | list 
│ │ │ -001d5620: 7d7d 270a 2020 2d20 277b 7b20 6465 7669  }}'.  - '{{ devi
│ │ │ -001d5630: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ -001d5640: 696e 6573 5b31 5d2e 7370 6c69 7428 2920  ines[1].split() 
│ │ │ -001d5650: 7c20 6c69 7374 207d 7d27 0a20 2077 6865  | list }}'.  whe
│ │ │ -001d5660: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ -001d5670: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -001d5680: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001d5690: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ -001d56a0: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ -001d56b0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001d56c0: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -001d56d0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001d56e0: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ -001d56f0: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001d5700: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001d5710: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001d5720: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -001d5730: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -001d5740: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ -001d5750: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001d5760: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001d5770: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ -001d5780: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -001d5790: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ -001d57a0: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001d57b0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001d57c0: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ -001d57d0: 6420 6465 7669 6365 5f6e 616d 652e 7374  d device_name.st
│ │ │ -001d57e0: 646f 7574 5f6c 696e 6573 2069 7320 6465  dout_lines is de
│ │ │ -001d57f0: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ -001d5800: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ -001d5810: 6c65 6e67 7468 2026 6774 3b20 3029 0a20  length > 0). 
│ │ │ -001d5820: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -001d5830: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ -001d5840: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001d5850: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ -001d5860: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -001d5870: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001d5880: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001d5890: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ -001d58a0: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ -001d58b0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -001d58c0: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -001d58d0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001d58e0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001d58f0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001d5900: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -001d5910: 696f 6e5f 626f 6f74 5f6e 6f73 7569 640a  ion_boot_nosuid.
│ │ │ -001d5920: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001d5930: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ -001d5940: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ -001d5950: 2074 6f20 2f62 6f6f 743a 2049 6620 2f62   to /boot: If /b
│ │ │ -001d5960: 6f6f 7420 6e6f 7420 6d6f 756e 7465 642c  oot not mounted,
│ │ │ -001d5970: 2063 7261 6674 206d 6f75 6e74 5f69 6e66   craft mount_inf
│ │ │ -001d5980: 6f20 6d61 6e75 616c 6c79 270a 2020 7365  o manually'.  se
│ │ │ -001d5990: 745f 6661 6374 3a0a 2020 2020 6d6f 756e  t_fact:.    moun
│ │ │ -001d59a0: 745f 696e 666f 3a20 277b 7b20 6d6f 756e  t_info: '{{ moun
│ │ │ -001d59b0: 745f 696e 666f 7c64 6566 6175 6c74 287b  t_info|default({
│ │ │ -001d59c0: 7d29 7c63 6f6d 6269 6e65 287b 6974 656d  })|combine({item
│ │ │ -001d59d0: 2e30 3a20 6974 656d 2e31 7d29 207d 7d27  .0: item.1}) }}'
│ │ │ -001d59e0: 0a20 2077 6974 685f 746f 6765 7468 6572  .  with_together
│ │ │ -001d59f0: 3a0a 2020 2d20 2d20 7461 7267 6574 0a20  :.  - - target. 
│ │ │ -001d5a00: 2020 202d 2073 6f75 7263 650a 2020 2020     - source.    
│ │ │ -001d5a10: 2d20 6673 7479 7065 0a20 2020 202d 206f  - fstype.    - o
│ │ │ -001d5a20: 7074 696f 6e73 0a20 202d 202d 202f 626f  ptions.  - - /bo
│ │ │ -001d5a30: 6f74 0a20 2020 202d 2027 270a 2020 2020  ot.    - ''.    
│ │ │ -001d5a40: 2d20 2727 0a20 2020 202d 2064 6566 6175  - ''.    - defau
│ │ │ -001d5a50: 6c74 730a 2020 7768 656e 3a0a 2020 2d20  lts.  when:.  - 
│ │ │ -001d5a60: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -001d5a70: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001d5a80: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001d5a90: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ -001d5aa0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001d5ab0: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ -001d5ac0: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -001d5ad0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001d5ae0: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001d5af0: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001d5b00: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001d5b10: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ -001d5b20: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001d5b30: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ -001d5b40: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001d5b50: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001d5b60: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ -001d5b70: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -001d5b80: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -001d5b90: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ -001d5ba0: 2029 2029 0a20 202d 2028 222d 2d66 7374   ) ).  - ("--fst
│ │ │ -001d5bb0: 6162 2220 7c20 6c65 6e67 7468 203d 3d20  ab" | length == 
│ │ │ -001d5bc0: 3029 0a20 202d 2064 6576 6963 655f 6e61  0).  - device_na
│ │ │ -001d5bd0: 6d65 2e73 7464 6f75 7420 6973 2064 6566  me.stdout is def
│ │ │ -001d5be0: 696e 6564 2061 6e64 2064 6576 6963 655f  ined and device_
│ │ │ -001d5bf0: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ -001d5c00: 7320 6973 2064 6566 696e 6564 0a20 202d  s is defined.  -
│ │ │ -001d5c10: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ -001d5c20: 646f 7574 207c 206c 656e 6774 6820 3d3d  dout | length ==
│ │ │ -001d5c30: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ -001d5c40: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001d5c50: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001d5c60: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ -001d5c70: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -001d5c80: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001d5c90: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ -001d5ca0: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ -001d5cb0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001d5cc0: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ -001d5cd0: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001d5ce0: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001d5cf0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001d5d00: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001d5d10: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001d5d20: 745f 6f70 7469 6f6e 5f62 6f6f 745f 6e6f  t_option_boot_no
│ │ │ -001d5d30: 7375 6964 0a20 202d 206e 6f5f 7265 626f  suid.  - no_rebo
│ │ │ -001d5d40: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -001d5d50: 653a 2027 4164 6420 6e6f 7375 6964 204f  e: 'Add nosuid O
│ │ │ -001d5d60: 7074 696f 6e20 746f 202f 626f 6f74 3a20  ption to /boot: 
│ │ │ -001d5d70: 4d61 6b65 2073 7572 6520 6e6f 7375 6964  Make sure nosuid
│ │ │ -001d5d80: 206f 7074 696f 6e20 6973 2070 6172 7420   option is part 
│ │ │ -001d5d90: 6f66 2074 6865 2074 6f20 2f62 6f6f 740a  of the to /boot.
│ │ │ -001d5da0: 2020 2020 6f70 7469 6f6e 7327 0a20 2073      options'.  s
│ │ │ -001d5db0: 6574 5f66 6163 743a 0a20 2020 206d 6f75  et_fact:.    mou
│ │ │ -001d5dc0: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75  nt_info: '{{ mou
│ │ │ -001d5dd0: 6e74 5f69 6e66 6f20 7c20 636f 6d62 696e  nt_info | combin
│ │ │ -001d5de0: 6528 207b 2727 6f70 7469 6f6e 7327 273a  e( {''options'':
│ │ │ -001d5df0: 2727 2727 7e28 6d6f 756e 745f 696e 666f  ''''~(mount_info
│ │ │ -001d5e00: 2e6f 7074 696f 6e73 207c 0a20 2020 2020  .options |.     
│ │ │ -001d5e10: 2064 6566 6175 6c74 2827 2727 2729 297e   default(''''))~
│ │ │ -001d5e20: 2827 272c 2727 2069 6620 286d 6f75 6e74  ('','' if (mount
│ │ │ -001d5e30: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ -001d5e40: 6465 6661 756c 7428 2727 2727 2929 2065  default('''')) e
│ │ │ -001d5e50: 6c73 6520 2727 2727 297e 2727 6e6f 7375  lse '''')~''nosu
│ │ │ -001d5e60: 6964 2727 0a20 2020 2020 207d 2920 7d7d  id''.      }) }}
│ │ │ -001d5e70: 270a 2020 7768 656e 3a0a 2020 2d20 2820  '.  when:.  - ( 
│ │ │ -001d5e80: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ -001d5e90: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001d5ea0: 7061 636b 6167 6573 2061 6e64 2022 7270  packages and "rp
│ │ │ -001d5eb0: 6d2d 6f73 7472 6565 2220 696e 2061 6e73  m-ostree" in ans
│ │ │ -001d5ec0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001d5ed0: 6765 730a 2020 2020 616e 6420 2262 6f6f  ges.    and "boo
│ │ │ -001d5ee0: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ -001d5ef0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001d5f00: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ -001d5f10: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ -001d5f20: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001d5f30: 6765 730a 2020 2020 616e 6420 226f 7374  ges.    and "ost
│ │ │ -001d5f40: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -001d5f50: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061  proc_cmdline ) a
│ │ │ -001d5f60: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ -001d5f70: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ -001d5f80: 7479 7065 2069 6e0a 2020 2020 5b22 646f  type in.    ["do
│ │ │ -001d5f90: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ -001d5fa0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ -001d5fb0: 2c20 2263 6f6e 7461 696e 6572 225d 2029  , "container"] )
│ │ │ -001d5fc0: 2029 0a20 202d 206d 6f75 6e74 5f69 6e66   ).  - mount_inf
│ │ │ -001d5fd0: 6f20 6973 2064 6566 696e 6564 2061 6e64  o is defined and
│ │ │ -001d5fe0: 2022 6e6f 7375 6964 2220 6e6f 7420 696e   "nosuid" not in
│ │ │ -001d5ff0: 2028 6d6f 756e 745f 696e 666f 2e6f 7074   (mount_info.opt
│ │ │ -001d6000: 696f 6e73 207c 2064 6566 6175 6c74 2827  ions | default('
│ │ │ -001d6010: 2729 290a 2020 7461 6773 3a0a 2020 2d20  ')).  tags:.  - 
│ │ │ -001d6020: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001d6030: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001d6040: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ -001d6050: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -001d6060: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001d6070: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ -001d6080: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ -001d6090: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001d60a0: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ -001d60b0: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001d60c0: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001d60d0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001d60e0: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001d60f0: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001d6100: 745f 6f70 7469 6f6e 5f62 6f6f 745f 6e6f  t_option_boot_no
│ │ │ -001d6110: 7375 6964 0a20 202d 206e 6f5f 7265 626f  suid.  - no_rebo
│ │ │ -001d6120: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -001d6130: 653a 2027 4164 6420 6e6f 7375 6964 204f  e: 'Add nosuid O
│ │ │ -001d6140: 7074 696f 6e20 746f 202f 626f 6f74 3a20  ption to /boot: 
│ │ │ -001d6150: 456e 7375 7265 202f 626f 6f74 2069 7320  Ensure /boot is 
│ │ │ -001d6160: 6d6f 756e 7465 6420 7769 7468 206e 6f73  mounted with nos
│ │ │ -001d6170: 7569 6420 6f70 7469 6f6e 270a 2020 616e  uid option'.  an
│ │ │ -001d6180: 7369 626c 652e 706f 7369 782e 6d6f 756e  sible.posix.moun
│ │ │ -001d6190: 743a 0a20 2020 2070 6174 683a 202f 626f  t:.    path: /bo
│ │ │ -001d61a0: 6f74 0a20 2020 2073 7263 3a20 277b 7b20  ot.    src: '{{ 
│ │ │ -001d61b0: 6d6f 756e 745f 696e 666f 2e73 6f75 7263  mount_info.sourc
│ │ │ -001d61c0: 6520 7c20 6465 6661 756c 7428 2727 2727  e | default(''''
│ │ │ -001d61d0: 2920 7d7d 270a 2020 2020 6f70 7473 3a20  ) }}'.    opts: 
│ │ │ -001d61e0: 277b 7b20 6d6f 756e 745f 696e 666f 2e6f  '{{ mount_info.o
│ │ │ -001d61f0: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ -001d6200: 2827 2727 2729 207d 7d27 0a20 2020 2073  ('''') }}'.    s
│ │ │ -001d6210: 7461 7465 3a20 6d6f 756e 7465 640a 2020  tate: mounted.  
│ │ │ -001d6220: 2020 6673 7479 7065 3a20 277b 7b20 6d6f    fstype: '{{ mo
│ │ │ -001d6230: 756e 745f 696e 666f 2e66 7374 7970 6520  unt_info.fstype 
│ │ │ -001d6240: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ -001d6250: 7d7d 270a 2020 7265 6769 7374 6572 3a20  }}'.  register: 
│ │ │ -001d6260: 6d6f 756e 745f 7265 7375 6c74 0a20 2066  mount_result.  f
│ │ │ -001d6270: 6169 6c65 645f 7768 656e 3a0a 2020 2d20  ailed_when:.  - 
│ │ │ -001d6280: 6d6f 756e 745f 7265 7375 6c74 2069 7320  mount_result is 
│ │ │ -001d6290: 6661 696c 6564 0a20 202d 2027 2727 7461  failed.  - '''ta
│ │ │ -001d62a0: 7267 6574 2069 7320 6275 7379 2727 206e  rget is busy'' n
│ │ │ -001d62b0: 6f74 2069 6e20 286d 6f75 6e74 5f72 6573  ot in (mount_res
│ │ │ -001d62c0: 756c 742e 6d73 6720 7c20 6465 6661 756c  ult.msg | defaul
│ │ │ -001d62d0: 7428 2727 2727 2929 270a 2020 2d20 2727  t(''''))'.  - ''
│ │ │ -001d62e0: 2761 6c72 6561 6479 206d 6f75 6e74 6564  'already mounted
│ │ │ -001d62f0: 2727 206e 6f74 2069 6e20 286d 6f75 6e74  '' not in (mount
│ │ │ -001d6300: 5f72 6573 756c 742e 6d73 6720 7c20 6465  _result.msg | de
│ │ │ -001d6310: 6661 756c 7428 2727 2727 2929 270a 2020  fault(''''))'.  
│ │ │ -001d6320: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ -001d6330: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ -001d6340: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001d6350: 6167 6573 2061 6e64 2022 7270 6d2d 6f73  ages and "rpm-os
│ │ │ -001d6360: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001d6370: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001d6380: 2020 2020 616e 6420 2262 6f6f 7463 2220      and "bootc" 
│ │ │ -001d6390: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001d63a0: 2e70 6163 6b61 6765 7320 616e 6420 6e6f  .packages and no
│ │ │ -001d63b0: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ -001d63c0: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ -001d63d0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001d63e0: 2020 2020 616e 6420 226f 7374 7265 6522      and "ostree"
│ │ │ -001d63f0: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ -001d6400: 5f63 6d64 6c69 6e65 2029 2061 6e64 206e  _cmdline ) and n
│ │ │ -001d6410: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ -001d6420: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ -001d6430: 2069 6e0a 2020 2020 5b22 646f 636b 6572   in.    ["docker
│ │ │ -001d6440: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ -001d6450: 7a22 2c20 2270 6f64 6d61 6e22 2c20 2263  z", "podman", "c
│ │ │ -001d6460: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ -001d6470: 202d 206d 6f75 6e74 5f69 6e66 6f20 6973   - mount_info is
│ │ │ -001d6480: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ -001d6490: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001d64a0: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ -001d64b0: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ -001d64c0: 6f75 7420 7c20 6c65 6e67 7468 2026 6774  out | length >
│ │ │ -001d64d0: 3b20 3029 2920 6f72 2028 222d 2d66 7374  ; 0)) or ("--fst
│ │ │ -001d64e0: 6162 220a 2020 2020 7c20 6c65 6e67 7468  ab".    | length
│ │ │ -001d64f0: 203d 3d20 3029 0a20 2074 6167 733a 0a20   == 0).  tags:. 
│ │ │ -001d6500: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001d6510: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ -001d6520: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ -001d6530: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -001d6540: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001d6550: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ -001d6560: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001d6570: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ -001d6580: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ -001d6590: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -001d65a0: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -001d65b0: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -001d65c0: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -001d65d0: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -001d65e0: 6f75 6e74 5f6f 7074 696f 6e5f 626f 6f74  ount_option_boot
│ │ │ -001d65f0: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ -001d6600: 6562 6f6f 745f 6e65 6564 6564 0a3c 2f63  eboot_needed.
│ │ │ -001d6620: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -001d66c0: 6564 6961 7469 6f6e 2053 6865 6c6c 2073 ediation Shell s │ │ │ -001d66d0: 6372 6970 7420 e287 b23c 2f61 3e3c 6272 cript ...
Co │ │ │ -001d4fd0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -001d5000: 6e3a 3c2f 7468 3e3c 7464 3e68 6967 683c n:high< │ │ │ -001d5010: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -001d5050: 3a3c 2f74 683e 3c74 643e 636f 6e66 6967 :config │ │ │ -001d5060: 7572 653c 2f74 643e 3c2f 7472 3e3c 2f74 ure
# R
│ │ │ -001d6790: 656d 6564 6961 7469 6f6e 2069 7320 6170  emediation is ap
│ │ │ -001d67a0: 706c 6963 6162 6c65 206f 6e6c 7920 696e  plicable only in
│ │ │ -001d67b0: 2063 6572 7461 696e 2070 6c61 7466 6f72   certain platfor
│ │ │ -001d67c0: 6d73 0a69 6620 2820 2120 2820 7b20 7270  ms.if ( ! ( { rp
│ │ │ -001d67d0: 6d20 2d2d 7175 6965 7420 2d71 206b 6572  m --quiet -q ker
│ │ │ -001d67e0: 6e65 6c20 3b7d 2026 616d 703b 2661 6d70  nel ;} &&
│ │ │ -001d67f0: 3b20 7b20 7270 6d20 2d2d 7175 6965 7420  ; { rpm --quiet 
│ │ │ -001d6800: 2d71 2072 706d 2d6f 7374 7265 6520 3b7d  -q rpm-ostree ;}
│ │ │ -001d6810: 2026 616d 703b 2661 6d70 3b20 7b20 7270   && { rp
│ │ │ -001d6820: 6d20 2d2d 7175 6965 7420 2d71 2062 6f6f  m --quiet -q boo
│ │ │ -001d6830: 7463 203b 7d20 2661 6d70 3b26 616d 703b  tc ;} &&
│ │ │ -001d6840: 207b 2021 2072 706d 202d 2d71 7569 6574   { ! rpm --quiet
│ │ │ -001d6850: 202d 7120 6f70 656e 7368 6966 742d 6b75   -q openshift-ku
│ │ │ -001d6860: 6265 6c65 7420 3b7d 2026 616d 703b 2661  belet ;} &&a
│ │ │ -001d6870: 6d70 3b20 285b 202d 6620 2f72 756e 2f6f  mp; ([ -f /run/o
│ │ │ -001d6880: 7374 7265 652d 626f 6f74 6564 205d 207c  stree-booted ] |
│ │ │ -001d6890: 7c20 5b20 2d4c 202f 6f73 7472 6565 205d  | [ -L /ostree ]
│ │ │ -001d68a0: 2920 2920 2661 6d70 3b26 616d 703b 2021  ) ) && !
│ │ │ -001d68b0: 2028 205b 202d 6620 2f2e 646f 636b 6572   ( [ -f /.docker
│ │ │ -001d68c0: 656e 7620 5d20 7c7c 205b 202d 6620 2f72  env ] || [ -f /r
│ │ │ -001d68d0: 756e 2f2e 636f 6e74 6169 6e65 7265 6e76  un/.containerenv
│ │ │ -001d68e0: 205d 2029 2029 3b20 7468 656e 0a0a 6675   ] ) ); then..fu
│ │ │ -001d68f0: 6e63 7469 6f6e 2070 6572 666f 726d 5f72  nction perform_r
│ │ │ -001d6900: 656d 6564 6961 7469 6f6e 207b 0a0a 2020  emediation {..  
│ │ │ -001d6910: 2020 0a20 2020 2020 2020 2023 2074 6865    .        # the
│ │ │ -001d6920: 206d 6f75 6e74 2070 6f69 6e74 202f 626f   mount point /bo
│ │ │ -001d6930: 6f74 2068 6173 2074 6f20 6265 2064 6566  ot has to be def
│ │ │ -001d6940: 696e 6564 2069 6e20 2f65 7463 2f66 7374  ined in /etc/fst
│ │ │ -001d6950: 6162 0a20 2020 2020 2020 2023 2062 6566  ab.        # bef
│ │ │ -001d6960: 6f72 6520 7468 6973 2072 656d 6564 6961  ore this remedia
│ │ │ -001d6970: 7469 6f6e 2063 616e 2062 6520 6578 6563  tion can be exec
│ │ │ -001d6980: 7574 6564 2e20 496e 2063 6173 6520 6974  uted. In case it
│ │ │ -001d6990: 2069 7320 6e6f 7420 6465 6669 6e65 642c   is not defined,
│ │ │ -001d69a0: 2074 6865 0a20 2020 2020 2020 2023 2072   the.        # r
│ │ │ -001d69b0: 656d 6564 6961 7469 6f6e 2061 626f 7274  emediation abort
│ │ │ -001d69c0: 7320 616e 6420 6e6f 2063 6861 6e67 6573  s and no changes
│ │ │ -001d69d0: 2072 6567 6172 6469 6e67 2074 6865 206d   regarding the m
│ │ │ -001d69e0: 6f75 6e74 2070 6f69 6e74 2061 7265 2064  ount point are d
│ │ │ -001d69f0: 6f6e 652e 0a20 2020 2020 2020 206d 6f75  one..        mou
│ │ │ -001d6a00: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001d6a10: 6567 6578 703d 2224 2870 7269 6e74 6620  egexp="$(printf 
│ │ │ -001d6a20: 225e 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e  "^[[:space:]]*[^
│ │ │ -001d6a30: 235d 2e2a 5b5b 3a73 7061 6365 3a5d 5d25  #].*[[:space:]]%
│ │ │ -001d6a40: 735b 5b3a 7370 6163 653a 5d5d 2220 222f  s[[:space:]]" "/
│ │ │ -001d6a50: 626f 6f74 2229 220a 0a20 2020 2067 7265  boot")"..    gre
│ │ │ -001d6a60: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001d6a70: 6d61 7463 685f 7265 6765 7870 2220 2d71  match_regexp" -q
│ │ │ -001d6a80: 202f 6574 632f 6673 7461 6220 5c0a 2020   /etc/fstab \.  
│ │ │ -001d6a90: 2020 2020 2020 7c7c 207b 2065 6368 6f20        || { echo 
│ │ │ -001d6aa0: 2254 6865 206d 6f75 6e74 2070 6f69 6e74  "The mount point
│ │ │ -001d6ab0: 2027 2f62 6f6f 7427 2069 7320 6e6f 7420   '/boot' is not 
│ │ │ -001d6ac0: 6576 656e 2069 6e20 2f65 7463 2f66 7374  even in /etc/fst
│ │ │ -001d6ad0: 6162 2c20 736f 2077 6520 6361 6e27 7420  ab, so we can't 
│ │ │ -001d6ae0: 7365 7420 7570 206d 6f75 6e74 206f 7074  set up mount opt
│ │ │ -001d6af0: 696f 6e73 2220 2667 743b 2661 6d70 3b32  ions" >&2
│ │ │ -001d6b00: 3b0a 2020 2020 2020 2020 2020 2020 2020  ;.              
│ │ │ -001d6b10: 2020 6563 686f 2022 4e6f 7420 7265 6d65    echo "Not reme
│ │ │ -001d6b20: 6469 6174 696e 672c 2062 6563 6175 7365  diating, because
│ │ │ -001d6b30: 2074 6865 7265 2069 7320 6e6f 2072 6563   there is no rec
│ │ │ -001d6b40: 6f72 6420 6f66 202f 626f 6f74 2069 6e20  ord of /boot in 
│ │ │ -001d6b50: 2f65 7463 2f66 7374 6162 2220 2667 743b  /etc/fstab" >
│ │ │ -001d6b60: 2661 6d70 3b32 3b20 7265 7475 726e 2031  &2; return 1
│ │ │ -001d6b70: 3b20 7d0a 2020 2020 0a0a 0a20 2020 206d  ; }.    ...    m
│ │ │ -001d6b80: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001d6b90: 5f72 6567 6578 703d 2224 2870 7269 6e74  _regexp="$(print
│ │ │ -001d6ba0: 6620 225e 5b5b 3a73 7061 6365 3a5d 5d2a  f "^[[:space:]]*
│ │ │ -001d6bb0: 5b5e 235d 2e2a 5b5b 3a73 7061 6365 3a5d  [^#].*[[:space:]
│ │ │ -001d6bc0: 5d25 735b 5b3a 7370 6163 653a 5d5d 2220  ]%s[[:space:]]" 
│ │ │ -001d6bd0: 2f62 6f6f 7429 220a 0a20 2020 2023 2049  /boot)"..    # I
│ │ │ -001d6be0: 6620 7468 6520 6d6f 756e 7420 706f 696e  f the mount poin
│ │ │ -001d6bf0: 7420 6973 206e 6f74 2069 6e20 2f65 7463  t is not in /etc
│ │ │ -001d6c00: 2f66 7374 6162 2c20 6765 7420 7072 6576  /fstab, get prev
│ │ │ -001d6c10: 696f 7573 206d 6f75 6e74 206f 7074 696f  ious mount optio
│ │ │ -001d6c20: 6e73 2066 726f 6d20 2f65 7463 2f6d 7461  ns from /etc/mta
│ │ │ -001d6c30: 620a 2020 2020 6966 2021 2067 7265 7020  b.    if ! grep 
│ │ │ -001d6c40: 2d71 2022 246d 6f75 6e74 5f70 6f69 6e74  -q "$mount_point
│ │ │ -001d6c50: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ -001d6c60: 6574 632f 6673 7461 623b 2074 6865 6e0a  etc/fstab; then.
│ │ │ -001d6c70: 2020 2020 2020 2020 2320 7275 6e74 696d          # runtim
│ │ │ -001d6c80: 6520 6f70 7473 2077 6974 686f 7574 2073  e opts without s
│ │ │ -001d6c90: 6f6d 6520 6175 746f 6d61 7469 6320 6b65  ome automatic ke
│ │ │ -001d6ca0: 726e 656c 2f75 7365 7273 7061 6365 2d61  rnel/userspace-a
│ │ │ -001d6cb0: 6464 6564 2064 6566 6175 6c74 730a 2020  dded defaults.  
│ │ │ -001d6cc0: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ -001d6cd0: 6f75 6e74 5f6f 7074 733d 2428 6772 6570  ount_opts=$(grep
│ │ │ -001d6ce0: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -001d6cf0: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ -001d6d00: 632f 6d74 6162 207c 2068 6561 6420 2d31  c/mtab | head -1
│ │ │ -001d6d10: 207c 2020 6177 6b20 277b 7072 696e 7420   |  awk '{print 
│ │ │ -001d6d20: 2434 7d27 205c 0a20 2020 2020 2020 2020  $4}' \.         
│ │ │ -001d6d30: 2020 2020 2020 2020 2020 207c 2073 6564             | sed
│ │ │ -001d6d40: 202d 4520 2273 2f28 7277 7c64 6566 6175   -E "s/(rw|defau
│ │ │ -001d6d50: 6c74 737c 7365 636c 6162 656c 7c6e 6f73  lts|seclabel|nos
│ │ │ -001d6d60: 7569 6429 282c 7c24 292f 2f67 3b73 2f2c  uid)(,|$)//g;s/,
│ │ │ -001d6d70: 242f 2f22 290a 2020 2020 2020 2020 5b20  $//").        [ 
│ │ │ -001d6d80: 2224 7072 6576 696f 7573 5f6d 6f75 6e74  "$previous_mount
│ │ │ -001d6d90: 5f6f 7074 7322 205d 2026 616d 703b 2661  _opts" ] &&a
│ │ │ -001d6da0: 6d70 3b20 7072 6576 696f 7573 5f6d 6f75  mp; previous_mou
│ │ │ -001d6db0: 6e74 5f6f 7074 732b 3d22 2c22 0a20 2020  nt_opts+=",".   
│ │ │ -001d6dc0: 2020 2020 2023 2049 6e20 6973 6f39 3636       # In iso966
│ │ │ -001d6dd0: 3020 6669 6c65 7379 7374 656d 7320 6d74  0 filesystems mt
│ │ │ -001d6de0: 6162 2063 6f75 6c64 2064 6573 6372 6962  ab could describ
│ │ │ -001d6df0: 6520 6120 2262 6c6f 636b 7369 7a65 2220  e a "blocksize" 
│ │ │ -001d6e00: 7661 6c75 652c 2074 6869 7320 7368 6f75  value, this shou
│ │ │ -001d6e10: 6c64 2062 6520 7265 666c 6563 7465 6420  ld be reflected 
│ │ │ -001d6e20: 696e 0a20 2020 2020 2020 2023 2066 7374  in.        # fst
│ │ │ -001d6e30: 6162 2061 7320 2262 6c6f 636b 222e 2020  ab as "block".  
│ │ │ -001d6e40: 5468 6520 6e65 7874 2076 6172 6961 626c  The next variabl
│ │ │ -001d6e50: 6520 6973 2074 6f20 7361 7469 7366 7920  e is to satisfy 
│ │ │ -001d6e60: 7368 656c 6c63 6865 636b 2053 4332 3035  shellcheck SC205
│ │ │ -001d6e70: 302e 0a20 2020 2020 2020 2066 735f 7479  0..        fs_ty
│ │ │ -001d6e80: 7065 3d22 220a 2020 2020 2020 2020 6966  pe="".        if
│ │ │ -001d6e90: 205b 2020 2224 6673 5f74 7970 6522 203d   [  "$fs_type" =
│ │ │ -001d6ea0: 3d20 2269 736f 3936 3630 2220 5d20 3b20  = "iso9660" ] ; 
│ │ │ -001d6eb0: 7468 656e 0a20 2020 2020 2020 2020 2020  then.           
│ │ │ -001d6ec0: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ -001d6ed0: 6f70 7473 3d24 2873 6564 2027 732f 626c  opts=$(sed 's/bl
│ │ │ -001d6ee0: 6f63 6b73 697a 653d 2f62 6c6f 636b 3d2f  ocksize=/block=/
│ │ │ -001d6ef0: 2720 266c 743b 266c 743b 266c 743b 2022  ' <<< "
│ │ │ -001d6f00: 2470 7265 7669 6f75 735f 6d6f 756e 745f  $previous_mount_
│ │ │ -001d6f10: 6f70 7473 2229 0a20 2020 2020 2020 2066  opts").        f
│ │ │ -001d6f20: 690a 2020 2020 2020 2020 6563 686f 2022  i.        echo "
│ │ │ -001d6f30: 202f 626f 6f74 2020 6465 6661 756c 7473   /boot  defaults
│ │ │ -001d6f40: 2c24 7b70 7265 7669 6f75 735f 6d6f 756e  ,${previous_moun
│ │ │ -001d6f50: 745f 6f70 7473 7d6e 6f73 7569 6420 3020  t_opts}nosuid 0 
│ │ │ -001d6f60: 3022 2026 6774 3b26 6774 3b20 2f65 7463  0" >> /etc
│ │ │ -001d6f70: 2f66 7374 6162 0a20 2020 2023 2049 6620  /fstab.    # If 
│ │ │ -001d6f80: 7468 6520 6d6f 756e 745f 6f70 7420 6f70  the mount_opt op
│ │ │ -001d6f90: 7469 6f6e 2069 7320 6e6f 7420 616c 7265  tion is not alre
│ │ │ -001d6fa0: 6164 7920 696e 2074 6865 206d 6f75 6e74  ady in the mount
│ │ │ -001d6fb0: 2070 6f69 6e74 2773 202f 6574 632f 6673   point's /etc/fs
│ │ │ -001d6fc0: 7461 6220 656e 7472 792c 2061 6464 2069  tab entry, add i
│ │ │ -001d6fd0: 740a 2020 2020 656c 6966 2021 2067 7265  t.    elif ! gre
│ │ │ -001d6fe0: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001d6ff0: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ -001d7000: 7463 2f66 7374 6162 207c 2067 7265 7020  tc/fstab | grep 
│ │ │ -001d7010: 2d71 2022 6e6f 7375 6964 223b 2074 6865  -q "nosuid"; the
│ │ │ -001d7020: 6e0a 2020 2020 2020 2020 7072 6576 696f  n.        previo
│ │ │ -001d7030: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ -001d7040: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ -001d7050: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ -001d7060: 202f 6574 632f 6673 7461 6220 7c20 6177   /etc/fstab | aw
│ │ │ -001d7070: 6b20 277b 7072 696e 7420 2434 7d27 290a  k '{print $4}').
│ │ │ -001d7080: 2020 2020 2020 2020 7365 6420 2d69 2022          sed -i "
│ │ │ -001d7090: 737c 5c28 247b 6d6f 756e 745f 706f 696e  s|\(${mount_poin
│ │ │ -001d70a0: 745f 6d61 7463 685f 7265 6765 7870 7d2e  t_match_regexp}.
│ │ │ -001d70b0: 2a24 7b70 7265 7669 6f75 735f 6d6f 756e  *${previous_moun
│ │ │ -001d70c0: 745f 6f70 7473 7d5c 297c 5c31 2c6e 6f73  t_opts}\)|\1,nos
│ │ │ -001d70d0: 7569 647c 2220 2f65 7463 2f66 7374 6162  uid|" /etc/fstab
│ │ │ -001d70e0: 0a20 2020 2066 690a 0a0a 2020 2020 6966  .    fi...    if
│ │ │ -001d70f0: 206d 6b64 6972 202d 7020 222f 626f 6f74   mkdir -p "/boot
│ │ │ -001d7100: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ -001d7110: 6966 206d 6f75 6e74 706f 696e 7420 2d71  if mountpoint -q
│ │ │ -001d7120: 2022 2f62 6f6f 7422 3b20 7468 656e 0a20   "/boot"; then. 
│ │ │ -001d7130: 2020 2020 2020 2020 2020 206d 6f75 6e74             mount
│ │ │ -001d7140: 202d 6f20 7265 6d6f 756e 7420 2d2d 7461   -o remount --ta
│ │ │ -001d7150: 7267 6574 2022 2f62 6f6f 7422 0a20 2020  rget "/boot".   
│ │ │ -001d7160: 2020 2020 2066 690a 2020 2020 6669 0a7d       fi.    fi.}
│ │ │ -001d7170: 0a0a 7065 7266 6f72 6d5f 7265 6d65 6469  ..perform_remedi
│ │ │ -001d7180: 6174 696f 6e0a 0a65 6c73 650a 2020 2020  ation..else.    
│ │ │ -001d7190: 2667 743b 2661 6d70 3b32 2065 6368 6f20  >&2 echo 
│ │ │ -001d71a0: 2752 656d 6564 6961 7469 6f6e 2069 7320  'Remediation is 
│ │ │ -001d71b0: 6e6f 7420 6170 706c 6963 6162 6c65 2c20  not applicable, 
│ │ │ -001d71c0: 6e6f 7468 696e 6720 7761 7320 646f 6e65  nothing was done
│ │ │ -001d71d0: 270a 6669 0a3c 2f63 6f64 653e 3c2f 7072  '.fi.
< │ │ │ +001d4d30: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001d4d40: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001d4d50: 7365 2220 6964 3d22 6964 3537 3022 3e3c se" id="id570">< │ │ │ +001d4d60: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001d4d70: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001d4d80: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001d4d90: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +001d4da0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:< │ │ │ +001d4df0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +001d4e20: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Reboo │ │ │ -001d6760: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -001d6770: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complex │ │ │ +001d4db0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +001d4dc0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
high
Rebo │ │ │ +001d4e00: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001d4e10: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
configure
│ │ │ +001d4e50: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ +001d4e60: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ +001d4e70: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ +001d4e80: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ +001d4e90: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ +001d4ea0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +001d4eb0: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ +001d4ec0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001d4ed0: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ +001d4ee0: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +001d4ef0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001d4f00: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001d4f10: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ +001d4f20: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ +001d4f30: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +001d4f40: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +001d4f50: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001d4f60: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001d4f70: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001d4f80: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001d4f90: 696f 6e5f 626f 6f74 5f6e 6f73 7569 640a  ion_boot_nosuid.
│ │ │ +001d4fa0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001d4fb0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001d4fc0: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ +001d4fd0: 2074 6f20 2f62 6f6f 743a 2043 6865 636b   to /boot: Check
│ │ │ +001d4fe0: 2069 6e66 6f72 6d61 7469 6f6e 2061 7373   information ass
│ │ │ +001d4ff0: 6f63 6961 7465 6420 746f 206d 6f75 6e74  ociated to mount
│ │ │ +001d5000: 706f 696e 7427 0a20 2061 6e73 6962 6c65  point'.  ansible
│ │ │ +001d5010: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ +001d5020: 3a20 6669 6e64 6d6e 7420 2d2d 6673 7461  : findmnt --fsta
│ │ │ +001d5030: 6220 272f 626f 6f74 270a 2020 7265 6769  b '/boot'.  regi
│ │ │ +001d5040: 7374 6572 3a20 6465 7669 6365 5f6e 616d  ster: device_nam
│ │ │ +001d5050: 650a 2020 6661 696c 6564 5f77 6865 6e3a  e.  failed_when:
│ │ │ +001d5060: 2064 6576 6963 655f 6e61 6d65 2e72 6320   device_name.rc 
│ │ │ +001d5070: 2667 743b 2031 0a20 2063 6861 6e67 6564  > 1.  changed
│ │ │ +001d5080: 5f77 6865 6e3a 2066 616c 7365 0a20 2063  _when: false.  c
│ │ │ +001d5090: 6865 636b 5f6d 6f64 653a 2066 616c 7365  heck_mode: false
│ │ │ +001d50a0: 0a20 2077 6865 6e3a 2028 206e 6f74 2028  .  when: ( not (
│ │ │ +001d50b0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +001d50c0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001d50d0: 6765 7320 616e 6420 2272 706d 2d6f 7374  ges and "rpm-ost
│ │ │ +001d50e0: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001d50f0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001d5100: 2020 2061 6e64 2022 626f 6f74 6322 2069     and "bootc" i
│ │ │ +001d5110: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001d5120: 7061 636b 6167 6573 2061 6e64 206e 6f74  packages and not
│ │ │ +001d5130: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ +001d5140: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ +001d5150: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001d5160: 2020 2061 6e64 2022 6f73 7472 6565 2220     and "ostree" 
│ │ │ +001d5170: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ +001d5180: 636d 646c 696e 6520 2920 616e 6420 6e6f  cmdline ) and no
│ │ │ +001d5190: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ +001d51a0: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ +001d51b0: 696e 0a20 2020 205b 2264 6f63 6b65 7222  in.    ["docker"
│ │ │ +001d51c0: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ +001d51d0: 222c 2022 706f 646d 616e 222c 2022 636f  ", "podman", "co
│ │ │ +001d51e0: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ +001d51f0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +001d5200: 3030 2d35 332d 4143 2d36 0a20 202d 204e  00-53-AC-6.  - N
│ │ │ +001d5210: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ +001d5220: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ +001d5230: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ +001d5240: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001d5250: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001d5260: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ +001d5270: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ +001d5280: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +001d5290: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +001d52a0: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +001d52b0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +001d52c0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001d52d0: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ +001d52e0: 6f6e 5f62 6f6f 745f 6e6f 7375 6964 0a20  on_boot_nosuid. 
│ │ │ +001d52f0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +001d5300: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ +001d5310: 6420 6e6f 7375 6964 204f 7074 696f 6e20  d nosuid Option 
│ │ │ +001d5320: 746f 202f 626f 6f74 3a20 4372 6561 7465  to /boot: Create
│ │ │ +001d5330: 206d 6f75 6e74 5f69 6e66 6f20 6469 6374   mount_info dict
│ │ │ +001d5340: 696f 6e61 7279 2076 6172 6961 626c 6527  ionary variable'
│ │ │ +001d5350: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ +001d5360: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b   mount_info: '{{
│ │ │ +001d5370: 206d 6f75 6e74 5f69 6e66 6f7c 6465 6661   mount_info|defa
│ │ │ +001d5380: 756c 7428 7b7d 297c 636f 6d62 696e 6528  ult({})|combine(
│ │ │ +001d5390: 7b69 7465 6d2e 303a 2069 7465 6d2e 317d  {item.0: item.1}
│ │ │ +001d53a0: 2920 7d7d 270a 2020 7769 7468 5f74 6f67  ) }}'.  with_tog
│ │ │ +001d53b0: 6574 6865 723a 0a20 202d 2027 7b7b 2064  ether:.  - '{{ d
│ │ │ +001d53c0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001d53d0: 745f 6c69 6e65 735b 305d 2e73 706c 6974  t_lines[0].split
│ │ │ +001d53e0: 2829 207c 206d 6170 2827 276c 6f77 6572  () | map(''lower
│ │ │ +001d53f0: 2727 2920 7c20 6c69 7374 207d 7d27 0a20  '') | list }}'. 
│ │ │ +001d5400: 202d 2027 7b7b 2064 6576 6963 655f 6e61   - '{{ device_na
│ │ │ +001d5410: 6d65 2e73 7464 6f75 745f 6c69 6e65 735b  me.stdout_lines[
│ │ │ +001d5420: 315d 2e73 706c 6974 2829 207c 206c 6973  1].split() | lis
│ │ │ +001d5430: 7420 7d7d 270a 2020 7768 656e 3a0a 2020  t }}'.  when:.  
│ │ │ +001d5440: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ +001d5450: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +001d5460: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001d5470: 2022 7270 6d2d 6f73 7472 6565 2220 696e   "rpm-ostree" in
│ │ │ +001d5480: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001d5490: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001d54a0: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ +001d54b0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001d54c0: 7320 616e 6420 6e6f 7420 226f 7065 6e73  s and not "opens
│ │ │ +001d54d0: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ +001d54e0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001d54f0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001d5500: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ +001d5510: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ +001d5520: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ +001d5530: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ +001d5540: 696f 6e5f 7479 7065 2069 6e0a 2020 2020  ion_type in.    
│ │ │ +001d5550: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ +001d5560: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ +001d5570: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572  man", "container
│ │ │ +001d5580: 225d 2029 2029 0a20 202d 2064 6576 6963  "] ) ).  - devic
│ │ │ +001d5590: 655f 6e61 6d65 2e73 7464 6f75 7420 6973  e_name.stdout is
│ │ │ +001d55a0: 2064 6566 696e 6564 2061 6e64 2064 6576   defined and dev
│ │ │ +001d55b0: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ +001d55c0: 6c69 6e65 7320 6973 2064 6566 696e 6564  lines is defined
│ │ │ +001d55d0: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ +001d55e0: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ +001d55f0: 6820 2667 743b 2030 290a 2020 7461 6773  h > 0).  tags
│ │ │ +001d5600: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +001d5610: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ +001d5620: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ +001d5630: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001d5640: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ +001d5650: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ +001d5660: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001d5670: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ +001d5680: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ +001d5690: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +001d56a0: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +001d56b0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +001d56c0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +001d56d0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001d56e0: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f62  - mount_option_b
│ │ │ +001d56f0: 6f6f 745f 6e6f 7375 6964 0a20 202d 206e  oot_nosuid.  - n
│ │ │ +001d5700: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +001d5710: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ +001d5720: 7375 6964 204f 7074 696f 6e20 746f 202f  suid Option to /
│ │ │ +001d5730: 626f 6f74 3a20 4966 202f 626f 6f74 206e  boot: If /boot n
│ │ │ +001d5740: 6f74 206d 6f75 6e74 6564 2c20 6372 6166  ot mounted, craf
│ │ │ +001d5750: 7420 6d6f 756e 745f 696e 666f 206d 616e  t mount_info man
│ │ │ +001d5760: 7561 6c6c 7927 0a20 2073 6574 5f66 6163  ually'.  set_fac
│ │ │ +001d5770: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66  t:.    mount_inf
│ │ │ +001d5780: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66  o: '{{ mount_inf
│ │ │ +001d5790: 6f7c 6465 6661 756c 7428 7b7d 297c 636f  o|default({})|co
│ │ │ +001d57a0: 6d62 696e 6528 7b69 7465 6d2e 303a 2069  mbine({item.0: i
│ │ │ +001d57b0: 7465 6d2e 317d 2920 7d7d 270a 2020 7769  tem.1}) }}'.  wi
│ │ │ +001d57c0: 7468 5f74 6f67 6574 6865 723a 0a20 202d  th_together:.  -
│ │ │ +001d57d0: 202d 2074 6172 6765 740a 2020 2020 2d20   - target.    - 
│ │ │ +001d57e0: 736f 7572 6365 0a20 2020 202d 2066 7374  source.    - fst
│ │ │ +001d57f0: 7970 650a 2020 2020 2d20 6f70 7469 6f6e  ype.    - option
│ │ │ +001d5800: 730a 2020 2d20 2d20 2f62 6f6f 740a 2020  s.  - - /boot.  
│ │ │ +001d5810: 2020 2d20 2727 0a20 2020 202d 2027 270a    - ''.    - ''.
│ │ │ +001d5820: 2020 2020 2d20 6465 6661 756c 7473 0a20      - defaults. 
│ │ │ +001d5830: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ +001d5840: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ +001d5850: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001d5860: 6b61 6765 7320 616e 6420 2272 706d 2d6f  kages and "rpm-o
│ │ │ +001d5870: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001d5880: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001d5890: 0a20 2020 2061 6e64 2022 626f 6f74 6322  .    and "bootc"
│ │ │ +001d58a0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001d58b0: 732e 7061 636b 6167 6573 2061 6e64 206e  s.packages and n
│ │ │ +001d58c0: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ +001d58d0: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ +001d58e0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001d58f0: 0a20 2020 2061 6e64 2022 6f73 7472 6565  .    and "ostree
│ │ │ +001d5900: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ +001d5910: 635f 636d 646c 696e 6520 2920 616e 6420  c_cmdline ) and 
│ │ │ +001d5920: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ +001d5930: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ +001d5940: 6520 696e 0a20 2020 205b 2264 6f63 6b65  e in.    ["docke
│ │ │ +001d5950: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ +001d5960: 767a 222c 2022 706f 646d 616e 222c 2022  vz", "podman", "
│ │ │ +001d5970: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ +001d5980: 2020 2d20 2822 2d2d 6673 7461 6222 207c    - ("--fstab" |
│ │ │ +001d5990: 206c 656e 6774 6820 3d3d 2030 290a 2020   length == 0).  
│ │ │ +001d59a0: 2d20 6465 7669 6365 5f6e 616d 652e 7374  - device_name.st
│ │ │ +001d59b0: 646f 7574 2069 7320 6465 6669 6e65 6420  dout is defined 
│ │ │ +001d59c0: 616e 6420 6465 7669 6365 5f6e 616d 652e  and device_name.
│ │ │ +001d59d0: 7374 646f 7574 5f6c 696e 6573 2069 7320  stdout_lines is 
│ │ │ +001d59e0: 6465 6669 6e65 640a 2020 2d20 2864 6576  defined.  - (dev
│ │ │ +001d59f0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ +001d5a00: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ +001d5a10: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +001d5a20: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ +001d5a30: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001d5a40: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ +001d5a50: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +001d5a60: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001d5a70: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001d5a80: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ +001d5a90: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ +001d5aa0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +001d5ab0: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +001d5ac0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001d5ad0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001d5ae0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001d5af0: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001d5b00: 696f 6e5f 626f 6f74 5f6e 6f73 7569 640a  ion_boot_nosuid.
│ │ │ +001d5b10: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001d5b20: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001d5b30: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ +001d5b40: 2074 6f20 2f62 6f6f 743a 204d 616b 6520   to /boot: Make 
│ │ │ +001d5b50: 7375 7265 206e 6f73 7569 6420 6f70 7469  sure nosuid opti
│ │ │ +001d5b60: 6f6e 2069 7320 7061 7274 206f 6620 7468  on is part of th
│ │ │ +001d5b70: 6520 746f 202f 626f 6f74 0a20 2020 206f  e to /boot.    o
│ │ │ +001d5b80: 7074 696f 6e73 270a 2020 7365 745f 6661  ptions'.  set_fa
│ │ │ +001d5b90: 6374 3a0a 2020 2020 6d6f 756e 745f 696e  ct:.    mount_in
│ │ │ +001d5ba0: 666f 3a20 277b 7b20 6d6f 756e 745f 696e  fo: '{{ mount_in
│ │ │ +001d5bb0: 666f 207c 2063 6f6d 6269 6e65 2820 7b27  fo | combine( {'
│ │ │ +001d5bc0: 276f 7074 696f 6e73 2727 3a27 2727 277e  'options'':''''~
│ │ │ +001d5bd0: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469  (mount_info.opti
│ │ │ +001d5be0: 6f6e 7320 7c0a 2020 2020 2020 6465 6661  ons |.      defa
│ │ │ +001d5bf0: 756c 7428 2727 2727 2929 7e28 2727 2c27  ult(''''))~('','
│ │ │ +001d5c00: 2720 6966 2028 6d6f 756e 745f 696e 666f  ' if (mount_info
│ │ │ +001d5c10: 2e6f 7074 696f 6e73 207c 2064 6566 6175  .options | defau
│ │ │ +001d5c20: 6c74 2827 2727 2729 2920 656c 7365 2027  lt('''')) else '
│ │ │ +001d5c30: 2727 2729 7e27 276e 6f73 7569 6427 270a  ''')~''nosuid''.
│ │ │ +001d5c40: 2020 2020 2020 7d29 207d 7d27 0a20 2077        }) }}'.  w
│ │ │ +001d5c50: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +001d5c60: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +001d5c70: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001d5c80: 6765 7320 616e 6420 2272 706d 2d6f 7374  ges and "rpm-ost
│ │ │ +001d5c90: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001d5ca0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001d5cb0: 2020 2061 6e64 2022 626f 6f74 6322 2069     and "bootc" i
│ │ │ +001d5cc0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001d5cd0: 7061 636b 6167 6573 2061 6e64 206e 6f74  packages and not
│ │ │ +001d5ce0: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ +001d5cf0: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ +001d5d00: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001d5d10: 2020 2061 6e64 2022 6f73 7472 6565 2220     and "ostree" 
│ │ │ +001d5d20: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ +001d5d30: 636d 646c 696e 6520 2920 616e 6420 6e6f  cmdline ) and no
│ │ │ +001d5d40: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ +001d5d50: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ +001d5d60: 696e 0a20 2020 205b 2264 6f63 6b65 7222  in.    ["docker"
│ │ │ +001d5d70: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ +001d5d80: 222c 2022 706f 646d 616e 222c 2022 636f  ", "podman", "co
│ │ │ +001d5d90: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ +001d5da0: 2d20 6d6f 756e 745f 696e 666f 2069 7320  - mount_info is 
│ │ │ +001d5db0: 6465 6669 6e65 6420 616e 6420 226e 6f73  defined and "nos
│ │ │ +001d5dc0: 7569 6422 206e 6f74 2069 6e20 286d 6f75  uid" not in (mou
│ │ │ +001d5dd0: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ +001d5de0: 7c20 6465 6661 756c 7428 2727 2929 0a20  | default('')). 
│ │ │ +001d5df0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +001d5e00: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ +001d5e10: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001d5e20: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ +001d5e30: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +001d5e40: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001d5e50: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001d5e60: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ +001d5e70: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ +001d5e80: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +001d5e90: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +001d5ea0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001d5eb0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001d5ec0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001d5ed0: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001d5ee0: 696f 6e5f 626f 6f74 5f6e 6f73 7569 640a  ion_boot_nosuid.
│ │ │ +001d5ef0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001d5f00: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001d5f10: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ +001d5f20: 2074 6f20 2f62 6f6f 743a 2045 6e73 7572   to /boot: Ensur
│ │ │ +001d5f30: 6520 2f62 6f6f 7420 6973 206d 6f75 6e74  e /boot is mount
│ │ │ +001d5f40: 6564 2077 6974 6820 6e6f 7375 6964 206f  ed with nosuid o
│ │ │ +001d5f50: 7074 696f 6e27 0a20 2061 6e73 6962 6c65  ption'.  ansible
│ │ │ +001d5f60: 2e70 6f73 6978 2e6d 6f75 6e74 3a0a 2020  .posix.mount:.  
│ │ │ +001d5f70: 2020 7061 7468 3a20 2f62 6f6f 740a 2020    path: /boot.  
│ │ │ +001d5f80: 2020 7372 633a 2027 7b7b 206d 6f75 6e74    src: '{{ mount
│ │ │ +001d5f90: 5f69 6e66 6f2e 736f 7572 6365 207c 2064  _info.source | d
│ │ │ +001d5fa0: 6566 6175 6c74 2827 2727 2729 207d 7d27  efault('''') }}'
│ │ │ +001d5fb0: 0a20 2020 206f 7074 733a 2027 7b7b 206d  .    opts: '{{ m
│ │ │ +001d5fc0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ +001d5fd0: 7320 7c20 6465 6661 756c 7428 2727 2727  s | default(''''
│ │ │ +001d5fe0: 2920 7d7d 270a 2020 2020 7374 6174 653a  ) }}'.    state:
│ │ │ +001d5ff0: 206d 6f75 6e74 6564 0a20 2020 2066 7374   mounted.    fst
│ │ │ +001d6000: 7970 653a 2027 7b7b 206d 6f75 6e74 5f69  ype: '{{ mount_i
│ │ │ +001d6010: 6e66 6f2e 6673 7479 7065 207c 2064 6566  nfo.fstype | def
│ │ │ +001d6020: 6175 6c74 2827 2727 2729 207d 7d27 0a20  ault('''') }}'. 
│ │ │ +001d6030: 2072 6567 6973 7465 723a 206d 6f75 6e74   register: mount
│ │ │ +001d6040: 5f72 6573 756c 740a 2020 6661 696c 6564  _result.  failed
│ │ │ +001d6050: 5f77 6865 6e3a 0a20 202d 206d 6f75 6e74  _when:.  - mount
│ │ │ +001d6060: 5f72 6573 756c 7420 6973 2066 6169 6c65  _result is faile
│ │ │ +001d6070: 640a 2020 2d20 2727 2774 6172 6765 7420  d.  - '''target 
│ │ │ +001d6080: 6973 2062 7573 7927 2720 6e6f 7420 696e  is busy'' not in
│ │ │ +001d6090: 2028 6d6f 756e 745f 7265 7375 6c74 2e6d   (mount_result.m
│ │ │ +001d60a0: 7367 207c 2064 6566 6175 6c74 2827 2727  sg | default('''
│ │ │ +001d60b0: 2729 2927 0a20 202d 2027 2727 616c 7265  '))'.  - '''alre
│ │ │ +001d60c0: 6164 7920 6d6f 756e 7465 6427 2720 6e6f  ady mounted'' no
│ │ │ +001d60d0: 7420 696e 2028 6d6f 756e 745f 7265 7375  t in (mount_resu
│ │ │ +001d60e0: 6c74 2e6d 7367 207c 2064 6566 6175 6c74  lt.msg | default
│ │ │ +001d60f0: 2827 2727 2729 2927 0a20 2077 6865 6e3a  (''''))'.  when:
│ │ │ +001d6100: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ +001d6110: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +001d6120: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001d6130: 616e 6420 2272 706d 2d6f 7374 7265 6522  and "rpm-ostree"
│ │ │ +001d6140: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001d6150: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001d6160: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ +001d6170: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001d6180: 6167 6573 2061 6e64 206e 6f74 2022 6f70  ages and not "op
│ │ │ +001d6190: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ +001d61a0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001d61b0: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001d61c0: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ +001d61d0: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ +001d61e0: 696e 6520 2920 616e 6420 6e6f 7420 2820  ine ) and not ( 
│ │ │ +001d61f0: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ +001d6200: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20  zation_type in. 
│ │ │ +001d6210: 2020 205b 2264 6f63 6b65 7222 2c20 226c     ["docker", "l
│ │ │ +001d6220: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ +001d6230: 706f 646d 616e 222c 2022 636f 6e74 6169  podman", "contai
│ │ │ +001d6240: 6e65 7222 5d20 2920 290a 2020 2d20 6d6f  ner"] ) ).  - mo
│ │ │ +001d6250: 756e 745f 696e 666f 2069 7320 6465 6669  unt_info is defi
│ │ │ +001d6260: 6e65 640a 2020 2d20 2864 6576 6963 655f  ned.  - (device_
│ │ │ +001d6270: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ +001d6280: 6566 696e 6564 2061 6e64 2028 6465 7669  efined and (devi
│ │ │ +001d6290: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ +001d62a0: 206c 656e 6774 6820 2667 743b 2030 2929   length > 0))
│ │ │ +001d62b0: 206f 7220 2822 2d2d 6673 7461 6222 0a20   or ("--fstab". 
│ │ │ +001d62c0: 2020 207c 206c 656e 6774 6820 3d3d 2030     | length == 0
│ │ │ +001d62d0: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ +001d62e0: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ +001d62f0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001d6300: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ +001d6310: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +001d6320: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001d6330: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +001d6340: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +001d6350: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ +001d6360: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ +001d6370: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ +001d6380: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ +001d6390: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +001d63a0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +001d63b0: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ +001d63c0: 6f70 7469 6f6e 5f62 6f6f 745f 6e6f 7375  option_boot_nosu
│ │ │ +001d63d0: 6964 0a20 202d 206e 6f5f 7265 626f 6f74  id.  - no_reboot
│ │ │ +001d63e0: 5f6e 6565 6465 640a 3c2f 636f 6465 3e3c  _needed.<
│ │ │ +001d63f0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ +001d64a0: 696f 6e20 5368 656c 6c20 7363 7269 7074 ion Shell script │ │ │ +001d64b0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Reboot:false │ │ │ +001d6550: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 # Remedi │ │ │ +001d6570: 6174 696f 6e20 6973 2061 7070 6c69 6361 ation is applica │ │ │ +001d6580: 626c 6520 6f6e 6c79 2069 6e20 6365 7274 ble only in cert │ │ │ +001d6590: 6169 6e20 706c 6174 666f 726d 730a 6966 ain platforms.if │ │ │ +001d65a0: 2028 2021 2028 207b 2072 706d 202d 2d71 ( ! ( { rpm --q │ │ │ +001d65b0: 7569 6574 202d 7120 6b65 726e 656c 203b uiet -q kernel ; │ │ │ +001d65c0: 7d20 2661 6d70 3b26 616d 703b 207b 2072 } && { r │ │ │ +001d65d0: 706d 202d 2d71 7569 6574 202d 7120 7270 pm --quiet -q rp │ │ │ +001d65e0: 6d2d 6f73 7472 6565 203b 7d20 2661 6d70 m-ostree ;} & │ │ │ +001d65f0: 3b26 616d 703b 207b 2072 706d 202d 2d71 ;& { rpm --q │ │ │ +001d6600: 7569 6574 202d 7120 626f 6f74 6320 3b7d uiet -q bootc ;} │ │ │ +001d6610: 2026 616d 703b 2661 6d70 3b20 7b20 2120 && { ! │ │ │ +001d6620: 7270 6d20 2d2d 7175 6965 7420 2d71 206f rpm --quiet -q o │ │ │ +001d6630: 7065 6e73 6869 6674 2d6b 7562 656c 6574 penshift-kubelet │ │ │ +001d6640: 203b 7d20 2661 6d70 3b26 616d 703b 2028 ;} && ( │ │ │ +001d6650: 5b20 2d66 202f 7275 6e2f 6f73 7472 6565 [ -f /run/ostree │ │ │ +001d6660: 2d62 6f6f 7465 6420 5d20 7c7c 205b 202d -booted ] || [ - │ │ │ +001d6670: 4c20 2f6f 7374 7265 6520 5d29 2029 2026 L /ostree ]) ) & │ │ │ +001d6680: 616d 703b 2661 6d70 3b20 2120 2820 5b20 amp;& ! ( [ │ │ │ +001d6690: 2d66 202f 2e64 6f63 6b65 7265 6e76 205d -f /.dockerenv ] │ │ │ +001d66a0: 207c 7c20 5b20 2d66 202f 7275 6e2f 2e63 || [ -f /run/.c │ │ │ +001d66b0: 6f6e 7461 696e 6572 656e 7620 5d20 2920 ontainerenv ] ) │ │ │ +001d66c0: 293b 2074 6865 6e0a 0a66 756e 6374 696f ); then..functio │ │ │ +001d66d0: 6e20 7065 7266 6f72 6d5f 7265 6d65 6469 n perform_remedi │ │ │ +001d66e0: 6174 696f 6e20 7b0a 0a20 2020 200a 2020 ation {.. . │ │ │ +001d66f0: 2020 2020 2020 2320 7468 6520 6d6f 756e # the moun │ │ │ +001d6700: 7420 706f 696e 7420 2f62 6f6f 7420 6861 t point /boot ha │ │ │ +001d6710: 7320 746f 2062 6520 6465 6669 6e65 6420 s to be defined │ │ │ +001d6720: 696e 202f 6574 632f 6673 7461 620a 2020 in /etc/fstab. │ │ │ +001d6730: 2020 2020 2020 2320 6265 666f 7265 2074 # before t │ │ │ +001d6740: 6869 7320 7265 6d65 6469 6174 696f 6e20 his remediation │ │ │ +001d6750: 6361 6e20 6265 2065 7865 6375 7465 642e can be executed. │ │ │ +001d6760: 2049 6e20 6361 7365 2069 7420 6973 206e In case it is n │ │ │ +001d6770: 6f74 2064 6566 696e 6564 2c20 7468 650a ot defined, the. │ │ │ +001d6780: 2020 2020 2020 2020 2320 7265 6d65 6469 # remedi │ │ │ +001d6790: 6174 696f 6e20 6162 6f72 7473 2061 6e64 ation aborts and │ │ │ +001d67a0: 206e 6f20 6368 616e 6765 7320 7265 6761 no changes rega │ │ │ +001d67b0: 7264 696e 6720 7468 6520 6d6f 756e 7420 rding the mount │ │ │ +001d67c0: 706f 696e 7420 6172 6520 646f 6e65 2e0a point are done.. │ │ │ +001d67d0: 2020 2020 2020 2020 6d6f 756e 745f 706f mount_po │ │ │ +001d67e0: 696e 745f 6d61 7463 685f 7265 6765 7870 int_match_regexp │ │ │ +001d67f0: 3d22 2428 7072 696e 7466 2022 5e5b 5b3a ="$(printf "^[[: │ │ │ +001d6800: 7370 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b space:]]*[^#].*[ │ │ │ +001d6810: 5b3a 7370 6163 653a 5d5d 2573 5b5b 3a73 [:space:]]%s[[:s │ │ │ +001d6820: 7061 6365 3a5d 5d22 2022 2f62 6f6f 7422 pace:]]" "/boot" │ │ │ +001d6830: 2922 0a0a 2020 2020 6772 6570 2022 246d )".. grep "$m │ │ │ +001d6840: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368 ount_point_match │ │ │ +001d6850: 5f72 6567 6578 7022 202d 7120 2f65 7463 _regexp" -q /etc │ │ │ +001d6860: 2f66 7374 6162 205c 0a20 2020 2020 2020 /fstab \. │ │ │ +001d6870: 207c 7c20 7b20 6563 686f 2022 5468 6520 || { echo "The │ │ │ +001d6880: 6d6f 756e 7420 706f 696e 7420 272f 626f mount point '/bo │ │ │ +001d6890: 6f74 2720 6973 206e 6f74 2065 7665 6e20 ot' is not even │ │ │ +001d68a0: 696e 202f 6574 632f 6673 7461 622c 2073 in /etc/fstab, s │ │ │ +001d68b0: 6f20 7765 2063 616e 2774 2073 6574 2075 o we can't set u │ │ │ +001d68c0: 7020 6d6f 756e 7420 6f70 7469 6f6e 7322 p mount options" │ │ │ +001d68d0: 2026 6774 3b26 616d 703b 323b 0a20 2020 >&2;. │ │ │ +001d68e0: 2020 2020 2020 2020 2020 2020 2065 6368 ech │ │ │ +001d68f0: 6f20 224e 6f74 2072 656d 6564 6961 7469 o "Not remediati │ │ │ +001d6900: 6e67 2c20 6265 6361 7573 6520 7468 6572 ng, because ther │ │ │ +001d6910: 6520 6973 206e 6f20 7265 636f 7264 206f e is no record o │ │ │ +001d6920: 6620 2f62 6f6f 7420 696e 202f 6574 632f f /boot in /etc/ │ │ │ +001d6930: 6673 7461 6222 2026 6774 3b26 616d 703b fstab" >& │ │ │ +001d6940: 323b 2072 6574 7572 6e20 313b 207d 0a20 2; return 1; }. │ │ │ +001d6950: 2020 200a 0a0a 2020 2020 6d6f 756e 745f ... mount_ │ │ │ +001d6960: 706f 696e 745f 6d61 7463 685f 7265 6765 point_match_rege │ │ │ +001d6970: 7870 3d22 2428 7072 696e 7466 2022 5e5b xp="$(printf "^[ │ │ │ +001d6980: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e [:space:]]*[^#]. │ │ │ +001d6990: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b *[[:space:]]%s[[ │ │ │ +001d69a0: 3a73 7061 6365 3a5d 5d22 202f 626f 6f74 :space:]]" /boot │ │ │ +001d69b0: 2922 0a0a 2020 2020 2320 4966 2074 6865 )".. # If the │ │ │ +001d69c0: 206d 6f75 6e74 2070 6f69 6e74 2069 7320 mount point is │ │ │ +001d69d0: 6e6f 7420 696e 202f 6574 632f 6673 7461 not in /etc/fsta │ │ │ +001d69e0: 622c 2067 6574 2070 7265 7669 6f75 7320 b, get previous │ │ │ +001d69f0: 6d6f 756e 7420 6f70 7469 6f6e 7320 6672 mount options fr │ │ │ +001d6a00: 6f6d 202f 6574 632f 6d74 6162 0a20 2020 om /etc/mtab. │ │ │ +001d6a10: 2069 6620 2120 6772 6570 202d 7120 2224 if ! grep -q "$ │ │ │ +001d6a20: 6d6f 756e 745f 706f 696e 745f 6d61 7463 mount_point_matc │ │ │ +001d6a30: 685f 7265 6765 7870 2220 2f65 7463 2f66 h_regexp" /etc/f │ │ │ +001d6a40: 7374 6162 3b20 7468 656e 0a20 2020 2020 stab; then. │ │ │ +001d6a50: 2020 2023 2072 756e 7469 6d65 206f 7074 # runtime opt │ │ │ +001d6a60: 7320 7769 7468 6f75 7420 736f 6d65 2061 s without some a │ │ │ +001d6a70: 7574 6f6d 6174 6963 206b 6572 6e65 6c2f utomatic kernel/ │ │ │ +001d6a80: 7573 6572 7370 6163 652d 6164 6465 6420 userspace-added │ │ │ +001d6a90: 6465 6661 756c 7473 0a20 2020 2020 2020 defaults. │ │ │ +001d6aa0: 2070 7265 7669 6f75 735f 6d6f 756e 745f previous_mount_ │ │ │ +001d6ab0: 6f70 7473 3d24 2867 7265 7020 2224 6d6f opts=$(grep "$mo │ │ │ +001d6ac0: 756e 745f 706f 696e 745f 6d61 7463 685f unt_point_match_ │ │ │ +001d6ad0: 7265 6765 7870 2220 2f65 7463 2f6d 7461 regexp" /etc/mta │ │ │ +001d6ae0: 6220 7c20 6865 6164 202d 3120 7c20 2061 b | head -1 | a │ │ │ +001d6af0: 776b 2027 7b70 7269 6e74 2024 347d 2720 wk '{print $4}' │ │ │ +001d6b00: 5c0a 2020 2020 2020 2020 2020 2020 2020 \. │ │ │ +001d6b10: 2020 2020 2020 7c20 7365 6420 2d45 2022 | sed -E " │ │ │ +001d6b20: 732f 2872 777c 6465 6661 756c 7473 7c73 s/(rw|defaults|s │ │ │ +001d6b30: 6563 6c61 6265 6c7c 6e6f 7375 6964 2928 eclabel|nosuid)( │ │ │ +001d6b40: 2c7c 2429 2f2f 673b 732f 2c24 2f2f 2229 ,|$)//g;s/,$//") │ │ │ +001d6b50: 0a20 2020 2020 2020 205b 2022 2470 7265 . [ "$pre │ │ │ +001d6b60: 7669 6f75 735f 6d6f 756e 745f 6f70 7473 vious_mount_opts │ │ │ +001d6b70: 2220 5d20 2661 6d70 3b26 616d 703b 2070 " ] && p │ │ │ +001d6b80: 7265 7669 6f75 735f 6d6f 756e 745f 6f70 revious_mount_op │ │ │ +001d6b90: 7473 2b3d 222c 220a 2020 2020 2020 2020 ts+=",". │ │ │ +001d6ba0: 2320 496e 2069 736f 3936 3630 2066 696c # In iso9660 fil │ │ │ +001d6bb0: 6573 7973 7465 6d73 206d 7461 6220 636f esystems mtab co │ │ │ +001d6bc0: 756c 6420 6465 7363 7269 6265 2061 2022 uld describe a " │ │ │ +001d6bd0: 626c 6f63 6b73 697a 6522 2076 616c 7565 blocksize" value │ │ │ +001d6be0: 2c20 7468 6973 2073 686f 756c 6420 6265 , this should be │ │ │ +001d6bf0: 2072 6566 6c65 6374 6564 2069 6e0a 2020 reflected in. │ │ │ +001d6c00: 2020 2020 2020 2320 6673 7461 6220 6173 # fstab as │ │ │ +001d6c10: 2022 626c 6f63 6b22 2e20 2054 6865 206e "block". The n │ │ │ +001d6c20: 6578 7420 7661 7269 6162 6c65 2069 7320 ext variable is │ │ │ +001d6c30: 746f 2073 6174 6973 6679 2073 6865 6c6c to satisfy shell │ │ │ +001d6c40: 6368 6563 6b20 5343 3230 3530 2e0a 2020 check SC2050.. │ │ │ +001d6c50: 2020 2020 2020 6673 5f74 7970 653d 2222 fs_type="" │ │ │ +001d6c60: 0a20 2020 2020 2020 2069 6620 5b20 2022 . if [ " │ │ │ +001d6c70: 2466 735f 7479 7065 2220 3d3d 2022 6973 $fs_type" == "is │ │ │ +001d6c80: 6f39 3636 3022 205d 203b 2074 6865 6e0a o9660" ] ; then. │ │ │ +001d6c90: 2020 2020 2020 2020 2020 2020 7072 6576 prev │ │ │ +001d6ca0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d ious_mount_opts= │ │ │ +001d6cb0: 2428 7365 6420 2773 2f62 6c6f 636b 7369 $(sed 's/blocksi │ │ │ +001d6cc0: 7a65 3d2f 626c 6f63 6b3d 2f27 2026 6c74 ze=/block=/' < │ │ │ +001d6cd0: 3b26 6c74 3b26 6c74 3b20 2224 7072 6576 ;<< "$prev │ │ │ +001d6ce0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 7322 ious_mount_opts" │ │ │ +001d6cf0: 290a 2020 2020 2020 2020 6669 0a20 2020 ). fi. │ │ │ +001d6d00: 2020 2020 2065 6368 6f20 2220 2f62 6f6f echo " /boo │ │ │ +001d6d10: 7420 2064 6566 6175 6c74 732c 247b 7072 t defaults,${pr │ │ │ +001d6d20: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074 evious_mount_opt │ │ │ +001d6d30: 737d 6e6f 7375 6964 2030 2030 2220 2667 s}nosuid 0 0" &g │ │ │ +001d6d40: 743b 2667 743b 202f 6574 632f 6673 7461 t;> /etc/fsta │ │ │ +001d6d50: 620a 2020 2020 2320 4966 2074 6865 206d b. # If the m │ │ │ +001d6d60: 6f75 6e74 5f6f 7074 206f 7074 696f 6e20 ount_opt option │ │ │ +001d6d70: 6973 206e 6f74 2061 6c72 6561 6479 2069 is not already i │ │ │ +001d6d80: 6e20 7468 6520 6d6f 756e 7420 706f 696e n the mount poin │ │ │ +001d6d90: 7427 7320 2f65 7463 2f66 7374 6162 2065 t's /etc/fstab e │ │ │ +001d6da0: 6e74 7279 2c20 6164 6420 6974 0a20 2020 ntry, add it. │ │ │ +001d6db0: 2065 6c69 6620 2120 6772 6570 2022 246d elif ! grep "$m │ │ │ +001d6dc0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368 ount_point_match │ │ │ +001d6dd0: 5f72 6567 6578 7022 202f 6574 632f 6673 _regexp" /etc/fs │ │ │ +001d6de0: 7461 6220 7c20 6772 6570 202d 7120 226e tab | grep -q "n │ │ │ +001d6df0: 6f73 7569 6422 3b20 7468 656e 0a20 2020 osuid"; then. │ │ │ +001d6e00: 2020 2020 2070 7265 7669 6f75 735f 6d6f previous_mo │ │ │ +001d6e10: 756e 745f 6f70 7473 3d24 2867 7265 7020 unt_opts=$(grep │ │ │ +001d6e20: 2224 6d6f 756e 745f 706f 696e 745f 6d61 "$mount_point_ma │ │ │ +001d6e30: 7463 685f 7265 6765 7870 2220 2f65 7463 tch_regexp" /etc │ │ │ +001d6e40: 2f66 7374 6162 207c 2061 776b 2027 7b70 /fstab | awk '{p │ │ │ +001d6e50: 7269 6e74 2024 347d 2729 0a20 2020 2020 rint $4}'). │ │ │ +001d6e60: 2020 2073 6564 202d 6920 2273 7c5c 2824 sed -i "s|\($ │ │ │ +001d6e70: 7b6d 6f75 6e74 5f70 6f69 6e74 5f6d 6174 {mount_point_mat │ │ │ +001d6e80: 6368 5f72 6567 6578 707d 2e2a 247b 7072 ch_regexp}.*${pr │ │ │ +001d6e90: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074 evious_mount_opt │ │ │ +001d6ea0: 737d 5c29 7c5c 312c 6e6f 7375 6964 7c22 s}\)|\1,nosuid|" │ │ │ +001d6eb0: 202f 6574 632f 6673 7461 620a 2020 2020 /etc/fstab. │ │ │ +001d6ec0: 6669 0a0a 0a20 2020 2069 6620 6d6b 6469 fi... if mkdi │ │ │ +001d6ed0: 7220 2d70 2022 2f62 6f6f 7422 3b20 7468 r -p "/boot"; th │ │ │ +001d6ee0: 656e 0a20 2020 2020 2020 2069 6620 6d6f en. if mo │ │ │ +001d6ef0: 756e 7470 6f69 6e74 202d 7120 222f 626f untpoint -q "/bo │ │ │ +001d6f00: 6f74 223b 2074 6865 6e0a 2020 2020 2020 ot"; then. │ │ │ +001d6f10: 2020 2020 2020 6d6f 756e 7420 2d6f 2072 mount -o r │ │ │ +001d6f20: 656d 6f75 6e74 202d 2d74 6172 6765 7420 emount --target │ │ │ +001d6f30: 222f 626f 6f74 220a 2020 2020 2020 2020 "/boot". │ │ │ +001d6f40: 6669 0a20 2020 2066 690a 7d0a 0a70 6572 fi. fi.}..per │ │ │ +001d6f50: 666f 726d 5f72 656d 6564 6961 7469 6f6e form_remediation │ │ │ +001d6f60: 0a0a 656c 7365 0a20 2020 2026 6774 3b26 ..else. >& │ │ │ +001d6f70: 616d 703b 3220 6563 686f 2027 5265 6d65 amp;2 echo 'Reme │ │ │ +001d6f80: 6469 6174 696f 6e20 6973 206e 6f74 2061 diation is not a │ │ │ +001d6f90: 7070 6c69 6361 626c 652c 206e 6f74 6869 pplicable, nothi │ │ │ +001d6fa0: 6e67 2077 6173 2064 6f6e 6527 0a66 690a ng was done'.fi. │ │ │ +001d6fb0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64 │ │ │ +001d7060: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ +001d7070: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ +001d7080: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity:< │ │ │ +001d7170: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
.part /boot --m
│ │ │ +001d71c0: 6f75 6e74 6f70 7469 6f6e 733d 226e 6f73  ountoptions="nos
│ │ │ +001d71d0: 7569 6422 0a3c 2f63 6f64 653e 3c2f 7072  uid".
│ │ │ 001d7200: 3c2f 7461 626c 653e 3c2f 7464 3e3c 2f74
low
Disru │ │ │ +001d7130: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e68 ption:h │ │ │ +001d7140: 6967 683c 2f74 643e 3c2f 7472 3e3c 7472 igh
Reboot:false
Stra │ │ │ +001d7180: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +001d7190: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Reme │ │ │ -001d7bc0: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ -001d7bd0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -001d7be0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -001d7c80: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr> │ │ │ -001d7cd0: 3c74 723e 3c74 683e 5374 7261 7465 6779
.pa
│ │ │ -001d7d10: 7274 202f 686f 6d65 202d 2d6d 6f75 6e74  rt /home --mount
│ │ │ -001d7d20: 6f70 7469 6f6e 733d 226e 6f65 7865 6322  options="noexec"
│ │ │ -001d7d30: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Ans │ │ │ -001d7df0: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ -001d7e00: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Co │ │ │ -001d7c60: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -001d7c90: 6e3a 3c2f 7468 3e3c 7464 3e68 6967 683c n:high< │ │ │ -001d7ca0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -001d7ce0: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -001d7cf0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexity:< │ │ │ -001d7ef0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
low
Disru │ │ │ -001d7eb0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e68 ption:h │ │ │ -001d7ec0: 6967 683c 2f74 643e 3c2f 7472 3e3c 7472 igh
Reboot:false
Stra │ │ │ -001d7f00: 7465 6779 3a3c 2f74 683e 3c74 643e 636f tegy:co │ │ │ -001d7f10: 6e66 6967 7572 653c 2f74 643e 3c2f 7472 nfigure
- name: Gath
│ │ │ -001d7f40: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ -001d7f50: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ -001d7f60: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ -001d7f70: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ -001d7f80: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001d7f90: 434d 2d36 2862 290a 2020 2d20 636f 6e66  CM-6(b).  - conf
│ │ │ -001d7fa0: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -001d7fb0: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -001d7fc0: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -001d7fd0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -001d7fe0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -001d7ff0: 756e 745f 6f70 7469 6f6e 5f68 6f6d 655f  unt_option_home_
│ │ │ -001d8000: 6e6f 6578 6563 0a20 202d 206e 6f5f 7265  noexec.  - no_re
│ │ │ -001d8010: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -001d8020: 616d 653a 2027 4164 6420 6e6f 6578 6563  ame: 'Add noexec
│ │ │ -001d8030: 204f 7074 696f 6e20 746f 202f 686f 6d65   Option to /home
│ │ │ -001d8040: 3a20 4368 6563 6b20 696e 666f 726d 6174  : Check informat
│ │ │ -001d8050: 696f 6e20 6173 736f 6369 6174 6564 2074  ion associated t
│ │ │ -001d8060: 6f20 6d6f 756e 7470 6f69 6e74 270a 2020  o mountpoint'.  
│ │ │ -001d8070: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -001d8080: 636f 6d6d 616e 643a 2066 696e 646d 6e74  command: findmnt
│ │ │ -001d8090: 202d 2d66 7374 6162 2027 2f68 6f6d 6527   --fstab '/home'
│ │ │ -001d80a0: 0a20 2072 6567 6973 7465 723a 2064 6576  .  register: dev
│ │ │ -001d80b0: 6963 655f 6e61 6d65 0a20 2066 6169 6c65  ice_name.  faile
│ │ │ -001d80c0: 645f 7768 656e 3a20 6465 7669 6365 5f6e  d_when: device_n
│ │ │ -001d80d0: 616d 652e 7263 2026 6774 3b20 310a 2020  ame.rc > 1.  
│ │ │ -001d80e0: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ -001d80f0: 6c73 650a 2020 6368 6563 6b5f 6d6f 6465  lse.  check_mode
│ │ │ -001d8100: 3a20 6661 6c73 650a 2020 7768 656e 3a20  : false.  when: 
│ │ │ -001d8110: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -001d8120: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001d8130: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001d8140: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ -001d8150: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001d8160: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ -001d8170: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -001d8180: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001d8190: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001d81a0: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001d81b0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001d81c0: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ -001d81d0: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001d81e0: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ -001d81f0: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001d8200: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001d8210: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ -001d8220: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -001d8230: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -001d8240: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ -001d8250: 2029 2029 0a20 2074 6167 733a 0a20 202d   ) ).  tags:.  -
│ │ │ -001d8260: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001d8270: 3628 6229 0a20 202d 2063 6f6e 6669 6775  6(b).  - configu
│ │ │ -001d8280: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ -001d8290: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ -001d82a0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -001d82b0: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ -001d82c0: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ -001d82d0: 5f6f 7074 696f 6e5f 686f 6d65 5f6e 6f65  _option_home_noe
│ │ │ -001d82e0: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f  xec.  - no_reboo
│ │ │ -001d82f0: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ -001d8300: 3a20 2741 6464 206e 6f65 7865 6320 4f70  : 'Add noexec Op
│ │ │ -001d8310: 7469 6f6e 2074 6f20 2f68 6f6d 653a 2043  tion to /home: C
│ │ │ -001d8320: 7265 6174 6520 6d6f 756e 745f 696e 666f  reate mount_info
│ │ │ -001d8330: 2064 6963 7469 6f6e 6172 7920 7661 7269   dictionary vari
│ │ │ -001d8340: 6162 6c65 270a 2020 7365 745f 6661 6374  able'.  set_fact
│ │ │ -001d8350: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ -001d8360: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001d8370: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d  |default({})|com
│ │ │ -001d8380: 6269 6e65 287b 6974 656d 2e30 3a20 6974  bine({item.0: it
│ │ │ -001d8390: 656d 2e31 7d29 207d 7d27 0a20 2077 6974  em.1}) }}'.  wit
│ │ │ -001d83a0: 685f 746f 6765 7468 6572 3a0a 2020 2d20  h_together:.  - 
│ │ │ -001d83b0: 277b 7b20 6465 7669 6365 5f6e 616d 652e  '{{ device_name.
│ │ │ -001d83c0: 7374 646f 7574 5f6c 696e 6573 5b30 5d2e  stdout_lines[0].
│ │ │ -001d83d0: 7370 6c69 7428 2920 7c20 6d61 7028 2727  split() | map(''
│ │ │ -001d83e0: 6c6f 7765 7227 2729 207c 206c 6973 7420  lower'') | list 
│ │ │ -001d83f0: 7d7d 270a 2020 2d20 277b 7b20 6465 7669  }}'.  - '{{ devi
│ │ │ -001d8400: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ -001d8410: 696e 6573 5b31 5d2e 7370 6c69 7428 2920  ines[1].split() 
│ │ │ -001d8420: 7c20 6c69 7374 207d 7d27 0a20 2077 6865  | list }}'.  whe
│ │ │ -001d8430: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ -001d8440: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -001d8450: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001d8460: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ -001d8470: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ -001d8480: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001d8490: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -001d84a0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001d84b0: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ -001d84c0: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001d84d0: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001d84e0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001d84f0: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -001d8500: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -001d8510: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ -001d8520: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001d8530: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001d8540: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ -001d8550: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -001d8560: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ -001d8570: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001d8580: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001d8590: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ -001d85a0: 6420 6465 7669 6365 5f6e 616d 652e 7374  d device_name.st
│ │ │ -001d85b0: 646f 7574 5f6c 696e 6573 2069 7320 6465  dout_lines is de
│ │ │ -001d85c0: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ -001d85d0: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ -001d85e0: 6c65 6e67 7468 2026 6774 3b20 3029 0a20  length > 0). 
│ │ │ -001d85f0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -001d8600: 3830 302d 3533 2d43 4d2d 3628 6229 0a20  800-53-CM-6(b). 
│ │ │ -001d8610: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -001d8620: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -001d8630: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -001d8640: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -001d8650: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -001d8660: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ -001d8670: 6e5f 686f 6d65 5f6e 6f65 7865 630a 2020  n_home_noexec.  
│ │ │ -001d8680: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -001d8690: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ -001d86a0: 206e 6f65 7865 6320 4f70 7469 6f6e 2074   noexec Option t
│ │ │ -001d86b0: 6f20 2f68 6f6d 653a 2049 6620 2f68 6f6d  o /home: If /hom
│ │ │ -001d86c0: 6520 6e6f 7420 6d6f 756e 7465 642c 2063  e not mounted, c
│ │ │ -001d86d0: 7261 6674 206d 6f75 6e74 5f69 6e66 6f20  raft mount_info 
│ │ │ -001d86e0: 6d61 6e75 616c 6c79 270a 2020 7365 745f  manually'.  set_
│ │ │ -001d86f0: 6661 6374 3a0a 2020 2020 6d6f 756e 745f  fact:.    mount_
│ │ │ -001d8700: 696e 666f 3a20 277b 7b20 6d6f 756e 745f  info: '{{ mount_
│ │ │ -001d8710: 696e 666f 7c64 6566 6175 6c74 287b 7d29  info|default({})
│ │ │ -001d8720: 7c63 6f6d 6269 6e65 287b 6974 656d 2e30  |combine({item.0
│ │ │ -001d8730: 3a20 6974 656d 2e31 7d29 207d 7d27 0a20  : item.1}) }}'. 
│ │ │ -001d8740: 2077 6974 685f 746f 6765 7468 6572 3a0a   with_together:.
│ │ │ -001d8750: 2020 2d20 2d20 7461 7267 6574 0a20 2020    - - target.   
│ │ │ -001d8760: 202d 2073 6f75 7263 650a 2020 2020 2d20   - source.    - 
│ │ │ -001d8770: 6673 7479 7065 0a20 2020 202d 206f 7074  fstype.    - opt
│ │ │ -001d8780: 696f 6e73 0a20 202d 202d 202f 686f 6d65  ions.  - - /home
│ │ │ -001d8790: 0a20 2020 202d 2027 270a 2020 2020 2d20  .    - ''.    - 
│ │ │ -001d87a0: 2727 0a20 2020 202d 2064 6566 6175 6c74  ''.    - default
│ │ │ -001d87b0: 730a 2020 7768 656e 3a0a 2020 2d20 2820  s.  when:.  - ( 
│ │ │ -001d87c0: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ -001d87d0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001d87e0: 7061 636b 6167 6573 2061 6e64 2022 7270  packages and "rp
│ │ │ -001d87f0: 6d2d 6f73 7472 6565 2220 696e 2061 6e73  m-ostree" in ans
│ │ │ -001d8800: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001d8810: 6765 730a 2020 2020 616e 6420 2262 6f6f  ges.    and "boo
│ │ │ -001d8820: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ -001d8830: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001d8840: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ -001d8850: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ -001d8860: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001d8870: 6765 730a 2020 2020 616e 6420 226f 7374  ges.    and "ost
│ │ │ -001d8880: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -001d8890: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061  proc_cmdline ) a
│ │ │ -001d88a0: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ -001d88b0: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ -001d88c0: 7479 7065 2069 6e0a 2020 2020 5b22 646f  type in.    ["do
│ │ │ -001d88d0: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ -001d88e0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ -001d88f0: 2c20 2263 6f6e 7461 696e 6572 225d 2029  , "container"] )
│ │ │ -001d8900: 2029 0a20 202d 2028 222d 2d66 7374 6162   ).  - ("--fstab
│ │ │ -001d8910: 2220 7c20 6c65 6e67 7468 203d 3d20 3029  " | length == 0)
│ │ │ -001d8920: 0a20 202d 2064 6576 6963 655f 6e61 6d65  .  - device_name
│ │ │ -001d8930: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ -001d8940: 6564 2061 6e64 2064 6576 6963 655f 6e61  ed and device_na
│ │ │ -001d8950: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320  me.stdout_lines 
│ │ │ -001d8960: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ -001d8970: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001d8980: 7574 207c 206c 656e 6774 6820 3d3d 2030  ut | length == 0
│ │ │ -001d8990: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ -001d89a0: 5354 2d38 3030 2d35 332d 434d 2d36 2862  ST-800-53-CM-6(b
│ │ │ -001d89b0: 290a 2020 2d20 636f 6e66 6967 7572 655f  ).  - configure_
│ │ │ -001d89c0: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001d89d0: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001d89e0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001d89f0: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001d8a00: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001d8a10: 7469 6f6e 5f68 6f6d 655f 6e6f 6578 6563  tion_home_noexec
│ │ │ -001d8a20: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -001d8a30: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ -001d8a40: 4164 6420 6e6f 6578 6563 204f 7074 696f  Add noexec Optio
│ │ │ -001d8a50: 6e20 746f 202f 686f 6d65 3a20 4d61 6b65  n to /home: Make
│ │ │ -001d8a60: 2073 7572 6520 6e6f 6578 6563 206f 7074   sure noexec opt
│ │ │ -001d8a70: 696f 6e20 6973 2070 6172 7420 6f66 2074  ion is part of t
│ │ │ -001d8a80: 6865 2074 6f20 2f68 6f6d 650a 2020 2020  he to /home.    
│ │ │ -001d8a90: 6f70 7469 6f6e 7327 0a20 2073 6574 5f66  options'.  set_f
│ │ │ -001d8aa0: 6163 743a 0a20 2020 206d 6f75 6e74 5f69  act:.    mount_i
│ │ │ -001d8ab0: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69  nfo: '{{ mount_i
│ │ │ -001d8ac0: 6e66 6f20 7c20 636f 6d62 696e 6528 207b  nfo | combine( {
│ │ │ -001d8ad0: 2727 6f70 7469 6f6e 7327 273a 2727 2727  ''options'':''''
│ │ │ -001d8ae0: 7e28 6d6f 756e 745f 696e 666f 2e6f 7074  ~(mount_info.opt
│ │ │ -001d8af0: 696f 6e73 207c 0a20 2020 2020 2064 6566  ions |.      def
│ │ │ -001d8b00: 6175 6c74 2827 2727 2729 297e 2827 272c  ault(''''))~('',
│ │ │ -001d8b10: 2727 2069 6620 286d 6f75 6e74 5f69 6e66  '' if (mount_inf
│ │ │ -001d8b20: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ -001d8b30: 756c 7428 2727 2727 2929 2065 6c73 6520  ult('''')) else 
│ │ │ -001d8b40: 2727 2727 297e 2727 6e6f 6578 6563 2727  '''')~''noexec''
│ │ │ -001d8b50: 0a20 2020 2020 207d 2920 7d7d 270a 2020  .      }) }}'.  
│ │ │ -001d8b60: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ -001d8b70: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ -001d8b80: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001d8b90: 6167 6573 2061 6e64 2022 7270 6d2d 6f73  ages and "rpm-os
│ │ │ -001d8ba0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001d8bb0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001d8bc0: 2020 2020 616e 6420 2262 6f6f 7463 2220      and "bootc" 
│ │ │ -001d8bd0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001d8be0: 2e70 6163 6b61 6765 7320 616e 6420 6e6f  .packages and no
│ │ │ -001d8bf0: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ -001d8c00: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ -001d8c10: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001d8c20: 2020 2020 616e 6420 226f 7374 7265 6522      and "ostree"
│ │ │ -001d8c30: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ -001d8c40: 5f63 6d64 6c69 6e65 2029 2061 6e64 206e  _cmdline ) and n
│ │ │ -001d8c50: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ -001d8c60: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ -001d8c70: 2069 6e0a 2020 2020 5b22 646f 636b 6572   in.    ["docker
│ │ │ -001d8c80: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ -001d8c90: 7a22 2c20 2270 6f64 6d61 6e22 2c20 2263  z", "podman", "c
│ │ │ -001d8ca0: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ -001d8cb0: 202d 206d 6f75 6e74 5f69 6e66 6f20 6973   - mount_info is
│ │ │ -001d8cc0: 2064 6566 696e 6564 2061 6e64 2022 6e6f   defined and "no
│ │ │ -001d8cd0: 6578 6563 2220 6e6f 7420 696e 2028 6d6f  exec" not in (mo
│ │ │ -001d8ce0: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ -001d8cf0: 207c 2064 6566 6175 6c74 2827 2729 290a   | default('')).
│ │ │ -001d8d00: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -001d8d10: 2d38 3030 2d35 332d 434d 2d36 2862 290a  -800-53-CM-6(b).
│ │ │ -001d8d20: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ -001d8d30: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ -001d8d40: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -001d8d50: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -001d8d60: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -001d8d70: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ -001d8d80: 6f6e 5f68 6f6d 655f 6e6f 6578 6563 0a20  on_home_noexec. 
│ │ │ -001d8d90: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -001d8da0: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ -001d8db0: 6420 6e6f 6578 6563 204f 7074 696f 6e20  d noexec Option 
│ │ │ -001d8dc0: 746f 202f 686f 6d65 3a20 456e 7375 7265  to /home: Ensure
│ │ │ -001d8dd0: 202f 686f 6d65 2069 7320 6d6f 756e 7465   /home is mounte
│ │ │ -001d8de0: 6420 7769 7468 206e 6f65 7865 6320 6f70  d with noexec op
│ │ │ -001d8df0: 7469 6f6e 270a 2020 616e 7369 626c 652e  tion'.  ansible.
│ │ │ -001d8e00: 706f 7369 782e 6d6f 756e 743a 0a20 2020  posix.mount:.   
│ │ │ -001d8e10: 2070 6174 683a 202f 686f 6d65 0a20 2020   path: /home.   
│ │ │ -001d8e20: 2073 7263 3a20 277b 7b20 6d6f 756e 745f   src: '{{ mount_
│ │ │ -001d8e30: 696e 666f 2e73 6f75 7263 6520 7c20 6465  info.source | de
│ │ │ -001d8e40: 6661 756c 7428 2727 2727 2920 7d7d 270a  fault('''') }}'.
│ │ │ -001d8e50: 2020 2020 6f70 7473 3a20 277b 7b20 6d6f      opts: '{{ mo
│ │ │ -001d8e60: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ -001d8e70: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ -001d8e80: 207d 7d27 0a20 2020 2073 7461 7465 3a20   }}'.    state: 
│ │ │ -001d8e90: 6d6f 756e 7465 640a 2020 2020 6673 7479  mounted.    fsty
│ │ │ -001d8ea0: 7065 3a20 277b 7b20 6d6f 756e 745f 696e  pe: '{{ mount_in
│ │ │ -001d8eb0: 666f 2e66 7374 7970 6520 7c20 6465 6661  fo.fstype | defa
│ │ │ -001d8ec0: 756c 7428 2727 2727 2920 7d7d 270a 2020  ult('''') }}'.  
│ │ │ -001d8ed0: 7265 6769 7374 6572 3a20 6d6f 756e 745f  register: mount_
│ │ │ -001d8ee0: 7265 7375 6c74 0a20 2066 6169 6c65 645f  result.  failed_
│ │ │ -001d8ef0: 7768 656e 3a0a 2020 2d20 6d6f 756e 745f  when:.  - mount_
│ │ │ -001d8f00: 7265 7375 6c74 2069 7320 6661 696c 6564  result is failed
│ │ │ -001d8f10: 0a20 202d 2027 2727 7461 7267 6574 2069  .  - '''target i
│ │ │ -001d8f20: 7320 6275 7379 2727 206e 6f74 2069 6e20  s busy'' not in 
│ │ │ -001d8f30: 286d 6f75 6e74 5f72 6573 756c 742e 6d73  (mount_result.ms
│ │ │ -001d8f40: 6720 7c20 6465 6661 756c 7428 2727 2727  g | default(''''
│ │ │ -001d8f50: 2929 270a 2020 2d20 2727 2761 6c72 6561  ))'.  - '''alrea
│ │ │ -001d8f60: 6479 206d 6f75 6e74 6564 2727 206e 6f74  dy mounted'' not
│ │ │ -001d8f70: 2069 6e20 286d 6f75 6e74 5f72 6573 756c   in (mount_resul
│ │ │ -001d8f80: 742e 6d73 6720 7c20 6465 6661 756c 7428  t.msg | default(
│ │ │ -001d8f90: 2727 2727 2929 270a 2020 7768 656e 3a0a  ''''))'.  when:.
│ │ │ -001d8fa0: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ -001d8fb0: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -001d8fc0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001d8fd0: 6e64 2022 7270 6d2d 6f73 7472 6565 2220  nd "rpm-ostree" 
│ │ │ -001d8fe0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001d8ff0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001d9000: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ -001d9010: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001d9020: 6765 7320 616e 6420 6e6f 7420 226f 7065  ges and not "ope
│ │ │ -001d9030: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ -001d9040: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001d9050: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001d9060: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ -001d9070: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ -001d9080: 6e65 2029 2061 6e64 206e 6f74 2028 2061  ne ) and not ( a
│ │ │ -001d9090: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ -001d90a0: 6174 696f 6e5f 7479 7065 2069 6e0a 2020  ation_type in.  
│ │ │ -001d90b0: 2020 5b22 646f 636b 6572 222c 2022 6c78    ["docker", "lx
│ │ │ -001d90c0: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ -001d90d0: 6f64 6d61 6e22 2c20 2263 6f6e 7461 696e  odman", "contain
│ │ │ -001d90e0: 6572 225d 2029 2029 0a20 202d 206d 6f75  er"] ) ).  - mou
│ │ │ -001d90f0: 6e74 5f69 6e66 6f20 6973 2064 6566 696e  nt_info is defin
│ │ │ -001d9100: 6564 0a20 202d 2028 6465 7669 6365 5f6e  ed.  - (device_n
│ │ │ -001d9110: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ -001d9120: 6669 6e65 6420 616e 6420 2864 6576 6963  fined and (devic
│ │ │ -001d9130: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ -001d9140: 6c65 6e67 7468 2026 6774 3b20 3029 2920  length > 0)) 
│ │ │ -001d9150: 6f72 2028 222d 2d66 7374 6162 220a 2020  or ("--fstab".  
│ │ │ -001d9160: 2020 7c20 6c65 6e67 7468 203d 3d20 3029    | length == 0)
│ │ │ -001d9170: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -001d9180: 542d 3830 302d 3533 2d43 4d2d 3628 6229  T-800-53-CM-6(b)
│ │ │ -001d9190: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -001d91a0: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -001d91b0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001d91c0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001d91d0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001d91e0: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -001d91f0: 696f 6e5f 686f 6d65 5f6e 6f65 7865 630a  ion_home_noexec.
│ │ │ -001d9200: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001d9210: 6564 6564 0a3c 2f63 6f64 653e 3c2f 7072  eded.
Remediation │ │ │ -001d92d0: 2053 6865 6c6c 2073 6372 6970 7420 e287 Shell script .. │ │ │ -001d92e0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -001d9360: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -001d9370: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
<
│ │ │ -001d9390: 636f 6465 3e23 2052 656d 6564 6961 7469  code># Remediati
│ │ │ -001d93a0: 6f6e 2069 7320 6170 706c 6963 6162 6c65  on is applicable
│ │ │ -001d93b0: 206f 6e6c 7920 696e 2063 6572 7461 696e   only in certain
│ │ │ -001d93c0: 2070 6c61 7466 6f72 6d73 0a69 6620 2820   platforms.if ( 
│ │ │ -001d93d0: 2120 2820 7b20 7270 6d20 2d2d 7175 6965  ! ( { rpm --quie
│ │ │ -001d93e0: 7420 2d71 206b 6572 6e65 6c20 3b7d 2026  t -q kernel ;} &
│ │ │ -001d93f0: 616d 703b 2661 6d70 3b20 7b20 7270 6d20  amp;& { rpm 
│ │ │ -001d9400: 2d2d 7175 6965 7420 2d71 2072 706d 2d6f  --quiet -q rpm-o
│ │ │ -001d9410: 7374 7265 6520 3b7d 2026 616d 703b 2661  stree ;} &&a
│ │ │ -001d9420: 6d70 3b20 7b20 7270 6d20 2d2d 7175 6965  mp; { rpm --quie
│ │ │ -001d9430: 7420 2d71 2062 6f6f 7463 203b 7d20 2661  t -q bootc ;} &a
│ │ │ -001d9440: 6d70 3b26 616d 703b 207b 2021 2072 706d  mp;& { ! rpm
│ │ │ -001d9450: 202d 2d71 7569 6574 202d 7120 6f70 656e   --quiet -q open
│ │ │ -001d9460: 7368 6966 742d 6b75 6265 6c65 7420 3b7d  shift-kubelet ;}
│ │ │ -001d9470: 2026 616d 703b 2661 6d70 3b20 285b 202d   && ([ -
│ │ │ -001d9480: 6620 2f72 756e 2f6f 7374 7265 652d 626f  f /run/ostree-bo
│ │ │ -001d9490: 6f74 6564 205d 207c 7c20 5b20 2d4c 202f  oted ] || [ -L /
│ │ │ -001d94a0: 6f73 7472 6565 205d 2920 2920 2661 6d70  ostree ]) ) &
│ │ │ -001d94b0: 3b26 616d 703b 2021 2028 205b 202d 6620  ;& ! ( [ -f 
│ │ │ -001d94c0: 2f2e 646f 636b 6572 656e 7620 5d20 7c7c  /.dockerenv ] ||
│ │ │ -001d94d0: 205b 202d 6620 2f72 756e 2f2e 636f 6e74   [ -f /run/.cont
│ │ │ -001d94e0: 6169 6e65 7265 6e76 205d 2029 2029 3b20  ainerenv ] ) ); 
│ │ │ -001d94f0: 7468 656e 0a0a 6675 6e63 7469 6f6e 2070  then..function p
│ │ │ -001d9500: 6572 666f 726d 5f72 656d 6564 6961 7469  erform_remediati
│ │ │ -001d9510: 6f6e 207b 0a0a 2020 2020 0a20 2020 2020  on {..    .     
│ │ │ -001d9520: 2020 2023 2074 6865 206d 6f75 6e74 2070     # the mount p
│ │ │ -001d9530: 6f69 6e74 202f 686f 6d65 2068 6173 2074  oint /home has t
│ │ │ -001d9540: 6f20 6265 2064 6566 696e 6564 2069 6e20  o be defined in 
│ │ │ -001d9550: 2f65 7463 2f66 7374 6162 0a20 2020 2020  /etc/fstab.     
│ │ │ -001d9560: 2020 2023 2062 6566 6f72 6520 7468 6973     # before this
│ │ │ -001d9570: 2072 656d 6564 6961 7469 6f6e 2063 616e   remediation can
│ │ │ -001d9580: 2062 6520 6578 6563 7574 6564 2e20 496e   be executed. In
│ │ │ -001d9590: 2063 6173 6520 6974 2069 7320 6e6f 7420   case it is not 
│ │ │ -001d95a0: 6465 6669 6e65 642c 2074 6865 0a20 2020  defined, the.   
│ │ │ -001d95b0: 2020 2020 2023 2072 656d 6564 6961 7469       # remediati
│ │ │ -001d95c0: 6f6e 2061 626f 7274 7320 616e 6420 6e6f  on aborts and no
│ │ │ -001d95d0: 2063 6861 6e67 6573 2072 6567 6172 6469   changes regardi
│ │ │ -001d95e0: 6e67 2074 6865 206d 6f75 6e74 2070 6f69  ng the mount poi
│ │ │ -001d95f0: 6e74 2061 7265 2064 6f6e 652e 0a20 2020  nt are done..   
│ │ │ -001d9600: 2020 2020 206d 6f75 6e74 5f70 6f69 6e74       mount_point
│ │ │ -001d9610: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ -001d9620: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ -001d9630: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ -001d9640: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ -001d9650: 653a 5d5d 2220 222f 686f 6d65 2229 220a  e:]]" "/home")".
│ │ │ -001d9660: 0a20 2020 2067 7265 7020 2224 6d6f 756e  .    grep "$moun
│ │ │ -001d9670: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001d9680: 6765 7870 2220 2d71 202f 6574 632f 6673  gexp" -q /etc/fs
│ │ │ -001d9690: 7461 6220 5c0a 2020 2020 2020 2020 7c7c  tab \.        ||
│ │ │ -001d96a0: 207b 2065 6368 6f20 2254 6865 206d 6f75   { echo "The mou
│ │ │ -001d96b0: 6e74 2070 6f69 6e74 2027 2f68 6f6d 6527  nt point '/home'
│ │ │ -001d96c0: 2069 7320 6e6f 7420 6576 656e 2069 6e20   is not even in 
│ │ │ -001d96d0: 2f65 7463 2f66 7374 6162 2c20 736f 2077  /etc/fstab, so w
│ │ │ -001d96e0: 6520 6361 6e27 7420 7365 7420 7570 206d  e can't set up m
│ │ │ -001d96f0: 6f75 6e74 206f 7074 696f 6e73 2220 2667  ount options" &g
│ │ │ -001d9700: 743b 2661 6d70 3b32 3b0a 2020 2020 2020  t;&2;.      
│ │ │ -001d9710: 2020 2020 2020 2020 2020 6563 686f 2022            echo "
│ │ │ -001d9720: 4e6f 7420 7265 6d65 6469 6174 696e 672c  Not remediating,
│ │ │ -001d9730: 2062 6563 6175 7365 2074 6865 7265 2069   because there i
│ │ │ -001d9740: 7320 6e6f 2072 6563 6f72 6420 6f66 202f  s no record of /
│ │ │ -001d9750: 686f 6d65 2069 6e20 2f65 7463 2f66 7374  home in /etc/fst
│ │ │ -001d9760: 6162 2220 2667 743b 2661 6d70 3b32 3b20  ab" >&2; 
│ │ │ -001d9770: 7265 7475 726e 2031 3b20 7d0a 2020 2020  return 1; }.    
│ │ │ -001d9780: 0a0a 0a20 2020 206d 6f75 6e74 5f70 6f69  ...    mount_poi
│ │ │ -001d9790: 6e74 5f6d 6174 6368 5f72 6567 6578 703d  nt_match_regexp=
│ │ │ -001d97a0: 2224 2870 7269 6e74 6620 225e 5b5b 3a73  "$(printf "^[[:s
│ │ │ -001d97b0: 7061 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b  pace:]]*[^#].*[[
│ │ │ -001d97c0: 3a73 7061 6365 3a5d 5d25 735b 5b3a 7370  :space:]]%s[[:sp
│ │ │ -001d97d0: 6163 653a 5d5d 2220 2f68 6f6d 6529 220a  ace:]]" /home)".
│ │ │ -001d97e0: 0a20 2020 2023 2049 6620 7468 6520 6d6f  .    # If the mo
│ │ │ -001d97f0: 756e 7420 706f 696e 7420 6973 206e 6f74  unt point is not
│ │ │ -001d9800: 2069 6e20 2f65 7463 2f66 7374 6162 2c20   in /etc/fstab, 
│ │ │ -001d9810: 6765 7420 7072 6576 696f 7573 206d 6f75  get previous mou
│ │ │ -001d9820: 6e74 206f 7074 696f 6e73 2066 726f 6d20  nt options from 
│ │ │ -001d9830: 2f65 7463 2f6d 7461 620a 2020 2020 6966  /etc/mtab.    if
│ │ │ -001d9840: 2021 2067 7265 7020 2d71 2022 246d 6f75   ! grep -q "$mou
│ │ │ -001d9850: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001d9860: 6567 6578 7022 202f 6574 632f 6673 7461  egexp" /etc/fsta
│ │ │ -001d9870: 623b 2074 6865 6e0a 2020 2020 2020 2020  b; then.        
│ │ │ -001d9880: 2320 7275 6e74 696d 6520 6f70 7473 2077  # runtime opts w
│ │ │ -001d9890: 6974 686f 7574 2073 6f6d 6520 6175 746f  ithout some auto
│ │ │ -001d98a0: 6d61 7469 6320 6b65 726e 656c 2f75 7365  matic kernel/use
│ │ │ -001d98b0: 7273 7061 6365 2d61 6464 6564 2064 6566  rspace-added def
│ │ │ -001d98c0: 6175 6c74 730a 2020 2020 2020 2020 7072  aults.        pr
│ │ │ -001d98d0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001d98e0: 733d 2428 6772 6570 2022 246d 6f75 6e74  s=$(grep "$mount
│ │ │ -001d98f0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001d9900: 6578 7022 202f 6574 632f 6d74 6162 207c  exp" /etc/mtab |
│ │ │ -001d9910: 2068 6561 6420 2d31 207c 2020 6177 6b20   head -1 |  awk 
│ │ │ -001d9920: 277b 7072 696e 7420 2434 7d27 205c 0a20  '{print $4}' \. 
│ │ │ -001d9930: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -001d9940: 2020 207c 2073 6564 202d 4520 2273 2f28     | sed -E "s/(
│ │ │ -001d9950: 7277 7c64 6566 6175 6c74 737c 7365 636c  rw|defaults|secl
│ │ │ -001d9960: 6162 656c 7c6e 6f65 7865 6329 282c 7c24  abel|noexec)(,|$
│ │ │ -001d9970: 292f 2f67 3b73 2f2c 242f 2f22 290a 2020  )//g;s/,$//").  
│ │ │ -001d9980: 2020 2020 2020 5b20 2224 7072 6576 696f        [ "$previo
│ │ │ -001d9990: 7573 5f6d 6f75 6e74 5f6f 7074 7322 205d  us_mount_opts" ]
│ │ │ -001d99a0: 2026 616d 703b 2661 6d70 3b20 7072 6576   && prev
│ │ │ -001d99b0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 732b  ious_mount_opts+
│ │ │ -001d99c0: 3d22 2c22 0a20 2020 2020 2020 2023 2049  =",".        # I
│ │ │ -001d99d0: 6e20 6973 6f39 3636 3020 6669 6c65 7379  n iso9660 filesy
│ │ │ -001d99e0: 7374 656d 7320 6d74 6162 2063 6f75 6c64  stems mtab could
│ │ │ -001d99f0: 2064 6573 6372 6962 6520 6120 2262 6c6f   describe a "blo
│ │ │ -001d9a00: 636b 7369 7a65 2220 7661 6c75 652c 2074  cksize" value, t
│ │ │ -001d9a10: 6869 7320 7368 6f75 6c64 2062 6520 7265  his should be re
│ │ │ -001d9a20: 666c 6563 7465 6420 696e 0a20 2020 2020  flected in.     
│ │ │ -001d9a30: 2020 2023 2066 7374 6162 2061 7320 2262     # fstab as "b
│ │ │ -001d9a40: 6c6f 636b 222e 2020 5468 6520 6e65 7874  lock".  The next
│ │ │ -001d9a50: 2076 6172 6961 626c 6520 6973 2074 6f20   variable is to 
│ │ │ -001d9a60: 7361 7469 7366 7920 7368 656c 6c63 6865  satisfy shellche
│ │ │ -001d9a70: 636b 2053 4332 3035 302e 0a20 2020 2020  ck SC2050..     
│ │ │ -001d9a80: 2020 2066 735f 7479 7065 3d22 220a 2020     fs_type="".  
│ │ │ -001d9a90: 2020 2020 2020 6966 205b 2020 2224 6673        if [  "$fs
│ │ │ -001d9aa0: 5f74 7970 6522 203d 3d20 2269 736f 3936  _type" == "iso96
│ │ │ -001d9ab0: 3630 2220 5d20 3b20 7468 656e 0a20 2020  60" ] ; then.   
│ │ │ -001d9ac0: 2020 2020 2020 2020 2070 7265 7669 6f75           previou
│ │ │ -001d9ad0: 735f 6d6f 756e 745f 6f70 7473 3d24 2873  s_mount_opts=$(s
│ │ │ -001d9ae0: 6564 2027 732f 626c 6f63 6b73 697a 653d  ed 's/blocksize=
│ │ │ -001d9af0: 2f62 6c6f 636b 3d2f 2720 266c 743b 266c  /block=/' <&l
│ │ │ -001d9b00: 743b 266c 743b 2022 2470 7265 7669 6f75  t;< "$previou
│ │ │ -001d9b10: 735f 6d6f 756e 745f 6f70 7473 2229 0a20  s_mount_opts"). 
│ │ │ -001d9b20: 2020 2020 2020 2066 690a 2020 2020 2020         fi.      
│ │ │ -001d9b30: 2020 6563 686f 2022 202f 686f 6d65 2020    echo " /home  
│ │ │ -001d9b40: 6465 6661 756c 7473 2c24 7b70 7265 7669  defaults,${previ
│ │ │ -001d9b50: 6f75 735f 6d6f 756e 745f 6f70 7473 7d6e  ous_mount_opts}n
│ │ │ -001d9b60: 6f65 7865 6320 3020 3022 2026 6774 3b26  oexec 0 0" >&
│ │ │ -001d9b70: 6774 3b20 2f65 7463 2f66 7374 6162 0a20  gt; /etc/fstab. 
│ │ │ -001d9b80: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ -001d9b90: 745f 6f70 7420 6f70 7469 6f6e 2069 7320  t_opt option is 
│ │ │ -001d9ba0: 6e6f 7420 616c 7265 6164 7920 696e 2074  not already in t
│ │ │ -001d9bb0: 6865 206d 6f75 6e74 2070 6f69 6e74 2773  he mount point's
│ │ │ -001d9bc0: 202f 6574 632f 6673 7461 6220 656e 7472   /etc/fstab entr
│ │ │ -001d9bd0: 792c 2061 6464 2069 740a 2020 2020 656c  y, add it.    el
│ │ │ -001d9be0: 6966 2021 2067 7265 7020 2224 6d6f 756e  if ! grep "$moun
│ │ │ -001d9bf0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001d9c00: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ -001d9c10: 207c 2067 7265 7020 2d71 2022 6e6f 6578   | grep -q "noex
│ │ │ -001d9c20: 6563 223b 2074 6865 6e0a 2020 2020 2020  ec"; then.      
│ │ │ -001d9c30: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ -001d9c40: 5f6f 7074 733d 2428 6772 6570 2022 246d  _opts=$(grep "$m
│ │ │ -001d9c50: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001d9c60: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ -001d9c70: 7461 6220 7c20 6177 6b20 277b 7072 696e  tab | awk '{prin
│ │ │ -001d9c80: 7420 2434 7d27 290a 2020 2020 2020 2020  t $4}').        
│ │ │ -001d9c90: 7365 6420 2d69 2022 737c 5c28 247b 6d6f  sed -i "s|\(${mo
│ │ │ -001d9ca0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001d9cb0: 7265 6765 7870 7d2e 2a24 7b70 7265 7669  regexp}.*${previ
│ │ │ -001d9cc0: 6f75 735f 6d6f 756e 745f 6f70 7473 7d5c  ous_mount_opts}\
│ │ │ -001d9cd0: 297c 5c31 2c6e 6f65 7865 637c 2220 2f65  )|\1,noexec|" /e
│ │ │ -001d9ce0: 7463 2f66 7374 6162 0a20 2020 2066 690a  tc/fstab.    fi.
│ │ │ -001d9cf0: 0a0a 2020 2020 6966 206d 6b64 6972 202d  ..    if mkdir -
│ │ │ -001d9d00: 7020 222f 686f 6d65 223b 2074 6865 6e0a  p "/home"; then.
│ │ │ -001d9d10: 2020 2020 2020 2020 6966 206d 6f75 6e74          if mount
│ │ │ -001d9d20: 706f 696e 7420 2d71 2022 2f68 6f6d 6522  point -q "/home"
│ │ │ -001d9d30: 3b20 7468 656e 0a20 2020 2020 2020 2020  ; then.         
│ │ │ -001d9d40: 2020 206d 6f75 6e74 202d 6f20 7265 6d6f     mount -o remo
│ │ │ -001d9d50: 756e 7420 2d2d 7461 7267 6574 2022 2f68  unt --target "/h
│ │ │ -001d9d60: 6f6d 6522 0a20 2020 2020 2020 2066 690a  ome".        fi.
│ │ │ -001d9d70: 2020 2020 6669 0a7d 0a0a 7065 7266 6f72      fi.}..perfor
│ │ │ -001d9d80: 6d5f 7265 6d65 6469 6174 696f 6e0a 0a65  m_remediation..e
│ │ │ -001d9d90: 6c73 650a 2020 2020 2667 743b 2661 6d70  lse.    >&
│ │ │ -001d9da0: 3b32 2065 6368 6f20 2752 656d 6564 6961  ;2 echo 'Remedia
│ │ │ -001d9db0: 7469 6f6e 2069 7320 6e6f 7420 6170 706c  tion is not appl
│ │ │ -001d9dc0: 6963 6162 6c65 2c20 6e6f 7468 696e 6720  icable, nothing 
│ │ │ -001d9dd0: 7761 7320 646f 6e65 270a 6669 0a3c 2f63  was done'.fi.<
│ │ │ +001d7be0: 6272 3e3c 6469 7620 636c 6173 733d 2270  br>
< │ │ │ +001d7cd0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
-
│ │ │ +001d7d10: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +001d7d20: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +001d7d30: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ +001d7d40: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ +001d7d50: 746f 0a20 2074 6167 733a 0a20 202d 204e  to.  tags:.  - N
│ │ │ +001d7d60: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +001d7d70: 6229 0a20 202d 2063 6f6e 6669 6775 7265  b).  - configure
│ │ │ +001d7d80: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +001d7d90: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +001d7da0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +001d7db0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +001d7dc0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ +001d7dd0: 7074 696f 6e5f 686f 6d65 5f6e 6f65 7865  ption_home_noexe
│ │ │ +001d7de0: 630a 2020 2d20 6e6f 5f72 6562 6f6f 745f  c.  - no_reboot_
│ │ │ +001d7df0: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ +001d7e00: 2741 6464 206e 6f65 7865 6320 4f70 7469  'Add noexec Opti
│ │ │ +001d7e10: 6f6e 2074 6f20 2f68 6f6d 653a 2043 6865  on to /home: Che
│ │ │ +001d7e20: 636b 2069 6e66 6f72 6d61 7469 6f6e 2061  ck information a
│ │ │ +001d7e30: 7373 6f63 6961 7465 6420 746f 206d 6f75  ssociated to mou
│ │ │ +001d7e40: 6e74 706f 696e 7427 0a20 2061 6e73 6962  ntpoint'.  ansib
│ │ │ +001d7e50: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61  le.builtin.comma
│ │ │ +001d7e60: 6e64 3a20 6669 6e64 6d6e 7420 2d2d 6673  nd: findmnt --fs
│ │ │ +001d7e70: 7461 6220 272f 686f 6d65 270a 2020 7265  tab '/home'.  re
│ │ │ +001d7e80: 6769 7374 6572 3a20 6465 7669 6365 5f6e  gister: device_n
│ │ │ +001d7e90: 616d 650a 2020 6661 696c 6564 5f77 6865  ame.  failed_whe
│ │ │ +001d7ea0: 6e3a 2064 6576 6963 655f 6e61 6d65 2e72  n: device_name.r
│ │ │ +001d7eb0: 6320 2667 743b 2031 0a20 2063 6861 6e67  c > 1.  chang
│ │ │ +001d7ec0: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ +001d7ed0: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ +001d7ee0: 7365 0a20 2077 6865 6e3a 2028 206e 6f74  se.  when: ( not
│ │ │ +001d7ef0: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ +001d7f00: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001d7f10: 6b61 6765 7320 616e 6420 2272 706d 2d6f  kages and "rpm-o
│ │ │ +001d7f20: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001d7f30: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001d7f40: 0a20 2020 2061 6e64 2022 626f 6f74 6322  .    and "bootc"
│ │ │ +001d7f50: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001d7f60: 732e 7061 636b 6167 6573 2061 6e64 206e  s.packages and n
│ │ │ +001d7f70: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ +001d7f80: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ +001d7f90: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001d7fa0: 0a20 2020 2061 6e64 2022 6f73 7472 6565  .    and "ostree
│ │ │ +001d7fb0: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ +001d7fc0: 635f 636d 646c 696e 6520 2920 616e 6420  c_cmdline ) and 
│ │ │ +001d7fd0: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ +001d7fe0: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ +001d7ff0: 6520 696e 0a20 2020 205b 2264 6f63 6b65  e in.    ["docke
│ │ │ +001d8000: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ +001d8010: 767a 222c 2022 706f 646d 616e 222c 2022  vz", "podman", "
│ │ │ +001d8020: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ +001d8030: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +001d8040: 2d38 3030 2d35 332d 434d 2d36 2862 290a  -800-53-CM-6(b).
│ │ │ +001d8050: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +001d8060: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +001d8070: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +001d8080: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +001d8090: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001d80a0: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ +001d80b0: 6f6e 5f68 6f6d 655f 6e6f 6578 6563 0a20  on_home_noexec. 
│ │ │ +001d80c0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +001d80d0: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ +001d80e0: 6420 6e6f 6578 6563 204f 7074 696f 6e20  d noexec Option 
│ │ │ +001d80f0: 746f 202f 686f 6d65 3a20 4372 6561 7465  to /home: Create
│ │ │ +001d8100: 206d 6f75 6e74 5f69 6e66 6f20 6469 6374   mount_info dict
│ │ │ +001d8110: 696f 6e61 7279 2076 6172 6961 626c 6527  ionary variable'
│ │ │ +001d8120: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ +001d8130: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b   mount_info: '{{
│ │ │ +001d8140: 206d 6f75 6e74 5f69 6e66 6f7c 6465 6661   mount_info|defa
│ │ │ +001d8150: 756c 7428 7b7d 297c 636f 6d62 696e 6528  ult({})|combine(
│ │ │ +001d8160: 7b69 7465 6d2e 303a 2069 7465 6d2e 317d  {item.0: item.1}
│ │ │ +001d8170: 2920 7d7d 270a 2020 7769 7468 5f74 6f67  ) }}'.  with_tog
│ │ │ +001d8180: 6574 6865 723a 0a20 202d 2027 7b7b 2064  ether:.  - '{{ d
│ │ │ +001d8190: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001d81a0: 745f 6c69 6e65 735b 305d 2e73 706c 6974  t_lines[0].split
│ │ │ +001d81b0: 2829 207c 206d 6170 2827 276c 6f77 6572  () | map(''lower
│ │ │ +001d81c0: 2727 2920 7c20 6c69 7374 207d 7d27 0a20  '') | list }}'. 
│ │ │ +001d81d0: 202d 2027 7b7b 2064 6576 6963 655f 6e61   - '{{ device_na
│ │ │ +001d81e0: 6d65 2e73 7464 6f75 745f 6c69 6e65 735b  me.stdout_lines[
│ │ │ +001d81f0: 315d 2e73 706c 6974 2829 207c 206c 6973  1].split() | lis
│ │ │ +001d8200: 7420 7d7d 270a 2020 7768 656e 3a0a 2020  t }}'.  when:.  
│ │ │ +001d8210: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ +001d8220: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +001d8230: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001d8240: 2022 7270 6d2d 6f73 7472 6565 2220 696e   "rpm-ostree" in
│ │ │ +001d8250: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001d8260: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001d8270: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ +001d8280: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001d8290: 7320 616e 6420 6e6f 7420 226f 7065 6e73  s and not "opens
│ │ │ +001d82a0: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ +001d82b0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001d82c0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001d82d0: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ +001d82e0: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ +001d82f0: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ +001d8300: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ +001d8310: 696f 6e5f 7479 7065 2069 6e0a 2020 2020  ion_type in.    
│ │ │ +001d8320: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ +001d8330: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ +001d8340: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572  man", "container
│ │ │ +001d8350: 225d 2029 2029 0a20 202d 2064 6576 6963  "] ) ).  - devic
│ │ │ +001d8360: 655f 6e61 6d65 2e73 7464 6f75 7420 6973  e_name.stdout is
│ │ │ +001d8370: 2064 6566 696e 6564 2061 6e64 2064 6576   defined and dev
│ │ │ +001d8380: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ +001d8390: 6c69 6e65 7320 6973 2064 6566 696e 6564  lines is defined
│ │ │ +001d83a0: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ +001d83b0: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ +001d83c0: 6820 2667 743b 2030 290a 2020 7461 6773  h > 0).  tags
│ │ │ +001d83d0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +001d83e0: 332d 434d 2d36 2862 290a 2020 2d20 636f  3-CM-6(b).  - co
│ │ │ +001d83f0: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001d8400: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001d8410: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001d8420: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001d8430: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001d8440: 6d6f 756e 745f 6f70 7469 6f6e 5f68 6f6d  mount_option_hom
│ │ │ +001d8450: 655f 6e6f 6578 6563 0a20 202d 206e 6f5f  e_noexec.  - no_
│ │ │ +001d8460: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +001d8470: 206e 616d 653a 2027 4164 6420 6e6f 6578   name: 'Add noex
│ │ │ +001d8480: 6563 204f 7074 696f 6e20 746f 202f 686f  ec Option to /ho
│ │ │ +001d8490: 6d65 3a20 4966 202f 686f 6d65 206e 6f74  me: If /home not
│ │ │ +001d84a0: 206d 6f75 6e74 6564 2c20 6372 6166 7420   mounted, craft 
│ │ │ +001d84b0: 6d6f 756e 745f 696e 666f 206d 616e 7561  mount_info manua
│ │ │ +001d84c0: 6c6c 7927 0a20 2073 6574 5f66 6163 743a  lly'.  set_fact:
│ │ │ +001d84d0: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ +001d84e0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c   '{{ mount_info|
│ │ │ +001d84f0: 6465 6661 756c 7428 7b7d 297c 636f 6d62  default({})|comb
│ │ │ +001d8500: 696e 6528 7b69 7465 6d2e 303a 2069 7465  ine({item.0: ite
│ │ │ +001d8510: 6d2e 317d 2920 7d7d 270a 2020 7769 7468  m.1}) }}'.  with
│ │ │ +001d8520: 5f74 6f67 6574 6865 723a 0a20 202d 202d  _together:.  - -
│ │ │ +001d8530: 2074 6172 6765 740a 2020 2020 2d20 736f   target.    - so
│ │ │ +001d8540: 7572 6365 0a20 2020 202d 2066 7374 7970  urce.    - fstyp
│ │ │ +001d8550: 650a 2020 2020 2d20 6f70 7469 6f6e 730a  e.    - options.
│ │ │ +001d8560: 2020 2d20 2d20 2f68 6f6d 650a 2020 2020    - - /home.    
│ │ │ +001d8570: 2d20 2727 0a20 2020 202d 2027 270a 2020  - ''.    - ''.  
│ │ │ +001d8580: 2020 2d20 6465 6661 756c 7473 0a20 2077    - defaults.  w
│ │ │ +001d8590: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +001d85a0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +001d85b0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001d85c0: 6765 7320 616e 6420 2272 706d 2d6f 7374  ges and "rpm-ost
│ │ │ +001d85d0: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001d85e0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001d85f0: 2020 2061 6e64 2022 626f 6f74 6322 2069     and "bootc" i
│ │ │ +001d8600: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001d8610: 7061 636b 6167 6573 2061 6e64 206e 6f74  packages and not
│ │ │ +001d8620: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ +001d8630: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ +001d8640: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001d8650: 2020 2061 6e64 2022 6f73 7472 6565 2220     and "ostree" 
│ │ │ +001d8660: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ +001d8670: 636d 646c 696e 6520 2920 616e 6420 6e6f  cmdline ) and no
│ │ │ +001d8680: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ +001d8690: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ +001d86a0: 696e 0a20 2020 205b 2264 6f63 6b65 7222  in.    ["docker"
│ │ │ +001d86b0: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ +001d86c0: 222c 2022 706f 646d 616e 222c 2022 636f  ", "podman", "co
│ │ │ +001d86d0: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ +001d86e0: 2d20 2822 2d2d 6673 7461 6222 207c 206c  - ("--fstab" | l
│ │ │ +001d86f0: 656e 6774 6820 3d3d 2030 290a 2020 2d20  ength == 0).  - 
│ │ │ +001d8700: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001d8710: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ +001d8720: 6420 6465 7669 6365 5f6e 616d 652e 7374  d device_name.st
│ │ │ +001d8730: 646f 7574 5f6c 696e 6573 2069 7320 6465  dout_lines is de
│ │ │ +001d8740: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ +001d8750: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ +001d8760: 6c65 6e67 7468 203d 3d20 3029 0a20 2074  length == 0).  t
│ │ │ +001d8770: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +001d8780: 302d 3533 2d43 4d2d 3628 6229 0a20 202d  0-53-CM-6(b).  -
│ │ │ +001d8790: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ +001d87a0: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ +001d87b0: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ +001d87c0: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +001d87d0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +001d87e0: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ +001d87f0: 686f 6d65 5f6e 6f65 7865 630a 2020 2d20  home_noexec.  - 
│ │ │ +001d8800: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001d8810: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ +001d8820: 6f65 7865 6320 4f70 7469 6f6e 2074 6f20  oexec Option to 
│ │ │ +001d8830: 2f68 6f6d 653a 204d 616b 6520 7375 7265  /home: Make sure
│ │ │ +001d8840: 206e 6f65 7865 6320 6f70 7469 6f6e 2069   noexec option i
│ │ │ +001d8850: 7320 7061 7274 206f 6620 7468 6520 746f  s part of the to
│ │ │ +001d8860: 202f 686f 6d65 0a20 2020 206f 7074 696f   /home.    optio
│ │ │ +001d8870: 6e73 270a 2020 7365 745f 6661 6374 3a0a  ns'.  set_fact:.
│ │ │ +001d8880: 2020 2020 6d6f 756e 745f 696e 666f 3a20      mount_info: 
│ │ │ +001d8890: 277b 7b20 6d6f 756e 745f 696e 666f 207c  '{{ mount_info |
│ │ │ +001d88a0: 2063 6f6d 6269 6e65 2820 7b27 276f 7074   combine( {''opt
│ │ │ +001d88b0: 696f 6e73 2727 3a27 2727 277e 286d 6f75  ions'':''''~(mou
│ │ │ +001d88c0: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ +001d88d0: 7c0a 2020 2020 2020 6465 6661 756c 7428  |.      default(
│ │ │ +001d88e0: 2727 2727 2929 7e28 2727 2c27 2720 6966  ''''))~('','' if
│ │ │ +001d88f0: 2028 6d6f 756e 745f 696e 666f 2e6f 7074   (mount_info.opt
│ │ │ +001d8900: 696f 6e73 207c 2064 6566 6175 6c74 2827  ions | default('
│ │ │ +001d8910: 2727 2729 2920 656c 7365 2027 2727 2729  ''')) else '''')
│ │ │ +001d8920: 7e27 276e 6f65 7865 6327 270a 2020 2020  ~''noexec''.    
│ │ │ +001d8930: 2020 7d29 207d 7d27 0a20 2077 6865 6e3a    }) }}'.  when:
│ │ │ +001d8940: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ +001d8950: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +001d8960: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001d8970: 616e 6420 2272 706d 2d6f 7374 7265 6522  and "rpm-ostree"
│ │ │ +001d8980: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001d8990: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001d89a0: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ +001d89b0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001d89c0: 6167 6573 2061 6e64 206e 6f74 2022 6f70  ages and not "op
│ │ │ +001d89d0: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ +001d89e0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001d89f0: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001d8a00: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ +001d8a10: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ +001d8a20: 696e 6520 2920 616e 6420 6e6f 7420 2820  ine ) and not ( 
│ │ │ +001d8a30: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ +001d8a40: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20  zation_type in. 
│ │ │ +001d8a50: 2020 205b 2264 6f63 6b65 7222 2c20 226c     ["docker", "l
│ │ │ +001d8a60: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ +001d8a70: 706f 646d 616e 222c 2022 636f 6e74 6169  podman", "contai
│ │ │ +001d8a80: 6e65 7222 5d20 2920 290a 2020 2d20 6d6f  ner"] ) ).  - mo
│ │ │ +001d8a90: 756e 745f 696e 666f 2069 7320 6465 6669  unt_info is defi
│ │ │ +001d8aa0: 6e65 6420 616e 6420 226e 6f65 7865 6322  ned and "noexec"
│ │ │ +001d8ab0: 206e 6f74 2069 6e20 286d 6f75 6e74 5f69   not in (mount_i
│ │ │ +001d8ac0: 6e66 6f2e 6f70 7469 6f6e 7320 7c20 6465  nfo.options | de
│ │ │ +001d8ad0: 6661 756c 7428 2727 2929 0a20 2074 6167  fault('')).  tag
│ │ │ +001d8ae0: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +001d8af0: 3533 2d43 4d2d 3628 6229 0a20 202d 2063  53-CM-6(b).  - c
│ │ │ +001d8b00: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +001d8b10: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +001d8b20: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +001d8b30: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +001d8b40: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001d8b50: 206d 6f75 6e74 5f6f 7074 696f 6e5f 686f   mount_option_ho
│ │ │ +001d8b60: 6d65 5f6e 6f65 7865 630a 2020 2d20 6e6f  me_noexec.  - no
│ │ │ +001d8b70: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +001d8b80: 2d20 6e61 6d65 3a20 2741 6464 206e 6f65  - name: 'Add noe
│ │ │ +001d8b90: 7865 6320 4f70 7469 6f6e 2074 6f20 2f68  xec Option to /h
│ │ │ +001d8ba0: 6f6d 653a 2045 6e73 7572 6520 2f68 6f6d  ome: Ensure /hom
│ │ │ +001d8bb0: 6520 6973 206d 6f75 6e74 6564 2077 6974  e is mounted wit
│ │ │ +001d8bc0: 6820 6e6f 6578 6563 206f 7074 696f 6e27  h noexec option'
│ │ │ +001d8bd0: 0a20 2061 6e73 6962 6c65 2e70 6f73 6978  .  ansible.posix
│ │ │ +001d8be0: 2e6d 6f75 6e74 3a0a 2020 2020 7061 7468  .mount:.    path
│ │ │ +001d8bf0: 3a20 2f68 6f6d 650a 2020 2020 7372 633a  : /home.    src:
│ │ │ +001d8c00: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ +001d8c10: 736f 7572 6365 207c 2064 6566 6175 6c74  source | default
│ │ │ +001d8c20: 2827 2727 2729 207d 7d27 0a20 2020 206f  ('''') }}'.    o
│ │ │ +001d8c30: 7074 733a 2027 7b7b 206d 6f75 6e74 5f69  pts: '{{ mount_i
│ │ │ +001d8c40: 6e66 6f2e 6f70 7469 6f6e 7320 7c20 6465  nfo.options | de
│ │ │ +001d8c50: 6661 756c 7428 2727 2727 2920 7d7d 270a  fault('''') }}'.
│ │ │ +001d8c60: 2020 2020 7374 6174 653a 206d 6f75 6e74      state: mount
│ │ │ +001d8c70: 6564 0a20 2020 2066 7374 7970 653a 2027  ed.    fstype: '
│ │ │ +001d8c80: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 6673  {{ mount_info.fs
│ │ │ +001d8c90: 7479 7065 207c 2064 6566 6175 6c74 2827  type | default('
│ │ │ +001d8ca0: 2727 2729 207d 7d27 0a20 2072 6567 6973  ''') }}'.  regis
│ │ │ +001d8cb0: 7465 723a 206d 6f75 6e74 5f72 6573 756c  ter: mount_resul
│ │ │ +001d8cc0: 740a 2020 6661 696c 6564 5f77 6865 6e3a  t.  failed_when:
│ │ │ +001d8cd0: 0a20 202d 206d 6f75 6e74 5f72 6573 756c  .  - mount_resul
│ │ │ +001d8ce0: 7420 6973 2066 6169 6c65 640a 2020 2d20  t is failed.  - 
│ │ │ +001d8cf0: 2727 2774 6172 6765 7420 6973 2062 7573  '''target is bus
│ │ │ +001d8d00: 7927 2720 6e6f 7420 696e 2028 6d6f 756e  y'' not in (moun
│ │ │ +001d8d10: 745f 7265 7375 6c74 2e6d 7367 207c 2064  t_result.msg | d
│ │ │ +001d8d20: 6566 6175 6c74 2827 2727 2729 2927 0a20  efault(''''))'. 
│ │ │ +001d8d30: 202d 2027 2727 616c 7265 6164 7920 6d6f   - '''already mo
│ │ │ +001d8d40: 756e 7465 6427 2720 6e6f 7420 696e 2028  unted'' not in (
│ │ │ +001d8d50: 6d6f 756e 745f 7265 7375 6c74 2e6d 7367  mount_result.msg
│ │ │ +001d8d60: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ +001d8d70: 2927 0a20 2077 6865 6e3a 0a20 202d 2028  )'.  when:.  - (
│ │ │ +001d8d80: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +001d8d90: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001d8da0: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ +001d8db0: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ +001d8dc0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001d8dd0: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ +001d8de0: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ +001d8df0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001d8e00: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ +001d8e10: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ +001d8e20: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001d8e30: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ +001d8e40: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001d8e50: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ +001d8e60: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ +001d8e70: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ +001d8e80: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ +001d8e90: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ +001d8ea0: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ +001d8eb0: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ +001d8ec0: 2920 290a 2020 2d20 6d6f 756e 745f 696e  ) ).  - mount_in
│ │ │ +001d8ed0: 666f 2069 7320 6465 6669 6e65 640a 2020  fo is defined.  
│ │ │ +001d8ee0: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ +001d8ef0: 7464 6f75 7420 6973 2064 6566 696e 6564  tdout is defined
│ │ │ +001d8f00: 2061 6e64 2028 6465 7669 6365 5f6e 616d   and (device_nam
│ │ │ +001d8f10: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ +001d8f20: 6820 2667 743b 2030 2929 206f 7220 2822  h > 0)) or ("
│ │ │ +001d8f30: 2d2d 6673 7461 6222 0a20 2020 207c 206c  --fstab".    | l
│ │ │ +001d8f40: 656e 6774 6820 3d3d 2030 290a 2020 7461  ength == 0).  ta
│ │ │ +001d8f50: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +001d8f60: 2d35 332d 434d 2d36 2862 290a 2020 2d20  -53-CM-6(b).  - 
│ │ │ +001d8f70: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +001d8f80: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +001d8f90: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +001d8fa0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +001d8fb0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001d8fc0: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f68  - mount_option_h
│ │ │ +001d8fd0: 6f6d 655f 6e6f 6578 6563 0a20 202d 206e  ome_noexec.  - n
│ │ │ +001d8fe0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +001d8ff0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +001d90a0: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ +001d90b0: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ +001d90c0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
Com │ │ │ +001d7c60: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +001d7c90: 3a3c 2f74 683e 3c74 643e 6869 6768 3c2f :high
│ │ │ +001d7cb0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +001d7cc0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +001d7ce0: 3c2f 7468 3e3c 7464 3e63 6f6e 6669 6775 configu │ │ │ +001d7cf0: 7265 3c2f 7464 3e3c 2f74 723e 3c2f 7461 re

│ │ │ +001d9170: 2320 5265 6d65 6469 6174 696f 6e20 6973  # Remediation is
│ │ │ +001d9180: 2061 7070 6c69 6361 626c 6520 6f6e 6c79   applicable only
│ │ │ +001d9190: 2069 6e20 6365 7274 6169 6e20 706c 6174   in certain plat
│ │ │ +001d91a0: 666f 726d 730a 6966 2028 2021 2028 207b  forms.if ( ! ( {
│ │ │ +001d91b0: 2072 706d 202d 2d71 7569 6574 202d 7120   rpm --quiet -q 
│ │ │ +001d91c0: 6b65 726e 656c 203b 7d20 2661 6d70 3b26  kernel ;} &&
│ │ │ +001d91d0: 616d 703b 207b 2072 706d 202d 2d71 7569  amp; { rpm --qui
│ │ │ +001d91e0: 6574 202d 7120 7270 6d2d 6f73 7472 6565  et -q rpm-ostree
│ │ │ +001d91f0: 203b 7d20 2661 6d70 3b26 616d 703b 207b   ;} && {
│ │ │ +001d9200: 2072 706d 202d 2d71 7569 6574 202d 7120   rpm --quiet -q 
│ │ │ +001d9210: 626f 6f74 6320 3b7d 2026 616d 703b 2661  bootc ;} &&a
│ │ │ +001d9220: 6d70 3b20 7b20 2120 7270 6d20 2d2d 7175  mp; { ! rpm --qu
│ │ │ +001d9230: 6965 7420 2d71 206f 7065 6e73 6869 6674  iet -q openshift
│ │ │ +001d9240: 2d6b 7562 656c 6574 203b 7d20 2661 6d70  -kubelet ;} &
│ │ │ +001d9250: 3b26 616d 703b 2028 5b20 2d66 202f 7275  ;& ([ -f /ru
│ │ │ +001d9260: 6e2f 6f73 7472 6565 2d62 6f6f 7465 6420  n/ostree-booted 
│ │ │ +001d9270: 5d20 7c7c 205b 202d 4c20 2f6f 7374 7265  ] || [ -L /ostre
│ │ │ +001d9280: 6520 5d29 2029 2026 616d 703b 2661 6d70  e ]) ) &&
│ │ │ +001d9290: 3b20 2120 2820 5b20 2d66 202f 2e64 6f63  ; ! ( [ -f /.doc
│ │ │ +001d92a0: 6b65 7265 6e76 205d 207c 7c20 5b20 2d66  kerenv ] || [ -f
│ │ │ +001d92b0: 202f 7275 6e2f 2e63 6f6e 7461 696e 6572   /run/.container
│ │ │ +001d92c0: 656e 7620 5d20 2920 293b 2074 6865 6e0a  env ] ) ); then.
│ │ │ +001d92d0: 0a66 756e 6374 696f 6e20 7065 7266 6f72  .function perfor
│ │ │ +001d92e0: 6d5f 7265 6d65 6469 6174 696f 6e20 7b0a  m_remediation {.
│ │ │ +001d92f0: 0a20 2020 200a 2020 2020 2020 2020 2320  .    .        # 
│ │ │ +001d9300: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ +001d9310: 2f68 6f6d 6520 6861 7320 746f 2062 6520  /home has to be 
│ │ │ +001d9320: 6465 6669 6e65 6420 696e 202f 6574 632f  defined in /etc/
│ │ │ +001d9330: 6673 7461 620a 2020 2020 2020 2020 2320  fstab.        # 
│ │ │ +001d9340: 6265 666f 7265 2074 6869 7320 7265 6d65  before this reme
│ │ │ +001d9350: 6469 6174 696f 6e20 6361 6e20 6265 2065  diation can be e
│ │ │ +001d9360: 7865 6375 7465 642e 2049 6e20 6361 7365  xecuted. In case
│ │ │ +001d9370: 2069 7420 6973 206e 6f74 2064 6566 696e   it is not defin
│ │ │ +001d9380: 6564 2c20 7468 650a 2020 2020 2020 2020  ed, the.        
│ │ │ +001d9390: 2320 7265 6d65 6469 6174 696f 6e20 6162  # remediation ab
│ │ │ +001d93a0: 6f72 7473 2061 6e64 206e 6f20 6368 616e  orts and no chan
│ │ │ +001d93b0: 6765 7320 7265 6761 7264 696e 6720 7468  ges regarding th
│ │ │ +001d93c0: 6520 6d6f 756e 7420 706f 696e 7420 6172  e mount point ar
│ │ │ +001d93d0: 6520 646f 6e65 2e0a 2020 2020 2020 2020  e done..        
│ │ │ +001d93e0: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001d93f0: 685f 7265 6765 7870 3d22 2428 7072 696e  h_regexp="$(prin
│ │ │ +001d9400: 7466 2022 5e5b 5b3a 7370 6163 653a 5d5d  tf "^[[:space:]]
│ │ │ +001d9410: 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163 653a  *[^#].*[[:space:
│ │ │ +001d9420: 5d5d 2573 5b5b 3a73 7061 6365 3a5d 5d22  ]]%s[[:space:]]"
│ │ │ +001d9430: 2022 2f68 6f6d 6522 2922 0a0a 2020 2020   "/home")"..    
│ │ │ +001d9440: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ +001d9450: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ +001d9460: 202d 7120 2f65 7463 2f66 7374 6162 205c   -q /etc/fstab \
│ │ │ +001d9470: 0a20 2020 2020 2020 207c 7c20 7b20 6563  .        || { ec
│ │ │ +001d9480: 686f 2022 5468 6520 6d6f 756e 7420 706f  ho "The mount po
│ │ │ +001d9490: 696e 7420 272f 686f 6d65 2720 6973 206e  int '/home' is n
│ │ │ +001d94a0: 6f74 2065 7665 6e20 696e 202f 6574 632f  ot even in /etc/
│ │ │ +001d94b0: 6673 7461 622c 2073 6f20 7765 2063 616e  fstab, so we can
│ │ │ +001d94c0: 2774 2073 6574 2075 7020 6d6f 756e 7420  't set up mount 
│ │ │ +001d94d0: 6f70 7469 6f6e 7322 2026 6774 3b26 616d  options" >&am
│ │ │ +001d94e0: 703b 323b 0a20 2020 2020 2020 2020 2020  p;2;.           
│ │ │ +001d94f0: 2020 2020 2065 6368 6f20 224e 6f74 2072       echo "Not r
│ │ │ +001d9500: 656d 6564 6961 7469 6e67 2c20 6265 6361  emediating, beca
│ │ │ +001d9510: 7573 6520 7468 6572 6520 6973 206e 6f20  use there is no 
│ │ │ +001d9520: 7265 636f 7264 206f 6620 2f68 6f6d 6520  record of /home 
│ │ │ +001d9530: 696e 202f 6574 632f 6673 7461 6222 2026  in /etc/fstab" &
│ │ │ +001d9540: 6774 3b26 616d 703b 323b 2072 6574 7572  gt;&2; retur
│ │ │ +001d9550: 6e20 313b 207d 0a20 2020 200a 0a0a 2020  n 1; }.    ...  
│ │ │ +001d9560: 2020 6d6f 756e 745f 706f 696e 745f 6d61    mount_point_ma
│ │ │ +001d9570: 7463 685f 7265 6765 7870 3d22 2428 7072  tch_regexp="$(pr
│ │ │ +001d9580: 696e 7466 2022 5e5b 5b3a 7370 6163 653a  intf "^[[:space:
│ │ │ +001d9590: 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163  ]]*[^#].*[[:spac
│ │ │ +001d95a0: 653a 5d5d 2573 5b5b 3a73 7061 6365 3a5d  e:]]%s[[:space:]
│ │ │ +001d95b0: 5d22 202f 686f 6d65 2922 0a0a 2020 2020  ]" /home)"..    
│ │ │ +001d95c0: 2320 4966 2074 6865 206d 6f75 6e74 2070  # If the mount p
│ │ │ +001d95d0: 6f69 6e74 2069 7320 6e6f 7420 696e 202f  oint is not in /
│ │ │ +001d95e0: 6574 632f 6673 7461 622c 2067 6574 2070  etc/fstab, get p
│ │ │ +001d95f0: 7265 7669 6f75 7320 6d6f 756e 7420 6f70  revious mount op
│ │ │ +001d9600: 7469 6f6e 7320 6672 6f6d 202f 6574 632f  tions from /etc/
│ │ │ +001d9610: 6d74 6162 0a20 2020 2069 6620 2120 6772  mtab.    if ! gr
│ │ │ +001d9620: 6570 202d 7120 2224 6d6f 756e 745f 706f  ep -q "$mount_po
│ │ │ +001d9630: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001d9640: 2220 2f65 7463 2f66 7374 6162 3b20 7468  " /etc/fstab; th
│ │ │ +001d9650: 656e 0a20 2020 2020 2020 2023 2072 756e  en.        # run
│ │ │ +001d9660: 7469 6d65 206f 7074 7320 7769 7468 6f75  time opts withou
│ │ │ +001d9670: 7420 736f 6d65 2061 7574 6f6d 6174 6963  t some automatic
│ │ │ +001d9680: 206b 6572 6e65 6c2f 7573 6572 7370 6163   kernel/userspac
│ │ │ +001d9690: 652d 6164 6465 6420 6465 6661 756c 7473  e-added defaults
│ │ │ +001d96a0: 0a20 2020 2020 2020 2070 7265 7669 6f75  .        previou
│ │ │ +001d96b0: 735f 6d6f 756e 745f 6f70 7473 3d24 2867  s_mount_opts=$(g
│ │ │ +001d96c0: 7265 7020 2224 6d6f 756e 745f 706f 696e  rep "$mount_poin
│ │ │ +001d96d0: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ +001d96e0: 2f65 7463 2f6d 7461 6220 7c20 6865 6164  /etc/mtab | head
│ │ │ +001d96f0: 202d 3120 7c20 2061 776b 2027 7b70 7269   -1 |  awk '{pri
│ │ │ +001d9700: 6e74 2024 347d 2720 5c0a 2020 2020 2020  nt $4}' \.      
│ │ │ +001d9710: 2020 2020 2020 2020 2020 2020 2020 7c20                | 
│ │ │ +001d9720: 7365 6420 2d45 2022 732f 2872 777c 6465  sed -E "s/(rw|de
│ │ │ +001d9730: 6661 756c 7473 7c73 6563 6c61 6265 6c7c  faults|seclabel|
│ │ │ +001d9740: 6e6f 6578 6563 2928 2c7c 2429 2f2f 673b  noexec)(,|$)//g;
│ │ │ +001d9750: 732f 2c24 2f2f 2229 0a20 2020 2020 2020  s/,$//").       
│ │ │ +001d9760: 205b 2022 2470 7265 7669 6f75 735f 6d6f   [ "$previous_mo
│ │ │ +001d9770: 756e 745f 6f70 7473 2220 5d20 2661 6d70  unt_opts" ] &
│ │ │ +001d9780: 3b26 616d 703b 2070 7265 7669 6f75 735f  ;& previous_
│ │ │ +001d9790: 6d6f 756e 745f 6f70 7473 2b3d 222c 220a  mount_opts+=",".
│ │ │ +001d97a0: 2020 2020 2020 2020 2320 496e 2069 736f          # In iso
│ │ │ +001d97b0: 3936 3630 2066 696c 6573 7973 7465 6d73  9660 filesystems
│ │ │ +001d97c0: 206d 7461 6220 636f 756c 6420 6465 7363   mtab could desc
│ │ │ +001d97d0: 7269 6265 2061 2022 626c 6f63 6b73 697a  ribe a "blocksiz
│ │ │ +001d97e0: 6522 2076 616c 7565 2c20 7468 6973 2073  e" value, this s
│ │ │ +001d97f0: 686f 756c 6420 6265 2072 6566 6c65 6374  hould be reflect
│ │ │ +001d9800: 6564 2069 6e0a 2020 2020 2020 2020 2320  ed in.        # 
│ │ │ +001d9810: 6673 7461 6220 6173 2022 626c 6f63 6b22  fstab as "block"
│ │ │ +001d9820: 2e20 2054 6865 206e 6578 7420 7661 7269  .  The next vari
│ │ │ +001d9830: 6162 6c65 2069 7320 746f 2073 6174 6973  able is to satis
│ │ │ +001d9840: 6679 2073 6865 6c6c 6368 6563 6b20 5343  fy shellcheck SC
│ │ │ +001d9850: 3230 3530 2e0a 2020 2020 2020 2020 6673  2050..        fs
│ │ │ +001d9860: 5f74 7970 653d 2222 0a20 2020 2020 2020  _type="".       
│ │ │ +001d9870: 2069 6620 5b20 2022 2466 735f 7479 7065   if [  "$fs_type
│ │ │ +001d9880: 2220 3d3d 2022 6973 6f39 3636 3022 205d  " == "iso9660" ]
│ │ │ +001d9890: 203b 2074 6865 6e0a 2020 2020 2020 2020   ; then.        
│ │ │ +001d98a0: 2020 2020 7072 6576 696f 7573 5f6d 6f75      previous_mou
│ │ │ +001d98b0: 6e74 5f6f 7074 733d 2428 7365 6420 2773  nt_opts=$(sed 's
│ │ │ +001d98c0: 2f62 6c6f 636b 7369 7a65 3d2f 626c 6f63  /blocksize=/bloc
│ │ │ +001d98d0: 6b3d 2f27 2026 6c74 3b26 6c74 3b26 6c74  k=/' <<<
│ │ │ +001d98e0: 3b20 2224 7072 6576 696f 7573 5f6d 6f75  ; "$previous_mou
│ │ │ +001d98f0: 6e74 5f6f 7074 7322 290a 2020 2020 2020  nt_opts").      
│ │ │ +001d9900: 2020 6669 0a20 2020 2020 2020 2065 6368    fi.        ech
│ │ │ +001d9910: 6f20 2220 2f68 6f6d 6520 2064 6566 6175  o " /home  defau
│ │ │ +001d9920: 6c74 732c 247b 7072 6576 696f 7573 5f6d  lts,${previous_m
│ │ │ +001d9930: 6f75 6e74 5f6f 7074 737d 6e6f 6578 6563  ount_opts}noexec
│ │ │ +001d9940: 2030 2030 2220 2667 743b 2667 743b 202f   0 0" >> /
│ │ │ +001d9950: 6574 632f 6673 7461 620a 2020 2020 2320  etc/fstab.    # 
│ │ │ +001d9960: 4966 2074 6865 206d 6f75 6e74 5f6f 7074  If the mount_opt
│ │ │ +001d9970: 206f 7074 696f 6e20 6973 206e 6f74 2061   option is not a
│ │ │ +001d9980: 6c72 6561 6479 2069 6e20 7468 6520 6d6f  lready in the mo
│ │ │ +001d9990: 756e 7420 706f 696e 7427 7320 2f65 7463  unt point's /etc
│ │ │ +001d99a0: 2f66 7374 6162 2065 6e74 7279 2c20 6164  /fstab entry, ad
│ │ │ +001d99b0: 6420 6974 0a20 2020 2065 6c69 6620 2120  d it.    elif ! 
│ │ │ +001d99c0: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ +001d99d0: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ +001d99e0: 202f 6574 632f 6673 7461 6220 7c20 6772   /etc/fstab | gr
│ │ │ +001d99f0: 6570 202d 7120 226e 6f65 7865 6322 3b20  ep -q "noexec"; 
│ │ │ +001d9a00: 7468 656e 0a20 2020 2020 2020 2070 7265  then.        pre
│ │ │ +001d9a10: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001d9a20: 3d24 2867 7265 7020 2224 6d6f 756e 745f  =$(grep "$mount_
│ │ │ +001d9a30: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001d9a40: 7870 2220 2f65 7463 2f66 7374 6162 207c  xp" /etc/fstab |
│ │ │ +001d9a50: 2061 776b 2027 7b70 7269 6e74 2024 347d   awk '{print $4}
│ │ │ +001d9a60: 2729 0a20 2020 2020 2020 2073 6564 202d  ').        sed -
│ │ │ +001d9a70: 6920 2273 7c5c 2824 7b6d 6f75 6e74 5f70  i "s|\(${mount_p
│ │ │ +001d9a80: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001d9a90: 707d 2e2a 247b 7072 6576 696f 7573 5f6d  p}.*${previous_m
│ │ │ +001d9aa0: 6f75 6e74 5f6f 7074 737d 5c29 7c5c 312c  ount_opts}\)|\1,
│ │ │ +001d9ab0: 6e6f 6578 6563 7c22 202f 6574 632f 6673  noexec|" /etc/fs
│ │ │ +001d9ac0: 7461 620a 2020 2020 6669 0a0a 0a20 2020  tab.    fi...   
│ │ │ +001d9ad0: 2069 6620 6d6b 6469 7220 2d70 2022 2f68   if mkdir -p "/h
│ │ │ +001d9ae0: 6f6d 6522 3b20 7468 656e 0a20 2020 2020  ome"; then.     
│ │ │ +001d9af0: 2020 2069 6620 6d6f 756e 7470 6f69 6e74     if mountpoint
│ │ │ +001d9b00: 202d 7120 222f 686f 6d65 223b 2074 6865   -q "/home"; the
│ │ │ +001d9b10: 6e0a 2020 2020 2020 2020 2020 2020 6d6f  n.            mo
│ │ │ +001d9b20: 756e 7420 2d6f 2072 656d 6f75 6e74 202d  unt -o remount -
│ │ │ +001d9b30: 2d74 6172 6765 7420 222f 686f 6d65 220a  -target "/home".
│ │ │ +001d9b40: 2020 2020 2020 2020 6669 0a20 2020 2066          fi.    f
│ │ │ +001d9b50: 690a 7d0a 0a70 6572 666f 726d 5f72 656d  i.}..perform_rem
│ │ │ +001d9b60: 6564 6961 7469 6f6e 0a0a 656c 7365 0a20  ediation..else. 
│ │ │ +001d9b70: 2020 2026 6774 3b26 616d 703b 3220 6563     >&2 ec
│ │ │ +001d9b80: 686f 2027 5265 6d65 6469 6174 696f 6e20  ho 'Remediation 
│ │ │ +001d9b90: 6973 206e 6f74 2061 7070 6c69 6361 626c  is not applicabl
│ │ │ +001d9ba0: 652c 206e 6f74 6869 6e67 2077 6173 2064  e, nothing was d
│ │ │ +001d9bb0: 6f6e 6527 0a66 690a 3c2f 636f 6465 3e3c  one'.fi.<
│ │ │ +001d9bc0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ +001d9c70: 696f 6e20 416e 6163 6f6e 6461 2073 6e69  ion Anaconda sni
│ │ │ +001d9c80: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e  ppet ...
│ │ │ +001d9c90: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +001d9cc0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Re │ │ │ +001d9140: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +001d9150: 6c73 653c 2f74 643e 3c2f 7472 3e3c 2f74 lse
< │ │ │ +001d9d30: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption: │ │ │ +001d9d50: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +001d9d80: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Comple │ │ │ +001d9d10: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +001d9d20: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
high
Reb │ │ │ +001d9d60: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +001d9d70: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

.part / │ │ │ +001d9dc0: 686f 6d65 202d 2d6d 6f75 6e74 6f70 7469 home --mountopti │ │ │ +001d9dd0: 6f6e 733d 226e 6f65 7865 6322 0a3c 2f63 ons="noexec".

│ │ │ 001d9df0: 3c2f 6469 763e 3c2f 7464 3e3c 2f74 723e
│ │ │ 001d9e00: 3c2f 7462 6f64 793e 3c2f 7461 626c 653e │ │ │ 001d9e10: 3c2f 7464 3e3c 2f74 723e 3c74 7220 6461 Remediation A │ │ │ -001daf00: 6e61 636f 6e64 6120 736e 6970 7065 7420 naconda snippet │ │ │ -001daf10: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -001dafa0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -001dafc0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:high │ │ │ -001dafe0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -001daff0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -001db010: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
.part /home 
│ │ │ -001db050: 2d2d 6d6f 756e 746f 7074 696f 6e73 3d22  --mountoptions="
│ │ │ -001db060: 6e6f 7375 6964 220a 3c2f 636f 6465 3e3c  nosuid".<
│ │ │ -001db070: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ -001db120: 696f 6e20 416e 7369 626c 6520 736e 6970 ion Ansible snip │ │ │ -001db130: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -001db140: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -001db150: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -001db160: 7365 2220 6964 3d22 6964 3537 3922 3e3c se" id="id579">< │ │ │ -001db170: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -001db180: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -001db190: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -001db1a0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -001db1b0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -001db1c0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -001db1d0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:high< │ │ │ -001db200: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>Rebo │ │ │ -001db210: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -001db220: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e< │ │ │ -001db230: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:configure │ │ │ -001db260: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ -001db270: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ -001db280: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ -001db290: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ -001db2a0: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ -001db2b0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -001db2c0: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ -001db2d0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001db2e0: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ -001db2f0: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -001db300: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001db310: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001db320: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ -001db330: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ -001db340: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -001db350: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -001db360: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001db370: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001db380: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001db390: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -001db3a0: 696f 6e5f 686f 6d65 5f6e 6f73 7569 640a  ion_home_nosuid.
│ │ │ -001db3b0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001db3c0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ -001db3d0: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ -001db3e0: 2074 6f20 2f68 6f6d 653a 2043 6865 636b   to /home: Check
│ │ │ -001db3f0: 2069 6e66 6f72 6d61 7469 6f6e 2061 7373   information ass
│ │ │ -001db400: 6f63 6961 7465 6420 746f 206d 6f75 6e74  ociated to mount
│ │ │ -001db410: 706f 696e 7427 0a20 2061 6e73 6962 6c65  point'.  ansible
│ │ │ -001db420: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ -001db430: 3a20 6669 6e64 6d6e 7420 2d2d 6673 7461  : findmnt --fsta
│ │ │ -001db440: 6220 272f 686f 6d65 270a 2020 7265 6769  b '/home'.  regi
│ │ │ -001db450: 7374 6572 3a20 6465 7669 6365 5f6e 616d  ster: device_nam
│ │ │ -001db460: 650a 2020 6661 696c 6564 5f77 6865 6e3a  e.  failed_when:
│ │ │ -001db470: 2064 6576 6963 655f 6e61 6d65 2e72 6320   device_name.rc 
│ │ │ -001db480: 2667 743b 2031 0a20 2063 6861 6e67 6564  > 1.  changed
│ │ │ -001db490: 5f77 6865 6e3a 2066 616c 7365 0a20 2063  _when: false.  c
│ │ │ -001db4a0: 6865 636b 5f6d 6f64 653a 2066 616c 7365  heck_mode: false
│ │ │ -001db4b0: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ -001db4c0: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ -001db4d0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001db4e0: 6163 6b61 6765 7320 616e 6420 2272 706d  ackages and "rpm
│ │ │ -001db4f0: 2d6f 7374 7265 6522 2069 6e20 616e 7369  -ostree" in ansi
│ │ │ -001db500: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001db510: 6573 0a20 2020 2061 6e64 2022 626f 6f74  es.    and "boot
│ │ │ -001db520: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ -001db530: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001db540: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ -001db550: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ -001db560: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001db570: 6573 0a20 2020 2061 6e64 2022 6f73 7472  es.    and "ostr
│ │ │ -001db580: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ -001db590: 726f 635f 636d 646c 696e 6520 2920 616e  roc_cmdline ) an
│ │ │ -001db5a0: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ -001db5b0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ -001db5c0: 7970 6520 696e 0a20 2020 205b 2264 6f63  ype in.    ["doc
│ │ │ -001db5d0: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ -001db5e0: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ -001db5f0: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ -001db600: 290a 2020 2d20 2722 2f68 6f6d 6522 2069  ).  - '"/home" i
│ │ │ -001db610: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ -001db620: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ -001db630: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ -001db640: 270a 2020 7461 6773 3a0a 2020 2d20 4e49  '.  tags:.  - NI
│ │ │ -001db650: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ -001db660: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001db670: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ -001db680: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -001db690: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001db6a0: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -001db6b0: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -001db6c0: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ -001db6d0: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ -001db6e0: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -001db6f0: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -001db700: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001db710: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -001db720: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ -001db730: 6f70 7469 6f6e 5f68 6f6d 655f 6e6f 7375  option_home_nosu
│ │ │ -001db740: 6964 0a20 202d 206e 6f5f 7265 626f 6f74  id.  - no_reboot
│ │ │ -001db750: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ -001db760: 2027 4164 6420 6e6f 7375 6964 204f 7074   'Add nosuid Opt
│ │ │ -001db770: 696f 6e20 746f 202f 686f 6d65 3a20 4372  ion to /home: Cr
│ │ │ -001db780: 6561 7465 206d 6f75 6e74 5f69 6e66 6f20  eate mount_info 
│ │ │ -001db790: 6469 6374 696f 6e61 7279 2076 6172 6961  dictionary varia
│ │ │ -001db7a0: 626c 6527 0a20 2073 6574 5f66 6163 743a  ble'.  set_fact:
│ │ │ -001db7b0: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ -001db7c0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c   '{{ mount_info|
│ │ │ -001db7d0: 6465 6661 756c 7428 7b7d 297c 636f 6d62  default({})|comb
│ │ │ -001db7e0: 696e 6528 7b69 7465 6d2e 303a 2069 7465  ine({item.0: ite
│ │ │ -001db7f0: 6d2e 317d 2920 7d7d 270a 2020 7769 7468  m.1}) }}'.  with
│ │ │ -001db800: 5f74 6f67 6574 6865 723a 0a20 202d 2027  _together:.  - '
│ │ │ -001db810: 7b7b 2064 6576 6963 655f 6e61 6d65 2e73  {{ device_name.s
│ │ │ -001db820: 7464 6f75 745f 6c69 6e65 735b 305d 2e73  tdout_lines[0].s
│ │ │ -001db830: 706c 6974 2829 207c 206d 6170 2827 276c  plit() | map(''l
│ │ │ -001db840: 6f77 6572 2727 2920 7c20 6c69 7374 207d  ower'') | list }
│ │ │ -001db850: 7d27 0a20 202d 2027 7b7b 2064 6576 6963  }'.  - '{{ devic
│ │ │ -001db860: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ -001db870: 6e65 735b 315d 2e73 706c 6974 2829 207c  nes[1].split() |
│ │ │ -001db880: 206c 6973 7420 7d7d 270a 2020 7768 656e   list }}'.  when
│ │ │ -001db890: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ -001db8a0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -001db8b0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001db8c0: 2061 6e64 2022 7270 6d2d 6f73 7472 6565   and "rpm-ostree
│ │ │ -001db8d0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001db8e0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001db8f0: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ -001db900: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001db910: 6b61 6765 7320 616e 6420 6e6f 7420 226f  kages and not "o
│ │ │ -001db920: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ -001db930: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001db940: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001db950: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ -001db960: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ -001db970: 6c69 6e65 2029 2061 6e64 206e 6f74 2028  line ) and not (
│ │ │ -001db980: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ -001db990: 697a 6174 696f 6e5f 7479 7065 2069 6e0a  ization_type in.
│ │ │ -001db9a0: 2020 2020 5b22 646f 636b 6572 222c 2022      ["docker", "
│ │ │ -001db9b0: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ -001db9c0: 2270 6f64 6d61 6e22 2c20 2263 6f6e 7461  "podman", "conta
│ │ │ -001db9d0: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ -001db9e0: 222f 686f 6d65 2220 696e 2061 6e73 6962  "/home" in ansib
│ │ │ -001db9f0: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ -001dba00: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ -001dba10: 2229 207c 206c 6973 7427 0a20 202d 2064  ") | list'.  - d
│ │ │ -001dba20: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001dba30: 7420 6973 2064 6566 696e 6564 2061 6e64  t is defined and
│ │ │ -001dba40: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ -001dba50: 6f75 745f 6c69 6e65 7320 6973 2064 6566  out_lines is def
│ │ │ -001dba60: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ -001dba70: 5f6e 616d 652e 7374 646f 7574 207c 206c  _name.stdout | l
│ │ │ -001dba80: 656e 6774 6820 2667 743b 2030 290a 2020  ength > 0).  
│ │ │ -001dba90: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ -001dbaa0: 3030 2d35 332d 4143 2d36 0a20 202d 204e  00-53-AC-6.  - N
│ │ │ -001dbab0: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ -001dbac0: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ -001dbad0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ -001dbae0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -001dbaf0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -001dbb00: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ -001dbb10: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ -001dbb20: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ -001dbb30: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ -001dbb40: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -001dbb50: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -001dbb60: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -001dbb70: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ -001dbb80: 6f6e 5f68 6f6d 655f 6e6f 7375 6964 0a20  on_home_nosuid. 
│ │ │ -001dbb90: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -001dbba0: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ -001dbbb0: 6420 6e6f 7375 6964 204f 7074 696f 6e20  d nosuid Option 
│ │ │ -001dbbc0: 746f 202f 686f 6d65 3a20 4966 202f 686f  to /home: If /ho
│ │ │ -001dbbd0: 6d65 206e 6f74 206d 6f75 6e74 6564 2c20  me not mounted, 
│ │ │ -001dbbe0: 6372 6166 7420 6d6f 756e 745f 696e 666f  craft mount_info
│ │ │ -001dbbf0: 206d 616e 7561 6c6c 7927 0a20 2073 6574   manually'.  set
│ │ │ -001dbc00: 5f66 6163 743a 0a20 2020 206d 6f75 6e74  _fact:.    mount
│ │ │ -001dbc10: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74  _info: '{{ mount
│ │ │ -001dbc20: 5f69 6e66 6f7c 6465 6661 756c 7428 7b7d  _info|default({}
│ │ │ -001dbc30: 297c 636f 6d62 696e 6528 7b69 7465 6d2e  )|combine({item.
│ │ │ -001dbc40: 303a 2069 7465 6d2e 317d 2920 7d7d 270a  0: item.1}) }}'.
│ │ │ -001dbc50: 2020 7769 7468 5f74 6f67 6574 6865 723a    with_together:
│ │ │ -001dbc60: 0a20 202d 202d 2074 6172 6765 740a 2020  .  - - target.  
│ │ │ -001dbc70: 2020 2d20 736f 7572 6365 0a20 2020 202d    - source.    -
│ │ │ -001dbc80: 2066 7374 7970 650a 2020 2020 2d20 6f70   fstype.    - op
│ │ │ -001dbc90: 7469 6f6e 730a 2020 2d20 2d20 2f68 6f6d  tions.  - - /hom
│ │ │ -001dbca0: 650a 2020 2020 2d20 2727 0a20 2020 202d  e.    - ''.    -
│ │ │ -001dbcb0: 2027 270a 2020 2020 2d20 6465 6661 756c   ''.    - defaul
│ │ │ -001dbcc0: 7473 0a20 2077 6865 6e3a 0a20 202d 2028  ts.  when:.  - (
│ │ │ -001dbcd0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -001dbce0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001dbcf0: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ -001dbd00: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ -001dbd10: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001dbd20: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ -001dbd30: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ -001dbd40: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001dbd50: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -001dbd60: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -001dbd70: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001dbd80: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ -001dbd90: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001dbda0: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ -001dbdb0: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -001dbdc0: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -001dbdd0: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ -001dbde0: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ -001dbdf0: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ -001dbe00: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ -001dbe10: 2920 290a 2020 2d20 2722 2f68 6f6d 6522  ) ).  - '"/home"
│ │ │ -001dbe20: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ -001dbe30: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ -001dbe40: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ -001dbe50: 7374 270a 2020 2d20 2822 2d2d 6673 7461  st'.  - ("--fsta
│ │ │ -001dbe60: 6222 207c 206c 656e 6774 6820 3d3d 2030  b" | length == 0
│ │ │ -001dbe70: 290a 2020 2d20 6465 7669 6365 5f6e 616d  ).  - device_nam
│ │ │ -001dbe80: 652e 7374 646f 7574 2069 7320 6465 6669  e.stdout is defi
│ │ │ -001dbe90: 6e65 6420 616e 6420 6465 7669 6365 5f6e  ned and device_n
│ │ │ -001dbea0: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ -001dbeb0: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ -001dbec0: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ -001dbed0: 6f75 7420 7c20 6c65 6e67 7468 203d 3d20  out | length == 
│ │ │ -001dbee0: 3029 0a20 2074 6167 733a 0a20 202d 204e  0).  tags:.  - N
│ │ │ -001dbef0: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ -001dbf00: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001dbf10: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ -001dbf20: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -001dbf30: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001dbf40: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ -001dbf50: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ -001dbf60: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001dbf70: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ -001dbf80: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ -001dbf90: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ -001dbfa0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -001dbfb0: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ -001dbfc0: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ -001dbfd0: 5f6f 7074 696f 6e5f 686f 6d65 5f6e 6f73  _option_home_nos
│ │ │ -001dbfe0: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f  uid.  - no_reboo
│ │ │ -001dbff0: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ -001dc000: 3a20 2741 6464 206e 6f73 7569 6420 4f70  : 'Add nosuid Op
│ │ │ -001dc010: 7469 6f6e 2074 6f20 2f68 6f6d 653a 204d  tion to /home: M
│ │ │ -001dc020: 616b 6520 7375 7265 206e 6f73 7569 6420  ake sure nosuid 
│ │ │ -001dc030: 6f70 7469 6f6e 2069 7320 7061 7274 206f  option is part o
│ │ │ -001dc040: 6620 7468 6520 746f 202f 686f 6d65 0a20  f the to /home. 
│ │ │ -001dc050: 2020 206f 7074 696f 6e73 270a 2020 7365     options'.  se
│ │ │ -001dc060: 745f 6661 6374 3a0a 2020 2020 6d6f 756e  t_fact:.    moun
│ │ │ -001dc070: 745f 696e 666f 3a20 277b 7b20 6d6f 756e  t_info: '{{ moun
│ │ │ -001dc080: 745f 696e 666f 207c 2063 6f6d 6269 6e65  t_info | combine
│ │ │ -001dc090: 2820 7b27 276f 7074 696f 6e73 2727 3a27  ( {''options'':'
│ │ │ -001dc0a0: 2727 277e 286d 6f75 6e74 5f69 6e66 6f2e  '''~(mount_info.
│ │ │ -001dc0b0: 6f70 7469 6f6e 7320 7c0a 2020 2020 2020  options |.      
│ │ │ -001dc0c0: 6465 6661 756c 7428 2727 2727 2929 7e28  default(''''))~(
│ │ │ -001dc0d0: 2727 2c27 2720 6966 2028 6d6f 756e 745f  '','' if (mount_
│ │ │ -001dc0e0: 696e 666f 2e6f 7074 696f 6e73 207c 2064  info.options | d
│ │ │ -001dc0f0: 6566 6175 6c74 2827 2727 2729 2920 656c  efault('''')) el
│ │ │ -001dc100: 7365 2027 2727 2729 7e27 276e 6f73 7569  se '''')~''nosui
│ │ │ -001dc110: 6427 270a 2020 2020 2020 7d29 207d 7d27  d''.      }) }}'
│ │ │ -001dc120: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ -001dc130: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ -001dc140: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001dc150: 6163 6b61 6765 7320 616e 6420 2272 706d  ackages and "rpm
│ │ │ -001dc160: 2d6f 7374 7265 6522 2069 6e20 616e 7369  -ostree" in ansi
│ │ │ -001dc170: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001dc180: 6573 0a20 2020 2061 6e64 2022 626f 6f74  es.    and "boot
│ │ │ -001dc190: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ -001dc1a0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001dc1b0: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ -001dc1c0: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ -001dc1d0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001dc1e0: 6573 0a20 2020 2061 6e64 2022 6f73 7472  es.    and "ostr
│ │ │ -001dc1f0: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ -001dc200: 726f 635f 636d 646c 696e 6520 2920 616e  roc_cmdline ) an
│ │ │ -001dc210: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ -001dc220: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ -001dc230: 7970 6520 696e 0a20 2020 205b 2264 6f63  ype in.    ["doc
│ │ │ -001dc240: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ -001dc250: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ -001dc260: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ -001dc270: 290a 2020 2d20 2722 2f68 6f6d 6522 2069  ).  - '"/home" i
│ │ │ -001dc280: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ -001dc290: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ -001dc2a0: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ -001dc2b0: 270a 2020 2d20 6d6f 756e 745f 696e 666f  '.  - mount_info
│ │ │ -001dc2c0: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ -001dc2d0: 226e 6f73 7569 6422 206e 6f74 2069 6e20  "nosuid" not in 
│ │ │ -001dc2e0: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469  (mount_info.opti
│ │ │ -001dc2f0: 6f6e 7320 7c20 6465 6661 756c 7428 2727  ons | default(''
│ │ │ -001dc300: 2929 0a20 2074 6167 733a 0a20 202d 204e  )).  tags:.  - N
│ │ │ -001dc310: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ -001dc320: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001dc330: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ -001dc340: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -001dc350: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001dc360: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ -001dc370: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ -001dc380: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001dc390: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ -001dc3a0: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ -001dc3b0: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ -001dc3c0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -001dc3d0: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ -001dc3e0: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ -001dc3f0: 5f6f 7074 696f 6e5f 686f 6d65 5f6e 6f73  _option_home_nos
│ │ │ -001dc400: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f  uid.  - no_reboo
│ │ │ -001dc410: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ -001dc420: 3a20 2741 6464 206e 6f73 7569 6420 4f70  : 'Add nosuid Op
│ │ │ -001dc430: 7469 6f6e 2074 6f20 2f68 6f6d 653a 2045  tion to /home: E
│ │ │ -001dc440: 6e73 7572 6520 2f68 6f6d 6520 6973 206d  nsure /home is m
│ │ │ -001dc450: 6f75 6e74 6564 2077 6974 6820 6e6f 7375  ounted with nosu
│ │ │ -001dc460: 6964 206f 7074 696f 6e27 0a20 2061 6e73  id option'.  ans
│ │ │ -001dc470: 6962 6c65 2e70 6f73 6978 2e6d 6f75 6e74  ible.posix.mount
│ │ │ -001dc480: 3a0a 2020 2020 7061 7468 3a20 2f68 6f6d  :.    path: /hom
│ │ │ -001dc490: 650a 2020 2020 7372 633a 2027 7b7b 206d  e.    src: '{{ m
│ │ │ -001dc4a0: 6f75 6e74 5f69 6e66 6f2e 736f 7572 6365  ount_info.source
│ │ │ -001dc4b0: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ -001dc4c0: 207d 7d27 0a20 2020 206f 7074 733a 2027   }}'.    opts: '
│ │ │ -001dc4d0: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 6f70  {{ mount_info.op
│ │ │ -001dc4e0: 7469 6f6e 7320 7c20 6465 6661 756c 7428  tions | default(
│ │ │ -001dc4f0: 2727 2727 2920 7d7d 270a 2020 2020 7374  '''') }}'.    st
│ │ │ -001dc500: 6174 653a 206d 6f75 6e74 6564 0a20 2020  ate: mounted.   
│ │ │ -001dc510: 2066 7374 7970 653a 2027 7b7b 206d 6f75   fstype: '{{ mou
│ │ │ -001dc520: 6e74 5f69 6e66 6f2e 6673 7479 7065 207c  nt_info.fstype |
│ │ │ -001dc530: 2064 6566 6175 6c74 2827 2727 2729 207d   default('''') }
│ │ │ -001dc540: 7d27 0a20 2072 6567 6973 7465 723a 206d  }'.  register: m
│ │ │ -001dc550: 6f75 6e74 5f72 6573 756c 740a 2020 6661  ount_result.  fa
│ │ │ -001dc560: 696c 6564 5f77 6865 6e3a 0a20 202d 206d  iled_when:.  - m
│ │ │ -001dc570: 6f75 6e74 5f72 6573 756c 7420 6973 2066  ount_result is f
│ │ │ -001dc580: 6169 6c65 640a 2020 2d20 2727 2774 6172  ailed.  - '''tar
│ │ │ -001dc590: 6765 7420 6973 2062 7573 7927 2720 6e6f  get is busy'' no
│ │ │ -001dc5a0: 7420 696e 2028 6d6f 756e 745f 7265 7375  t in (mount_resu
│ │ │ -001dc5b0: 6c74 2e6d 7367 207c 2064 6566 6175 6c74  lt.msg | default
│ │ │ -001dc5c0: 2827 2727 2729 2927 0a20 202d 2027 2727  (''''))'.  - '''
│ │ │ -001dc5d0: 616c 7265 6164 7920 6d6f 756e 7465 6427  already mounted'
│ │ │ -001dc5e0: 2720 6e6f 7420 696e 2028 6d6f 756e 745f  ' not in (mount_
│ │ │ -001dc5f0: 7265 7375 6c74 2e6d 7367 207c 2064 6566  result.msg | def
│ │ │ -001dc600: 6175 6c74 2827 2727 2729 2927 0a20 2077  ault(''''))'.  w
│ │ │ -001dc610: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ -001dc620: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -001dc630: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001dc640: 6765 7320 616e 6420 2272 706d 2d6f 7374  ges and "rpm-ost
│ │ │ -001dc650: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -001dc660: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -001dc670: 2020 2061 6e64 2022 626f 6f74 6322 2069     and "bootc" i
│ │ │ -001dc680: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001dc690: 7061 636b 6167 6573 2061 6e64 206e 6f74  packages and not
│ │ │ -001dc6a0: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ -001dc6b0: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ -001dc6c0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -001dc6d0: 2020 2061 6e64 2022 6f73 7472 6565 2220     and "ostree" 
│ │ │ -001dc6e0: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ -001dc6f0: 636d 646c 696e 6520 2920 616e 6420 6e6f  cmdline ) and no
│ │ │ -001dc700: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ -001dc710: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ -001dc720: 696e 0a20 2020 205b 2264 6f63 6b65 7222  in.    ["docker"
│ │ │ -001dc730: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ -001dc740: 222c 2022 706f 646d 616e 222c 2022 636f  ", "podman", "co
│ │ │ -001dc750: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ -001dc760: 2d20 2722 2f68 6f6d 6522 2069 6e20 616e  - '"/home" in an
│ │ │ -001dc770: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ -001dc780: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ -001dc790: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ -001dc7a0: 2d20 6d6f 756e 745f 696e 666f 2069 7320  - mount_info is 
│ │ │ -001dc7b0: 6465 6669 6e65 640a 2020 2d20 2864 6576  defined.  - (dev
│ │ │ -001dc7c0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ -001dc7d0: 6973 2064 6566 696e 6564 2061 6e64 2028  is defined and (
│ │ │ -001dc7e0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001dc7f0: 7574 207c 206c 656e 6774 6820 2667 743b  ut | length >
│ │ │ -001dc800: 2030 2929 206f 7220 2822 2d2d 6673 7461   0)) or ("--fsta
│ │ │ -001dc810: 6222 0a20 2020 207c 206c 656e 6774 6820  b".    | length 
│ │ │ -001dc820: 3d3d 2030 290a 2020 7461 6773 3a0a 2020  == 0).  tags:.  
│ │ │ -001dc830: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001dc840: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ -001dc850: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ -001dc860: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -001dc870: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -001dc880: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ -001dc890: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -001dc8a0: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ -001dc8b0: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ -001dc8c0: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -001dc8d0: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -001dc8e0: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -001dc8f0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -001dc900: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -001dc910: 756e 745f 6f70 7469 6f6e 5f68 6f6d 655f  unt_option_home_
│ │ │ -001dc920: 6e6f 7375 6964 0a20 202d 206e 6f5f 7265  nosuid.  - no_re
│ │ │ -001dc930: 626f 6f74 5f6e 6565 6465 640a 3c2f 636f  boot_needed.
< │ │ │ -001dc950: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -001dc960: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -001dc970: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -001dc980: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -001dc990: 6435 3830 2220 7461 6269 6e64 6578 3d22 d580" tabindex=" │ │ │ -001dc9a0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -001dc9b0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -001dc9c0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -001dc9d0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -001dc9e0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -001dc9f0: 6469 6174 696f 6e20 5368 656c 6c20 7363 diation Shell sc │ │ │ -001dca00: 7269 7074 20e2 87b2 3c2f 613e 3c62 723e ript ...
│ │ │ -001dca10: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -001dca40: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Reboot │ │ │ -001dca90: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -001dcaa0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
# Re
│ │ │ -001dcac0: 6d65 6469 6174 696f 6e20 6973 2061 7070  mediation is app
│ │ │ -001dcad0: 6c69 6361 626c 6520 6f6e 6c79 2069 6e20  licable only in 
│ │ │ -001dcae0: 6365 7274 6169 6e20 706c 6174 666f 726d  certain platform
│ │ │ -001dcaf0: 730a 6966 2028 2021 2028 207b 2072 706d  s.if ( ! ( { rpm
│ │ │ -001dcb00: 202d 2d71 7569 6574 202d 7120 6b65 726e   --quiet -q kern
│ │ │ -001dcb10: 656c 203b 7d20 2661 6d70 3b26 616d 703b  el ;} &&
│ │ │ -001dcb20: 207b 2072 706d 202d 2d71 7569 6574 202d   { rpm --quiet -
│ │ │ -001dcb30: 7120 7270 6d2d 6f73 7472 6565 203b 7d20  q rpm-ostree ;} 
│ │ │ -001dcb40: 2661 6d70 3b26 616d 703b 207b 2072 706d  && { rpm
│ │ │ -001dcb50: 202d 2d71 7569 6574 202d 7120 626f 6f74   --quiet -q boot
│ │ │ -001dcb60: 6320 3b7d 2026 616d 703b 2661 6d70 3b20  c ;} && 
│ │ │ -001dcb70: 7b20 2120 7270 6d20 2d2d 7175 6965 7420  { ! rpm --quiet 
│ │ │ -001dcb80: 2d71 206f 7065 6e73 6869 6674 2d6b 7562  -q openshift-kub
│ │ │ -001dcb90: 656c 6574 203b 7d20 2661 6d70 3b26 616d  elet ;} &&am
│ │ │ -001dcba0: 703b 2028 5b20 2d66 202f 7275 6e2f 6f73  p; ([ -f /run/os
│ │ │ -001dcbb0: 7472 6565 2d62 6f6f 7465 6420 5d20 7c7c  tree-booted ] ||
│ │ │ -001dcbc0: 205b 202d 4c20 2f6f 7374 7265 6520 5d29   [ -L /ostree ])
│ │ │ -001dcbd0: 2029 2026 616d 703b 2661 6d70 3b20 2120   ) && ! 
│ │ │ -001dcbe0: 2820 5b20 2d66 202f 2e64 6f63 6b65 7265  ( [ -f /.dockere
│ │ │ -001dcbf0: 6e76 205d 207c 7c20 5b20 2d66 202f 7275  nv ] || [ -f /ru
│ │ │ -001dcc00: 6e2f 2e63 6f6e 7461 696e 6572 656e 7620  n/.containerenv 
│ │ │ -001dcc10: 5d20 2920 2920 2661 6d70 3b26 616d 703b  ] ) ) &&
│ │ │ -001dcc20: 207b 2028 2066 696e 646d 6e74 202d 2d6b   { ( findmnt --k
│ │ │ -001dcc30: 6572 6e65 6c20 222f 686f 6d65 2220 2667  ernel "/home" &g
│ │ │ -001dcc40: 743b 202f 6465 762f 6e75 6c6c 207c 7c20  t; /dev/null || 
│ │ │ -001dcc50: 6669 6e64 6d6e 7420 2d2d 6673 7461 6220  findmnt --fstab 
│ │ │ -001dcc60: 222f 686f 6d65 2220 2667 743b 202f 6465  "/home" > /de
│ │ │ -001dcc70: 762f 6e75 6c6c 2029 3b20 7d3b 2074 6865  v/null ); }; the
│ │ │ -001dcc80: 6e0a 0a66 756e 6374 696f 6e20 7065 7266  n..function perf
│ │ │ -001dcc90: 6f72 6d5f 7265 6d65 6469 6174 696f 6e20  orm_remediation 
│ │ │ -001dcca0: 7b0a 0a20 2020 200a 2020 2020 2020 2020  {..    .        
│ │ │ -001dccb0: 2320 7468 6520 6d6f 756e 7420 706f 696e  # the mount poin
│ │ │ -001dccc0: 7420 2f68 6f6d 6520 6861 7320 746f 2062  t /home has to b
│ │ │ -001dccd0: 6520 6465 6669 6e65 6420 696e 202f 6574  e defined in /et
│ │ │ -001dcce0: 632f 6673 7461 620a 2020 2020 2020 2020  c/fstab.        
│ │ │ -001dccf0: 2320 6265 666f 7265 2074 6869 7320 7265  # before this re
│ │ │ -001dcd00: 6d65 6469 6174 696f 6e20 6361 6e20 6265  mediation can be
│ │ │ -001dcd10: 2065 7865 6375 7465 642e 2049 6e20 6361   executed. In ca
│ │ │ -001dcd20: 7365 2069 7420 6973 206e 6f74 2064 6566  se it is not def
│ │ │ -001dcd30: 696e 6564 2c20 7468 650a 2020 2020 2020  ined, the.      
│ │ │ -001dcd40: 2020 2320 7265 6d65 6469 6174 696f 6e20    # remediation 
│ │ │ -001dcd50: 6162 6f72 7473 2061 6e64 206e 6f20 6368  aborts and no ch
│ │ │ -001dcd60: 616e 6765 7320 7265 6761 7264 696e 6720  anges regarding 
│ │ │ -001dcd70: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ -001dcd80: 6172 6520 646f 6e65 2e0a 2020 2020 2020  are done..      
│ │ │ -001dcd90: 2020 6d6f 756e 745f 706f 696e 745f 6d61    mount_point_ma
│ │ │ -001dcda0: 7463 685f 7265 6765 7870 3d22 2428 7072  tch_regexp="$(pr
│ │ │ -001dcdb0: 696e 7466 2022 5e5b 5b3a 7370 6163 653a  intf "^[[:space:
│ │ │ -001dcdc0: 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163  ]]*[^#].*[[:spac
│ │ │ -001dcdd0: 653a 5d5d 2573 5b5b 3a73 7061 6365 3a5d  e:]]%s[[:space:]
│ │ │ -001dcde0: 5d22 2022 2f68 6f6d 6522 2922 0a0a 2020  ]" "/home")"..  
│ │ │ -001dcdf0: 2020 6772 6570 2022 246d 6f75 6e74 5f70    grep "$mount_p
│ │ │ -001dce00: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001dce10: 7022 202d 7120 2f65 7463 2f66 7374 6162  p" -q /etc/fstab
│ │ │ -001dce20: 205c 0a20 2020 2020 2020 207c 7c20 7b20   \.        || { 
│ │ │ -001dce30: 6563 686f 2022 5468 6520 6d6f 756e 7420  echo "The mount 
│ │ │ -001dce40: 706f 696e 7420 272f 686f 6d65 2720 6973  point '/home' is
│ │ │ -001dce50: 206e 6f74 2065 7665 6e20 696e 202f 6574   not even in /et
│ │ │ -001dce60: 632f 6673 7461 622c 2073 6f20 7765 2063  c/fstab, so we c
│ │ │ -001dce70: 616e 2774 2073 6574 2075 7020 6d6f 756e  an't set up moun
│ │ │ -001dce80: 7420 6f70 7469 6f6e 7322 2026 6774 3b26  t options" >&
│ │ │ -001dce90: 616d 703b 323b 0a20 2020 2020 2020 2020  amp;2;.         
│ │ │ -001dcea0: 2020 2020 2020 2065 6368 6f20 224e 6f74         echo "Not
│ │ │ -001dceb0: 2072 656d 6564 6961 7469 6e67 2c20 6265   remediating, be
│ │ │ -001dcec0: 6361 7573 6520 7468 6572 6520 6973 206e  cause there is n
│ │ │ -001dced0: 6f20 7265 636f 7264 206f 6620 2f68 6f6d  o record of /hom
│ │ │ -001dcee0: 6520 696e 202f 6574 632f 6673 7461 6222  e in /etc/fstab"
│ │ │ -001dcef0: 2026 6774 3b26 616d 703b 323b 2072 6574   >&2; ret
│ │ │ -001dcf00: 7572 6e20 313b 207d 0a20 2020 200a 0a0a  urn 1; }.    ...
│ │ │ -001dcf10: 2020 2020 6d6f 756e 745f 706f 696e 745f      mount_point_
│ │ │ -001dcf20: 6d61 7463 685f 7265 6765 7870 3d22 2428  match_regexp="$(
│ │ │ -001dcf30: 7072 696e 7466 2022 5e5b 5b3a 7370 6163  printf "^[[:spac
│ │ │ -001dcf40: 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370  e:]]*[^#].*[[:sp
│ │ │ -001dcf50: 6163 653a 5d5d 2573 5b5b 3a73 7061 6365  ace:]]%s[[:space
│ │ │ -001dcf60: 3a5d 5d22 202f 686f 6d65 2922 0a0a 2020  :]]" /home)"..  
│ │ │ -001dcf70: 2020 2320 4966 2074 6865 206d 6f75 6e74    # If the mount
│ │ │ -001dcf80: 2070 6f69 6e74 2069 7320 6e6f 7420 696e   point is not in
│ │ │ -001dcf90: 202f 6574 632f 6673 7461 622c 2067 6574   /etc/fstab, get
│ │ │ -001dcfa0: 2070 7265 7669 6f75 7320 6d6f 756e 7420   previous mount 
│ │ │ -001dcfb0: 6f70 7469 6f6e 7320 6672 6f6d 202f 6574  options from /et
│ │ │ -001dcfc0: 632f 6d74 6162 0a20 2020 2069 6620 2120  c/mtab.    if ! 
│ │ │ -001dcfd0: 6772 6570 202d 7120 2224 6d6f 756e 745f  grep -q "$mount_
│ │ │ -001dcfe0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001dcff0: 7870 2220 2f65 7463 2f66 7374 6162 3b20  xp" /etc/fstab; 
│ │ │ -001dd000: 7468 656e 0a20 2020 2020 2020 2023 2072  then.        # r
│ │ │ -001dd010: 756e 7469 6d65 206f 7074 7320 7769 7468  untime opts with
│ │ │ -001dd020: 6f75 7420 736f 6d65 2061 7574 6f6d 6174  out some automat
│ │ │ -001dd030: 6963 206b 6572 6e65 6c2f 7573 6572 7370  ic kernel/usersp
│ │ │ -001dd040: 6163 652d 6164 6465 6420 6465 6661 756c  ace-added defaul
│ │ │ -001dd050: 7473 0a20 2020 2020 2020 2070 7265 7669  ts.        previ
│ │ │ -001dd060: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ -001dd070: 2867 7265 7020 2224 6d6f 756e 745f 706f  (grep "$mount_po
│ │ │ -001dd080: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001dd090: 2220 2f65 7463 2f6d 7461 6220 7c20 6865  " /etc/mtab | he
│ │ │ -001dd0a0: 6164 202d 3120 7c20 2061 776b 2027 7b70  ad -1 |  awk '{p
│ │ │ -001dd0b0: 7269 6e74 2024 347d 2720 5c0a 2020 2020  rint $4}' \.    
│ │ │ -001dd0c0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -001dd0d0: 7c20 7365 6420 2d45 2022 732f 2872 777c  | sed -E "s/(rw|
│ │ │ -001dd0e0: 6465 6661 756c 7473 7c73 6563 6c61 6265  defaults|seclabe
│ │ │ -001dd0f0: 6c7c 6e6f 7375 6964 2928 2c7c 2429 2f2f  l|nosuid)(,|$)//
│ │ │ -001dd100: 673b 732f 2c24 2f2f 2229 0a20 2020 2020  g;s/,$//").     
│ │ │ -001dd110: 2020 205b 2022 2470 7265 7669 6f75 735f     [ "$previous_
│ │ │ -001dd120: 6d6f 756e 745f 6f70 7473 2220 5d20 2661  mount_opts" ] &a
│ │ │ -001dd130: 6d70 3b26 616d 703b 2070 7265 7669 6f75  mp;& previou
│ │ │ -001dd140: 735f 6d6f 756e 745f 6f70 7473 2b3d 222c  s_mount_opts+=",
│ │ │ -001dd150: 220a 2020 2020 2020 2020 2320 496e 2069  ".        # In i
│ │ │ -001dd160: 736f 3936 3630 2066 696c 6573 7973 7465  so9660 filesyste
│ │ │ -001dd170: 6d73 206d 7461 6220 636f 756c 6420 6465  ms mtab could de
│ │ │ -001dd180: 7363 7269 6265 2061 2022 626c 6f63 6b73  scribe a "blocks
│ │ │ -001dd190: 697a 6522 2076 616c 7565 2c20 7468 6973  ize" value, this
│ │ │ -001dd1a0: 2073 686f 756c 6420 6265 2072 6566 6c65   should be refle
│ │ │ -001dd1b0: 6374 6564 2069 6e0a 2020 2020 2020 2020  cted in.        
│ │ │ -001dd1c0: 2320 6673 7461 6220 6173 2022 626c 6f63  # fstab as "bloc
│ │ │ -001dd1d0: 6b22 2e20 2054 6865 206e 6578 7420 7661  k".  The next va
│ │ │ -001dd1e0: 7269 6162 6c65 2069 7320 746f 2073 6174  riable is to sat
│ │ │ -001dd1f0: 6973 6679 2073 6865 6c6c 6368 6563 6b20  isfy shellcheck 
│ │ │ -001dd200: 5343 3230 3530 2e0a 2020 2020 2020 2020  SC2050..        
│ │ │ -001dd210: 6673 5f74 7970 653d 2222 0a20 2020 2020  fs_type="".     
│ │ │ -001dd220: 2020 2069 6620 5b20 2022 2466 735f 7479     if [  "$fs_ty
│ │ │ -001dd230: 7065 2220 3d3d 2022 6973 6f39 3636 3022  pe" == "iso9660"
│ │ │ -001dd240: 205d 203b 2074 6865 6e0a 2020 2020 2020   ] ; then.      
│ │ │ -001dd250: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ -001dd260: 6f75 6e74 5f6f 7074 733d 2428 7365 6420  ount_opts=$(sed 
│ │ │ -001dd270: 2773 2f62 6c6f 636b 7369 7a65 3d2f 626c  's/blocksize=/bl
│ │ │ -001dd280: 6f63 6b3d 2f27 2026 6c74 3b26 6c74 3b26  ock=/' <<&
│ │ │ -001dd290: 6c74 3b20 2224 7072 6576 696f 7573 5f6d  lt; "$previous_m
│ │ │ -001dd2a0: 6f75 6e74 5f6f 7074 7322 290a 2020 2020  ount_opts").    
│ │ │ -001dd2b0: 2020 2020 6669 0a20 2020 2020 2020 2065      fi.        e
│ │ │ -001dd2c0: 6368 6f20 2220 2f68 6f6d 6520 2064 6566  cho " /home  def
│ │ │ -001dd2d0: 6175 6c74 732c 247b 7072 6576 696f 7573  aults,${previous
│ │ │ -001dd2e0: 5f6d 6f75 6e74 5f6f 7074 737d 6e6f 7375  _mount_opts}nosu
│ │ │ -001dd2f0: 6964 2030 2030 2220 2667 743b 2667 743b  id 0 0" >>
│ │ │ -001dd300: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ -001dd310: 2320 4966 2074 6865 206d 6f75 6e74 5f6f  # If the mount_o
│ │ │ -001dd320: 7074 206f 7074 696f 6e20 6973 206e 6f74  pt option is not
│ │ │ -001dd330: 2061 6c72 6561 6479 2069 6e20 7468 6520   already in the 
│ │ │ -001dd340: 6d6f 756e 7420 706f 696e 7427 7320 2f65  mount point's /e
│ │ │ -001dd350: 7463 2f66 7374 6162 2065 6e74 7279 2c20  tc/fstab entry, 
│ │ │ -001dd360: 6164 6420 6974 0a20 2020 2065 6c69 6620  add it.    elif 
│ │ │ -001dd370: 2120 6772 6570 2022 246d 6f75 6e74 5f70  ! grep "$mount_p
│ │ │ -001dd380: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001dd390: 7022 202f 6574 632f 6673 7461 6220 7c20  p" /etc/fstab | 
│ │ │ -001dd3a0: 6772 6570 202d 7120 226e 6f73 7569 6422  grep -q "nosuid"
│ │ │ -001dd3b0: 3b20 7468 656e 0a20 2020 2020 2020 2070  ; then.        p
│ │ │ -001dd3c0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001dd3d0: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ -001dd3e0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001dd3f0: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ -001dd400: 207c 2061 776b 2027 7b70 7269 6e74 2024   | awk '{print $
│ │ │ -001dd410: 347d 2729 0a20 2020 2020 2020 2073 6564  4}').        sed
│ │ │ -001dd420: 202d 6920 2273 7c5c 2824 7b6d 6f75 6e74   -i "s|\(${mount
│ │ │ -001dd430: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001dd440: 6578 707d 2e2a 247b 7072 6576 696f 7573  exp}.*${previous
│ │ │ -001dd450: 5f6d 6f75 6e74 5f6f 7074 737d 5c29 7c5c  _mount_opts}\)|\
│ │ │ -001dd460: 312c 6e6f 7375 6964 7c22 202f 6574 632f  1,nosuid|" /etc/
│ │ │ -001dd470: 6673 7461 620a 2020 2020 6669 0a0a 0a20  fstab.    fi... 
│ │ │ -001dd480: 2020 2069 6620 6d6b 6469 7220 2d70 2022     if mkdir -p "
│ │ │ -001dd490: 2f68 6f6d 6522 3b20 7468 656e 0a20 2020  /home"; then.   
│ │ │ -001dd4a0: 2020 2020 2069 6620 6d6f 756e 7470 6f69       if mountpoi
│ │ │ -001dd4b0: 6e74 202d 7120 222f 686f 6d65 223b 2074  nt -q "/home"; t
│ │ │ -001dd4c0: 6865 6e0a 2020 2020 2020 2020 2020 2020  hen.            
│ │ │ -001dd4d0: 6d6f 756e 7420 2d6f 2072 656d 6f75 6e74  mount -o remount
│ │ │ -001dd4e0: 202d 2d74 6172 6765 7420 222f 686f 6d65   --target "/home
│ │ │ -001dd4f0: 220a 2020 2020 2020 2020 6669 0a20 2020  ".        fi.   
│ │ │ -001dd500: 2066 690a 7d0a 0a70 6572 666f 726d 5f72   fi.}..perform_r
│ │ │ -001dd510: 656d 6564 6961 7469 6f6e 0a0a 656c 7365  emediation..else
│ │ │ -001dd520: 0a20 2020 2026 6774 3b26 616d 703b 3220  .    >&2 
│ │ │ -001dd530: 6563 686f 2027 5265 6d65 6469 6174 696f  echo 'Remediatio
│ │ │ -001dd540: 6e20 6973 206e 6f74 2061 7070 6c69 6361  n is not applica
│ │ │ -001dd550: 626c 652c 206e 6f74 6869 6e67 2077 6173  ble, nothing was
│ │ │ -001dd560: 2064 6f6e 6527 0a66 690a 3c2f 636f 6465   done'.fi.
│ │ │ +001daf90: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +001dafb0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ +001dafe0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
Complexity:< │ │ │ +001dafa0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +001dafc0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ +001db010: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +001db020: 636f 6e66 6967 7572 653c 2f74 643e 3c2f configure
│ │ │ +001db040: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ +001db050: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ +001db060: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ +001db070: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ +001db080: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ +001db090: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +001db0a0: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ +001db0b0: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ +001db0c0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001db0d0: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ +001db0e0: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ +001db0f0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001db100: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ +001db110: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ +001db120: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +001db130: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +001db140: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +001db150: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +001db160: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001db170: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f68  - mount_option_h
│ │ │ +001db180: 6f6d 655f 6e6f 7375 6964 0a20 202d 206e  ome_nosuid.  - n
│ │ │ +001db190: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +001db1a0: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ +001db1b0: 7375 6964 204f 7074 696f 6e20 746f 202f  suid Option to /
│ │ │ +001db1c0: 686f 6d65 3a20 4368 6563 6b20 696e 666f  home: Check info
│ │ │ +001db1d0: 726d 6174 696f 6e20 6173 736f 6369 6174  rmation associat
│ │ │ +001db1e0: 6564 2074 6f20 6d6f 756e 7470 6f69 6e74  ed to mountpoint
│ │ │ +001db1f0: 270a 2020 616e 7369 626c 652e 6275 696c  '.  ansible.buil
│ │ │ +001db200: 7469 6e2e 636f 6d6d 616e 643a 2066 696e  tin.command: fin
│ │ │ +001db210: 646d 6e74 202d 2d66 7374 6162 2027 2f68  dmnt --fstab '/h
│ │ │ +001db220: 6f6d 6527 0a20 2072 6567 6973 7465 723a  ome'.  register:
│ │ │ +001db230: 2064 6576 6963 655f 6e61 6d65 0a20 2066   device_name.  f
│ │ │ +001db240: 6169 6c65 645f 7768 656e 3a20 6465 7669  ailed_when: devi
│ │ │ +001db250: 6365 5f6e 616d 652e 7263 2026 6774 3b20  ce_name.rc > 
│ │ │ +001db260: 310a 2020 6368 616e 6765 645f 7768 656e  1.  changed_when
│ │ │ +001db270: 3a20 6661 6c73 650a 2020 6368 6563 6b5f  : false.  check_
│ │ │ +001db280: 6d6f 6465 3a20 6661 6c73 650a 2020 7768  mode: false.  wh
│ │ │ +001db290: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ +001db2a0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +001db2b0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001db2c0: 6573 2061 6e64 2022 7270 6d2d 6f73 7472  es and "rpm-ostr
│ │ │ +001db2d0: 6565 2220 696e 2061 6e73 6962 6c65 5f66  ee" in ansible_f
│ │ │ +001db2e0: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001db2f0: 2020 616e 6420 2262 6f6f 7463 2220 696e    and "bootc" in
│ │ │ +001db300: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001db310: 6163 6b61 6765 7320 616e 6420 6e6f 7420  ackages and not 
│ │ │ +001db320: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +001db330: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +001db340: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001db350: 2020 616e 6420 226f 7374 7265 6522 2069    and "ostree" i
│ │ │ +001db360: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ +001db370: 6d64 6c69 6e65 2029 2061 6e64 206e 6f74  mdline ) and not
│ │ │ +001db380: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +001db390: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +001db3a0: 6e0a 2020 2020 5b22 646f 636b 6572 222c  n.    ["docker",
│ │ │ +001db3b0: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ +001db3c0: 2c20 2270 6f64 6d61 6e22 2c20 2263 6f6e  , "podman", "con
│ │ │ +001db3d0: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ +001db3e0: 2027 222f 686f 6d65 2220 696e 2061 6e73   '"/home" in ans
│ │ │ +001db3f0: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ +001db400: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ +001db410: 6e74 2229 207c 206c 6973 7427 0a20 2074  nt") | list'.  t
│ │ │ +001db420: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +001db430: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ +001db440: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ +001db450: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001db460: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +001db470: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ +001db480: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001db490: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ +001db4a0: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ +001db4b0: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ +001db4c0: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ +001db4d0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +001db4e0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +001db4f0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +001db500: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ +001db510: 6e5f 686f 6d65 5f6e 6f73 7569 640a 2020  n_home_nosuid.  
│ │ │ +001db520: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001db530: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ +001db540: 206e 6f73 7569 6420 4f70 7469 6f6e 2074   nosuid Option t
│ │ │ +001db550: 6f20 2f68 6f6d 653a 2043 7265 6174 6520  o /home: Create 
│ │ │ +001db560: 6d6f 756e 745f 696e 666f 2064 6963 7469  mount_info dicti
│ │ │ +001db570: 6f6e 6172 7920 7661 7269 6162 6c65 270a  onary variable'.
│ │ │ +001db580: 2020 7365 745f 6661 6374 3a0a 2020 2020    set_fact:.    
│ │ │ +001db590: 6d6f 756e 745f 696e 666f 3a20 277b 7b20  mount_info: '{{ 
│ │ │ +001db5a0: 6d6f 756e 745f 696e 666f 7c64 6566 6175  mount_info|defau
│ │ │ +001db5b0: 6c74 287b 7d29 7c63 6f6d 6269 6e65 287b  lt({})|combine({
│ │ │ +001db5c0: 6974 656d 2e30 3a20 6974 656d 2e31 7d29  item.0: item.1})
│ │ │ +001db5d0: 207d 7d27 0a20 2077 6974 685f 746f 6765   }}'.  with_toge
│ │ │ +001db5e0: 7468 6572 3a0a 2020 2d20 277b 7b20 6465  ther:.  - '{{ de
│ │ │ +001db5f0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001db600: 5f6c 696e 6573 5b30 5d2e 7370 6c69 7428  _lines[0].split(
│ │ │ +001db610: 2920 7c20 6d61 7028 2727 6c6f 7765 7227  ) | map(''lower'
│ │ │ +001db620: 2729 207c 206c 6973 7420 7d7d 270a 2020  ') | list }}'.  
│ │ │ +001db630: 2d20 277b 7b20 6465 7669 6365 5f6e 616d  - '{{ device_nam
│ │ │ +001db640: 652e 7374 646f 7574 5f6c 696e 6573 5b31  e.stdout_lines[1
│ │ │ +001db650: 5d2e 7370 6c69 7428 2920 7c20 6c69 7374  ].split() | list
│ │ │ +001db660: 207d 7d27 0a20 2077 6865 6e3a 0a20 202d   }}'.  when:.  -
│ │ │ +001db670: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ +001db680: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001db690: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001db6a0: 2272 706d 2d6f 7374 7265 6522 2069 6e20  "rpm-ostree" in 
│ │ │ +001db6b0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001db6c0: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ +001db6d0: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ +001db6e0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001db6f0: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ +001db700: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ +001db710: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001db720: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ +001db730: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001db740: 6c65 5f70 726f 635f 636d 646c 696e 6520  le_proc_cmdline 
│ │ │ +001db750: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ +001db760: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ +001db770: 6f6e 5f74 7970 6520 696e 0a20 2020 205b  on_type in.    [
│ │ │ +001db780: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ +001db790: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ +001db7a0: 616e 222c 2022 636f 6e74 6169 6e65 7222  an", "container"
│ │ │ +001db7b0: 5d20 2920 290a 2020 2d20 2722 2f68 6f6d  ] ) ).  - '"/hom
│ │ │ +001db7c0: 6522 2069 6e20 616e 7369 626c 655f 6d6f  e" in ansible_mo
│ │ │ +001db7d0: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ +001db7e0: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ +001db7f0: 6c69 7374 270a 2020 2d20 6465 7669 6365  list'.  - device
│ │ │ +001db800: 5f6e 616d 652e 7374 646f 7574 2069 7320  _name.stdout is 
│ │ │ +001db810: 6465 6669 6e65 6420 616e 6420 6465 7669  defined and devi
│ │ │ +001db820: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ +001db830: 696e 6573 2069 7320 6465 6669 6e65 640a  ines is defined.
│ │ │ +001db840: 2020 2d20 2864 6576 6963 655f 6e61 6d65    - (device_name
│ │ │ +001db850: 2e73 7464 6f75 7420 7c20 6c65 6e67 7468  .stdout | length
│ │ │ +001db860: 2026 6774 3b20 3029 0a20 2074 6167 733a   > 0).  tags:
│ │ │ +001db870: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001db880: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ +001db890: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ +001db8a0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001db8b0: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ +001db8c0: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ +001db8d0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001db8e0: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ +001db8f0: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ +001db900: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +001db910: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +001db920: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +001db930: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +001db940: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001db950: 206d 6f75 6e74 5f6f 7074 696f 6e5f 686f   mount_option_ho
│ │ │ +001db960: 6d65 5f6e 6f73 7569 640a 2020 2d20 6e6f  me_nosuid.  - no
│ │ │ +001db970: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +001db980: 2d20 6e61 6d65 3a20 2741 6464 206e 6f73  - name: 'Add nos
│ │ │ +001db990: 7569 6420 4f70 7469 6f6e 2074 6f20 2f68  uid Option to /h
│ │ │ +001db9a0: 6f6d 653a 2049 6620 2f68 6f6d 6520 6e6f  ome: If /home no
│ │ │ +001db9b0: 7420 6d6f 756e 7465 642c 2063 7261 6674  t mounted, craft
│ │ │ +001db9c0: 206d 6f75 6e74 5f69 6e66 6f20 6d61 6e75   mount_info manu
│ │ │ +001db9d0: 616c 6c79 270a 2020 7365 745f 6661 6374  ally'.  set_fact
│ │ │ +001db9e0: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ +001db9f0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001dba00: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d  |default({})|com
│ │ │ +001dba10: 6269 6e65 287b 6974 656d 2e30 3a20 6974  bine({item.0: it
│ │ │ +001dba20: 656d 2e31 7d29 207d 7d27 0a20 2077 6974  em.1}) }}'.  wit
│ │ │ +001dba30: 685f 746f 6765 7468 6572 3a0a 2020 2d20  h_together:.  - 
│ │ │ +001dba40: 2d20 7461 7267 6574 0a20 2020 202d 2073  - target.    - s
│ │ │ +001dba50: 6f75 7263 650a 2020 2020 2d20 6673 7479  ource.    - fsty
│ │ │ +001dba60: 7065 0a20 2020 202d 206f 7074 696f 6e73  pe.    - options
│ │ │ +001dba70: 0a20 202d 202d 202f 686f 6d65 0a20 2020  .  - - /home.   
│ │ │ +001dba80: 202d 2027 270a 2020 2020 2d20 2727 0a20   - ''.    - ''. 
│ │ │ +001dba90: 2020 202d 2064 6566 6175 6c74 730a 2020     - defaults.  
│ │ │ +001dbaa0: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ +001dbab0: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ +001dbac0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001dbad0: 6167 6573 2061 6e64 2022 7270 6d2d 6f73  ages and "rpm-os
│ │ │ +001dbae0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001dbaf0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001dbb00: 2020 2020 616e 6420 2262 6f6f 7463 2220      and "bootc" 
│ │ │ +001dbb10: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001dbb20: 2e70 6163 6b61 6765 7320 616e 6420 6e6f  .packages and no
│ │ │ +001dbb30: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ +001dbb40: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ +001dbb50: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001dbb60: 2020 2020 616e 6420 226f 7374 7265 6522      and "ostree"
│ │ │ +001dbb70: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ +001dbb80: 5f63 6d64 6c69 6e65 2029 2061 6e64 206e  _cmdline ) and n
│ │ │ +001dbb90: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ +001dbba0: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ +001dbbb0: 2069 6e0a 2020 2020 5b22 646f 636b 6572   in.    ["docker
│ │ │ +001dbbc0: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ +001dbbd0: 7a22 2c20 2270 6f64 6d61 6e22 2c20 2263  z", "podman", "c
│ │ │ +001dbbe0: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ +001dbbf0: 202d 2027 222f 686f 6d65 2220 696e 2061   - '"/home" in a
│ │ │ +001dbc00: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ +001dbc10: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ +001dbc20: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ +001dbc30: 202d 2028 222d 2d66 7374 6162 2220 7c20   - ("--fstab" | 
│ │ │ +001dbc40: 6c65 6e67 7468 203d 3d20 3029 0a20 202d  length == 0).  -
│ │ │ +001dbc50: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +001dbc60: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ +001dbc70: 6e64 2064 6576 6963 655f 6e61 6d65 2e73  nd device_name.s
│ │ │ +001dbc80: 7464 6f75 745f 6c69 6e65 7320 6973 2064  tdout_lines is d
│ │ │ +001dbc90: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ +001dbca0: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ +001dbcb0: 206c 656e 6774 6820 3d3d 2030 290a 2020   length == 0).  
│ │ │ +001dbcc0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +001dbcd0: 3030 2d35 332d 4143 2d36 0a20 202d 204e  00-53-AC-6.  - N
│ │ │ +001dbce0: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ +001dbcf0: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ +001dbd00: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ +001dbd10: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001dbd20: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001dbd30: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ +001dbd40: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ +001dbd50: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +001dbd60: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +001dbd70: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +001dbd80: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +001dbd90: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001dbda0: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ +001dbdb0: 6f6e 5f68 6f6d 655f 6e6f 7375 6964 0a20  on_home_nosuid. 
│ │ │ +001dbdc0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +001dbdd0: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ +001dbde0: 6420 6e6f 7375 6964 204f 7074 696f 6e20  d nosuid Option 
│ │ │ +001dbdf0: 746f 202f 686f 6d65 3a20 4d61 6b65 2073  to /home: Make s
│ │ │ +001dbe00: 7572 6520 6e6f 7375 6964 206f 7074 696f  ure nosuid optio
│ │ │ +001dbe10: 6e20 6973 2070 6172 7420 6f66 2074 6865  n is part of the
│ │ │ +001dbe20: 2074 6f20 2f68 6f6d 650a 2020 2020 6f70   to /home.    op
│ │ │ +001dbe30: 7469 6f6e 7327 0a20 2073 6574 5f66 6163  tions'.  set_fac
│ │ │ +001dbe40: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66  t:.    mount_inf
│ │ │ +001dbe50: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66  o: '{{ mount_inf
│ │ │ +001dbe60: 6f20 7c20 636f 6d62 696e 6528 207b 2727  o | combine( {''
│ │ │ +001dbe70: 6f70 7469 6f6e 7327 273a 2727 2727 7e28  options'':''''~(
│ │ │ +001dbe80: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ +001dbe90: 6e73 207c 0a20 2020 2020 2064 6566 6175  ns |.      defau
│ │ │ +001dbea0: 6c74 2827 2727 2729 297e 2827 272c 2727  lt(''''))~('',''
│ │ │ +001dbeb0: 2069 6620 286d 6f75 6e74 5f69 6e66 6f2e   if (mount_info.
│ │ │ +001dbec0: 6f70 7469 6f6e 7320 7c20 6465 6661 756c  options | defaul
│ │ │ +001dbed0: 7428 2727 2727 2929 2065 6c73 6520 2727  t('''')) else ''
│ │ │ +001dbee0: 2727 297e 2727 6e6f 7375 6964 2727 0a20  '')~''nosuid''. 
│ │ │ +001dbef0: 2020 2020 207d 2920 7d7d 270a 2020 7768       }) }}'.  wh
│ │ │ +001dbf00: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ +001dbf10: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +001dbf20: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001dbf30: 6573 2061 6e64 2022 7270 6d2d 6f73 7472  es and "rpm-ostr
│ │ │ +001dbf40: 6565 2220 696e 2061 6e73 6962 6c65 5f66  ee" in ansible_f
│ │ │ +001dbf50: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001dbf60: 2020 616e 6420 2262 6f6f 7463 2220 696e    and "bootc" in
│ │ │ +001dbf70: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001dbf80: 6163 6b61 6765 7320 616e 6420 6e6f 7420  ackages and not 
│ │ │ +001dbf90: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +001dbfa0: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +001dbfb0: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001dbfc0: 2020 616e 6420 226f 7374 7265 6522 2069    and "ostree" i
│ │ │ +001dbfd0: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ +001dbfe0: 6d64 6c69 6e65 2029 2061 6e64 206e 6f74  mdline ) and not
│ │ │ +001dbff0: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +001dc000: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +001dc010: 6e0a 2020 2020 5b22 646f 636b 6572 222c  n.    ["docker",
│ │ │ +001dc020: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ +001dc030: 2c20 2270 6f64 6d61 6e22 2c20 2263 6f6e  , "podman", "con
│ │ │ +001dc040: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ +001dc050: 2027 222f 686f 6d65 2220 696e 2061 6e73   '"/home" in ans
│ │ │ +001dc060: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ +001dc070: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ +001dc080: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ +001dc090: 206d 6f75 6e74 5f69 6e66 6f20 6973 2064   mount_info is d
│ │ │ +001dc0a0: 6566 696e 6564 2061 6e64 2022 6e6f 7375  efined and "nosu
│ │ │ +001dc0b0: 6964 2220 6e6f 7420 696e 2028 6d6f 756e  id" not in (moun
│ │ │ +001dc0c0: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ +001dc0d0: 2064 6566 6175 6c74 2827 2729 290a 2020   default('')).  
│ │ │ +001dc0e0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +001dc0f0: 3030 2d35 332d 4143 2d36 0a20 202d 204e  00-53-AC-6.  - N
│ │ │ +001dc100: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ +001dc110: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ +001dc120: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ +001dc130: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001dc140: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001dc150: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ +001dc160: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ +001dc170: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +001dc180: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +001dc190: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +001dc1a0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +001dc1b0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001dc1c0: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ +001dc1d0: 6f6e 5f68 6f6d 655f 6e6f 7375 6964 0a20  on_home_nosuid. 
│ │ │ +001dc1e0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +001dc1f0: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ +001dc200: 6420 6e6f 7375 6964 204f 7074 696f 6e20  d nosuid Option 
│ │ │ +001dc210: 746f 202f 686f 6d65 3a20 456e 7375 7265  to /home: Ensure
│ │ │ +001dc220: 202f 686f 6d65 2069 7320 6d6f 756e 7465   /home is mounte
│ │ │ +001dc230: 6420 7769 7468 206e 6f73 7569 6420 6f70  d with nosuid op
│ │ │ +001dc240: 7469 6f6e 270a 2020 616e 7369 626c 652e  tion'.  ansible.
│ │ │ +001dc250: 706f 7369 782e 6d6f 756e 743a 0a20 2020  posix.mount:.   
│ │ │ +001dc260: 2070 6174 683a 202f 686f 6d65 0a20 2020   path: /home.   
│ │ │ +001dc270: 2073 7263 3a20 277b 7b20 6d6f 756e 745f   src: '{{ mount_
│ │ │ +001dc280: 696e 666f 2e73 6f75 7263 6520 7c20 6465  info.source | de
│ │ │ +001dc290: 6661 756c 7428 2727 2727 2920 7d7d 270a  fault('''') }}'.
│ │ │ +001dc2a0: 2020 2020 6f70 7473 3a20 277b 7b20 6d6f      opts: '{{ mo
│ │ │ +001dc2b0: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ +001dc2c0: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ +001dc2d0: 207d 7d27 0a20 2020 2073 7461 7465 3a20   }}'.    state: 
│ │ │ +001dc2e0: 6d6f 756e 7465 640a 2020 2020 6673 7479  mounted.    fsty
│ │ │ +001dc2f0: 7065 3a20 277b 7b20 6d6f 756e 745f 696e  pe: '{{ mount_in
│ │ │ +001dc300: 666f 2e66 7374 7970 6520 7c20 6465 6661  fo.fstype | defa
│ │ │ +001dc310: 756c 7428 2727 2727 2920 7d7d 270a 2020  ult('''') }}'.  
│ │ │ +001dc320: 7265 6769 7374 6572 3a20 6d6f 756e 745f  register: mount_
│ │ │ +001dc330: 7265 7375 6c74 0a20 2066 6169 6c65 645f  result.  failed_
│ │ │ +001dc340: 7768 656e 3a0a 2020 2d20 6d6f 756e 745f  when:.  - mount_
│ │ │ +001dc350: 7265 7375 6c74 2069 7320 6661 696c 6564  result is failed
│ │ │ +001dc360: 0a20 202d 2027 2727 7461 7267 6574 2069  .  - '''target i
│ │ │ +001dc370: 7320 6275 7379 2727 206e 6f74 2069 6e20  s busy'' not in 
│ │ │ +001dc380: 286d 6f75 6e74 5f72 6573 756c 742e 6d73  (mount_result.ms
│ │ │ +001dc390: 6720 7c20 6465 6661 756c 7428 2727 2727  g | default(''''
│ │ │ +001dc3a0: 2929 270a 2020 2d20 2727 2761 6c72 6561  ))'.  - '''alrea
│ │ │ +001dc3b0: 6479 206d 6f75 6e74 6564 2727 206e 6f74  dy mounted'' not
│ │ │ +001dc3c0: 2069 6e20 286d 6f75 6e74 5f72 6573 756c   in (mount_resul
│ │ │ +001dc3d0: 742e 6d73 6720 7c20 6465 6661 756c 7428  t.msg | default(
│ │ │ +001dc3e0: 2727 2727 2929 270a 2020 7768 656e 3a0a  ''''))'.  when:.
│ │ │ +001dc3f0: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ +001dc400: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +001dc410: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001dc420: 6e64 2022 7270 6d2d 6f73 7472 6565 2220  nd "rpm-ostree" 
│ │ │ +001dc430: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001dc440: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001dc450: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ +001dc460: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001dc470: 6765 7320 616e 6420 6e6f 7420 226f 7065  ges and not "ope
│ │ │ +001dc480: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ +001dc490: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001dc4a0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001dc4b0: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ +001dc4c0: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ +001dc4d0: 6e65 2029 2061 6e64 206e 6f74 2028 2061  ne ) and not ( a
│ │ │ +001dc4e0: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ +001dc4f0: 6174 696f 6e5f 7479 7065 2069 6e0a 2020  ation_type in.  
│ │ │ +001dc500: 2020 5b22 646f 636b 6572 222c 2022 6c78    ["docker", "lx
│ │ │ +001dc510: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ +001dc520: 6f64 6d61 6e22 2c20 2263 6f6e 7461 696e  odman", "contain
│ │ │ +001dc530: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ +001dc540: 686f 6d65 2220 696e 2061 6e73 6962 6c65  home" in ansible
│ │ │ +001dc550: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ +001dc560: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ +001dc570: 207c 206c 6973 7427 0a20 202d 206d 6f75   | list'.  - mou
│ │ │ +001dc580: 6e74 5f69 6e66 6f20 6973 2064 6566 696e  nt_info is defin
│ │ │ +001dc590: 6564 0a20 202d 2028 6465 7669 6365 5f6e  ed.  - (device_n
│ │ │ +001dc5a0: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ +001dc5b0: 6669 6e65 6420 616e 6420 2864 6576 6963  fined and (devic
│ │ │ +001dc5c0: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ +001dc5d0: 6c65 6e67 7468 2026 6774 3b20 3029 2920  length > 0)) 
│ │ │ +001dc5e0: 6f72 2028 222d 2d66 7374 6162 220a 2020  or ("--fstab".  
│ │ │ +001dc5f0: 2020 7c20 6c65 6e67 7468 203d 3d20 3029    | length == 0)
│ │ │ +001dc600: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +001dc610: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ +001dc620: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001dc630: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ +001dc640: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ +001dc650: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001dc660: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ +001dc670: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ +001dc680: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ +001dc690: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ +001dc6a0: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +001dc6b0: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +001dc6c0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +001dc6d0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +001dc6e0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ +001dc6f0: 7074 696f 6e5f 686f 6d65 5f6e 6f73 7569  ption_home_nosui
│ │ │ +001dc700: 640a 2020 2d20 6e6f 5f72 6562 6f6f 745f  d.  - no_reboot_
│ │ │ +001dc710: 6e65 6564 6564 0a3c 2f63 6f64 653e 3c2f  needed.
Remediati │ │ │ +001dc7d0: 6f6e 2053 6865 6c6c 2073 6372 6970 7420 on Shell script │ │ │ +001dc7e0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Reboot:false< │ │ │ +001dc880: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
# Remedia
│ │ │ +001dc8a0: 7469 6f6e 2069 7320 6170 706c 6963 6162  tion is applicab
│ │ │ +001dc8b0: 6c65 206f 6e6c 7920 696e 2063 6572 7461  le only in certa
│ │ │ +001dc8c0: 696e 2070 6c61 7466 6f72 6d73 0a69 6620  in platforms.if 
│ │ │ +001dc8d0: 2820 2120 2820 7b20 7270 6d20 2d2d 7175  ( ! ( { rpm --qu
│ │ │ +001dc8e0: 6965 7420 2d71 206b 6572 6e65 6c20 3b7d  iet -q kernel ;}
│ │ │ +001dc8f0: 2026 616d 703b 2661 6d70 3b20 7b20 7270   && { rp
│ │ │ +001dc900: 6d20 2d2d 7175 6965 7420 2d71 2072 706d  m --quiet -q rpm
│ │ │ +001dc910: 2d6f 7374 7265 6520 3b7d 2026 616d 703b  -ostree ;} &
│ │ │ +001dc920: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ +001dc930: 6965 7420 2d71 2062 6f6f 7463 203b 7d20  iet -q bootc ;} 
│ │ │ +001dc940: 2661 6d70 3b26 616d 703b 207b 2021 2072  && { ! r
│ │ │ +001dc950: 706d 202d 2d71 7569 6574 202d 7120 6f70  pm --quiet -q op
│ │ │ +001dc960: 656e 7368 6966 742d 6b75 6265 6c65 7420  enshift-kubelet 
│ │ │ +001dc970: 3b7d 2026 616d 703b 2661 6d70 3b20 285b  ;} && ([
│ │ │ +001dc980: 202d 6620 2f72 756e 2f6f 7374 7265 652d   -f /run/ostree-
│ │ │ +001dc990: 626f 6f74 6564 205d 207c 7c20 5b20 2d4c  booted ] || [ -L
│ │ │ +001dc9a0: 202f 6f73 7472 6565 205d 2920 2920 2661   /ostree ]) ) &a
│ │ │ +001dc9b0: 6d70 3b26 616d 703b 2021 2028 205b 202d  mp;& ! ( [ -
│ │ │ +001dc9c0: 6620 2f2e 646f 636b 6572 656e 7620 5d20  f /.dockerenv ] 
│ │ │ +001dc9d0: 7c7c 205b 202d 6620 2f72 756e 2f2e 636f  || [ -f /run/.co
│ │ │ +001dc9e0: 6e74 6169 6e65 7265 6e76 205d 2029 2029  ntainerenv ] ) )
│ │ │ +001dc9f0: 2026 616d 703b 2661 6d70 3b20 7b20 2820   && { ( 
│ │ │ +001dca00: 6669 6e64 6d6e 7420 2d2d 6b65 726e 656c  findmnt --kernel
│ │ │ +001dca10: 2022 2f68 6f6d 6522 2026 6774 3b20 2f64   "/home" > /d
│ │ │ +001dca20: 6576 2f6e 756c 6c20 7c7c 2066 696e 646d  ev/null || findm
│ │ │ +001dca30: 6e74 202d 2d66 7374 6162 2022 2f68 6f6d  nt --fstab "/hom
│ │ │ +001dca40: 6522 2026 6774 3b20 2f64 6576 2f6e 756c  e" > /dev/nul
│ │ │ +001dca50: 6c20 293b 207d 3b20 7468 656e 0a0a 6675  l ); }; then..fu
│ │ │ +001dca60: 6e63 7469 6f6e 2070 6572 666f 726d 5f72  nction perform_r
│ │ │ +001dca70: 656d 6564 6961 7469 6f6e 207b 0a0a 2020  emediation {..  
│ │ │ +001dca80: 2020 0a20 2020 2020 2020 2023 2074 6865    .        # the
│ │ │ +001dca90: 206d 6f75 6e74 2070 6f69 6e74 202f 686f   mount point /ho
│ │ │ +001dcaa0: 6d65 2068 6173 2074 6f20 6265 2064 6566  me has to be def
│ │ │ +001dcab0: 696e 6564 2069 6e20 2f65 7463 2f66 7374  ined in /etc/fst
│ │ │ +001dcac0: 6162 0a20 2020 2020 2020 2023 2062 6566  ab.        # bef
│ │ │ +001dcad0: 6f72 6520 7468 6973 2072 656d 6564 6961  ore this remedia
│ │ │ +001dcae0: 7469 6f6e 2063 616e 2062 6520 6578 6563  tion can be exec
│ │ │ +001dcaf0: 7574 6564 2e20 496e 2063 6173 6520 6974  uted. In case it
│ │ │ +001dcb00: 2069 7320 6e6f 7420 6465 6669 6e65 642c   is not defined,
│ │ │ +001dcb10: 2074 6865 0a20 2020 2020 2020 2023 2072   the.        # r
│ │ │ +001dcb20: 656d 6564 6961 7469 6f6e 2061 626f 7274  emediation abort
│ │ │ +001dcb30: 7320 616e 6420 6e6f 2063 6861 6e67 6573  s and no changes
│ │ │ +001dcb40: 2072 6567 6172 6469 6e67 2074 6865 206d   regarding the m
│ │ │ +001dcb50: 6f75 6e74 2070 6f69 6e74 2061 7265 2064  ount point are d
│ │ │ +001dcb60: 6f6e 652e 0a20 2020 2020 2020 206d 6f75  one..        mou
│ │ │ +001dcb70: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +001dcb80: 6567 6578 703d 2224 2870 7269 6e74 6620  egexp="$(printf 
│ │ │ +001dcb90: 225e 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e  "^[[:space:]]*[^
│ │ │ +001dcba0: 235d 2e2a 5b5b 3a73 7061 6365 3a5d 5d25  #].*[[:space:]]%
│ │ │ +001dcbb0: 735b 5b3a 7370 6163 653a 5d5d 2220 222f  s[[:space:]]" "/
│ │ │ +001dcbc0: 686f 6d65 2229 220a 0a20 2020 2067 7265  home")"..    gre
│ │ │ +001dcbd0: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ +001dcbe0: 6d61 7463 685f 7265 6765 7870 2220 2d71  match_regexp" -q
│ │ │ +001dcbf0: 202f 6574 632f 6673 7461 6220 5c0a 2020   /etc/fstab \.  
│ │ │ +001dcc00: 2020 2020 2020 7c7c 207b 2065 6368 6f20        || { echo 
│ │ │ +001dcc10: 2254 6865 206d 6f75 6e74 2070 6f69 6e74  "The mount point
│ │ │ +001dcc20: 2027 2f68 6f6d 6527 2069 7320 6e6f 7420   '/home' is not 
│ │ │ +001dcc30: 6576 656e 2069 6e20 2f65 7463 2f66 7374  even in /etc/fst
│ │ │ +001dcc40: 6162 2c20 736f 2077 6520 6361 6e27 7420  ab, so we can't 
│ │ │ +001dcc50: 7365 7420 7570 206d 6f75 6e74 206f 7074  set up mount opt
│ │ │ +001dcc60: 696f 6e73 2220 2667 743b 2661 6d70 3b32  ions" >&2
│ │ │ +001dcc70: 3b0a 2020 2020 2020 2020 2020 2020 2020  ;.              
│ │ │ +001dcc80: 2020 6563 686f 2022 4e6f 7420 7265 6d65    echo "Not reme
│ │ │ +001dcc90: 6469 6174 696e 672c 2062 6563 6175 7365  diating, because
│ │ │ +001dcca0: 2074 6865 7265 2069 7320 6e6f 2072 6563   there is no rec
│ │ │ +001dccb0: 6f72 6420 6f66 202f 686f 6d65 2069 6e20  ord of /home in 
│ │ │ +001dccc0: 2f65 7463 2f66 7374 6162 2220 2667 743b  /etc/fstab" >
│ │ │ +001dccd0: 2661 6d70 3b32 3b20 7265 7475 726e 2031  &2; return 1
│ │ │ +001dcce0: 3b20 7d0a 2020 2020 0a0a 0a20 2020 206d  ; }.    ...    m
│ │ │ +001dccf0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001dcd00: 5f72 6567 6578 703d 2224 2870 7269 6e74  _regexp="$(print
│ │ │ +001dcd10: 6620 225e 5b5b 3a73 7061 6365 3a5d 5d2a  f "^[[:space:]]*
│ │ │ +001dcd20: 5b5e 235d 2e2a 5b5b 3a73 7061 6365 3a5d  [^#].*[[:space:]
│ │ │ +001dcd30: 5d25 735b 5b3a 7370 6163 653a 5d5d 2220  ]%s[[:space:]]" 
│ │ │ +001dcd40: 2f68 6f6d 6529 220a 0a20 2020 2023 2049  /home)"..    # I
│ │ │ +001dcd50: 6620 7468 6520 6d6f 756e 7420 706f 696e  f the mount poin
│ │ │ +001dcd60: 7420 6973 206e 6f74 2069 6e20 2f65 7463  t is not in /etc
│ │ │ +001dcd70: 2f66 7374 6162 2c20 6765 7420 7072 6576  /fstab, get prev
│ │ │ +001dcd80: 696f 7573 206d 6f75 6e74 206f 7074 696f  ious mount optio
│ │ │ +001dcd90: 6e73 2066 726f 6d20 2f65 7463 2f6d 7461  ns from /etc/mta
│ │ │ +001dcda0: 620a 2020 2020 6966 2021 2067 7265 7020  b.    if ! grep 
│ │ │ +001dcdb0: 2d71 2022 246d 6f75 6e74 5f70 6f69 6e74  -q "$mount_point
│ │ │ +001dcdc0: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ +001dcdd0: 6574 632f 6673 7461 623b 2074 6865 6e0a  etc/fstab; then.
│ │ │ +001dcde0: 2020 2020 2020 2020 2320 7275 6e74 696d          # runtim
│ │ │ +001dcdf0: 6520 6f70 7473 2077 6974 686f 7574 2073  e opts without s
│ │ │ +001dce00: 6f6d 6520 6175 746f 6d61 7469 6320 6b65  ome automatic ke
│ │ │ +001dce10: 726e 656c 2f75 7365 7273 7061 6365 2d61  rnel/userspace-a
│ │ │ +001dce20: 6464 6564 2064 6566 6175 6c74 730a 2020  dded defaults.  
│ │ │ +001dce30: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ +001dce40: 6f75 6e74 5f6f 7074 733d 2428 6772 6570  ount_opts=$(grep
│ │ │ +001dce50: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ +001dce60: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ +001dce70: 632f 6d74 6162 207c 2068 6561 6420 2d31  c/mtab | head -1
│ │ │ +001dce80: 207c 2020 6177 6b20 277b 7072 696e 7420   |  awk '{print 
│ │ │ +001dce90: 2434 7d27 205c 0a20 2020 2020 2020 2020  $4}' \.         
│ │ │ +001dcea0: 2020 2020 2020 2020 2020 207c 2073 6564             | sed
│ │ │ +001dceb0: 202d 4520 2273 2f28 7277 7c64 6566 6175   -E "s/(rw|defau
│ │ │ +001dcec0: 6c74 737c 7365 636c 6162 656c 7c6e 6f73  lts|seclabel|nos
│ │ │ +001dced0: 7569 6429 282c 7c24 292f 2f67 3b73 2f2c  uid)(,|$)//g;s/,
│ │ │ +001dcee0: 242f 2f22 290a 2020 2020 2020 2020 5b20  $//").        [ 
│ │ │ +001dcef0: 2224 7072 6576 696f 7573 5f6d 6f75 6e74  "$previous_mount
│ │ │ +001dcf00: 5f6f 7074 7322 205d 2026 616d 703b 2661  _opts" ] &&a
│ │ │ +001dcf10: 6d70 3b20 7072 6576 696f 7573 5f6d 6f75  mp; previous_mou
│ │ │ +001dcf20: 6e74 5f6f 7074 732b 3d22 2c22 0a20 2020  nt_opts+=",".   
│ │ │ +001dcf30: 2020 2020 2023 2049 6e20 6973 6f39 3636       # In iso966
│ │ │ +001dcf40: 3020 6669 6c65 7379 7374 656d 7320 6d74  0 filesystems mt
│ │ │ +001dcf50: 6162 2063 6f75 6c64 2064 6573 6372 6962  ab could describ
│ │ │ +001dcf60: 6520 6120 2262 6c6f 636b 7369 7a65 2220  e a "blocksize" 
│ │ │ +001dcf70: 7661 6c75 652c 2074 6869 7320 7368 6f75  value, this shou
│ │ │ +001dcf80: 6c64 2062 6520 7265 666c 6563 7465 6420  ld be reflected 
│ │ │ +001dcf90: 696e 0a20 2020 2020 2020 2023 2066 7374  in.        # fst
│ │ │ +001dcfa0: 6162 2061 7320 2262 6c6f 636b 222e 2020  ab as "block".  
│ │ │ +001dcfb0: 5468 6520 6e65 7874 2076 6172 6961 626c  The next variabl
│ │ │ +001dcfc0: 6520 6973 2074 6f20 7361 7469 7366 7920  e is to satisfy 
│ │ │ +001dcfd0: 7368 656c 6c63 6865 636b 2053 4332 3035  shellcheck SC205
│ │ │ +001dcfe0: 302e 0a20 2020 2020 2020 2066 735f 7479  0..        fs_ty
│ │ │ +001dcff0: 7065 3d22 220a 2020 2020 2020 2020 6966  pe="".        if
│ │ │ +001dd000: 205b 2020 2224 6673 5f74 7970 6522 203d   [  "$fs_type" =
│ │ │ +001dd010: 3d20 2269 736f 3936 3630 2220 5d20 3b20  = "iso9660" ] ; 
│ │ │ +001dd020: 7468 656e 0a20 2020 2020 2020 2020 2020  then.           
│ │ │ +001dd030: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ +001dd040: 6f70 7473 3d24 2873 6564 2027 732f 626c  opts=$(sed 's/bl
│ │ │ +001dd050: 6f63 6b73 697a 653d 2f62 6c6f 636b 3d2f  ocksize=/block=/
│ │ │ +001dd060: 2720 266c 743b 266c 743b 266c 743b 2022  ' <<< "
│ │ │ +001dd070: 2470 7265 7669 6f75 735f 6d6f 756e 745f  $previous_mount_
│ │ │ +001dd080: 6f70 7473 2229 0a20 2020 2020 2020 2066  opts").        f
│ │ │ +001dd090: 690a 2020 2020 2020 2020 6563 686f 2022  i.        echo "
│ │ │ +001dd0a0: 202f 686f 6d65 2020 6465 6661 756c 7473   /home  defaults
│ │ │ +001dd0b0: 2c24 7b70 7265 7669 6f75 735f 6d6f 756e  ,${previous_moun
│ │ │ +001dd0c0: 745f 6f70 7473 7d6e 6f73 7569 6420 3020  t_opts}nosuid 0 
│ │ │ +001dd0d0: 3022 2026 6774 3b26 6774 3b20 2f65 7463  0" >> /etc
│ │ │ +001dd0e0: 2f66 7374 6162 0a20 2020 2023 2049 6620  /fstab.    # If 
│ │ │ +001dd0f0: 7468 6520 6d6f 756e 745f 6f70 7420 6f70  the mount_opt op
│ │ │ +001dd100: 7469 6f6e 2069 7320 6e6f 7420 616c 7265  tion is not alre
│ │ │ +001dd110: 6164 7920 696e 2074 6865 206d 6f75 6e74  ady in the mount
│ │ │ +001dd120: 2070 6f69 6e74 2773 202f 6574 632f 6673   point's /etc/fs
│ │ │ +001dd130: 7461 6220 656e 7472 792c 2061 6464 2069  tab entry, add i
│ │ │ +001dd140: 740a 2020 2020 656c 6966 2021 2067 7265  t.    elif ! gre
│ │ │ +001dd150: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ +001dd160: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ +001dd170: 7463 2f66 7374 6162 207c 2067 7265 7020  tc/fstab | grep 
│ │ │ +001dd180: 2d71 2022 6e6f 7375 6964 223b 2074 6865  -q "nosuid"; the
│ │ │ +001dd190: 6e0a 2020 2020 2020 2020 7072 6576 696f  n.        previo
│ │ │ +001dd1a0: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ +001dd1b0: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ +001dd1c0: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ +001dd1d0: 202f 6574 632f 6673 7461 6220 7c20 6177   /etc/fstab | aw
│ │ │ +001dd1e0: 6b20 277b 7072 696e 7420 2434 7d27 290a  k '{print $4}').
│ │ │ +001dd1f0: 2020 2020 2020 2020 7365 6420 2d69 2022          sed -i "
│ │ │ +001dd200: 737c 5c28 247b 6d6f 756e 745f 706f 696e  s|\(${mount_poin
│ │ │ +001dd210: 745f 6d61 7463 685f 7265 6765 7870 7d2e  t_match_regexp}.
│ │ │ +001dd220: 2a24 7b70 7265 7669 6f75 735f 6d6f 756e  *${previous_moun
│ │ │ +001dd230: 745f 6f70 7473 7d5c 297c 5c31 2c6e 6f73  t_opts}\)|\1,nos
│ │ │ +001dd240: 7569 647c 2220 2f65 7463 2f66 7374 6162  uid|" /etc/fstab
│ │ │ +001dd250: 0a20 2020 2066 690a 0a0a 2020 2020 6966  .    fi...    if
│ │ │ +001dd260: 206d 6b64 6972 202d 7020 222f 686f 6d65   mkdir -p "/home
│ │ │ +001dd270: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ +001dd280: 6966 206d 6f75 6e74 706f 696e 7420 2d71  if mountpoint -q
│ │ │ +001dd290: 2022 2f68 6f6d 6522 3b20 7468 656e 0a20   "/home"; then. 
│ │ │ +001dd2a0: 2020 2020 2020 2020 2020 206d 6f75 6e74             mount
│ │ │ +001dd2b0: 202d 6f20 7265 6d6f 756e 7420 2d2d 7461   -o remount --ta
│ │ │ +001dd2c0: 7267 6574 2022 2f68 6f6d 6522 0a20 2020  rget "/home".   
│ │ │ +001dd2d0: 2020 2020 2066 690a 2020 2020 6669 0a7d       fi.    fi.}
│ │ │ +001dd2e0: 0a0a 7065 7266 6f72 6d5f 7265 6d65 6469  ..perform_remedi
│ │ │ +001dd2f0: 6174 696f 6e0a 0a65 6c73 650a 2020 2020  ation..else.    
│ │ │ +001dd300: 2667 743b 2661 6d70 3b32 2065 6368 6f20  >&2 echo 
│ │ │ +001dd310: 2752 656d 6564 6961 7469 6f6e 2069 7320  'Remediation is 
│ │ │ +001dd320: 6e6f 7420 6170 706c 6963 6162 6c65 2c20  not applicable, 
│ │ │ +001dd330: 6e6f 7468 696e 6720 7761 7320 646f 6e65  nothing was done
│ │ │ +001dd340: 270a 6669 0a3c 2f63 6f64 653e 3c2f 7072  '.fi.
Remediation │ │ │ +001dd400: 2041 6e61 636f 6e64 6120 736e 6970 7065 Anaconda snippe │ │ │ +001dd410: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +001dd490: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +001dd4a0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +001dd4c0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +001dd4d0: 3c74 643e 6869 6768 3c2f 7464 3e3c 2f74 highReboot │ │ │ +001dd4f0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +001dd500: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +001dd520: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ +001dd540: 3c63 6f64 653e 0a70 6172 7420 2f68 6f6d  .part /hom
│ │ │ +001dd550: 6520 2d2d 6d6f 756e 746f 7074 696f 6e73  e --mountoptions
│ │ │ +001dd560: 3d22 6e6f 7375 6964 220a 3c2f 636f 6465  ="nosuid".
Reme │ │ │ -001e16a0: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ -001e16b0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -001e16c0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -001e1760: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr> │ │ │ -001e17b0: 3c74 723e 3c74 683e 5374 7261 7465 6779
.pa
│ │ │ -001e17f0: 7274 202f 6f70 7420 2d2d 6d6f 756e 746f  rt /opt --mounto
│ │ │ -001e1800: 7074 696f 6e73 3d22 6e6f 7375 6964 220a  ptions="nosuid".
│ │ │ -001e1810: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -001e18c0: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -001e18d0: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -001e18e0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
Co │ │ │ -001e1740: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -001e1770: 6e3a 3c2f 7468 3e3c 7464 3e68 6967 683c n:high< │ │ │ -001e1780: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -001e17c0: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -001e17d0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ -001e19b0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -001e19c0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f │ │ │ -001e1a00: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:low
Disrup │ │ │ -001e1990: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6869 tion:hi │ │ │ -001e19a0: 6768 3c2f 7464 3e3c 2f74 723e 3c74 723e gh
Reboot:false
Strat │ │ │ -001e19e0: 6567 793a 3c2f 7468 3e3c 7464 3e63 6f6e egy:con │ │ │ -001e19f0: 6669 6775 7265 3c2f 7464 3e3c 2f74 723e figure
- name: Gathe
│ │ │ -001e1a20: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ -001e1a30: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ -001e1a40: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ -001e1a50: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ -001e1a60: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -001e1a70: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -001e1a80: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -001e1a90: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -001e1aa0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -001e1ab0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ -001e1ac0: 6e5f 6f70 745f 6e6f 7375 6964 0a20 202d  n_opt_nosuid.  -
│ │ │ -001e1ad0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -001e1ae0: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ -001e1af0: 6e6f 7375 6964 204f 7074 696f 6e20 746f  nosuid Option to
│ │ │ -001e1b00: 202f 6f70 743a 2043 6865 636b 2069 6e66   /opt: Check inf
│ │ │ -001e1b10: 6f72 6d61 7469 6f6e 2061 7373 6f63 6961  ormation associa
│ │ │ -001e1b20: 7465 6420 746f 206d 6f75 6e74 706f 696e  ted to mountpoin
│ │ │ -001e1b30: 7427 0a20 2061 6e73 6962 6c65 2e62 7569  t'.  ansible.bui
│ │ │ -001e1b40: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 6669  ltin.command: fi
│ │ │ -001e1b50: 6e64 6d6e 7420 2d2d 6673 7461 6220 272f  ndmnt --fstab '/
│ │ │ -001e1b60: 6f70 7427 0a20 2072 6567 6973 7465 723a  opt'.  register:
│ │ │ -001e1b70: 2064 6576 6963 655f 6e61 6d65 0a20 2066   device_name.  f
│ │ │ -001e1b80: 6169 6c65 645f 7768 656e 3a20 6465 7669  ailed_when: devi
│ │ │ -001e1b90: 6365 5f6e 616d 652e 7263 2026 6774 3b20  ce_name.rc > 
│ │ │ -001e1ba0: 310a 2020 6368 616e 6765 645f 7768 656e  1.  changed_when
│ │ │ -001e1bb0: 3a20 6661 6c73 650a 2020 6368 6563 6b5f  : false.  check_
│ │ │ -001e1bc0: 6d6f 6465 3a20 6661 6c73 650a 2020 7768  mode: false.  wh
│ │ │ -001e1bd0: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ -001e1be0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -001e1bf0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001e1c00: 6573 2061 6e64 2022 7270 6d2d 6f73 7472  es and "rpm-ostr
│ │ │ -001e1c10: 6565 2220 696e 2061 6e73 6962 6c65 5f66  ee" in ansible_f
│ │ │ -001e1c20: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -001e1c30: 2020 616e 6420 2262 6f6f 7463 2220 696e    and "bootc" in
│ │ │ -001e1c40: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001e1c50: 6163 6b61 6765 7320 616e 6420 6e6f 7420  ackages and not 
│ │ │ -001e1c60: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ -001e1c70: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ -001e1c80: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -001e1c90: 2020 616e 6420 226f 7374 7265 6522 2069    and "ostree" i
│ │ │ -001e1ca0: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ -001e1cb0: 6d64 6c69 6e65 2029 2061 6e64 206e 6f74  mdline ) and not
│ │ │ -001e1cc0: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ -001e1cd0: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ -001e1ce0: 6e0a 2020 2020 5b22 646f 636b 6572 222c  n.    ["docker",
│ │ │ -001e1cf0: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ -001e1d00: 2c20 2270 6f64 6d61 6e22 2c20 2263 6f6e  , "podman", "con
│ │ │ -001e1d10: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ -001e1d20: 2027 222f 6f70 7422 2069 6e20 616e 7369   '"/opt" in ansi
│ │ │ -001e1d30: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ -001e1d40: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ -001e1d50: 7422 2920 7c20 6c69 7374 270a 2020 7461  t") | list'.  ta
│ │ │ -001e1d60: 6773 3a0a 2020 2d20 636f 6e66 6967 7572  gs:.  - configur
│ │ │ -001e1d70: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -001e1d80: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -001e1d90: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001e1da0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -001e1db0: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ -001e1dc0: 6f70 7469 6f6e 5f6f 7074 5f6e 6f73 7569  option_opt_nosui
│ │ │ -001e1dd0: 640a 2020 2d20 6e6f 5f72 6562 6f6f 745f  d.  - no_reboot_
│ │ │ -001e1de0: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ -001e1df0: 2741 6464 206e 6f73 7569 6420 4f70 7469  'Add nosuid Opti
│ │ │ -001e1e00: 6f6e 2074 6f20 2f6f 7074 3a20 4372 6561  on to /opt: Crea
│ │ │ -001e1e10: 7465 206d 6f75 6e74 5f69 6e66 6f20 6469  te mount_info di
│ │ │ -001e1e20: 6374 696f 6e61 7279 2076 6172 6961 626c  ctionary variabl
│ │ │ -001e1e30: 6527 0a20 2073 6574 5f66 6163 743a 0a20  e'.  set_fact:. 
│ │ │ -001e1e40: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ -001e1e50: 7b7b 206d 6f75 6e74 5f69 6e66 6f7c 6465  {{ mount_info|de
│ │ │ -001e1e60: 6661 756c 7428 7b7d 297c 636f 6d62 696e  fault({})|combin
│ │ │ -001e1e70: 6528 7b69 7465 6d2e 303a 2069 7465 6d2e  e({item.0: item.
│ │ │ -001e1e80: 317d 2920 7d7d 270a 2020 7769 7468 5f74  1}) }}'.  with_t
│ │ │ -001e1e90: 6f67 6574 6865 723a 0a20 202d 2027 7b7b  ogether:.  - '{{
│ │ │ -001e1ea0: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ -001e1eb0: 6f75 745f 6c69 6e65 735b 305d 2e73 706c  out_lines[0].spl
│ │ │ -001e1ec0: 6974 2829 207c 206d 6170 2827 276c 6f77  it() | map(''low
│ │ │ -001e1ed0: 6572 2727 2920 7c20 6c69 7374 207d 7d27  er'') | list }}'
│ │ │ -001e1ee0: 0a20 202d 2027 7b7b 2064 6576 6963 655f  .  - '{{ device_
│ │ │ -001e1ef0: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ -001e1f00: 735b 315d 2e73 706c 6974 2829 207c 206c  s[1].split() | l
│ │ │ -001e1f10: 6973 7420 7d7d 270a 2020 7768 656e 3a0a  ist }}'.  when:.
│ │ │ -001e1f20: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ -001e1f30: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -001e1f40: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001e1f50: 6e64 2022 7270 6d2d 6f73 7472 6565 2220  nd "rpm-ostree" 
│ │ │ -001e1f60: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001e1f70: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001e1f80: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ -001e1f90: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001e1fa0: 6765 7320 616e 6420 6e6f 7420 226f 7065  ges and not "ope
│ │ │ -001e1fb0: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ -001e1fc0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001e1fd0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001e1fe0: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ -001e1ff0: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ -001e2000: 6e65 2029 2061 6e64 206e 6f74 2028 2061  ne ) and not ( a
│ │ │ -001e2010: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ -001e2020: 6174 696f 6e5f 7479 7065 2069 6e0a 2020  ation_type in.  
│ │ │ -001e2030: 2020 5b22 646f 636b 6572 222c 2022 6c78    ["docker", "lx
│ │ │ -001e2040: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ -001e2050: 6f64 6d61 6e22 2c20 2263 6f6e 7461 696e  odman", "contain
│ │ │ -001e2060: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ -001e2070: 6f70 7422 2069 6e20 616e 7369 626c 655f  opt" in ansible_
│ │ │ -001e2080: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ -001e2090: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ -001e20a0: 7c20 6c69 7374 270a 2020 2d20 6465 7669  | list'.  - devi
│ │ │ -001e20b0: 6365 5f6e 616d 652e 7374 646f 7574 2069  ce_name.stdout i
│ │ │ -001e20c0: 7320 6465 6669 6e65 6420 616e 6420 6465  s defined and de
│ │ │ -001e20d0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001e20e0: 5f6c 696e 6573 2069 7320 6465 6669 6e65  _lines is define
│ │ │ -001e20f0: 640a 2020 2d20 2864 6576 6963 655f 6e61  d.  - (device_na
│ │ │ -001e2100: 6d65 2e73 7464 6f75 7420 7c20 6c65 6e67  me.stdout | leng
│ │ │ -001e2110: 7468 2026 6774 3b20 3029 0a20 2074 6167  th > 0).  tag
│ │ │ -001e2120: 733a 0a20 202d 2063 6f6e 6669 6775 7265  s:.  - configure
│ │ │ -001e2130: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ -001e2140: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ -001e2150: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001e2160: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -001e2170: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ -001e2180: 7074 696f 6e5f 6f70 745f 6e6f 7375 6964  ption_opt_nosuid
│ │ │ -001e2190: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -001e21a0: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ -001e21b0: 4164 6420 6e6f 7375 6964 204f 7074 696f  Add nosuid Optio
│ │ │ -001e21c0: 6e20 746f 202f 6f70 743a 2049 6620 2f6f  n to /opt: If /o
│ │ │ -001e21d0: 7074 206e 6f74 206d 6f75 6e74 6564 2c20  pt not mounted, 
│ │ │ -001e21e0: 6372 6166 7420 6d6f 756e 745f 696e 666f  craft mount_info
│ │ │ -001e21f0: 206d 616e 7561 6c6c 7927 0a20 2073 6574   manually'.  set
│ │ │ -001e2200: 5f66 6163 743a 0a20 2020 206d 6f75 6e74  _fact:.    mount
│ │ │ -001e2210: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74  _info: '{{ mount
│ │ │ -001e2220: 5f69 6e66 6f7c 6465 6661 756c 7428 7b7d  _info|default({}
│ │ │ -001e2230: 297c 636f 6d62 696e 6528 7b69 7465 6d2e  )|combine({item.
│ │ │ -001e2240: 303a 2069 7465 6d2e 317d 2920 7d7d 270a  0: item.1}) }}'.
│ │ │ -001e2250: 2020 7769 7468 5f74 6f67 6574 6865 723a    with_together:
│ │ │ -001e2260: 0a20 202d 202d 2074 6172 6765 740a 2020  .  - - target.  
│ │ │ -001e2270: 2020 2d20 736f 7572 6365 0a20 2020 202d    - source.    -
│ │ │ -001e2280: 2066 7374 7970 650a 2020 2020 2d20 6f70   fstype.    - op
│ │ │ -001e2290: 7469 6f6e 730a 2020 2d20 2d20 2f6f 7074  tions.  - - /opt
│ │ │ -001e22a0: 0a20 2020 202d 2027 270a 2020 2020 2d20  .    - ''.    - 
│ │ │ -001e22b0: 2727 0a20 2020 202d 2064 6566 6175 6c74  ''.    - default
│ │ │ -001e22c0: 730a 2020 7768 656e 3a0a 2020 2d20 2820  s.  when:.  - ( 
│ │ │ -001e22d0: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ -001e22e0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001e22f0: 7061 636b 6167 6573 2061 6e64 2022 7270  packages and "rp
│ │ │ -001e2300: 6d2d 6f73 7472 6565 2220 696e 2061 6e73  m-ostree" in ans
│ │ │ -001e2310: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001e2320: 6765 730a 2020 2020 616e 6420 2262 6f6f  ges.    and "boo
│ │ │ -001e2330: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ -001e2340: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001e2350: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ -001e2360: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ -001e2370: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001e2380: 6765 730a 2020 2020 616e 6420 226f 7374  ges.    and "ost
│ │ │ -001e2390: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -001e23a0: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061  proc_cmdline ) a
│ │ │ -001e23b0: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ -001e23c0: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ -001e23d0: 7479 7065 2069 6e0a 2020 2020 5b22 646f  type in.    ["do
│ │ │ -001e23e0: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ -001e23f0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ -001e2400: 2c20 2263 6f6e 7461 696e 6572 225d 2029  , "container"] )
│ │ │ -001e2410: 2029 0a20 202d 2027 222f 6f70 7422 2069   ).  - '"/opt" i
│ │ │ -001e2420: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ -001e2430: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ -001e2440: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ -001e2450: 270a 2020 2d20 2822 2d2d 6673 7461 6222  '.  - ("--fstab"
│ │ │ -001e2460: 207c 206c 656e 6774 6820 3d3d 2030 290a   | length == 0).
│ │ │ -001e2470: 2020 2d20 6465 7669 6365 5f6e 616d 652e    - device_name.
│ │ │ -001e2480: 7374 646f 7574 2069 7320 6465 6669 6e65  stdout is define
│ │ │ -001e2490: 6420 616e 6420 6465 7669 6365 5f6e 616d  d and device_nam
│ │ │ -001e24a0: 652e 7374 646f 7574 5f6c 696e 6573 2069  e.stdout_lines i
│ │ │ -001e24b0: 7320 6465 6669 6e65 640a 2020 2d20 2864  s defined.  - (d
│ │ │ -001e24c0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001e24d0: 7420 7c20 6c65 6e67 7468 203d 3d20 3029  t | length == 0)
│ │ │ -001e24e0: 0a20 2074 6167 733a 0a20 202d 2063 6f6e  .  tags:.  - con
│ │ │ -001e24f0: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -001e2500: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -001e2510: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -001e2520: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -001e2530: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -001e2540: 6f75 6e74 5f6f 7074 696f 6e5f 6f70 745f  ount_option_opt_
│ │ │ -001e2550: 6e6f 7375 6964 0a20 202d 206e 6f5f 7265  nosuid.  - no_re
│ │ │ -001e2560: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -001e2570: 616d 653a 2027 4164 6420 6e6f 7375 6964  ame: 'Add nosuid
│ │ │ -001e2580: 204f 7074 696f 6e20 746f 202f 6f70 743a   Option to /opt:
│ │ │ -001e2590: 204d 616b 6520 7375 7265 206e 6f73 7569   Make sure nosui
│ │ │ -001e25a0: 6420 6f70 7469 6f6e 2069 7320 7061 7274  d option is part
│ │ │ -001e25b0: 206f 6620 7468 6520 746f 202f 6f70 740a   of the to /opt.
│ │ │ -001e25c0: 2020 2020 6f70 7469 6f6e 7327 0a20 2073      options'.  s
│ │ │ -001e25d0: 6574 5f66 6163 743a 0a20 2020 206d 6f75  et_fact:.    mou
│ │ │ -001e25e0: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75  nt_info: '{{ mou
│ │ │ -001e25f0: 6e74 5f69 6e66 6f20 7c20 636f 6d62 696e  nt_info | combin
│ │ │ -001e2600: 6528 207b 2727 6f70 7469 6f6e 7327 273a  e( {''options'':
│ │ │ -001e2610: 2727 2727 7e28 6d6f 756e 745f 696e 666f  ''''~(mount_info
│ │ │ -001e2620: 2e6f 7074 696f 6e73 207c 0a20 2020 2020  .options |.     
│ │ │ -001e2630: 2064 6566 6175 6c74 2827 2727 2729 297e   default(''''))~
│ │ │ -001e2640: 2827 272c 2727 2069 6620 286d 6f75 6e74  ('','' if (mount
│ │ │ -001e2650: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ -001e2660: 6465 6661 756c 7428 2727 2727 2929 2065  default('''')) e
│ │ │ -001e2670: 6c73 6520 2727 2727 297e 2727 6e6f 7375  lse '''')~''nosu
│ │ │ -001e2680: 6964 2727 0a20 2020 2020 207d 2920 7d7d  id''.      }) }}
│ │ │ -001e2690: 270a 2020 7768 656e 3a0a 2020 2d20 2820  '.  when:.  - ( 
│ │ │ -001e26a0: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ -001e26b0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001e26c0: 7061 636b 6167 6573 2061 6e64 2022 7270  packages and "rp
│ │ │ -001e26d0: 6d2d 6f73 7472 6565 2220 696e 2061 6e73  m-ostree" in ans
│ │ │ -001e26e0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001e26f0: 6765 730a 2020 2020 616e 6420 2262 6f6f  ges.    and "boo
│ │ │ -001e2700: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ -001e2710: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001e2720: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ -001e2730: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ -001e2740: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001e2750: 6765 730a 2020 2020 616e 6420 226f 7374  ges.    and "ost
│ │ │ -001e2760: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -001e2770: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061  proc_cmdline ) a
│ │ │ -001e2780: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ -001e2790: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ -001e27a0: 7479 7065 2069 6e0a 2020 2020 5b22 646f  type in.    ["do
│ │ │ -001e27b0: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ -001e27c0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ -001e27d0: 2c20 2263 6f6e 7461 696e 6572 225d 2029  , "container"] )
│ │ │ -001e27e0: 2029 0a20 202d 2027 222f 6f70 7422 2069   ).  - '"/opt" i
│ │ │ -001e27f0: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ -001e2800: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ -001e2810: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ -001e2820: 270a 2020 2d20 6d6f 756e 745f 696e 666f  '.  - mount_info
│ │ │ -001e2830: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ -001e2840: 226e 6f73 7569 6422 206e 6f74 2069 6e20  "nosuid" not in 
│ │ │ -001e2850: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469  (mount_info.opti
│ │ │ -001e2860: 6f6e 7320 7c20 6465 6661 756c 7428 2727  ons | default(''
│ │ │ -001e2870: 2929 0a20 2074 6167 733a 0a20 202d 2063  )).  tags:.  - c
│ │ │ -001e2880: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001e2890: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -001e28a0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -001e28b0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001e28c0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001e28d0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 6f70   mount_option_op
│ │ │ -001e28e0: 745f 6e6f 7375 6964 0a20 202d 206e 6f5f  t_nosuid.  - no_
│ │ │ -001e28f0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001e2900: 206e 616d 653a 2027 4164 6420 6e6f 7375   name: 'Add nosu
│ │ │ -001e2910: 6964 204f 7074 696f 6e20 746f 202f 6f70  id Option to /op
│ │ │ -001e2920: 743a 2045 6e73 7572 6520 2f6f 7074 2069  t: Ensure /opt i
│ │ │ -001e2930: 7320 6d6f 756e 7465 6420 7769 7468 206e  s mounted with n
│ │ │ -001e2940: 6f73 7569 6420 6f70 7469 6f6e 270a 2020  osuid option'.  
│ │ │ -001e2950: 616e 7369 626c 652e 706f 7369 782e 6d6f  ansible.posix.mo
│ │ │ -001e2960: 756e 743a 0a20 2020 2070 6174 683a 202f  unt:.    path: /
│ │ │ -001e2970: 6f70 740a 2020 2020 7372 633a 2027 7b7b  opt.    src: '{{
│ │ │ -001e2980: 206d 6f75 6e74 5f69 6e66 6f2e 736f 7572   mount_info.sour
│ │ │ -001e2990: 6365 207c 2064 6566 6175 6c74 2827 2727  ce | default('''
│ │ │ -001e29a0: 2729 207d 7d27 0a20 2020 206f 7074 733a  ') }}'.    opts:
│ │ │ -001e29b0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ -001e29c0: 6f70 7469 6f6e 7320 7c20 6465 6661 756c  options | defaul
│ │ │ -001e29d0: 7428 2727 2727 2920 7d7d 270a 2020 2020  t('''') }}'.    
│ │ │ -001e29e0: 7374 6174 653a 206d 6f75 6e74 6564 0a20  state: mounted. 
│ │ │ -001e29f0: 2020 2066 7374 7970 653a 2027 7b7b 206d     fstype: '{{ m
│ │ │ -001e2a00: 6f75 6e74 5f69 6e66 6f2e 6673 7479 7065  ount_info.fstype
│ │ │ -001e2a10: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ -001e2a20: 207d 7d27 0a20 2072 6567 6973 7465 723a   }}'.  register:
│ │ │ -001e2a30: 206d 6f75 6e74 5f72 6573 756c 740a 2020   mount_result.  
│ │ │ -001e2a40: 6661 696c 6564 5f77 6865 6e3a 0a20 202d  failed_when:.  -
│ │ │ -001e2a50: 206d 6f75 6e74 5f72 6573 756c 7420 6973   mount_result is
│ │ │ -001e2a60: 2066 6169 6c65 640a 2020 2d20 2727 2774   failed.  - '''t
│ │ │ -001e2a70: 6172 6765 7420 6973 2062 7573 7927 2720  arget is busy'' 
│ │ │ -001e2a80: 6e6f 7420 696e 2028 6d6f 756e 745f 7265  not in (mount_re
│ │ │ -001e2a90: 7375 6c74 2e6d 7367 207c 2064 6566 6175  sult.msg | defau
│ │ │ -001e2aa0: 6c74 2827 2727 2729 2927 0a20 202d 2027  lt(''''))'.  - '
│ │ │ -001e2ab0: 2727 616c 7265 6164 7920 6d6f 756e 7465  ''already mounte
│ │ │ -001e2ac0: 6427 2720 6e6f 7420 696e 2028 6d6f 756e  d'' not in (moun
│ │ │ -001e2ad0: 745f 7265 7375 6c74 2e6d 7367 207c 2064  t_result.msg | d
│ │ │ -001e2ae0: 6566 6175 6c74 2827 2727 2729 2927 0a20  efault(''''))'. 
│ │ │ -001e2af0: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ -001e2b00: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ -001e2b10: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001e2b20: 6b61 6765 7320 616e 6420 2272 706d 2d6f  kages and "rpm-o
│ │ │ -001e2b30: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001e2b40: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001e2b50: 0a20 2020 2061 6e64 2022 626f 6f74 6322  .    and "bootc"
│ │ │ -001e2b60: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001e2b70: 732e 7061 636b 6167 6573 2061 6e64 206e  s.packages and n
│ │ │ -001e2b80: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ -001e2b90: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ -001e2ba0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001e2bb0: 0a20 2020 2061 6e64 2022 6f73 7472 6565  .    and "ostree
│ │ │ -001e2bc0: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ -001e2bd0: 635f 636d 646c 696e 6520 2920 616e 6420  c_cmdline ) and 
│ │ │ -001e2be0: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ -001e2bf0: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ -001e2c00: 6520 696e 0a20 2020 205b 2264 6f63 6b65  e in.    ["docke
│ │ │ -001e2c10: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ -001e2c20: 767a 222c 2022 706f 646d 616e 222c 2022  vz", "podman", "
│ │ │ -001e2c30: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ -001e2c40: 2020 2d20 2722 2f6f 7074 2220 696e 2061    - '"/opt" in a
│ │ │ -001e2c50: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ -001e2c60: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ -001e2c70: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ -001e2c80: 202d 206d 6f75 6e74 5f69 6e66 6f20 6973   - mount_info is
│ │ │ -001e2c90: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ -001e2ca0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001e2cb0: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ -001e2cc0: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ -001e2cd0: 6f75 7420 7c20 6c65 6e67 7468 2026 6774  out | length >
│ │ │ -001e2ce0: 3b20 3029 2920 6f72 2028 222d 2d66 7374  ; 0)) or ("--fst
│ │ │ -001e2cf0: 6162 220a 2020 2020 7c20 6c65 6e67 7468  ab".    | length
│ │ │ -001e2d00: 203d 3d20 3029 0a20 2074 6167 733a 0a20   == 0).  tags:. 
│ │ │ -001e2d10: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -001e2d20: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -001e2d30: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -001e2d40: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -001e2d50: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -001e2d60: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ -001e2d70: 6e5f 6f70 745f 6e6f 7375 6964 0a20 202d  n_opt_nosuid.  -
│ │ │ -001e2d80: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -001e2d90: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ -001e2da0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Sh │ │ │ -001e2e50: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
< │ │ │ -001e2f00: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
# Remediation 
│ │ │ -001e2f20: 6973 2061 7070 6c69 6361 626c 6520 6f6e  is applicable on
│ │ │ -001e2f30: 6c79 2069 6e20 6365 7274 6169 6e20 706c  ly in certain pl
│ │ │ -001e2f40: 6174 666f 726d 730a 6966 2028 2021 2028  atforms.if ( ! (
│ │ │ -001e2f50: 207b 2072 706d 202d 2d71 7569 6574 202d   { rpm --quiet -
│ │ │ -001e2f60: 7120 6b65 726e 656c 203b 7d20 2661 6d70  q kernel ;} &
│ │ │ -001e2f70: 3b26 616d 703b 207b 2072 706d 202d 2d71  ;& { rpm --q
│ │ │ -001e2f80: 7569 6574 202d 7120 7270 6d2d 6f73 7472  uiet -q rpm-ostr
│ │ │ -001e2f90: 6565 203b 7d20 2661 6d70 3b26 616d 703b  ee ;} &&
│ │ │ -001e2fa0: 207b 2072 706d 202d 2d71 7569 6574 202d   { rpm --quiet -
│ │ │ -001e2fb0: 7120 626f 6f74 6320 3b7d 2026 616d 703b  q bootc ;} &
│ │ │ -001e2fc0: 2661 6d70 3b20 7b20 2120 7270 6d20 2d2d  & { ! rpm --
│ │ │ -001e2fd0: 7175 6965 7420 2d71 206f 7065 6e73 6869  quiet -q openshi
│ │ │ -001e2fe0: 6674 2d6b 7562 656c 6574 203b 7d20 2661  ft-kubelet ;} &a
│ │ │ -001e2ff0: 6d70 3b26 616d 703b 2028 5b20 2d66 202f  mp;& ([ -f /
│ │ │ -001e3000: 7275 6e2f 6f73 7472 6565 2d62 6f6f 7465  run/ostree-boote
│ │ │ -001e3010: 6420 5d20 7c7c 205b 202d 4c20 2f6f 7374  d ] || [ -L /ost
│ │ │ -001e3020: 7265 6520 5d29 2029 2026 616d 703b 2661  ree ]) ) &&a
│ │ │ -001e3030: 6d70 3b20 2120 2820 5b20 2d66 202f 2e64  mp; ! ( [ -f /.d
│ │ │ -001e3040: 6f63 6b65 7265 6e76 205d 207c 7c20 5b20  ockerenv ] || [ 
│ │ │ -001e3050: 2d66 202f 7275 6e2f 2e63 6f6e 7461 696e  -f /run/.contain
│ │ │ -001e3060: 6572 656e 7620 5d20 2920 2920 2661 6d70  erenv ] ) ) &
│ │ │ -001e3070: 3b26 616d 703b 207b 2028 2066 696e 646d  ;& { ( findm
│ │ │ -001e3080: 6e74 202d 2d6b 6572 6e65 6c20 222f 6f70  nt --kernel "/op
│ │ │ -001e3090: 7422 2026 6774 3b20 2f64 6576 2f6e 756c  t" > /dev/nul
│ │ │ -001e30a0: 6c20 7c7c 2066 696e 646d 6e74 202d 2d66  l || findmnt --f
│ │ │ -001e30b0: 7374 6162 2022 2f6f 7074 2220 2667 743b  stab "/opt" >
│ │ │ -001e30c0: 202f 6465 762f 6e75 6c6c 2029 3b20 7d3b   /dev/null ); };
│ │ │ -001e30d0: 2074 6865 6e0a 0a66 756e 6374 696f 6e20   then..function 
│ │ │ -001e30e0: 7065 7266 6f72 6d5f 7265 6d65 6469 6174  perform_remediat
│ │ │ -001e30f0: 696f 6e20 7b0a 0a20 2020 200a 2020 2020  ion {..    .    
│ │ │ -001e3100: 2020 2020 2320 7468 6520 6d6f 756e 7420      # the mount 
│ │ │ -001e3110: 706f 696e 7420 2f6f 7074 2068 6173 2074  point /opt has t
│ │ │ -001e3120: 6f20 6265 2064 6566 696e 6564 2069 6e20  o be defined in 
│ │ │ -001e3130: 2f65 7463 2f66 7374 6162 0a20 2020 2020  /etc/fstab.     
│ │ │ -001e3140: 2020 2023 2062 6566 6f72 6520 7468 6973     # before this
│ │ │ -001e3150: 2072 656d 6564 6961 7469 6f6e 2063 616e   remediation can
│ │ │ -001e3160: 2062 6520 6578 6563 7574 6564 2e20 496e   be executed. In
│ │ │ -001e3170: 2063 6173 6520 6974 2069 7320 6e6f 7420   case it is not 
│ │ │ -001e3180: 6465 6669 6e65 642c 2074 6865 0a20 2020  defined, the.   
│ │ │ -001e3190: 2020 2020 2023 2072 656d 6564 6961 7469       # remediati
│ │ │ -001e31a0: 6f6e 2061 626f 7274 7320 616e 6420 6e6f  on aborts and no
│ │ │ -001e31b0: 2063 6861 6e67 6573 2072 6567 6172 6469   changes regardi
│ │ │ -001e31c0: 6e67 2074 6865 206d 6f75 6e74 2070 6f69  ng the mount poi
│ │ │ -001e31d0: 6e74 2061 7265 2064 6f6e 652e 0a20 2020  nt are done..   
│ │ │ -001e31e0: 2020 2020 206d 6f75 6e74 5f70 6f69 6e74       mount_point
│ │ │ -001e31f0: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ -001e3200: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ -001e3210: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ -001e3220: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ -001e3230: 653a 5d5d 2220 222f 6f70 7422 2922 0a0a  e:]]" "/opt")"..
│ │ │ -001e3240: 2020 2020 6772 6570 2022 246d 6f75 6e74      grep "$mount
│ │ │ -001e3250: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001e3260: 6578 7022 202d 7120 2f65 7463 2f66 7374  exp" -q /etc/fst
│ │ │ -001e3270: 6162 205c 0a20 2020 2020 2020 207c 7c20  ab \.        || 
│ │ │ -001e3280: 7b20 6563 686f 2022 5468 6520 6d6f 756e  { echo "The moun
│ │ │ -001e3290: 7420 706f 696e 7420 272f 6f70 7427 2069  t point '/opt' i
│ │ │ -001e32a0: 7320 6e6f 7420 6576 656e 2069 6e20 2f65  s not even in /e
│ │ │ -001e32b0: 7463 2f66 7374 6162 2c20 736f 2077 6520  tc/fstab, so we 
│ │ │ -001e32c0: 6361 6e27 7420 7365 7420 7570 206d 6f75  can't set up mou
│ │ │ -001e32d0: 6e74 206f 7074 696f 6e73 2220 2667 743b  nt options" >
│ │ │ -001e32e0: 2661 6d70 3b32 3b0a 2020 2020 2020 2020  &2;.        
│ │ │ -001e32f0: 2020 2020 2020 2020 6563 686f 2022 4e6f          echo "No
│ │ │ -001e3300: 7420 7265 6d65 6469 6174 696e 672c 2062  t remediating, b
│ │ │ -001e3310: 6563 6175 7365 2074 6865 7265 2069 7320  ecause there is 
│ │ │ -001e3320: 6e6f 2072 6563 6f72 6420 6f66 202f 6f70  no record of /op
│ │ │ -001e3330: 7420 696e 202f 6574 632f 6673 7461 6222  t in /etc/fstab"
│ │ │ -001e3340: 2026 6774 3b26 616d 703b 323b 2072 6574   >&2; ret
│ │ │ -001e3350: 7572 6e20 313b 207d 0a20 2020 200a 0a0a  urn 1; }.    ...
│ │ │ -001e3360: 2020 2020 6d6f 756e 745f 706f 696e 745f      mount_point_
│ │ │ -001e3370: 6d61 7463 685f 7265 6765 7870 3d22 2428  match_regexp="$(
│ │ │ -001e3380: 7072 696e 7466 2022 5e5b 5b3a 7370 6163  printf "^[[:spac
│ │ │ -001e3390: 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370  e:]]*[^#].*[[:sp
│ │ │ -001e33a0: 6163 653a 5d5d 2573 5b5b 3a73 7061 6365  ace:]]%s[[:space
│ │ │ -001e33b0: 3a5d 5d22 202f 6f70 7429 220a 0a20 2020  :]]" /opt)"..   
│ │ │ -001e33c0: 2023 2049 6620 7468 6520 6d6f 756e 7420   # If the mount 
│ │ │ -001e33d0: 706f 696e 7420 6973 206e 6f74 2069 6e20  point is not in 
│ │ │ -001e33e0: 2f65 7463 2f66 7374 6162 2c20 6765 7420  /etc/fstab, get 
│ │ │ -001e33f0: 7072 6576 696f 7573 206d 6f75 6e74 206f  previous mount o
│ │ │ -001e3400: 7074 696f 6e73 2066 726f 6d20 2f65 7463  ptions from /etc
│ │ │ -001e3410: 2f6d 7461 620a 2020 2020 6966 2021 2067  /mtab.    if ! g
│ │ │ -001e3420: 7265 7020 2d71 2022 246d 6f75 6e74 5f70  rep -q "$mount_p
│ │ │ -001e3430: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001e3440: 7022 202f 6574 632f 6673 7461 623b 2074  p" /etc/fstab; t
│ │ │ -001e3450: 6865 6e0a 2020 2020 2020 2020 2320 7275  hen.        # ru
│ │ │ -001e3460: 6e74 696d 6520 6f70 7473 2077 6974 686f  ntime opts witho
│ │ │ -001e3470: 7574 2073 6f6d 6520 6175 746f 6d61 7469  ut some automati
│ │ │ -001e3480: 6320 6b65 726e 656c 2f75 7365 7273 7061  c kernel/userspa
│ │ │ -001e3490: 6365 2d61 6464 6564 2064 6566 6175 6c74  ce-added default
│ │ │ -001e34a0: 730a 2020 2020 2020 2020 7072 6576 696f  s.        previo
│ │ │ -001e34b0: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ -001e34c0: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ -001e34d0: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ -001e34e0: 202f 6574 632f 6d74 6162 207c 2068 6561   /etc/mtab | hea
│ │ │ -001e34f0: 6420 2d31 207c 2020 6177 6b20 277b 7072  d -1 |  awk '{pr
│ │ │ -001e3500: 696e 7420 2434 7d27 205c 0a20 2020 2020  int $4}' \.     
│ │ │ -001e3510: 2020 2020 2020 2020 2020 2020 2020 207c                 |
│ │ │ -001e3520: 2073 6564 202d 4520 2273 2f28 7277 7c64   sed -E "s/(rw|d
│ │ │ -001e3530: 6566 6175 6c74 737c 7365 636c 6162 656c  efaults|seclabel
│ │ │ -001e3540: 7c6e 6f73 7569 6429 282c 7c24 292f 2f67  |nosuid)(,|$)//g
│ │ │ -001e3550: 3b73 2f2c 242f 2f22 290a 2020 2020 2020  ;s/,$//").      
│ │ │ -001e3560: 2020 5b20 2224 7072 6576 696f 7573 5f6d    [ "$previous_m
│ │ │ -001e3570: 6f75 6e74 5f6f 7074 7322 205d 2026 616d  ount_opts" ] &am
│ │ │ -001e3580: 703b 2661 6d70 3b20 7072 6576 696f 7573  p;& previous
│ │ │ -001e3590: 5f6d 6f75 6e74 5f6f 7074 732b 3d22 2c22  _mount_opts+=","
│ │ │ -001e35a0: 0a20 2020 2020 2020 2023 2049 6e20 6973  .        # In is
│ │ │ -001e35b0: 6f39 3636 3020 6669 6c65 7379 7374 656d  o9660 filesystem
│ │ │ -001e35c0: 7320 6d74 6162 2063 6f75 6c64 2064 6573  s mtab could des
│ │ │ -001e35d0: 6372 6962 6520 6120 2262 6c6f 636b 7369  cribe a "blocksi
│ │ │ -001e35e0: 7a65 2220 7661 6c75 652c 2074 6869 7320  ze" value, this 
│ │ │ -001e35f0: 7368 6f75 6c64 2062 6520 7265 666c 6563  should be reflec
│ │ │ -001e3600: 7465 6420 696e 0a20 2020 2020 2020 2023  ted in.        #
│ │ │ -001e3610: 2066 7374 6162 2061 7320 2262 6c6f 636b   fstab as "block
│ │ │ -001e3620: 222e 2020 5468 6520 6e65 7874 2076 6172  ".  The next var
│ │ │ -001e3630: 6961 626c 6520 6973 2074 6f20 7361 7469  iable is to sati
│ │ │ -001e3640: 7366 7920 7368 656c 6c63 6865 636b 2053  sfy shellcheck S
│ │ │ -001e3650: 4332 3035 302e 0a20 2020 2020 2020 2066  C2050..        f
│ │ │ -001e3660: 735f 7479 7065 3d22 220a 2020 2020 2020  s_type="".      
│ │ │ -001e3670: 2020 6966 205b 2020 2224 6673 5f74 7970    if [  "$fs_typ
│ │ │ -001e3680: 6522 203d 3d20 2269 736f 3936 3630 2220  e" == "iso9660" 
│ │ │ -001e3690: 5d20 3b20 7468 656e 0a20 2020 2020 2020  ] ; then.       
│ │ │ -001e36a0: 2020 2020 2070 7265 7669 6f75 735f 6d6f       previous_mo
│ │ │ -001e36b0: 756e 745f 6f70 7473 3d24 2873 6564 2027  unt_opts=$(sed '
│ │ │ -001e36c0: 732f 626c 6f63 6b73 697a 653d 2f62 6c6f  s/blocksize=/blo
│ │ │ -001e36d0: 636b 3d2f 2720 266c 743b 266c 743b 266c  ck=/' <<&l
│ │ │ -001e36e0: 743b 2022 2470 7265 7669 6f75 735f 6d6f  t; "$previous_mo
│ │ │ -001e36f0: 756e 745f 6f70 7473 2229 0a20 2020 2020  unt_opts").     
│ │ │ -001e3700: 2020 2066 690a 2020 2020 2020 2020 6563     fi.        ec
│ │ │ -001e3710: 686f 2022 202f 6f70 7420 2064 6566 6175  ho " /opt  defau
│ │ │ -001e3720: 6c74 732c 247b 7072 6576 696f 7573 5f6d  lts,${previous_m
│ │ │ -001e3730: 6f75 6e74 5f6f 7074 737d 6e6f 7375 6964  ount_opts}nosuid
│ │ │ -001e3740: 2030 2030 2220 2667 743b 2667 743b 202f   0 0" >> /
│ │ │ -001e3750: 6574 632f 6673 7461 620a 2020 2020 2320  etc/fstab.    # 
│ │ │ -001e3760: 4966 2074 6865 206d 6f75 6e74 5f6f 7074  If the mount_opt
│ │ │ -001e3770: 206f 7074 696f 6e20 6973 206e 6f74 2061   option is not a
│ │ │ -001e3780: 6c72 6561 6479 2069 6e20 7468 6520 6d6f  lready in the mo
│ │ │ -001e3790: 756e 7420 706f 696e 7427 7320 2f65 7463  unt point's /etc
│ │ │ -001e37a0: 2f66 7374 6162 2065 6e74 7279 2c20 6164  /fstab entry, ad
│ │ │ -001e37b0: 6420 6974 0a20 2020 2065 6c69 6620 2120  d it.    elif ! 
│ │ │ -001e37c0: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ -001e37d0: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ -001e37e0: 202f 6574 632f 6673 7461 6220 7c20 6772   /etc/fstab | gr
│ │ │ -001e37f0: 6570 202d 7120 226e 6f73 7569 6422 3b20  ep -q "nosuid"; 
│ │ │ -001e3800: 7468 656e 0a20 2020 2020 2020 2070 7265  then.        pre
│ │ │ -001e3810: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ -001e3820: 3d24 2867 7265 7020 2224 6d6f 756e 745f  =$(grep "$mount_
│ │ │ -001e3830: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001e3840: 7870 2220 2f65 7463 2f66 7374 6162 207c  xp" /etc/fstab |
│ │ │ -001e3850: 2061 776b 2027 7b70 7269 6e74 2024 347d   awk '{print $4}
│ │ │ -001e3860: 2729 0a20 2020 2020 2020 2073 6564 202d  ').        sed -
│ │ │ -001e3870: 6920 2273 7c5c 2824 7b6d 6f75 6e74 5f70  i "s|\(${mount_p
│ │ │ -001e3880: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001e3890: 707d 2e2a 247b 7072 6576 696f 7573 5f6d  p}.*${previous_m
│ │ │ -001e38a0: 6f75 6e74 5f6f 7074 737d 5c29 7c5c 312c  ount_opts}\)|\1,
│ │ │ -001e38b0: 6e6f 7375 6964 7c22 202f 6574 632f 6673  nosuid|" /etc/fs
│ │ │ -001e38c0: 7461 620a 2020 2020 6669 0a0a 0a20 2020  tab.    fi...   
│ │ │ -001e38d0: 2069 6620 6d6b 6469 7220 2d70 2022 2f6f   if mkdir -p "/o
│ │ │ -001e38e0: 7074 223b 2074 6865 6e0a 2020 2020 2020  pt"; then.      
│ │ │ -001e38f0: 2020 6966 206d 6f75 6e74 706f 696e 7420    if mountpoint 
│ │ │ -001e3900: 2d71 2022 2f6f 7074 223b 2074 6865 6e0a  -q "/opt"; then.
│ │ │ -001e3910: 2020 2020 2020 2020 2020 2020 6d6f 756e              moun
│ │ │ -001e3920: 7420 2d6f 2072 656d 6f75 6e74 202d 2d74  t -o remount --t
│ │ │ -001e3930: 6172 6765 7420 222f 6f70 7422 0a20 2020  arget "/opt".   
│ │ │ -001e3940: 2020 2020 2066 690a 2020 2020 6669 0a7d       fi.    fi.}
│ │ │ -001e3950: 0a0a 7065 7266 6f72 6d5f 7265 6d65 6469  ..perform_remedi
│ │ │ -001e3960: 6174 696f 6e0a 0a65 6c73 650a 2020 2020  ation..else.    
│ │ │ -001e3970: 2667 743b 2661 6d70 3b32 2065 6368 6f20  >&2 echo 
│ │ │ -001e3980: 2752 656d 6564 6961 7469 6f6e 2069 7320  'Remediation is 
│ │ │ -001e3990: 6e6f 7420 6170 706c 6963 6162 6c65 2c20  not applicable, 
│ │ │ -001e39a0: 6e6f 7468 696e 6720 7761 7320 646f 6e65  nothing was done
│ │ │ -001e39b0: 270a 6669 0a3c 2f63 6f64 653e 3c2f 7072  '.fi.<
│ │ │ +001e16c0: 6272 3e3c 6469 7620 636c 6173 733d 2270  br>
│ │ │ -001e2ee0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -001e2ef0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
< │ │ │ +001e17b0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
-
│ │ │ +001e17f0: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +001e1800: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +001e1810: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ +001e1820: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ +001e1830: 746f 0a20 2074 6167 733a 0a20 202d 2063  to.  tags:.  - c
│ │ │ +001e1840: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +001e1850: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +001e1860: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +001e1870: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +001e1880: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001e1890: 206d 6f75 6e74 5f6f 7074 696f 6e5f 6f70   mount_option_op
│ │ │ +001e18a0: 745f 6e6f 7375 6964 0a20 202d 206e 6f5f  t_nosuid.  - no_
│ │ │ +001e18b0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +001e18c0: 206e 616d 653a 2027 4164 6420 6e6f 7375   name: 'Add nosu
│ │ │ +001e18d0: 6964 204f 7074 696f 6e20 746f 202f 6f70  id Option to /op
│ │ │ +001e18e0: 743a 2043 6865 636b 2069 6e66 6f72 6d61  t: Check informa
│ │ │ +001e18f0: 7469 6f6e 2061 7373 6f63 6961 7465 6420  tion associated 
│ │ │ +001e1900: 746f 206d 6f75 6e74 706f 696e 7427 0a20  to mountpoint'. 
│ │ │ +001e1910: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +001e1920: 2e63 6f6d 6d61 6e64 3a20 6669 6e64 6d6e  .command: findmn
│ │ │ +001e1930: 7420 2d2d 6673 7461 6220 272f 6f70 7427  t --fstab '/opt'
│ │ │ +001e1940: 0a20 2072 6567 6973 7465 723a 2064 6576  .  register: dev
│ │ │ +001e1950: 6963 655f 6e61 6d65 0a20 2066 6169 6c65  ice_name.  faile
│ │ │ +001e1960: 645f 7768 656e 3a20 6465 7669 6365 5f6e  d_when: device_n
│ │ │ +001e1970: 616d 652e 7263 2026 6774 3b20 310a 2020  ame.rc > 1.  
│ │ │ +001e1980: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ +001e1990: 6c73 650a 2020 6368 6563 6b5f 6d6f 6465  lse.  check_mode
│ │ │ +001e19a0: 3a20 6661 6c73 650a 2020 7768 656e 3a0a  : false.  when:.
│ │ │ +001e19b0: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ +001e19c0: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +001e19d0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001e19e0: 6e64 2022 7270 6d2d 6f73 7472 6565 2220  nd "rpm-ostree" 
│ │ │ +001e19f0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001e1a00: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001e1a10: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ +001e1a20: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001e1a30: 6765 7320 616e 6420 6e6f 7420 226f 7065  ges and not "ope
│ │ │ +001e1a40: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ +001e1a50: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001e1a60: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001e1a70: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ +001e1a80: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ +001e1a90: 6e65 2029 2061 6e64 206e 6f74 2028 2061  ne ) and not ( a
│ │ │ +001e1aa0: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ +001e1ab0: 6174 696f 6e5f 7479 7065 2069 6e0a 2020  ation_type in.  
│ │ │ +001e1ac0: 2020 5b22 646f 636b 6572 222c 2022 6c78    ["docker", "lx
│ │ │ +001e1ad0: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ +001e1ae0: 6f64 6d61 6e22 2c20 2263 6f6e 7461 696e  odman", "contain
│ │ │ +001e1af0: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ +001e1b00: 6f70 7422 2069 6e20 616e 7369 626c 655f  opt" in ansible_
│ │ │ +001e1b10: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ +001e1b20: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ +001e1b30: 7c20 6c69 7374 270a 2020 7461 6773 3a0a  | list'.  tags:.
│ │ │ +001e1b40: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +001e1b50: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +001e1b60: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +001e1b70: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +001e1b80: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001e1b90: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ +001e1ba0: 6f6e 5f6f 7074 5f6e 6f73 7569 640a 2020  on_opt_nosuid.  
│ │ │ +001e1bb0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001e1bc0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ +001e1bd0: 206e 6f73 7569 6420 4f70 7469 6f6e 2074   nosuid Option t
│ │ │ +001e1be0: 6f20 2f6f 7074 3a20 4372 6561 7465 206d  o /opt: Create m
│ │ │ +001e1bf0: 6f75 6e74 5f69 6e66 6f20 6469 6374 696f  ount_info dictio
│ │ │ +001e1c00: 6e61 7279 2076 6172 6961 626c 6527 0a20  nary variable'. 
│ │ │ +001e1c10: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ +001e1c20: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ +001e1c30: 6f75 6e74 5f69 6e66 6f7c 6465 6661 756c  ount_info|defaul
│ │ │ +001e1c40: 7428 7b7d 297c 636f 6d62 696e 6528 7b69  t({})|combine({i
│ │ │ +001e1c50: 7465 6d2e 303a 2069 7465 6d2e 317d 2920  tem.0: item.1}) 
│ │ │ +001e1c60: 7d7d 270a 2020 7769 7468 5f74 6f67 6574  }}'.  with_toget
│ │ │ +001e1c70: 6865 723a 0a20 202d 2027 7b7b 2064 6576  her:.  - '{{ dev
│ │ │ +001e1c80: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ +001e1c90: 6c69 6e65 735b 305d 2e73 706c 6974 2829  lines[0].split()
│ │ │ +001e1ca0: 207c 206d 6170 2827 276c 6f77 6572 2727   | map(''lower''
│ │ │ +001e1cb0: 2920 7c20 6c69 7374 207d 7d27 0a20 202d  ) | list }}'.  -
│ │ │ +001e1cc0: 2027 7b7b 2064 6576 6963 655f 6e61 6d65   '{{ device_name
│ │ │ +001e1cd0: 2e73 7464 6f75 745f 6c69 6e65 735b 315d  .stdout_lines[1]
│ │ │ +001e1ce0: 2e73 706c 6974 2829 207c 206c 6973 7420  .split() | list 
│ │ │ +001e1cf0: 7d7d 270a 2020 7768 656e 3a0a 2020 2d20  }}'.  when:.  - 
│ │ │ +001e1d00: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ +001e1d10: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001e1d20: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001e1d30: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ +001e1d40: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001e1d50: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ +001e1d60: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +001e1d70: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001e1d80: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ +001e1d90: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ +001e1da0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001e1db0: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ +001e1dc0: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001e1dd0: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ +001e1de0: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ +001e1df0: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ +001e1e00: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ +001e1e10: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +001e1e20: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +001e1e30: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ +001e1e40: 2029 2029 0a20 202d 2027 222f 6f70 7422   ) ).  - '"/opt"
│ │ │ +001e1e50: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ +001e1e60: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ +001e1e70: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ +001e1e80: 7374 270a 2020 2d20 6465 7669 6365 5f6e  st'.  - device_n
│ │ │ +001e1e90: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ +001e1ea0: 6669 6e65 6420 616e 6420 6465 7669 6365  fined and device
│ │ │ +001e1eb0: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ +001e1ec0: 6573 2069 7320 6465 6669 6e65 640a 2020  es is defined.  
│ │ │ +001e1ed0: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ +001e1ee0: 7464 6f75 7420 7c20 6c65 6e67 7468 2026  tdout | length &
│ │ │ +001e1ef0: 6774 3b20 3029 0a20 2074 6167 733a 0a20  gt; 0).  tags:. 
│ │ │ +001e1f00: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ +001e1f10: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ +001e1f20: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +001e1f30: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +001e1f40: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +001e1f50: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ +001e1f60: 6e5f 6f70 745f 6e6f 7375 6964 0a20 202d  n_opt_nosuid.  -
│ │ │ +001e1f70: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +001e1f80: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ +001e1f90: 6e6f 7375 6964 204f 7074 696f 6e20 746f  nosuid Option to
│ │ │ +001e1fa0: 202f 6f70 743a 2049 6620 2f6f 7074 206e   /opt: If /opt n
│ │ │ +001e1fb0: 6f74 206d 6f75 6e74 6564 2c20 6372 6166  ot mounted, craf
│ │ │ +001e1fc0: 7420 6d6f 756e 745f 696e 666f 206d 616e  t mount_info man
│ │ │ +001e1fd0: 7561 6c6c 7927 0a20 2073 6574 5f66 6163  ually'.  set_fac
│ │ │ +001e1fe0: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66  t:.    mount_inf
│ │ │ +001e1ff0: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66  o: '{{ mount_inf
│ │ │ +001e2000: 6f7c 6465 6661 756c 7428 7b7d 297c 636f  o|default({})|co
│ │ │ +001e2010: 6d62 696e 6528 7b69 7465 6d2e 303a 2069  mbine({item.0: i
│ │ │ +001e2020: 7465 6d2e 317d 2920 7d7d 270a 2020 7769  tem.1}) }}'.  wi
│ │ │ +001e2030: 7468 5f74 6f67 6574 6865 723a 0a20 202d  th_together:.  -
│ │ │ +001e2040: 202d 2074 6172 6765 740a 2020 2020 2d20   - target.    - 
│ │ │ +001e2050: 736f 7572 6365 0a20 2020 202d 2066 7374  source.    - fst
│ │ │ +001e2060: 7970 650a 2020 2020 2d20 6f70 7469 6f6e  ype.    - option
│ │ │ +001e2070: 730a 2020 2d20 2d20 2f6f 7074 0a20 2020  s.  - - /opt.   
│ │ │ +001e2080: 202d 2027 270a 2020 2020 2d20 2727 0a20   - ''.    - ''. 
│ │ │ +001e2090: 2020 202d 2064 6566 6175 6c74 730a 2020     - defaults.  
│ │ │ +001e20a0: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ +001e20b0: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ +001e20c0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001e20d0: 6167 6573 2061 6e64 2022 7270 6d2d 6f73  ages and "rpm-os
│ │ │ +001e20e0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001e20f0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001e2100: 2020 2020 616e 6420 2262 6f6f 7463 2220      and "bootc" 
│ │ │ +001e2110: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001e2120: 2e70 6163 6b61 6765 7320 616e 6420 6e6f  .packages and no
│ │ │ +001e2130: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ +001e2140: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ +001e2150: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001e2160: 2020 2020 616e 6420 226f 7374 7265 6522      and "ostree"
│ │ │ +001e2170: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ +001e2180: 5f63 6d64 6c69 6e65 2029 2061 6e64 206e  _cmdline ) and n
│ │ │ +001e2190: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ +001e21a0: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ +001e21b0: 2069 6e0a 2020 2020 5b22 646f 636b 6572   in.    ["docker
│ │ │ +001e21c0: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ +001e21d0: 7a22 2c20 2270 6f64 6d61 6e22 2c20 2263  z", "podman", "c
│ │ │ +001e21e0: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ +001e21f0: 202d 2027 222f 6f70 7422 2069 6e20 616e   - '"/opt" in an
│ │ │ +001e2200: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ +001e2210: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ +001e2220: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ +001e2230: 2d20 2822 2d2d 6673 7461 6222 207c 206c  - ("--fstab" | l
│ │ │ +001e2240: 656e 6774 6820 3d3d 2030 290a 2020 2d20  ength == 0).  - 
│ │ │ +001e2250: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001e2260: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ +001e2270: 6420 6465 7669 6365 5f6e 616d 652e 7374  d device_name.st
│ │ │ +001e2280: 646f 7574 5f6c 696e 6573 2069 7320 6465  dout_lines is de
│ │ │ +001e2290: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ +001e22a0: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ +001e22b0: 6c65 6e67 7468 203d 3d20 3029 0a20 2074  length == 0).  t
│ │ │ +001e22c0: 6167 733a 0a20 202d 2063 6f6e 6669 6775  ags:.  - configu
│ │ │ +001e22d0: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +001e22e0: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +001e22f0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +001e2300: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +001e2310: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +001e2320: 5f6f 7074 696f 6e5f 6f70 745f 6e6f 7375  _option_opt_nosu
│ │ │ +001e2330: 6964 0a20 202d 206e 6f5f 7265 626f 6f74  id.  - no_reboot
│ │ │ +001e2340: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ +001e2350: 2027 4164 6420 6e6f 7375 6964 204f 7074   'Add nosuid Opt
│ │ │ +001e2360: 696f 6e20 746f 202f 6f70 743a 204d 616b  ion to /opt: Mak
│ │ │ +001e2370: 6520 7375 7265 206e 6f73 7569 6420 6f70  e sure nosuid op
│ │ │ +001e2380: 7469 6f6e 2069 7320 7061 7274 206f 6620  tion is part of 
│ │ │ +001e2390: 7468 6520 746f 202f 6f70 740a 2020 2020  the to /opt.    
│ │ │ +001e23a0: 6f70 7469 6f6e 7327 0a20 2073 6574 5f66  options'.  set_f
│ │ │ +001e23b0: 6163 743a 0a20 2020 206d 6f75 6e74 5f69  act:.    mount_i
│ │ │ +001e23c0: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69  nfo: '{{ mount_i
│ │ │ +001e23d0: 6e66 6f20 7c20 636f 6d62 696e 6528 207b  nfo | combine( {
│ │ │ +001e23e0: 2727 6f70 7469 6f6e 7327 273a 2727 2727  ''options'':''''
│ │ │ +001e23f0: 7e28 6d6f 756e 745f 696e 666f 2e6f 7074  ~(mount_info.opt
│ │ │ +001e2400: 696f 6e73 207c 0a20 2020 2020 2064 6566  ions |.      def
│ │ │ +001e2410: 6175 6c74 2827 2727 2729 297e 2827 272c  ault(''''))~('',
│ │ │ +001e2420: 2727 2069 6620 286d 6f75 6e74 5f69 6e66  '' if (mount_inf
│ │ │ +001e2430: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ +001e2440: 756c 7428 2727 2727 2929 2065 6c73 6520  ult('''')) else 
│ │ │ +001e2450: 2727 2727 297e 2727 6e6f 7375 6964 2727  '''')~''nosuid''
│ │ │ +001e2460: 0a20 2020 2020 207d 2920 7d7d 270a 2020  .      }) }}'.  
│ │ │ +001e2470: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ +001e2480: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ +001e2490: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001e24a0: 6167 6573 2061 6e64 2022 7270 6d2d 6f73  ages and "rpm-os
│ │ │ +001e24b0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001e24c0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001e24d0: 2020 2020 616e 6420 2262 6f6f 7463 2220      and "bootc" 
│ │ │ +001e24e0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001e24f0: 2e70 6163 6b61 6765 7320 616e 6420 6e6f  .packages and no
│ │ │ +001e2500: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ +001e2510: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ +001e2520: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001e2530: 2020 2020 616e 6420 226f 7374 7265 6522      and "ostree"
│ │ │ +001e2540: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ +001e2550: 5f63 6d64 6c69 6e65 2029 2061 6e64 206e  _cmdline ) and n
│ │ │ +001e2560: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ +001e2570: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ +001e2580: 2069 6e0a 2020 2020 5b22 646f 636b 6572   in.    ["docker
│ │ │ +001e2590: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ +001e25a0: 7a22 2c20 2270 6f64 6d61 6e22 2c20 2263  z", "podman", "c
│ │ │ +001e25b0: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ +001e25c0: 202d 2027 222f 6f70 7422 2069 6e20 616e   - '"/opt" in an
│ │ │ +001e25d0: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ +001e25e0: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ +001e25f0: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ +001e2600: 2d20 6d6f 756e 745f 696e 666f 2069 7320  - mount_info is 
│ │ │ +001e2610: 6465 6669 6e65 6420 616e 6420 226e 6f73  defined and "nos
│ │ │ +001e2620: 7569 6422 206e 6f74 2069 6e20 286d 6f75  uid" not in (mou
│ │ │ +001e2630: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ +001e2640: 7c20 6465 6661 756c 7428 2727 2929 0a20  | default('')). 
│ │ │ +001e2650: 2074 6167 733a 0a20 202d 2063 6f6e 6669   tags:.  - confi
│ │ │ +001e2660: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001e2670: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001e2680: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001e2690: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001e26a0: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001e26b0: 6e74 5f6f 7074 696f 6e5f 6f70 745f 6e6f  nt_option_opt_no
│ │ │ +001e26c0: 7375 6964 0a20 202d 206e 6f5f 7265 626f  suid.  - no_rebo
│ │ │ +001e26d0: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +001e26e0: 653a 2027 4164 6420 6e6f 7375 6964 204f  e: 'Add nosuid O
│ │ │ +001e26f0: 7074 696f 6e20 746f 202f 6f70 743a 2045  ption to /opt: E
│ │ │ +001e2700: 6e73 7572 6520 2f6f 7074 2069 7320 6d6f  nsure /opt is mo
│ │ │ +001e2710: 756e 7465 6420 7769 7468 206e 6f73 7569  unted with nosui
│ │ │ +001e2720: 6420 6f70 7469 6f6e 270a 2020 616e 7369  d option'.  ansi
│ │ │ +001e2730: 626c 652e 706f 7369 782e 6d6f 756e 743a  ble.posix.mount:
│ │ │ +001e2740: 0a20 2020 2070 6174 683a 202f 6f70 740a  .    path: /opt.
│ │ │ +001e2750: 2020 2020 7372 633a 2027 7b7b 206d 6f75      src: '{{ mou
│ │ │ +001e2760: 6e74 5f69 6e66 6f2e 736f 7572 6365 207c  nt_info.source |
│ │ │ +001e2770: 2064 6566 6175 6c74 2827 2727 2729 207d   default('''') }
│ │ │ +001e2780: 7d27 0a20 2020 206f 7074 733a 2027 7b7b  }'.    opts: '{{
│ │ │ +001e2790: 206d 6f75 6e74 5f69 6e66 6f2e 6f70 7469   mount_info.opti
│ │ │ +001e27a0: 6f6e 7320 7c20 6465 6661 756c 7428 2727  ons | default(''
│ │ │ +001e27b0: 2727 2920 7d7d 270a 2020 2020 7374 6174  '') }}'.    stat
│ │ │ +001e27c0: 653a 206d 6f75 6e74 6564 0a20 2020 2066  e: mounted.    f
│ │ │ +001e27d0: 7374 7970 653a 2027 7b7b 206d 6f75 6e74  stype: '{{ mount
│ │ │ +001e27e0: 5f69 6e66 6f2e 6673 7479 7065 207c 2064  _info.fstype | d
│ │ │ +001e27f0: 6566 6175 6c74 2827 2727 2729 207d 7d27  efault('''') }}'
│ │ │ +001e2800: 0a20 2072 6567 6973 7465 723a 206d 6f75  .  register: mou
│ │ │ +001e2810: 6e74 5f72 6573 756c 740a 2020 6661 696c  nt_result.  fail
│ │ │ +001e2820: 6564 5f77 6865 6e3a 0a20 202d 206d 6f75  ed_when:.  - mou
│ │ │ +001e2830: 6e74 5f72 6573 756c 7420 6973 2066 6169  nt_result is fai
│ │ │ +001e2840: 6c65 640a 2020 2d20 2727 2774 6172 6765  led.  - '''targe
│ │ │ +001e2850: 7420 6973 2062 7573 7927 2720 6e6f 7420  t is busy'' not 
│ │ │ +001e2860: 696e 2028 6d6f 756e 745f 7265 7375 6c74  in (mount_result
│ │ │ +001e2870: 2e6d 7367 207c 2064 6566 6175 6c74 2827  .msg | default('
│ │ │ +001e2880: 2727 2729 2927 0a20 202d 2027 2727 616c  '''))'.  - '''al
│ │ │ +001e2890: 7265 6164 7920 6d6f 756e 7465 6427 2720  ready mounted'' 
│ │ │ +001e28a0: 6e6f 7420 696e 2028 6d6f 756e 745f 7265  not in (mount_re
│ │ │ +001e28b0: 7375 6c74 2e6d 7367 207c 2064 6566 6175  sult.msg | defau
│ │ │ +001e28c0: 6c74 2827 2727 2729 2927 0a20 2077 6865  lt(''''))'.  whe
│ │ │ +001e28d0: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +001e28e0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001e28f0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001e2900: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ +001e2910: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ +001e2920: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001e2930: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ +001e2940: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001e2950: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ +001e2960: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +001e2970: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ +001e2980: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001e2990: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ +001e29a0: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ +001e29b0: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ +001e29c0: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ +001e29d0: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ +001e29e0: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ +001e29f0: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ +001e2a00: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ +001e2a10: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ +001e2a20: 2722 2f6f 7074 2220 696e 2061 6e73 6962  '"/opt" in ansib
│ │ │ +001e2a30: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ +001e2a40: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ +001e2a50: 2229 207c 206c 6973 7427 0a20 202d 206d  ") | list'.  - m
│ │ │ +001e2a60: 6f75 6e74 5f69 6e66 6f20 6973 2064 6566  ount_info is def
│ │ │ +001e2a70: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ +001e2a80: 5f6e 616d 652e 7374 646f 7574 2069 7320  _name.stdout is 
│ │ │ +001e2a90: 6465 6669 6e65 6420 616e 6420 2864 6576  defined and (dev
│ │ │ +001e2aa0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ +001e2ab0: 7c20 6c65 6e67 7468 2026 6774 3b20 3029  | length > 0)
│ │ │ +001e2ac0: 2920 6f72 2028 222d 2d66 7374 6162 220a  ) or ("--fstab".
│ │ │ +001e2ad0: 2020 2020 7c20 6c65 6e67 7468 203d 3d20      | length == 
│ │ │ +001e2ae0: 3029 0a20 2074 6167 733a 0a20 202d 2063  0).  tags:.  - c
│ │ │ +001e2af0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +001e2b00: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +001e2b10: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +001e2b20: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +001e2b30: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001e2b40: 206d 6f75 6e74 5f6f 7074 696f 6e5f 6f70   mount_option_op
│ │ │ +001e2b50: 745f 6e6f 7375 6964 0a20 202d 206e 6f5f  t_nosuid.  - no_
│ │ │ +001e2b60: 7265 626f 6f74 5f6e 6565 6465 640a 3c2f  reboot_needed.
Re │ │ │ +001e2c20: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ +001e2c30: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
Com │ │ │ +001e1740: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +001e1770: 3a3c 2f74 683e 3c74 643e 6869 6768 3c2f :high
│ │ │ +001e1790: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +001e17a0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +001e17c0: 3c2f 7468 3e3c 7464 3e63 6f6e 6669 6775 configu │ │ │ +001e17d0: 7265 3c2f 7464 3e3c 2f74 723e 3c2f 7461 re
# 
│ │ │ +001e2cf0: 5265 6d65 6469 6174 696f 6e20 6973 2061  Remediation is a
│ │ │ +001e2d00: 7070 6c69 6361 626c 6520 6f6e 6c79 2069  pplicable only i
│ │ │ +001e2d10: 6e20 6365 7274 6169 6e20 706c 6174 666f  n certain platfo
│ │ │ +001e2d20: 726d 730a 6966 2028 2021 2028 207b 2072  rms.if ( ! ( { r
│ │ │ +001e2d30: 706d 202d 2d71 7569 6574 202d 7120 6b65  pm --quiet -q ke
│ │ │ +001e2d40: 726e 656c 203b 7d20 2661 6d70 3b26 616d  rnel ;} &&am
│ │ │ +001e2d50: 703b 207b 2072 706d 202d 2d71 7569 6574  p; { rpm --quiet
│ │ │ +001e2d60: 202d 7120 7270 6d2d 6f73 7472 6565 203b   -q rpm-ostree ;
│ │ │ +001e2d70: 7d20 2661 6d70 3b26 616d 703b 207b 2072  } && { r
│ │ │ +001e2d80: 706d 202d 2d71 7569 6574 202d 7120 626f  pm --quiet -q bo
│ │ │ +001e2d90: 6f74 6320 3b7d 2026 616d 703b 2661 6d70  otc ;} &&
│ │ │ +001e2da0: 3b20 7b20 2120 7270 6d20 2d2d 7175 6965  ; { ! rpm --quie
│ │ │ +001e2db0: 7420 2d71 206f 7065 6e73 6869 6674 2d6b  t -q openshift-k
│ │ │ +001e2dc0: 7562 656c 6574 203b 7d20 2661 6d70 3b26  ubelet ;} &&
│ │ │ +001e2dd0: 616d 703b 2028 5b20 2d66 202f 7275 6e2f  amp; ([ -f /run/
│ │ │ +001e2de0: 6f73 7472 6565 2d62 6f6f 7465 6420 5d20  ostree-booted ] 
│ │ │ +001e2df0: 7c7c 205b 202d 4c20 2f6f 7374 7265 6520  || [ -L /ostree 
│ │ │ +001e2e00: 5d29 2029 2026 616d 703b 2661 6d70 3b20  ]) ) && 
│ │ │ +001e2e10: 2120 2820 5b20 2d66 202f 2e64 6f63 6b65  ! ( [ -f /.docke
│ │ │ +001e2e20: 7265 6e76 205d 207c 7c20 5b20 2d66 202f  renv ] || [ -f /
│ │ │ +001e2e30: 7275 6e2f 2e63 6f6e 7461 696e 6572 656e  run/.containeren
│ │ │ +001e2e40: 7620 5d20 2920 2920 2661 6d70 3b26 616d  v ] ) ) &&am
│ │ │ +001e2e50: 703b 207b 2028 2066 696e 646d 6e74 202d  p; { ( findmnt -
│ │ │ +001e2e60: 2d6b 6572 6e65 6c20 222f 6f70 7422 2026  -kernel "/opt" &
│ │ │ +001e2e70: 6774 3b20 2f64 6576 2f6e 756c 6c20 7c7c  gt; /dev/null ||
│ │ │ +001e2e80: 2066 696e 646d 6e74 202d 2d66 7374 6162   findmnt --fstab
│ │ │ +001e2e90: 2022 2f6f 7074 2220 2667 743b 202f 6465   "/opt" > /de
│ │ │ +001e2ea0: 762f 6e75 6c6c 2029 3b20 7d3b 2074 6865  v/null ); }; the
│ │ │ +001e2eb0: 6e0a 0a66 756e 6374 696f 6e20 7065 7266  n..function perf
│ │ │ +001e2ec0: 6f72 6d5f 7265 6d65 6469 6174 696f 6e20  orm_remediation 
│ │ │ +001e2ed0: 7b0a 0a20 2020 200a 2020 2020 2020 2020  {..    .        
│ │ │ +001e2ee0: 2320 7468 6520 6d6f 756e 7420 706f 696e  # the mount poin
│ │ │ +001e2ef0: 7420 2f6f 7074 2068 6173 2074 6f20 6265  t /opt has to be
│ │ │ +001e2f00: 2064 6566 696e 6564 2069 6e20 2f65 7463   defined in /etc
│ │ │ +001e2f10: 2f66 7374 6162 0a20 2020 2020 2020 2023  /fstab.        #
│ │ │ +001e2f20: 2062 6566 6f72 6520 7468 6973 2072 656d   before this rem
│ │ │ +001e2f30: 6564 6961 7469 6f6e 2063 616e 2062 6520  ediation can be 
│ │ │ +001e2f40: 6578 6563 7574 6564 2e20 496e 2063 6173  executed. In cas
│ │ │ +001e2f50: 6520 6974 2069 7320 6e6f 7420 6465 6669  e it is not defi
│ │ │ +001e2f60: 6e65 642c 2074 6865 0a20 2020 2020 2020  ned, the.       
│ │ │ +001e2f70: 2023 2072 656d 6564 6961 7469 6f6e 2061   # remediation a
│ │ │ +001e2f80: 626f 7274 7320 616e 6420 6e6f 2063 6861  borts and no cha
│ │ │ +001e2f90: 6e67 6573 2072 6567 6172 6469 6e67 2074  nges regarding t
│ │ │ +001e2fa0: 6865 206d 6f75 6e74 2070 6f69 6e74 2061  he mount point a
│ │ │ +001e2fb0: 7265 2064 6f6e 652e 0a20 2020 2020 2020  re done..       
│ │ │ +001e2fc0: 206d 6f75 6e74 5f70 6f69 6e74 5f6d 6174   mount_point_mat
│ │ │ +001e2fd0: 6368 5f72 6567 6578 703d 2224 2870 7269  ch_regexp="$(pri
│ │ │ +001e2fe0: 6e74 6620 225e 5b5b 3a73 7061 6365 3a5d  ntf "^[[:space:]
│ │ │ +001e2ff0: 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061 6365  ]*[^#].*[[:space
│ │ │ +001e3000: 3a5d 5d25 735b 5b3a 7370 6163 653a 5d5d  :]]%s[[:space:]]
│ │ │ +001e3010: 2220 222f 6f70 7422 2922 0a0a 2020 2020  " "/opt")"..    
│ │ │ +001e3020: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ +001e3030: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ +001e3040: 202d 7120 2f65 7463 2f66 7374 6162 205c   -q /etc/fstab \
│ │ │ +001e3050: 0a20 2020 2020 2020 207c 7c20 7b20 6563  .        || { ec
│ │ │ +001e3060: 686f 2022 5468 6520 6d6f 756e 7420 706f  ho "The mount po
│ │ │ +001e3070: 696e 7420 272f 6f70 7427 2069 7320 6e6f  int '/opt' is no
│ │ │ +001e3080: 7420 6576 656e 2069 6e20 2f65 7463 2f66  t even in /etc/f
│ │ │ +001e3090: 7374 6162 2c20 736f 2077 6520 6361 6e27  stab, so we can'
│ │ │ +001e30a0: 7420 7365 7420 7570 206d 6f75 6e74 206f  t set up mount o
│ │ │ +001e30b0: 7074 696f 6e73 2220 2667 743b 2661 6d70  ptions" >&
│ │ │ +001e30c0: 3b32 3b0a 2020 2020 2020 2020 2020 2020  ;2;.            
│ │ │ +001e30d0: 2020 2020 6563 686f 2022 4e6f 7420 7265      echo "Not re
│ │ │ +001e30e0: 6d65 6469 6174 696e 672c 2062 6563 6175  mediating, becau
│ │ │ +001e30f0: 7365 2074 6865 7265 2069 7320 6e6f 2072  se there is no r
│ │ │ +001e3100: 6563 6f72 6420 6f66 202f 6f70 7420 696e  ecord of /opt in
│ │ │ +001e3110: 202f 6574 632f 6673 7461 6222 2026 6774   /etc/fstab" >
│ │ │ +001e3120: 3b26 616d 703b 323b 2072 6574 7572 6e20  ;&2; return 
│ │ │ +001e3130: 313b 207d 0a20 2020 200a 0a0a 2020 2020  1; }.    ...    
│ │ │ +001e3140: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001e3150: 685f 7265 6765 7870 3d22 2428 7072 696e  h_regexp="$(prin
│ │ │ +001e3160: 7466 2022 5e5b 5b3a 7370 6163 653a 5d5d  tf "^[[:space:]]
│ │ │ +001e3170: 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163 653a  *[^#].*[[:space:
│ │ │ +001e3180: 5d5d 2573 5b5b 3a73 7061 6365 3a5d 5d22  ]]%s[[:space:]]"
│ │ │ +001e3190: 202f 6f70 7429 220a 0a20 2020 2023 2049   /opt)"..    # I
│ │ │ +001e31a0: 6620 7468 6520 6d6f 756e 7420 706f 696e  f the mount poin
│ │ │ +001e31b0: 7420 6973 206e 6f74 2069 6e20 2f65 7463  t is not in /etc
│ │ │ +001e31c0: 2f66 7374 6162 2c20 6765 7420 7072 6576  /fstab, get prev
│ │ │ +001e31d0: 696f 7573 206d 6f75 6e74 206f 7074 696f  ious mount optio
│ │ │ +001e31e0: 6e73 2066 726f 6d20 2f65 7463 2f6d 7461  ns from /etc/mta
│ │ │ +001e31f0: 620a 2020 2020 6966 2021 2067 7265 7020  b.    if ! grep 
│ │ │ +001e3200: 2d71 2022 246d 6f75 6e74 5f70 6f69 6e74  -q "$mount_point
│ │ │ +001e3210: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ +001e3220: 6574 632f 6673 7461 623b 2074 6865 6e0a  etc/fstab; then.
│ │ │ +001e3230: 2020 2020 2020 2020 2320 7275 6e74 696d          # runtim
│ │ │ +001e3240: 6520 6f70 7473 2077 6974 686f 7574 2073  e opts without s
│ │ │ +001e3250: 6f6d 6520 6175 746f 6d61 7469 6320 6b65  ome automatic ke
│ │ │ +001e3260: 726e 656c 2f75 7365 7273 7061 6365 2d61  rnel/userspace-a
│ │ │ +001e3270: 6464 6564 2064 6566 6175 6c74 730a 2020  dded defaults.  
│ │ │ +001e3280: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ +001e3290: 6f75 6e74 5f6f 7074 733d 2428 6772 6570  ount_opts=$(grep
│ │ │ +001e32a0: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ +001e32b0: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ +001e32c0: 632f 6d74 6162 207c 2068 6561 6420 2d31  c/mtab | head -1
│ │ │ +001e32d0: 207c 2020 6177 6b20 277b 7072 696e 7420   |  awk '{print 
│ │ │ +001e32e0: 2434 7d27 205c 0a20 2020 2020 2020 2020  $4}' \.         
│ │ │ +001e32f0: 2020 2020 2020 2020 2020 207c 2073 6564             | sed
│ │ │ +001e3300: 202d 4520 2273 2f28 7277 7c64 6566 6175   -E "s/(rw|defau
│ │ │ +001e3310: 6c74 737c 7365 636c 6162 656c 7c6e 6f73  lts|seclabel|nos
│ │ │ +001e3320: 7569 6429 282c 7c24 292f 2f67 3b73 2f2c  uid)(,|$)//g;s/,
│ │ │ +001e3330: 242f 2f22 290a 2020 2020 2020 2020 5b20  $//").        [ 
│ │ │ +001e3340: 2224 7072 6576 696f 7573 5f6d 6f75 6e74  "$previous_mount
│ │ │ +001e3350: 5f6f 7074 7322 205d 2026 616d 703b 2661  _opts" ] &&a
│ │ │ +001e3360: 6d70 3b20 7072 6576 696f 7573 5f6d 6f75  mp; previous_mou
│ │ │ +001e3370: 6e74 5f6f 7074 732b 3d22 2c22 0a20 2020  nt_opts+=",".   
│ │ │ +001e3380: 2020 2020 2023 2049 6e20 6973 6f39 3636       # In iso966
│ │ │ +001e3390: 3020 6669 6c65 7379 7374 656d 7320 6d74  0 filesystems mt
│ │ │ +001e33a0: 6162 2063 6f75 6c64 2064 6573 6372 6962  ab could describ
│ │ │ +001e33b0: 6520 6120 2262 6c6f 636b 7369 7a65 2220  e a "blocksize" 
│ │ │ +001e33c0: 7661 6c75 652c 2074 6869 7320 7368 6f75  value, this shou
│ │ │ +001e33d0: 6c64 2062 6520 7265 666c 6563 7465 6420  ld be reflected 
│ │ │ +001e33e0: 696e 0a20 2020 2020 2020 2023 2066 7374  in.        # fst
│ │ │ +001e33f0: 6162 2061 7320 2262 6c6f 636b 222e 2020  ab as "block".  
│ │ │ +001e3400: 5468 6520 6e65 7874 2076 6172 6961 626c  The next variabl
│ │ │ +001e3410: 6520 6973 2074 6f20 7361 7469 7366 7920  e is to satisfy 
│ │ │ +001e3420: 7368 656c 6c63 6865 636b 2053 4332 3035  shellcheck SC205
│ │ │ +001e3430: 302e 0a20 2020 2020 2020 2066 735f 7479  0..        fs_ty
│ │ │ +001e3440: 7065 3d22 220a 2020 2020 2020 2020 6966  pe="".        if
│ │ │ +001e3450: 205b 2020 2224 6673 5f74 7970 6522 203d   [  "$fs_type" =
│ │ │ +001e3460: 3d20 2269 736f 3936 3630 2220 5d20 3b20  = "iso9660" ] ; 
│ │ │ +001e3470: 7468 656e 0a20 2020 2020 2020 2020 2020  then.           
│ │ │ +001e3480: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ +001e3490: 6f70 7473 3d24 2873 6564 2027 732f 626c  opts=$(sed 's/bl
│ │ │ +001e34a0: 6f63 6b73 697a 653d 2f62 6c6f 636b 3d2f  ocksize=/block=/
│ │ │ +001e34b0: 2720 266c 743b 266c 743b 266c 743b 2022  ' <<< "
│ │ │ +001e34c0: 2470 7265 7669 6f75 735f 6d6f 756e 745f  $previous_mount_
│ │ │ +001e34d0: 6f70 7473 2229 0a20 2020 2020 2020 2066  opts").        f
│ │ │ +001e34e0: 690a 2020 2020 2020 2020 6563 686f 2022  i.        echo "
│ │ │ +001e34f0: 202f 6f70 7420 2064 6566 6175 6c74 732c   /opt  defaults,
│ │ │ +001e3500: 247b 7072 6576 696f 7573 5f6d 6f75 6e74  ${previous_mount
│ │ │ +001e3510: 5f6f 7074 737d 6e6f 7375 6964 2030 2030  _opts}nosuid 0 0
│ │ │ +001e3520: 2220 2667 743b 2667 743b 202f 6574 632f  " >> /etc/
│ │ │ +001e3530: 6673 7461 620a 2020 2020 2320 4966 2074  fstab.    # If t
│ │ │ +001e3540: 6865 206d 6f75 6e74 5f6f 7074 206f 7074  he mount_opt opt
│ │ │ +001e3550: 696f 6e20 6973 206e 6f74 2061 6c72 6561  ion is not alrea
│ │ │ +001e3560: 6479 2069 6e20 7468 6520 6d6f 756e 7420  dy in the mount 
│ │ │ +001e3570: 706f 696e 7427 7320 2f65 7463 2f66 7374  point's /etc/fst
│ │ │ +001e3580: 6162 2065 6e74 7279 2c20 6164 6420 6974  ab entry, add it
│ │ │ +001e3590: 0a20 2020 2065 6c69 6620 2120 6772 6570  .    elif ! grep
│ │ │ +001e35a0: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ +001e35b0: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ +001e35c0: 632f 6673 7461 6220 7c20 6772 6570 202d  c/fstab | grep -
│ │ │ +001e35d0: 7120 226e 6f73 7569 6422 3b20 7468 656e  q "nosuid"; then
│ │ │ +001e35e0: 0a20 2020 2020 2020 2070 7265 7669 6f75  .        previou
│ │ │ +001e35f0: 735f 6d6f 756e 745f 6f70 7473 3d24 2867  s_mount_opts=$(g
│ │ │ +001e3600: 7265 7020 2224 6d6f 756e 745f 706f 696e  rep "$mount_poin
│ │ │ +001e3610: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ +001e3620: 2f65 7463 2f66 7374 6162 207c 2061 776b  /etc/fstab | awk
│ │ │ +001e3630: 2027 7b70 7269 6e74 2024 347d 2729 0a20   '{print $4}'). 
│ │ │ +001e3640: 2020 2020 2020 2073 6564 202d 6920 2273         sed -i "s
│ │ │ +001e3650: 7c5c 2824 7b6d 6f75 6e74 5f70 6f69 6e74  |\(${mount_point
│ │ │ +001e3660: 5f6d 6174 6368 5f72 6567 6578 707d 2e2a  _match_regexp}.*
│ │ │ +001e3670: 247b 7072 6576 696f 7573 5f6d 6f75 6e74  ${previous_mount
│ │ │ +001e3680: 5f6f 7074 737d 5c29 7c5c 312c 6e6f 7375  _opts}\)|\1,nosu
│ │ │ +001e3690: 6964 7c22 202f 6574 632f 6673 7461 620a  id|" /etc/fstab.
│ │ │ +001e36a0: 2020 2020 6669 0a0a 0a20 2020 2069 6620      fi...    if 
│ │ │ +001e36b0: 6d6b 6469 7220 2d70 2022 2f6f 7074 223b  mkdir -p "/opt";
│ │ │ +001e36c0: 2074 6865 6e0a 2020 2020 2020 2020 6966   then.        if
│ │ │ +001e36d0: 206d 6f75 6e74 706f 696e 7420 2d71 2022   mountpoint -q "
│ │ │ +001e36e0: 2f6f 7074 223b 2074 6865 6e0a 2020 2020  /opt"; then.    
│ │ │ +001e36f0: 2020 2020 2020 2020 6d6f 756e 7420 2d6f          mount -o
│ │ │ +001e3700: 2072 656d 6f75 6e74 202d 2d74 6172 6765   remount --targe
│ │ │ +001e3710: 7420 222f 6f70 7422 0a20 2020 2020 2020  t "/opt".       
│ │ │ +001e3720: 2066 690a 2020 2020 6669 0a7d 0a0a 7065   fi.    fi.}..pe
│ │ │ +001e3730: 7266 6f72 6d5f 7265 6d65 6469 6174 696f  rform_remediatio
│ │ │ +001e3740: 6e0a 0a65 6c73 650a 2020 2020 2667 743b  n..else.    >
│ │ │ +001e3750: 2661 6d70 3b32 2065 6368 6f20 2752 656d  &2 echo 'Rem
│ │ │ +001e3760: 6564 6961 7469 6f6e 2069 7320 6e6f 7420  ediation is not 
│ │ │ +001e3770: 6170 706c 6963 6162 6c65 2c20 6e6f 7468  applicable, noth
│ │ │ +001e3780: 696e 6720 7761 7320 646f 6e65 270a 6669  ing was done'.fi
│ │ │ +001e3790: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Ana │ │ │ +001e3850: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ +001e3860: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
Rebo │ │ │ +001e2cc0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001e2cd0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ +001e38e0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +001e3900: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr> │ │ │ +001e3950: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ +001e3980: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.part /opt --m
│ │ │ +001e39a0: 6f75 6e74 6f70 7469 6f6e 733d 226e 6f73  ountoptions="nos
│ │ │ +001e39b0: 7569 6422 0a3c 2f63 6f64 653e 3c2f 7072  uid".
│ │ │ 001e39e0: 3c2f 7461 626c 653e 3c2f 7464 3e3c 2f74
low
Disr │ │ │ +001e3910: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +001e3920: 6869 6768 3c2f 7464 3e3c 2f74 723e 3c74 high
Reboot:false
Str │ │ │ +001e3960: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ +001e3970: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
Remedi │ │ │ -001e4300: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ -001e4310: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -001e43a0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -001e43b0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -001e43d0: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ -001e43f0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001e4400: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -001e4420: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -001e4440: 3c70 7265 3e3c 636f 6465 3e0a 7061 7274
.part
│ │ │ -001e4450: 202f 7372 7620 2d2d 6d6f 756e 746f 7074   /srv --mountopt
│ │ │ -001e4460: 696f 6e73 3d22 6e6f 7375 6964 220a 3c2f  ions="nosuid".
Re │ │ │ -001e4520: 6d65 6469 6174 696f 6e20 416e 7369 626c mediation Ansibl │ │ │ -001e4530: 6520 736e 6970 7065 7420 e287 b23c 2f61 e snippet ...
< │ │ │ -001e45d0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -001e45e0: 3c74 723e 3c74 683e 4469 7372 7570 7469 Reboot:false
- name: Gather 
│ │ │ -001e4680: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -001e4690: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -001e46a0: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -001e46b0: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -001e46c0: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ -001e46d0: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ -001e46e0: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -001e46f0: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -001e4700: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -001e4710: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ -001e4720: 7372 765f 6e6f 7375 6964 0a20 202d 206e  srv_nosuid.  - n
│ │ │ -001e4730: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -001e4740: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ -001e4750: 7375 6964 204f 7074 696f 6e20 746f 202f  suid Option to /
│ │ │ -001e4760: 7372 763a 2043 6865 636b 2069 6e66 6f72  srv: Check infor
│ │ │ -001e4770: 6d61 7469 6f6e 2061 7373 6f63 6961 7465  mation associate
│ │ │ -001e4780: 6420 746f 206d 6f75 6e74 706f 696e 7427  d to mountpoint'
│ │ │ -001e4790: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -001e47a0: 696e 2e63 6f6d 6d61 6e64 3a20 6669 6e64  in.command: find
│ │ │ -001e47b0: 6d6e 7420 2d2d 6673 7461 6220 272f 7372  mnt --fstab '/sr
│ │ │ -001e47c0: 7627 0a20 2072 6567 6973 7465 723a 2064  v'.  register: d
│ │ │ -001e47d0: 6576 6963 655f 6e61 6d65 0a20 2066 6169  evice_name.  fai
│ │ │ -001e47e0: 6c65 645f 7768 656e 3a20 6465 7669 6365  led_when: device
│ │ │ -001e47f0: 5f6e 616d 652e 7263 2026 6774 3b20 310a  _name.rc > 1.
│ │ │ -001e4800: 2020 6368 616e 6765 645f 7768 656e 3a20    changed_when: 
│ │ │ -001e4810: 6661 6c73 650a 2020 6368 6563 6b5f 6d6f  false.  check_mo
│ │ │ -001e4820: 6465 3a20 6661 6c73 650a 2020 7768 656e  de: false.  when
│ │ │ -001e4830: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ -001e4840: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -001e4850: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001e4860: 2061 6e64 2022 7270 6d2d 6f73 7472 6565   and "rpm-ostree
│ │ │ -001e4870: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001e4880: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001e4890: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ -001e48a0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001e48b0: 6b61 6765 7320 616e 6420 6e6f 7420 226f  kages and not "o
│ │ │ -001e48c0: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ -001e48d0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001e48e0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001e48f0: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ -001e4900: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ -001e4910: 6c69 6e65 2029 2061 6e64 206e 6f74 2028  line ) and not (
│ │ │ -001e4920: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ -001e4930: 697a 6174 696f 6e5f 7479 7065 2069 6e0a  ization_type in.
│ │ │ -001e4940: 2020 2020 5b22 646f 636b 6572 222c 2022      ["docker", "
│ │ │ -001e4950: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ -001e4960: 2270 6f64 6d61 6e22 2c20 2263 6f6e 7461  "podman", "conta
│ │ │ -001e4970: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ -001e4980: 222f 7372 7622 2069 6e20 616e 7369 626c  "/srv" in ansibl
│ │ │ -001e4990: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ -001e49a0: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ -001e49b0: 2920 7c20 6c69 7374 270a 2020 7461 6773  ) | list'.  tags
│ │ │ -001e49c0: 3a0a 2020 2d20 636f 6e66 6967 7572 655f  :.  - configure_
│ │ │ -001e49d0: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001e49e0: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001e49f0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001e4a00: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001e4a10: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001e4a20: 7469 6f6e 5f73 7276 5f6e 6f73 7569 640a  tion_srv_nosuid.
│ │ │ -001e4a30: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001e4a40: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ -001e4a50: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ -001e4a60: 2074 6f20 2f73 7276 3a20 4372 6561 7465   to /srv: Create
│ │ │ -001e4a70: 206d 6f75 6e74 5f69 6e66 6f20 6469 6374   mount_info dict
│ │ │ -001e4a80: 696f 6e61 7279 2076 6172 6961 626c 6527  ionary variable'
│ │ │ -001e4a90: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ -001e4aa0: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b   mount_info: '{{
│ │ │ -001e4ab0: 206d 6f75 6e74 5f69 6e66 6f7c 6465 6661   mount_info|defa
│ │ │ -001e4ac0: 756c 7428 7b7d 297c 636f 6d62 696e 6528  ult({})|combine(
│ │ │ -001e4ad0: 7b69 7465 6d2e 303a 2069 7465 6d2e 317d  {item.0: item.1}
│ │ │ -001e4ae0: 2920 7d7d 270a 2020 7769 7468 5f74 6f67  ) }}'.  with_tog
│ │ │ -001e4af0: 6574 6865 723a 0a20 202d 2027 7b7b 2064  ether:.  - '{{ d
│ │ │ -001e4b00: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001e4b10: 745f 6c69 6e65 735b 305d 2e73 706c 6974  t_lines[0].split
│ │ │ -001e4b20: 2829 207c 206d 6170 2827 276c 6f77 6572  () | map(''lower
│ │ │ -001e4b30: 2727 2920 7c20 6c69 7374 207d 7d27 0a20  '') | list }}'. 
│ │ │ -001e4b40: 202d 2027 7b7b 2064 6576 6963 655f 6e61   - '{{ device_na
│ │ │ -001e4b50: 6d65 2e73 7464 6f75 745f 6c69 6e65 735b  me.stdout_lines[
│ │ │ -001e4b60: 315d 2e73 706c 6974 2829 207c 206c 6973  1].split() | lis
│ │ │ -001e4b70: 7420 7d7d 270a 2020 7768 656e 3a0a 2020  t }}'.  when:.  
│ │ │ -001e4b80: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ -001e4b90: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -001e4ba0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001e4bb0: 2022 7270 6d2d 6f73 7472 6565 2220 696e   "rpm-ostree" in
│ │ │ -001e4bc0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001e4bd0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001e4be0: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ -001e4bf0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001e4c00: 7320 616e 6420 6e6f 7420 226f 7065 6e73  s and not "opens
│ │ │ -001e4c10: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ -001e4c20: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001e4c30: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001e4c40: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ -001e4c50: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ -001e4c60: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ -001e4c70: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ -001e4c80: 696f 6e5f 7479 7065 2069 6e0a 2020 2020  ion_type in.    
│ │ │ -001e4c90: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ -001e4ca0: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ -001e4cb0: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572  man", "container
│ │ │ -001e4cc0: 225d 2029 2029 0a20 202d 2027 222f 7372  "] ) ).  - '"/sr
│ │ │ -001e4cd0: 7622 2069 6e20 616e 7369 626c 655f 6d6f  v" in ansible_mo
│ │ │ -001e4ce0: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ -001e4cf0: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ -001e4d00: 6c69 7374 270a 2020 2d20 6465 7669 6365  list'.  - device
│ │ │ -001e4d10: 5f6e 616d 652e 7374 646f 7574 2069 7320  _name.stdout is 
│ │ │ -001e4d20: 6465 6669 6e65 6420 616e 6420 6465 7669  defined and devi
│ │ │ -001e4d30: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ -001e4d40: 696e 6573 2069 7320 6465 6669 6e65 640a  ines is defined.
│ │ │ -001e4d50: 2020 2d20 2864 6576 6963 655f 6e61 6d65    - (device_name
│ │ │ -001e4d60: 2e73 7464 6f75 7420 7c20 6c65 6e67 7468  .stdout | length
│ │ │ -001e4d70: 2026 6774 3b20 3029 0a20 2074 6167 733a   > 0).  tags:
│ │ │ -001e4d80: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -001e4d90: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -001e4da0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001e4db0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001e4dc0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001e4dd0: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -001e4de0: 696f 6e5f 7372 765f 6e6f 7375 6964 0a20  ion_srv_nosuid. 
│ │ │ -001e4df0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -001e4e00: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ -001e4e10: 6420 6e6f 7375 6964 204f 7074 696f 6e20  d nosuid Option 
│ │ │ -001e4e20: 746f 202f 7372 763a 2049 6620 2f73 7276  to /srv: If /srv
│ │ │ -001e4e30: 206e 6f74 206d 6f75 6e74 6564 2c20 6372   not mounted, cr
│ │ │ -001e4e40: 6166 7420 6d6f 756e 745f 696e 666f 206d  aft mount_info m
│ │ │ -001e4e50: 616e 7561 6c6c 7927 0a20 2073 6574 5f66  anually'.  set_f
│ │ │ -001e4e60: 6163 743a 0a20 2020 206d 6f75 6e74 5f69  act:.    mount_i
│ │ │ -001e4e70: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69  nfo: '{{ mount_i
│ │ │ -001e4e80: 6e66 6f7c 6465 6661 756c 7428 7b7d 297c  nfo|default({})|
│ │ │ -001e4e90: 636f 6d62 696e 6528 7b69 7465 6d2e 303a  combine({item.0:
│ │ │ -001e4ea0: 2069 7465 6d2e 317d 2920 7d7d 270a 2020   item.1}) }}'.  
│ │ │ -001e4eb0: 7769 7468 5f74 6f67 6574 6865 723a 0a20  with_together:. 
│ │ │ -001e4ec0: 202d 202d 2074 6172 6765 740a 2020 2020   - - target.    
│ │ │ -001e4ed0: 2d20 736f 7572 6365 0a20 2020 202d 2066  - source.    - f
│ │ │ -001e4ee0: 7374 7970 650a 2020 2020 2d20 6f70 7469  stype.    - opti
│ │ │ -001e4ef0: 6f6e 730a 2020 2d20 2d20 2f73 7276 0a20  ons.  - - /srv. 
│ │ │ -001e4f00: 2020 202d 2027 270a 2020 2020 2d20 2727     - ''.    - ''
│ │ │ -001e4f10: 0a20 2020 202d 2064 6566 6175 6c74 730a  .    - defaults.
│ │ │ -001e4f20: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ -001e4f30: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ -001e4f40: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001e4f50: 636b 6167 6573 2061 6e64 2022 7270 6d2d  ckages and "rpm-
│ │ │ -001e4f60: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001e4f70: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001e4f80: 730a 2020 2020 616e 6420 2262 6f6f 7463  s.    and "bootc
│ │ │ -001e4f90: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001e4fa0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001e4fb0: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ -001e4fc0: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ -001e4fd0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001e4fe0: 730a 2020 2020 616e 6420 226f 7374 7265  s.    and "ostre
│ │ │ -001e4ff0: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ -001e5000: 6f63 5f63 6d64 6c69 6e65 2029 2061 6e64  oc_cmdline ) and
│ │ │ -001e5010: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ -001e5020: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ -001e5030: 7065 2069 6e0a 2020 2020 5b22 646f 636b  pe in.    ["dock
│ │ │ -001e5040: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ -001e5050: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c20  nvz", "podman", 
│ │ │ -001e5060: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ -001e5070: 0a20 202d 2027 222f 7372 7622 2069 6e20  .  - '"/srv" in 
│ │ │ -001e5080: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ -001e5090: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ -001e50a0: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ -001e50b0: 2020 2d20 2822 2d2d 6673 7461 6222 207c    - ("--fstab" |
│ │ │ -001e50c0: 206c 656e 6774 6820 3d3d 2030 290a 2020   length == 0).  
│ │ │ -001e50d0: 2d20 6465 7669 6365 5f6e 616d 652e 7374  - device_name.st
│ │ │ -001e50e0: 646f 7574 2069 7320 6465 6669 6e65 6420  dout is defined 
│ │ │ -001e50f0: 616e 6420 6465 7669 6365 5f6e 616d 652e  and device_name.
│ │ │ -001e5100: 7374 646f 7574 5f6c 696e 6573 2069 7320  stdout_lines is 
│ │ │ -001e5110: 6465 6669 6e65 640a 2020 2d20 2864 6576  defined.  - (dev
│ │ │ -001e5120: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ -001e5130: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ -001e5140: 2074 6167 733a 0a20 202d 2063 6f6e 6669   tags:.  - confi
│ │ │ -001e5150: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ -001e5160: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ -001e5170: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ -001e5180: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ -001e5190: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ -001e51a0: 6e74 5f6f 7074 696f 6e5f 7372 765f 6e6f  nt_option_srv_no
│ │ │ -001e51b0: 7375 6964 0a20 202d 206e 6f5f 7265 626f  suid.  - no_rebo
│ │ │ -001e51c0: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -001e51d0: 653a 2027 4164 6420 6e6f 7375 6964 204f  e: 'Add nosuid O
│ │ │ -001e51e0: 7074 696f 6e20 746f 202f 7372 763a 204d  ption to /srv: M
│ │ │ -001e51f0: 616b 6520 7375 7265 206e 6f73 7569 6420  ake sure nosuid 
│ │ │ -001e5200: 6f70 7469 6f6e 2069 7320 7061 7274 206f  option is part o
│ │ │ -001e5210: 6620 7468 6520 746f 202f 7372 760a 2020  f the to /srv.  
│ │ │ -001e5220: 2020 6f70 7469 6f6e 7327 0a20 2073 6574    options'.  set
│ │ │ -001e5230: 5f66 6163 743a 0a20 2020 206d 6f75 6e74  _fact:.    mount
│ │ │ -001e5240: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74  _info: '{{ mount
│ │ │ -001e5250: 5f69 6e66 6f20 7c20 636f 6d62 696e 6528  _info | combine(
│ │ │ -001e5260: 207b 2727 6f70 7469 6f6e 7327 273a 2727   {''options'':''
│ │ │ -001e5270: 2727 7e28 6d6f 756e 745f 696e 666f 2e6f  ''~(mount_info.o
│ │ │ -001e5280: 7074 696f 6e73 207c 0a20 2020 2020 2064  ptions |.      d
│ │ │ -001e5290: 6566 6175 6c74 2827 2727 2729 297e 2827  efault(''''))~('
│ │ │ -001e52a0: 272c 2727 2069 6620 286d 6f75 6e74 5f69  ','' if (mount_i
│ │ │ -001e52b0: 6e66 6f2e 6f70 7469 6f6e 7320 7c20 6465  nfo.options | de
│ │ │ -001e52c0: 6661 756c 7428 2727 2727 2929 2065 6c73  fault('''')) els
│ │ │ -001e52d0: 6520 2727 2727 297e 2727 6e6f 7375 6964  e '''')~''nosuid
│ │ │ -001e52e0: 2727 0a20 2020 2020 207d 2920 7d7d 270a  ''.      }) }}'.
│ │ │ -001e52f0: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ -001e5300: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ -001e5310: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001e5320: 636b 6167 6573 2061 6e64 2022 7270 6d2d  ckages and "rpm-
│ │ │ -001e5330: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001e5340: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001e5350: 730a 2020 2020 616e 6420 2262 6f6f 7463  s.    and "bootc
│ │ │ -001e5360: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001e5370: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001e5380: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ -001e5390: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ -001e53a0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001e53b0: 730a 2020 2020 616e 6420 226f 7374 7265  s.    and "ostre
│ │ │ -001e53c0: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ -001e53d0: 6f63 5f63 6d64 6c69 6e65 2029 2061 6e64  oc_cmdline ) and
│ │ │ -001e53e0: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ -001e53f0: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ -001e5400: 7065 2069 6e0a 2020 2020 5b22 646f 636b  pe in.    ["dock
│ │ │ -001e5410: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ -001e5420: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c20  nvz", "podman", 
│ │ │ -001e5430: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ -001e5440: 0a20 202d 2027 222f 7372 7622 2069 6e20  .  - '"/srv" in 
│ │ │ -001e5450: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ -001e5460: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ -001e5470: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ -001e5480: 2020 2d20 6d6f 756e 745f 696e 666f 2069    - mount_info i
│ │ │ -001e5490: 7320 6465 6669 6e65 6420 616e 6420 226e  s defined and "n
│ │ │ -001e54a0: 6f73 7569 6422 206e 6f74 2069 6e20 286d  osuid" not in (m
│ │ │ -001e54b0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -001e54c0: 7320 7c20 6465 6661 756c 7428 2727 2929  s | default(''))
│ │ │ -001e54d0: 0a20 2074 6167 733a 0a20 202d 2063 6f6e  .  tags:.  - con
│ │ │ -001e54e0: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -001e54f0: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -001e5500: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -001e5510: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -001e5520: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -001e5530: 6f75 6e74 5f6f 7074 696f 6e5f 7372 765f  ount_option_srv_
│ │ │ -001e5540: 6e6f 7375 6964 0a20 202d 206e 6f5f 7265  nosuid.  - no_re
│ │ │ -001e5550: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -001e5560: 616d 653a 2027 4164 6420 6e6f 7375 6964  ame: 'Add nosuid
│ │ │ -001e5570: 204f 7074 696f 6e20 746f 202f 7372 763a   Option to /srv:
│ │ │ -001e5580: 2045 6e73 7572 6520 2f73 7276 2069 7320   Ensure /srv is 
│ │ │ -001e5590: 6d6f 756e 7465 6420 7769 7468 206e 6f73  mounted with nos
│ │ │ -001e55a0: 7569 6420 6f70 7469 6f6e 270a 2020 616e  uid option'.  an
│ │ │ -001e55b0: 7369 626c 652e 706f 7369 782e 6d6f 756e  sible.posix.moun
│ │ │ -001e55c0: 743a 0a20 2020 2070 6174 683a 202f 7372  t:.    path: /sr
│ │ │ -001e55d0: 760a 2020 2020 7372 633a 2027 7b7b 206d  v.    src: '{{ m
│ │ │ -001e55e0: 6f75 6e74 5f69 6e66 6f2e 736f 7572 6365  ount_info.source
│ │ │ -001e55f0: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ -001e5600: 207d 7d27 0a20 2020 206f 7074 733a 2027   }}'.    opts: '
│ │ │ -001e5610: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 6f70  {{ mount_info.op
│ │ │ -001e5620: 7469 6f6e 7320 7c20 6465 6661 756c 7428  tions | default(
│ │ │ -001e5630: 2727 2727 2920 7d7d 270a 2020 2020 7374  '''') }}'.    st
│ │ │ -001e5640: 6174 653a 206d 6f75 6e74 6564 0a20 2020  ate: mounted.   
│ │ │ -001e5650: 2066 7374 7970 653a 2027 7b7b 206d 6f75   fstype: '{{ mou
│ │ │ -001e5660: 6e74 5f69 6e66 6f2e 6673 7479 7065 207c  nt_info.fstype |
│ │ │ -001e5670: 2064 6566 6175 6c74 2827 2727 2729 207d   default('''') }
│ │ │ -001e5680: 7d27 0a20 2072 6567 6973 7465 723a 206d  }'.  register: m
│ │ │ -001e5690: 6f75 6e74 5f72 6573 756c 740a 2020 6661  ount_result.  fa
│ │ │ -001e56a0: 696c 6564 5f77 6865 6e3a 0a20 202d 206d  iled_when:.  - m
│ │ │ -001e56b0: 6f75 6e74 5f72 6573 756c 7420 6973 2066  ount_result is f
│ │ │ -001e56c0: 6169 6c65 640a 2020 2d20 2727 2774 6172  ailed.  - '''tar
│ │ │ -001e56d0: 6765 7420 6973 2062 7573 7927 2720 6e6f  get is busy'' no
│ │ │ -001e56e0: 7420 696e 2028 6d6f 756e 745f 7265 7375  t in (mount_resu
│ │ │ -001e56f0: 6c74 2e6d 7367 207c 2064 6566 6175 6c74  lt.msg | default
│ │ │ -001e5700: 2827 2727 2729 2927 0a20 202d 2027 2727  (''''))'.  - '''
│ │ │ -001e5710: 616c 7265 6164 7920 6d6f 756e 7465 6427  already mounted'
│ │ │ -001e5720: 2720 6e6f 7420 696e 2028 6d6f 756e 745f  ' not in (mount_
│ │ │ -001e5730: 7265 7375 6c74 2e6d 7367 207c 2064 6566  result.msg | def
│ │ │ -001e5740: 6175 6c74 2827 2727 2729 2927 0a20 2077  ault(''''))'.  w
│ │ │ -001e5750: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ -001e5760: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -001e5770: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001e5780: 6765 7320 616e 6420 2272 706d 2d6f 7374  ges and "rpm-ost
│ │ │ -001e5790: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -001e57a0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -001e57b0: 2020 2061 6e64 2022 626f 6f74 6322 2069     and "bootc" i
│ │ │ -001e57c0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001e57d0: 7061 636b 6167 6573 2061 6e64 206e 6f74  packages and not
│ │ │ -001e57e0: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ -001e57f0: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ -001e5800: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -001e5810: 2020 2061 6e64 2022 6f73 7472 6565 2220     and "ostree" 
│ │ │ -001e5820: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ -001e5830: 636d 646c 696e 6520 2920 616e 6420 6e6f  cmdline ) and no
│ │ │ -001e5840: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ -001e5850: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ -001e5860: 696e 0a20 2020 205b 2264 6f63 6b65 7222  in.    ["docker"
│ │ │ -001e5870: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ -001e5880: 222c 2022 706f 646d 616e 222c 2022 636f  ", "podman", "co
│ │ │ -001e5890: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ -001e58a0: 2d20 2722 2f73 7276 2220 696e 2061 6e73  - '"/srv" in ans
│ │ │ -001e58b0: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ -001e58c0: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ -001e58d0: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ -001e58e0: 206d 6f75 6e74 5f69 6e66 6f20 6973 2064   mount_info is d
│ │ │ -001e58f0: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ -001e5900: 6365 5f6e 616d 652e 7374 646f 7574 2069  ce_name.stdout i
│ │ │ -001e5910: 7320 6465 6669 6e65 6420 616e 6420 2864  s defined and (d
│ │ │ -001e5920: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001e5930: 7420 7c20 6c65 6e67 7468 2026 6774 3b20  t | length > 
│ │ │ -001e5940: 3029 2920 6f72 2028 222d 2d66 7374 6162  0)) or ("--fstab
│ │ │ -001e5950: 220a 2020 2020 7c20 6c65 6e67 7468 203d  ".    | length =
│ │ │ -001e5960: 3d20 3029 0a20 2074 6167 733a 0a20 202d  = 0).  tags:.  -
│ │ │ -001e5970: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ -001e5980: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ -001e5990: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -001e59a0: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -001e59b0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -001e59c0: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ -001e59d0: 7372 765f 6e6f 7375 6964 0a20 202d 206e  srv_nosuid.  - n
│ │ │ -001e59e0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -001e59f0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -001e5aa0: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ -001e5ab0: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ -001e5ac0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
C │ │ │ -001e45c0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -001e45f0: 6f6e 3a3c 2f74 683e 3c74 643e 6869 6768 on:high │ │ │ -001e4600: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -001e4640: 793a 3c2f 7468 3e3c 7464 3e63 6f6e 6669 y:confi │ │ │ -001e4650: 6775 7265 3c2f 7464 3e3c 2f74 723e 3c2f gure

│ │ │ -001e5b70: 2320 5265 6d65 6469 6174 696f 6e20 6973  # Remediation is
│ │ │ -001e5b80: 2061 7070 6c69 6361 626c 6520 6f6e 6c79   applicable only
│ │ │ -001e5b90: 2069 6e20 6365 7274 6169 6e20 706c 6174   in certain plat
│ │ │ -001e5ba0: 666f 726d 730a 6966 2028 2021 2028 207b  forms.if ( ! ( {
│ │ │ -001e5bb0: 2072 706d 202d 2d71 7569 6574 202d 7120   rpm --quiet -q 
│ │ │ -001e5bc0: 6b65 726e 656c 203b 7d20 2661 6d70 3b26  kernel ;} &&
│ │ │ -001e5bd0: 616d 703b 207b 2072 706d 202d 2d71 7569  amp; { rpm --qui
│ │ │ -001e5be0: 6574 202d 7120 7270 6d2d 6f73 7472 6565  et -q rpm-ostree
│ │ │ -001e5bf0: 203b 7d20 2661 6d70 3b26 616d 703b 207b   ;} && {
│ │ │ -001e5c00: 2072 706d 202d 2d71 7569 6574 202d 7120   rpm --quiet -q 
│ │ │ -001e5c10: 626f 6f74 6320 3b7d 2026 616d 703b 2661  bootc ;} &&a
│ │ │ -001e5c20: 6d70 3b20 7b20 2120 7270 6d20 2d2d 7175  mp; { ! rpm --qu
│ │ │ -001e5c30: 6965 7420 2d71 206f 7065 6e73 6869 6674  iet -q openshift
│ │ │ -001e5c40: 2d6b 7562 656c 6574 203b 7d20 2661 6d70  -kubelet ;} &
│ │ │ -001e5c50: 3b26 616d 703b 2028 5b20 2d66 202f 7275  ;& ([ -f /ru
│ │ │ -001e5c60: 6e2f 6f73 7472 6565 2d62 6f6f 7465 6420  n/ostree-booted 
│ │ │ -001e5c70: 5d20 7c7c 205b 202d 4c20 2f6f 7374 7265  ] || [ -L /ostre
│ │ │ -001e5c80: 6520 5d29 2029 2026 616d 703b 2661 6d70  e ]) ) &&
│ │ │ -001e5c90: 3b20 2120 2820 5b20 2d66 202f 2e64 6f63  ; ! ( [ -f /.doc
│ │ │ -001e5ca0: 6b65 7265 6e76 205d 207c 7c20 5b20 2d66  kerenv ] || [ -f
│ │ │ -001e5cb0: 202f 7275 6e2f 2e63 6f6e 7461 696e 6572   /run/.container
│ │ │ -001e5cc0: 656e 7620 5d20 2920 2920 2661 6d70 3b26  env ] ) ) &&
│ │ │ -001e5cd0: 616d 703b 207b 2028 2066 696e 646d 6e74  amp; { ( findmnt
│ │ │ -001e5ce0: 202d 2d6b 6572 6e65 6c20 222f 7372 7622   --kernel "/srv"
│ │ │ -001e5cf0: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20   > /dev/null 
│ │ │ -001e5d00: 7c7c 2066 696e 646d 6e74 202d 2d66 7374  || findmnt --fst
│ │ │ -001e5d10: 6162 2022 2f73 7276 2220 2667 743b 202f  ab "/srv" > /
│ │ │ -001e5d20: 6465 762f 6e75 6c6c 2029 3b20 7d3b 2074  dev/null ); }; t
│ │ │ -001e5d30: 6865 6e0a 0a66 756e 6374 696f 6e20 7065  hen..function pe
│ │ │ -001e5d40: 7266 6f72 6d5f 7265 6d65 6469 6174 696f  rform_remediatio
│ │ │ -001e5d50: 6e20 7b0a 0a20 2020 200a 2020 2020 2020  n {..    .      
│ │ │ -001e5d60: 2020 2320 7468 6520 6d6f 756e 7420 706f    # the mount po
│ │ │ -001e5d70: 696e 7420 2f73 7276 2068 6173 2074 6f20  int /srv has to 
│ │ │ -001e5d80: 6265 2064 6566 696e 6564 2069 6e20 2f65  be defined in /e
│ │ │ -001e5d90: 7463 2f66 7374 6162 0a20 2020 2020 2020  tc/fstab.       
│ │ │ -001e5da0: 2023 2062 6566 6f72 6520 7468 6973 2072   # before this r
│ │ │ -001e5db0: 656d 6564 6961 7469 6f6e 2063 616e 2062  emediation can b
│ │ │ -001e5dc0: 6520 6578 6563 7574 6564 2e20 496e 2063  e executed. In c
│ │ │ -001e5dd0: 6173 6520 6974 2069 7320 6e6f 7420 6465  ase it is not de
│ │ │ -001e5de0: 6669 6e65 642c 2074 6865 0a20 2020 2020  fined, the.     
│ │ │ -001e5df0: 2020 2023 2072 656d 6564 6961 7469 6f6e     # remediation
│ │ │ -001e5e00: 2061 626f 7274 7320 616e 6420 6e6f 2063   aborts and no c
│ │ │ -001e5e10: 6861 6e67 6573 2072 6567 6172 6469 6e67  hanges regarding
│ │ │ -001e5e20: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ -001e5e30: 2061 7265 2064 6f6e 652e 0a20 2020 2020   are done..     
│ │ │ -001e5e40: 2020 206d 6f75 6e74 5f70 6f69 6e74 5f6d     mount_point_m
│ │ │ -001e5e50: 6174 6368 5f72 6567 6578 703d 2224 2870  atch_regexp="$(p
│ │ │ -001e5e60: 7269 6e74 6620 225e 5b5b 3a73 7061 6365  rintf "^[[:space
│ │ │ -001e5e70: 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061  :]]*[^#].*[[:spa
│ │ │ -001e5e80: 6365 3a5d 5d25 735b 5b3a 7370 6163 653a  ce:]]%s[[:space:
│ │ │ -001e5e90: 5d5d 2220 222f 7372 7622 2922 0a0a 2020  ]]" "/srv")"..  
│ │ │ -001e5ea0: 2020 6772 6570 2022 246d 6f75 6e74 5f70    grep "$mount_p
│ │ │ -001e5eb0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001e5ec0: 7022 202d 7120 2f65 7463 2f66 7374 6162  p" -q /etc/fstab
│ │ │ -001e5ed0: 205c 0a20 2020 2020 2020 207c 7c20 7b20   \.        || { 
│ │ │ -001e5ee0: 6563 686f 2022 5468 6520 6d6f 756e 7420  echo "The mount 
│ │ │ -001e5ef0: 706f 696e 7420 272f 7372 7627 2069 7320  point '/srv' is 
│ │ │ -001e5f00: 6e6f 7420 6576 656e 2069 6e20 2f65 7463  not even in /etc
│ │ │ -001e5f10: 2f66 7374 6162 2c20 736f 2077 6520 6361  /fstab, so we ca
│ │ │ -001e5f20: 6e27 7420 7365 7420 7570 206d 6f75 6e74  n't set up mount
│ │ │ -001e5f30: 206f 7074 696f 6e73 2220 2667 743b 2661   options" >&a
│ │ │ -001e5f40: 6d70 3b32 3b0a 2020 2020 2020 2020 2020  mp;2;.          
│ │ │ -001e5f50: 2020 2020 2020 6563 686f 2022 4e6f 7420        echo "Not 
│ │ │ -001e5f60: 7265 6d65 6469 6174 696e 672c 2062 6563  remediating, bec
│ │ │ -001e5f70: 6175 7365 2074 6865 7265 2069 7320 6e6f  ause there is no
│ │ │ -001e5f80: 2072 6563 6f72 6420 6f66 202f 7372 7620   record of /srv 
│ │ │ -001e5f90: 696e 202f 6574 632f 6673 7461 6222 2026  in /etc/fstab" &
│ │ │ -001e5fa0: 6774 3b26 616d 703b 323b 2072 6574 7572  gt;&2; retur
│ │ │ -001e5fb0: 6e20 313b 207d 0a20 2020 200a 0a0a 2020  n 1; }.    ...  
│ │ │ -001e5fc0: 2020 6d6f 756e 745f 706f 696e 745f 6d61    mount_point_ma
│ │ │ -001e5fd0: 7463 685f 7265 6765 7870 3d22 2428 7072  tch_regexp="$(pr
│ │ │ -001e5fe0: 696e 7466 2022 5e5b 5b3a 7370 6163 653a  intf "^[[:space:
│ │ │ -001e5ff0: 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163  ]]*[^#].*[[:spac
│ │ │ -001e6000: 653a 5d5d 2573 5b5b 3a73 7061 6365 3a5d  e:]]%s[[:space:]
│ │ │ -001e6010: 5d22 202f 7372 7629 220a 0a20 2020 2023  ]" /srv)"..    #
│ │ │ -001e6020: 2049 6620 7468 6520 6d6f 756e 7420 706f   If the mount po
│ │ │ -001e6030: 696e 7420 6973 206e 6f74 2069 6e20 2f65  int is not in /e
│ │ │ -001e6040: 7463 2f66 7374 6162 2c20 6765 7420 7072  tc/fstab, get pr
│ │ │ -001e6050: 6576 696f 7573 206d 6f75 6e74 206f 7074  evious mount opt
│ │ │ -001e6060: 696f 6e73 2066 726f 6d20 2f65 7463 2f6d  ions from /etc/m
│ │ │ -001e6070: 7461 620a 2020 2020 6966 2021 2067 7265  tab.    if ! gre
│ │ │ -001e6080: 7020 2d71 2022 246d 6f75 6e74 5f70 6f69  p -q "$mount_poi
│ │ │ -001e6090: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ -001e60a0: 202f 6574 632f 6673 7461 623b 2074 6865   /etc/fstab; the
│ │ │ -001e60b0: 6e0a 2020 2020 2020 2020 2320 7275 6e74  n.        # runt
│ │ │ -001e60c0: 696d 6520 6f70 7473 2077 6974 686f 7574  ime opts without
│ │ │ -001e60d0: 2073 6f6d 6520 6175 746f 6d61 7469 6320   some automatic 
│ │ │ -001e60e0: 6b65 726e 656c 2f75 7365 7273 7061 6365  kernel/userspace
│ │ │ -001e60f0: 2d61 6464 6564 2064 6566 6175 6c74 730a  -added defaults.
│ │ │ -001e6100: 2020 2020 2020 2020 7072 6576 696f 7573          previous
│ │ │ -001e6110: 5f6d 6f75 6e74 5f6f 7074 733d 2428 6772  _mount_opts=$(gr
│ │ │ -001e6120: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ -001e6130: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ -001e6140: 6574 632f 6d74 6162 207c 2068 6561 6420  etc/mtab | head 
│ │ │ -001e6150: 2d31 207c 2020 6177 6b20 277b 7072 696e  -1 |  awk '{prin
│ │ │ -001e6160: 7420 2434 7d27 205c 0a20 2020 2020 2020  t $4}' \.       
│ │ │ -001e6170: 2020 2020 2020 2020 2020 2020 207c 2073               | s
│ │ │ -001e6180: 6564 202d 4520 2273 2f28 7277 7c64 6566  ed -E "s/(rw|def
│ │ │ -001e6190: 6175 6c74 737c 7365 636c 6162 656c 7c6e  aults|seclabel|n
│ │ │ -001e61a0: 6f73 7569 6429 282c 7c24 292f 2f67 3b73  osuid)(,|$)//g;s
│ │ │ -001e61b0: 2f2c 242f 2f22 290a 2020 2020 2020 2020  /,$//").        
│ │ │ -001e61c0: 5b20 2224 7072 6576 696f 7573 5f6d 6f75  [ "$previous_mou
│ │ │ -001e61d0: 6e74 5f6f 7074 7322 205d 2026 616d 703b  nt_opts" ] &
│ │ │ -001e61e0: 2661 6d70 3b20 7072 6576 696f 7573 5f6d  & previous_m
│ │ │ -001e61f0: 6f75 6e74 5f6f 7074 732b 3d22 2c22 0a20  ount_opts+=",". 
│ │ │ -001e6200: 2020 2020 2020 2023 2049 6e20 6973 6f39         # In iso9
│ │ │ -001e6210: 3636 3020 6669 6c65 7379 7374 656d 7320  660 filesystems 
│ │ │ -001e6220: 6d74 6162 2063 6f75 6c64 2064 6573 6372  mtab could descr
│ │ │ -001e6230: 6962 6520 6120 2262 6c6f 636b 7369 7a65  ibe a "blocksize
│ │ │ -001e6240: 2220 7661 6c75 652c 2074 6869 7320 7368  " value, this sh
│ │ │ -001e6250: 6f75 6c64 2062 6520 7265 666c 6563 7465  ould be reflecte
│ │ │ -001e6260: 6420 696e 0a20 2020 2020 2020 2023 2066  d in.        # f
│ │ │ -001e6270: 7374 6162 2061 7320 2262 6c6f 636b 222e  stab as "block".
│ │ │ -001e6280: 2020 5468 6520 6e65 7874 2076 6172 6961    The next varia
│ │ │ -001e6290: 626c 6520 6973 2074 6f20 7361 7469 7366  ble is to satisf
│ │ │ -001e62a0: 7920 7368 656c 6c63 6865 636b 2053 4332  y shellcheck SC2
│ │ │ -001e62b0: 3035 302e 0a20 2020 2020 2020 2066 735f  050..        fs_
│ │ │ -001e62c0: 7479 7065 3d22 220a 2020 2020 2020 2020  type="".        
│ │ │ -001e62d0: 6966 205b 2020 2224 6673 5f74 7970 6522  if [  "$fs_type"
│ │ │ -001e62e0: 203d 3d20 2269 736f 3936 3630 2220 5d20   == "iso9660" ] 
│ │ │ -001e62f0: 3b20 7468 656e 0a20 2020 2020 2020 2020  ; then.         
│ │ │ -001e6300: 2020 2070 7265 7669 6f75 735f 6d6f 756e     previous_moun
│ │ │ -001e6310: 745f 6f70 7473 3d24 2873 6564 2027 732f  t_opts=$(sed 's/
│ │ │ -001e6320: 626c 6f63 6b73 697a 653d 2f62 6c6f 636b  blocksize=/block
│ │ │ -001e6330: 3d2f 2720 266c 743b 266c 743b 266c 743b  =/' <<<
│ │ │ -001e6340: 2022 2470 7265 7669 6f75 735f 6d6f 756e   "$previous_moun
│ │ │ -001e6350: 745f 6f70 7473 2229 0a20 2020 2020 2020  t_opts").       
│ │ │ -001e6360: 2066 690a 2020 2020 2020 2020 6563 686f   fi.        echo
│ │ │ -001e6370: 2022 202f 7372 7620 2064 6566 6175 6c74   " /srv  default
│ │ │ -001e6380: 732c 247b 7072 6576 696f 7573 5f6d 6f75  s,${previous_mou
│ │ │ -001e6390: 6e74 5f6f 7074 737d 6e6f 7375 6964 2030  nt_opts}nosuid 0
│ │ │ -001e63a0: 2030 2220 2667 743b 2667 743b 202f 6574   0" >> /et
│ │ │ -001e63b0: 632f 6673 7461 620a 2020 2020 2320 4966  c/fstab.    # If
│ │ │ -001e63c0: 2074 6865 206d 6f75 6e74 5f6f 7074 206f   the mount_opt o
│ │ │ -001e63d0: 7074 696f 6e20 6973 206e 6f74 2061 6c72  ption is not alr
│ │ │ -001e63e0: 6561 6479 2069 6e20 7468 6520 6d6f 756e  eady in the moun
│ │ │ -001e63f0: 7420 706f 696e 7427 7320 2f65 7463 2f66  t point's /etc/f
│ │ │ -001e6400: 7374 6162 2065 6e74 7279 2c20 6164 6420  stab entry, add 
│ │ │ -001e6410: 6974 0a20 2020 2065 6c69 6620 2120 6772  it.    elif ! gr
│ │ │ -001e6420: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ -001e6430: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ -001e6440: 6574 632f 6673 7461 6220 7c20 6772 6570  etc/fstab | grep
│ │ │ -001e6450: 202d 7120 226e 6f73 7569 6422 3b20 7468   -q "nosuid"; th
│ │ │ -001e6460: 656e 0a20 2020 2020 2020 2070 7265 7669  en.        previ
│ │ │ -001e6470: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ -001e6480: 2867 7265 7020 2224 6d6f 756e 745f 706f  (grep "$mount_po
│ │ │ -001e6490: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001e64a0: 2220 2f65 7463 2f66 7374 6162 207c 2061  " /etc/fstab | a
│ │ │ -001e64b0: 776b 2027 7b70 7269 6e74 2024 347d 2729  wk '{print $4}')
│ │ │ -001e64c0: 0a20 2020 2020 2020 2073 6564 202d 6920  .        sed -i 
│ │ │ -001e64d0: 2273 7c5c 2824 7b6d 6f75 6e74 5f70 6f69  "s|\(${mount_poi
│ │ │ -001e64e0: 6e74 5f6d 6174 6368 5f72 6567 6578 707d  nt_match_regexp}
│ │ │ -001e64f0: 2e2a 247b 7072 6576 696f 7573 5f6d 6f75  .*${previous_mou
│ │ │ -001e6500: 6e74 5f6f 7074 737d 5c29 7c5c 312c 6e6f  nt_opts}\)|\1,no
│ │ │ -001e6510: 7375 6964 7c22 202f 6574 632f 6673 7461  suid|" /etc/fsta
│ │ │ -001e6520: 620a 2020 2020 6669 0a0a 0a20 2020 2069  b.    fi...    i
│ │ │ -001e6530: 6620 6d6b 6469 7220 2d70 2022 2f73 7276  f mkdir -p "/srv
│ │ │ -001e6540: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ -001e6550: 6966 206d 6f75 6e74 706f 696e 7420 2d71  if mountpoint -q
│ │ │ -001e6560: 2022 2f73 7276 223b 2074 6865 6e0a 2020   "/srv"; then.  
│ │ │ -001e6570: 2020 2020 2020 2020 2020 6d6f 756e 7420            mount 
│ │ │ -001e6580: 2d6f 2072 656d 6f75 6e74 202d 2d74 6172  -o remount --tar
│ │ │ -001e6590: 6765 7420 222f 7372 7622 0a20 2020 2020  get "/srv".     
│ │ │ -001e65a0: 2020 2066 690a 2020 2020 6669 0a7d 0a0a     fi.    fi.}..
│ │ │ -001e65b0: 7065 7266 6f72 6d5f 7265 6d65 6469 6174  perform_remediat
│ │ │ -001e65c0: 696f 6e0a 0a65 6c73 650a 2020 2020 2667  ion..else.    &g
│ │ │ -001e65d0: 743b 2661 6d70 3b32 2065 6368 6f20 2752  t;&2 echo 'R
│ │ │ -001e65e0: 656d 6564 6961 7469 6f6e 2069 7320 6e6f  emediation is no
│ │ │ -001e65f0: 7420 6170 706c 6963 6162 6c65 2c20 6e6f  t applicable, no
│ │ │ -001e6600: 7468 696e 6720 7761 7320 646f 6e65 270a  thing was done'.
│ │ │ -001e6610: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e  fi.
│ │ │ +001e4300: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ +001e4310: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
Re │ │ │ -001e5b40: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -001e5b50: 6c73 653c 2f74 643e 3c2f 7472 3e3c 2f74 lse
│ │ │ +001e43c0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c
- n
│ │ │ +001e4450: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ +001e4460: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ +001e4470: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ +001e4480: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ +001e4490: 0a20 2074 6167 733a 0a20 202d 2063 6f6e  .  tags:.  - con
│ │ │ +001e44a0: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +001e44b0: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ +001e44c0: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ +001e44d0: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ +001e44e0: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ +001e44f0: 6f75 6e74 5f6f 7074 696f 6e5f 7372 765f  ount_option_srv_
│ │ │ +001e4500: 6e6f 7375 6964 0a20 202d 206e 6f5f 7265  nosuid.  - no_re
│ │ │ +001e4510: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ +001e4520: 616d 653a 2027 4164 6420 6e6f 7375 6964  ame: 'Add nosuid
│ │ │ +001e4530: 204f 7074 696f 6e20 746f 202f 7372 763a   Option to /srv:
│ │ │ +001e4540: 2043 6865 636b 2069 6e66 6f72 6d61 7469   Check informati
│ │ │ +001e4550: 6f6e 2061 7373 6f63 6961 7465 6420 746f  on associated to
│ │ │ +001e4560: 206d 6f75 6e74 706f 696e 7427 0a20 2061   mountpoint'.  a
│ │ │ +001e4570: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ +001e4580: 6f6d 6d61 6e64 3a20 6669 6e64 6d6e 7420  ommand: findmnt 
│ │ │ +001e4590: 2d2d 6673 7461 6220 272f 7372 7627 0a20  --fstab '/srv'. 
│ │ │ +001e45a0: 2072 6567 6973 7465 723a 2064 6576 6963   register: devic
│ │ │ +001e45b0: 655f 6e61 6d65 0a20 2066 6169 6c65 645f  e_name.  failed_
│ │ │ +001e45c0: 7768 656e 3a20 6465 7669 6365 5f6e 616d  when: device_nam
│ │ │ +001e45d0: 652e 7263 2026 6774 3b20 310a 2020 6368  e.rc > 1.  ch
│ │ │ +001e45e0: 616e 6765 645f 7768 656e 3a20 6661 6c73  anged_when: fals
│ │ │ +001e45f0: 650a 2020 6368 6563 6b5f 6d6f 6465 3a20  e.  check_mode: 
│ │ │ +001e4600: 6661 6c73 650a 2020 7768 656e 3a0a 2020  false.  when:.  
│ │ │ +001e4610: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ +001e4620: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +001e4630: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001e4640: 2022 7270 6d2d 6f73 7472 6565 2220 696e   "rpm-ostree" in
│ │ │ +001e4650: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001e4660: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001e4670: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ +001e4680: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001e4690: 7320 616e 6420 6e6f 7420 226f 7065 6e73  s and not "opens
│ │ │ +001e46a0: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ +001e46b0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001e46c0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001e46d0: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ +001e46e0: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ +001e46f0: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ +001e4700: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ +001e4710: 696f 6e5f 7479 7065 2069 6e0a 2020 2020  ion_type in.    
│ │ │ +001e4720: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ +001e4730: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ +001e4740: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572  man", "container
│ │ │ +001e4750: 225d 2029 2029 0a20 202d 2027 222f 7372  "] ) ).  - '"/sr
│ │ │ +001e4760: 7622 2069 6e20 616e 7369 626c 655f 6d6f  v" in ansible_mo
│ │ │ +001e4770: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ +001e4780: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ +001e4790: 6c69 7374 270a 2020 7461 6773 3a0a 2020  list'.  tags:.  
│ │ │ +001e47a0: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001e47b0: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001e47c0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001e47d0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001e47e0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001e47f0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001e4800: 5f73 7276 5f6e 6f73 7569 640a 2020 2d20  _srv_nosuid.  - 
│ │ │ +001e4810: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001e4820: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ +001e4830: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20  osuid Option to 
│ │ │ +001e4840: 2f73 7276 3a20 4372 6561 7465 206d 6f75  /srv: Create mou
│ │ │ +001e4850: 6e74 5f69 6e66 6f20 6469 6374 696f 6e61  nt_info dictiona
│ │ │ +001e4860: 7279 2076 6172 6961 626c 6527 0a20 2073  ry variable'.  s
│ │ │ +001e4870: 6574 5f66 6163 743a 0a20 2020 206d 6f75  et_fact:.    mou
│ │ │ +001e4880: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75  nt_info: '{{ mou
│ │ │ +001e4890: 6e74 5f69 6e66 6f7c 6465 6661 756c 7428  nt_info|default(
│ │ │ +001e48a0: 7b7d 297c 636f 6d62 696e 6528 7b69 7465  {})|combine({ite
│ │ │ +001e48b0: 6d2e 303a 2069 7465 6d2e 317d 2920 7d7d  m.0: item.1}) }}
│ │ │ +001e48c0: 270a 2020 7769 7468 5f74 6f67 6574 6865  '.  with_togethe
│ │ │ +001e48d0: 723a 0a20 202d 2027 7b7b 2064 6576 6963  r:.  - '{{ devic
│ │ │ +001e48e0: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ +001e48f0: 6e65 735b 305d 2e73 706c 6974 2829 207c  nes[0].split() |
│ │ │ +001e4900: 206d 6170 2827 276c 6f77 6572 2727 2920   map(''lower'') 
│ │ │ +001e4910: 7c20 6c69 7374 207d 7d27 0a20 202d 2027  | list }}'.  - '
│ │ │ +001e4920: 7b7b 2064 6576 6963 655f 6e61 6d65 2e73  {{ device_name.s
│ │ │ +001e4930: 7464 6f75 745f 6c69 6e65 735b 315d 2e73  tdout_lines[1].s
│ │ │ +001e4940: 706c 6974 2829 207c 206c 6973 7420 7d7d  plit() | list }}
│ │ │ +001e4950: 270a 2020 7768 656e 3a0a 2020 2d20 2820  '.  when:.  - ( 
│ │ │ +001e4960: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ +001e4970: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001e4980: 7061 636b 6167 6573 2061 6e64 2022 7270  packages and "rp
│ │ │ +001e4990: 6d2d 6f73 7472 6565 2220 696e 2061 6e73  m-ostree" in ans
│ │ │ +001e49a0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001e49b0: 6765 730a 2020 2020 616e 6420 2262 6f6f  ges.    and "boo
│ │ │ +001e49c0: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ +001e49d0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001e49e0: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ +001e49f0: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ +001e4a00: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001e4a10: 6765 730a 2020 2020 616e 6420 226f 7374  ges.    and "ost
│ │ │ +001e4a20: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001e4a30: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061  proc_cmdline ) a
│ │ │ +001e4a40: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ +001e4a50: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ +001e4a60: 7479 7065 2069 6e0a 2020 2020 5b22 646f  type in.    ["do
│ │ │ +001e4a70: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ +001e4a80: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ +001e4a90: 2c20 2263 6f6e 7461 696e 6572 225d 2029  , "container"] )
│ │ │ +001e4aa0: 2029 0a20 202d 2027 222f 7372 7622 2069   ).  - '"/srv" i
│ │ │ +001e4ab0: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ +001e4ac0: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ +001e4ad0: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ +001e4ae0: 270a 2020 2d20 6465 7669 6365 5f6e 616d  '.  - device_nam
│ │ │ +001e4af0: 652e 7374 646f 7574 2069 7320 6465 6669  e.stdout is defi
│ │ │ +001e4b00: 6e65 6420 616e 6420 6465 7669 6365 5f6e  ned and device_n
│ │ │ +001e4b10: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ +001e4b20: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ +001e4b30: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ +001e4b40: 6f75 7420 7c20 6c65 6e67 7468 2026 6774  out | length >
│ │ │ +001e4b50: 3b20 3029 0a20 2074 6167 733a 0a20 202d  ; 0).  tags:.  -
│ │ │ +001e4b60: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ +001e4b70: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ +001e4b80: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ +001e4b90: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +001e4ba0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +001e4bb0: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ +001e4bc0: 7372 765f 6e6f 7375 6964 0a20 202d 206e  srv_nosuid.  - n
│ │ │ +001e4bd0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +001e4be0: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ +001e4bf0: 7375 6964 204f 7074 696f 6e20 746f 202f  suid Option to /
│ │ │ +001e4c00: 7372 763a 2049 6620 2f73 7276 206e 6f74  srv: If /srv not
│ │ │ +001e4c10: 206d 6f75 6e74 6564 2c20 6372 6166 7420   mounted, craft 
│ │ │ +001e4c20: 6d6f 756e 745f 696e 666f 206d 616e 7561  mount_info manua
│ │ │ +001e4c30: 6c6c 7927 0a20 2073 6574 5f66 6163 743a  lly'.  set_fact:
│ │ │ +001e4c40: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ +001e4c50: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c   '{{ mount_info|
│ │ │ +001e4c60: 6465 6661 756c 7428 7b7d 297c 636f 6d62  default({})|comb
│ │ │ +001e4c70: 696e 6528 7b69 7465 6d2e 303a 2069 7465  ine({item.0: ite
│ │ │ +001e4c80: 6d2e 317d 2920 7d7d 270a 2020 7769 7468  m.1}) }}'.  with
│ │ │ +001e4c90: 5f74 6f67 6574 6865 723a 0a20 202d 202d  _together:.  - -
│ │ │ +001e4ca0: 2074 6172 6765 740a 2020 2020 2d20 736f   target.    - so
│ │ │ +001e4cb0: 7572 6365 0a20 2020 202d 2066 7374 7970  urce.    - fstyp
│ │ │ +001e4cc0: 650a 2020 2020 2d20 6f70 7469 6f6e 730a  e.    - options.
│ │ │ +001e4cd0: 2020 2d20 2d20 2f73 7276 0a20 2020 202d    - - /srv.    -
│ │ │ +001e4ce0: 2027 270a 2020 2020 2d20 2727 0a20 2020   ''.    - ''.   
│ │ │ +001e4cf0: 202d 2064 6566 6175 6c74 730a 2020 7768   - defaults.  wh
│ │ │ +001e4d00: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ +001e4d10: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +001e4d20: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001e4d30: 6573 2061 6e64 2022 7270 6d2d 6f73 7472  es and "rpm-ostr
│ │ │ +001e4d40: 6565 2220 696e 2061 6e73 6962 6c65 5f66  ee" in ansible_f
│ │ │ +001e4d50: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001e4d60: 2020 616e 6420 2262 6f6f 7463 2220 696e    and "bootc" in
│ │ │ +001e4d70: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001e4d80: 6163 6b61 6765 7320 616e 6420 6e6f 7420  ackages and not 
│ │ │ +001e4d90: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +001e4da0: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +001e4db0: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001e4dc0: 2020 616e 6420 226f 7374 7265 6522 2069    and "ostree" i
│ │ │ +001e4dd0: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ +001e4de0: 6d64 6c69 6e65 2029 2061 6e64 206e 6f74  mdline ) and not
│ │ │ +001e4df0: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +001e4e00: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +001e4e10: 6e0a 2020 2020 5b22 646f 636b 6572 222c  n.    ["docker",
│ │ │ +001e4e20: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ +001e4e30: 2c20 2270 6f64 6d61 6e22 2c20 2263 6f6e  , "podman", "con
│ │ │ +001e4e40: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ +001e4e50: 2027 222f 7372 7622 2069 6e20 616e 7369   '"/srv" in ansi
│ │ │ +001e4e60: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ +001e4e70: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ +001e4e80: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ +001e4e90: 2822 2d2d 6673 7461 6222 207c 206c 656e  ("--fstab" | len
│ │ │ +001e4ea0: 6774 6820 3d3d 2030 290a 2020 2d20 6465  gth == 0).  - de
│ │ │ +001e4eb0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001e4ec0: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ +001e4ed0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001e4ee0: 7574 5f6c 696e 6573 2069 7320 6465 6669  ut_lines is defi
│ │ │ +001e4ef0: 6e65 640a 2020 2d20 2864 6576 6963 655f  ned.  - (device_
│ │ │ +001e4f00: 6e61 6d65 2e73 7464 6f75 7420 7c20 6c65  name.stdout | le
│ │ │ +001e4f10: 6e67 7468 203d 3d20 3029 0a20 2074 6167  ngth == 0).  tag
│ │ │ +001e4f20: 733a 0a20 202d 2063 6f6e 6669 6775 7265  s:.  - configure
│ │ │ +001e4f30: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +001e4f40: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +001e4f50: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +001e4f60: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +001e4f70: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ +001e4f80: 7074 696f 6e5f 7372 765f 6e6f 7375 6964  ption_srv_nosuid
│ │ │ +001e4f90: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +001e4fa0: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ +001e4fb0: 4164 6420 6e6f 7375 6964 204f 7074 696f  Add nosuid Optio
│ │ │ +001e4fc0: 6e20 746f 202f 7372 763a 204d 616b 6520  n to /srv: Make 
│ │ │ +001e4fd0: 7375 7265 206e 6f73 7569 6420 6f70 7469  sure nosuid opti
│ │ │ +001e4fe0: 6f6e 2069 7320 7061 7274 206f 6620 7468  on is part of th
│ │ │ +001e4ff0: 6520 746f 202f 7372 760a 2020 2020 6f70  e to /srv.    op
│ │ │ +001e5000: 7469 6f6e 7327 0a20 2073 6574 5f66 6163  tions'.  set_fac
│ │ │ +001e5010: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66  t:.    mount_inf
│ │ │ +001e5020: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66  o: '{{ mount_inf
│ │ │ +001e5030: 6f20 7c20 636f 6d62 696e 6528 207b 2727  o | combine( {''
│ │ │ +001e5040: 6f70 7469 6f6e 7327 273a 2727 2727 7e28  options'':''''~(
│ │ │ +001e5050: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ +001e5060: 6e73 207c 0a20 2020 2020 2064 6566 6175  ns |.      defau
│ │ │ +001e5070: 6c74 2827 2727 2729 297e 2827 272c 2727  lt(''''))~('',''
│ │ │ +001e5080: 2069 6620 286d 6f75 6e74 5f69 6e66 6f2e   if (mount_info.
│ │ │ +001e5090: 6f70 7469 6f6e 7320 7c20 6465 6661 756c  options | defaul
│ │ │ +001e50a0: 7428 2727 2727 2929 2065 6c73 6520 2727  t('''')) else ''
│ │ │ +001e50b0: 2727 297e 2727 6e6f 7375 6964 2727 0a20  '')~''nosuid''. 
│ │ │ +001e50c0: 2020 2020 207d 2920 7d7d 270a 2020 7768       }) }}'.  wh
│ │ │ +001e50d0: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ +001e50e0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +001e50f0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001e5100: 6573 2061 6e64 2022 7270 6d2d 6f73 7472  es and "rpm-ostr
│ │ │ +001e5110: 6565 2220 696e 2061 6e73 6962 6c65 5f66  ee" in ansible_f
│ │ │ +001e5120: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001e5130: 2020 616e 6420 2262 6f6f 7463 2220 696e    and "bootc" in
│ │ │ +001e5140: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001e5150: 6163 6b61 6765 7320 616e 6420 6e6f 7420  ackages and not 
│ │ │ +001e5160: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +001e5170: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +001e5180: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001e5190: 2020 616e 6420 226f 7374 7265 6522 2069    and "ostree" i
│ │ │ +001e51a0: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ +001e51b0: 6d64 6c69 6e65 2029 2061 6e64 206e 6f74  mdline ) and not
│ │ │ +001e51c0: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +001e51d0: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +001e51e0: 6e0a 2020 2020 5b22 646f 636b 6572 222c  n.    ["docker",
│ │ │ +001e51f0: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ +001e5200: 2c20 2270 6f64 6d61 6e22 2c20 2263 6f6e  , "podman", "con
│ │ │ +001e5210: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ +001e5220: 2027 222f 7372 7622 2069 6e20 616e 7369   '"/srv" in ansi
│ │ │ +001e5230: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ +001e5240: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ +001e5250: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ +001e5260: 6d6f 756e 745f 696e 666f 2069 7320 6465  mount_info is de
│ │ │ +001e5270: 6669 6e65 6420 616e 6420 226e 6f73 7569  fined and "nosui
│ │ │ +001e5280: 6422 206e 6f74 2069 6e20 286d 6f75 6e74  d" not in (mount
│ │ │ +001e5290: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ +001e52a0: 6465 6661 756c 7428 2727 2929 0a20 2074  default('')).  t
│ │ │ +001e52b0: 6167 733a 0a20 202d 2063 6f6e 6669 6775  ags:.  - configu
│ │ │ +001e52c0: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +001e52d0: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +001e52e0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +001e52f0: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +001e5300: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +001e5310: 5f6f 7074 696f 6e5f 7372 765f 6e6f 7375  _option_srv_nosu
│ │ │ +001e5320: 6964 0a20 202d 206e 6f5f 7265 626f 6f74  id.  - no_reboot
│ │ │ +001e5330: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ +001e5340: 2027 4164 6420 6e6f 7375 6964 204f 7074   'Add nosuid Opt
│ │ │ +001e5350: 696f 6e20 746f 202f 7372 763a 2045 6e73  ion to /srv: Ens
│ │ │ +001e5360: 7572 6520 2f73 7276 2069 7320 6d6f 756e  ure /srv is moun
│ │ │ +001e5370: 7465 6420 7769 7468 206e 6f73 7569 6420  ted with nosuid 
│ │ │ +001e5380: 6f70 7469 6f6e 270a 2020 616e 7369 626c  option'.  ansibl
│ │ │ +001e5390: 652e 706f 7369 782e 6d6f 756e 743a 0a20  e.posix.mount:. 
│ │ │ +001e53a0: 2020 2070 6174 683a 202f 7372 760a 2020     path: /srv.  
│ │ │ +001e53b0: 2020 7372 633a 2027 7b7b 206d 6f75 6e74    src: '{{ mount
│ │ │ +001e53c0: 5f69 6e66 6f2e 736f 7572 6365 207c 2064  _info.source | d
│ │ │ +001e53d0: 6566 6175 6c74 2827 2727 2729 207d 7d27  efault('''') }}'
│ │ │ +001e53e0: 0a20 2020 206f 7074 733a 2027 7b7b 206d  .    opts: '{{ m
│ │ │ +001e53f0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ +001e5400: 7320 7c20 6465 6661 756c 7428 2727 2727  s | default(''''
│ │ │ +001e5410: 2920 7d7d 270a 2020 2020 7374 6174 653a  ) }}'.    state:
│ │ │ +001e5420: 206d 6f75 6e74 6564 0a20 2020 2066 7374   mounted.    fst
│ │ │ +001e5430: 7970 653a 2027 7b7b 206d 6f75 6e74 5f69  ype: '{{ mount_i
│ │ │ +001e5440: 6e66 6f2e 6673 7479 7065 207c 2064 6566  nfo.fstype | def
│ │ │ +001e5450: 6175 6c74 2827 2727 2729 207d 7d27 0a20  ault('''') }}'. 
│ │ │ +001e5460: 2072 6567 6973 7465 723a 206d 6f75 6e74   register: mount
│ │ │ +001e5470: 5f72 6573 756c 740a 2020 6661 696c 6564  _result.  failed
│ │ │ +001e5480: 5f77 6865 6e3a 0a20 202d 206d 6f75 6e74  _when:.  - mount
│ │ │ +001e5490: 5f72 6573 756c 7420 6973 2066 6169 6c65  _result is faile
│ │ │ +001e54a0: 640a 2020 2d20 2727 2774 6172 6765 7420  d.  - '''target 
│ │ │ +001e54b0: 6973 2062 7573 7927 2720 6e6f 7420 696e  is busy'' not in
│ │ │ +001e54c0: 2028 6d6f 756e 745f 7265 7375 6c74 2e6d   (mount_result.m
│ │ │ +001e54d0: 7367 207c 2064 6566 6175 6c74 2827 2727  sg | default('''
│ │ │ +001e54e0: 2729 2927 0a20 202d 2027 2727 616c 7265  '))'.  - '''alre
│ │ │ +001e54f0: 6164 7920 6d6f 756e 7465 6427 2720 6e6f  ady mounted'' no
│ │ │ +001e5500: 7420 696e 2028 6d6f 756e 745f 7265 7375  t in (mount_resu
│ │ │ +001e5510: 6c74 2e6d 7367 207c 2064 6566 6175 6c74  lt.msg | default
│ │ │ +001e5520: 2827 2727 2729 2927 0a20 2077 6865 6e3a  (''''))'.  when:
│ │ │ +001e5530: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ +001e5540: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +001e5550: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001e5560: 616e 6420 2272 706d 2d6f 7374 7265 6522  and "rpm-ostree"
│ │ │ +001e5570: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001e5580: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001e5590: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ +001e55a0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001e55b0: 6167 6573 2061 6e64 206e 6f74 2022 6f70  ages and not "op
│ │ │ +001e55c0: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ +001e55d0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001e55e0: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001e55f0: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ +001e5600: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ +001e5610: 696e 6520 2920 616e 6420 6e6f 7420 2820  ine ) and not ( 
│ │ │ +001e5620: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ +001e5630: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20  zation_type in. 
│ │ │ +001e5640: 2020 205b 2264 6f63 6b65 7222 2c20 226c     ["docker", "l
│ │ │ +001e5650: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ +001e5660: 706f 646d 616e 222c 2022 636f 6e74 6169  podman", "contai
│ │ │ +001e5670: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ +001e5680: 2f73 7276 2220 696e 2061 6e73 6962 6c65  /srv" in ansible
│ │ │ +001e5690: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ +001e56a0: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ +001e56b0: 207c 206c 6973 7427 0a20 202d 206d 6f75   | list'.  - mou
│ │ │ +001e56c0: 6e74 5f69 6e66 6f20 6973 2064 6566 696e  nt_info is defin
│ │ │ +001e56d0: 6564 0a20 202d 2028 6465 7669 6365 5f6e  ed.  - (device_n
│ │ │ +001e56e0: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ +001e56f0: 6669 6e65 6420 616e 6420 2864 6576 6963  fined and (devic
│ │ │ +001e5700: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ +001e5710: 6c65 6e67 7468 2026 6774 3b20 3029 2920  length > 0)) 
│ │ │ +001e5720: 6f72 2028 222d 2d66 7374 6162 220a 2020  or ("--fstab".  
│ │ │ +001e5730: 2020 7c20 6c65 6e67 7468 203d 3d20 3029    | length == 0)
│ │ │ +001e5740: 0a20 2074 6167 733a 0a20 202d 2063 6f6e  .  tags:.  - con
│ │ │ +001e5750: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +001e5760: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ +001e5770: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ +001e5780: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ +001e5790: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ +001e57a0: 6f75 6e74 5f6f 7074 696f 6e5f 7372 765f  ount_option_srv_
│ │ │ +001e57b0: 6e6f 7375 6964 0a20 202d 206e 6f5f 7265  nosuid.  - no_re
│ │ │ +001e57c0: 626f 6f74 5f6e 6565 6465 640a 3c2f 636f  boot_needed.
< │ │ │ +001e57e0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +001e57f0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +001e5800: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +001e5810: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +001e5820: 6435 3930 2220 7461 6269 6e64 6578 3d22 d590" tabindex=" │ │ │ +001e5830: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +001e5840: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +001e5850: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +001e5860: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +001e5870: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +001e5880: 6469 6174 696f 6e20 5368 656c 6c20 7363 diation Shell sc │ │ │ +001e5890: 7269 7074 20e2 87b2 3c2f 613e 3c62 723e ript ...
│ │ │ +001e58a0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +001e58d0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Compl │ │ │ +001e43a0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +001e43b0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +001e43d0: 2f74 683e 3c74 643e 6869 6768 3c2f 7464 /th>high
Re │ │ │ +001e43f0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +001e4400: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:configure │ │ │ +001e4430: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Reboot │ │ │ +001e5920: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +001e5930: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
# Re
│ │ │ +001e5950: 6d65 6469 6174 696f 6e20 6973 2061 7070  mediation is app
│ │ │ +001e5960: 6c69 6361 626c 6520 6f6e 6c79 2069 6e20  licable only in 
│ │ │ +001e5970: 6365 7274 6169 6e20 706c 6174 666f 726d  certain platform
│ │ │ +001e5980: 730a 6966 2028 2021 2028 207b 2072 706d  s.if ( ! ( { rpm
│ │ │ +001e5990: 202d 2d71 7569 6574 202d 7120 6b65 726e   --quiet -q kern
│ │ │ +001e59a0: 656c 203b 7d20 2661 6d70 3b26 616d 703b  el ;} &&
│ │ │ +001e59b0: 207b 2072 706d 202d 2d71 7569 6574 202d   { rpm --quiet -
│ │ │ +001e59c0: 7120 7270 6d2d 6f73 7472 6565 203b 7d20  q rpm-ostree ;} 
│ │ │ +001e59d0: 2661 6d70 3b26 616d 703b 207b 2072 706d  && { rpm
│ │ │ +001e59e0: 202d 2d71 7569 6574 202d 7120 626f 6f74   --quiet -q boot
│ │ │ +001e59f0: 6320 3b7d 2026 616d 703b 2661 6d70 3b20  c ;} && 
│ │ │ +001e5a00: 7b20 2120 7270 6d20 2d2d 7175 6965 7420  { ! rpm --quiet 
│ │ │ +001e5a10: 2d71 206f 7065 6e73 6869 6674 2d6b 7562  -q openshift-kub
│ │ │ +001e5a20: 656c 6574 203b 7d20 2661 6d70 3b26 616d  elet ;} &&am
│ │ │ +001e5a30: 703b 2028 5b20 2d66 202f 7275 6e2f 6f73  p; ([ -f /run/os
│ │ │ +001e5a40: 7472 6565 2d62 6f6f 7465 6420 5d20 7c7c  tree-booted ] ||
│ │ │ +001e5a50: 205b 202d 4c20 2f6f 7374 7265 6520 5d29   [ -L /ostree ])
│ │ │ +001e5a60: 2029 2026 616d 703b 2661 6d70 3b20 2120   ) && ! 
│ │ │ +001e5a70: 2820 5b20 2d66 202f 2e64 6f63 6b65 7265  ( [ -f /.dockere
│ │ │ +001e5a80: 6e76 205d 207c 7c20 5b20 2d66 202f 7275  nv ] || [ -f /ru
│ │ │ +001e5a90: 6e2f 2e63 6f6e 7461 696e 6572 656e 7620  n/.containerenv 
│ │ │ +001e5aa0: 5d20 2920 2920 2661 6d70 3b26 616d 703b  ] ) ) &&
│ │ │ +001e5ab0: 207b 2028 2066 696e 646d 6e74 202d 2d6b   { ( findmnt --k
│ │ │ +001e5ac0: 6572 6e65 6c20 222f 7372 7622 2026 6774  ernel "/srv" >
│ │ │ +001e5ad0: 3b20 2f64 6576 2f6e 756c 6c20 7c7c 2066  ; /dev/null || f
│ │ │ +001e5ae0: 696e 646d 6e74 202d 2d66 7374 6162 2022  indmnt --fstab "
│ │ │ +001e5af0: 2f73 7276 2220 2667 743b 202f 6465 762f  /srv" > /dev/
│ │ │ +001e5b00: 6e75 6c6c 2029 3b20 7d3b 2074 6865 6e0a  null ); }; then.
│ │ │ +001e5b10: 0a66 756e 6374 696f 6e20 7065 7266 6f72  .function perfor
│ │ │ +001e5b20: 6d5f 7265 6d65 6469 6174 696f 6e20 7b0a  m_remediation {.
│ │ │ +001e5b30: 0a20 2020 200a 2020 2020 2020 2020 2320  .    .        # 
│ │ │ +001e5b40: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ +001e5b50: 2f73 7276 2068 6173 2074 6f20 6265 2064  /srv has to be d
│ │ │ +001e5b60: 6566 696e 6564 2069 6e20 2f65 7463 2f66  efined in /etc/f
│ │ │ +001e5b70: 7374 6162 0a20 2020 2020 2020 2023 2062  stab.        # b
│ │ │ +001e5b80: 6566 6f72 6520 7468 6973 2072 656d 6564  efore this remed
│ │ │ +001e5b90: 6961 7469 6f6e 2063 616e 2062 6520 6578  iation can be ex
│ │ │ +001e5ba0: 6563 7574 6564 2e20 496e 2063 6173 6520  ecuted. In case 
│ │ │ +001e5bb0: 6974 2069 7320 6e6f 7420 6465 6669 6e65  it is not define
│ │ │ +001e5bc0: 642c 2074 6865 0a20 2020 2020 2020 2023  d, the.        #
│ │ │ +001e5bd0: 2072 656d 6564 6961 7469 6f6e 2061 626f   remediation abo
│ │ │ +001e5be0: 7274 7320 616e 6420 6e6f 2063 6861 6e67  rts and no chang
│ │ │ +001e5bf0: 6573 2072 6567 6172 6469 6e67 2074 6865  es regarding the
│ │ │ +001e5c00: 206d 6f75 6e74 2070 6f69 6e74 2061 7265   mount point are
│ │ │ +001e5c10: 2064 6f6e 652e 0a20 2020 2020 2020 206d   done..        m
│ │ │ +001e5c20: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001e5c30: 5f72 6567 6578 703d 2224 2870 7269 6e74  _regexp="$(print
│ │ │ +001e5c40: 6620 225e 5b5b 3a73 7061 6365 3a5d 5d2a  f "^[[:space:]]*
│ │ │ +001e5c50: 5b5e 235d 2e2a 5b5b 3a73 7061 6365 3a5d  [^#].*[[:space:]
│ │ │ +001e5c60: 5d25 735b 5b3a 7370 6163 653a 5d5d 2220  ]%s[[:space:]]" 
│ │ │ +001e5c70: 222f 7372 7622 2922 0a0a 2020 2020 6772  "/srv")"..    gr
│ │ │ +001e5c80: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ +001e5c90: 5f6d 6174 6368 5f72 6567 6578 7022 202d  _match_regexp" -
│ │ │ +001e5ca0: 7120 2f65 7463 2f66 7374 6162 205c 0a20  q /etc/fstab \. 
│ │ │ +001e5cb0: 2020 2020 2020 207c 7c20 7b20 6563 686f         || { echo
│ │ │ +001e5cc0: 2022 5468 6520 6d6f 756e 7420 706f 696e   "The mount poin
│ │ │ +001e5cd0: 7420 272f 7372 7627 2069 7320 6e6f 7420  t '/srv' is not 
│ │ │ +001e5ce0: 6576 656e 2069 6e20 2f65 7463 2f66 7374  even in /etc/fst
│ │ │ +001e5cf0: 6162 2c20 736f 2077 6520 6361 6e27 7420  ab, so we can't 
│ │ │ +001e5d00: 7365 7420 7570 206d 6f75 6e74 206f 7074  set up mount opt
│ │ │ +001e5d10: 696f 6e73 2220 2667 743b 2661 6d70 3b32  ions" >&2
│ │ │ +001e5d20: 3b0a 2020 2020 2020 2020 2020 2020 2020  ;.              
│ │ │ +001e5d30: 2020 6563 686f 2022 4e6f 7420 7265 6d65    echo "Not reme
│ │ │ +001e5d40: 6469 6174 696e 672c 2062 6563 6175 7365  diating, because
│ │ │ +001e5d50: 2074 6865 7265 2069 7320 6e6f 2072 6563   there is no rec
│ │ │ +001e5d60: 6f72 6420 6f66 202f 7372 7620 696e 202f  ord of /srv in /
│ │ │ +001e5d70: 6574 632f 6673 7461 6222 2026 6774 3b26  etc/fstab" >&
│ │ │ +001e5d80: 616d 703b 323b 2072 6574 7572 6e20 313b  amp;2; return 1;
│ │ │ +001e5d90: 207d 0a20 2020 200a 0a0a 2020 2020 6d6f   }.    ...    mo
│ │ │ +001e5da0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001e5db0: 7265 6765 7870 3d22 2428 7072 696e 7466  regexp="$(printf
│ │ │ +001e5dc0: 2022 5e5b 5b3a 7370 6163 653a 5d5d 2a5b   "^[[:space:]]*[
│ │ │ +001e5dd0: 5e23 5d2e 2a5b 5b3a 7370 6163 653a 5d5d  ^#].*[[:space:]]
│ │ │ +001e5de0: 2573 5b5b 3a73 7061 6365 3a5d 5d22 202f  %s[[:space:]]" /
│ │ │ +001e5df0: 7372 7629 220a 0a20 2020 2023 2049 6620  srv)"..    # If 
│ │ │ +001e5e00: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ +001e5e10: 6973 206e 6f74 2069 6e20 2f65 7463 2f66  is not in /etc/f
│ │ │ +001e5e20: 7374 6162 2c20 6765 7420 7072 6576 696f  stab, get previo
│ │ │ +001e5e30: 7573 206d 6f75 6e74 206f 7074 696f 6e73  us mount options
│ │ │ +001e5e40: 2066 726f 6d20 2f65 7463 2f6d 7461 620a   from /etc/mtab.
│ │ │ +001e5e50: 2020 2020 6966 2021 2067 7265 7020 2d71      if ! grep -q
│ │ │ +001e5e60: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ +001e5e70: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ +001e5e80: 632f 6673 7461 623b 2074 6865 6e0a 2020  c/fstab; then.  
│ │ │ +001e5e90: 2020 2020 2020 2320 7275 6e74 696d 6520        # runtime 
│ │ │ +001e5ea0: 6f70 7473 2077 6974 686f 7574 2073 6f6d  opts without som
│ │ │ +001e5eb0: 6520 6175 746f 6d61 7469 6320 6b65 726e  e automatic kern
│ │ │ +001e5ec0: 656c 2f75 7365 7273 7061 6365 2d61 6464  el/userspace-add
│ │ │ +001e5ed0: 6564 2064 6566 6175 6c74 730a 2020 2020  ed defaults.    
│ │ │ +001e5ee0: 2020 2020 7072 6576 696f 7573 5f6d 6f75      previous_mou
│ │ │ +001e5ef0: 6e74 5f6f 7074 733d 2428 6772 6570 2022  nt_opts=$(grep "
│ │ │ +001e5f00: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ +001e5f10: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ +001e5f20: 6d74 6162 207c 2068 6561 6420 2d31 207c  mtab | head -1 |
│ │ │ +001e5f30: 2020 6177 6b20 277b 7072 696e 7420 2434    awk '{print $4
│ │ │ +001e5f40: 7d27 205c 0a20 2020 2020 2020 2020 2020  }' \.           
│ │ │ +001e5f50: 2020 2020 2020 2020 207c 2073 6564 202d           | sed -
│ │ │ +001e5f60: 4520 2273 2f28 7277 7c64 6566 6175 6c74  E "s/(rw|default
│ │ │ +001e5f70: 737c 7365 636c 6162 656c 7c6e 6f73 7569  s|seclabel|nosui
│ │ │ +001e5f80: 6429 282c 7c24 292f 2f67 3b73 2f2c 242f  d)(,|$)//g;s/,$/
│ │ │ +001e5f90: 2f22 290a 2020 2020 2020 2020 5b20 2224  /").        [ "$
│ │ │ +001e5fa0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001e5fb0: 7074 7322 205d 2026 616d 703b 2661 6d70  pts" ] &&
│ │ │ +001e5fc0: 3b20 7072 6576 696f 7573 5f6d 6f75 6e74  ; previous_mount
│ │ │ +001e5fd0: 5f6f 7074 732b 3d22 2c22 0a20 2020 2020  _opts+=",".     
│ │ │ +001e5fe0: 2020 2023 2049 6e20 6973 6f39 3636 3020     # In iso9660 
│ │ │ +001e5ff0: 6669 6c65 7379 7374 656d 7320 6d74 6162  filesystems mtab
│ │ │ +001e6000: 2063 6f75 6c64 2064 6573 6372 6962 6520   could describe 
│ │ │ +001e6010: 6120 2262 6c6f 636b 7369 7a65 2220 7661  a "blocksize" va
│ │ │ +001e6020: 6c75 652c 2074 6869 7320 7368 6f75 6c64  lue, this should
│ │ │ +001e6030: 2062 6520 7265 666c 6563 7465 6420 696e   be reflected in
│ │ │ +001e6040: 0a20 2020 2020 2020 2023 2066 7374 6162  .        # fstab
│ │ │ +001e6050: 2061 7320 2262 6c6f 636b 222e 2020 5468   as "block".  Th
│ │ │ +001e6060: 6520 6e65 7874 2076 6172 6961 626c 6520  e next variable 
│ │ │ +001e6070: 6973 2074 6f20 7361 7469 7366 7920 7368  is to satisfy sh
│ │ │ +001e6080: 656c 6c63 6865 636b 2053 4332 3035 302e  ellcheck SC2050.
│ │ │ +001e6090: 0a20 2020 2020 2020 2066 735f 7479 7065  .        fs_type
│ │ │ +001e60a0: 3d22 220a 2020 2020 2020 2020 6966 205b  ="".        if [
│ │ │ +001e60b0: 2020 2224 6673 5f74 7970 6522 203d 3d20    "$fs_type" == 
│ │ │ +001e60c0: 2269 736f 3936 3630 2220 5d20 3b20 7468  "iso9660" ] ; th
│ │ │ +001e60d0: 656e 0a20 2020 2020 2020 2020 2020 2070  en.            p
│ │ │ +001e60e0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001e60f0: 7473 3d24 2873 6564 2027 732f 626c 6f63  ts=$(sed 's/bloc
│ │ │ +001e6100: 6b73 697a 653d 2f62 6c6f 636b 3d2f 2720  ksize=/block=/' 
│ │ │ +001e6110: 266c 743b 266c 743b 266c 743b 2022 2470  <<< "$p
│ │ │ +001e6120: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001e6130: 7473 2229 0a20 2020 2020 2020 2066 690a  ts").        fi.
│ │ │ +001e6140: 2020 2020 2020 2020 6563 686f 2022 202f          echo " /
│ │ │ +001e6150: 7372 7620 2064 6566 6175 6c74 732c 247b  srv  defaults,${
│ │ │ +001e6160: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001e6170: 7074 737d 6e6f 7375 6964 2030 2030 2220  pts}nosuid 0 0" 
│ │ │ +001e6180: 2667 743b 2667 743b 202f 6574 632f 6673  >> /etc/fs
│ │ │ +001e6190: 7461 620a 2020 2020 2320 4966 2074 6865  tab.    # If the
│ │ │ +001e61a0: 206d 6f75 6e74 5f6f 7074 206f 7074 696f   mount_opt optio
│ │ │ +001e61b0: 6e20 6973 206e 6f74 2061 6c72 6561 6479  n is not already
│ │ │ +001e61c0: 2069 6e20 7468 6520 6d6f 756e 7420 706f   in the mount po
│ │ │ +001e61d0: 696e 7427 7320 2f65 7463 2f66 7374 6162  int's /etc/fstab
│ │ │ +001e61e0: 2065 6e74 7279 2c20 6164 6420 6974 0a20   entry, add it. 
│ │ │ +001e61f0: 2020 2065 6c69 6620 2120 6772 6570 2022     elif ! grep "
│ │ │ +001e6200: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ +001e6210: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ +001e6220: 6673 7461 6220 7c20 6772 6570 202d 7120  fstab | grep -q 
│ │ │ +001e6230: 226e 6f73 7569 6422 3b20 7468 656e 0a20  "nosuid"; then. 
│ │ │ +001e6240: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ +001e6250: 6d6f 756e 745f 6f70 7473 3d24 2867 7265  mount_opts=$(gre
│ │ │ +001e6260: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ +001e6270: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ +001e6280: 7463 2f66 7374 6162 207c 2061 776b 2027  tc/fstab | awk '
│ │ │ +001e6290: 7b70 7269 6e74 2024 347d 2729 0a20 2020  {print $4}').   
│ │ │ +001e62a0: 2020 2020 2073 6564 202d 6920 2273 7c5c       sed -i "s|\
│ │ │ +001e62b0: 2824 7b6d 6f75 6e74 5f70 6f69 6e74 5f6d  (${mount_point_m
│ │ │ +001e62c0: 6174 6368 5f72 6567 6578 707d 2e2a 247b  atch_regexp}.*${
│ │ │ +001e62d0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001e62e0: 7074 737d 5c29 7c5c 312c 6e6f 7375 6964  pts}\)|\1,nosuid
│ │ │ +001e62f0: 7c22 202f 6574 632f 6673 7461 620a 2020  |" /etc/fstab.  
│ │ │ +001e6300: 2020 6669 0a0a 0a20 2020 2069 6620 6d6b    fi...    if mk
│ │ │ +001e6310: 6469 7220 2d70 2022 2f73 7276 223b 2074  dir -p "/srv"; t
│ │ │ +001e6320: 6865 6e0a 2020 2020 2020 2020 6966 206d  hen.        if m
│ │ │ +001e6330: 6f75 6e74 706f 696e 7420 2d71 2022 2f73  ountpoint -q "/s
│ │ │ +001e6340: 7276 223b 2074 6865 6e0a 2020 2020 2020  rv"; then.      
│ │ │ +001e6350: 2020 2020 2020 6d6f 756e 7420 2d6f 2072        mount -o r
│ │ │ +001e6360: 656d 6f75 6e74 202d 2d74 6172 6765 7420  emount --target 
│ │ │ +001e6370: 222f 7372 7622 0a20 2020 2020 2020 2066  "/srv".        f
│ │ │ +001e6380: 690a 2020 2020 6669 0a7d 0a0a 7065 7266  i.    fi.}..perf
│ │ │ +001e6390: 6f72 6d5f 7265 6d65 6469 6174 696f 6e0a  orm_remediation.
│ │ │ +001e63a0: 0a65 6c73 650a 2020 2020 2667 743b 2661  .else.    >&a
│ │ │ +001e63b0: 6d70 3b32 2065 6368 6f20 2752 656d 6564  mp;2 echo 'Remed
│ │ │ +001e63c0: 6961 7469 6f6e 2069 7320 6e6f 7420 6170  iation is not ap
│ │ │ +001e63d0: 706c 6963 6162 6c65 2c20 6e6f 7468 696e  plicable, nothin
│ │ │ +001e63e0: 6720 7761 7320 646f 6e65 270a 6669 0a3c  g was done'.fi.<
│ │ │ +001e63f0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +001e64a0: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ +001e64b0: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ +001e64c0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ +001e6590: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +001e65a0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +001e65f0: 0a70 6172 7420 2f73 7276 202d 2d6d 6f75  .part /srv --mou
│ │ │ +001e6600: 6e74 6f70 7469 6f6e 733d 226e 6f73 7569  ntoptions="nosui
│ │ │ +001e6610: 6422 0a3c 2f63 6f64 653e 3c2f 7072 653e  d".
│ │ │ 001e6620: 3c2f 6469 763e 3c2f 6469 763e 3c2f 7464 │ │ │ 001e6650: 3c74 7220 6461 7461 2d74 742d 6964 3d22 Rem │ │ │ -001e76d0: 6564 6961 7469 6f6e 2041 6e61 636f 6e64 ediation Anacond │ │ │ -001e76e0: 6120 736e 6970 7065 7420 e287 b23c 2f61 a snippet ...
Complexity:low
Disrup │ │ │ +001e6570: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6869 tion:hi │ │ │ +001e6580: 6768 3c2f 7464 3e3c 2f74 723e 3c74 723e gh
Reboot:false
Strat │ │ │ +001e65c0: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +001e65d0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ -001e7780: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -001e7790: 3c74 723e 3c74 683e 4469 7372 7570 7469 Reboot:false
.p
│ │ │ -001e7820: 6172 7420 2f74 6d70 202d 2d6d 6f75 6e74  art /tmp --mount
│ │ │ -001e7830: 6f70 7469 6f6e 733d 226e 6f65 7865 6322  options="noexec"
│ │ │ -001e7840: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Ans │ │ │ -001e7900: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ -001e7910: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
C │ │ │ -001e7770: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -001e77a0: 6f6e 3a3c 2f74 683e 3c74 643e 6869 6768 on:high │ │ │ -001e77b0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -001e77f0: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -001e7800: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexity:< │ │ │ -001e7a00: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
low
Disru │ │ │ -001e79c0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e68 ption:h │ │ │ -001e79d0: 6967 683c 2f74 643e 3c2f 7472 3e3c 7472 igh
Reboot:false
Stra │ │ │ -001e7a10: 7465 6779 3a3c 2f74 683e 3c74 643e 636f tegy:co │ │ │ -001e7a20: 6e66 6967 7572 653c 2f74 643e 3c2f 7472 nfigure
- name: Gath
│ │ │ -001e7a50: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ -001e7a60: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ -001e7a70: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ -001e7a80: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ -001e7a90: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001e7aa0: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ -001e7ab0: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ -001e7ac0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001e7ad0: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ -001e7ae0: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ -001e7af0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001e7b00: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ -001e7b10: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ -001e7b20: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -001e7b30: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -001e7b40: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -001e7b50: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -001e7b60: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001e7b70: 6d6f 756e 745f 6f70 7469 6f6e 5f74 6d70  mount_option_tmp
│ │ │ -001e7b80: 5f6e 6f65 7865 630a 2020 2d20 6e6f 5f72  _noexec.  - no_r
│ │ │ -001e7b90: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ -001e7ba0: 6e61 6d65 3a20 2741 6464 206e 6f65 7865  name: 'Add noexe
│ │ │ -001e7bb0: 6320 4f70 7469 6f6e 2074 6f20 2f74 6d70  c Option to /tmp
│ │ │ -001e7bc0: 3a20 4368 6563 6b20 696e 666f 726d 6174  : Check informat
│ │ │ -001e7bd0: 696f 6e20 6173 736f 6369 6174 6564 2074  ion associated t
│ │ │ -001e7be0: 6f20 6d6f 756e 7470 6f69 6e74 270a 2020  o mountpoint'.  
│ │ │ -001e7bf0: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -001e7c00: 636f 6d6d 616e 643a 2066 696e 646d 6e74  command: findmnt
│ │ │ -001e7c10: 202d 2d66 7374 6162 2027 2f74 6d70 270a   --fstab '/tmp'.
│ │ │ -001e7c20: 2020 7265 6769 7374 6572 3a20 6465 7669    register: devi
│ │ │ -001e7c30: 6365 5f6e 616d 650a 2020 6661 696c 6564  ce_name.  failed
│ │ │ -001e7c40: 5f77 6865 6e3a 2064 6576 6963 655f 6e61  _when: device_na
│ │ │ -001e7c50: 6d65 2e72 6320 2667 743b 2031 0a20 2063  me.rc > 1.  c
│ │ │ -001e7c60: 6861 6e67 6564 5f77 6865 6e3a 2066 616c  hanged_when: fal
│ │ │ -001e7c70: 7365 0a20 2063 6865 636b 5f6d 6f64 653a  se.  check_mode:
│ │ │ -001e7c80: 2066 616c 7365 0a20 2077 6865 6e3a 0a20   false.  when:. 
│ │ │ -001e7c90: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ -001e7ca0: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -001e7cb0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001e7cc0: 6420 2272 706d 2d6f 7374 7265 6522 2069  d "rpm-ostree" i
│ │ │ -001e7cd0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001e7ce0: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001e7cf0: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ -001e7d00: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001e7d10: 6573 2061 6e64 206e 6f74 2022 6f70 656e  es and not "open
│ │ │ -001e7d20: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ -001e7d30: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001e7d40: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001e7d50: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ -001e7d60: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ -001e7d70: 6520 2920 616e 6420 6e6f 7420 2820 616e  e ) and not ( an
│ │ │ -001e7d80: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ -001e7d90: 7469 6f6e 5f74 7970 6520 696e 0a20 2020  tion_type in.   
│ │ │ -001e7da0: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ -001e7db0: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ -001e7dc0: 646d 616e 222c 2022 636f 6e74 6169 6e65  dman", "containe
│ │ │ -001e7dd0: 7222 5d20 2920 290a 2020 2d20 2722 2f74  r"] ) ).  - '"/t
│ │ │ -001e7de0: 6d70 2220 696e 2061 6e73 6962 6c65 5f6d  mp" in ansible_m
│ │ │ -001e7df0: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ -001e7e00: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ -001e7e10: 206c 6973 7427 0a20 2074 6167 733a 0a20   list'.  tags:. 
│ │ │ -001e7e20: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001e7e30: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ -001e7e40: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ -001e7e50: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -001e7e60: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001e7e70: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ -001e7e80: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001e7e90: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ -001e7ea0: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ -001e7eb0: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -001e7ec0: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -001e7ed0: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -001e7ee0: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -001e7ef0: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -001e7f00: 6f75 6e74 5f6f 7074 696f 6e5f 746d 705f  ount_option_tmp_
│ │ │ -001e7f10: 6e6f 6578 6563 0a20 202d 206e 6f5f 7265  noexec.  - no_re
│ │ │ -001e7f20: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -001e7f30: 616d 653a 2027 4164 6420 6e6f 6578 6563  ame: 'Add noexec
│ │ │ -001e7f40: 204f 7074 696f 6e20 746f 202f 746d 703a   Option to /tmp:
│ │ │ -001e7f50: 2043 7265 6174 6520 6d6f 756e 745f 696e   Create mount_in
│ │ │ -001e7f60: 666f 2064 6963 7469 6f6e 6172 7920 7661  fo dictionary va
│ │ │ -001e7f70: 7269 6162 6c65 270a 2020 7365 745f 6661  riable'.  set_fa
│ │ │ -001e7f80: 6374 3a0a 2020 2020 6d6f 756e 745f 696e  ct:.    mount_in
│ │ │ -001e7f90: 666f 3a20 277b 7b20 6d6f 756e 745f 696e  fo: '{{ mount_in
│ │ │ -001e7fa0: 666f 7c64 6566 6175 6c74 287b 7d29 7c63  fo|default({})|c
│ │ │ -001e7fb0: 6f6d 6269 6e65 287b 6974 656d 2e30 3a20  ombine({item.0: 
│ │ │ -001e7fc0: 6974 656d 2e31 7d29 207d 7d27 0a20 2077  item.1}) }}'.  w
│ │ │ -001e7fd0: 6974 685f 746f 6765 7468 6572 3a0a 2020  ith_together:.  
│ │ │ -001e7fe0: 2d20 277b 7b20 6465 7669 6365 5f6e 616d  - '{{ device_nam
│ │ │ -001e7ff0: 652e 7374 646f 7574 5f6c 696e 6573 5b30  e.stdout_lines[0
│ │ │ -001e8000: 5d2e 7370 6c69 7428 2920 7c20 6d61 7028  ].split() | map(
│ │ │ -001e8010: 2727 6c6f 7765 7227 2729 207c 206c 6973  ''lower'') | lis
│ │ │ -001e8020: 7420 7d7d 270a 2020 2d20 277b 7b20 6465  t }}'.  - '{{ de
│ │ │ -001e8030: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001e8040: 5f6c 696e 6573 5b31 5d2e 7370 6c69 7428  _lines[1].split(
│ │ │ -001e8050: 2920 7c20 6c69 7374 207d 7d27 0a20 2077  ) | list }}'.  w
│ │ │ -001e8060: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ -001e8070: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -001e8080: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001e8090: 6765 7320 616e 6420 2272 706d 2d6f 7374  ges and "rpm-ost
│ │ │ -001e80a0: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -001e80b0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -001e80c0: 2020 2061 6e64 2022 626f 6f74 6322 2069     and "bootc" i
│ │ │ -001e80d0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001e80e0: 7061 636b 6167 6573 2061 6e64 206e 6f74  packages and not
│ │ │ -001e80f0: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ -001e8100: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ -001e8110: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -001e8120: 2020 2061 6e64 2022 6f73 7472 6565 2220     and "ostree" 
│ │ │ -001e8130: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ -001e8140: 636d 646c 696e 6520 2920 616e 6420 6e6f  cmdline ) and no
│ │ │ -001e8150: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ -001e8160: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ -001e8170: 696e 0a20 2020 205b 2264 6f63 6b65 7222  in.    ["docker"
│ │ │ -001e8180: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ -001e8190: 222c 2022 706f 646d 616e 222c 2022 636f  ", "podman", "co
│ │ │ -001e81a0: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ -001e81b0: 2d20 2722 2f74 6d70 2220 696e 2061 6e73  - '"/tmp" in ans
│ │ │ -001e81c0: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ -001e81d0: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ -001e81e0: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ -001e81f0: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ -001e8200: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ -001e8210: 6e64 2064 6576 6963 655f 6e61 6d65 2e73  nd device_name.s
│ │ │ -001e8220: 7464 6f75 745f 6c69 6e65 7320 6973 2064  tdout_lines is d
│ │ │ -001e8230: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ -001e8240: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ -001e8250: 206c 656e 6774 6820 2667 743b 2030 290a   length > 0).
│ │ │ -001e8260: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -001e8270: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ -001e8280: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001e8290: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ -001e82a0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -001e82b0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001e82c0: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -001e82d0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ -001e82e0: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ -001e82f0: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ -001e8300: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001e8310: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001e8320: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001e8330: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001e8340: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001e8350: 7469 6f6e 5f74 6d70 5f6e 6f65 7865 630a  tion_tmp_noexec.
│ │ │ -001e8360: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001e8370: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ -001e8380: 6464 206e 6f65 7865 6320 4f70 7469 6f6e  dd noexec Option
│ │ │ -001e8390: 2074 6f20 2f74 6d70 3a20 4966 202f 746d   to /tmp: If /tm
│ │ │ -001e83a0: 7020 6e6f 7420 6d6f 756e 7465 642c 2063  p not mounted, c
│ │ │ -001e83b0: 7261 6674 206d 6f75 6e74 5f69 6e66 6f20  raft mount_info 
│ │ │ -001e83c0: 6d61 6e75 616c 6c79 270a 2020 7365 745f  manually'.  set_
│ │ │ -001e83d0: 6661 6374 3a0a 2020 2020 6d6f 756e 745f  fact:.    mount_
│ │ │ -001e83e0: 696e 666f 3a20 277b 7b20 6d6f 756e 745f  info: '{{ mount_
│ │ │ -001e83f0: 696e 666f 7c64 6566 6175 6c74 287b 7d29  info|default({})
│ │ │ -001e8400: 7c63 6f6d 6269 6e65 287b 6974 656d 2e30  |combine({item.0
│ │ │ -001e8410: 3a20 6974 656d 2e31 7d29 207d 7d27 0a20  : item.1}) }}'. 
│ │ │ -001e8420: 2077 6974 685f 746f 6765 7468 6572 3a0a   with_together:.
│ │ │ -001e8430: 2020 2d20 2d20 7461 7267 6574 0a20 2020    - - target.   
│ │ │ -001e8440: 202d 2073 6f75 7263 650a 2020 2020 2d20   - source.    - 
│ │ │ -001e8450: 6673 7479 7065 0a20 2020 202d 206f 7074  fstype.    - opt
│ │ │ -001e8460: 696f 6e73 0a20 202d 202d 202f 746d 700a  ions.  - - /tmp.
│ │ │ -001e8470: 2020 2020 2d20 2727 0a20 2020 202d 2027      - ''.    - '
│ │ │ -001e8480: 270a 2020 2020 2d20 6465 6661 756c 7473  '.    - defaults
│ │ │ -001e8490: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ -001e84a0: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ -001e84b0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001e84c0: 6163 6b61 6765 7320 616e 6420 2272 706d  ackages and "rpm
│ │ │ -001e84d0: 2d6f 7374 7265 6522 2069 6e20 616e 7369  -ostree" in ansi
│ │ │ -001e84e0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001e84f0: 6573 0a20 2020 2061 6e64 2022 626f 6f74  es.    and "boot
│ │ │ -001e8500: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ -001e8510: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001e8520: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ -001e8530: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ -001e8540: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001e8550: 6573 0a20 2020 2061 6e64 2022 6f73 7472  es.    and "ostr
│ │ │ -001e8560: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ -001e8570: 726f 635f 636d 646c 696e 6520 2920 616e  roc_cmdline ) an
│ │ │ -001e8580: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ -001e8590: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ -001e85a0: 7970 6520 696e 0a20 2020 205b 2264 6f63  ype in.    ["doc
│ │ │ -001e85b0: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ -001e85c0: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ -001e85d0: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ -001e85e0: 290a 2020 2d20 2722 2f74 6d70 2220 696e  ).  - '"/tmp" in
│ │ │ -001e85f0: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ -001e8600: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ -001e8610: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ -001e8620: 0a20 202d 2028 222d 2d66 7374 6162 2220  .  - ("--fstab" 
│ │ │ -001e8630: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ -001e8640: 202d 2064 6576 6963 655f 6e61 6d65 2e73   - device_name.s
│ │ │ -001e8650: 7464 6f75 7420 6973 2064 6566 696e 6564  tdout is defined
│ │ │ -001e8660: 2061 6e64 2064 6576 6963 655f 6e61 6d65   and device_name
│ │ │ -001e8670: 2e73 7464 6f75 745f 6c69 6e65 7320 6973  .stdout_lines is
│ │ │ -001e8680: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ -001e8690: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001e86a0: 207c 206c 656e 6774 6820 3d3d 2030 290a   | length == 0).
│ │ │ -001e86b0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -001e86c0: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ -001e86d0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001e86e0: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ -001e86f0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -001e8700: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001e8710: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -001e8720: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ -001e8730: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ -001e8740: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ -001e8750: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001e8760: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001e8770: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001e8780: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001e8790: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001e87a0: 7469 6f6e 5f74 6d70 5f6e 6f65 7865 630a  tion_tmp_noexec.
│ │ │ -001e87b0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001e87c0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ -001e87d0: 6464 206e 6f65 7865 6320 4f70 7469 6f6e  dd noexec Option
│ │ │ -001e87e0: 2074 6f20 2f74 6d70 3a20 4d61 6b65 2073   to /tmp: Make s
│ │ │ -001e87f0: 7572 6520 6e6f 6578 6563 206f 7074 696f  ure noexec optio
│ │ │ -001e8800: 6e20 6973 2070 6172 7420 6f66 2074 6865  n is part of the
│ │ │ -001e8810: 2074 6f20 2f74 6d70 0a20 2020 206f 7074   to /tmp.    opt
│ │ │ -001e8820: 696f 6e73 270a 2020 7365 745f 6661 6374  ions'.  set_fact
│ │ │ -001e8830: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ -001e8840: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001e8850: 207c 2063 6f6d 6269 6e65 2820 7b27 276f   | combine( {''o
│ │ │ -001e8860: 7074 696f 6e73 2727 3a27 2727 277e 286d  ptions'':''''~(m
│ │ │ -001e8870: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -001e8880: 7320 7c0a 2020 2020 2020 6465 6661 756c  s |.      defaul
│ │ │ -001e8890: 7428 2727 2727 2929 7e28 2727 2c27 2720  t(''''))~('','' 
│ │ │ -001e88a0: 6966 2028 6d6f 756e 745f 696e 666f 2e6f  if (mount_info.o
│ │ │ -001e88b0: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ -001e88c0: 2827 2727 2729 2920 656c 7365 2027 2727  ('''')) else '''
│ │ │ -001e88d0: 2729 7e27 276e 6f65 7865 6327 270a 2020  ')~''noexec''.  
│ │ │ -001e88e0: 2020 2020 7d29 207d 7d27 0a20 2077 6865      }) }}'.  whe
│ │ │ -001e88f0: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ -001e8900: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -001e8910: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001e8920: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ -001e8930: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ -001e8940: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001e8950: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -001e8960: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001e8970: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ -001e8980: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001e8990: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001e89a0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001e89b0: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -001e89c0: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -001e89d0: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ -001e89e0: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001e89f0: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001e8a00: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ -001e8a10: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -001e8a20: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ -001e8a30: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001e8a40: 2722 2f74 6d70 2220 696e 2061 6e73 6962  '"/tmp" in ansib
│ │ │ -001e8a50: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ -001e8a60: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ -001e8a70: 2229 207c 206c 6973 7427 0a20 202d 206d  ") | list'.  - m
│ │ │ -001e8a80: 6f75 6e74 5f69 6e66 6f20 6973 2064 6566  ount_info is def
│ │ │ -001e8a90: 696e 6564 2061 6e64 2022 6e6f 6578 6563  ined and "noexec
│ │ │ -001e8aa0: 2220 6e6f 7420 696e 2028 6d6f 756e 745f  " not in (mount_
│ │ │ -001e8ab0: 696e 666f 2e6f 7074 696f 6e73 207c 2064  info.options | d
│ │ │ -001e8ac0: 6566 6175 6c74 2827 2729 290a 2020 7461  efault('')).  ta
│ │ │ -001e8ad0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -001e8ae0: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ -001e8af0: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ -001e8b00: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001e8b10: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ -001e8b20: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ -001e8b30: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001e8b40: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ -001e8b50: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ -001e8b60: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -001e8b70: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ -001e8b80: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -001e8b90: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001e8ba0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -001e8bb0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ -001e8bc0: 5f74 6d70 5f6e 6f65 7865 630a 2020 2d20  _tmp_noexec.  - 
│ │ │ -001e8bd0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001e8be0: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ -001e8bf0: 6f65 7865 6320 4f70 7469 6f6e 2074 6f20  oexec Option to 
│ │ │ -001e8c00: 2f74 6d70 3a20 456e 7375 7265 202f 746d  /tmp: Ensure /tm
│ │ │ -001e8c10: 7020 6973 206d 6f75 6e74 6564 2077 6974  p is mounted wit
│ │ │ -001e8c20: 6820 6e6f 6578 6563 206f 7074 696f 6e27  h noexec option'
│ │ │ -001e8c30: 0a20 2061 6e73 6962 6c65 2e70 6f73 6978  .  ansible.posix
│ │ │ -001e8c40: 2e6d 6f75 6e74 3a0a 2020 2020 7061 7468  .mount:.    path
│ │ │ -001e8c50: 3a20 2f74 6d70 0a20 2020 2073 7263 3a20  : /tmp.    src: 
│ │ │ -001e8c60: 277b 7b20 6d6f 756e 745f 696e 666f 2e73  '{{ mount_info.s
│ │ │ -001e8c70: 6f75 7263 6520 7c20 6465 6661 756c 7428  ource | default(
│ │ │ -001e8c80: 2727 2727 2920 7d7d 270a 2020 2020 6f70  '''') }}'.    op
│ │ │ -001e8c90: 7473 3a20 277b 7b20 6d6f 756e 745f 696e  ts: '{{ mount_in
│ │ │ -001e8ca0: 666f 2e6f 7074 696f 6e73 207c 2064 6566  fo.options | def
│ │ │ -001e8cb0: 6175 6c74 2827 2727 2729 207d 7d27 0a20  ault('''') }}'. 
│ │ │ -001e8cc0: 2020 2073 7461 7465 3a20 6d6f 756e 7465     state: mounte
│ │ │ -001e8cd0: 640a 2020 2020 6673 7479 7065 3a20 277b  d.    fstype: '{
│ │ │ -001e8ce0: 7b20 6d6f 756e 745f 696e 666f 2e66 7374  { mount_info.fst
│ │ │ -001e8cf0: 7970 6520 7c20 6465 6661 756c 7428 2727  ype | default(''
│ │ │ -001e8d00: 2727 2920 7d7d 270a 2020 7265 6769 7374  '') }}'.  regist
│ │ │ -001e8d10: 6572 3a20 6d6f 756e 745f 7265 7375 6c74  er: mount_result
│ │ │ -001e8d20: 0a20 2066 6169 6c65 645f 7768 656e 3a0a  .  failed_when:.
│ │ │ -001e8d30: 2020 2d20 6d6f 756e 745f 7265 7375 6c74    - mount_result
│ │ │ -001e8d40: 2069 7320 6661 696c 6564 0a20 202d 2027   is failed.  - '
│ │ │ -001e8d50: 2727 7461 7267 6574 2069 7320 6275 7379  ''target is busy
│ │ │ -001e8d60: 2727 206e 6f74 2069 6e20 286d 6f75 6e74  '' not in (mount
│ │ │ -001e8d70: 5f72 6573 756c 742e 6d73 6720 7c20 6465  _result.msg | de
│ │ │ -001e8d80: 6661 756c 7428 2727 2727 2929 270a 2020  fault(''''))'.  
│ │ │ -001e8d90: 2d20 2727 2761 6c72 6561 6479 206d 6f75  - '''already mou
│ │ │ -001e8da0: 6e74 6564 2727 206e 6f74 2069 6e20 286d  nted'' not in (m
│ │ │ -001e8db0: 6f75 6e74 5f72 6573 756c 742e 6d73 6720  ount_result.msg 
│ │ │ -001e8dc0: 7c20 6465 6661 756c 7428 2727 2727 2929  | default(''''))
│ │ │ -001e8dd0: 270a 2020 7768 656e 3a0a 2020 2d20 2820  '.  when:.  - ( 
│ │ │ -001e8de0: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ -001e8df0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001e8e00: 7061 636b 6167 6573 2061 6e64 2022 7270  packages and "rp
│ │ │ -001e8e10: 6d2d 6f73 7472 6565 2220 696e 2061 6e73  m-ostree" in ans
│ │ │ -001e8e20: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001e8e30: 6765 730a 2020 2020 616e 6420 2262 6f6f  ges.    and "boo
│ │ │ -001e8e40: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ -001e8e50: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001e8e60: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ -001e8e70: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ -001e8e80: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001e8e90: 6765 730a 2020 2020 616e 6420 226f 7374  ges.    and "ost
│ │ │ -001e8ea0: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -001e8eb0: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061  proc_cmdline ) a
│ │ │ -001e8ec0: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ -001e8ed0: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ -001e8ee0: 7479 7065 2069 6e0a 2020 2020 5b22 646f  type in.    ["do
│ │ │ -001e8ef0: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ -001e8f00: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ -001e8f10: 2c20 2263 6f6e 7461 696e 6572 225d 2029  , "container"] )
│ │ │ -001e8f20: 2029 0a20 202d 2027 222f 746d 7022 2069   ).  - '"/tmp" i
│ │ │ -001e8f30: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ -001e8f40: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ -001e8f50: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ -001e8f60: 270a 2020 2d20 6d6f 756e 745f 696e 666f  '.  - mount_info
│ │ │ -001e8f70: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ -001e8f80: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ -001e8f90: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ -001e8fa0: 6e64 2028 6465 7669 6365 5f6e 616d 652e  nd (device_name.
│ │ │ -001e8fb0: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ -001e8fc0: 2667 743b 2030 2929 206f 7220 2822 2d2d  > 0)) or ("--
│ │ │ -001e8fd0: 6673 7461 6222 0a20 2020 207c 206c 656e  fstab".    | len
│ │ │ -001e8fe0: 6774 6820 3d3d 2030 290a 2020 7461 6773  gth == 0).  tags
│ │ │ -001e8ff0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -001e9000: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ -001e9010: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ -001e9020: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001e9030: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ -001e9040: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ -001e9050: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001e9060: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ -001e9070: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ -001e9080: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ -001e9090: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ -001e90a0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ -001e90b0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ -001e90c0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -001e90d0: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f74  - mount_option_t
│ │ │ -001e90e0: 6d70 5f6e 6f65 7865 630a 2020 2d20 6e6f  mp_noexec.  - no
│ │ │ -001e90f0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a3c  _reboot_needed.<
│ │ │ -001e9100: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -001e91b0: 656d 6564 6961 7469 6f6e 2053 6865 6c6c emediation Shell │ │ │ -001e91c0: 2073 6372 6970 7420 e287 b23c 2f61 3e3c script ...< │ │ │ -001e91d0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
#
│ │ │ -001e9280: 2052 656d 6564 6961 7469 6f6e 2069 7320   Remediation is 
│ │ │ -001e9290: 6170 706c 6963 6162 6c65 206f 6e6c 7920  applicable only 
│ │ │ -001e92a0: 696e 2063 6572 7461 696e 2070 6c61 7466  in certain platf
│ │ │ -001e92b0: 6f72 6d73 0a69 6620 2820 2120 2820 7b20  orms.if ( ! ( { 
│ │ │ -001e92c0: 7270 6d20 2d2d 7175 6965 7420 2d71 206b  rpm --quiet -q k
│ │ │ -001e92d0: 6572 6e65 6c20 3b7d 2026 616d 703b 2661  ernel ;} &&a
│ │ │ -001e92e0: 6d70 3b20 7b20 7270 6d20 2d2d 7175 6965  mp; { rpm --quie
│ │ │ -001e92f0: 7420 2d71 2072 706d 2d6f 7374 7265 6520  t -q rpm-ostree 
│ │ │ -001e9300: 3b7d 2026 616d 703b 2661 6d70 3b20 7b20  ;} && { 
│ │ │ -001e9310: 7270 6d20 2d2d 7175 6965 7420 2d71 2062  rpm --quiet -q b
│ │ │ -001e9320: 6f6f 7463 203b 7d20 2661 6d70 3b26 616d  ootc ;} &&am
│ │ │ -001e9330: 703b 207b 2021 2072 706d 202d 2d71 7569  p; { ! rpm --qui
│ │ │ -001e9340: 6574 202d 7120 6f70 656e 7368 6966 742d  et -q openshift-
│ │ │ -001e9350: 6b75 6265 6c65 7420 3b7d 2026 616d 703b  kubelet ;} &
│ │ │ -001e9360: 2661 6d70 3b20 285b 202d 6620 2f72 756e  & ([ -f /run
│ │ │ -001e9370: 2f6f 7374 7265 652d 626f 6f74 6564 205d  /ostree-booted ]
│ │ │ -001e9380: 207c 7c20 5b20 2d4c 202f 6f73 7472 6565   || [ -L /ostree
│ │ │ -001e9390: 205d 2920 2920 2661 6d70 3b26 616d 703b   ]) ) &&
│ │ │ -001e93a0: 2021 2028 205b 202d 6620 2f2e 646f 636b   ! ( [ -f /.dock
│ │ │ -001e93b0: 6572 656e 7620 5d20 7c7c 205b 202d 6620  erenv ] || [ -f 
│ │ │ -001e93c0: 2f72 756e 2f2e 636f 6e74 6169 6e65 7265  /run/.containere
│ │ │ -001e93d0: 6e76 205d 2029 2029 2026 616d 703b 2661  nv ] ) ) &&a
│ │ │ -001e93e0: 6d70 3b20 7b20 2820 6669 6e64 6d6e 7420  mp; { ( findmnt 
│ │ │ -001e93f0: 2d2d 6b65 726e 656c 2022 2f74 6d70 2220  --kernel "/tmp" 
│ │ │ -001e9400: 2667 743b 202f 6465 762f 6e75 6c6c 207c  > /dev/null |
│ │ │ -001e9410: 7c20 6669 6e64 6d6e 7420 2d2d 6673 7461  | findmnt --fsta
│ │ │ -001e9420: 6220 222f 746d 7022 2026 6774 3b20 2f64  b "/tmp" > /d
│ │ │ -001e9430: 6576 2f6e 756c 6c20 293b 207d 3b20 7468  ev/null ); }; th
│ │ │ -001e9440: 656e 0a0a 6675 6e63 7469 6f6e 2070 6572  en..function per
│ │ │ -001e9450: 666f 726d 5f72 656d 6564 6961 7469 6f6e  form_remediation
│ │ │ -001e9460: 207b 0a0a 2020 2020 0a20 2020 2020 2020   {..    .       
│ │ │ -001e9470: 2023 2074 6865 206d 6f75 6e74 2070 6f69   # the mount poi
│ │ │ -001e9480: 6e74 202f 746d 7020 6861 7320 746f 2062  nt /tmp has to b
│ │ │ -001e9490: 6520 6465 6669 6e65 6420 696e 202f 6574  e defined in /et
│ │ │ -001e94a0: 632f 6673 7461 620a 2020 2020 2020 2020  c/fstab.        
│ │ │ -001e94b0: 2320 6265 666f 7265 2074 6869 7320 7265  # before this re
│ │ │ -001e94c0: 6d65 6469 6174 696f 6e20 6361 6e20 6265  mediation can be
│ │ │ -001e94d0: 2065 7865 6375 7465 642e 2049 6e20 6361   executed. In ca
│ │ │ -001e94e0: 7365 2069 7420 6973 206e 6f74 2064 6566  se it is not def
│ │ │ -001e94f0: 696e 6564 2c20 7468 650a 2020 2020 2020  ined, the.      
│ │ │ -001e9500: 2020 2320 7265 6d65 6469 6174 696f 6e20    # remediation 
│ │ │ -001e9510: 6162 6f72 7473 2061 6e64 206e 6f20 6368  aborts and no ch
│ │ │ -001e9520: 616e 6765 7320 7265 6761 7264 696e 6720  anges regarding 
│ │ │ -001e9530: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ -001e9540: 6172 6520 646f 6e65 2e0a 2020 2020 2020  are done..      
│ │ │ -001e9550: 2020 6d6f 756e 745f 706f 696e 745f 6d61    mount_point_ma
│ │ │ -001e9560: 7463 685f 7265 6765 7870 3d22 2428 7072  tch_regexp="$(pr
│ │ │ -001e9570: 696e 7466 2022 5e5b 5b3a 7370 6163 653a  intf "^[[:space:
│ │ │ -001e9580: 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163  ]]*[^#].*[[:spac
│ │ │ -001e9590: 653a 5d5d 2573 5b5b 3a73 7061 6365 3a5d  e:]]%s[[:space:]
│ │ │ -001e95a0: 5d22 2022 2f74 6d70 2229 220a 0a20 2020  ]" "/tmp")"..   
│ │ │ -001e95b0: 2067 7265 7020 2224 6d6f 756e 745f 706f   grep "$mount_po
│ │ │ -001e95c0: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001e95d0: 2220 2d71 202f 6574 632f 6673 7461 6220  " -q /etc/fstab 
│ │ │ -001e95e0: 5c0a 2020 2020 2020 2020 7c7c 207b 2065  \.        || { e
│ │ │ -001e95f0: 6368 6f20 2254 6865 206d 6f75 6e74 2070  cho "The mount p
│ │ │ -001e9600: 6f69 6e74 2027 2f74 6d70 2720 6973 206e  oint '/tmp' is n
│ │ │ -001e9610: 6f74 2065 7665 6e20 696e 202f 6574 632f  ot even in /etc/
│ │ │ -001e9620: 6673 7461 622c 2073 6f20 7765 2063 616e  fstab, so we can
│ │ │ -001e9630: 2774 2073 6574 2075 7020 6d6f 756e 7420  't set up mount 
│ │ │ -001e9640: 6f70 7469 6f6e 7322 2026 6774 3b26 616d  options" >&am
│ │ │ -001e9650: 703b 323b 0a20 2020 2020 2020 2020 2020  p;2;.           
│ │ │ -001e9660: 2020 2020 2065 6368 6f20 224e 6f74 2072       echo "Not r
│ │ │ -001e9670: 656d 6564 6961 7469 6e67 2c20 6265 6361  emediating, beca
│ │ │ -001e9680: 7573 6520 7468 6572 6520 6973 206e 6f20  use there is no 
│ │ │ -001e9690: 7265 636f 7264 206f 6620 2f74 6d70 2069  record of /tmp i
│ │ │ -001e96a0: 6e20 2f65 7463 2f66 7374 6162 2220 2667  n /etc/fstab" &g
│ │ │ -001e96b0: 743b 2661 6d70 3b32 3b20 7265 7475 726e  t;&2; return
│ │ │ -001e96c0: 2031 3b20 7d0a 2020 2020 0a0a 0a20 2020   1; }.    ...   
│ │ │ -001e96d0: 206d 6f75 6e74 5f70 6f69 6e74 5f6d 6174   mount_point_mat
│ │ │ -001e96e0: 6368 5f72 6567 6578 703d 2224 2870 7269  ch_regexp="$(pri
│ │ │ -001e96f0: 6e74 6620 225e 5b5b 3a73 7061 6365 3a5d  ntf "^[[:space:]
│ │ │ -001e9700: 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061 6365  ]*[^#].*[[:space
│ │ │ -001e9710: 3a5d 5d25 735b 5b3a 7370 6163 653a 5d5d  :]]%s[[:space:]]
│ │ │ -001e9720: 2220 2f74 6d70 2922 0a0a 2020 2020 2320  " /tmp)"..    # 
│ │ │ -001e9730: 4966 2074 6865 206d 6f75 6e74 2070 6f69  If the mount poi
│ │ │ -001e9740: 6e74 2069 7320 6e6f 7420 696e 202f 6574  nt is not in /et
│ │ │ -001e9750: 632f 6673 7461 622c 2067 6574 2070 7265  c/fstab, get pre
│ │ │ -001e9760: 7669 6f75 7320 6d6f 756e 7420 6f70 7469  vious mount opti
│ │ │ -001e9770: 6f6e 7320 6672 6f6d 202f 6574 632f 6d74  ons from /etc/mt
│ │ │ -001e9780: 6162 0a20 2020 2069 6620 2120 6772 6570  ab.    if ! grep
│ │ │ -001e9790: 202d 7120 2224 6d6f 756e 745f 706f 696e   -q "$mount_poin
│ │ │ -001e97a0: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ -001e97b0: 2f65 7463 2f66 7374 6162 3b20 7468 656e  /etc/fstab; then
│ │ │ -001e97c0: 0a20 2020 2020 2020 2023 2072 756e 7469  .        # runti
│ │ │ -001e97d0: 6d65 206f 7074 7320 7769 7468 6f75 7420  me opts without 
│ │ │ -001e97e0: 736f 6d65 2061 7574 6f6d 6174 6963 206b  some automatic k
│ │ │ -001e97f0: 6572 6e65 6c2f 7573 6572 7370 6163 652d  ernel/userspace-
│ │ │ -001e9800: 6164 6465 6420 6465 6661 756c 7473 0a20  added defaults. 
│ │ │ -001e9810: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ -001e9820: 6d6f 756e 745f 6f70 7473 3d24 2867 7265  mount_opts=$(gre
│ │ │ -001e9830: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001e9840: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ -001e9850: 7463 2f6d 7461 6220 7c20 6865 6164 202d  tc/mtab | head -
│ │ │ -001e9860: 3120 7c20 2061 776b 2027 7b70 7269 6e74  1 |  awk '{print
│ │ │ -001e9870: 2024 347d 2720 5c0a 2020 2020 2020 2020   $4}' \.        
│ │ │ -001e9880: 2020 2020 2020 2020 2020 2020 7c20 7365              | se
│ │ │ -001e9890: 6420 2d45 2022 732f 2872 777c 6465 6661  d -E "s/(rw|defa
│ │ │ -001e98a0: 756c 7473 7c73 6563 6c61 6265 6c7c 6e6f  ults|seclabel|no
│ │ │ -001e98b0: 6578 6563 2928 2c7c 2429 2f2f 673b 732f  exec)(,|$)//g;s/
│ │ │ -001e98c0: 2c24 2f2f 2229 0a20 2020 2020 2020 205b  ,$//").        [
│ │ │ -001e98d0: 2022 2470 7265 7669 6f75 735f 6d6f 756e   "$previous_moun
│ │ │ -001e98e0: 745f 6f70 7473 2220 5d20 2661 6d70 3b26  t_opts" ] &&
│ │ │ -001e98f0: 616d 703b 2070 7265 7669 6f75 735f 6d6f  amp; previous_mo
│ │ │ -001e9900: 756e 745f 6f70 7473 2b3d 222c 220a 2020  unt_opts+=",".  
│ │ │ -001e9910: 2020 2020 2020 2320 496e 2069 736f 3936        # In iso96
│ │ │ -001e9920: 3630 2066 696c 6573 7973 7465 6d73 206d  60 filesystems m
│ │ │ -001e9930: 7461 6220 636f 756c 6420 6465 7363 7269  tab could descri
│ │ │ -001e9940: 6265 2061 2022 626c 6f63 6b73 697a 6522  be a "blocksize"
│ │ │ -001e9950: 2076 616c 7565 2c20 7468 6973 2073 686f   value, this sho
│ │ │ -001e9960: 756c 6420 6265 2072 6566 6c65 6374 6564  uld be reflected
│ │ │ -001e9970: 2069 6e0a 2020 2020 2020 2020 2320 6673   in.        # fs
│ │ │ -001e9980: 7461 6220 6173 2022 626c 6f63 6b22 2e20  tab as "block". 
│ │ │ -001e9990: 2054 6865 206e 6578 7420 7661 7269 6162   The next variab
│ │ │ -001e99a0: 6c65 2069 7320 746f 2073 6174 6973 6679  le is to satisfy
│ │ │ -001e99b0: 2073 6865 6c6c 6368 6563 6b20 5343 3230   shellcheck SC20
│ │ │ -001e99c0: 3530 2e0a 2020 2020 2020 2020 6673 5f74  50..        fs_t
│ │ │ -001e99d0: 7970 653d 2222 0a20 2020 2020 2020 2069  ype="".        i
│ │ │ -001e99e0: 6620 5b20 2022 2466 735f 7479 7065 2220  f [  "$fs_type" 
│ │ │ -001e99f0: 3d3d 2022 6973 6f39 3636 3022 205d 203b  == "iso9660" ] ;
│ │ │ -001e9a00: 2074 6865 6e0a 2020 2020 2020 2020 2020   then.          
│ │ │ -001e9a10: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ -001e9a20: 5f6f 7074 733d 2428 7365 6420 2773 2f62  _opts=$(sed 's/b
│ │ │ -001e9a30: 6c6f 636b 7369 7a65 3d2f 626c 6f63 6b3d  locksize=/block=
│ │ │ -001e9a40: 2f27 2026 6c74 3b26 6c74 3b26 6c74 3b20  /' <<< 
│ │ │ -001e9a50: 2224 7072 6576 696f 7573 5f6d 6f75 6e74  "$previous_mount
│ │ │ -001e9a60: 5f6f 7074 7322 290a 2020 2020 2020 2020  _opts").        
│ │ │ -001e9a70: 6669 0a20 2020 2020 2020 2065 6368 6f20  fi.        echo 
│ │ │ -001e9a80: 2220 2f74 6d70 2020 6465 6661 756c 7473  " /tmp  defaults
│ │ │ -001e9a90: 2c24 7b70 7265 7669 6f75 735f 6d6f 756e  ,${previous_moun
│ │ │ -001e9aa0: 745f 6f70 7473 7d6e 6f65 7865 6320 3020  t_opts}noexec 0 
│ │ │ -001e9ab0: 3022 2026 6774 3b26 6774 3b20 2f65 7463  0" >> /etc
│ │ │ -001e9ac0: 2f66 7374 6162 0a20 2020 2023 2049 6620  /fstab.    # If 
│ │ │ -001e9ad0: 7468 6520 6d6f 756e 745f 6f70 7420 6f70  the mount_opt op
│ │ │ -001e9ae0: 7469 6f6e 2069 7320 6e6f 7420 616c 7265  tion is not alre
│ │ │ -001e9af0: 6164 7920 696e 2074 6865 206d 6f75 6e74  ady in the mount
│ │ │ -001e9b00: 2070 6f69 6e74 2773 202f 6574 632f 6673   point's /etc/fs
│ │ │ -001e9b10: 7461 6220 656e 7472 792c 2061 6464 2069  tab entry, add i
│ │ │ -001e9b20: 740a 2020 2020 656c 6966 2021 2067 7265  t.    elif ! gre
│ │ │ -001e9b30: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001e9b40: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ -001e9b50: 7463 2f66 7374 6162 207c 2067 7265 7020  tc/fstab | grep 
│ │ │ -001e9b60: 2d71 2022 6e6f 6578 6563 223b 2074 6865  -q "noexec"; the
│ │ │ -001e9b70: 6e0a 2020 2020 2020 2020 7072 6576 696f  n.        previo
│ │ │ -001e9b80: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ -001e9b90: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ -001e9ba0: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ -001e9bb0: 202f 6574 632f 6673 7461 6220 7c20 6177   /etc/fstab | aw
│ │ │ -001e9bc0: 6b20 277b 7072 696e 7420 2434 7d27 290a  k '{print $4}').
│ │ │ -001e9bd0: 2020 2020 2020 2020 7365 6420 2d69 2022          sed -i "
│ │ │ -001e9be0: 737c 5c28 247b 6d6f 756e 745f 706f 696e  s|\(${mount_poin
│ │ │ -001e9bf0: 745f 6d61 7463 685f 7265 6765 7870 7d2e  t_match_regexp}.
│ │ │ -001e9c00: 2a24 7b70 7265 7669 6f75 735f 6d6f 756e  *${previous_moun
│ │ │ -001e9c10: 745f 6f70 7473 7d5c 297c 5c31 2c6e 6f65  t_opts}\)|\1,noe
│ │ │ -001e9c20: 7865 637c 2220 2f65 7463 2f66 7374 6162  xec|" /etc/fstab
│ │ │ -001e9c30: 0a20 2020 2066 690a 0a0a 2020 2020 6966  .    fi...    if
│ │ │ -001e9c40: 206d 6b64 6972 202d 7020 222f 746d 7022   mkdir -p "/tmp"
│ │ │ -001e9c50: 3b20 7468 656e 0a20 2020 2020 2020 2069  ; then.        i
│ │ │ -001e9c60: 6620 6d6f 756e 7470 6f69 6e74 202d 7120  f mountpoint -q 
│ │ │ -001e9c70: 222f 746d 7022 3b20 7468 656e 0a20 2020  "/tmp"; then.   
│ │ │ -001e9c80: 2020 2020 2020 2020 206d 6f75 6e74 202d           mount -
│ │ │ -001e9c90: 6f20 7265 6d6f 756e 7420 2d2d 7461 7267  o remount --targ
│ │ │ -001e9ca0: 6574 2022 2f74 6d70 220a 2020 2020 2020  et "/tmp".      
│ │ │ -001e9cb0: 2020 6669 0a20 2020 2066 690a 7d0a 0a70    fi.    fi.}..p
│ │ │ -001e9cc0: 6572 666f 726d 5f72 656d 6564 6961 7469  erform_remediati
│ │ │ -001e9cd0: 6f6e 0a0a 656c 7365 0a20 2020 2026 6774  on..else.    >
│ │ │ -001e9ce0: 3b26 616d 703b 3220 6563 686f 2027 5265  ;&2 echo 'Re
│ │ │ -001e9cf0: 6d65 6469 6174 696f 6e20 6973 206e 6f74  mediation is not
│ │ │ -001e9d00: 2061 7070 6c69 6361 626c 652c 206e 6f74   applicable, not
│ │ │ -001e9d10: 6869 6e67 2077 6173 2064 6f6e 6527 0a66  hing was done'.f
│ │ │ -001e9d20: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +001e76d0: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ +001e76e0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +001e76f0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
Reb │ │ │ -001e9250: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -001e9260: 7365 3c2f 7464 3e3c 2f74 723e 3c2f 7461 se
low< │ │ │ +001e7790: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr> │ │ │ +001e77e0: 3c74 723e 3c74 683e 5374 7261 7465 6779

│ │ │ +001e7820: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ +001e7830: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ +001e7840: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ +001e7850: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ +001e7860: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ +001e7870: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001e7880: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001e7890: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ +001e78a0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +001e78b0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001e78c0: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ +001e78d0: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ +001e78e0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001e78f0: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ +001e7900: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +001e7910: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ +001e7920: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001e7930: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ +001e7940: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ +001e7950: 745f 6f70 7469 6f6e 5f74 6d70 5f6e 6f65  t_option_tmp_noe
│ │ │ +001e7960: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f  xec.  - no_reboo
│ │ │ +001e7970: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ +001e7980: 3a20 2741 6464 206e 6f65 7865 6320 4f70  : 'Add noexec Op
│ │ │ +001e7990: 7469 6f6e 2074 6f20 2f74 6d70 3a20 4368  tion to /tmp: Ch
│ │ │ +001e79a0: 6563 6b20 696e 666f 726d 6174 696f 6e20  eck information 
│ │ │ +001e79b0: 6173 736f 6369 6174 6564 2074 6f20 6d6f  associated to mo
│ │ │ +001e79c0: 756e 7470 6f69 6e74 270a 2020 616e 7369  untpoint'.  ansi
│ │ │ +001e79d0: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ +001e79e0: 616e 643a 2066 696e 646d 6e74 202d 2d66  and: findmnt --f
│ │ │ +001e79f0: 7374 6162 2027 2f74 6d70 270a 2020 7265  stab '/tmp'.  re
│ │ │ +001e7a00: 6769 7374 6572 3a20 6465 7669 6365 5f6e  gister: device_n
│ │ │ +001e7a10: 616d 650a 2020 6661 696c 6564 5f77 6865  ame.  failed_whe
│ │ │ +001e7a20: 6e3a 2064 6576 6963 655f 6e61 6d65 2e72  n: device_name.r
│ │ │ +001e7a30: 6320 2667 743b 2031 0a20 2063 6861 6e67  c > 1.  chang
│ │ │ +001e7a40: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ +001e7a50: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ +001e7a60: 7365 0a20 2077 6865 6e3a 0a20 202d 2028  se.  when:.  - (
│ │ │ +001e7a70: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +001e7a80: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001e7a90: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ +001e7aa0: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ +001e7ab0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001e7ac0: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ +001e7ad0: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ +001e7ae0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001e7af0: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ +001e7b00: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ +001e7b10: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001e7b20: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ +001e7b30: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001e7b40: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ +001e7b50: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ +001e7b60: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ +001e7b70: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ +001e7b80: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ +001e7b90: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ +001e7ba0: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ +001e7bb0: 2920 290a 2020 2d20 2722 2f74 6d70 2220  ) ).  - '"/tmp" 
│ │ │ +001e7bc0: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ +001e7bd0: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ +001e7be0: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ +001e7bf0: 7427 0a20 2074 6167 733a 0a20 202d 204e  t'.  tags:.  - N
│ │ │ +001e7c00: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ +001e7c10: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001e7c20: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ +001e7c30: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +001e7c40: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001e7c50: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +001e7c60: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +001e7c70: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001e7c80: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ +001e7c90: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +001e7ca0: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +001e7cb0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +001e7cc0: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +001e7cd0: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +001e7ce0: 5f6f 7074 696f 6e5f 746d 705f 6e6f 6578  _option_tmp_noex
│ │ │ +001e7cf0: 6563 0a20 202d 206e 6f5f 7265 626f 6f74  ec.  - no_reboot
│ │ │ +001e7d00: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ +001e7d10: 2027 4164 6420 6e6f 6578 6563 204f 7074   'Add noexec Opt
│ │ │ +001e7d20: 696f 6e20 746f 202f 746d 703a 2043 7265  ion to /tmp: Cre
│ │ │ +001e7d30: 6174 6520 6d6f 756e 745f 696e 666f 2064  ate mount_info d
│ │ │ +001e7d40: 6963 7469 6f6e 6172 7920 7661 7269 6162  ictionary variab
│ │ │ +001e7d50: 6c65 270a 2020 7365 745f 6661 6374 3a0a  le'.  set_fact:.
│ │ │ +001e7d60: 2020 2020 6d6f 756e 745f 696e 666f 3a20      mount_info: 
│ │ │ +001e7d70: 277b 7b20 6d6f 756e 745f 696e 666f 7c64  '{{ mount_info|d
│ │ │ +001e7d80: 6566 6175 6c74 287b 7d29 7c63 6f6d 6269  efault({})|combi
│ │ │ +001e7d90: 6e65 287b 6974 656d 2e30 3a20 6974 656d  ne({item.0: item
│ │ │ +001e7da0: 2e31 7d29 207d 7d27 0a20 2077 6974 685f  .1}) }}'.  with_
│ │ │ +001e7db0: 746f 6765 7468 6572 3a0a 2020 2d20 277b  together:.  - '{
│ │ │ +001e7dc0: 7b20 6465 7669 6365 5f6e 616d 652e 7374  { device_name.st
│ │ │ +001e7dd0: 646f 7574 5f6c 696e 6573 5b30 5d2e 7370  dout_lines[0].sp
│ │ │ +001e7de0: 6c69 7428 2920 7c20 6d61 7028 2727 6c6f  lit() | map(''lo
│ │ │ +001e7df0: 7765 7227 2729 207c 206c 6973 7420 7d7d  wer'') | list }}
│ │ │ +001e7e00: 270a 2020 2d20 277b 7b20 6465 7669 6365  '.  - '{{ device
│ │ │ +001e7e10: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ +001e7e20: 6573 5b31 5d2e 7370 6c69 7428 2920 7c20  es[1].split() | 
│ │ │ +001e7e30: 6c69 7374 207d 7d27 0a20 2077 6865 6e3a  list }}'.  when:
│ │ │ +001e7e40: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ +001e7e50: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +001e7e60: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001e7e70: 616e 6420 2272 706d 2d6f 7374 7265 6522  and "rpm-ostree"
│ │ │ +001e7e80: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001e7e90: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001e7ea0: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ +001e7eb0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001e7ec0: 6167 6573 2061 6e64 206e 6f74 2022 6f70  ages and not "op
│ │ │ +001e7ed0: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ +001e7ee0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001e7ef0: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001e7f00: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ +001e7f10: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ +001e7f20: 696e 6520 2920 616e 6420 6e6f 7420 2820  ine ) and not ( 
│ │ │ +001e7f30: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ +001e7f40: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20  zation_type in. 
│ │ │ +001e7f50: 2020 205b 2264 6f63 6b65 7222 2c20 226c     ["docker", "l
│ │ │ +001e7f60: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ +001e7f70: 706f 646d 616e 222c 2022 636f 6e74 6169  podman", "contai
│ │ │ +001e7f80: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ +001e7f90: 2f74 6d70 2220 696e 2061 6e73 6962 6c65  /tmp" in ansible
│ │ │ +001e7fa0: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ +001e7fb0: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ +001e7fc0: 207c 206c 6973 7427 0a20 202d 2064 6576   | list'.  - dev
│ │ │ +001e7fd0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ +001e7fe0: 6973 2064 6566 696e 6564 2061 6e64 2064  is defined and d
│ │ │ +001e7ff0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001e8000: 745f 6c69 6e65 7320 6973 2064 6566 696e  t_lines is defin
│ │ │ +001e8010: 6564 0a20 202d 2028 6465 7669 6365 5f6e  ed.  - (device_n
│ │ │ +001e8020: 616d 652e 7374 646f 7574 207c 206c 656e  ame.stdout | len
│ │ │ +001e8030: 6774 6820 2667 743b 2030 290a 2020 7461  gth > 0).  ta
│ │ │ +001e8040: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +001e8050: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ +001e8060: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ +001e8070: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001e8080: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ +001e8090: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ +001e80a0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001e80b0: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ +001e80c0: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ +001e80d0: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001e80e0: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001e80f0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001e8100: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001e8110: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001e8120: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001e8130: 5f74 6d70 5f6e 6f65 7865 630a 2020 2d20  _tmp_noexec.  - 
│ │ │ +001e8140: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001e8150: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ +001e8160: 6f65 7865 6320 4f70 7469 6f6e 2074 6f20  oexec Option to 
│ │ │ +001e8170: 2f74 6d70 3a20 4966 202f 746d 7020 6e6f  /tmp: If /tmp no
│ │ │ +001e8180: 7420 6d6f 756e 7465 642c 2063 7261 6674  t mounted, craft
│ │ │ +001e8190: 206d 6f75 6e74 5f69 6e66 6f20 6d61 6e75   mount_info manu
│ │ │ +001e81a0: 616c 6c79 270a 2020 7365 745f 6661 6374  ally'.  set_fact
│ │ │ +001e81b0: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ +001e81c0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001e81d0: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d  |default({})|com
│ │ │ +001e81e0: 6269 6e65 287b 6974 656d 2e30 3a20 6974  bine({item.0: it
│ │ │ +001e81f0: 656d 2e31 7d29 207d 7d27 0a20 2077 6974  em.1}) }}'.  wit
│ │ │ +001e8200: 685f 746f 6765 7468 6572 3a0a 2020 2d20  h_together:.  - 
│ │ │ +001e8210: 2d20 7461 7267 6574 0a20 2020 202d 2073  - target.    - s
│ │ │ +001e8220: 6f75 7263 650a 2020 2020 2d20 6673 7479  ource.    - fsty
│ │ │ +001e8230: 7065 0a20 2020 202d 206f 7074 696f 6e73  pe.    - options
│ │ │ +001e8240: 0a20 202d 202d 202f 746d 700a 2020 2020  .  - - /tmp.    
│ │ │ +001e8250: 2d20 2727 0a20 2020 202d 2027 270a 2020  - ''.    - ''.  
│ │ │ +001e8260: 2020 2d20 6465 6661 756c 7473 0a20 2077    - defaults.  w
│ │ │ +001e8270: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +001e8280: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +001e8290: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001e82a0: 6765 7320 616e 6420 2272 706d 2d6f 7374  ges and "rpm-ost
│ │ │ +001e82b0: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001e82c0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001e82d0: 2020 2061 6e64 2022 626f 6f74 6322 2069     and "bootc" i
│ │ │ +001e82e0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001e82f0: 7061 636b 6167 6573 2061 6e64 206e 6f74  packages and not
│ │ │ +001e8300: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ +001e8310: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ +001e8320: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001e8330: 2020 2061 6e64 2022 6f73 7472 6565 2220     and "ostree" 
│ │ │ +001e8340: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ +001e8350: 636d 646c 696e 6520 2920 616e 6420 6e6f  cmdline ) and no
│ │ │ +001e8360: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ +001e8370: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ +001e8380: 696e 0a20 2020 205b 2264 6f63 6b65 7222  in.    ["docker"
│ │ │ +001e8390: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ +001e83a0: 222c 2022 706f 646d 616e 222c 2022 636f  ", "podman", "co
│ │ │ +001e83b0: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ +001e83c0: 2d20 2722 2f74 6d70 2220 696e 2061 6e73  - '"/tmp" in ans
│ │ │ +001e83d0: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ +001e83e0: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ +001e83f0: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ +001e8400: 2028 222d 2d66 7374 6162 2220 7c20 6c65   ("--fstab" | le
│ │ │ +001e8410: 6e67 7468 203d 3d20 3029 0a20 202d 2064  ngth == 0).  - d
│ │ │ +001e8420: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001e8430: 7420 6973 2064 6566 696e 6564 2061 6e64  t is defined and
│ │ │ +001e8440: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +001e8450: 6f75 745f 6c69 6e65 7320 6973 2064 6566  out_lines is def
│ │ │ +001e8460: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ +001e8470: 5f6e 616d 652e 7374 646f 7574 207c 206c  _name.stdout | l
│ │ │ +001e8480: 656e 6774 6820 3d3d 2030 290a 2020 7461  ength == 0).  ta
│ │ │ +001e8490: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +001e84a0: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ +001e84b0: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ +001e84c0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001e84d0: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ +001e84e0: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ +001e84f0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001e8500: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ +001e8510: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ +001e8520: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001e8530: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001e8540: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001e8550: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001e8560: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001e8570: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001e8580: 5f74 6d70 5f6e 6f65 7865 630a 2020 2d20  _tmp_noexec.  - 
│ │ │ +001e8590: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001e85a0: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ +001e85b0: 6f65 7865 6320 4f70 7469 6f6e 2074 6f20  oexec Option to 
│ │ │ +001e85c0: 2f74 6d70 3a20 4d61 6b65 2073 7572 6520  /tmp: Make sure 
│ │ │ +001e85d0: 6e6f 6578 6563 206f 7074 696f 6e20 6973  noexec option is
│ │ │ +001e85e0: 2070 6172 7420 6f66 2074 6865 2074 6f20   part of the to 
│ │ │ +001e85f0: 2f74 6d70 0a20 2020 206f 7074 696f 6e73  /tmp.    options
│ │ │ +001e8600: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ +001e8610: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ +001e8620: 7b20 6d6f 756e 745f 696e 666f 207c 2063  { mount_info | c
│ │ │ +001e8630: 6f6d 6269 6e65 2820 7b27 276f 7074 696f  ombine( {''optio
│ │ │ +001e8640: 6e73 2727 3a27 2727 277e 286d 6f75 6e74  ns'':''''~(mount
│ │ │ +001e8650: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c0a  _info.options |.
│ │ │ +001e8660: 2020 2020 2020 6465 6661 756c 7428 2727        default(''
│ │ │ +001e8670: 2727 2929 7e28 2727 2c27 2720 6966 2028  ''))~('','' if (
│ │ │ +001e8680: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ +001e8690: 6e73 207c 2064 6566 6175 6c74 2827 2727  ns | default('''
│ │ │ +001e86a0: 2729 2920 656c 7365 2027 2727 2729 7e27  ')) else '''')~'
│ │ │ +001e86b0: 276e 6f65 7865 6327 270a 2020 2020 2020  'noexec''.      
│ │ │ +001e86c0: 7d29 207d 7d27 0a20 2077 6865 6e3a 0a20  }) }}'.  when:. 
│ │ │ +001e86d0: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ +001e86e0: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +001e86f0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001e8700: 6420 2272 706d 2d6f 7374 7265 6522 2069  d "rpm-ostree" i
│ │ │ +001e8710: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001e8720: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +001e8730: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ +001e8740: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001e8750: 6573 2061 6e64 206e 6f74 2022 6f70 656e  es and not "open
│ │ │ +001e8760: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ +001e8770: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001e8780: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +001e8790: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ +001e87a0: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ +001e87b0: 6520 2920 616e 6420 6e6f 7420 2820 616e  e ) and not ( an
│ │ │ +001e87c0: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ +001e87d0: 7469 6f6e 5f74 7970 6520 696e 0a20 2020  tion_type in.   
│ │ │ +001e87e0: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ +001e87f0: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ +001e8800: 646d 616e 222c 2022 636f 6e74 6169 6e65  dman", "containe
│ │ │ +001e8810: 7222 5d20 2920 290a 2020 2d20 2722 2f74  r"] ) ).  - '"/t
│ │ │ +001e8820: 6d70 2220 696e 2061 6e73 6962 6c65 5f6d  mp" in ansible_m
│ │ │ +001e8830: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ +001e8840: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ +001e8850: 206c 6973 7427 0a20 202d 206d 6f75 6e74   list'.  - mount
│ │ │ +001e8860: 5f69 6e66 6f20 6973 2064 6566 696e 6564  _info is defined
│ │ │ +001e8870: 2061 6e64 2022 6e6f 6578 6563 2220 6e6f   and "noexec" no
│ │ │ +001e8880: 7420 696e 2028 6d6f 756e 745f 696e 666f  t in (mount_info
│ │ │ +001e8890: 2e6f 7074 696f 6e73 207c 2064 6566 6175  .options | defau
│ │ │ +001e88a0: 6c74 2827 2729 290a 2020 7461 6773 3a0a  lt('')).  tags:.
│ │ │ +001e88b0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001e88c0: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ +001e88d0: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ +001e88e0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001e88f0: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ +001e8900: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ +001e8910: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001e8920: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ +001e8930: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ +001e8940: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001e8950: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001e8960: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001e8970: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001e8980: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001e8990: 6d6f 756e 745f 6f70 7469 6f6e 5f74 6d70  mount_option_tmp
│ │ │ +001e89a0: 5f6e 6f65 7865 630a 2020 2d20 6e6f 5f72  _noexec.  - no_r
│ │ │ +001e89b0: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +001e89c0: 6e61 6d65 3a20 2741 6464 206e 6f65 7865  name: 'Add noexe
│ │ │ +001e89d0: 6320 4f70 7469 6f6e 2074 6f20 2f74 6d70  c Option to /tmp
│ │ │ +001e89e0: 3a20 456e 7375 7265 202f 746d 7020 6973  : Ensure /tmp is
│ │ │ +001e89f0: 206d 6f75 6e74 6564 2077 6974 6820 6e6f   mounted with no
│ │ │ +001e8a00: 6578 6563 206f 7074 696f 6e27 0a20 2061  exec option'.  a
│ │ │ +001e8a10: 6e73 6962 6c65 2e70 6f73 6978 2e6d 6f75  nsible.posix.mou
│ │ │ +001e8a20: 6e74 3a0a 2020 2020 7061 7468 3a20 2f74  nt:.    path: /t
│ │ │ +001e8a30: 6d70 0a20 2020 2073 7263 3a20 277b 7b20  mp.    src: '{{ 
│ │ │ +001e8a40: 6d6f 756e 745f 696e 666f 2e73 6f75 7263  mount_info.sourc
│ │ │ +001e8a50: 6520 7c20 6465 6661 756c 7428 2727 2727  e | default(''''
│ │ │ +001e8a60: 2920 7d7d 270a 2020 2020 6f70 7473 3a20  ) }}'.    opts: 
│ │ │ +001e8a70: 277b 7b20 6d6f 756e 745f 696e 666f 2e6f  '{{ mount_info.o
│ │ │ +001e8a80: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ +001e8a90: 2827 2727 2729 207d 7d27 0a20 2020 2073  ('''') }}'.    s
│ │ │ +001e8aa0: 7461 7465 3a20 6d6f 756e 7465 640a 2020  tate: mounted.  
│ │ │ +001e8ab0: 2020 6673 7479 7065 3a20 277b 7b20 6d6f    fstype: '{{ mo
│ │ │ +001e8ac0: 756e 745f 696e 666f 2e66 7374 7970 6520  unt_info.fstype 
│ │ │ +001e8ad0: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ +001e8ae0: 7d7d 270a 2020 7265 6769 7374 6572 3a20  }}'.  register: 
│ │ │ +001e8af0: 6d6f 756e 745f 7265 7375 6c74 0a20 2066  mount_result.  f
│ │ │ +001e8b00: 6169 6c65 645f 7768 656e 3a0a 2020 2d20  ailed_when:.  - 
│ │ │ +001e8b10: 6d6f 756e 745f 7265 7375 6c74 2069 7320  mount_result is 
│ │ │ +001e8b20: 6661 696c 6564 0a20 202d 2027 2727 7461  failed.  - '''ta
│ │ │ +001e8b30: 7267 6574 2069 7320 6275 7379 2727 206e  rget is busy'' n
│ │ │ +001e8b40: 6f74 2069 6e20 286d 6f75 6e74 5f72 6573  ot in (mount_res
│ │ │ +001e8b50: 756c 742e 6d73 6720 7c20 6465 6661 756c  ult.msg | defaul
│ │ │ +001e8b60: 7428 2727 2727 2929 270a 2020 2d20 2727  t(''''))'.  - ''
│ │ │ +001e8b70: 2761 6c72 6561 6479 206d 6f75 6e74 6564  'already mounted
│ │ │ +001e8b80: 2727 206e 6f74 2069 6e20 286d 6f75 6e74  '' not in (mount
│ │ │ +001e8b90: 5f72 6573 756c 742e 6d73 6720 7c20 6465  _result.msg | de
│ │ │ +001e8ba0: 6661 756c 7428 2727 2727 2929 270a 2020  fault(''''))'.  
│ │ │ +001e8bb0: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ +001e8bc0: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ +001e8bd0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001e8be0: 6167 6573 2061 6e64 2022 7270 6d2d 6f73  ages and "rpm-os
│ │ │ +001e8bf0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001e8c00: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001e8c10: 2020 2020 616e 6420 2262 6f6f 7463 2220      and "bootc" 
│ │ │ +001e8c20: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001e8c30: 2e70 6163 6b61 6765 7320 616e 6420 6e6f  .packages and no
│ │ │ +001e8c40: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ +001e8c50: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ +001e8c60: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001e8c70: 2020 2020 616e 6420 226f 7374 7265 6522      and "ostree"
│ │ │ +001e8c80: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ +001e8c90: 5f63 6d64 6c69 6e65 2029 2061 6e64 206e  _cmdline ) and n
│ │ │ +001e8ca0: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ +001e8cb0: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ +001e8cc0: 2069 6e0a 2020 2020 5b22 646f 636b 6572   in.    ["docker
│ │ │ +001e8cd0: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ +001e8ce0: 7a22 2c20 2270 6f64 6d61 6e22 2c20 2263  z", "podman", "c
│ │ │ +001e8cf0: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ +001e8d00: 202d 2027 222f 746d 7022 2069 6e20 616e   - '"/tmp" in an
│ │ │ +001e8d10: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ +001e8d20: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ +001e8d30: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ +001e8d40: 2d20 6d6f 756e 745f 696e 666f 2069 7320  - mount_info is 
│ │ │ +001e8d50: 6465 6669 6e65 640a 2020 2d20 2864 6576  defined.  - (dev
│ │ │ +001e8d60: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ +001e8d70: 6973 2064 6566 696e 6564 2061 6e64 2028  is defined and (
│ │ │ +001e8d80: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001e8d90: 7574 207c 206c 656e 6774 6820 2667 743b  ut | length >
│ │ │ +001e8da0: 2030 2929 206f 7220 2822 2d2d 6673 7461   0)) or ("--fsta
│ │ │ +001e8db0: 6222 0a20 2020 207c 206c 656e 6774 6820  b".    | length 
│ │ │ +001e8dc0: 3d3d 2030 290a 2020 7461 6773 3a0a 2020  == 0).  tags:.  
│ │ │ +001e8dd0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001e8de0: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ +001e8df0: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ +001e8e00: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +001e8e10: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001e8e20: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ +001e8e30: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001e8e40: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ +001e8e50: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ +001e8e60: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +001e8e70: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ +001e8e80: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ +001e8e90: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ +001e8ea0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ +001e8eb0: 756e 745f 6f70 7469 6f6e 5f74 6d70 5f6e  unt_option_tmp_n
│ │ │ +001e8ec0: 6f65 7865 630a 2020 2d20 6e6f 5f72 6562  oexec.  - no_reb
│ │ │ +001e8ed0: 6f6f 745f 6e65 6564 6564 0a3c 2f63 6f64  oot_needed.
Remed │ │ │ +001e8f90: 6961 7469 6f6e 2053 6865 6c6c 2073 6372 iation Shell scr │ │ │ +001e8fa0: 6970 7420 e287 b23c 2f61 3e3c 6272 3e3c ipt ...
< │ │ │ +001e8fb0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001e8fc0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001e8fd0: 7365 2220 6964 3d22 6964 3539 3422 3e3c se" id="id594">< │ │ │ +001e8fe0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001e8ff0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001e9000: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001e9010: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +001e9020: 3e3c 7472 3e3c 7468 3e52 6562 6f6f 743a >
Co │ │ │ +001e7770: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +001e77a0: 6e3a 3c2f 7468 3e3c 7464 3e68 6967 683c n:high< │ │ │ +001e77b0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +001e77f0: 3a3c 2f74 683e 3c74 643e 636f 6e66 6967 :config │ │ │ +001e7800: 7572 653c 2f74 643e 3c2f 7472 3e3c 2f74 ure
Reboot: │ │ │ +001e9030: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ +001e9050: 3c70 7265 3e3c 636f 6465 3e23 2052 656d
# Rem
│ │ │ +001e9060: 6564 6961 7469 6f6e 2069 7320 6170 706c  ediation is appl
│ │ │ +001e9070: 6963 6162 6c65 206f 6e6c 7920 696e 2063  icable only in c
│ │ │ +001e9080: 6572 7461 696e 2070 6c61 7466 6f72 6d73  ertain platforms
│ │ │ +001e9090: 0a69 6620 2820 2120 2820 7b20 7270 6d20  .if ( ! ( { rpm 
│ │ │ +001e90a0: 2d2d 7175 6965 7420 2d71 206b 6572 6e65  --quiet -q kerne
│ │ │ +001e90b0: 6c20 3b7d 2026 616d 703b 2661 6d70 3b20  l ;} && 
│ │ │ +001e90c0: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ +001e90d0: 2072 706d 2d6f 7374 7265 6520 3b7d 2026   rpm-ostree ;} &
│ │ │ +001e90e0: 616d 703b 2661 6d70 3b20 7b20 7270 6d20  amp;& { rpm 
│ │ │ +001e90f0: 2d2d 7175 6965 7420 2d71 2062 6f6f 7463  --quiet -q bootc
│ │ │ +001e9100: 203b 7d20 2661 6d70 3b26 616d 703b 207b   ;} && {
│ │ │ +001e9110: 2021 2072 706d 202d 2d71 7569 6574 202d   ! rpm --quiet -
│ │ │ +001e9120: 7120 6f70 656e 7368 6966 742d 6b75 6265  q openshift-kube
│ │ │ +001e9130: 6c65 7420 3b7d 2026 616d 703b 2661 6d70  let ;} &&
│ │ │ +001e9140: 3b20 285b 202d 6620 2f72 756e 2f6f 7374  ; ([ -f /run/ost
│ │ │ +001e9150: 7265 652d 626f 6f74 6564 205d 207c 7c20  ree-booted ] || 
│ │ │ +001e9160: 5b20 2d4c 202f 6f73 7472 6565 205d 2920  [ -L /ostree ]) 
│ │ │ +001e9170: 2920 2661 6d70 3b26 616d 703b 2021 2028  ) && ! (
│ │ │ +001e9180: 205b 202d 6620 2f2e 646f 636b 6572 656e   [ -f /.dockeren
│ │ │ +001e9190: 7620 5d20 7c7c 205b 202d 6620 2f72 756e  v ] || [ -f /run
│ │ │ +001e91a0: 2f2e 636f 6e74 6169 6e65 7265 6e76 205d  /.containerenv ]
│ │ │ +001e91b0: 2029 2029 2026 616d 703b 2661 6d70 3b20   ) ) && 
│ │ │ +001e91c0: 7b20 2820 6669 6e64 6d6e 7420 2d2d 6b65  { ( findmnt --ke
│ │ │ +001e91d0: 726e 656c 2022 2f74 6d70 2220 2667 743b  rnel "/tmp" >
│ │ │ +001e91e0: 202f 6465 762f 6e75 6c6c 207c 7c20 6669   /dev/null || fi
│ │ │ +001e91f0: 6e64 6d6e 7420 2d2d 6673 7461 6220 222f  ndmnt --fstab "/
│ │ │ +001e9200: 746d 7022 2026 6774 3b20 2f64 6576 2f6e  tmp" > /dev/n
│ │ │ +001e9210: 756c 6c20 293b 207d 3b20 7468 656e 0a0a  ull ); }; then..
│ │ │ +001e9220: 6675 6e63 7469 6f6e 2070 6572 666f 726d  function perform
│ │ │ +001e9230: 5f72 656d 6564 6961 7469 6f6e 207b 0a0a  _remediation {..
│ │ │ +001e9240: 2020 2020 0a20 2020 2020 2020 2023 2074      .        # t
│ │ │ +001e9250: 6865 206d 6f75 6e74 2070 6f69 6e74 202f  he mount point /
│ │ │ +001e9260: 746d 7020 6861 7320 746f 2062 6520 6465  tmp has to be de
│ │ │ +001e9270: 6669 6e65 6420 696e 202f 6574 632f 6673  fined in /etc/fs
│ │ │ +001e9280: 7461 620a 2020 2020 2020 2020 2320 6265  tab.        # be
│ │ │ +001e9290: 666f 7265 2074 6869 7320 7265 6d65 6469  fore this remedi
│ │ │ +001e92a0: 6174 696f 6e20 6361 6e20 6265 2065 7865  ation can be exe
│ │ │ +001e92b0: 6375 7465 642e 2049 6e20 6361 7365 2069  cuted. In case i
│ │ │ +001e92c0: 7420 6973 206e 6f74 2064 6566 696e 6564  t is not defined
│ │ │ +001e92d0: 2c20 7468 650a 2020 2020 2020 2020 2320  , the.        # 
│ │ │ +001e92e0: 7265 6d65 6469 6174 696f 6e20 6162 6f72  remediation abor
│ │ │ +001e92f0: 7473 2061 6e64 206e 6f20 6368 616e 6765  ts and no change
│ │ │ +001e9300: 7320 7265 6761 7264 696e 6720 7468 6520  s regarding the 
│ │ │ +001e9310: 6d6f 756e 7420 706f 696e 7420 6172 6520  mount point are 
│ │ │ +001e9320: 646f 6e65 2e0a 2020 2020 2020 2020 6d6f  done..        mo
│ │ │ +001e9330: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001e9340: 7265 6765 7870 3d22 2428 7072 696e 7466  regexp="$(printf
│ │ │ +001e9350: 2022 5e5b 5b3a 7370 6163 653a 5d5d 2a5b   "^[[:space:]]*[
│ │ │ +001e9360: 5e23 5d2e 2a5b 5b3a 7370 6163 653a 5d5d  ^#].*[[:space:]]
│ │ │ +001e9370: 2573 5b5b 3a73 7061 6365 3a5d 5d22 2022  %s[[:space:]]" "
│ │ │ +001e9380: 2f74 6d70 2229 220a 0a20 2020 2067 7265  /tmp")"..    gre
│ │ │ +001e9390: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ +001e93a0: 6d61 7463 685f 7265 6765 7870 2220 2d71  match_regexp" -q
│ │ │ +001e93b0: 202f 6574 632f 6673 7461 6220 5c0a 2020   /etc/fstab \.  
│ │ │ +001e93c0: 2020 2020 2020 7c7c 207b 2065 6368 6f20        || { echo 
│ │ │ +001e93d0: 2254 6865 206d 6f75 6e74 2070 6f69 6e74  "The mount point
│ │ │ +001e93e0: 2027 2f74 6d70 2720 6973 206e 6f74 2065   '/tmp' is not e
│ │ │ +001e93f0: 7665 6e20 696e 202f 6574 632f 6673 7461  ven in /etc/fsta
│ │ │ +001e9400: 622c 2073 6f20 7765 2063 616e 2774 2073  b, so we can't s
│ │ │ +001e9410: 6574 2075 7020 6d6f 756e 7420 6f70 7469  et up mount opti
│ │ │ +001e9420: 6f6e 7322 2026 6774 3b26 616d 703b 323b  ons" >&2;
│ │ │ +001e9430: 0a20 2020 2020 2020 2020 2020 2020 2020  .               
│ │ │ +001e9440: 2065 6368 6f20 224e 6f74 2072 656d 6564   echo "Not remed
│ │ │ +001e9450: 6961 7469 6e67 2c20 6265 6361 7573 6520  iating, because 
│ │ │ +001e9460: 7468 6572 6520 6973 206e 6f20 7265 636f  there is no reco
│ │ │ +001e9470: 7264 206f 6620 2f74 6d70 2069 6e20 2f65  rd of /tmp in /e
│ │ │ +001e9480: 7463 2f66 7374 6162 2220 2667 743b 2661  tc/fstab" >&a
│ │ │ +001e9490: 6d70 3b32 3b20 7265 7475 726e 2031 3b20  mp;2; return 1; 
│ │ │ +001e94a0: 7d0a 2020 2020 0a0a 0a20 2020 206d 6f75  }.    ...    mou
│ │ │ +001e94b0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +001e94c0: 6567 6578 703d 2224 2870 7269 6e74 6620  egexp="$(printf 
│ │ │ +001e94d0: 225e 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e  "^[[:space:]]*[^
│ │ │ +001e94e0: 235d 2e2a 5b5b 3a73 7061 6365 3a5d 5d25  #].*[[:space:]]%
│ │ │ +001e94f0: 735b 5b3a 7370 6163 653a 5d5d 2220 2f74  s[[:space:]]" /t
│ │ │ +001e9500: 6d70 2922 0a0a 2020 2020 2320 4966 2074  mp)"..    # If t
│ │ │ +001e9510: 6865 206d 6f75 6e74 2070 6f69 6e74 2069  he mount point i
│ │ │ +001e9520: 7320 6e6f 7420 696e 202f 6574 632f 6673  s not in /etc/fs
│ │ │ +001e9530: 7461 622c 2067 6574 2070 7265 7669 6f75  tab, get previou
│ │ │ +001e9540: 7320 6d6f 756e 7420 6f70 7469 6f6e 7320  s mount options 
│ │ │ +001e9550: 6672 6f6d 202f 6574 632f 6d74 6162 0a20  from /etc/mtab. 
│ │ │ +001e9560: 2020 2069 6620 2120 6772 6570 202d 7120     if ! grep -q 
│ │ │ +001e9570: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ +001e9580: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ +001e9590: 2f66 7374 6162 3b20 7468 656e 0a20 2020  /fstab; then.   
│ │ │ +001e95a0: 2020 2020 2023 2072 756e 7469 6d65 206f       # runtime o
│ │ │ +001e95b0: 7074 7320 7769 7468 6f75 7420 736f 6d65  pts without some
│ │ │ +001e95c0: 2061 7574 6f6d 6174 6963 206b 6572 6e65   automatic kerne
│ │ │ +001e95d0: 6c2f 7573 6572 7370 6163 652d 6164 6465  l/userspace-adde
│ │ │ +001e95e0: 6420 6465 6661 756c 7473 0a20 2020 2020  d defaults.     
│ │ │ +001e95f0: 2020 2070 7265 7669 6f75 735f 6d6f 756e     previous_moun
│ │ │ +001e9600: 745f 6f70 7473 3d24 2867 7265 7020 2224  t_opts=$(grep "$
│ │ │ +001e9610: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001e9620: 685f 7265 6765 7870 2220 2f65 7463 2f6d  h_regexp" /etc/m
│ │ │ +001e9630: 7461 6220 7c20 6865 6164 202d 3120 7c20  tab | head -1 | 
│ │ │ +001e9640: 2061 776b 2027 7b70 7269 6e74 2024 347d   awk '{print $4}
│ │ │ +001e9650: 2720 5c0a 2020 2020 2020 2020 2020 2020  ' \.            
│ │ │ +001e9660: 2020 2020 2020 2020 7c20 7365 6420 2d45          | sed -E
│ │ │ +001e9670: 2022 732f 2872 777c 6465 6661 756c 7473   "s/(rw|defaults
│ │ │ +001e9680: 7c73 6563 6c61 6265 6c7c 6e6f 6578 6563  |seclabel|noexec
│ │ │ +001e9690: 2928 2c7c 2429 2f2f 673b 732f 2c24 2f2f  )(,|$)//g;s/,$//
│ │ │ +001e96a0: 2229 0a20 2020 2020 2020 205b 2022 2470  ").        [ "$p
│ │ │ +001e96b0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001e96c0: 7473 2220 5d20 2661 6d70 3b26 616d 703b  ts" ] &&
│ │ │ +001e96d0: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ +001e96e0: 6f70 7473 2b3d 222c 220a 2020 2020 2020  opts+=",".      
│ │ │ +001e96f0: 2020 2320 496e 2069 736f 3936 3630 2066    # In iso9660 f
│ │ │ +001e9700: 696c 6573 7973 7465 6d73 206d 7461 6220  ilesystems mtab 
│ │ │ +001e9710: 636f 756c 6420 6465 7363 7269 6265 2061  could describe a
│ │ │ +001e9720: 2022 626c 6f63 6b73 697a 6522 2076 616c   "blocksize" val
│ │ │ +001e9730: 7565 2c20 7468 6973 2073 686f 756c 6420  ue, this should 
│ │ │ +001e9740: 6265 2072 6566 6c65 6374 6564 2069 6e0a  be reflected in.
│ │ │ +001e9750: 2020 2020 2020 2020 2320 6673 7461 6220          # fstab 
│ │ │ +001e9760: 6173 2022 626c 6f63 6b22 2e20 2054 6865  as "block".  The
│ │ │ +001e9770: 206e 6578 7420 7661 7269 6162 6c65 2069   next variable i
│ │ │ +001e9780: 7320 746f 2073 6174 6973 6679 2073 6865  s to satisfy she
│ │ │ +001e9790: 6c6c 6368 6563 6b20 5343 3230 3530 2e0a  llcheck SC2050..
│ │ │ +001e97a0: 2020 2020 2020 2020 6673 5f74 7970 653d          fs_type=
│ │ │ +001e97b0: 2222 0a20 2020 2020 2020 2069 6620 5b20  "".        if [ 
│ │ │ +001e97c0: 2022 2466 735f 7479 7065 2220 3d3d 2022   "$fs_type" == "
│ │ │ +001e97d0: 6973 6f39 3636 3022 205d 203b 2074 6865  iso9660" ] ; the
│ │ │ +001e97e0: 6e0a 2020 2020 2020 2020 2020 2020 7072  n.            pr
│ │ │ +001e97f0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001e9800: 733d 2428 7365 6420 2773 2f62 6c6f 636b  s=$(sed 's/block
│ │ │ +001e9810: 7369 7a65 3d2f 626c 6f63 6b3d 2f27 2026  size=/block=/' &
│ │ │ +001e9820: 6c74 3b26 6c74 3b26 6c74 3b20 2224 7072  lt;<< "$pr
│ │ │ +001e9830: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001e9840: 7322 290a 2020 2020 2020 2020 6669 0a20  s").        fi. 
│ │ │ +001e9850: 2020 2020 2020 2065 6368 6f20 2220 2f74         echo " /t
│ │ │ +001e9860: 6d70 2020 6465 6661 756c 7473 2c24 7b70  mp  defaults,${p
│ │ │ +001e9870: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001e9880: 7473 7d6e 6f65 7865 6320 3020 3022 2026  ts}noexec 0 0" &
│ │ │ +001e9890: 6774 3b26 6774 3b20 2f65 7463 2f66 7374  gt;> /etc/fst
│ │ │ +001e98a0: 6162 0a20 2020 2023 2049 6620 7468 6520  ab.    # If the 
│ │ │ +001e98b0: 6d6f 756e 745f 6f70 7420 6f70 7469 6f6e  mount_opt option
│ │ │ +001e98c0: 2069 7320 6e6f 7420 616c 7265 6164 7920   is not already 
│ │ │ +001e98d0: 696e 2074 6865 206d 6f75 6e74 2070 6f69  in the mount poi
│ │ │ +001e98e0: 6e74 2773 202f 6574 632f 6673 7461 6220  nt's /etc/fstab 
│ │ │ +001e98f0: 656e 7472 792c 2061 6464 2069 740a 2020  entry, add it.  
│ │ │ +001e9900: 2020 656c 6966 2021 2067 7265 7020 2224    elif ! grep "$
│ │ │ +001e9910: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001e9920: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ +001e9930: 7374 6162 207c 2067 7265 7020 2d71 2022  stab | grep -q "
│ │ │ +001e9940: 6e6f 6578 6563 223b 2074 6865 6e0a 2020  noexec"; then.  
│ │ │ +001e9950: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ +001e9960: 6f75 6e74 5f6f 7074 733d 2428 6772 6570  ount_opts=$(grep
│ │ │ +001e9970: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ +001e9980: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ +001e9990: 632f 6673 7461 6220 7c20 6177 6b20 277b  c/fstab | awk '{
│ │ │ +001e99a0: 7072 696e 7420 2434 7d27 290a 2020 2020  print $4}').    
│ │ │ +001e99b0: 2020 2020 7365 6420 2d69 2022 737c 5c28      sed -i "s|\(
│ │ │ +001e99c0: 247b 6d6f 756e 745f 706f 696e 745f 6d61  ${mount_point_ma
│ │ │ +001e99d0: 7463 685f 7265 6765 7870 7d2e 2a24 7b70  tch_regexp}.*${p
│ │ │ +001e99e0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001e99f0: 7473 7d5c 297c 5c31 2c6e 6f65 7865 637c  ts}\)|\1,noexec|
│ │ │ +001e9a00: 2220 2f65 7463 2f66 7374 6162 0a20 2020  " /etc/fstab.   
│ │ │ +001e9a10: 2066 690a 0a0a 2020 2020 6966 206d 6b64   fi...    if mkd
│ │ │ +001e9a20: 6972 202d 7020 222f 746d 7022 3b20 7468  ir -p "/tmp"; th
│ │ │ +001e9a30: 656e 0a20 2020 2020 2020 2069 6620 6d6f  en.        if mo
│ │ │ +001e9a40: 756e 7470 6f69 6e74 202d 7120 222f 746d  untpoint -q "/tm
│ │ │ +001e9a50: 7022 3b20 7468 656e 0a20 2020 2020 2020  p"; then.       
│ │ │ +001e9a60: 2020 2020 206d 6f75 6e74 202d 6f20 7265       mount -o re
│ │ │ +001e9a70: 6d6f 756e 7420 2d2d 7461 7267 6574 2022  mount --target "
│ │ │ +001e9a80: 2f74 6d70 220a 2020 2020 2020 2020 6669  /tmp".        fi
│ │ │ +001e9a90: 0a20 2020 2066 690a 7d0a 0a70 6572 666f  .    fi.}..perfo
│ │ │ +001e9aa0: 726d 5f72 656d 6564 6961 7469 6f6e 0a0a  rm_remediation..
│ │ │ +001e9ab0: 656c 7365 0a20 2020 2026 6774 3b26 616d  else.    >&am
│ │ │ +001e9ac0: 703b 3220 6563 686f 2027 5265 6d65 6469  p;2 echo 'Remedi
│ │ │ +001e9ad0: 6174 696f 6e20 6973 206e 6f74 2061 7070  ation is not app
│ │ │ +001e9ae0: 6c69 6361 626c 652c 206e 6f74 6869 6e67  licable, nothing
│ │ │ +001e9af0: 2077 6173 2064 6f6e 6527 0a66 690a 3c2f   was done'.fi.
Re │ │ │ +001e9bb0: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ +001e9bc0: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
│ │ │ +001e9c60: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 < │ │ │ +001e9ca0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +001e9cb0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
.
│ │ │ +001e9d00: 7061 7274 202f 746d 7020 2d2d 6d6f 756e  part /tmp --moun
│ │ │ +001e9d10: 746f 7074 696f 6e73 3d22 6e6f 6578 6563  toptions="noexec
│ │ │ +001e9d20: 220a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  ".
< │ │ │ 001e9d30: 2f64 6976 3e3c 2f64 6976 3e3c 2f74 643e /div> │ │ │ 001e9d40: 3c2f 7472 3e3c 2f74 626f 6479 3e3c 2f74 < │ │ │ 001e9d60: 7472 2064 6174 612d 7474 2d69 643d 2278 tr data-tt-id="x │ │ │ 001e9d70: 6363 6466 5f6f 7267 2e73 7367 7072 6f6a ccdf_org.ssgproj │ │ │ 001e9d80: 6563 742e 636f 6e74 656e 745f 7275 6c65 ect.content_rule │ │ │ 001e9d90: 5f6d 6f75 6e74 5f6f 7074 696f 6e5f 746d _mount_option_tm │ │ │ @@ -125660,627 +125660,627 @@ │ │ │ 001eadb0: 7461 2d74 6172 6765 743d 2223 6964 3539 ta-target="#id59 │ │ │ 001eadc0: 3722 2074 6162 696e 6465 783d 2230 2220 7" tabindex="0" │ │ │ 001eadd0: 726f 6c65 3d22 6275 7474 6f6e 2220 6172 role="button" ar │ │ │ 001eade0: 6961 2d65 7870 616e 6465 643d 2266 616c ia-expanded="fal │ │ │ 001eadf0: 7365 2220 7469 746c 653d 2241 6374 6976 se" title="Activ │ │ │ 001eae00: 6174 6520 746f 2072 6576 6561 6c22 2068 ate to reveal" h │ │ │ 001eae10: 7265 663d 2223 2122 3e52 656d 6564 6961 ref="#!">Remedia │ │ │ -001eae20: 7469 6f6e 2041 6e61 636f 6e64 6120 736e tion Anaconda sn │ │ │ -001eae30: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ +001e9c50: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +001e9c80: 696f 6e3a 3c2f 7468 3e3c 7464 3e68 6967 ion:hig │ │ │ +001e9c90: 683c 2f74 643e 3c2f 7472 3e3c 7472 3e3c h
Strate │ │ │ +001e9cd0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +001e9ce0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
│ │ │ -001eaee0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c
Compl │ │ │ -001eaec0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -001eaed0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -001eaef0: 2f74 683e 3c74 643e 6869 6768 3c2f 7464 /th>high
Re │ │ │ -001eaf10: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -001eaf20: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -001eaf60: 7072 653e 3c63 6f64 653e 0a70 6172 7420 pre>.part │ │ │ -001eaf70: 2f74 6d70 202d 2d6d 6f75 6e74 6f70 7469 /tmp --mountopti │ │ │ -001eaf80: 6f6e 733d 226e 6f73 7569 6422 0a3c 2f63 ons="nosuid".
│ │ │ -001eafa0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274
Rem │ │ │ -001eb040: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -001eb050: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -001eb060: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -001eb100: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr> │ │ │ -001eb150: 3c74 723e 3c74 683e 5374 7261 7465 6779

│ │ │ -001eb190: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ -001eb1a0: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ -001eb1b0: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ -001eb1c0: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ -001eb1d0: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ -001eb1e0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001eb1f0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001eb200: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ -001eb210: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -001eb220: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001eb230: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ -001eb240: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ -001eb250: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001eb260: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ -001eb270: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001eb280: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001eb290: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001eb2a0: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001eb2b0: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001eb2c0: 745f 6f70 7469 6f6e 5f74 6d70 5f6e 6f73  t_option_tmp_nos
│ │ │ -001eb2d0: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f  uid.  - no_reboo
│ │ │ -001eb2e0: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ -001eb2f0: 3a20 2741 6464 206e 6f73 7569 6420 4f70  : 'Add nosuid Op
│ │ │ -001eb300: 7469 6f6e 2074 6f20 2f74 6d70 3a20 4368  tion to /tmp: Ch
│ │ │ -001eb310: 6563 6b20 696e 666f 726d 6174 696f 6e20  eck information 
│ │ │ -001eb320: 6173 736f 6369 6174 6564 2074 6f20 6d6f  associated to mo
│ │ │ -001eb330: 756e 7470 6f69 6e74 270a 2020 616e 7369  untpoint'.  ansi
│ │ │ -001eb340: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ -001eb350: 616e 643a 2066 696e 646d 6e74 202d 2d66  and: findmnt --f
│ │ │ -001eb360: 7374 6162 2027 2f74 6d70 270a 2020 7265  stab '/tmp'.  re
│ │ │ -001eb370: 6769 7374 6572 3a20 6465 7669 6365 5f6e  gister: device_n
│ │ │ -001eb380: 616d 650a 2020 6661 696c 6564 5f77 6865  ame.  failed_whe
│ │ │ -001eb390: 6e3a 2064 6576 6963 655f 6e61 6d65 2e72  n: device_name.r
│ │ │ -001eb3a0: 6320 2667 743b 2031 0a20 2063 6861 6e67  c > 1.  chang
│ │ │ -001eb3b0: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ -001eb3c0: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ -001eb3d0: 7365 0a20 2077 6865 6e3a 0a20 202d 2028  se.  when:.  - (
│ │ │ -001eb3e0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -001eb3f0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001eb400: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ -001eb410: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ -001eb420: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001eb430: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ -001eb440: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ -001eb450: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001eb460: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -001eb470: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -001eb480: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001eb490: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ -001eb4a0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001eb4b0: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ -001eb4c0: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -001eb4d0: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -001eb4e0: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ -001eb4f0: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ -001eb500: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ -001eb510: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ -001eb520: 2920 290a 2020 2d20 2722 2f74 6d70 2220  ) ).  - '"/tmp" 
│ │ │ -001eb530: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ -001eb540: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ -001eb550: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ -001eb560: 7427 0a20 2074 6167 733a 0a20 202d 204e  t'.  tags:.  - N
│ │ │ -001eb570: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ -001eb580: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001eb590: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ -001eb5a0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -001eb5b0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001eb5c0: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ -001eb5d0: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ -001eb5e0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001eb5f0: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ -001eb600: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ -001eb610: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ -001eb620: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -001eb630: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ -001eb640: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ -001eb650: 5f6f 7074 696f 6e5f 746d 705f 6e6f 7375  _option_tmp_nosu
│ │ │ -001eb660: 6964 0a20 202d 206e 6f5f 7265 626f 6f74  id.  - no_reboot
│ │ │ -001eb670: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ -001eb680: 2027 4164 6420 6e6f 7375 6964 204f 7074   'Add nosuid Opt
│ │ │ -001eb690: 696f 6e20 746f 202f 746d 703a 2043 7265  ion to /tmp: Cre
│ │ │ -001eb6a0: 6174 6520 6d6f 756e 745f 696e 666f 2064  ate mount_info d
│ │ │ -001eb6b0: 6963 7469 6f6e 6172 7920 7661 7269 6162  ictionary variab
│ │ │ -001eb6c0: 6c65 270a 2020 7365 745f 6661 6374 3a0a  le'.  set_fact:.
│ │ │ -001eb6d0: 2020 2020 6d6f 756e 745f 696e 666f 3a20      mount_info: 
│ │ │ -001eb6e0: 277b 7b20 6d6f 756e 745f 696e 666f 7c64  '{{ mount_info|d
│ │ │ -001eb6f0: 6566 6175 6c74 287b 7d29 7c63 6f6d 6269  efault({})|combi
│ │ │ -001eb700: 6e65 287b 6974 656d 2e30 3a20 6974 656d  ne({item.0: item
│ │ │ -001eb710: 2e31 7d29 207d 7d27 0a20 2077 6974 685f  .1}) }}'.  with_
│ │ │ -001eb720: 746f 6765 7468 6572 3a0a 2020 2d20 277b  together:.  - '{
│ │ │ -001eb730: 7b20 6465 7669 6365 5f6e 616d 652e 7374  { device_name.st
│ │ │ -001eb740: 646f 7574 5f6c 696e 6573 5b30 5d2e 7370  dout_lines[0].sp
│ │ │ -001eb750: 6c69 7428 2920 7c20 6d61 7028 2727 6c6f  lit() | map(''lo
│ │ │ -001eb760: 7765 7227 2729 207c 206c 6973 7420 7d7d  wer'') | list }}
│ │ │ -001eb770: 270a 2020 2d20 277b 7b20 6465 7669 6365  '.  - '{{ device
│ │ │ -001eb780: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ -001eb790: 6573 5b31 5d2e 7370 6c69 7428 2920 7c20  es[1].split() | 
│ │ │ -001eb7a0: 6c69 7374 207d 7d27 0a20 2077 6865 6e3a  list }}'.  when:
│ │ │ -001eb7b0: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ -001eb7c0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -001eb7d0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001eb7e0: 616e 6420 2272 706d 2d6f 7374 7265 6522  and "rpm-ostree"
│ │ │ -001eb7f0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001eb800: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001eb810: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ -001eb820: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001eb830: 6167 6573 2061 6e64 206e 6f74 2022 6f70  ages and not "op
│ │ │ -001eb840: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ -001eb850: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001eb860: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001eb870: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ -001eb880: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ -001eb890: 696e 6520 2920 616e 6420 6e6f 7420 2820  ine ) and not ( 
│ │ │ -001eb8a0: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ -001eb8b0: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20  zation_type in. 
│ │ │ -001eb8c0: 2020 205b 2264 6f63 6b65 7222 2c20 226c     ["docker", "l
│ │ │ -001eb8d0: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ -001eb8e0: 706f 646d 616e 222c 2022 636f 6e74 6169  podman", "contai
│ │ │ -001eb8f0: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ -001eb900: 2f74 6d70 2220 696e 2061 6e73 6962 6c65  /tmp" in ansible
│ │ │ -001eb910: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ -001eb920: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ -001eb930: 207c 206c 6973 7427 0a20 202d 2064 6576   | list'.  - dev
│ │ │ -001eb940: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ -001eb950: 6973 2064 6566 696e 6564 2061 6e64 2064  is defined and d
│ │ │ -001eb960: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001eb970: 745f 6c69 6e65 7320 6973 2064 6566 696e  t_lines is defin
│ │ │ -001eb980: 6564 0a20 202d 2028 6465 7669 6365 5f6e  ed.  - (device_n
│ │ │ -001eb990: 616d 652e 7374 646f 7574 207c 206c 656e  ame.stdout | len
│ │ │ -001eb9a0: 6774 6820 2667 743b 2030 290a 2020 7461  gth > 0).  ta
│ │ │ -001eb9b0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -001eb9c0: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ -001eb9d0: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ -001eb9e0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001eb9f0: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ -001eba00: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ -001eba10: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001eba20: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ -001eba30: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ -001eba40: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -001eba50: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ -001eba60: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -001eba70: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001eba80: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -001eba90: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ -001ebaa0: 5f74 6d70 5f6e 6f73 7569 640a 2020 2d20  _tmp_nosuid.  - 
│ │ │ -001ebab0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001ebac0: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ -001ebad0: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20  osuid Option to 
│ │ │ -001ebae0: 2f74 6d70 3a20 4966 202f 746d 7020 6e6f  /tmp: If /tmp no
│ │ │ -001ebaf0: 7420 6d6f 756e 7465 642c 2063 7261 6674  t mounted, craft
│ │ │ -001ebb00: 206d 6f75 6e74 5f69 6e66 6f20 6d61 6e75   mount_info manu
│ │ │ -001ebb10: 616c 6c79 270a 2020 7365 745f 6661 6374  ally'.  set_fact
│ │ │ -001ebb20: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ -001ebb30: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001ebb40: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d  |default({})|com
│ │ │ -001ebb50: 6269 6e65 287b 6974 656d 2e30 3a20 6974  bine({item.0: it
│ │ │ -001ebb60: 656d 2e31 7d29 207d 7d27 0a20 2077 6974  em.1}) }}'.  wit
│ │ │ -001ebb70: 685f 746f 6765 7468 6572 3a0a 2020 2d20  h_together:.  - 
│ │ │ -001ebb80: 2d20 7461 7267 6574 0a20 2020 202d 2073  - target.    - s
│ │ │ -001ebb90: 6f75 7263 650a 2020 2020 2d20 6673 7479  ource.    - fsty
│ │ │ -001ebba0: 7065 0a20 2020 202d 206f 7074 696f 6e73  pe.    - options
│ │ │ -001ebbb0: 0a20 202d 202d 202f 746d 700a 2020 2020  .  - - /tmp.    
│ │ │ -001ebbc0: 2d20 2727 0a20 2020 202d 2027 270a 2020  - ''.    - ''.  
│ │ │ -001ebbd0: 2020 2d20 6465 6661 756c 7473 0a20 2077    - defaults.  w
│ │ │ -001ebbe0: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ -001ebbf0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -001ebc00: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001ebc10: 6765 7320 616e 6420 2272 706d 2d6f 7374  ges and "rpm-ost
│ │ │ -001ebc20: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -001ebc30: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -001ebc40: 2020 2061 6e64 2022 626f 6f74 6322 2069     and "bootc" i
│ │ │ -001ebc50: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001ebc60: 7061 636b 6167 6573 2061 6e64 206e 6f74  packages and not
│ │ │ -001ebc70: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ -001ebc80: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ -001ebc90: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -001ebca0: 2020 2061 6e64 2022 6f73 7472 6565 2220     and "ostree" 
│ │ │ -001ebcb0: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ -001ebcc0: 636d 646c 696e 6520 2920 616e 6420 6e6f  cmdline ) and no
│ │ │ -001ebcd0: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ -001ebce0: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ -001ebcf0: 696e 0a20 2020 205b 2264 6f63 6b65 7222  in.    ["docker"
│ │ │ -001ebd00: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ -001ebd10: 222c 2022 706f 646d 616e 222c 2022 636f  ", "podman", "co
│ │ │ -001ebd20: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ -001ebd30: 2d20 2722 2f74 6d70 2220 696e 2061 6e73  - '"/tmp" in ans
│ │ │ -001ebd40: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ -001ebd50: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ -001ebd60: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ -001ebd70: 2028 222d 2d66 7374 6162 2220 7c20 6c65   ("--fstab" | le
│ │ │ -001ebd80: 6e67 7468 203d 3d20 3029 0a20 202d 2064  ngth == 0).  - d
│ │ │ -001ebd90: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001ebda0: 7420 6973 2064 6566 696e 6564 2061 6e64  t is defined and
│ │ │ -001ebdb0: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ -001ebdc0: 6f75 745f 6c69 6e65 7320 6973 2064 6566  out_lines is def
│ │ │ -001ebdd0: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ -001ebde0: 5f6e 616d 652e 7374 646f 7574 207c 206c  _name.stdout | l
│ │ │ -001ebdf0: 656e 6774 6820 3d3d 2030 290a 2020 7461  ength == 0).  ta
│ │ │ -001ebe00: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -001ebe10: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ -001ebe20: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ -001ebe30: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001ebe40: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ -001ebe50: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ -001ebe60: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001ebe70: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ -001ebe80: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ -001ebe90: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -001ebea0: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ -001ebeb0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -001ebec0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001ebed0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -001ebee0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ -001ebef0: 5f74 6d70 5f6e 6f73 7569 640a 2020 2d20  _tmp_nosuid.  - 
│ │ │ -001ebf00: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001ebf10: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ -001ebf20: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20  osuid Option to 
│ │ │ -001ebf30: 2f74 6d70 3a20 4d61 6b65 2073 7572 6520  /tmp: Make sure 
│ │ │ -001ebf40: 6e6f 7375 6964 206f 7074 696f 6e20 6973  nosuid option is
│ │ │ -001ebf50: 2070 6172 7420 6f66 2074 6865 2074 6f20   part of the to 
│ │ │ -001ebf60: 2f74 6d70 0a20 2020 206f 7074 696f 6e73  /tmp.    options
│ │ │ -001ebf70: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ -001ebf80: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ -001ebf90: 7b20 6d6f 756e 745f 696e 666f 207c 2063  { mount_info | c
│ │ │ -001ebfa0: 6f6d 6269 6e65 2820 7b27 276f 7074 696f  ombine( {''optio
│ │ │ -001ebfb0: 6e73 2727 3a27 2727 277e 286d 6f75 6e74  ns'':''''~(mount
│ │ │ -001ebfc0: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c0a  _info.options |.
│ │ │ -001ebfd0: 2020 2020 2020 6465 6661 756c 7428 2727        default(''
│ │ │ -001ebfe0: 2727 2929 7e28 2727 2c27 2720 6966 2028  ''))~('','' if (
│ │ │ -001ebff0: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ -001ec000: 6e73 207c 2064 6566 6175 6c74 2827 2727  ns | default('''
│ │ │ -001ec010: 2729 2920 656c 7365 2027 2727 2729 7e27  ')) else '''')~'
│ │ │ -001ec020: 276e 6f73 7569 6427 270a 2020 2020 2020  'nosuid''.      
│ │ │ -001ec030: 7d29 207d 7d27 0a20 2077 6865 6e3a 0a20  }) }}'.  when:. 
│ │ │ -001ec040: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ -001ec050: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -001ec060: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001ec070: 6420 2272 706d 2d6f 7374 7265 6522 2069  d "rpm-ostree" i
│ │ │ -001ec080: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001ec090: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001ec0a0: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ -001ec0b0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001ec0c0: 6573 2061 6e64 206e 6f74 2022 6f70 656e  es and not "open
│ │ │ -001ec0d0: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ -001ec0e0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001ec0f0: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001ec100: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ -001ec110: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ -001ec120: 6520 2920 616e 6420 6e6f 7420 2820 616e  e ) and not ( an
│ │ │ -001ec130: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ -001ec140: 7469 6f6e 5f74 7970 6520 696e 0a20 2020  tion_type in.   
│ │ │ -001ec150: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ -001ec160: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ -001ec170: 646d 616e 222c 2022 636f 6e74 6169 6e65  dman", "containe
│ │ │ -001ec180: 7222 5d20 2920 290a 2020 2d20 2722 2f74  r"] ) ).  - '"/t
│ │ │ -001ec190: 6d70 2220 696e 2061 6e73 6962 6c65 5f6d  mp" in ansible_m
│ │ │ -001ec1a0: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ -001ec1b0: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ -001ec1c0: 206c 6973 7427 0a20 202d 206d 6f75 6e74   list'.  - mount
│ │ │ -001ec1d0: 5f69 6e66 6f20 6973 2064 6566 696e 6564  _info is defined
│ │ │ -001ec1e0: 2061 6e64 2022 6e6f 7375 6964 2220 6e6f   and "nosuid" no
│ │ │ -001ec1f0: 7420 696e 2028 6d6f 756e 745f 696e 666f  t in (mount_info
│ │ │ -001ec200: 2e6f 7074 696f 6e73 207c 2064 6566 6175  .options | defau
│ │ │ -001ec210: 6c74 2827 2729 290a 2020 7461 6773 3a0a  lt('')).  tags:.
│ │ │ -001ec220: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001ec230: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ -001ec240: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ -001ec250: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001ec260: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ -001ec270: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ -001ec280: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001ec290: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ -001ec2a0: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ -001ec2b0: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -001ec2c0: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -001ec2d0: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -001ec2e0: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -001ec2f0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001ec300: 6d6f 756e 745f 6f70 7469 6f6e 5f74 6d70  mount_option_tmp
│ │ │ -001ec310: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ -001ec320: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ -001ec330: 6e61 6d65 3a20 2741 6464 206e 6f73 7569  name: 'Add nosui
│ │ │ -001ec340: 6420 4f70 7469 6f6e 2074 6f20 2f74 6d70  d Option to /tmp
│ │ │ -001ec350: 3a20 456e 7375 7265 202f 746d 7020 6973  : Ensure /tmp is
│ │ │ -001ec360: 206d 6f75 6e74 6564 2077 6974 6820 6e6f   mounted with no
│ │ │ -001ec370: 7375 6964 206f 7074 696f 6e27 0a20 2061  suid option'.  a
│ │ │ -001ec380: 6e73 6962 6c65 2e70 6f73 6978 2e6d 6f75  nsible.posix.mou
│ │ │ -001ec390: 6e74 3a0a 2020 2020 7061 7468 3a20 2f74  nt:.    path: /t
│ │ │ -001ec3a0: 6d70 0a20 2020 2073 7263 3a20 277b 7b20  mp.    src: '{{ 
│ │ │ -001ec3b0: 6d6f 756e 745f 696e 666f 2e73 6f75 7263  mount_info.sourc
│ │ │ -001ec3c0: 6520 7c20 6465 6661 756c 7428 2727 2727  e | default(''''
│ │ │ -001ec3d0: 2920 7d7d 270a 2020 2020 6f70 7473 3a20  ) }}'.    opts: 
│ │ │ -001ec3e0: 277b 7b20 6d6f 756e 745f 696e 666f 2e6f  '{{ mount_info.o
│ │ │ -001ec3f0: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ -001ec400: 2827 2727 2729 207d 7d27 0a20 2020 2073  ('''') }}'.    s
│ │ │ -001ec410: 7461 7465 3a20 6d6f 756e 7465 640a 2020  tate: mounted.  
│ │ │ -001ec420: 2020 6673 7479 7065 3a20 277b 7b20 6d6f    fstype: '{{ mo
│ │ │ -001ec430: 756e 745f 696e 666f 2e66 7374 7970 6520  unt_info.fstype 
│ │ │ -001ec440: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ -001ec450: 7d7d 270a 2020 7265 6769 7374 6572 3a20  }}'.  register: 
│ │ │ -001ec460: 6d6f 756e 745f 7265 7375 6c74 0a20 2066  mount_result.  f
│ │ │ -001ec470: 6169 6c65 645f 7768 656e 3a0a 2020 2d20  ailed_when:.  - 
│ │ │ -001ec480: 6d6f 756e 745f 7265 7375 6c74 2069 7320  mount_result is 
│ │ │ -001ec490: 6661 696c 6564 0a20 202d 2027 2727 7461  failed.  - '''ta
│ │ │ -001ec4a0: 7267 6574 2069 7320 6275 7379 2727 206e  rget is busy'' n
│ │ │ -001ec4b0: 6f74 2069 6e20 286d 6f75 6e74 5f72 6573  ot in (mount_res
│ │ │ -001ec4c0: 756c 742e 6d73 6720 7c20 6465 6661 756c  ult.msg | defaul
│ │ │ -001ec4d0: 7428 2727 2727 2929 270a 2020 2d20 2727  t(''''))'.  - ''
│ │ │ -001ec4e0: 2761 6c72 6561 6479 206d 6f75 6e74 6564  'already mounted
│ │ │ -001ec4f0: 2727 206e 6f74 2069 6e20 286d 6f75 6e74  '' not in (mount
│ │ │ -001ec500: 5f72 6573 756c 742e 6d73 6720 7c20 6465  _result.msg | de
│ │ │ -001ec510: 6661 756c 7428 2727 2727 2929 270a 2020  fault(''''))'.  
│ │ │ -001ec520: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ -001ec530: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ -001ec540: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001ec550: 6167 6573 2061 6e64 2022 7270 6d2d 6f73  ages and "rpm-os
│ │ │ -001ec560: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001ec570: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001ec580: 2020 2020 616e 6420 2262 6f6f 7463 2220      and "bootc" 
│ │ │ -001ec590: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001ec5a0: 2e70 6163 6b61 6765 7320 616e 6420 6e6f  .packages and no
│ │ │ -001ec5b0: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ -001ec5c0: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ -001ec5d0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001ec5e0: 2020 2020 616e 6420 226f 7374 7265 6522      and "ostree"
│ │ │ -001ec5f0: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ -001ec600: 5f63 6d64 6c69 6e65 2029 2061 6e64 206e  _cmdline ) and n
│ │ │ -001ec610: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ -001ec620: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ -001ec630: 2069 6e0a 2020 2020 5b22 646f 636b 6572   in.    ["docker
│ │ │ -001ec640: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ -001ec650: 7a22 2c20 2270 6f64 6d61 6e22 2c20 2263  z", "podman", "c
│ │ │ -001ec660: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ -001ec670: 202d 2027 222f 746d 7022 2069 6e20 616e   - '"/tmp" in an
│ │ │ -001ec680: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ -001ec690: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ -001ec6a0: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ -001ec6b0: 2d20 6d6f 756e 745f 696e 666f 2069 7320  - mount_info is 
│ │ │ -001ec6c0: 6465 6669 6e65 640a 2020 2d20 2864 6576  defined.  - (dev
│ │ │ -001ec6d0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ -001ec6e0: 6973 2064 6566 696e 6564 2061 6e64 2028  is defined and (
│ │ │ -001ec6f0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001ec700: 7574 207c 206c 656e 6774 6820 2667 743b  ut | length >
│ │ │ -001ec710: 2030 2929 206f 7220 2822 2d2d 6673 7461   0)) or ("--fsta
│ │ │ -001ec720: 6222 0a20 2020 207c 206c 656e 6774 6820  b".    | length 
│ │ │ -001ec730: 3d3d 2030 290a 2020 7461 6773 3a0a 2020  == 0).  tags:.  
│ │ │ -001ec740: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001ec750: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ -001ec760: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ -001ec770: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -001ec780: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -001ec790: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ -001ec7a0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -001ec7b0: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ -001ec7c0: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ -001ec7d0: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -001ec7e0: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -001ec7f0: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -001ec800: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -001ec810: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -001ec820: 756e 745f 6f70 7469 6f6e 5f74 6d70 5f6e  unt_option_tmp_n
│ │ │ -001ec830: 6f73 7569 640a 2020 2d20 6e6f 5f72 6562  osuid.  - no_reb
│ │ │ -001ec840: 6f6f 745f 6e65 6564 6564 0a3c 2f63 6f64  oot_needed.
Remed │ │ │ -001ec900: 6961 7469 6f6e 2053 6865 6c6c 2073 6372 iation Shell scr │ │ │ -001ec910: 6970 7420 e287 b23c 2f61 3e3c 6272 3e3c ipt ...
< │ │ │ -001ec920: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -001ec930: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -001ec940: 7365 2220 6964 3d22 6964 3539 3922 3e3c se" id="id599">< │ │ │ -001ec950: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -001ec960: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -001ec970: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -001ec980: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -001ec990: 3e3c 7472 3e3c 7468 3e52 6562 6f6f 743a >
Co │ │ │ -001eb0e0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -001eb110: 6e3a 3c2f 7468 3e3c 7464 3e68 6967 683c n:high< │ │ │ -001eb120: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -001eb160: 3a3c 2f74 683e 3c74 643e 636f 6e66 6967 :config │ │ │ -001eb170: 7572 653c 2f74 643e 3c2f 7472 3e3c 2f74 ure
Reboot: │ │ │ -001ec9a0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ -001ec9c0: 3c70 7265 3e3c 636f 6465 3e23 2052 656d
# Rem
│ │ │ -001ec9d0: 6564 6961 7469 6f6e 2069 7320 6170 706c  ediation is appl
│ │ │ -001ec9e0: 6963 6162 6c65 206f 6e6c 7920 696e 2063  icable only in c
│ │ │ -001ec9f0: 6572 7461 696e 2070 6c61 7466 6f72 6d73  ertain platforms
│ │ │ -001eca00: 0a69 6620 2820 2120 2820 7b20 7270 6d20  .if ( ! ( { rpm 
│ │ │ -001eca10: 2d2d 7175 6965 7420 2d71 206b 6572 6e65  --quiet -q kerne
│ │ │ -001eca20: 6c20 3b7d 2026 616d 703b 2661 6d70 3b20  l ;} && 
│ │ │ -001eca30: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ -001eca40: 2072 706d 2d6f 7374 7265 6520 3b7d 2026   rpm-ostree ;} &
│ │ │ -001eca50: 616d 703b 2661 6d70 3b20 7b20 7270 6d20  amp;& { rpm 
│ │ │ -001eca60: 2d2d 7175 6965 7420 2d71 2062 6f6f 7463  --quiet -q bootc
│ │ │ -001eca70: 203b 7d20 2661 6d70 3b26 616d 703b 207b   ;} && {
│ │ │ -001eca80: 2021 2072 706d 202d 2d71 7569 6574 202d   ! rpm --quiet -
│ │ │ -001eca90: 7120 6f70 656e 7368 6966 742d 6b75 6265  q openshift-kube
│ │ │ -001ecaa0: 6c65 7420 3b7d 2026 616d 703b 2661 6d70  let ;} &&
│ │ │ -001ecab0: 3b20 285b 202d 6620 2f72 756e 2f6f 7374  ; ([ -f /run/ost
│ │ │ -001ecac0: 7265 652d 626f 6f74 6564 205d 207c 7c20  ree-booted ] || 
│ │ │ -001ecad0: 5b20 2d4c 202f 6f73 7472 6565 205d 2920  [ -L /ostree ]) 
│ │ │ -001ecae0: 2920 2661 6d70 3b26 616d 703b 2021 2028  ) && ! (
│ │ │ -001ecaf0: 205b 202d 6620 2f2e 646f 636b 6572 656e   [ -f /.dockeren
│ │ │ -001ecb00: 7620 5d20 7c7c 205b 202d 6620 2f72 756e  v ] || [ -f /run
│ │ │ -001ecb10: 2f2e 636f 6e74 6169 6e65 7265 6e76 205d  /.containerenv ]
│ │ │ -001ecb20: 2029 2029 2026 616d 703b 2661 6d70 3b20   ) ) && 
│ │ │ -001ecb30: 7b20 2820 6669 6e64 6d6e 7420 2d2d 6b65  { ( findmnt --ke
│ │ │ -001ecb40: 726e 656c 2022 2f74 6d70 2220 2667 743b  rnel "/tmp" >
│ │ │ -001ecb50: 202f 6465 762f 6e75 6c6c 207c 7c20 6669   /dev/null || fi
│ │ │ -001ecb60: 6e64 6d6e 7420 2d2d 6673 7461 6220 222f  ndmnt --fstab "/
│ │ │ -001ecb70: 746d 7022 2026 6774 3b20 2f64 6576 2f6e  tmp" > /dev/n
│ │ │ -001ecb80: 756c 6c20 293b 207d 3b20 7468 656e 0a0a  ull ); }; then..
│ │ │ -001ecb90: 6675 6e63 7469 6f6e 2070 6572 666f 726d  function perform
│ │ │ -001ecba0: 5f72 656d 6564 6961 7469 6f6e 207b 0a0a  _remediation {..
│ │ │ -001ecbb0: 2020 2020 0a20 2020 2020 2020 2023 2074      .        # t
│ │ │ -001ecbc0: 6865 206d 6f75 6e74 2070 6f69 6e74 202f  he mount point /
│ │ │ -001ecbd0: 746d 7020 6861 7320 746f 2062 6520 6465  tmp has to be de
│ │ │ -001ecbe0: 6669 6e65 6420 696e 202f 6574 632f 6673  fined in /etc/fs
│ │ │ -001ecbf0: 7461 620a 2020 2020 2020 2020 2320 6265  tab.        # be
│ │ │ -001ecc00: 666f 7265 2074 6869 7320 7265 6d65 6469  fore this remedi
│ │ │ -001ecc10: 6174 696f 6e20 6361 6e20 6265 2065 7865  ation can be exe
│ │ │ -001ecc20: 6375 7465 642e 2049 6e20 6361 7365 2069  cuted. In case i
│ │ │ -001ecc30: 7420 6973 206e 6f74 2064 6566 696e 6564  t is not defined
│ │ │ -001ecc40: 2c20 7468 650a 2020 2020 2020 2020 2320  , the.        # 
│ │ │ -001ecc50: 7265 6d65 6469 6174 696f 6e20 6162 6f72  remediation abor
│ │ │ -001ecc60: 7473 2061 6e64 206e 6f20 6368 616e 6765  ts and no change
│ │ │ -001ecc70: 7320 7265 6761 7264 696e 6720 7468 6520  s regarding the 
│ │ │ -001ecc80: 6d6f 756e 7420 706f 696e 7420 6172 6520  mount point are 
│ │ │ -001ecc90: 646f 6e65 2e0a 2020 2020 2020 2020 6d6f  done..        mo
│ │ │ -001ecca0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001eccb0: 7265 6765 7870 3d22 2428 7072 696e 7466  regexp="$(printf
│ │ │ -001eccc0: 2022 5e5b 5b3a 7370 6163 653a 5d5d 2a5b   "^[[:space:]]*[
│ │ │ -001eccd0: 5e23 5d2e 2a5b 5b3a 7370 6163 653a 5d5d  ^#].*[[:space:]]
│ │ │ -001ecce0: 2573 5b5b 3a73 7061 6365 3a5d 5d22 2022  %s[[:space:]]" "
│ │ │ -001eccf0: 2f74 6d70 2229 220a 0a20 2020 2067 7265  /tmp")"..    gre
│ │ │ -001ecd00: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001ecd10: 6d61 7463 685f 7265 6765 7870 2220 2d71  match_regexp" -q
│ │ │ -001ecd20: 202f 6574 632f 6673 7461 6220 5c0a 2020   /etc/fstab \.  
│ │ │ -001ecd30: 2020 2020 2020 7c7c 207b 2065 6368 6f20        || { echo 
│ │ │ -001ecd40: 2254 6865 206d 6f75 6e74 2070 6f69 6e74  "The mount point
│ │ │ -001ecd50: 2027 2f74 6d70 2720 6973 206e 6f74 2065   '/tmp' is not e
│ │ │ -001ecd60: 7665 6e20 696e 202f 6574 632f 6673 7461  ven in /etc/fsta
│ │ │ -001ecd70: 622c 2073 6f20 7765 2063 616e 2774 2073  b, so we can't s
│ │ │ -001ecd80: 6574 2075 7020 6d6f 756e 7420 6f70 7469  et up mount opti
│ │ │ -001ecd90: 6f6e 7322 2026 6774 3b26 616d 703b 323b  ons" >&2;
│ │ │ -001ecda0: 0a20 2020 2020 2020 2020 2020 2020 2020  .               
│ │ │ -001ecdb0: 2065 6368 6f20 224e 6f74 2072 656d 6564   echo "Not remed
│ │ │ -001ecdc0: 6961 7469 6e67 2c20 6265 6361 7573 6520  iating, because 
│ │ │ -001ecdd0: 7468 6572 6520 6973 206e 6f20 7265 636f  there is no reco
│ │ │ -001ecde0: 7264 206f 6620 2f74 6d70 2069 6e20 2f65  rd of /tmp in /e
│ │ │ -001ecdf0: 7463 2f66 7374 6162 2220 2667 743b 2661  tc/fstab" >&a
│ │ │ -001ece00: 6d70 3b32 3b20 7265 7475 726e 2031 3b20  mp;2; return 1; 
│ │ │ -001ece10: 7d0a 2020 2020 0a0a 0a20 2020 206d 6f75  }.    ...    mou
│ │ │ -001ece20: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001ece30: 6567 6578 703d 2224 2870 7269 6e74 6620  egexp="$(printf 
│ │ │ -001ece40: 225e 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e  "^[[:space:]]*[^
│ │ │ -001ece50: 235d 2e2a 5b5b 3a73 7061 6365 3a5d 5d25  #].*[[:space:]]%
│ │ │ -001ece60: 735b 5b3a 7370 6163 653a 5d5d 2220 2f74  s[[:space:]]" /t
│ │ │ -001ece70: 6d70 2922 0a0a 2020 2020 2320 4966 2074  mp)"..    # If t
│ │ │ -001ece80: 6865 206d 6f75 6e74 2070 6f69 6e74 2069  he mount point i
│ │ │ -001ece90: 7320 6e6f 7420 696e 202f 6574 632f 6673  s not in /etc/fs
│ │ │ -001ecea0: 7461 622c 2067 6574 2070 7265 7669 6f75  tab, get previou
│ │ │ -001eceb0: 7320 6d6f 756e 7420 6f70 7469 6f6e 7320  s mount options 
│ │ │ -001ecec0: 6672 6f6d 202f 6574 632f 6d74 6162 0a20  from /etc/mtab. 
│ │ │ -001eced0: 2020 2069 6620 2120 6772 6570 202d 7120     if ! grep -q 
│ │ │ -001ecee0: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ -001ecef0: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ -001ecf00: 2f66 7374 6162 3b20 7468 656e 0a20 2020  /fstab; then.   
│ │ │ -001ecf10: 2020 2020 2023 2072 756e 7469 6d65 206f       # runtime o
│ │ │ -001ecf20: 7074 7320 7769 7468 6f75 7420 736f 6d65  pts without some
│ │ │ -001ecf30: 2061 7574 6f6d 6174 6963 206b 6572 6e65   automatic kerne
│ │ │ -001ecf40: 6c2f 7573 6572 7370 6163 652d 6164 6465  l/userspace-adde
│ │ │ -001ecf50: 6420 6465 6661 756c 7473 0a20 2020 2020  d defaults.     
│ │ │ -001ecf60: 2020 2070 7265 7669 6f75 735f 6d6f 756e     previous_moun
│ │ │ -001ecf70: 745f 6f70 7473 3d24 2867 7265 7020 2224  t_opts=$(grep "$
│ │ │ -001ecf80: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001ecf90: 685f 7265 6765 7870 2220 2f65 7463 2f6d  h_regexp" /etc/m
│ │ │ -001ecfa0: 7461 6220 7c20 6865 6164 202d 3120 7c20  tab | head -1 | 
│ │ │ -001ecfb0: 2061 776b 2027 7b70 7269 6e74 2024 347d   awk '{print $4}
│ │ │ -001ecfc0: 2720 5c0a 2020 2020 2020 2020 2020 2020  ' \.            
│ │ │ -001ecfd0: 2020 2020 2020 2020 7c20 7365 6420 2d45          | sed -E
│ │ │ -001ecfe0: 2022 732f 2872 777c 6465 6661 756c 7473   "s/(rw|defaults
│ │ │ -001ecff0: 7c73 6563 6c61 6265 6c7c 6e6f 7375 6964  |seclabel|nosuid
│ │ │ -001ed000: 2928 2c7c 2429 2f2f 673b 732f 2c24 2f2f  )(,|$)//g;s/,$//
│ │ │ -001ed010: 2229 0a20 2020 2020 2020 205b 2022 2470  ").        [ "$p
│ │ │ -001ed020: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001ed030: 7473 2220 5d20 2661 6d70 3b26 616d 703b  ts" ] &&
│ │ │ -001ed040: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ -001ed050: 6f70 7473 2b3d 222c 220a 2020 2020 2020  opts+=",".      
│ │ │ -001ed060: 2020 2320 496e 2069 736f 3936 3630 2066    # In iso9660 f
│ │ │ -001ed070: 696c 6573 7973 7465 6d73 206d 7461 6220  ilesystems mtab 
│ │ │ -001ed080: 636f 756c 6420 6465 7363 7269 6265 2061  could describe a
│ │ │ -001ed090: 2022 626c 6f63 6b73 697a 6522 2076 616c   "blocksize" val
│ │ │ -001ed0a0: 7565 2c20 7468 6973 2073 686f 756c 6420  ue, this should 
│ │ │ -001ed0b0: 6265 2072 6566 6c65 6374 6564 2069 6e0a  be reflected in.
│ │ │ -001ed0c0: 2020 2020 2020 2020 2320 6673 7461 6220          # fstab 
│ │ │ -001ed0d0: 6173 2022 626c 6f63 6b22 2e20 2054 6865  as "block".  The
│ │ │ -001ed0e0: 206e 6578 7420 7661 7269 6162 6c65 2069   next variable i
│ │ │ -001ed0f0: 7320 746f 2073 6174 6973 6679 2073 6865  s to satisfy she
│ │ │ -001ed100: 6c6c 6368 6563 6b20 5343 3230 3530 2e0a  llcheck SC2050..
│ │ │ -001ed110: 2020 2020 2020 2020 6673 5f74 7970 653d          fs_type=
│ │ │ -001ed120: 2222 0a20 2020 2020 2020 2069 6620 5b20  "".        if [ 
│ │ │ -001ed130: 2022 2466 735f 7479 7065 2220 3d3d 2022   "$fs_type" == "
│ │ │ -001ed140: 6973 6f39 3636 3022 205d 203b 2074 6865  iso9660" ] ; the
│ │ │ -001ed150: 6e0a 2020 2020 2020 2020 2020 2020 7072  n.            pr
│ │ │ -001ed160: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001ed170: 733d 2428 7365 6420 2773 2f62 6c6f 636b  s=$(sed 's/block
│ │ │ -001ed180: 7369 7a65 3d2f 626c 6f63 6b3d 2f27 2026  size=/block=/' &
│ │ │ -001ed190: 6c74 3b26 6c74 3b26 6c74 3b20 2224 7072  lt;<< "$pr
│ │ │ -001ed1a0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001ed1b0: 7322 290a 2020 2020 2020 2020 6669 0a20  s").        fi. 
│ │ │ -001ed1c0: 2020 2020 2020 2065 6368 6f20 2220 2f74         echo " /t
│ │ │ -001ed1d0: 6d70 2020 6465 6661 756c 7473 2c24 7b70  mp  defaults,${p
│ │ │ -001ed1e0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001ed1f0: 7473 7d6e 6f73 7569 6420 3020 3022 2026  ts}nosuid 0 0" &
│ │ │ -001ed200: 6774 3b26 6774 3b20 2f65 7463 2f66 7374  gt;> /etc/fst
│ │ │ -001ed210: 6162 0a20 2020 2023 2049 6620 7468 6520  ab.    # If the 
│ │ │ -001ed220: 6d6f 756e 745f 6f70 7420 6f70 7469 6f6e  mount_opt option
│ │ │ -001ed230: 2069 7320 6e6f 7420 616c 7265 6164 7920   is not already 
│ │ │ -001ed240: 696e 2074 6865 206d 6f75 6e74 2070 6f69  in the mount poi
│ │ │ -001ed250: 6e74 2773 202f 6574 632f 6673 7461 6220  nt's /etc/fstab 
│ │ │ -001ed260: 656e 7472 792c 2061 6464 2069 740a 2020  entry, add it.  
│ │ │ -001ed270: 2020 656c 6966 2021 2067 7265 7020 2224    elif ! grep "$
│ │ │ -001ed280: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001ed290: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ -001ed2a0: 7374 6162 207c 2067 7265 7020 2d71 2022  stab | grep -q "
│ │ │ -001ed2b0: 6e6f 7375 6964 223b 2074 6865 6e0a 2020  nosuid"; then.  
│ │ │ -001ed2c0: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ -001ed2d0: 6f75 6e74 5f6f 7074 733d 2428 6772 6570  ount_opts=$(grep
│ │ │ -001ed2e0: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -001ed2f0: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ -001ed300: 632f 6673 7461 6220 7c20 6177 6b20 277b  c/fstab | awk '{
│ │ │ -001ed310: 7072 696e 7420 2434 7d27 290a 2020 2020  print $4}').    
│ │ │ -001ed320: 2020 2020 7365 6420 2d69 2022 737c 5c28      sed -i "s|\(
│ │ │ -001ed330: 247b 6d6f 756e 745f 706f 696e 745f 6d61  ${mount_point_ma
│ │ │ -001ed340: 7463 685f 7265 6765 7870 7d2e 2a24 7b70  tch_regexp}.*${p
│ │ │ -001ed350: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001ed360: 7473 7d5c 297c 5c31 2c6e 6f73 7569 647c  ts}\)|\1,nosuid|
│ │ │ -001ed370: 2220 2f65 7463 2f66 7374 6162 0a20 2020  " /etc/fstab.   
│ │ │ -001ed380: 2066 690a 0a0a 2020 2020 6966 206d 6b64   fi...    if mkd
│ │ │ -001ed390: 6972 202d 7020 222f 746d 7022 3b20 7468  ir -p "/tmp"; th
│ │ │ -001ed3a0: 656e 0a20 2020 2020 2020 2069 6620 6d6f  en.        if mo
│ │ │ -001ed3b0: 756e 7470 6f69 6e74 202d 7120 222f 746d  untpoint -q "/tm
│ │ │ -001ed3c0: 7022 3b20 7468 656e 0a20 2020 2020 2020  p"; then.       
│ │ │ -001ed3d0: 2020 2020 206d 6f75 6e74 202d 6f20 7265       mount -o re
│ │ │ -001ed3e0: 6d6f 756e 7420 2d2d 7461 7267 6574 2022  mount --target "
│ │ │ -001ed3f0: 2f74 6d70 220a 2020 2020 2020 2020 6669  /tmp".        fi
│ │ │ -001ed400: 0a20 2020 2066 690a 7d0a 0a70 6572 666f  .    fi.}..perfo
│ │ │ -001ed410: 726d 5f72 656d 6564 6961 7469 6f6e 0a0a  rm_remediation..
│ │ │ -001ed420: 656c 7365 0a20 2020 2026 6774 3b26 616d  else.    >&am
│ │ │ -001ed430: 703b 3220 6563 686f 2027 5265 6d65 6469  p;2 echo 'Remedi
│ │ │ -001ed440: 6174 696f 6e20 6973 206e 6f74 2061 7070  ation is not app
│ │ │ -001ed450: 6c69 6361 626c 652c 206e 6f74 6869 6e67  licable, nothing
│ │ │ -001ed460: 2077 6173 2064 6f6e 6527 0a66 690a 3c2f   was done'.fi.
│ │ │ +001eae40: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +001eae70: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +001eaee0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption: │ │ │ +001eaf00: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +001eaf30: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Comple │ │ │ +001eaec0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +001eaed0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
high
Reb │ │ │ +001eaf10: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +001eaf20: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:configure< │ │ │ +001eaf50: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ +001eaf70: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ +001eaf80: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ +001eaf90: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ +001eafa0: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ +001eafb0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +001eafc0: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ +001eafd0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001eafe0: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ +001eaff0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +001eb000: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001eb010: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ +001eb020: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ +001eb030: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ +001eb040: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ +001eb050: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ +001eb060: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ +001eb070: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +001eb080: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +001eb090: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ +001eb0a0: 7469 6f6e 5f74 6d70 5f6e 6f73 7569 640a  tion_tmp_nosuid.
│ │ │ +001eb0b0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001eb0c0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001eb0d0: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ +001eb0e0: 2074 6f20 2f74 6d70 3a20 4368 6563 6b20   to /tmp: Check 
│ │ │ +001eb0f0: 696e 666f 726d 6174 696f 6e20 6173 736f  information asso
│ │ │ +001eb100: 6369 6174 6564 2074 6f20 6d6f 756e 7470  ciated to mountp
│ │ │ +001eb110: 6f69 6e74 270a 2020 616e 7369 626c 652e  oint'.  ansible.
│ │ │ +001eb120: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ +001eb130: 2066 696e 646d 6e74 202d 2d66 7374 6162   findmnt --fstab
│ │ │ +001eb140: 2027 2f74 6d70 270a 2020 7265 6769 7374   '/tmp'.  regist
│ │ │ +001eb150: 6572 3a20 6465 7669 6365 5f6e 616d 650a  er: device_name.
│ │ │ +001eb160: 2020 6661 696c 6564 5f77 6865 6e3a 2064    failed_when: d
│ │ │ +001eb170: 6576 6963 655f 6e61 6d65 2e72 6320 2667  evice_name.rc &g
│ │ │ +001eb180: 743b 2031 0a20 2063 6861 6e67 6564 5f77  t; 1.  changed_w
│ │ │ +001eb190: 6865 6e3a 2066 616c 7365 0a20 2063 6865  hen: false.  che
│ │ │ +001eb1a0: 636b 5f6d 6f64 653a 2066 616c 7365 0a20  ck_mode: false. 
│ │ │ +001eb1b0: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ +001eb1c0: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ +001eb1d0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001eb1e0: 6b61 6765 7320 616e 6420 2272 706d 2d6f  kages and "rpm-o
│ │ │ +001eb1f0: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001eb200: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001eb210: 0a20 2020 2061 6e64 2022 626f 6f74 6322  .    and "bootc"
│ │ │ +001eb220: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001eb230: 732e 7061 636b 6167 6573 2061 6e64 206e  s.packages and n
│ │ │ +001eb240: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ +001eb250: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ +001eb260: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001eb270: 0a20 2020 2061 6e64 2022 6f73 7472 6565  .    and "ostree
│ │ │ +001eb280: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ +001eb290: 635f 636d 646c 696e 6520 2920 616e 6420  c_cmdline ) and 
│ │ │ +001eb2a0: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ +001eb2b0: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ +001eb2c0: 6520 696e 0a20 2020 205b 2264 6f63 6b65  e in.    ["docke
│ │ │ +001eb2d0: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ +001eb2e0: 767a 222c 2022 706f 646d 616e 222c 2022  vz", "podman", "
│ │ │ +001eb2f0: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ +001eb300: 2020 2d20 2722 2f74 6d70 2220 696e 2061    - '"/tmp" in a
│ │ │ +001eb310: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ +001eb320: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ +001eb330: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ +001eb340: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +001eb350: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ +001eb360: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001eb370: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ +001eb380: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +001eb390: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001eb3a0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001eb3b0: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ +001eb3c0: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ +001eb3d0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +001eb3e0: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +001eb3f0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001eb400: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001eb410: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001eb420: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001eb430: 696f 6e5f 746d 705f 6e6f 7375 6964 0a20  ion_tmp_nosuid. 
│ │ │ +001eb440: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +001eb450: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ +001eb460: 6420 6e6f 7375 6964 204f 7074 696f 6e20  d nosuid Option 
│ │ │ +001eb470: 746f 202f 746d 703a 2043 7265 6174 6520  to /tmp: Create 
│ │ │ +001eb480: 6d6f 756e 745f 696e 666f 2064 6963 7469  mount_info dicti
│ │ │ +001eb490: 6f6e 6172 7920 7661 7269 6162 6c65 270a  onary variable'.
│ │ │ +001eb4a0: 2020 7365 745f 6661 6374 3a0a 2020 2020    set_fact:.    
│ │ │ +001eb4b0: 6d6f 756e 745f 696e 666f 3a20 277b 7b20  mount_info: '{{ 
│ │ │ +001eb4c0: 6d6f 756e 745f 696e 666f 7c64 6566 6175  mount_info|defau
│ │ │ +001eb4d0: 6c74 287b 7d29 7c63 6f6d 6269 6e65 287b  lt({})|combine({
│ │ │ +001eb4e0: 6974 656d 2e30 3a20 6974 656d 2e31 7d29  item.0: item.1})
│ │ │ +001eb4f0: 207d 7d27 0a20 2077 6974 685f 746f 6765   }}'.  with_toge
│ │ │ +001eb500: 7468 6572 3a0a 2020 2d20 277b 7b20 6465  ther:.  - '{{ de
│ │ │ +001eb510: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001eb520: 5f6c 696e 6573 5b30 5d2e 7370 6c69 7428  _lines[0].split(
│ │ │ +001eb530: 2920 7c20 6d61 7028 2727 6c6f 7765 7227  ) | map(''lower'
│ │ │ +001eb540: 2729 207c 206c 6973 7420 7d7d 270a 2020  ') | list }}'.  
│ │ │ +001eb550: 2d20 277b 7b20 6465 7669 6365 5f6e 616d  - '{{ device_nam
│ │ │ +001eb560: 652e 7374 646f 7574 5f6c 696e 6573 5b31  e.stdout_lines[1
│ │ │ +001eb570: 5d2e 7370 6c69 7428 2920 7c20 6c69 7374  ].split() | list
│ │ │ +001eb580: 207d 7d27 0a20 2077 6865 6e3a 0a20 202d   }}'.  when:.  -
│ │ │ +001eb590: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ +001eb5a0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001eb5b0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001eb5c0: 2272 706d 2d6f 7374 7265 6522 2069 6e20  "rpm-ostree" in 
│ │ │ +001eb5d0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001eb5e0: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ +001eb5f0: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ +001eb600: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001eb610: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ +001eb620: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ +001eb630: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001eb640: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ +001eb650: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001eb660: 6c65 5f70 726f 635f 636d 646c 696e 6520  le_proc_cmdline 
│ │ │ +001eb670: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ +001eb680: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ +001eb690: 6f6e 5f74 7970 6520 696e 0a20 2020 205b  on_type in.    [
│ │ │ +001eb6a0: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ +001eb6b0: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ +001eb6c0: 616e 222c 2022 636f 6e74 6169 6e65 7222  an", "container"
│ │ │ +001eb6d0: 5d20 2920 290a 2020 2d20 2722 2f74 6d70  ] ) ).  - '"/tmp
│ │ │ +001eb6e0: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ +001eb6f0: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ +001eb700: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ +001eb710: 6973 7427 0a20 202d 2064 6576 6963 655f  ist'.  - device_
│ │ │ +001eb720: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ +001eb730: 6566 696e 6564 2061 6e64 2064 6576 6963  efined and devic
│ │ │ +001eb740: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ +001eb750: 6e65 7320 6973 2064 6566 696e 6564 0a20  nes is defined. 
│ │ │ +001eb760: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ +001eb770: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ +001eb780: 2667 743b 2030 290a 2020 7461 6773 3a0a  > 0).  tags:.
│ │ │ +001eb790: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001eb7a0: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ +001eb7b0: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ +001eb7c0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001eb7d0: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ +001eb7e0: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ +001eb7f0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001eb800: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ +001eb810: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ +001eb820: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001eb830: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001eb840: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001eb850: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001eb860: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001eb870: 6d6f 756e 745f 6f70 7469 6f6e 5f74 6d70  mount_option_tmp
│ │ │ +001eb880: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ +001eb890: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +001eb8a0: 6e61 6d65 3a20 2741 6464 206e 6f73 7569  name: 'Add nosui
│ │ │ +001eb8b0: 6420 4f70 7469 6f6e 2074 6f20 2f74 6d70  d Option to /tmp
│ │ │ +001eb8c0: 3a20 4966 202f 746d 7020 6e6f 7420 6d6f  : If /tmp not mo
│ │ │ +001eb8d0: 756e 7465 642c 2063 7261 6674 206d 6f75  unted, craft mou
│ │ │ +001eb8e0: 6e74 5f69 6e66 6f20 6d61 6e75 616c 6c79  nt_info manually
│ │ │ +001eb8f0: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ +001eb900: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ +001eb910: 7b20 6d6f 756e 745f 696e 666f 7c64 6566  { mount_info|def
│ │ │ +001eb920: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65  ault({})|combine
│ │ │ +001eb930: 287b 6974 656d 2e30 3a20 6974 656d 2e31  ({item.0: item.1
│ │ │ +001eb940: 7d29 207d 7d27 0a20 2077 6974 685f 746f  }) }}'.  with_to
│ │ │ +001eb950: 6765 7468 6572 3a0a 2020 2d20 2d20 7461  gether:.  - - ta
│ │ │ +001eb960: 7267 6574 0a20 2020 202d 2073 6f75 7263  rget.    - sourc
│ │ │ +001eb970: 650a 2020 2020 2d20 6673 7479 7065 0a20  e.    - fstype. 
│ │ │ +001eb980: 2020 202d 206f 7074 696f 6e73 0a20 202d     - options.  -
│ │ │ +001eb990: 202d 202f 746d 700a 2020 2020 2d20 2727   - /tmp.    - ''
│ │ │ +001eb9a0: 0a20 2020 202d 2027 270a 2020 2020 2d20  .    - ''.    - 
│ │ │ +001eb9b0: 6465 6661 756c 7473 0a20 2077 6865 6e3a  defaults.  when:
│ │ │ +001eb9c0: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ +001eb9d0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +001eb9e0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001eb9f0: 616e 6420 2272 706d 2d6f 7374 7265 6522  and "rpm-ostree"
│ │ │ +001eba00: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001eba10: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001eba20: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ +001eba30: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001eba40: 6167 6573 2061 6e64 206e 6f74 2022 6f70  ages and not "op
│ │ │ +001eba50: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ +001eba60: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001eba70: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001eba80: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ +001eba90: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ +001ebaa0: 696e 6520 2920 616e 6420 6e6f 7420 2820  ine ) and not ( 
│ │ │ +001ebab0: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ +001ebac0: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20  zation_type in. 
│ │ │ +001ebad0: 2020 205b 2264 6f63 6b65 7222 2c20 226c     ["docker", "l
│ │ │ +001ebae0: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ +001ebaf0: 706f 646d 616e 222c 2022 636f 6e74 6169  podman", "contai
│ │ │ +001ebb00: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ +001ebb10: 2f74 6d70 2220 696e 2061 6e73 6962 6c65  /tmp" in ansible
│ │ │ +001ebb20: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ +001ebb30: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ +001ebb40: 207c 206c 6973 7427 0a20 202d 2028 222d   | list'.  - ("-
│ │ │ +001ebb50: 2d66 7374 6162 2220 7c20 6c65 6e67 7468  -fstab" | length
│ │ │ +001ebb60: 203d 3d20 3029 0a20 202d 2064 6576 6963   == 0).  - devic
│ │ │ +001ebb70: 655f 6e61 6d65 2e73 7464 6f75 7420 6973  e_name.stdout is
│ │ │ +001ebb80: 2064 6566 696e 6564 2061 6e64 2064 6576   defined and dev
│ │ │ +001ebb90: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ +001ebba0: 6c69 6e65 7320 6973 2064 6566 696e 6564  lines is defined
│ │ │ +001ebbb0: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ +001ebbc0: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ +001ebbd0: 6820 3d3d 2030 290a 2020 7461 6773 3a0a  h == 0).  tags:.
│ │ │ +001ebbe0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001ebbf0: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ +001ebc00: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ +001ebc10: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001ebc20: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ +001ebc30: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ +001ebc40: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001ebc50: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ +001ebc60: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ +001ebc70: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001ebc80: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001ebc90: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001ebca0: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001ebcb0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001ebcc0: 6d6f 756e 745f 6f70 7469 6f6e 5f74 6d70  mount_option_tmp
│ │ │ +001ebcd0: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ +001ebce0: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +001ebcf0: 6e61 6d65 3a20 2741 6464 206e 6f73 7569  name: 'Add nosui
│ │ │ +001ebd00: 6420 4f70 7469 6f6e 2074 6f20 2f74 6d70  d Option to /tmp
│ │ │ +001ebd10: 3a20 4d61 6b65 2073 7572 6520 6e6f 7375  : Make sure nosu
│ │ │ +001ebd20: 6964 206f 7074 696f 6e20 6973 2070 6172  id option is par
│ │ │ +001ebd30: 7420 6f66 2074 6865 2074 6f20 2f74 6d70  t of the to /tmp
│ │ │ +001ebd40: 0a20 2020 206f 7074 696f 6e73 270a 2020  .    options'.  
│ │ │ +001ebd50: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ +001ebd60: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ +001ebd70: 756e 745f 696e 666f 207c 2063 6f6d 6269  unt_info | combi
│ │ │ +001ebd80: 6e65 2820 7b27 276f 7074 696f 6e73 2727  ne( {''options''
│ │ │ +001ebd90: 3a27 2727 277e 286d 6f75 6e74 5f69 6e66  :''''~(mount_inf
│ │ │ +001ebda0: 6f2e 6f70 7469 6f6e 7320 7c0a 2020 2020  o.options |.    
│ │ │ +001ebdb0: 2020 6465 6661 756c 7428 2727 2727 2929    default(''''))
│ │ │ +001ebdc0: 7e28 2727 2c27 2720 6966 2028 6d6f 756e  ~('','' if (moun
│ │ │ +001ebdd0: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ +001ebde0: 2064 6566 6175 6c74 2827 2727 2729 2920   default('''')) 
│ │ │ +001ebdf0: 656c 7365 2027 2727 2729 7e27 276e 6f73  else '''')~''nos
│ │ │ +001ebe00: 7569 6427 270a 2020 2020 2020 7d29 207d  uid''.      }) }
│ │ │ +001ebe10: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028  }'.  when:.  - (
│ │ │ +001ebe20: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +001ebe30: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001ebe40: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ +001ebe50: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ +001ebe60: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001ebe70: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ +001ebe80: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ +001ebe90: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001ebea0: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ +001ebeb0: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ +001ebec0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001ebed0: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ +001ebee0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001ebef0: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ +001ebf00: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ +001ebf10: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ +001ebf20: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ +001ebf30: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ +001ebf40: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ +001ebf50: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ +001ebf60: 2920 290a 2020 2d20 2722 2f74 6d70 2220  ) ).  - '"/tmp" 
│ │ │ +001ebf70: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ +001ebf80: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ +001ebf90: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ +001ebfa0: 7427 0a20 202d 206d 6f75 6e74 5f69 6e66  t'.  - mount_inf
│ │ │ +001ebfb0: 6f20 6973 2064 6566 696e 6564 2061 6e64  o is defined and
│ │ │ +001ebfc0: 2022 6e6f 7375 6964 2220 6e6f 7420 696e   "nosuid" not in
│ │ │ +001ebfd0: 2028 6d6f 756e 745f 696e 666f 2e6f 7074   (mount_info.opt
│ │ │ +001ebfe0: 696f 6e73 207c 2064 6566 6175 6c74 2827  ions | default('
│ │ │ +001ebff0: 2729 290a 2020 7461 6773 3a0a 2020 2d20  ')).  tags:.  - 
│ │ │ +001ec000: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001ec010: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001ec020: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ +001ec030: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +001ec040: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001ec050: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ +001ec060: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ +001ec070: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001ec080: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ +001ec090: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +001ec0a0: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ +001ec0b0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001ec0c0: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ +001ec0d0: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ +001ec0e0: 745f 6f70 7469 6f6e 5f74 6d70 5f6e 6f73  t_option_tmp_nos
│ │ │ +001ec0f0: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f  uid.  - no_reboo
│ │ │ +001ec100: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ +001ec110: 3a20 2741 6464 206e 6f73 7569 6420 4f70  : 'Add nosuid Op
│ │ │ +001ec120: 7469 6f6e 2074 6f20 2f74 6d70 3a20 456e  tion to /tmp: En
│ │ │ +001ec130: 7375 7265 202f 746d 7020 6973 206d 6f75  sure /tmp is mou
│ │ │ +001ec140: 6e74 6564 2077 6974 6820 6e6f 7375 6964  nted with nosuid
│ │ │ +001ec150: 206f 7074 696f 6e27 0a20 2061 6e73 6962   option'.  ansib
│ │ │ +001ec160: 6c65 2e70 6f73 6978 2e6d 6f75 6e74 3a0a  le.posix.mount:.
│ │ │ +001ec170: 2020 2020 7061 7468 3a20 2f74 6d70 0a20      path: /tmp. 
│ │ │ +001ec180: 2020 2073 7263 3a20 277b 7b20 6d6f 756e     src: '{{ moun
│ │ │ +001ec190: 745f 696e 666f 2e73 6f75 7263 6520 7c20  t_info.source | 
│ │ │ +001ec1a0: 6465 6661 756c 7428 2727 2727 2920 7d7d  default('''') }}
│ │ │ +001ec1b0: 270a 2020 2020 6f70 7473 3a20 277b 7b20  '.    opts: '{{ 
│ │ │ +001ec1c0: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ +001ec1d0: 6e73 207c 2064 6566 6175 6c74 2827 2727  ns | default('''
│ │ │ +001ec1e0: 2729 207d 7d27 0a20 2020 2073 7461 7465  ') }}'.    state
│ │ │ +001ec1f0: 3a20 6d6f 756e 7465 640a 2020 2020 6673  : mounted.    fs
│ │ │ +001ec200: 7479 7065 3a20 277b 7b20 6d6f 756e 745f  type: '{{ mount_
│ │ │ +001ec210: 696e 666f 2e66 7374 7970 6520 7c20 6465  info.fstype | de
│ │ │ +001ec220: 6661 756c 7428 2727 2727 2920 7d7d 270a  fault('''') }}'.
│ │ │ +001ec230: 2020 7265 6769 7374 6572 3a20 6d6f 756e    register: moun
│ │ │ +001ec240: 745f 7265 7375 6c74 0a20 2066 6169 6c65  t_result.  faile
│ │ │ +001ec250: 645f 7768 656e 3a0a 2020 2d20 6d6f 756e  d_when:.  - moun
│ │ │ +001ec260: 745f 7265 7375 6c74 2069 7320 6661 696c  t_result is fail
│ │ │ +001ec270: 6564 0a20 202d 2027 2727 7461 7267 6574  ed.  - '''target
│ │ │ +001ec280: 2069 7320 6275 7379 2727 206e 6f74 2069   is busy'' not i
│ │ │ +001ec290: 6e20 286d 6f75 6e74 5f72 6573 756c 742e  n (mount_result.
│ │ │ +001ec2a0: 6d73 6720 7c20 6465 6661 756c 7428 2727  msg | default(''
│ │ │ +001ec2b0: 2727 2929 270a 2020 2d20 2727 2761 6c72  ''))'.  - '''alr
│ │ │ +001ec2c0: 6561 6479 206d 6f75 6e74 6564 2727 206e  eady mounted'' n
│ │ │ +001ec2d0: 6f74 2069 6e20 286d 6f75 6e74 5f72 6573  ot in (mount_res
│ │ │ +001ec2e0: 756c 742e 6d73 6720 7c20 6465 6661 756c  ult.msg | defaul
│ │ │ +001ec2f0: 7428 2727 2727 2929 270a 2020 7768 656e  t(''''))'.  when
│ │ │ +001ec300: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ +001ec310: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +001ec320: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001ec330: 2061 6e64 2022 7270 6d2d 6f73 7472 6565   and "rpm-ostree
│ │ │ +001ec340: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001ec350: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +001ec360: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ +001ec370: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001ec380: 6b61 6765 7320 616e 6420 6e6f 7420 226f  kages and not "o
│ │ │ +001ec390: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ +001ec3a0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001ec3b0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +001ec3c0: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ +001ec3d0: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ +001ec3e0: 6c69 6e65 2029 2061 6e64 206e 6f74 2028  line ) and not (
│ │ │ +001ec3f0: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ +001ec400: 697a 6174 696f 6e5f 7479 7065 2069 6e0a  ization_type in.
│ │ │ +001ec410: 2020 2020 5b22 646f 636b 6572 222c 2022      ["docker", "
│ │ │ +001ec420: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ +001ec430: 2270 6f64 6d61 6e22 2c20 2263 6f6e 7461  "podman", "conta
│ │ │ +001ec440: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ +001ec450: 222f 746d 7022 2069 6e20 616e 7369 626c  "/tmp" in ansibl
│ │ │ +001ec460: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ +001ec470: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ +001ec480: 2920 7c20 6c69 7374 270a 2020 2d20 6d6f  ) | list'.  - mo
│ │ │ +001ec490: 756e 745f 696e 666f 2069 7320 6465 6669  unt_info is defi
│ │ │ +001ec4a0: 6e65 640a 2020 2d20 2864 6576 6963 655f  ned.  - (device_
│ │ │ +001ec4b0: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ +001ec4c0: 6566 696e 6564 2061 6e64 2028 6465 7669  efined and (devi
│ │ │ +001ec4d0: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ +001ec4e0: 206c 656e 6774 6820 2667 743b 2030 2929   length > 0))
│ │ │ +001ec4f0: 206f 7220 2822 2d2d 6673 7461 6222 0a20   or ("--fstab". 
│ │ │ +001ec500: 2020 207c 206c 656e 6774 6820 3d3d 2030     | length == 0
│ │ │ +001ec510: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ +001ec520: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ +001ec530: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001ec540: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ +001ec550: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +001ec560: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001ec570: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +001ec580: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +001ec590: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ +001ec5a0: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ +001ec5b0: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ +001ec5c0: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ +001ec5d0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +001ec5e0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +001ec5f0: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ +001ec600: 6f70 7469 6f6e 5f74 6d70 5f6e 6f73 7569  option_tmp_nosui
│ │ │ +001ec610: 640a 2020 2d20 6e6f 5f72 6562 6f6f 745f  d.  - no_reboot_
│ │ │ +001ec620: 6e65 6564 6564 0a3c 2f63 6f64 653e 3c2f  needed.
Remediati │ │ │ +001ec6e0: 6f6e 2053 6865 6c6c 2073 6372 6970 7420 on Shell script │ │ │ +001ec6f0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Reboot:false< │ │ │ +001ec790: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
# Remedia
│ │ │ +001ec7b0: 7469 6f6e 2069 7320 6170 706c 6963 6162  tion is applicab
│ │ │ +001ec7c0: 6c65 206f 6e6c 7920 696e 2063 6572 7461  le only in certa
│ │ │ +001ec7d0: 696e 2070 6c61 7466 6f72 6d73 0a69 6620  in platforms.if 
│ │ │ +001ec7e0: 2820 2120 2820 7b20 7270 6d20 2d2d 7175  ( ! ( { rpm --qu
│ │ │ +001ec7f0: 6965 7420 2d71 206b 6572 6e65 6c20 3b7d  iet -q kernel ;}
│ │ │ +001ec800: 2026 616d 703b 2661 6d70 3b20 7b20 7270   && { rp
│ │ │ +001ec810: 6d20 2d2d 7175 6965 7420 2d71 2072 706d  m --quiet -q rpm
│ │ │ +001ec820: 2d6f 7374 7265 6520 3b7d 2026 616d 703b  -ostree ;} &
│ │ │ +001ec830: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ +001ec840: 6965 7420 2d71 2062 6f6f 7463 203b 7d20  iet -q bootc ;} 
│ │ │ +001ec850: 2661 6d70 3b26 616d 703b 207b 2021 2072  && { ! r
│ │ │ +001ec860: 706d 202d 2d71 7569 6574 202d 7120 6f70  pm --quiet -q op
│ │ │ +001ec870: 656e 7368 6966 742d 6b75 6265 6c65 7420  enshift-kubelet 
│ │ │ +001ec880: 3b7d 2026 616d 703b 2661 6d70 3b20 285b  ;} && ([
│ │ │ +001ec890: 202d 6620 2f72 756e 2f6f 7374 7265 652d   -f /run/ostree-
│ │ │ +001ec8a0: 626f 6f74 6564 205d 207c 7c20 5b20 2d4c  booted ] || [ -L
│ │ │ +001ec8b0: 202f 6f73 7472 6565 205d 2920 2920 2661   /ostree ]) ) &a
│ │ │ +001ec8c0: 6d70 3b26 616d 703b 2021 2028 205b 202d  mp;& ! ( [ -
│ │ │ +001ec8d0: 6620 2f2e 646f 636b 6572 656e 7620 5d20  f /.dockerenv ] 
│ │ │ +001ec8e0: 7c7c 205b 202d 6620 2f72 756e 2f2e 636f  || [ -f /run/.co
│ │ │ +001ec8f0: 6e74 6169 6e65 7265 6e76 205d 2029 2029  ntainerenv ] ) )
│ │ │ +001ec900: 2026 616d 703b 2661 6d70 3b20 7b20 2820   && { ( 
│ │ │ +001ec910: 6669 6e64 6d6e 7420 2d2d 6b65 726e 656c  findmnt --kernel
│ │ │ +001ec920: 2022 2f74 6d70 2220 2667 743b 202f 6465   "/tmp" > /de
│ │ │ +001ec930: 762f 6e75 6c6c 207c 7c20 6669 6e64 6d6e  v/null || findmn
│ │ │ +001ec940: 7420 2d2d 6673 7461 6220 222f 746d 7022  t --fstab "/tmp"
│ │ │ +001ec950: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20   > /dev/null 
│ │ │ +001ec960: 293b 207d 3b20 7468 656e 0a0a 6675 6e63  ); }; then..func
│ │ │ +001ec970: 7469 6f6e 2070 6572 666f 726d 5f72 656d  tion perform_rem
│ │ │ +001ec980: 6564 6961 7469 6f6e 207b 0a0a 2020 2020  ediation {..    
│ │ │ +001ec990: 0a20 2020 2020 2020 2023 2074 6865 206d  .        # the m
│ │ │ +001ec9a0: 6f75 6e74 2070 6f69 6e74 202f 746d 7020  ount point /tmp 
│ │ │ +001ec9b0: 6861 7320 746f 2062 6520 6465 6669 6e65  has to be define
│ │ │ +001ec9c0: 6420 696e 202f 6574 632f 6673 7461 620a  d in /etc/fstab.
│ │ │ +001ec9d0: 2020 2020 2020 2020 2320 6265 666f 7265          # before
│ │ │ +001ec9e0: 2074 6869 7320 7265 6d65 6469 6174 696f   this remediatio
│ │ │ +001ec9f0: 6e20 6361 6e20 6265 2065 7865 6375 7465  n can be execute
│ │ │ +001eca00: 642e 2049 6e20 6361 7365 2069 7420 6973  d. In case it is
│ │ │ +001eca10: 206e 6f74 2064 6566 696e 6564 2c20 7468   not defined, th
│ │ │ +001eca20: 650a 2020 2020 2020 2020 2320 7265 6d65  e.        # reme
│ │ │ +001eca30: 6469 6174 696f 6e20 6162 6f72 7473 2061  diation aborts a
│ │ │ +001eca40: 6e64 206e 6f20 6368 616e 6765 7320 7265  nd no changes re
│ │ │ +001eca50: 6761 7264 696e 6720 7468 6520 6d6f 756e  garding the moun
│ │ │ +001eca60: 7420 706f 696e 7420 6172 6520 646f 6e65  t point are done
│ │ │ +001eca70: 2e0a 2020 2020 2020 2020 6d6f 756e 745f  ..        mount_
│ │ │ +001eca80: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001eca90: 7870 3d22 2428 7072 696e 7466 2022 5e5b  xp="$(printf "^[
│ │ │ +001ecaa0: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e  [:space:]]*[^#].
│ │ │ +001ecab0: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b  *[[:space:]]%s[[
│ │ │ +001ecac0: 3a73 7061 6365 3a5d 5d22 2022 2f74 6d70  :space:]]" "/tmp
│ │ │ +001ecad0: 2229 220a 0a20 2020 2067 7265 7020 2224  ")"..    grep "$
│ │ │ +001ecae0: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001ecaf0: 685f 7265 6765 7870 2220 2d71 202f 6574  h_regexp" -q /et
│ │ │ +001ecb00: 632f 6673 7461 6220 5c0a 2020 2020 2020  c/fstab \.      
│ │ │ +001ecb10: 2020 7c7c 207b 2065 6368 6f20 2254 6865    || { echo "The
│ │ │ +001ecb20: 206d 6f75 6e74 2070 6f69 6e74 2027 2f74   mount point '/t
│ │ │ +001ecb30: 6d70 2720 6973 206e 6f74 2065 7665 6e20  mp' is not even 
│ │ │ +001ecb40: 696e 202f 6574 632f 6673 7461 622c 2073  in /etc/fstab, s
│ │ │ +001ecb50: 6f20 7765 2063 616e 2774 2073 6574 2075  o we can't set u
│ │ │ +001ecb60: 7020 6d6f 756e 7420 6f70 7469 6f6e 7322  p mount options"
│ │ │ +001ecb70: 2026 6774 3b26 616d 703b 323b 0a20 2020   >&2;.   
│ │ │ +001ecb80: 2020 2020 2020 2020 2020 2020 2065 6368               ech
│ │ │ +001ecb90: 6f20 224e 6f74 2072 656d 6564 6961 7469  o "Not remediati
│ │ │ +001ecba0: 6e67 2c20 6265 6361 7573 6520 7468 6572  ng, because ther
│ │ │ +001ecbb0: 6520 6973 206e 6f20 7265 636f 7264 206f  e is no record o
│ │ │ +001ecbc0: 6620 2f74 6d70 2069 6e20 2f65 7463 2f66  f /tmp in /etc/f
│ │ │ +001ecbd0: 7374 6162 2220 2667 743b 2661 6d70 3b32  stab" >&2
│ │ │ +001ecbe0: 3b20 7265 7475 726e 2031 3b20 7d0a 2020  ; return 1; }.  
│ │ │ +001ecbf0: 2020 0a0a 0a20 2020 206d 6f75 6e74 5f70    ...    mount_p
│ │ │ +001ecc00: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001ecc10: 703d 2224 2870 7269 6e74 6620 225e 5b5b  p="$(printf "^[[
│ │ │ +001ecc20: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a  :space:]]*[^#].*
│ │ │ +001ecc30: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a  [[:space:]]%s[[:
│ │ │ +001ecc40: 7370 6163 653a 5d5d 2220 2f74 6d70 2922  space:]]" /tmp)"
│ │ │ +001ecc50: 0a0a 2020 2020 2320 4966 2074 6865 206d  ..    # If the m
│ │ │ +001ecc60: 6f75 6e74 2070 6f69 6e74 2069 7320 6e6f  ount point is no
│ │ │ +001ecc70: 7420 696e 202f 6574 632f 6673 7461 622c  t in /etc/fstab,
│ │ │ +001ecc80: 2067 6574 2070 7265 7669 6f75 7320 6d6f   get previous mo
│ │ │ +001ecc90: 756e 7420 6f70 7469 6f6e 7320 6672 6f6d  unt options from
│ │ │ +001ecca0: 202f 6574 632f 6d74 6162 0a20 2020 2069   /etc/mtab.    i
│ │ │ +001eccb0: 6620 2120 6772 6570 202d 7120 2224 6d6f  f ! grep -q "$mo
│ │ │ +001eccc0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001eccd0: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ +001ecce0: 6162 3b20 7468 656e 0a20 2020 2020 2020  ab; then.       
│ │ │ +001eccf0: 2023 2072 756e 7469 6d65 206f 7074 7320   # runtime opts 
│ │ │ +001ecd00: 7769 7468 6f75 7420 736f 6d65 2061 7574  without some aut
│ │ │ +001ecd10: 6f6d 6174 6963 206b 6572 6e65 6c2f 7573  omatic kernel/us
│ │ │ +001ecd20: 6572 7370 6163 652d 6164 6465 6420 6465  erspace-added de
│ │ │ +001ecd30: 6661 756c 7473 0a20 2020 2020 2020 2070  faults.        p
│ │ │ +001ecd40: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001ecd50: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ +001ecd60: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001ecd70: 6765 7870 2220 2f65 7463 2f6d 7461 6220  gexp" /etc/mtab 
│ │ │ +001ecd80: 7c20 6865 6164 202d 3120 7c20 2061 776b  | head -1 |  awk
│ │ │ +001ecd90: 2027 7b70 7269 6e74 2024 347d 2720 5c0a   '{print $4}' \.
│ │ │ +001ecda0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +001ecdb0: 2020 2020 7c20 7365 6420 2d45 2022 732f      | sed -E "s/
│ │ │ +001ecdc0: 2872 777c 6465 6661 756c 7473 7c73 6563  (rw|defaults|sec
│ │ │ +001ecdd0: 6c61 6265 6c7c 6e6f 7375 6964 2928 2c7c  label|nosuid)(,|
│ │ │ +001ecde0: 2429 2f2f 673b 732f 2c24 2f2f 2229 0a20  $)//g;s/,$//"). 
│ │ │ +001ecdf0: 2020 2020 2020 205b 2022 2470 7265 7669         [ "$previ
│ │ │ +001ece00: 6f75 735f 6d6f 756e 745f 6f70 7473 2220  ous_mount_opts" 
│ │ │ +001ece10: 5d20 2661 6d70 3b26 616d 703b 2070 7265  ] && pre
│ │ │ +001ece20: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001ece30: 2b3d 222c 220a 2020 2020 2020 2020 2320  +=",".        # 
│ │ │ +001ece40: 496e 2069 736f 3936 3630 2066 696c 6573  In iso9660 files
│ │ │ +001ece50: 7973 7465 6d73 206d 7461 6220 636f 756c  ystems mtab coul
│ │ │ +001ece60: 6420 6465 7363 7269 6265 2061 2022 626c  d describe a "bl
│ │ │ +001ece70: 6f63 6b73 697a 6522 2076 616c 7565 2c20  ocksize" value, 
│ │ │ +001ece80: 7468 6973 2073 686f 756c 6420 6265 2072  this should be r
│ │ │ +001ece90: 6566 6c65 6374 6564 2069 6e0a 2020 2020  eflected in.    
│ │ │ +001ecea0: 2020 2020 2320 6673 7461 6220 6173 2022      # fstab as "
│ │ │ +001eceb0: 626c 6f63 6b22 2e20 2054 6865 206e 6578  block".  The nex
│ │ │ +001ecec0: 7420 7661 7269 6162 6c65 2069 7320 746f  t variable is to
│ │ │ +001eced0: 2073 6174 6973 6679 2073 6865 6c6c 6368   satisfy shellch
│ │ │ +001ecee0: 6563 6b20 5343 3230 3530 2e0a 2020 2020  eck SC2050..    
│ │ │ +001ecef0: 2020 2020 6673 5f74 7970 653d 2222 0a20      fs_type="". 
│ │ │ +001ecf00: 2020 2020 2020 2069 6620 5b20 2022 2466         if [  "$f
│ │ │ +001ecf10: 735f 7479 7065 2220 3d3d 2022 6973 6f39  s_type" == "iso9
│ │ │ +001ecf20: 3636 3022 205d 203b 2074 6865 6e0a 2020  660" ] ; then.  
│ │ │ +001ecf30: 2020 2020 2020 2020 2020 7072 6576 696f            previo
│ │ │ +001ecf40: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ +001ecf50: 7365 6420 2773 2f62 6c6f 636b 7369 7a65  sed 's/blocksize
│ │ │ +001ecf60: 3d2f 626c 6f63 6b3d 2f27 2026 6c74 3b26  =/block=/' <&
│ │ │ +001ecf70: 6c74 3b26 6c74 3b20 2224 7072 6576 696f  lt;< "$previo
│ │ │ +001ecf80: 7573 5f6d 6f75 6e74 5f6f 7074 7322 290a  us_mount_opts").
│ │ │ +001ecf90: 2020 2020 2020 2020 6669 0a20 2020 2020          fi.     
│ │ │ +001ecfa0: 2020 2065 6368 6f20 2220 2f74 6d70 2020     echo " /tmp  
│ │ │ +001ecfb0: 6465 6661 756c 7473 2c24 7b70 7265 7669  defaults,${previ
│ │ │ +001ecfc0: 6f75 735f 6d6f 756e 745f 6f70 7473 7d6e  ous_mount_opts}n
│ │ │ +001ecfd0: 6f73 7569 6420 3020 3022 2026 6774 3b26  osuid 0 0" >&
│ │ │ +001ecfe0: 6774 3b20 2f65 7463 2f66 7374 6162 0a20  gt; /etc/fstab. 
│ │ │ +001ecff0: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ +001ed000: 745f 6f70 7420 6f70 7469 6f6e 2069 7320  t_opt option is 
│ │ │ +001ed010: 6e6f 7420 616c 7265 6164 7920 696e 2074  not already in t
│ │ │ +001ed020: 6865 206d 6f75 6e74 2070 6f69 6e74 2773  he mount point's
│ │ │ +001ed030: 202f 6574 632f 6673 7461 6220 656e 7472   /etc/fstab entr
│ │ │ +001ed040: 792c 2061 6464 2069 740a 2020 2020 656c  y, add it.    el
│ │ │ +001ed050: 6966 2021 2067 7265 7020 2224 6d6f 756e  if ! grep "$moun
│ │ │ +001ed060: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001ed070: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ +001ed080: 207c 2067 7265 7020 2d71 2022 6e6f 7375   | grep -q "nosu
│ │ │ +001ed090: 6964 223b 2074 6865 6e0a 2020 2020 2020  id"; then.      
│ │ │ +001ed0a0: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ +001ed0b0: 5f6f 7074 733d 2428 6772 6570 2022 246d  _opts=$(grep "$m
│ │ │ +001ed0c0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001ed0d0: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ +001ed0e0: 7461 6220 7c20 6177 6b20 277b 7072 696e  tab | awk '{prin
│ │ │ +001ed0f0: 7420 2434 7d27 290a 2020 2020 2020 2020  t $4}').        
│ │ │ +001ed100: 7365 6420 2d69 2022 737c 5c28 247b 6d6f  sed -i "s|\(${mo
│ │ │ +001ed110: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001ed120: 7265 6765 7870 7d2e 2a24 7b70 7265 7669  regexp}.*${previ
│ │ │ +001ed130: 6f75 735f 6d6f 756e 745f 6f70 7473 7d5c  ous_mount_opts}\
│ │ │ +001ed140: 297c 5c31 2c6e 6f73 7569 647c 2220 2f65  )|\1,nosuid|" /e
│ │ │ +001ed150: 7463 2f66 7374 6162 0a20 2020 2066 690a  tc/fstab.    fi.
│ │ │ +001ed160: 0a0a 2020 2020 6966 206d 6b64 6972 202d  ..    if mkdir -
│ │ │ +001ed170: 7020 222f 746d 7022 3b20 7468 656e 0a20  p "/tmp"; then. 
│ │ │ +001ed180: 2020 2020 2020 2069 6620 6d6f 756e 7470         if mountp
│ │ │ +001ed190: 6f69 6e74 202d 7120 222f 746d 7022 3b20  oint -q "/tmp"; 
│ │ │ +001ed1a0: 7468 656e 0a20 2020 2020 2020 2020 2020  then.           
│ │ │ +001ed1b0: 206d 6f75 6e74 202d 6f20 7265 6d6f 756e   mount -o remoun
│ │ │ +001ed1c0: 7420 2d2d 7461 7267 6574 2022 2f74 6d70  t --target "/tmp
│ │ │ +001ed1d0: 220a 2020 2020 2020 2020 6669 0a20 2020  ".        fi.   
│ │ │ +001ed1e0: 2066 690a 7d0a 0a70 6572 666f 726d 5f72   fi.}..perform_r
│ │ │ +001ed1f0: 656d 6564 6961 7469 6f6e 0a0a 656c 7365  emediation..else
│ │ │ +001ed200: 0a20 2020 2026 6774 3b26 616d 703b 3220  .    >&2 
│ │ │ +001ed210: 6563 686f 2027 5265 6d65 6469 6174 696f  echo 'Remediatio
│ │ │ +001ed220: 6e20 6973 206e 6f74 2061 7070 6c69 6361  n is not applica
│ │ │ +001ed230: 626c 652c 206e 6f74 6869 6e67 2077 6173  ble, nothing was
│ │ │ +001ed240: 2064 6f6e 6527 0a66 690a 3c2f 636f 6465   done'.fi.
Remedi │ │ │ +001ed300: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ +001ed310: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +001ed3a0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +001ed3b0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +001ed3d0: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ +001ed3f0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +001ed400: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +001ed420: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ +001ed440: 3c70 7265 3e3c 636f 6465 3e0a 7061 7274
.part
│ │ │ +001ed450: 202f 746d 7020 2d2d 6d6f 756e 746f 7074   /tmp --mountopt
│ │ │ +001ed460: 696f 6e73 3d22 6e6f 7375 6964 220a 3c2f  ions="nosuid".
Re │ │ │ -001ee0a0: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ -001ee0b0: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
│ │ │ -001ee150: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 < │ │ │ -001ee190: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -001ee1a0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
.
│ │ │ -001ee1f0: 7061 7274 202f 7661 722f 6c6f 6720 2d2d  part /var/log --
│ │ │ -001ee200: 6d6f 756e 746f 7074 696f 6e73 3d22 6e6f  mountoptions="no
│ │ │ -001ee210: 6578 6563 220a 3c2f 636f 6465 3e3c 2f70  exec".

Remediatio │ │ │ -001ee2d0: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ -001ee2e0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -001ee360: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ -001ee3a0: 3c74 643e 6869 6768 3c2f 7464 3e3c 2f74 < │ │ │ -001ee3f0: 7464 3e63 6f6e 6669 6775 7265 3c2f 7464 td>configure
│ │ │ -001ee140: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -001ee170: 696f 6e3a 3c2f 7468 3e3c 7464 3e68 6967 ion:hig │ │ │ -001ee180: 683c 2f74 643e 3c2f 7472 3e3c 7472 3e3c h
Strate │ │ │ -001ee1c0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -001ee1d0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexit │ │ │ -001ee370: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ -001ee390: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:high
Reboot │ │ │ -001ee3c0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -001ee3d0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:

- name: │ │ │ -001ee420: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ -001ee430: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ -001ee440: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ -001ee450: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ -001ee460: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ -001ee470: 302d 3533 2d41 432d 360a 2020 2d20 4e49 0-53-AC-6. - NI │ │ │ -001ee480: 5354 2d38 3030 2d35 332d 4143 2d36 2831 ST-800-53-AC-6(1 │ │ │ -001ee490: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -001ee4a0: 332d 434d 2d36 2861 290a 2020 2d20 4e49 3-CM-6(a). - NI │ │ │ -001ee4b0: 5354 2d38 3030 2d35 332d 434d 2d37 2861 ST-800-53-CM-7(a │ │ │ -001ee4c0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -001ee4d0: 332d 434d 2d37 2862 290a 2020 2d20 4e49 3-CM-7(b). - NI │ │ │ -001ee4e0: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20 ST-800-53-MP-7. │ │ │ -001ee4f0: 202d 2063 6f6e 6669 6775 7265 5f73 7472 - configure_str │ │ │ -001ee500: 6174 6567 790a 2020 2d20 6869 6768 5f64 ategy. - high_d │ │ │ -001ee510: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f isruption. - lo │ │ │ -001ee520: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ -001ee530: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ -001ee540: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f . - mount_optio │ │ │ -001ee550: 6e5f 7661 725f 6c6f 675f 6e6f 6578 6563 n_var_log_noexec │ │ │ -001ee560: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ -001ee570: 6565 6465 640a 0a2d 206e 616d 653a 2027 eeded..- name: ' │ │ │ -001ee580: 4164 6420 6e6f 6578 6563 204f 7074 696f Add noexec Optio │ │ │ -001ee590: 6e20 746f 202f 7661 722f 6c6f 673a 2043 n to /var/log: C │ │ │ -001ee5a0: 6865 636b 2069 6e66 6f72 6d61 7469 6f6e heck information │ │ │ -001ee5b0: 2061 7373 6f63 6961 7465 6420 746f 206d associated to m │ │ │ -001ee5c0: 6f75 6e74 706f 696e 7427 0a20 2061 6e73 ountpoint'. ans │ │ │ -001ee5d0: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d ible.builtin.com │ │ │ -001ee5e0: 6d61 6e64 3a20 6669 6e64 6d6e 7420 2d2d mand: findmnt -- │ │ │ -001ee5f0: 6673 7461 6220 272f 7661 722f 6c6f 6727 fstab '/var/log' │ │ │ -001ee600: 0a20 2072 6567 6973 7465 723a 2064 6576 . register: dev │ │ │ -001ee610: 6963 655f 6e61 6d65 0a20 2066 6169 6c65 ice_name. faile │ │ │ -001ee620: 645f 7768 656e 3a20 6465 7669 6365 5f6e d_when: device_n │ │ │ -001ee630: 616d 652e 7263 2026 6774 3b20 310a 2020 ame.rc > 1. │ │ │ -001ee640: 6368 616e 6765 645f 7768 656e 3a20 6661 changed_when: fa │ │ │ -001ee650: 6c73 650a 2020 6368 6563 6b5f 6d6f 6465 lse. check_mode │ │ │ -001ee660: 3a20 6661 6c73 650a 2020 7768 656e 3a0a : false. when:. │ │ │ -001ee670: 2020 2d20 2820 6e6f 7420 2820 226b 6572 - ( not ( "ker │ │ │ -001ee680: 6e65 6c22 2069 6e20 616e 7369 626c 655f nel" in ansible_ │ │ │ -001ee690: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ -001ee6a0: 6e64 2022 7270 6d2d 6f73 7472 6565 2220 nd "rpm-ostree" │ │ │ -001ee6b0: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ -001ee6c0: 2e70 6163 6b61 6765 730a 2020 2020 616e .packages. an │ │ │ -001ee6d0: 6420 2262 6f6f 7463 2220 696e 2061 6e73 d "bootc" in ans │ │ │ -001ee6e0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ -001ee6f0: 6765 7320 616e 6420 6e6f 7420 226f 7065 ges and not "ope │ │ │ -001ee700: 6e73 6869 6674 2d6b 7562 656c 6574 2220 nshift-kubelet" │ │ │ -001ee710: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ -001ee720: 2e70 6163 6b61 6765 730a 2020 2020 616e .packages. an │ │ │ -001ee730: 6420 226f 7374 7265 6522 2069 6e20 616e d "ostree" in an │ │ │ -001ee740: 7369 626c 655f 7072 6f63 5f63 6d64 6c69 sible_proc_cmdli │ │ │ -001ee750: 6e65 2029 2061 6e64 206e 6f74 2028 2061 ne ) and not ( a │ │ │ -001ee760: 6e73 6962 6c65 5f76 6972 7475 616c 697a nsible_virtualiz │ │ │ -001ee770: 6174 696f 6e5f 7479 7065 2069 6e0a 2020 ation_type in. │ │ │ -001ee780: 2020 5b22 646f 636b 6572 222c 2022 6c78 ["docker", "lx │ │ │ -001ee790: 6322 2c20 226f 7065 6e76 7a22 2c20 2270 c", "openvz", "p │ │ │ -001ee7a0: 6f64 6d61 6e22 2c20 2263 6f6e 7461 696e odman", "contain │ │ │ -001ee7b0: 6572 225d 2029 2029 0a20 202d 2027 222f er"] ) ). - '"/ │ │ │ -001ee7c0: 7661 722f 6c6f 6722 2069 6e20 616e 7369 var/log" in ansi │ │ │ -001ee7d0: 626c 655f 6d6f 756e 7473 207c 206d 6170 ble_mounts | map │ │ │ -001ee7e0: 2861 7474 7269 6275 7465 3d22 6d6f 756e (attribute="moun │ │ │ -001ee7f0: 7422 2920 7c20 6c69 7374 270a 2020 7461 t") | list'. ta │ │ │ -001ee800: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ -001ee810: 2d35 332d 4143 2d36 0a20 202d 204e 4953 -53-AC-6. - NIS │ │ │ -001ee820: 542d 3830 302d 3533 2d41 432d 3628 3129 T-800-53-AC-6(1) │ │ │ -001ee830: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001ee840: 2d43 4d2d 3628 6129 0a20 202d 204e 4953 -CM-6(a). - NIS │ │ │ -001ee850: 542d 3830 302d 3533 2d43 4d2d 3728 6129 T-800-53-CM-7(a) │ │ │ -001ee860: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001ee870: 2d43 4d2d 3728 6229 0a20 202d 204e 4953 -CM-7(b). - NIS │ │ │ -001ee880: 542d 3830 302d 3533 2d4d 502d 370a 2020 T-800-53-MP-7. │ │ │ -001ee890: 2d20 636f 6e66 6967 7572 655f 7374 7261 - configure_stra │ │ │ -001ee8a0: 7465 6779 0a20 202d 2068 6967 685f 6469 tegy. - high_di │ │ │ -001ee8b0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77 sruption. - low │ │ │ -001ee8c0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ -001ee8d0: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ -001ee8e0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e - mount_option │ │ │ -001ee8f0: 5f76 6172 5f6c 6f67 5f6e 6f65 7865 630a _var_log_noexec. │ │ │ -001ee900: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ -001ee910: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741 eded..- name: 'A │ │ │ -001ee920: 6464 206e 6f65 7865 6320 4f70 7469 6f6e dd noexec Option │ │ │ -001ee930: 2074 6f20 2f76 6172 2f6c 6f67 3a20 4372 to /var/log: Cr │ │ │ -001ee940: 6561 7465 206d 6f75 6e74 5f69 6e66 6f20 eate mount_info │ │ │ -001ee950: 6469 6374 696f 6e61 7279 2076 6172 6961 dictionary varia │ │ │ -001ee960: 626c 6527 0a20 2073 6574 5f66 6163 743a ble'. set_fact: │ │ │ -001ee970: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a . mount_info: │ │ │ -001ee980: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c '{{ mount_info| │ │ │ -001ee990: 6465 6661 756c 7428 7b7d 297c 636f 6d62 default({})|comb │ │ │ -001ee9a0: 696e 6528 7b69 7465 6d2e 303a 2069 7465 ine({item.0: ite │ │ │ -001ee9b0: 6d2e 317d 2920 7d7d 270a 2020 7769 7468 m.1}) }}'. with │ │ │ -001ee9c0: 5f74 6f67 6574 6865 723a 0a20 202d 2027 _together:. - ' │ │ │ -001ee9d0: 7b7b 2064 6576 6963 655f 6e61 6d65 2e73 {{ device_name.s │ │ │ -001ee9e0: 7464 6f75 745f 6c69 6e65 735b 305d 2e73 tdout_lines[0].s │ │ │ -001ee9f0: 706c 6974 2829 207c 206d 6170 2827 276c plit() | map(''l │ │ │ -001eea00: 6f77 6572 2727 2920 7c20 6c69 7374 207d ower'') | list } │ │ │ -001eea10: 7d27 0a20 202d 2027 7b7b 2064 6576 6963 }'. - '{{ devic │ │ │ -001eea20: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69 e_name.stdout_li │ │ │ -001eea30: 6e65 735b 315d 2e73 706c 6974 2829 207c nes[1].split() | │ │ │ -001eea40: 206c 6973 7420 7d7d 270a 2020 7768 656e list }}'. when │ │ │ -001eea50: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b :. - ( not ( "k │ │ │ -001eea60: 6572 6e65 6c22 2069 6e20 616e 7369 626c ernel" in ansibl │ │ │ -001eea70: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -001eea80: 2061 6e64 2022 7270 6d2d 6f73 7472 6565 and "rpm-ostree │ │ │ -001eea90: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -001eeaa0: 7473 2e70 6163 6b61 6765 730a 2020 2020 ts.packages. │ │ │ -001eeab0: 616e 6420 2262 6f6f 7463 2220 696e 2061 and "bootc" in a │ │ │ -001eeac0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ -001eead0: 6b61 6765 7320 616e 6420 6e6f 7420 226f kages and not "o │ │ │ -001eeae0: 7065 6e73 6869 6674 2d6b 7562 656c 6574 penshift-kubelet │ │ │ -001eeaf0: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -001eeb00: 7473 2e70 6163 6b61 6765 730a 2020 2020 ts.packages. │ │ │ -001eeb10: 616e 6420 226f 7374 7265 6522 2069 6e20 and "ostree" in │ │ │ -001eeb20: 616e 7369 626c 655f 7072 6f63 5f63 6d64 ansible_proc_cmd │ │ │ -001eeb30: 6c69 6e65 2029 2061 6e64 206e 6f74 2028 line ) and not ( │ │ │ -001eeb40: 2061 6e73 6962 6c65 5f76 6972 7475 616c ansible_virtual │ │ │ -001eeb50: 697a 6174 696f 6e5f 7479 7065 2069 6e0a ization_type in. │ │ │ -001eeb60: 2020 2020 5b22 646f 636b 6572 222c 2022 ["docker", " │ │ │ -001eeb70: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20 lxc", "openvz", │ │ │ -001eeb80: 2270 6f64 6d61 6e22 2c20 2263 6f6e 7461 "podman", "conta │ │ │ -001eeb90: 696e 6572 225d 2029 2029 0a20 202d 2027 iner"] ) ). - ' │ │ │ -001eeba0: 222f 7661 722f 6c6f 6722 2069 6e20 616e "/var/log" in an │ │ │ -001eebb0: 7369 626c 655f 6d6f 756e 7473 207c 206d sible_mounts | m │ │ │ -001eebc0: 6170 2861 7474 7269 6275 7465 3d22 6d6f ap(attribute="mo │ │ │ -001eebd0: 756e 7422 2920 7c20 6c69 7374 270a 2020 unt") | list'. │ │ │ -001eebe0: 2d20 6465 7669 6365 5f6e 616d 652e 7374 - device_name.st │ │ │ -001eebf0: 646f 7574 2069 7320 6465 6669 6e65 6420 dout is defined │ │ │ -001eec00: 616e 6420 6465 7669 6365 5f6e 616d 652e and device_name. │ │ │ -001eec10: 7374 646f 7574 5f6c 696e 6573 2069 7320 stdout_lines is │ │ │ -001eec20: 6465 6669 6e65 640a 2020 2d20 2864 6576 defined. - (dev │ │ │ -001eec30: 6963 655f 6e61 6d65 2e73 7464 6f75 7420 ice_name.stdout │ │ │ -001eec40: 7c20 6c65 6e67 7468 2026 6774 3b20 3029 | length > 0) │ │ │ -001eec50: 0a20 2074 6167 733a 0a20 202d 204e 4953 . tags:. - NIS │ │ │ -001eec60: 542d 3830 302d 3533 2d41 432d 360a 2020 T-800-53-AC-6. │ │ │ -001eec70: 2d20 4e49 5354 2d38 3030 2d35 332d 4143 - NIST-800-53-AC │ │ │ -001eec80: 2d36 2831 290a 2020 2d20 4e49 5354 2d38 -6(1). - NIST-8 │ │ │ -001eec90: 3030 2d35 332d 434d 2d36 2861 290a 2020 00-53-CM-6(a). │ │ │ -001eeca0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -001eecb0: 2d37 2861 290a 2020 2d20 4e49 5354 2d38 -7(a). - NIST-8 │ │ │ -001eecc0: 3030 2d35 332d 434d 2d37 2862 290a 2020 00-53-CM-7(b). │ │ │ -001eecd0: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50 - NIST-800-53-MP │ │ │ -001eece0: 2d37 0a20 202d 2063 6f6e 6669 6775 7265 -7. - configure │ │ │ -001eecf0: 5f73 7472 6174 6567 790a 2020 2d20 6869 _strategy. - hi │ │ │ -001eed00: 6768 5f64 6973 7275 7074 696f 6e0a 2020 gh_disruption. │ │ │ -001eed10: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479 - low_complexity │ │ │ -001eed20: 0a20 202d 206d 6564 6975 6d5f 7365 7665 . - medium_seve │ │ │ -001eed30: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f rity. - mount_o │ │ │ -001eed40: 7074 696f 6e5f 7661 725f 6c6f 675f 6e6f ption_var_log_no │ │ │ -001eed50: 6578 6563 0a20 202d 206e 6f5f 7265 626f exec. - no_rebo │ │ │ -001eed60: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d ot_needed..- nam │ │ │ -001eed70: 653a 2027 4164 6420 6e6f 6578 6563 204f e: 'Add noexec O │ │ │ -001eed80: 7074 696f 6e20 746f 202f 7661 722f 6c6f ption to /var/lo │ │ │ -001eed90: 673a 2049 6620 2f76 6172 2f6c 6f67 206e g: If /var/log n │ │ │ -001eeda0: 6f74 206d 6f75 6e74 6564 2c20 6372 6166 ot mounted, craf │ │ │ -001eedb0: 7420 6d6f 756e 745f 696e 666f 0a20 2020 t mount_info. │ │ │ -001eedc0: 206d 616e 7561 6c6c 7927 0a20 2073 6574 manually'. set │ │ │ -001eedd0: 5f66 6163 743a 0a20 2020 206d 6f75 6e74 _fact:. mount │ │ │ -001eede0: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74 _info: '{{ mount │ │ │ -001eedf0: 5f69 6e66 6f7c 6465 6661 756c 7428 7b7d _info|default({} │ │ │ -001eee00: 297c 636f 6d62 696e 6528 7b69 7465 6d2e )|combine({item. │ │ │ -001eee10: 303a 2069 7465 6d2e 317d 2920 7d7d 270a 0: item.1}) }}'. │ │ │ -001eee20: 2020 7769 7468 5f74 6f67 6574 6865 723a with_together: │ │ │ -001eee30: 0a20 202d 202d 2074 6172 6765 740a 2020 . - - target. │ │ │ -001eee40: 2020 2d20 736f 7572 6365 0a20 2020 202d - source. - │ │ │ -001eee50: 2066 7374 7970 650a 2020 2020 2d20 6f70 fstype. - op │ │ │ -001eee60: 7469 6f6e 730a 2020 2d20 2d20 2f76 6172 tions. - - /var │ │ │ -001eee70: 2f6c 6f67 0a20 2020 202d 2027 270a 2020 /log. - ''. │ │ │ -001eee80: 2020 2d20 2727 0a20 2020 202d 2064 6566 - ''. - def │ │ │ -001eee90: 6175 6c74 730a 2020 7768 656e 3a0a 2020 aults. when:. │ │ │ -001eeea0: 2d20 2820 6e6f 7420 2820 226b 6572 6e65 - ( not ( "kerne │ │ │ -001eeeb0: 6c22 2069 6e20 616e 7369 626c 655f 6661 l" in ansible_fa │ │ │ -001eeec0: 6374 732e 7061 636b 6167 6573 2061 6e64 cts.packages and │ │ │ -001eeed0: 2022 7270 6d2d 6f73 7472 6565 2220 696e "rpm-ostree" in │ │ │ -001eeee0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -001eeef0: 6163 6b61 6765 730a 2020 2020 616e 6420 ackages. and │ │ │ -001eef00: 2262 6f6f 7463 2220 696e 2061 6e73 6962 "bootc" in ansib │ │ │ -001eef10: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -001eef20: 7320 616e 6420 6e6f 7420 226f 7065 6e73 s and not "opens │ │ │ -001eef30: 6869 6674 2d6b 7562 656c 6574 2220 696e hift-kubelet" in │ │ │ -001eef40: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -001eef50: 6163 6b61 6765 730a 2020 2020 616e 6420 ackages. and │ │ │ -001eef60: 226f 7374 7265 6522 2069 6e20 616e 7369 "ostree" in ansi │ │ │ -001eef70: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65 ble_proc_cmdline │ │ │ -001eef80: 2029 2061 6e64 206e 6f74 2028 2061 6e73 ) and not ( ans │ │ │ -001eef90: 6962 6c65 5f76 6972 7475 616c 697a 6174 ible_virtualizat │ │ │ -001eefa0: 696f 6e5f 7479 7065 2069 6e0a 2020 2020 ion_type in. │ │ │ -001eefb0: 5b22 646f 636b 6572 222c 2022 6c78 6322 ["docker", "lxc" │ │ │ -001eefc0: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64 , "openvz", "pod │ │ │ -001eefd0: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572 man", "container │ │ │ -001eefe0: 225d 2029 2029 0a20 202d 2027 222f 7661 "] ) ). - '"/va │ │ │ -001eeff0: 722f 6c6f 6722 2069 6e20 616e 7369 626c r/log" in ansibl │ │ │ -001ef000: 655f 6d6f 756e 7473 207c 206d 6170 2861 e_mounts | map(a │ │ │ -001ef010: 7474 7269 6275 7465 3d22 6d6f 756e 7422 ttribute="mount" │ │ │ -001ef020: 2920 7c20 6c69 7374 270a 2020 2d20 2822 ) | list'. - (" │ │ │ -001ef030: 2d2d 6673 7461 6222 207c 206c 656e 6774 --fstab" | lengt │ │ │ -001ef040: 6820 3d3d 2030 290a 2020 2d20 6465 7669 h == 0). - devi │ │ │ -001ef050: 6365 5f6e 616d 652e 7374 646f 7574 2069 ce_name.stdout i │ │ │ -001ef060: 7320 6465 6669 6e65 6420 616e 6420 6465 s defined and de │ │ │ -001ef070: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ -001ef080: 5f6c 696e 6573 2069 7320 6465 6669 6e65 _lines is define │ │ │ -001ef090: 640a 2020 2d20 2864 6576 6963 655f 6e61 d. - (device_na │ │ │ -001ef0a0: 6d65 2e73 7464 6f75 7420 7c20 6c65 6e67 me.stdout | leng │ │ │ -001ef0b0: 7468 203d 3d20 3029 0a20 2074 6167 733a th == 0). tags: │ │ │ -001ef0c0: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001ef0d0: 2d41 432d 360a 2020 2d20 4e49 5354 2d38 -AC-6. - NIST-8 │ │ │ -001ef0e0: 3030 2d35 332d 4143 2d36 2831 290a 2020 00-53-AC-6(1). │ │ │ -001ef0f0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -001ef100: 2d36 2861 290a 2020 2d20 4e49 5354 2d38 -6(a). - NIST-8 │ │ │ -001ef110: 3030 2d35 332d 434d 2d37 2861 290a 2020 00-53-CM-7(a). │ │ │ -001ef120: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -001ef130: 2d37 2862 290a 2020 2d20 4e49 5354 2d38 -7(b). - NIST-8 │ │ │ -001ef140: 3030 2d35 332d 4d50 2d37 0a20 202d 2063 00-53-MP-7. - c │ │ │ -001ef150: 6f6e 6669 6775 7265 5f73 7472 6174 6567 onfigure_strateg │ │ │ -001ef160: 790a 2020 2d20 6869 6768 5f64 6973 7275 y. - high_disru │ │ │ -001ef170: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f ption. - low_co │ │ │ -001ef180: 6d70 6c65 7869 7479 0a20 202d 206d 6564 mplexity. - med │ │ │ -001ef190: 6975 6d5f 7365 7665 7269 7479 0a20 202d ium_severity. - │ │ │ -001ef1a0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661 mount_option_va │ │ │ -001ef1b0: 725f 6c6f 675f 6e6f 6578 6563 0a20 202d r_log_noexec. - │ │ │ -001ef1c0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ -001ef1d0: 640a 0a2d 206e 616d 653a 2027 4164 6420 d..- name: 'Add │ │ │ -001ef1e0: 6e6f 6578 6563 204f 7074 696f 6e20 746f noexec Option to │ │ │ -001ef1f0: 202f 7661 722f 6c6f 673a 204d 616b 6520 /var/log: Make │ │ │ -001ef200: 7375 7265 206e 6f65 7865 6320 6f70 7469 sure noexec opti │ │ │ -001ef210: 6f6e 2069 7320 7061 7274 206f 6620 7468 on is part of th │ │ │ -001ef220: 6520 746f 0a20 2020 202f 7661 722f 6c6f e to. /var/lo │ │ │ -001ef230: 6720 6f70 7469 6f6e 7327 0a20 2073 6574 g options'. set │ │ │ -001ef240: 5f66 6163 743a 0a20 2020 206d 6f75 6e74 _fact:. mount │ │ │ -001ef250: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74 _info: '{{ mount │ │ │ -001ef260: 5f69 6e66 6f20 7c20 636f 6d62 696e 6528 _info | combine( │ │ │ -001ef270: 207b 2727 6f70 7469 6f6e 7327 273a 2727 {''options'':'' │ │ │ -001ef280: 2727 7e28 6d6f 756e 745f 696e 666f 2e6f ''~(mount_info.o │ │ │ -001ef290: 7074 696f 6e73 207c 0a20 2020 2020 2064 ptions |. d │ │ │ -001ef2a0: 6566 6175 6c74 2827 2727 2729 297e 2827 efault(''''))~(' │ │ │ -001ef2b0: 272c 2727 2069 6620 286d 6f75 6e74 5f69 ','' if (mount_i │ │ │ -001ef2c0: 6e66 6f2e 6f70 7469 6f6e 7320 7c20 6465 nfo.options | de │ │ │ -001ef2d0: 6661 756c 7428 2727 2727 2929 2065 6c73 fault('''')) els │ │ │ -001ef2e0: 6520 2727 2727 297e 2727 6e6f 6578 6563 e '''')~''noexec │ │ │ -001ef2f0: 2727 0a20 2020 2020 207d 2920 7d7d 270a ''. }) }}'. │ │ │ -001ef300: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f when:. - ( no │ │ │ -001ef310: 7420 2820 226b 6572 6e65 6c22 2069 6e20 t ( "kernel" in │ │ │ -001ef320: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -001ef330: 636b 6167 6573 2061 6e64 2022 7270 6d2d ckages and "rpm- │ │ │ -001ef340: 6f73 7472 6565 2220 696e 2061 6e73 6962 ostree" in ansib │ │ │ -001ef350: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -001ef360: 730a 2020 2020 616e 6420 2262 6f6f 7463 s. and "bootc │ │ │ -001ef370: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -001ef380: 7473 2e70 6163 6b61 6765 7320 616e 6420 ts.packages and │ │ │ -001ef390: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b not "openshift-k │ │ │ -001ef3a0: 7562 656c 6574 2220 696e 2061 6e73 6962 ubelet" in ansib │ │ │ -001ef3b0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -001ef3c0: 730a 2020 2020 616e 6420 226f 7374 7265 s. and "ostre │ │ │ -001ef3d0: 6522 2069 6e20 616e 7369 626c 655f 7072 e" in ansible_pr │ │ │ -001ef3e0: 6f63 5f63 6d64 6c69 6e65 2029 2061 6e64 oc_cmdline ) and │ │ │ -001ef3f0: 206e 6f74 2028 2061 6e73 6962 6c65 5f76 not ( ansible_v │ │ │ -001ef400: 6972 7475 616c 697a 6174 696f 6e5f 7479 irtualization_ty │ │ │ -001ef410: 7065 2069 6e0a 2020 2020 5b22 646f 636b pe in. ["dock │ │ │ -001ef420: 6572 222c 2022 6c78 6322 2c20 226f 7065 er", "lxc", "ope │ │ │ -001ef430: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c20 nvz", "podman", │ │ │ -001ef440: 2263 6f6e 7461 696e 6572 225d 2029 2029 "container"] ) ) │ │ │ -001ef450: 0a20 202d 2027 222f 7661 722f 6c6f 6722 . - '"/var/log" │ │ │ -001ef460: 2069 6e20 616e 7369 626c 655f 6d6f 756e in ansible_moun │ │ │ -001ef470: 7473 207c 206d 6170 2861 7474 7269 6275 ts | map(attribu │ │ │ -001ef480: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69 te="mount") | li │ │ │ -001ef490: 7374 270a 2020 2d20 6d6f 756e 745f 696e st'. - mount_in │ │ │ -001ef4a0: 666f 2069 7320 6465 6669 6e65 6420 616e fo is defined an │ │ │ -001ef4b0: 6420 226e 6f65 7865 6322 206e 6f74 2069 d "noexec" not i │ │ │ -001ef4c0: 6e20 286d 6f75 6e74 5f69 6e66 6f2e 6f70 n (mount_info.op │ │ │ -001ef4d0: 7469 6f6e 7320 7c20 6465 6661 756c 7428 tions | default( │ │ │ -001ef4e0: 2727 2929 0a20 2074 6167 733a 0a20 202d '')). tags:. - │ │ │ -001ef4f0: 204e 4953 542d 3830 302d 3533 2d41 432d NIST-800-53-AC- │ │ │ -001ef500: 360a 2020 2d20 4e49 5354 2d38 3030 2d35 6. - NIST-800-5 │ │ │ -001ef510: 332d 4143 2d36 2831 290a 2020 2d20 4e49 3-AC-6(1). - NI │ │ │ -001ef520: 5354 2d38 3030 2d35 332d 434d 2d36 2861 ST-800-53-CM-6(a │ │ │ -001ef530: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -001ef540: 332d 434d 2d37 2861 290a 2020 2d20 4e49 3-CM-7(a). - NI │ │ │ -001ef550: 5354 2d38 3030 2d35 332d 434d 2d37 2862 ST-800-53-CM-7(b │ │ │ -001ef560: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -001ef570: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669 3-MP-7. - confi │ │ │ -001ef580: 6775 7265 5f73 7472 6174 6567 790a 2020 gure_strategy. │ │ │ -001ef590: 2d20 6869 6768 5f64 6973 7275 7074 696f - high_disruptio │ │ │ -001ef5a0: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65 n. - low_comple │ │ │ -001ef5b0: 7869 7479 0a20 202d 206d 6564 6975 6d5f xity. - medium_ │ │ │ -001ef5c0: 7365 7665 7269 7479 0a20 202d 206d 6f75 severity. - mou │ │ │ -001ef5d0: 6e74 5f6f 7074 696f 6e5f 7661 725f 6c6f nt_option_var_lo │ │ │ -001ef5e0: 675f 6e6f 6578 6563 0a20 202d 206e 6f5f g_noexec. - no_ │ │ │ -001ef5f0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d reboot_needed..- │ │ │ -001ef600: 206e 616d 653a 2027 4164 6420 6e6f 6578 name: 'Add noex │ │ │ -001ef610: 6563 204f 7074 696f 6e20 746f 202f 7661 ec Option to /va │ │ │ -001ef620: 722f 6c6f 673a 2045 6e73 7572 6520 2f76 r/log: Ensure /v │ │ │ -001ef630: 6172 2f6c 6f67 2069 7320 6d6f 756e 7465 ar/log is mounte │ │ │ -001ef640: 6420 7769 7468 206e 6f65 7865 6320 6f70 d with noexec op │ │ │ -001ef650: 7469 6f6e 270a 2020 616e 7369 626c 652e tion'. ansible. │ │ │ -001ef660: 706f 7369 782e 6d6f 756e 743a 0a20 2020 posix.mount:. │ │ │ -001ef670: 2070 6174 683a 202f 7661 722f 6c6f 670a path: /var/log. │ │ │ -001ef680: 2020 2020 7372 633a 2027 7b7b 206d 6f75 src: '{{ mou │ │ │ -001ef690: 6e74 5f69 6e66 6f2e 736f 7572 6365 207c nt_info.source | │ │ │ -001ef6a0: 2064 6566 6175 6c74 2827 2727 2729 207d default('''') } │ │ │ -001ef6b0: 7d27 0a20 2020 206f 7074 733a 2027 7b7b }'. opts: '{{ │ │ │ -001ef6c0: 206d 6f75 6e74 5f69 6e66 6f2e 6f70 7469 mount_info.opti │ │ │ -001ef6d0: 6f6e 7320 7c20 6465 6661 756c 7428 2727 ons | default('' │ │ │ -001ef6e0: 2727 2920 7d7d 270a 2020 2020 7374 6174 '') }}'. stat │ │ │ -001ef6f0: 653a 206d 6f75 6e74 6564 0a20 2020 2066 e: mounted. f │ │ │ -001ef700: 7374 7970 653a 2027 7b7b 206d 6f75 6e74 stype: '{{ mount │ │ │ -001ef710: 5f69 6e66 6f2e 6673 7479 7065 207c 2064 _info.fstype | d │ │ │ -001ef720: 6566 6175 6c74 2827 2727 2729 207d 7d27 efault('''') }}' │ │ │ -001ef730: 0a20 2072 6567 6973 7465 723a 206d 6f75 . register: mou │ │ │ -001ef740: 6e74 5f72 6573 756c 740a 2020 6661 696c nt_result. fail │ │ │ -001ef750: 6564 5f77 6865 6e3a 0a20 202d 206d 6f75 ed_when:. - mou │ │ │ -001ef760: 6e74 5f72 6573 756c 7420 6973 2066 6169 nt_result is fai │ │ │ -001ef770: 6c65 640a 2020 2d20 2727 2774 6172 6765 led. - '''targe │ │ │ -001ef780: 7420 6973 2062 7573 7927 2720 6e6f 7420 t is busy'' not │ │ │ -001ef790: 696e 2028 6d6f 756e 745f 7265 7375 6c74 in (mount_result │ │ │ -001ef7a0: 2e6d 7367 207c 2064 6566 6175 6c74 2827 .msg | default(' │ │ │ -001ef7b0: 2727 2729 2927 0a20 202d 2027 2727 616c '''))'. - '''al │ │ │ -001ef7c0: 7265 6164 7920 6d6f 756e 7465 6427 2720 ready mounted'' │ │ │ -001ef7d0: 6e6f 7420 696e 2028 6d6f 756e 745f 7265 not in (mount_re │ │ │ -001ef7e0: 7375 6c74 2e6d 7367 207c 2064 6566 6175 sult.msg | defau │ │ │ -001ef7f0: 6c74 2827 2727 2729 2927 0a20 2077 6865 lt(''''))'. whe │ │ │ -001ef800: 6e3a 0a20 202d 2028 206e 6f74 2028 2022 n:. - ( not ( " │ │ │ -001ef810: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ -001ef820: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -001ef830: 7320 616e 6420 2272 706d 2d6f 7374 7265 s and "rpm-ostre │ │ │ -001ef840: 6522 2069 6e20 616e 7369 626c 655f 6661 e" in ansible_fa │ │ │ -001ef850: 6374 732e 7061 636b 6167 6573 0a20 2020 cts.packages. │ │ │ -001ef860: 2061 6e64 2022 626f 6f74 6322 2069 6e20 and "bootc" in │ │ │ -001ef870: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -001ef880: 636b 6167 6573 2061 6e64 206e 6f74 2022 ckages and not " │ │ │ -001ef890: 6f70 656e 7368 6966 742d 6b75 6265 6c65 openshift-kubele │ │ │ -001ef8a0: 7422 2069 6e20 616e 7369 626c 655f 6661 t" in ansible_fa │ │ │ -001ef8b0: 6374 732e 7061 636b 6167 6573 0a20 2020 cts.packages. │ │ │ -001ef8c0: 2061 6e64 2022 6f73 7472 6565 2220 696e and "ostree" in │ │ │ -001ef8d0: 2061 6e73 6962 6c65 5f70 726f 635f 636d ansible_proc_cm │ │ │ -001ef8e0: 646c 696e 6520 2920 616e 6420 6e6f 7420 dline ) and not │ │ │ -001ef8f0: 2820 616e 7369 626c 655f 7669 7274 7561 ( ansible_virtua │ │ │ -001ef900: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e lization_type in │ │ │ -001ef910: 0a20 2020 205b 2264 6f63 6b65 7222 2c20 . ["docker", │ │ │ -001ef920: 226c 7863 222c 2022 6f70 656e 767a 222c "lxc", "openvz", │ │ │ -001ef930: 2022 706f 646d 616e 222c 2022 636f 6e74 "podman", "cont │ │ │ -001ef940: 6169 6e65 7222 5d20 2920 290a 2020 2d20 ainer"] ) ). - │ │ │ -001ef950: 2722 2f76 6172 2f6c 6f67 2220 696e 2061 '"/var/log" in a │ │ │ -001ef960: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20 nsible_mounts | │ │ │ -001ef970: 6d61 7028 6174 7472 6962 7574 653d 226d map(attribute="m │ │ │ -001ef980: 6f75 6e74 2229 207c 206c 6973 7427 0a20 ount") | list'. │ │ │ -001ef990: 202d 206d 6f75 6e74 5f69 6e66 6f20 6973 - mount_info is │ │ │ -001ef9a0: 2064 6566 696e 6564 0a20 202d 2028 6465 defined. - (de │ │ │ -001ef9b0: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ -001ef9c0: 2069 7320 6465 6669 6e65 6420 616e 6420 is defined and │ │ │ -001ef9d0: 2864 6576 6963 655f 6e61 6d65 2e73 7464 (device_name.std │ │ │ -001ef9e0: 6f75 7420 7c20 6c65 6e67 7468 2026 6774 out | length > │ │ │ -001ef9f0: 3b20 3029 2920 6f72 2028 222d 2d66 7374 ; 0)) or ("--fst │ │ │ -001efa00: 6162 220a 2020 2020 7c20 6c65 6e67 7468 ab". | length │ │ │ -001efa10: 203d 3d20 3029 0a20 2074 6167 733a 0a20 == 0). tags:. │ │ │ -001efa20: 202d 204e 4953 542d 3830 302d 3533 2d41 - NIST-800-53-A │ │ │ -001efa30: 432d 360a 2020 2d20 4e49 5354 2d38 3030 C-6. - NIST-800 │ │ │ -001efa40: 2d35 332d 4143 2d36 2831 290a 2020 2d20 -53-AC-6(1). - │ │ │ -001efa50: 4e49 5354 2d38 3030 2d35 332d 434d 2d36 NIST-800-53-CM-6 │ │ │ -001efa60: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ -001efa70: 2d35 332d 434d 2d37 2861 290a 2020 2d20 -53-CM-7(a). - │ │ │ -001efa80: 4e49 5354 2d38 3030 2d35 332d 434d 2d37 NIST-800-53-CM-7 │ │ │ -001efa90: 2862 290a 2020 2d20 4e49 5354 2d38 3030 (b). - NIST-800 │ │ │ -001efaa0: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e -53-MP-7. - con │ │ │ -001efab0: 6669 6775 7265 5f73 7472 6174 6567 790a figure_strategy. │ │ │ -001efac0: 2020 2d20 6869 6768 5f64 6973 7275 7074 - high_disrupt │ │ │ -001efad0: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70 ion. - low_comp │ │ │ -001efae0: 6c65 7869 7479 0a20 202d 206d 6564 6975 lexity. - mediu │ │ │ -001efaf0: 6d5f 7365 7665 7269 7479 0a20 202d 206d m_severity. - m │ │ │ -001efb00: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f ount_option_var_ │ │ │ -001efb10: 6c6f 675f 6e6f 6578 6563 0a20 202d 206e log_noexec. - n │ │ │ -001efb20: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a o_reboot_needed. │ │ │ -001efb30: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64 │ │ │ -001efbe0: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ -001efbf0: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ -001efc00: 3c62 723e 3c64 6976 2063 6c61 7373 3d22


│ │ │ -001efcb0: 2320 5265 6d65 6469 6174 696f 6e20 6973  # Remediation is
│ │ │ -001efcc0: 2061 7070 6c69 6361 626c 6520 6f6e 6c79   applicable only
│ │ │ -001efcd0: 2069 6e20 6365 7274 6169 6e20 706c 6174   in certain plat
│ │ │ -001efce0: 666f 726d 730a 6966 2028 2021 2028 207b  forms.if ( ! ( {
│ │ │ -001efcf0: 2072 706d 202d 2d71 7569 6574 202d 7120   rpm --quiet -q 
│ │ │ -001efd00: 6b65 726e 656c 203b 7d20 2661 6d70 3b26  kernel ;} &&
│ │ │ -001efd10: 616d 703b 207b 2072 706d 202d 2d71 7569  amp; { rpm --qui
│ │ │ -001efd20: 6574 202d 7120 7270 6d2d 6f73 7472 6565  et -q rpm-ostree
│ │ │ -001efd30: 203b 7d20 2661 6d70 3b26 616d 703b 207b   ;} && {
│ │ │ -001efd40: 2072 706d 202d 2d71 7569 6574 202d 7120   rpm --quiet -q 
│ │ │ -001efd50: 626f 6f74 6320 3b7d 2026 616d 703b 2661  bootc ;} &&a
│ │ │ -001efd60: 6d70 3b20 7b20 2120 7270 6d20 2d2d 7175  mp; { ! rpm --qu
│ │ │ -001efd70: 6965 7420 2d71 206f 7065 6e73 6869 6674  iet -q openshift
│ │ │ -001efd80: 2d6b 7562 656c 6574 203b 7d20 2661 6d70  -kubelet ;} &
│ │ │ -001efd90: 3b26 616d 703b 2028 5b20 2d66 202f 7275  ;& ([ -f /ru
│ │ │ -001efda0: 6e2f 6f73 7472 6565 2d62 6f6f 7465 6420  n/ostree-booted 
│ │ │ -001efdb0: 5d20 7c7c 205b 202d 4c20 2f6f 7374 7265  ] || [ -L /ostre
│ │ │ -001efdc0: 6520 5d29 2029 2026 616d 703b 2661 6d70  e ]) ) &&
│ │ │ -001efdd0: 3b20 2120 2820 5b20 2d66 202f 2e64 6f63  ; ! ( [ -f /.doc
│ │ │ -001efde0: 6b65 7265 6e76 205d 207c 7c20 5b20 2d66  kerenv ] || [ -f
│ │ │ -001efdf0: 202f 7275 6e2f 2e63 6f6e 7461 696e 6572   /run/.container
│ │ │ -001efe00: 656e 7620 5d20 2920 2920 2661 6d70 3b26  env ] ) ) &&
│ │ │ -001efe10: 616d 703b 207b 2028 2066 696e 646d 6e74  amp; { ( findmnt
│ │ │ -001efe20: 202d 2d6b 6572 6e65 6c20 222f 7661 722f   --kernel "/var/
│ │ │ -001efe30: 6c6f 6722 2026 6774 3b20 2f64 6576 2f6e  log" > /dev/n
│ │ │ -001efe40: 756c 6c20 7c7c 2066 696e 646d 6e74 202d  ull || findmnt -
│ │ │ -001efe50: 2d66 7374 6162 2022 2f76 6172 2f6c 6f67  -fstab "/var/log
│ │ │ -001efe60: 2220 2667 743b 202f 6465 762f 6e75 6c6c  " > /dev/null
│ │ │ -001efe70: 2029 3b20 7d3b 2074 6865 6e0a 0a66 756e   ); }; then..fun
│ │ │ -001efe80: 6374 696f 6e20 7065 7266 6f72 6d5f 7265  ction perform_re
│ │ │ -001efe90: 6d65 6469 6174 696f 6e20 7b0a 0a20 2020  mediation {..   
│ │ │ -001efea0: 200a 2020 2020 2020 2020 2320 7468 6520   .        # the 
│ │ │ -001efeb0: 6d6f 756e 7420 706f 696e 7420 2f76 6172  mount point /var
│ │ │ -001efec0: 2f6c 6f67 2068 6173 2074 6f20 6265 2064  /log has to be d
│ │ │ -001efed0: 6566 696e 6564 2069 6e20 2f65 7463 2f66  efined in /etc/f
│ │ │ -001efee0: 7374 6162 0a20 2020 2020 2020 2023 2062  stab.        # b
│ │ │ -001efef0: 6566 6f72 6520 7468 6973 2072 656d 6564  efore this remed
│ │ │ -001eff00: 6961 7469 6f6e 2063 616e 2062 6520 6578  iation can be ex
│ │ │ -001eff10: 6563 7574 6564 2e20 496e 2063 6173 6520  ecuted. In case 
│ │ │ -001eff20: 6974 2069 7320 6e6f 7420 6465 6669 6e65  it is not define
│ │ │ -001eff30: 642c 2074 6865 0a20 2020 2020 2020 2023  d, the.        #
│ │ │ -001eff40: 2072 656d 6564 6961 7469 6f6e 2061 626f   remediation abo
│ │ │ -001eff50: 7274 7320 616e 6420 6e6f 2063 6861 6e67  rts and no chang
│ │ │ -001eff60: 6573 2072 6567 6172 6469 6e67 2074 6865  es regarding the
│ │ │ -001eff70: 206d 6f75 6e74 2070 6f69 6e74 2061 7265   mount point are
│ │ │ -001eff80: 2064 6f6e 652e 0a20 2020 2020 2020 206d   done..        m
│ │ │ -001eff90: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001effa0: 5f72 6567 6578 703d 2224 2870 7269 6e74  _regexp="$(print
│ │ │ -001effb0: 6620 225e 5b5b 3a73 7061 6365 3a5d 5d2a  f "^[[:space:]]*
│ │ │ -001effc0: 5b5e 235d 2e2a 5b5b 3a73 7061 6365 3a5d  [^#].*[[:space:]
│ │ │ -001effd0: 5d25 735b 5b3a 7370 6163 653a 5d5d 2220  ]%s[[:space:]]" 
│ │ │ -001effe0: 222f 7661 722f 6c6f 6722 2922 0a0a 2020  "/var/log")"..  
│ │ │ -001efff0: 2020 6772 6570 2022 246d 6f75 6e74 5f70    grep "$mount_p
│ │ │ -001f0000: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001f0010: 7022 202d 7120 2f65 7463 2f66 7374 6162  p" -q /etc/fstab
│ │ │ -001f0020: 205c 0a20 2020 2020 2020 207c 7c20 7b20   \.        || { 
│ │ │ -001f0030: 6563 686f 2022 5468 6520 6d6f 756e 7420  echo "The mount 
│ │ │ -001f0040: 706f 696e 7420 272f 7661 722f 6c6f 6727  point '/var/log'
│ │ │ -001f0050: 2069 7320 6e6f 7420 6576 656e 2069 6e20   is not even in 
│ │ │ -001f0060: 2f65 7463 2f66 7374 6162 2c20 736f 2077  /etc/fstab, so w
│ │ │ -001f0070: 6520 6361 6e27 7420 7365 7420 7570 206d  e can't set up m
│ │ │ -001f0080: 6f75 6e74 206f 7074 696f 6e73 2220 2667  ount options" &g
│ │ │ -001f0090: 743b 2661 6d70 3b32 3b0a 2020 2020 2020  t;&2;.      
│ │ │ -001f00a0: 2020 2020 2020 2020 2020 6563 686f 2022            echo "
│ │ │ -001f00b0: 4e6f 7420 7265 6d65 6469 6174 696e 672c  Not remediating,
│ │ │ -001f00c0: 2062 6563 6175 7365 2074 6865 7265 2069   because there i
│ │ │ -001f00d0: 7320 6e6f 2072 6563 6f72 6420 6f66 202f  s no record of /
│ │ │ -001f00e0: 7661 722f 6c6f 6720 696e 202f 6574 632f  var/log in /etc/
│ │ │ -001f00f0: 6673 7461 6222 2026 6774 3b26 616d 703b  fstab" >&
│ │ │ -001f0100: 323b 2072 6574 7572 6e20 313b 207d 0a20  2; return 1; }. 
│ │ │ -001f0110: 2020 200a 0a0a 2020 2020 6d6f 756e 745f     ...    mount_
│ │ │ -001f0120: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001f0130: 7870 3d22 2428 7072 696e 7466 2022 5e5b  xp="$(printf "^[
│ │ │ -001f0140: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e  [:space:]]*[^#].
│ │ │ -001f0150: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b  *[[:space:]]%s[[
│ │ │ -001f0160: 3a73 7061 6365 3a5d 5d22 202f 7661 722f  :space:]]" /var/
│ │ │ -001f0170: 6c6f 6729 220a 0a20 2020 2023 2049 6620  log)"..    # If 
│ │ │ -001f0180: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ -001f0190: 6973 206e 6f74 2069 6e20 2f65 7463 2f66  is not in /etc/f
│ │ │ -001f01a0: 7374 6162 2c20 6765 7420 7072 6576 696f  stab, get previo
│ │ │ -001f01b0: 7573 206d 6f75 6e74 206f 7074 696f 6e73  us mount options
│ │ │ -001f01c0: 2066 726f 6d20 2f65 7463 2f6d 7461 620a   from /etc/mtab.
│ │ │ -001f01d0: 2020 2020 6966 2021 2067 7265 7020 2d71      if ! grep -q
│ │ │ -001f01e0: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -001f01f0: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ -001f0200: 632f 6673 7461 623b 2074 6865 6e0a 2020  c/fstab; then.  
│ │ │ -001f0210: 2020 2020 2020 2320 7275 6e74 696d 6520        # runtime 
│ │ │ -001f0220: 6f70 7473 2077 6974 686f 7574 2073 6f6d  opts without som
│ │ │ -001f0230: 6520 6175 746f 6d61 7469 6320 6b65 726e  e automatic kern
│ │ │ -001f0240: 656c 2f75 7365 7273 7061 6365 2d61 6464  el/userspace-add
│ │ │ -001f0250: 6564 2064 6566 6175 6c74 730a 2020 2020  ed defaults.    
│ │ │ -001f0260: 2020 2020 7072 6576 696f 7573 5f6d 6f75      previous_mou
│ │ │ -001f0270: 6e74 5f6f 7074 733d 2428 6772 6570 2022  nt_opts=$(grep "
│ │ │ -001f0280: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ -001f0290: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ -001f02a0: 6d74 6162 207c 2068 6561 6420 2d31 207c  mtab | head -1 |
│ │ │ -001f02b0: 2020 6177 6b20 277b 7072 696e 7420 2434    awk '{print $4
│ │ │ -001f02c0: 7d27 205c 0a20 2020 2020 2020 2020 2020  }' \.           
│ │ │ -001f02d0: 2020 2020 2020 2020 207c 2073 6564 202d           | sed -
│ │ │ -001f02e0: 4520 2273 2f28 7277 7c64 6566 6175 6c74  E "s/(rw|default
│ │ │ -001f02f0: 737c 7365 636c 6162 656c 7c6e 6f65 7865  s|seclabel|noexe
│ │ │ -001f0300: 6329 282c 7c24 292f 2f67 3b73 2f2c 242f  c)(,|$)//g;s/,$/
│ │ │ -001f0310: 2f22 290a 2020 2020 2020 2020 5b20 2224  /").        [ "$
│ │ │ -001f0320: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001f0330: 7074 7322 205d 2026 616d 703b 2661 6d70  pts" ] &&
│ │ │ -001f0340: 3b20 7072 6576 696f 7573 5f6d 6f75 6e74  ; previous_mount
│ │ │ -001f0350: 5f6f 7074 732b 3d22 2c22 0a20 2020 2020  _opts+=",".     
│ │ │ -001f0360: 2020 2023 2049 6e20 6973 6f39 3636 3020     # In iso9660 
│ │ │ -001f0370: 6669 6c65 7379 7374 656d 7320 6d74 6162  filesystems mtab
│ │ │ -001f0380: 2063 6f75 6c64 2064 6573 6372 6962 6520   could describe 
│ │ │ -001f0390: 6120 2262 6c6f 636b 7369 7a65 2220 7661  a "blocksize" va
│ │ │ -001f03a0: 6c75 652c 2074 6869 7320 7368 6f75 6c64  lue, this should
│ │ │ -001f03b0: 2062 6520 7265 666c 6563 7465 6420 696e   be reflected in
│ │ │ -001f03c0: 0a20 2020 2020 2020 2023 2066 7374 6162  .        # fstab
│ │ │ -001f03d0: 2061 7320 2262 6c6f 636b 222e 2020 5468   as "block".  Th
│ │ │ -001f03e0: 6520 6e65 7874 2076 6172 6961 626c 6520  e next variable 
│ │ │ -001f03f0: 6973 2074 6f20 7361 7469 7366 7920 7368  is to satisfy sh
│ │ │ -001f0400: 656c 6c63 6865 636b 2053 4332 3035 302e  ellcheck SC2050.
│ │ │ -001f0410: 0a20 2020 2020 2020 2066 735f 7479 7065  .        fs_type
│ │ │ -001f0420: 3d22 220a 2020 2020 2020 2020 6966 205b  ="".        if [
│ │ │ -001f0430: 2020 2224 6673 5f74 7970 6522 203d 3d20    "$fs_type" == 
│ │ │ -001f0440: 2269 736f 3936 3630 2220 5d20 3b20 7468  "iso9660" ] ; th
│ │ │ -001f0450: 656e 0a20 2020 2020 2020 2020 2020 2070  en.            p
│ │ │ -001f0460: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001f0470: 7473 3d24 2873 6564 2027 732f 626c 6f63  ts=$(sed 's/bloc
│ │ │ -001f0480: 6b73 697a 653d 2f62 6c6f 636b 3d2f 2720  ksize=/block=/' 
│ │ │ -001f0490: 266c 743b 266c 743b 266c 743b 2022 2470  <<< "$p
│ │ │ -001f04a0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001f04b0: 7473 2229 0a20 2020 2020 2020 2066 690a  ts").        fi.
│ │ │ -001f04c0: 2020 2020 2020 2020 6563 686f 2022 202f          echo " /
│ │ │ -001f04d0: 7661 722f 6c6f 6720 2064 6566 6175 6c74  var/log  default
│ │ │ -001f04e0: 732c 247b 7072 6576 696f 7573 5f6d 6f75  s,${previous_mou
│ │ │ -001f04f0: 6e74 5f6f 7074 737d 6e6f 6578 6563 2030  nt_opts}noexec 0
│ │ │ -001f0500: 2030 2220 2667 743b 2667 743b 202f 6574   0" >> /et
│ │ │ -001f0510: 632f 6673 7461 620a 2020 2020 2320 4966  c/fstab.    # If
│ │ │ -001f0520: 2074 6865 206d 6f75 6e74 5f6f 7074 206f   the mount_opt o
│ │ │ -001f0530: 7074 696f 6e20 6973 206e 6f74 2061 6c72  ption is not alr
│ │ │ -001f0540: 6561 6479 2069 6e20 7468 6520 6d6f 756e  eady in the moun
│ │ │ -001f0550: 7420 706f 696e 7427 7320 2f65 7463 2f66  t point's /etc/f
│ │ │ -001f0560: 7374 6162 2065 6e74 7279 2c20 6164 6420  stab entry, add 
│ │ │ -001f0570: 6974 0a20 2020 2065 6c69 6620 2120 6772  it.    elif ! gr
│ │ │ -001f0580: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ -001f0590: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ -001f05a0: 6574 632f 6673 7461 6220 7c20 6772 6570  etc/fstab | grep
│ │ │ -001f05b0: 202d 7120 226e 6f65 7865 6322 3b20 7468   -q "noexec"; th
│ │ │ -001f05c0: 656e 0a20 2020 2020 2020 2070 7265 7669  en.        previ
│ │ │ -001f05d0: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ -001f05e0: 2867 7265 7020 2224 6d6f 756e 745f 706f  (grep "$mount_po
│ │ │ -001f05f0: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001f0600: 2220 2f65 7463 2f66 7374 6162 207c 2061  " /etc/fstab | a
│ │ │ -001f0610: 776b 2027 7b70 7269 6e74 2024 347d 2729  wk '{print $4}')
│ │ │ -001f0620: 0a20 2020 2020 2020 2073 6564 202d 6920  .        sed -i 
│ │ │ -001f0630: 2273 7c5c 2824 7b6d 6f75 6e74 5f70 6f69  "s|\(${mount_poi
│ │ │ -001f0640: 6e74 5f6d 6174 6368 5f72 6567 6578 707d  nt_match_regexp}
│ │ │ -001f0650: 2e2a 247b 7072 6576 696f 7573 5f6d 6f75  .*${previous_mou
│ │ │ -001f0660: 6e74 5f6f 7074 737d 5c29 7c5c 312c 6e6f  nt_opts}\)|\1,no
│ │ │ -001f0670: 6578 6563 7c22 202f 6574 632f 6673 7461  exec|" /etc/fsta
│ │ │ -001f0680: 620a 2020 2020 6669 0a0a 0a20 2020 2069  b.    fi...    i
│ │ │ -001f0690: 6620 6d6b 6469 7220 2d70 2022 2f76 6172  f mkdir -p "/var
│ │ │ -001f06a0: 2f6c 6f67 223b 2074 6865 6e0a 2020 2020  /log"; then.    
│ │ │ -001f06b0: 2020 2020 6966 206d 6f75 6e74 706f 696e      if mountpoin
│ │ │ -001f06c0: 7420 2d71 2022 2f76 6172 2f6c 6f67 223b  t -q "/var/log";
│ │ │ -001f06d0: 2074 6865 6e0a 2020 2020 2020 2020 2020   then.          
│ │ │ -001f06e0: 2020 6d6f 756e 7420 2d6f 2072 656d 6f75    mount -o remou
│ │ │ -001f06f0: 6e74 202d 2d74 6172 6765 7420 222f 7661  nt --target "/va
│ │ │ -001f0700: 722f 6c6f 6722 0a20 2020 2020 2020 2066  r/log".        f
│ │ │ -001f0710: 690a 2020 2020 6669 0a7d 0a0a 7065 7266  i.    fi.}..perf
│ │ │ -001f0720: 6f72 6d5f 7265 6d65 6469 6174 696f 6e0a  orm_remediation.
│ │ │ -001f0730: 0a65 6c73 650a 2020 2020 2667 743b 2661  .else.    >&a
│ │ │ -001f0740: 6d70 3b32 2065 6368 6f20 2752 656d 6564  mp;2 echo 'Remed
│ │ │ -001f0750: 6961 7469 6f6e 2069 7320 6e6f 7420 6170  iation is not ap
│ │ │ -001f0760: 706c 6963 6162 6c65 2c20 6e6f 7468 696e  plicable, nothin
│ │ │ -001f0770: 6720 7761 7320 646f 6e65 270a 6669 0a3c  g was done'.fi.<
│ │ │ +001ee0a0: 6d65 6469 6174 696f 6e20 416e 7369 626c  mediation Ansibl
│ │ │ +001ee0b0: 6520 736e 6970 7065 7420 e287 b23c 2f61  e snippet ...
Re │ │ │ -001efc80: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -001efc90: 6c73 653c 2f74 643e 3c2f 7472 3e3c 2f74 lse
< │ │ │ +001ee150: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +001ee160: 3c74 723e 3c74 683e 4469 7372 7570 7469 Reboot:false
- name: Gather 
│ │ │ +001ee200: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ +001ee210: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ +001ee220: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ +001ee230: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ +001ee240: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001ee250: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +001ee260: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ +001ee270: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +001ee280: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001ee290: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +001ee2a0: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +001ee2b0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001ee2c0: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ +001ee2d0: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001ee2e0: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001ee2f0: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001ee300: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001ee310: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001ee320: 6e74 5f6f 7074 696f 6e5f 7661 725f 6c6f  nt_option_var_lo
│ │ │ +001ee330: 675f 6e6f 6578 6563 0a20 202d 206e 6f5f  g_noexec.  - no_
│ │ │ +001ee340: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +001ee350: 206e 616d 653a 2027 4164 6420 6e6f 6578   name: 'Add noex
│ │ │ +001ee360: 6563 204f 7074 696f 6e20 746f 202f 7661  ec Option to /va
│ │ │ +001ee370: 722f 6c6f 673a 2043 6865 636b 2069 6e66  r/log: Check inf
│ │ │ +001ee380: 6f72 6d61 7469 6f6e 2061 7373 6f63 6961  ormation associa
│ │ │ +001ee390: 7465 6420 746f 206d 6f75 6e74 706f 696e  ted to mountpoin
│ │ │ +001ee3a0: 7427 0a20 2061 6e73 6962 6c65 2e62 7569  t'.  ansible.bui
│ │ │ +001ee3b0: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 6669  ltin.command: fi
│ │ │ +001ee3c0: 6e64 6d6e 7420 2d2d 6673 7461 6220 272f  ndmnt --fstab '/
│ │ │ +001ee3d0: 7661 722f 6c6f 6727 0a20 2072 6567 6973  var/log'.  regis
│ │ │ +001ee3e0: 7465 723a 2064 6576 6963 655f 6e61 6d65  ter: device_name
│ │ │ +001ee3f0: 0a20 2066 6169 6c65 645f 7768 656e 3a20  .  failed_when: 
│ │ │ +001ee400: 6465 7669 6365 5f6e 616d 652e 7263 2026  device_name.rc &
│ │ │ +001ee410: 6774 3b20 310a 2020 6368 616e 6765 645f  gt; 1.  changed_
│ │ │ +001ee420: 7768 656e 3a20 6661 6c73 650a 2020 6368  when: false.  ch
│ │ │ +001ee430: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a  eck_mode: false.
│ │ │ +001ee440: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ +001ee450: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ +001ee460: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001ee470: 636b 6167 6573 2061 6e64 2022 7270 6d2d  ckages and "rpm-
│ │ │ +001ee480: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001ee490: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001ee4a0: 730a 2020 2020 616e 6420 2262 6f6f 7463  s.    and "bootc
│ │ │ +001ee4b0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001ee4c0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001ee4d0: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ +001ee4e0: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ +001ee4f0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001ee500: 730a 2020 2020 616e 6420 226f 7374 7265  s.    and "ostre
│ │ │ +001ee510: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ +001ee520: 6f63 5f63 6d64 6c69 6e65 2029 2061 6e64  oc_cmdline ) and
│ │ │ +001ee530: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ +001ee540: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ +001ee550: 7065 2069 6e0a 2020 2020 5b22 646f 636b  pe in.    ["dock
│ │ │ +001ee560: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ +001ee570: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c20  nvz", "podman", 
│ │ │ +001ee580: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ +001ee590: 0a20 202d 2027 222f 7661 722f 6c6f 6722  .  - '"/var/log"
│ │ │ +001ee5a0: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ +001ee5b0: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ +001ee5c0: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ +001ee5d0: 7374 270a 2020 7461 6773 3a0a 2020 2d20  st'.  tags:.  - 
│ │ │ +001ee5e0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001ee5f0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001ee600: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ +001ee610: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +001ee620: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001ee630: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ +001ee640: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ +001ee650: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001ee660: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ +001ee670: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +001ee680: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ +001ee690: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001ee6a0: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ +001ee6b0: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ +001ee6c0: 745f 6f70 7469 6f6e 5f76 6172 5f6c 6f67  t_option_var_log
│ │ │ +001ee6d0: 5f6e 6f65 7865 630a 2020 2d20 6e6f 5f72  _noexec.  - no_r
│ │ │ +001ee6e0: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +001ee6f0: 6e61 6d65 3a20 2741 6464 206e 6f65 7865  name: 'Add noexe
│ │ │ +001ee700: 6320 4f70 7469 6f6e 2074 6f20 2f76 6172  c Option to /var
│ │ │ +001ee710: 2f6c 6f67 3a20 4372 6561 7465 206d 6f75  /log: Create mou
│ │ │ +001ee720: 6e74 5f69 6e66 6f20 6469 6374 696f 6e61  nt_info dictiona
│ │ │ +001ee730: 7279 2076 6172 6961 626c 6527 0a20 2073  ry variable'.  s
│ │ │ +001ee740: 6574 5f66 6163 743a 0a20 2020 206d 6f75  et_fact:.    mou
│ │ │ +001ee750: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75  nt_info: '{{ mou
│ │ │ +001ee760: 6e74 5f69 6e66 6f7c 6465 6661 756c 7428  nt_info|default(
│ │ │ +001ee770: 7b7d 297c 636f 6d62 696e 6528 7b69 7465  {})|combine({ite
│ │ │ +001ee780: 6d2e 303a 2069 7465 6d2e 317d 2920 7d7d  m.0: item.1}) }}
│ │ │ +001ee790: 270a 2020 7769 7468 5f74 6f67 6574 6865  '.  with_togethe
│ │ │ +001ee7a0: 723a 0a20 202d 2027 7b7b 2064 6576 6963  r:.  - '{{ devic
│ │ │ +001ee7b0: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ +001ee7c0: 6e65 735b 305d 2e73 706c 6974 2829 207c  nes[0].split() |
│ │ │ +001ee7d0: 206d 6170 2827 276c 6f77 6572 2727 2920   map(''lower'') 
│ │ │ +001ee7e0: 7c20 6c69 7374 207d 7d27 0a20 202d 2027  | list }}'.  - '
│ │ │ +001ee7f0: 7b7b 2064 6576 6963 655f 6e61 6d65 2e73  {{ device_name.s
│ │ │ +001ee800: 7464 6f75 745f 6c69 6e65 735b 315d 2e73  tdout_lines[1].s
│ │ │ +001ee810: 706c 6974 2829 207c 206c 6973 7420 7d7d  plit() | list }}
│ │ │ +001ee820: 270a 2020 7768 656e 3a0a 2020 2d20 2820  '.  when:.  - ( 
│ │ │ +001ee830: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ +001ee840: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001ee850: 7061 636b 6167 6573 2061 6e64 2022 7270  packages and "rp
│ │ │ +001ee860: 6d2d 6f73 7472 6565 2220 696e 2061 6e73  m-ostree" in ans
│ │ │ +001ee870: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001ee880: 6765 730a 2020 2020 616e 6420 2262 6f6f  ges.    and "boo
│ │ │ +001ee890: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ +001ee8a0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001ee8b0: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ +001ee8c0: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ +001ee8d0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001ee8e0: 6765 730a 2020 2020 616e 6420 226f 7374  ges.    and "ost
│ │ │ +001ee8f0: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001ee900: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061  proc_cmdline ) a
│ │ │ +001ee910: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ +001ee920: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ +001ee930: 7479 7065 2069 6e0a 2020 2020 5b22 646f  type in.    ["do
│ │ │ +001ee940: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ +001ee950: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ +001ee960: 2c20 2263 6f6e 7461 696e 6572 225d 2029  , "container"] )
│ │ │ +001ee970: 2029 0a20 202d 2027 222f 7661 722f 6c6f   ).  - '"/var/lo
│ │ │ +001ee980: 6722 2069 6e20 616e 7369 626c 655f 6d6f  g" in ansible_mo
│ │ │ +001ee990: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ +001ee9a0: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ +001ee9b0: 6c69 7374 270a 2020 2d20 6465 7669 6365  list'.  - device
│ │ │ +001ee9c0: 5f6e 616d 652e 7374 646f 7574 2069 7320  _name.stdout is 
│ │ │ +001ee9d0: 6465 6669 6e65 6420 616e 6420 6465 7669  defined and devi
│ │ │ +001ee9e0: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ +001ee9f0: 696e 6573 2069 7320 6465 6669 6e65 640a  ines is defined.
│ │ │ +001eea00: 2020 2d20 2864 6576 6963 655f 6e61 6d65    - (device_name
│ │ │ +001eea10: 2e73 7464 6f75 7420 7c20 6c65 6e67 7468  .stdout | length
│ │ │ +001eea20: 2026 6774 3b20 3029 0a20 2074 6167 733a   > 0).  tags:
│ │ │ +001eea30: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001eea40: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ +001eea50: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ +001eea60: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001eea70: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ +001eea80: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ +001eea90: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001eeaa0: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ +001eeab0: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ +001eeac0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +001eead0: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +001eeae0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +001eeaf0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +001eeb00: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001eeb10: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ +001eeb20: 725f 6c6f 675f 6e6f 6578 6563 0a20 202d  r_log_noexec.  -
│ │ │ +001eeb30: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +001eeb40: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ +001eeb50: 6e6f 6578 6563 204f 7074 696f 6e20 746f  noexec Option to
│ │ │ +001eeb60: 202f 7661 722f 6c6f 673a 2049 6620 2f76   /var/log: If /v
│ │ │ +001eeb70: 6172 2f6c 6f67 206e 6f74 206d 6f75 6e74  ar/log not mount
│ │ │ +001eeb80: 6564 2c20 6372 6166 7420 6d6f 756e 745f  ed, craft mount_
│ │ │ +001eeb90: 696e 666f 0a20 2020 206d 616e 7561 6c6c  info.    manuall
│ │ │ +001eeba0: 7927 0a20 2073 6574 5f66 6163 743a 0a20  y'.  set_fact:. 
│ │ │ +001eebb0: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ +001eebc0: 7b7b 206d 6f75 6e74 5f69 6e66 6f7c 6465  {{ mount_info|de
│ │ │ +001eebd0: 6661 756c 7428 7b7d 297c 636f 6d62 696e  fault({})|combin
│ │ │ +001eebe0: 6528 7b69 7465 6d2e 303a 2069 7465 6d2e  e({item.0: item.
│ │ │ +001eebf0: 317d 2920 7d7d 270a 2020 7769 7468 5f74  1}) }}'.  with_t
│ │ │ +001eec00: 6f67 6574 6865 723a 0a20 202d 202d 2074  ogether:.  - - t
│ │ │ +001eec10: 6172 6765 740a 2020 2020 2d20 736f 7572  arget.    - sour
│ │ │ +001eec20: 6365 0a20 2020 202d 2066 7374 7970 650a  ce.    - fstype.
│ │ │ +001eec30: 2020 2020 2d20 6f70 7469 6f6e 730a 2020      - options.  
│ │ │ +001eec40: 2d20 2d20 2f76 6172 2f6c 6f67 0a20 2020  - - /var/log.   
│ │ │ +001eec50: 202d 2027 270a 2020 2020 2d20 2727 0a20   - ''.    - ''. 
│ │ │ +001eec60: 2020 202d 2064 6566 6175 6c74 730a 2020     - defaults.  
│ │ │ +001eec70: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ +001eec80: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ +001eec90: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001eeca0: 6167 6573 2061 6e64 2022 7270 6d2d 6f73  ages and "rpm-os
│ │ │ +001eecb0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001eecc0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001eecd0: 2020 2020 616e 6420 2262 6f6f 7463 2220      and "bootc" 
│ │ │ +001eece0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001eecf0: 2e70 6163 6b61 6765 7320 616e 6420 6e6f  .packages and no
│ │ │ +001eed00: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ +001eed10: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ +001eed20: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001eed30: 2020 2020 616e 6420 226f 7374 7265 6522      and "ostree"
│ │ │ +001eed40: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ +001eed50: 5f63 6d64 6c69 6e65 2029 2061 6e64 206e  _cmdline ) and n
│ │ │ +001eed60: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ +001eed70: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ +001eed80: 2069 6e0a 2020 2020 5b22 646f 636b 6572   in.    ["docker
│ │ │ +001eed90: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ +001eeda0: 7a22 2c20 2270 6f64 6d61 6e22 2c20 2263  z", "podman", "c
│ │ │ +001eedb0: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ +001eedc0: 202d 2027 222f 7661 722f 6c6f 6722 2069   - '"/var/log" i
│ │ │ +001eedd0: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ +001eede0: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ +001eedf0: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ +001eee00: 270a 2020 2d20 2822 2d2d 6673 7461 6222  '.  - ("--fstab"
│ │ │ +001eee10: 207c 206c 656e 6774 6820 3d3d 2030 290a   | length == 0).
│ │ │ +001eee20: 2020 2d20 6465 7669 6365 5f6e 616d 652e    - device_name.
│ │ │ +001eee30: 7374 646f 7574 2069 7320 6465 6669 6e65  stdout is define
│ │ │ +001eee40: 6420 616e 6420 6465 7669 6365 5f6e 616d  d and device_nam
│ │ │ +001eee50: 652e 7374 646f 7574 5f6c 696e 6573 2069  e.stdout_lines i
│ │ │ +001eee60: 7320 6465 6669 6e65 640a 2020 2d20 2864  s defined.  - (d
│ │ │ +001eee70: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001eee80: 7420 7c20 6c65 6e67 7468 203d 3d20 3029  t | length == 0)
│ │ │ +001eee90: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +001eeea0: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ +001eeeb0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001eeec0: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ +001eeed0: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ +001eeee0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001eeef0: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ +001eef00: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ +001eef10: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ +001eef20: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ +001eef30: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +001eef40: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +001eef50: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +001eef60: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +001eef70: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ +001eef80: 7074 696f 6e5f 7661 725f 6c6f 675f 6e6f  ption_var_log_no
│ │ │ +001eef90: 6578 6563 0a20 202d 206e 6f5f 7265 626f  exec.  - no_rebo
│ │ │ +001eefa0: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +001eefb0: 653a 2027 4164 6420 6e6f 6578 6563 204f  e: 'Add noexec O
│ │ │ +001eefc0: 7074 696f 6e20 746f 202f 7661 722f 6c6f  ption to /var/lo
│ │ │ +001eefd0: 673a 204d 616b 6520 7375 7265 206e 6f65  g: Make sure noe
│ │ │ +001eefe0: 7865 6320 6f70 7469 6f6e 2069 7320 7061  xec option is pa
│ │ │ +001eeff0: 7274 206f 6620 7468 6520 746f 0a20 2020  rt of the to.   
│ │ │ +001ef000: 202f 7661 722f 6c6f 6720 6f70 7469 6f6e   /var/log option
│ │ │ +001ef010: 7327 0a20 2073 6574 5f66 6163 743a 0a20  s'.  set_fact:. 
│ │ │ +001ef020: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ +001ef030: 7b7b 206d 6f75 6e74 5f69 6e66 6f20 7c20  {{ mount_info | 
│ │ │ +001ef040: 636f 6d62 696e 6528 207b 2727 6f70 7469  combine( {''opti
│ │ │ +001ef050: 6f6e 7327 273a 2727 2727 7e28 6d6f 756e  ons'':''''~(moun
│ │ │ +001ef060: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ +001ef070: 0a20 2020 2020 2064 6566 6175 6c74 2827  .      default('
│ │ │ +001ef080: 2727 2729 297e 2827 272c 2727 2069 6620  '''))~('','' if 
│ │ │ +001ef090: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469  (mount_info.opti
│ │ │ +001ef0a0: 6f6e 7320 7c20 6465 6661 756c 7428 2727  ons | default(''
│ │ │ +001ef0b0: 2727 2929 2065 6c73 6520 2727 2727 297e  '')) else '''')~
│ │ │ +001ef0c0: 2727 6e6f 6578 6563 2727 0a20 2020 2020  ''noexec''.     
│ │ │ +001ef0d0: 207d 2920 7d7d 270a 2020 7768 656e 3a0a   }) }}'.  when:.
│ │ │ +001ef0e0: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ +001ef0f0: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +001ef100: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001ef110: 6e64 2022 7270 6d2d 6f73 7472 6565 2220  nd "rpm-ostree" 
│ │ │ +001ef120: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001ef130: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001ef140: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ +001ef150: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001ef160: 6765 7320 616e 6420 6e6f 7420 226f 7065  ges and not "ope
│ │ │ +001ef170: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ +001ef180: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001ef190: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001ef1a0: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ +001ef1b0: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ +001ef1c0: 6e65 2029 2061 6e64 206e 6f74 2028 2061  ne ) and not ( a
│ │ │ +001ef1d0: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ +001ef1e0: 6174 696f 6e5f 7479 7065 2069 6e0a 2020  ation_type in.  
│ │ │ +001ef1f0: 2020 5b22 646f 636b 6572 222c 2022 6c78    ["docker", "lx
│ │ │ +001ef200: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ +001ef210: 6f64 6d61 6e22 2c20 2263 6f6e 7461 696e  odman", "contain
│ │ │ +001ef220: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ +001ef230: 7661 722f 6c6f 6722 2069 6e20 616e 7369  var/log" in ansi
│ │ │ +001ef240: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ +001ef250: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ +001ef260: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ +001ef270: 6d6f 756e 745f 696e 666f 2069 7320 6465  mount_info is de
│ │ │ +001ef280: 6669 6e65 6420 616e 6420 226e 6f65 7865  fined and "noexe
│ │ │ +001ef290: 6322 206e 6f74 2069 6e20 286d 6f75 6e74  c" not in (mount
│ │ │ +001ef2a0: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ +001ef2b0: 6465 6661 756c 7428 2727 2929 0a20 2074  default('')).  t
│ │ │ +001ef2c0: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +001ef2d0: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ +001ef2e0: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ +001ef2f0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001ef300: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +001ef310: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ +001ef320: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001ef330: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ +001ef340: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ +001ef350: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ +001ef360: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ +001ef370: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +001ef380: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +001ef390: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +001ef3a0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ +001ef3b0: 6e5f 7661 725f 6c6f 675f 6e6f 6578 6563  n_var_log_noexec
│ │ │ +001ef3c0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +001ef3d0: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ +001ef3e0: 4164 6420 6e6f 6578 6563 204f 7074 696f  Add noexec Optio
│ │ │ +001ef3f0: 6e20 746f 202f 7661 722f 6c6f 673a 2045  n to /var/log: E
│ │ │ +001ef400: 6e73 7572 6520 2f76 6172 2f6c 6f67 2069  nsure /var/log i
│ │ │ +001ef410: 7320 6d6f 756e 7465 6420 7769 7468 206e  s mounted with n
│ │ │ +001ef420: 6f65 7865 6320 6f70 7469 6f6e 270a 2020  oexec option'.  
│ │ │ +001ef430: 616e 7369 626c 652e 706f 7369 782e 6d6f  ansible.posix.mo
│ │ │ +001ef440: 756e 743a 0a20 2020 2070 6174 683a 202f  unt:.    path: /
│ │ │ +001ef450: 7661 722f 6c6f 670a 2020 2020 7372 633a  var/log.    src:
│ │ │ +001ef460: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ +001ef470: 736f 7572 6365 207c 2064 6566 6175 6c74  source | default
│ │ │ +001ef480: 2827 2727 2729 207d 7d27 0a20 2020 206f  ('''') }}'.    o
│ │ │ +001ef490: 7074 733a 2027 7b7b 206d 6f75 6e74 5f69  pts: '{{ mount_i
│ │ │ +001ef4a0: 6e66 6f2e 6f70 7469 6f6e 7320 7c20 6465  nfo.options | de
│ │ │ +001ef4b0: 6661 756c 7428 2727 2727 2920 7d7d 270a  fault('''') }}'.
│ │ │ +001ef4c0: 2020 2020 7374 6174 653a 206d 6f75 6e74      state: mount
│ │ │ +001ef4d0: 6564 0a20 2020 2066 7374 7970 653a 2027  ed.    fstype: '
│ │ │ +001ef4e0: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 6673  {{ mount_info.fs
│ │ │ +001ef4f0: 7479 7065 207c 2064 6566 6175 6c74 2827  type | default('
│ │ │ +001ef500: 2727 2729 207d 7d27 0a20 2072 6567 6973  ''') }}'.  regis
│ │ │ +001ef510: 7465 723a 206d 6f75 6e74 5f72 6573 756c  ter: mount_resul
│ │ │ +001ef520: 740a 2020 6661 696c 6564 5f77 6865 6e3a  t.  failed_when:
│ │ │ +001ef530: 0a20 202d 206d 6f75 6e74 5f72 6573 756c  .  - mount_resul
│ │ │ +001ef540: 7420 6973 2066 6169 6c65 640a 2020 2d20  t is failed.  - 
│ │ │ +001ef550: 2727 2774 6172 6765 7420 6973 2062 7573  '''target is bus
│ │ │ +001ef560: 7927 2720 6e6f 7420 696e 2028 6d6f 756e  y'' not in (moun
│ │ │ +001ef570: 745f 7265 7375 6c74 2e6d 7367 207c 2064  t_result.msg | d
│ │ │ +001ef580: 6566 6175 6c74 2827 2727 2729 2927 0a20  efault(''''))'. 
│ │ │ +001ef590: 202d 2027 2727 616c 7265 6164 7920 6d6f   - '''already mo
│ │ │ +001ef5a0: 756e 7465 6427 2720 6e6f 7420 696e 2028  unted'' not in (
│ │ │ +001ef5b0: 6d6f 756e 745f 7265 7375 6c74 2e6d 7367  mount_result.msg
│ │ │ +001ef5c0: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ +001ef5d0: 2927 0a20 2077 6865 6e3a 0a20 202d 2028  )'.  when:.  - (
│ │ │ +001ef5e0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +001ef5f0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001ef600: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ +001ef610: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ +001ef620: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001ef630: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ +001ef640: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ +001ef650: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001ef660: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ +001ef670: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ +001ef680: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001ef690: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ +001ef6a0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001ef6b0: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ +001ef6c0: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ +001ef6d0: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ +001ef6e0: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ +001ef6f0: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ +001ef700: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ +001ef710: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ +001ef720: 2920 290a 2020 2d20 2722 2f76 6172 2f6c  ) ).  - '"/var/l
│ │ │ +001ef730: 6f67 2220 696e 2061 6e73 6962 6c65 5f6d  og" in ansible_m
│ │ │ +001ef740: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ +001ef750: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ +001ef760: 206c 6973 7427 0a20 202d 206d 6f75 6e74   list'.  - mount
│ │ │ +001ef770: 5f69 6e66 6f20 6973 2064 6566 696e 6564  _info is defined
│ │ │ +001ef780: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ +001ef790: 652e 7374 646f 7574 2069 7320 6465 6669  e.stdout is defi
│ │ │ +001ef7a0: 6e65 6420 616e 6420 2864 6576 6963 655f  ned and (device_
│ │ │ +001ef7b0: 6e61 6d65 2e73 7464 6f75 7420 7c20 6c65  name.stdout | le
│ │ │ +001ef7c0: 6e67 7468 2026 6774 3b20 3029 2920 6f72  ngth > 0)) or
│ │ │ +001ef7d0: 2028 222d 2d66 7374 6162 220a 2020 2020   ("--fstab".    
│ │ │ +001ef7e0: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ +001ef7f0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +001ef800: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ +001ef810: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001ef820: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ +001ef830: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +001ef840: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001ef850: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001ef860: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ +001ef870: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ +001ef880: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +001ef890: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +001ef8a0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001ef8b0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001ef8c0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001ef8d0: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001ef8e0: 696f 6e5f 7661 725f 6c6f 675f 6e6f 6578  ion_var_log_noex
│ │ │ +001ef8f0: 6563 0a20 202d 206e 6f5f 7265 626f 6f74  ec.  - no_reboot
│ │ │ +001ef900: 5f6e 6565 6465 640a 3c2f 636f 6465 3e3c  _needed.<
│ │ │ +001ef910: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ +001ef9c0: 696f 6e20 5368 656c 6c20 7363 7269 7074  ion Shell script
│ │ │ +001ef9d0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
│ │ │ +001efa70: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
C │ │ │ +001ee140: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +001ee170: 6f6e 3a3c 2f74 683e 3c74 643e 6869 6768 on:high │ │ │ +001ee180: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +001ee1c0: 793a 3c2f 7468 3e3c 7464 3e63 6f6e 6669 y:confi │ │ │ +001ee1d0: 6775 7265 3c2f 7464 3e3c 2f74 723e 3c2f gure
Reboot:false
# Remedi │ │ │ +001efa90: 6174 696f 6e20 6973 2061 7070 6c69 6361 ation is applica │ │ │ +001efaa0: 626c 6520 6f6e 6c79 2069 6e20 6365 7274 ble only in cert │ │ │ +001efab0: 6169 6e20 706c 6174 666f 726d 730a 6966 ain platforms.if │ │ │ +001efac0: 2028 2021 2028 207b 2072 706d 202d 2d71 ( ! ( { rpm --q │ │ │ +001efad0: 7569 6574 202d 7120 6b65 726e 656c 203b uiet -q kernel ; │ │ │ +001efae0: 7d20 2661 6d70 3b26 616d 703b 207b 2072 } && { r │ │ │ +001efaf0: 706d 202d 2d71 7569 6574 202d 7120 7270 pm --quiet -q rp │ │ │ +001efb00: 6d2d 6f73 7472 6565 203b 7d20 2661 6d70 m-ostree ;} & │ │ │ +001efb10: 3b26 616d 703b 207b 2072 706d 202d 2d71 ;& { rpm --q │ │ │ +001efb20: 7569 6574 202d 7120 626f 6f74 6320 3b7d uiet -q bootc ;} │ │ │ +001efb30: 2026 616d 703b 2661 6d70 3b20 7b20 2120 && { ! │ │ │ +001efb40: 7270 6d20 2d2d 7175 6965 7420 2d71 206f rpm --quiet -q o │ │ │ +001efb50: 7065 6e73 6869 6674 2d6b 7562 656c 6574 penshift-kubelet │ │ │ +001efb60: 203b 7d20 2661 6d70 3b26 616d 703b 2028 ;} && ( │ │ │ +001efb70: 5b20 2d66 202f 7275 6e2f 6f73 7472 6565 [ -f /run/ostree │ │ │ +001efb80: 2d62 6f6f 7465 6420 5d20 7c7c 205b 202d -booted ] || [ - │ │ │ +001efb90: 4c20 2f6f 7374 7265 6520 5d29 2029 2026 L /ostree ]) ) & │ │ │ +001efba0: 616d 703b 2661 6d70 3b20 2120 2820 5b20 amp;& ! ( [ │ │ │ +001efbb0: 2d66 202f 2e64 6f63 6b65 7265 6e76 205d -f /.dockerenv ] │ │ │ +001efbc0: 207c 7c20 5b20 2d66 202f 7275 6e2f 2e63 || [ -f /run/.c │ │ │ +001efbd0: 6f6e 7461 696e 6572 656e 7620 5d20 2920 ontainerenv ] ) │ │ │ +001efbe0: 2920 2661 6d70 3b26 616d 703b 207b 2028 ) && { ( │ │ │ +001efbf0: 2066 696e 646d 6e74 202d 2d6b 6572 6e65 findmnt --kerne │ │ │ +001efc00: 6c20 222f 7661 722f 6c6f 6722 2026 6774 l "/var/log" > │ │ │ +001efc10: 3b20 2f64 6576 2f6e 756c 6c20 7c7c 2066 ; /dev/null || f │ │ │ +001efc20: 696e 646d 6e74 202d 2d66 7374 6162 2022 indmnt --fstab " │ │ │ +001efc30: 2f76 6172 2f6c 6f67 2220 2667 743b 202f /var/log" > / │ │ │ +001efc40: 6465 762f 6e75 6c6c 2029 3b20 7d3b 2074 dev/null ); }; t │ │ │ +001efc50: 6865 6e0a 0a66 756e 6374 696f 6e20 7065 hen..function pe │ │ │ +001efc60: 7266 6f72 6d5f 7265 6d65 6469 6174 696f rform_remediatio │ │ │ +001efc70: 6e20 7b0a 0a20 2020 200a 2020 2020 2020 n {.. . │ │ │ +001efc80: 2020 2320 7468 6520 6d6f 756e 7420 706f # the mount po │ │ │ +001efc90: 696e 7420 2f76 6172 2f6c 6f67 2068 6173 int /var/log has │ │ │ +001efca0: 2074 6f20 6265 2064 6566 696e 6564 2069 to be defined i │ │ │ +001efcb0: 6e20 2f65 7463 2f66 7374 6162 0a20 2020 n /etc/fstab. │ │ │ +001efcc0: 2020 2020 2023 2062 6566 6f72 6520 7468 # before th │ │ │ +001efcd0: 6973 2072 656d 6564 6961 7469 6f6e 2063 is remediation c │ │ │ +001efce0: 616e 2062 6520 6578 6563 7574 6564 2e20 an be executed. │ │ │ +001efcf0: 496e 2063 6173 6520 6974 2069 7320 6e6f In case it is no │ │ │ +001efd00: 7420 6465 6669 6e65 642c 2074 6865 0a20 t defined, the. │ │ │ +001efd10: 2020 2020 2020 2023 2072 656d 6564 6961 # remedia │ │ │ +001efd20: 7469 6f6e 2061 626f 7274 7320 616e 6420 tion aborts and │ │ │ +001efd30: 6e6f 2063 6861 6e67 6573 2072 6567 6172 no changes regar │ │ │ +001efd40: 6469 6e67 2074 6865 206d 6f75 6e74 2070 ding the mount p │ │ │ +001efd50: 6f69 6e74 2061 7265 2064 6f6e 652e 0a20 oint are done.. │ │ │ +001efd60: 2020 2020 2020 206d 6f75 6e74 5f70 6f69 mount_poi │ │ │ +001efd70: 6e74 5f6d 6174 6368 5f72 6567 6578 703d nt_match_regexp= │ │ │ +001efd80: 2224 2870 7269 6e74 6620 225e 5b5b 3a73 "$(printf "^[[:s │ │ │ +001efd90: 7061 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b pace:]]*[^#].*[[ │ │ │ +001efda0: 3a73 7061 6365 3a5d 5d25 735b 5b3a 7370 :space:]]%s[[:sp │ │ │ +001efdb0: 6163 653a 5d5d 2220 222f 7661 722f 6c6f ace:]]" "/var/lo │ │ │ +001efdc0: 6722 2922 0a0a 2020 2020 6772 6570 2022 g")".. grep " │ │ │ +001efdd0: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174 $mount_point_mat │ │ │ +001efde0: 6368 5f72 6567 6578 7022 202d 7120 2f65 ch_regexp" -q /e │ │ │ +001efdf0: 7463 2f66 7374 6162 205c 0a20 2020 2020 tc/fstab \. │ │ │ +001efe00: 2020 207c 7c20 7b20 6563 686f 2022 5468 || { echo "Th │ │ │ +001efe10: 6520 6d6f 756e 7420 706f 696e 7420 272f e mount point '/ │ │ │ +001efe20: 7661 722f 6c6f 6727 2069 7320 6e6f 7420 var/log' is not │ │ │ +001efe30: 6576 656e 2069 6e20 2f65 7463 2f66 7374 even in /etc/fst │ │ │ +001efe40: 6162 2c20 736f 2077 6520 6361 6e27 7420 ab, so we can't │ │ │ +001efe50: 7365 7420 7570 206d 6f75 6e74 206f 7074 set up mount opt │ │ │ +001efe60: 696f 6e73 2220 2667 743b 2661 6d70 3b32 ions" >&2 │ │ │ +001efe70: 3b0a 2020 2020 2020 2020 2020 2020 2020 ;. │ │ │ +001efe80: 2020 6563 686f 2022 4e6f 7420 7265 6d65 echo "Not reme │ │ │ +001efe90: 6469 6174 696e 672c 2062 6563 6175 7365 diating, because │ │ │ +001efea0: 2074 6865 7265 2069 7320 6e6f 2072 6563 there is no rec │ │ │ +001efeb0: 6f72 6420 6f66 202f 7661 722f 6c6f 6720 ord of /var/log │ │ │ +001efec0: 696e 202f 6574 632f 6673 7461 6222 2026 in /etc/fstab" & │ │ │ +001efed0: 6774 3b26 616d 703b 323b 2072 6574 7572 gt;&2; retur │ │ │ +001efee0: 6e20 313b 207d 0a20 2020 200a 0a0a 2020 n 1; }. ... │ │ │ +001efef0: 2020 6d6f 756e 745f 706f 696e 745f 6d61 mount_point_ma │ │ │ +001eff00: 7463 685f 7265 6765 7870 3d22 2428 7072 tch_regexp="$(pr │ │ │ +001eff10: 696e 7466 2022 5e5b 5b3a 7370 6163 653a intf "^[[:space: │ │ │ +001eff20: 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163 ]]*[^#].*[[:spac │ │ │ +001eff30: 653a 5d5d 2573 5b5b 3a73 7061 6365 3a5d e:]]%s[[:space:] │ │ │ +001eff40: 5d22 202f 7661 722f 6c6f 6729 220a 0a20 ]" /var/log)".. │ │ │ +001eff50: 2020 2023 2049 6620 7468 6520 6d6f 756e # If the moun │ │ │ +001eff60: 7420 706f 696e 7420 6973 206e 6f74 2069 t point is not i │ │ │ +001eff70: 6e20 2f65 7463 2f66 7374 6162 2c20 6765 n /etc/fstab, ge │ │ │ +001eff80: 7420 7072 6576 696f 7573 206d 6f75 6e74 t previous mount │ │ │ +001eff90: 206f 7074 696f 6e73 2066 726f 6d20 2f65 options from /e │ │ │ +001effa0: 7463 2f6d 7461 620a 2020 2020 6966 2021 tc/mtab. if ! │ │ │ +001effb0: 2067 7265 7020 2d71 2022 246d 6f75 6e74 grep -q "$mount │ │ │ +001effc0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567 _point_match_reg │ │ │ +001effd0: 6578 7022 202f 6574 632f 6673 7461 623b exp" /etc/fstab; │ │ │ +001effe0: 2074 6865 6e0a 2020 2020 2020 2020 2320 then. # │ │ │ +001efff0: 7275 6e74 696d 6520 6f70 7473 2077 6974 runtime opts wit │ │ │ +001f0000: 686f 7574 2073 6f6d 6520 6175 746f 6d61 hout some automa │ │ │ +001f0010: 7469 6320 6b65 726e 656c 2f75 7365 7273 tic kernel/users │ │ │ +001f0020: 7061 6365 2d61 6464 6564 2064 6566 6175 pace-added defau │ │ │ +001f0030: 6c74 730a 2020 2020 2020 2020 7072 6576 lts. prev │ │ │ +001f0040: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d ious_mount_opts= │ │ │ +001f0050: 2428 6772 6570 2022 246d 6f75 6e74 5f70 $(grep "$mount_p │ │ │ +001f0060: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578 oint_match_regex │ │ │ +001f0070: 7022 202f 6574 632f 6d74 6162 207c 2068 p" /etc/mtab | h │ │ │ +001f0080: 6561 6420 2d31 207c 2020 6177 6b20 277b ead -1 | awk '{ │ │ │ +001f0090: 7072 696e 7420 2434 7d27 205c 0a20 2020 print $4}' \. │ │ │ +001f00a0: 2020 2020 2020 2020 2020 2020 2020 2020 │ │ │ +001f00b0: 207c 2073 6564 202d 4520 2273 2f28 7277 | sed -E "s/(rw │ │ │ +001f00c0: 7c64 6566 6175 6c74 737c 7365 636c 6162 |defaults|seclab │ │ │ +001f00d0: 656c 7c6e 6f65 7865 6329 282c 7c24 292f el|noexec)(,|$)/ │ │ │ +001f00e0: 2f67 3b73 2f2c 242f 2f22 290a 2020 2020 /g;s/,$//"). │ │ │ +001f00f0: 2020 2020 5b20 2224 7072 6576 696f 7573 [ "$previous │ │ │ +001f0100: 5f6d 6f75 6e74 5f6f 7074 7322 205d 2026 _mount_opts" ] & │ │ │ +001f0110: 616d 703b 2661 6d70 3b20 7072 6576 696f amp;& previo │ │ │ +001f0120: 7573 5f6d 6f75 6e74 5f6f 7074 732b 3d22 us_mount_opts+=" │ │ │ +001f0130: 2c22 0a20 2020 2020 2020 2023 2049 6e20 ,". # In │ │ │ +001f0140: 6973 6f39 3636 3020 6669 6c65 7379 7374 iso9660 filesyst │ │ │ +001f0150: 656d 7320 6d74 6162 2063 6f75 6c64 2064 ems mtab could d │ │ │ +001f0160: 6573 6372 6962 6520 6120 2262 6c6f 636b escribe a "block │ │ │ +001f0170: 7369 7a65 2220 7661 6c75 652c 2074 6869 size" value, thi │ │ │ +001f0180: 7320 7368 6f75 6c64 2062 6520 7265 666c s should be refl │ │ │ +001f0190: 6563 7465 6420 696e 0a20 2020 2020 2020 ected in. │ │ │ +001f01a0: 2023 2066 7374 6162 2061 7320 2262 6c6f # fstab as "blo │ │ │ +001f01b0: 636b 222e 2020 5468 6520 6e65 7874 2076 ck". The next v │ │ │ +001f01c0: 6172 6961 626c 6520 6973 2074 6f20 7361 ariable is to sa │ │ │ +001f01d0: 7469 7366 7920 7368 656c 6c63 6865 636b tisfy shellcheck │ │ │ +001f01e0: 2053 4332 3035 302e 0a20 2020 2020 2020 SC2050.. │ │ │ +001f01f0: 2066 735f 7479 7065 3d22 220a 2020 2020 fs_type="". │ │ │ +001f0200: 2020 2020 6966 205b 2020 2224 6673 5f74 if [ "$fs_t │ │ │ +001f0210: 7970 6522 203d 3d20 2269 736f 3936 3630 ype" == "iso9660 │ │ │ +001f0220: 2220 5d20 3b20 7468 656e 0a20 2020 2020 " ] ; then. │ │ │ +001f0230: 2020 2020 2020 2070 7265 7669 6f75 735f previous_ │ │ │ +001f0240: 6d6f 756e 745f 6f70 7473 3d24 2873 6564 mount_opts=$(sed │ │ │ +001f0250: 2027 732f 626c 6f63 6b73 697a 653d 2f62 's/blocksize=/b │ │ │ +001f0260: 6c6f 636b 3d2f 2720 266c 743b 266c 743b lock=/' << │ │ │ +001f0270: 266c 743b 2022 2470 7265 7669 6f75 735f < "$previous_ │ │ │ +001f0280: 6d6f 756e 745f 6f70 7473 2229 0a20 2020 mount_opts"). │ │ │ +001f0290: 2020 2020 2066 690a 2020 2020 2020 2020 fi. │ │ │ +001f02a0: 6563 686f 2022 202f 7661 722f 6c6f 6720 echo " /var/log │ │ │ +001f02b0: 2064 6566 6175 6c74 732c 247b 7072 6576 defaults,${prev │ │ │ +001f02c0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 737d ious_mount_opts} │ │ │ +001f02d0: 6e6f 6578 6563 2030 2030 2220 2667 743b noexec 0 0" > │ │ │ +001f02e0: 2667 743b 202f 6574 632f 6673 7461 620a > /etc/fstab. │ │ │ +001f02f0: 2020 2020 2320 4966 2074 6865 206d 6f75 # If the mou │ │ │ +001f0300: 6e74 5f6f 7074 206f 7074 696f 6e20 6973 nt_opt option is │ │ │ +001f0310: 206e 6f74 2061 6c72 6561 6479 2069 6e20 not already in │ │ │ +001f0320: 7468 6520 6d6f 756e 7420 706f 696e 7427 the mount point' │ │ │ +001f0330: 7320 2f65 7463 2f66 7374 6162 2065 6e74 s /etc/fstab ent │ │ │ +001f0340: 7279 2c20 6164 6420 6974 0a20 2020 2065 ry, add it. e │ │ │ +001f0350: 6c69 6620 2120 6772 6570 2022 246d 6f75 lif ! grep "$mou │ │ │ +001f0360: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72 nt_point_match_r │ │ │ +001f0370: 6567 6578 7022 202f 6574 632f 6673 7461 egexp" /etc/fsta │ │ │ +001f0380: 6220 7c20 6772 6570 202d 7120 226e 6f65 b | grep -q "noe │ │ │ +001f0390: 7865 6322 3b20 7468 656e 0a20 2020 2020 xec"; then. │ │ │ +001f03a0: 2020 2070 7265 7669 6f75 735f 6d6f 756e previous_moun │ │ │ +001f03b0: 745f 6f70 7473 3d24 2867 7265 7020 2224 t_opts=$(grep "$ │ │ │ +001f03c0: 6d6f 756e 745f 706f 696e 745f 6d61 7463 mount_point_matc │ │ │ +001f03d0: 685f 7265 6765 7870 2220 2f65 7463 2f66 h_regexp" /etc/f │ │ │ +001f03e0: 7374 6162 207c 2061 776b 2027 7b70 7269 stab | awk '{pri │ │ │ +001f03f0: 6e74 2024 347d 2729 0a20 2020 2020 2020 nt $4}'). │ │ │ +001f0400: 2073 6564 202d 6920 2273 7c5c 2824 7b6d sed -i "s|\(${m │ │ │ +001f0410: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368 ount_point_match │ │ │ +001f0420: 5f72 6567 6578 707d 2e2a 247b 7072 6576 _regexp}.*${prev │ │ │ +001f0430: 696f 7573 5f6d 6f75 6e74 5f6f 7074 737d ious_mount_opts} │ │ │ +001f0440: 5c29 7c5c 312c 6e6f 6578 6563 7c22 202f \)|\1,noexec|" / │ │ │ +001f0450: 6574 632f 6673 7461 620a 2020 2020 6669 etc/fstab. fi │ │ │ +001f0460: 0a0a 0a20 2020 2069 6620 6d6b 6469 7220 ... if mkdir │ │ │ +001f0470: 2d70 2022 2f76 6172 2f6c 6f67 223b 2074 -p "/var/log"; t │ │ │ +001f0480: 6865 6e0a 2020 2020 2020 2020 6966 206d hen. if m │ │ │ +001f0490: 6f75 6e74 706f 696e 7420 2d71 2022 2f76 ountpoint -q "/v │ │ │ +001f04a0: 6172 2f6c 6f67 223b 2074 6865 6e0a 2020 ar/log"; then. │ │ │ +001f04b0: 2020 2020 2020 2020 2020 6d6f 756e 7420 mount │ │ │ +001f04c0: 2d6f 2072 656d 6f75 6e74 202d 2d74 6172 -o remount --tar │ │ │ +001f04d0: 6765 7420 222f 7661 722f 6c6f 6722 0a20 get "/var/log". │ │ │ +001f04e0: 2020 2020 2020 2066 690a 2020 2020 6669 fi. fi │ │ │ +001f04f0: 0a7d 0a0a 7065 7266 6f72 6d5f 7265 6d65 .}..perform_reme │ │ │ +001f0500: 6469 6174 696f 6e0a 0a65 6c73 650a 2020 diation..else. │ │ │ +001f0510: 2020 2667 743b 2661 6d70 3b32 2065 6368 >&2 ech │ │ │ +001f0520: 6f20 2752 656d 6564 6961 7469 6f6e 2069 o 'Remediation i │ │ │ +001f0530: 7320 6e6f 7420 6170 706c 6963 6162 6c65 s not applicable │ │ │ +001f0540: 2c20 6e6f 7468 696e 6720 7761 7320 646f , nothing was do │ │ │ +001f0550: 6e65 270a 6669 0a3c 2f63 6f64 653e 3c2f ne'.fi.
Remediati │ │ │ +001f0610: 6f6e 2041 6e61 636f 6e64 6120 736e 6970 on Anaconda snip │ │ │ +001f0620: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +001f0630: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001f0640: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001f0650: 7365 2220 6964 3d22 6964 3630 3322 3e3c se" id="id603">< │ │ │ +001f0660: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001f0670: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001f0680: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001f0690: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +001f06a0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +001f06b0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +001f06c0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:high< │ │ │ +001f06f0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>Rebo │ │ │ +001f0700: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001f0710: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e< │ │ │ +001f0720: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:enable │ │ │ +001f0740: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 .part /v │ │ │ +001f0760: 6172 2f6c 6f67 202d 2d6d 6f75 6e74 6f70 ar/log --mountop │ │ │ +001f0770: 7469 6f6e 733d 226e 6f65 7865 6322 0a3c tions="noexec".< │ │ │ 001f0780: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469 /code>
Remedia │ │ │ -001f13f0: 7469 6f6e 2041 6e61 636f 6e64 6120 736e tion Anaconda sn │ │ │ -001f1400: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -001f14b0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c
Compl │ │ │ -001f1490: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -001f14a0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -001f14c0: 2f74 683e 3c74 643e 6869 6768 3c2f 7464 /th>high
Re │ │ │ -001f14e0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -001f14f0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -001f1530: 7072 653e 3c63 6f64 653e 0a70 6172 7420 pre>.part │ │ │ -001f1540: 2f76 6172 2f6c 6f67 202d 2d6d 6f75 6e74 /var/log --mount │ │ │ -001f1550: 6f70 7469 6f6e 733d 226e 6f73 7569 6422 options="nosuid" │ │ │ -001f1560: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .Remediation Ans │ │ │ -001f1620: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ -001f1630: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity:< │ │ │ -001f1720: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
low
Disru │ │ │ -001f16e0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e68 ption:h │ │ │ -001f16f0: 6967 683c 2f74 643e 3c2f 7472 3e3c 7472 igh
Reboot:false
Stra │ │ │ -001f1730: 7465 6779 3a3c 2f74 683e 3c74 643e 636f tegy:co │ │ │ -001f1740: 6e66 6967 7572 653c 2f74 643e 3c2f 7472 nfigure
- name: Gath
│ │ │ -001f1770: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ -001f1780: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ -001f1790: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ -001f17a0: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ -001f17b0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001f17c0: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ -001f17d0: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ -001f17e0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001f17f0: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ -001f1800: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ -001f1810: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001f1820: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ -001f1830: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ -001f1840: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -001f1850: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -001f1860: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -001f1870: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -001f1880: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001f1890: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ -001f18a0: 5f6c 6f67 5f6e 6f73 7569 640a 2020 2d20  _log_nosuid.  - 
│ │ │ -001f18b0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001f18c0: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ -001f18d0: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20  osuid Option to 
│ │ │ -001f18e0: 2f76 6172 2f6c 6f67 3a20 4368 6563 6b20  /var/log: Check 
│ │ │ -001f18f0: 696e 666f 726d 6174 696f 6e20 6173 736f  information asso
│ │ │ -001f1900: 6369 6174 6564 2074 6f20 6d6f 756e 7470  ciated to mountp
│ │ │ -001f1910: 6f69 6e74 270a 2020 616e 7369 626c 652e  oint'.  ansible.
│ │ │ -001f1920: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ -001f1930: 2066 696e 646d 6e74 202d 2d66 7374 6162   findmnt --fstab
│ │ │ -001f1940: 2027 2f76 6172 2f6c 6f67 270a 2020 7265   '/var/log'.  re
│ │ │ -001f1950: 6769 7374 6572 3a20 6465 7669 6365 5f6e  gister: device_n
│ │ │ -001f1960: 616d 650a 2020 6661 696c 6564 5f77 6865  ame.  failed_whe
│ │ │ -001f1970: 6e3a 2064 6576 6963 655f 6e61 6d65 2e72  n: device_name.r
│ │ │ -001f1980: 6320 2667 743b 2031 0a20 2063 6861 6e67  c > 1.  chang
│ │ │ -001f1990: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ -001f19a0: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ -001f19b0: 7365 0a20 2077 6865 6e3a 0a20 202d 2028  se.  when:.  - (
│ │ │ -001f19c0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -001f19d0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001f19e0: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ -001f19f0: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ -001f1a00: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001f1a10: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ -001f1a20: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ -001f1a30: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001f1a40: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -001f1a50: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -001f1a60: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001f1a70: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ -001f1a80: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001f1a90: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ -001f1aa0: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -001f1ab0: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -001f1ac0: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ -001f1ad0: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ -001f1ae0: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ -001f1af0: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ -001f1b00: 2920 290a 2020 2d20 2722 2f76 6172 2f6c  ) ).  - '"/var/l
│ │ │ -001f1b10: 6f67 2220 696e 2061 6e73 6962 6c65 5f6d  og" in ansible_m
│ │ │ -001f1b20: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ -001f1b30: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ -001f1b40: 206c 6973 7427 0a20 2074 6167 733a 0a20   list'.  tags:. 
│ │ │ -001f1b50: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001f1b60: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ -001f1b70: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ -001f1b80: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -001f1b90: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001f1ba0: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ -001f1bb0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001f1bc0: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ -001f1bd0: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ -001f1be0: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -001f1bf0: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -001f1c00: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -001f1c10: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -001f1c20: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -001f1c30: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f  ount_option_var_
│ │ │ -001f1c40: 6c6f 675f 6e6f 7375 6964 0a20 202d 206e  log_nosuid.  - n
│ │ │ -001f1c50: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -001f1c60: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ -001f1c70: 7375 6964 204f 7074 696f 6e20 746f 202f  suid Option to /
│ │ │ -001f1c80: 7661 722f 6c6f 673a 2043 7265 6174 6520  var/log: Create 
│ │ │ -001f1c90: 6d6f 756e 745f 696e 666f 2064 6963 7469  mount_info dicti
│ │ │ -001f1ca0: 6f6e 6172 7920 7661 7269 6162 6c65 270a  onary variable'.
│ │ │ -001f1cb0: 2020 7365 745f 6661 6374 3a0a 2020 2020    set_fact:.    
│ │ │ -001f1cc0: 6d6f 756e 745f 696e 666f 3a20 277b 7b20  mount_info: '{{ 
│ │ │ -001f1cd0: 6d6f 756e 745f 696e 666f 7c64 6566 6175  mount_info|defau
│ │ │ -001f1ce0: 6c74 287b 7d29 7c63 6f6d 6269 6e65 287b  lt({})|combine({
│ │ │ -001f1cf0: 6974 656d 2e30 3a20 6974 656d 2e31 7d29  item.0: item.1})
│ │ │ -001f1d00: 207d 7d27 0a20 2077 6974 685f 746f 6765   }}'.  with_toge
│ │ │ -001f1d10: 7468 6572 3a0a 2020 2d20 277b 7b20 6465  ther:.  - '{{ de
│ │ │ -001f1d20: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001f1d30: 5f6c 696e 6573 5b30 5d2e 7370 6c69 7428  _lines[0].split(
│ │ │ -001f1d40: 2920 7c20 6d61 7028 2727 6c6f 7765 7227  ) | map(''lower'
│ │ │ -001f1d50: 2729 207c 206c 6973 7420 7d7d 270a 2020  ') | list }}'.  
│ │ │ -001f1d60: 2d20 277b 7b20 6465 7669 6365 5f6e 616d  - '{{ device_nam
│ │ │ -001f1d70: 652e 7374 646f 7574 5f6c 696e 6573 5b31  e.stdout_lines[1
│ │ │ -001f1d80: 5d2e 7370 6c69 7428 2920 7c20 6c69 7374  ].split() | list
│ │ │ -001f1d90: 207d 7d27 0a20 2077 6865 6e3a 0a20 202d   }}'.  when:.  -
│ │ │ -001f1da0: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ -001f1db0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001f1dc0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001f1dd0: 2272 706d 2d6f 7374 7265 6522 2069 6e20  "rpm-ostree" in 
│ │ │ -001f1de0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001f1df0: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001f1e00: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -001f1e10: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001f1e20: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ -001f1e30: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ -001f1e40: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001f1e50: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001f1e60: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001f1e70: 6c65 5f70 726f 635f 636d 646c 696e 6520  le_proc_cmdline 
│ │ │ -001f1e80: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ -001f1e90: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ -001f1ea0: 6f6e 5f74 7970 6520 696e 0a20 2020 205b  on_type in.    [
│ │ │ -001f1eb0: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -001f1ec0: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -001f1ed0: 616e 222c 2022 636f 6e74 6169 6e65 7222  an", "container"
│ │ │ -001f1ee0: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ -001f1ef0: 2f6c 6f67 2220 696e 2061 6e73 6962 6c65  /log" in ansible
│ │ │ -001f1f00: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ -001f1f10: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ -001f1f20: 207c 206c 6973 7427 0a20 202d 2064 6576   | list'.  - dev
│ │ │ -001f1f30: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ -001f1f40: 6973 2064 6566 696e 6564 2061 6e64 2064  is defined and d
│ │ │ -001f1f50: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001f1f60: 745f 6c69 6e65 7320 6973 2064 6566 696e  t_lines is defin
│ │ │ -001f1f70: 6564 0a20 202d 2028 6465 7669 6365 5f6e  ed.  - (device_n
│ │ │ -001f1f80: 616d 652e 7374 646f 7574 207c 206c 656e  ame.stdout | len
│ │ │ -001f1f90: 6774 6820 2667 743b 2030 290a 2020 7461  gth > 0).  ta
│ │ │ -001f1fa0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -001f1fb0: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ -001f1fc0: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ -001f1fd0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001f1fe0: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ -001f1ff0: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ -001f2000: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001f2010: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ -001f2020: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ -001f2030: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -001f2040: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ -001f2050: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -001f2060: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001f2070: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -001f2080: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ -001f2090: 5f76 6172 5f6c 6f67 5f6e 6f73 7569 640a  _var_log_nosuid.
│ │ │ -001f20a0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001f20b0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ -001f20c0: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ -001f20d0: 2074 6f20 2f76 6172 2f6c 6f67 3a20 4966   to /var/log: If
│ │ │ -001f20e0: 202f 7661 722f 6c6f 6720 6e6f 7420 6d6f   /var/log not mo
│ │ │ -001f20f0: 756e 7465 642c 2063 7261 6674 206d 6f75  unted, craft mou
│ │ │ -001f2100: 6e74 5f69 6e66 6f0a 2020 2020 6d61 6e75  nt_info.    manu
│ │ │ -001f2110: 616c 6c79 270a 2020 7365 745f 6661 6374  ally'.  set_fact
│ │ │ -001f2120: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ -001f2130: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001f2140: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d  |default({})|com
│ │ │ -001f2150: 6269 6e65 287b 6974 656d 2e30 3a20 6974  bine({item.0: it
│ │ │ -001f2160: 656d 2e31 7d29 207d 7d27 0a20 2077 6974  em.1}) }}'.  wit
│ │ │ -001f2170: 685f 746f 6765 7468 6572 3a0a 2020 2d20  h_together:.  - 
│ │ │ -001f2180: 2d20 7461 7267 6574 0a20 2020 202d 2073  - target.    - s
│ │ │ -001f2190: 6f75 7263 650a 2020 2020 2d20 6673 7479  ource.    - fsty
│ │ │ -001f21a0: 7065 0a20 2020 202d 206f 7074 696f 6e73  pe.    - options
│ │ │ -001f21b0: 0a20 202d 202d 202f 7661 722f 6c6f 670a  .  - - /var/log.
│ │ │ -001f21c0: 2020 2020 2d20 2727 0a20 2020 202d 2027      - ''.    - '
│ │ │ -001f21d0: 270a 2020 2020 2d20 6465 6661 756c 7473  '.    - defaults
│ │ │ -001f21e0: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ -001f21f0: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ -001f2200: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001f2210: 6163 6b61 6765 7320 616e 6420 2272 706d  ackages and "rpm
│ │ │ -001f2220: 2d6f 7374 7265 6522 2069 6e20 616e 7369  -ostree" in ansi
│ │ │ -001f2230: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001f2240: 6573 0a20 2020 2061 6e64 2022 626f 6f74  es.    and "boot
│ │ │ -001f2250: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ -001f2260: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001f2270: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ -001f2280: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ -001f2290: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001f22a0: 6573 0a20 2020 2061 6e64 2022 6f73 7472  es.    and "ostr
│ │ │ -001f22b0: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ -001f22c0: 726f 635f 636d 646c 696e 6520 2920 616e  roc_cmdline ) an
│ │ │ -001f22d0: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ -001f22e0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ -001f22f0: 7970 6520 696e 0a20 2020 205b 2264 6f63  ype in.    ["doc
│ │ │ -001f2300: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ -001f2310: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ -001f2320: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ -001f2330: 290a 2020 2d20 2722 2f76 6172 2f6c 6f67  ).  - '"/var/log
│ │ │ -001f2340: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ -001f2350: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ -001f2360: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ -001f2370: 6973 7427 0a20 202d 2028 222d 2d66 7374  ist'.  - ("--fst
│ │ │ -001f2380: 6162 2220 7c20 6c65 6e67 7468 203d 3d20  ab" | length == 
│ │ │ -001f2390: 3029 0a20 202d 2064 6576 6963 655f 6e61  0).  - device_na
│ │ │ -001f23a0: 6d65 2e73 7464 6f75 7420 6973 2064 6566  me.stdout is def
│ │ │ -001f23b0: 696e 6564 2061 6e64 2064 6576 6963 655f  ined and device_
│ │ │ -001f23c0: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ -001f23d0: 7320 6973 2064 6566 696e 6564 0a20 202d  s is defined.  -
│ │ │ -001f23e0: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ -001f23f0: 646f 7574 207c 206c 656e 6774 6820 3d3d  dout | length ==
│ │ │ -001f2400: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ -001f2410: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001f2420: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001f2430: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ -001f2440: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -001f2450: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001f2460: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ -001f2470: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ -001f2480: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001f2490: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ -001f24a0: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001f24b0: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001f24c0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001f24d0: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001f24e0: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001f24f0: 745f 6f70 7469 6f6e 5f76 6172 5f6c 6f67  t_option_var_log
│ │ │ -001f2500: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ -001f2510: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ -001f2520: 6e61 6d65 3a20 2741 6464 206e 6f73 7569  name: 'Add nosui
│ │ │ -001f2530: 6420 4f70 7469 6f6e 2074 6f20 2f76 6172  d Option to /var
│ │ │ -001f2540: 2f6c 6f67 3a20 4d61 6b65 2073 7572 6520  /log: Make sure 
│ │ │ -001f2550: 6e6f 7375 6964 206f 7074 696f 6e20 6973  nosuid option is
│ │ │ -001f2560: 2070 6172 7420 6f66 2074 6865 2074 6f0a   part of the to.
│ │ │ -001f2570: 2020 2020 2f76 6172 2f6c 6f67 206f 7074      /var/log opt
│ │ │ -001f2580: 696f 6e73 270a 2020 7365 745f 6661 6374  ions'.  set_fact
│ │ │ -001f2590: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ -001f25a0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001f25b0: 207c 2063 6f6d 6269 6e65 2820 7b27 276f   | combine( {''o
│ │ │ -001f25c0: 7074 696f 6e73 2727 3a27 2727 277e 286d  ptions'':''''~(m
│ │ │ -001f25d0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -001f25e0: 7320 7c0a 2020 2020 2020 6465 6661 756c  s |.      defaul
│ │ │ -001f25f0: 7428 2727 2727 2929 7e28 2727 2c27 2720  t(''''))~('','' 
│ │ │ -001f2600: 6966 2028 6d6f 756e 745f 696e 666f 2e6f  if (mount_info.o
│ │ │ -001f2610: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ -001f2620: 2827 2727 2729 2920 656c 7365 2027 2727  ('''')) else '''
│ │ │ -001f2630: 2729 7e27 276e 6f73 7569 6427 270a 2020  ')~''nosuid''.  
│ │ │ -001f2640: 2020 2020 7d29 207d 7d27 0a20 2077 6865      }) }}'.  whe
│ │ │ -001f2650: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ -001f2660: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -001f2670: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001f2680: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ -001f2690: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ -001f26a0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001f26b0: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -001f26c0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001f26d0: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ -001f26e0: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001f26f0: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001f2700: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001f2710: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -001f2720: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -001f2730: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ -001f2740: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001f2750: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001f2760: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ -001f2770: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -001f2780: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ -001f2790: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001f27a0: 2722 2f76 6172 2f6c 6f67 2220 696e 2061  '"/var/log" in a
│ │ │ -001f27b0: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ -001f27c0: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ -001f27d0: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ -001f27e0: 202d 206d 6f75 6e74 5f69 6e66 6f20 6973   - mount_info is
│ │ │ -001f27f0: 2064 6566 696e 6564 2061 6e64 2022 6e6f   defined and "no
│ │ │ -001f2800: 7375 6964 2220 6e6f 7420 696e 2028 6d6f  suid" not in (mo
│ │ │ -001f2810: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ -001f2820: 207c 2064 6566 6175 6c74 2827 2729 290a   | default('')).
│ │ │ -001f2830: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -001f2840: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ -001f2850: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001f2860: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ -001f2870: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -001f2880: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001f2890: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -001f28a0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ -001f28b0: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ -001f28c0: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ -001f28d0: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001f28e0: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001f28f0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001f2900: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001f2910: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001f2920: 7469 6f6e 5f76 6172 5f6c 6f67 5f6e 6f73  tion_var_log_nos
│ │ │ -001f2930: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f  uid.  - no_reboo
│ │ │ -001f2940: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ -001f2950: 3a20 2741 6464 206e 6f73 7569 6420 4f70  : 'Add nosuid Op
│ │ │ -001f2960: 7469 6f6e 2074 6f20 2f76 6172 2f6c 6f67  tion to /var/log
│ │ │ -001f2970: 3a20 456e 7375 7265 202f 7661 722f 6c6f  : Ensure /var/lo
│ │ │ -001f2980: 6720 6973 206d 6f75 6e74 6564 2077 6974  g is mounted wit
│ │ │ -001f2990: 6820 6e6f 7375 6964 206f 7074 696f 6e27  h nosuid option'
│ │ │ -001f29a0: 0a20 2061 6e73 6962 6c65 2e70 6f73 6978  .  ansible.posix
│ │ │ -001f29b0: 2e6d 6f75 6e74 3a0a 2020 2020 7061 7468  .mount:.    path
│ │ │ -001f29c0: 3a20 2f76 6172 2f6c 6f67 0a20 2020 2073  : /var/log.    s
│ │ │ -001f29d0: 7263 3a20 277b 7b20 6d6f 756e 745f 696e  rc: '{{ mount_in
│ │ │ -001f29e0: 666f 2e73 6f75 7263 6520 7c20 6465 6661  fo.source | defa
│ │ │ -001f29f0: 756c 7428 2727 2727 2920 7d7d 270a 2020  ult('''') }}'.  
│ │ │ -001f2a00: 2020 6f70 7473 3a20 277b 7b20 6d6f 756e    opts: '{{ moun
│ │ │ -001f2a10: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ -001f2a20: 2064 6566 6175 6c74 2827 2727 2729 207d   default('''') }
│ │ │ -001f2a30: 7d27 0a20 2020 2073 7461 7465 3a20 6d6f  }'.    state: mo
│ │ │ -001f2a40: 756e 7465 640a 2020 2020 6673 7479 7065  unted.    fstype
│ │ │ -001f2a50: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001f2a60: 2e66 7374 7970 6520 7c20 6465 6661 756c  .fstype | defaul
│ │ │ -001f2a70: 7428 2727 2727 2920 7d7d 270a 2020 7265  t('''') }}'.  re
│ │ │ -001f2a80: 6769 7374 6572 3a20 6d6f 756e 745f 7265  gister: mount_re
│ │ │ -001f2a90: 7375 6c74 0a20 2066 6169 6c65 645f 7768  sult.  failed_wh
│ │ │ -001f2aa0: 656e 3a0a 2020 2d20 6d6f 756e 745f 7265  en:.  - mount_re
│ │ │ -001f2ab0: 7375 6c74 2069 7320 6661 696c 6564 0a20  sult is failed. 
│ │ │ -001f2ac0: 202d 2027 2727 7461 7267 6574 2069 7320   - '''target is 
│ │ │ -001f2ad0: 6275 7379 2727 206e 6f74 2069 6e20 286d  busy'' not in (m
│ │ │ -001f2ae0: 6f75 6e74 5f72 6573 756c 742e 6d73 6720  ount_result.msg 
│ │ │ -001f2af0: 7c20 6465 6661 756c 7428 2727 2727 2929  | default(''''))
│ │ │ -001f2b00: 270a 2020 2d20 2727 2761 6c72 6561 6479  '.  - '''already
│ │ │ -001f2b10: 206d 6f75 6e74 6564 2727 206e 6f74 2069   mounted'' not i
│ │ │ -001f2b20: 6e20 286d 6f75 6e74 5f72 6573 756c 742e  n (mount_result.
│ │ │ -001f2b30: 6d73 6720 7c20 6465 6661 756c 7428 2727  msg | default(''
│ │ │ -001f2b40: 2727 2929 270a 2020 7768 656e 3a0a 2020  ''))'.  when:.  
│ │ │ -001f2b50: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ -001f2b60: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -001f2b70: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001f2b80: 2022 7270 6d2d 6f73 7472 6565 2220 696e   "rpm-ostree" in
│ │ │ -001f2b90: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001f2ba0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001f2bb0: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ -001f2bc0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001f2bd0: 7320 616e 6420 6e6f 7420 226f 7065 6e73  s and not "opens
│ │ │ -001f2be0: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ -001f2bf0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001f2c00: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001f2c10: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ -001f2c20: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ -001f2c30: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ -001f2c40: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ -001f2c50: 696f 6e5f 7479 7065 2069 6e0a 2020 2020  ion_type in.    
│ │ │ -001f2c60: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ -001f2c70: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ -001f2c80: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572  man", "container
│ │ │ -001f2c90: 225d 2029 2029 0a20 202d 2027 222f 7661  "] ) ).  - '"/va
│ │ │ -001f2ca0: 722f 6c6f 6722 2069 6e20 616e 7369 626c  r/log" in ansibl
│ │ │ -001f2cb0: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ -001f2cc0: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ -001f2cd0: 2920 7c20 6c69 7374 270a 2020 2d20 6d6f  ) | list'.  - mo
│ │ │ -001f2ce0: 756e 745f 696e 666f 2069 7320 6465 6669  unt_info is defi
│ │ │ -001f2cf0: 6e65 640a 2020 2d20 2864 6576 6963 655f  ned.  - (device_
│ │ │ -001f2d00: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ -001f2d10: 6566 696e 6564 2061 6e64 2028 6465 7669  efined and (devi
│ │ │ -001f2d20: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ -001f2d30: 206c 656e 6774 6820 2667 743b 2030 2929   length > 0))
│ │ │ -001f2d40: 206f 7220 2822 2d2d 6673 7461 6222 0a20   or ("--fstab". 
│ │ │ -001f2d50: 2020 207c 206c 656e 6774 6820 3d3d 2030     | length == 0
│ │ │ -001f2d60: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ -001f2d70: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ -001f2d80: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001f2d90: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ -001f2da0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -001f2db0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001f2dc0: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -001f2dd0: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -001f2de0: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ -001f2df0: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ -001f2e00: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -001f2e10: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -001f2e20: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001f2e30: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -001f2e40: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ -001f2e50: 6f70 7469 6f6e 5f76 6172 5f6c 6f67 5f6e  option_var_log_n
│ │ │ -001f2e60: 6f73 7569 640a 2020 2d20 6e6f 5f72 6562  osuid.  - no_reb
│ │ │ -001f2e70: 6f6f 745f 6e65 6564 6564 0a3c 2f63 6f64  oot_needed.
Remed │ │ │ -001f2f30: 6961 7469 6f6e 2053 6865 6c6c 2073 6372 iation Shell scr │ │ │ -001f2f40: 6970 7420 e287 b23c 2f61 3e3c 6272 3e3c ipt ...
< │ │ │ -001f2f50: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -001f2f60: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -001f2f70: 7365 2220 6964 3d22 6964 3630 3722 3e3c se" id="id607">< │ │ │ -001f2f80: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -001f2f90: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -001f2fa0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -001f2fb0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -001f2fc0: 3e3c 7472 3e3c 7468 3e52 6562 6f6f 743a >Reboot: │ │ │ -001f2fd0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -001f2ff0: 3c70 7265 3e3c 636f 6465 3e23 2052 656d
# Rem
│ │ │ -001f3000: 6564 6961 7469 6f6e 2069 7320 6170 706c  ediation is appl
│ │ │ -001f3010: 6963 6162 6c65 206f 6e6c 7920 696e 2063  icable only in c
│ │ │ -001f3020: 6572 7461 696e 2070 6c61 7466 6f72 6d73  ertain platforms
│ │ │ -001f3030: 0a69 6620 2820 2120 2820 7b20 7270 6d20  .if ( ! ( { rpm 
│ │ │ -001f3040: 2d2d 7175 6965 7420 2d71 206b 6572 6e65  --quiet -q kerne
│ │ │ -001f3050: 6c20 3b7d 2026 616d 703b 2661 6d70 3b20  l ;} && 
│ │ │ -001f3060: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ -001f3070: 2072 706d 2d6f 7374 7265 6520 3b7d 2026   rpm-ostree ;} &
│ │ │ -001f3080: 616d 703b 2661 6d70 3b20 7b20 7270 6d20  amp;& { rpm 
│ │ │ -001f3090: 2d2d 7175 6965 7420 2d71 2062 6f6f 7463  --quiet -q bootc
│ │ │ -001f30a0: 203b 7d20 2661 6d70 3b26 616d 703b 207b   ;} && {
│ │ │ -001f30b0: 2021 2072 706d 202d 2d71 7569 6574 202d   ! rpm --quiet -
│ │ │ -001f30c0: 7120 6f70 656e 7368 6966 742d 6b75 6265  q openshift-kube
│ │ │ -001f30d0: 6c65 7420 3b7d 2026 616d 703b 2661 6d70  let ;} &&
│ │ │ -001f30e0: 3b20 285b 202d 6620 2f72 756e 2f6f 7374  ; ([ -f /run/ost
│ │ │ -001f30f0: 7265 652d 626f 6f74 6564 205d 207c 7c20  ree-booted ] || 
│ │ │ -001f3100: 5b20 2d4c 202f 6f73 7472 6565 205d 2920  [ -L /ostree ]) 
│ │ │ -001f3110: 2920 2661 6d70 3b26 616d 703b 2021 2028  ) && ! (
│ │ │ -001f3120: 205b 202d 6620 2f2e 646f 636b 6572 656e   [ -f /.dockeren
│ │ │ -001f3130: 7620 5d20 7c7c 205b 202d 6620 2f72 756e  v ] || [ -f /run
│ │ │ -001f3140: 2f2e 636f 6e74 6169 6e65 7265 6e76 205d  /.containerenv ]
│ │ │ -001f3150: 2029 2029 2026 616d 703b 2661 6d70 3b20   ) ) && 
│ │ │ -001f3160: 7b20 2820 6669 6e64 6d6e 7420 2d2d 6b65  { ( findmnt --ke
│ │ │ -001f3170: 726e 656c 2022 2f76 6172 2f6c 6f67 2220  rnel "/var/log" 
│ │ │ -001f3180: 2667 743b 202f 6465 762f 6e75 6c6c 207c  > /dev/null |
│ │ │ -001f3190: 7c20 6669 6e64 6d6e 7420 2d2d 6673 7461  | findmnt --fsta
│ │ │ -001f31a0: 6220 222f 7661 722f 6c6f 6722 2026 6774  b "/var/log" >
│ │ │ -001f31b0: 3b20 2f64 6576 2f6e 756c 6c20 293b 207d  ; /dev/null ); }
│ │ │ -001f31c0: 3b20 7468 656e 0a0a 6675 6e63 7469 6f6e  ; then..function
│ │ │ -001f31d0: 2070 6572 666f 726d 5f72 656d 6564 6961   perform_remedia
│ │ │ -001f31e0: 7469 6f6e 207b 0a0a 2020 2020 0a20 2020  tion {..    .   
│ │ │ -001f31f0: 2020 2020 2023 2074 6865 206d 6f75 6e74       # the mount
│ │ │ -001f3200: 2070 6f69 6e74 202f 7661 722f 6c6f 6720   point /var/log 
│ │ │ -001f3210: 6861 7320 746f 2062 6520 6465 6669 6e65  has to be define
│ │ │ -001f3220: 6420 696e 202f 6574 632f 6673 7461 620a  d in /etc/fstab.
│ │ │ -001f3230: 2020 2020 2020 2020 2320 6265 666f 7265          # before
│ │ │ -001f3240: 2074 6869 7320 7265 6d65 6469 6174 696f   this remediatio
│ │ │ -001f3250: 6e20 6361 6e20 6265 2065 7865 6375 7465  n can be execute
│ │ │ -001f3260: 642e 2049 6e20 6361 7365 2069 7420 6973  d. In case it is
│ │ │ -001f3270: 206e 6f74 2064 6566 696e 6564 2c20 7468   not defined, th
│ │ │ -001f3280: 650a 2020 2020 2020 2020 2320 7265 6d65  e.        # reme
│ │ │ -001f3290: 6469 6174 696f 6e20 6162 6f72 7473 2061  diation aborts a
│ │ │ -001f32a0: 6e64 206e 6f20 6368 616e 6765 7320 7265  nd no changes re
│ │ │ -001f32b0: 6761 7264 696e 6720 7468 6520 6d6f 756e  garding the moun
│ │ │ -001f32c0: 7420 706f 696e 7420 6172 6520 646f 6e65  t point are done
│ │ │ -001f32d0: 2e0a 2020 2020 2020 2020 6d6f 756e 745f  ..        mount_
│ │ │ -001f32e0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001f32f0: 7870 3d22 2428 7072 696e 7466 2022 5e5b  xp="$(printf "^[
│ │ │ -001f3300: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e  [:space:]]*[^#].
│ │ │ -001f3310: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b  *[[:space:]]%s[[
│ │ │ -001f3320: 3a73 7061 6365 3a5d 5d22 2022 2f76 6172  :space:]]" "/var
│ │ │ -001f3330: 2f6c 6f67 2229 220a 0a20 2020 2067 7265  /log")"..    gre
│ │ │ -001f3340: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001f3350: 6d61 7463 685f 7265 6765 7870 2220 2d71  match_regexp" -q
│ │ │ -001f3360: 202f 6574 632f 6673 7461 6220 5c0a 2020   /etc/fstab \.  
│ │ │ -001f3370: 2020 2020 2020 7c7c 207b 2065 6368 6f20        || { echo 
│ │ │ -001f3380: 2254 6865 206d 6f75 6e74 2070 6f69 6e74  "The mount point
│ │ │ -001f3390: 2027 2f76 6172 2f6c 6f67 2720 6973 206e   '/var/log' is n
│ │ │ -001f33a0: 6f74 2065 7665 6e20 696e 202f 6574 632f  ot even in /etc/
│ │ │ -001f33b0: 6673 7461 622c 2073 6f20 7765 2063 616e  fstab, so we can
│ │ │ -001f33c0: 2774 2073 6574 2075 7020 6d6f 756e 7420  't set up mount 
│ │ │ -001f33d0: 6f70 7469 6f6e 7322 2026 6774 3b26 616d  options" >&am
│ │ │ -001f33e0: 703b 323b 0a20 2020 2020 2020 2020 2020  p;2;.           
│ │ │ -001f33f0: 2020 2020 2065 6368 6f20 224e 6f74 2072       echo "Not r
│ │ │ -001f3400: 656d 6564 6961 7469 6e67 2c20 6265 6361  emediating, beca
│ │ │ -001f3410: 7573 6520 7468 6572 6520 6973 206e 6f20  use there is no 
│ │ │ -001f3420: 7265 636f 7264 206f 6620 2f76 6172 2f6c  record of /var/l
│ │ │ -001f3430: 6f67 2069 6e20 2f65 7463 2f66 7374 6162  og in /etc/fstab
│ │ │ -001f3440: 2220 2667 743b 2661 6d70 3b32 3b20 7265  " >&2; re
│ │ │ -001f3450: 7475 726e 2031 3b20 7d0a 2020 2020 0a0a  turn 1; }.    ..
│ │ │ -001f3460: 0a20 2020 206d 6f75 6e74 5f70 6f69 6e74  .    mount_point
│ │ │ -001f3470: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ -001f3480: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ -001f3490: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ -001f34a0: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ -001f34b0: 653a 5d5d 2220 2f76 6172 2f6c 6f67 2922  e:]]" /var/log)"
│ │ │ -001f34c0: 0a0a 2020 2020 2320 4966 2074 6865 206d  ..    # If the m
│ │ │ -001f34d0: 6f75 6e74 2070 6f69 6e74 2069 7320 6e6f  ount point is no
│ │ │ -001f34e0: 7420 696e 202f 6574 632f 6673 7461 622c  t in /etc/fstab,
│ │ │ -001f34f0: 2067 6574 2070 7265 7669 6f75 7320 6d6f   get previous mo
│ │ │ -001f3500: 756e 7420 6f70 7469 6f6e 7320 6672 6f6d  unt options from
│ │ │ -001f3510: 202f 6574 632f 6d74 6162 0a20 2020 2069   /etc/mtab.    i
│ │ │ -001f3520: 6620 2120 6772 6570 202d 7120 2224 6d6f  f ! grep -q "$mo
│ │ │ -001f3530: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001f3540: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ -001f3550: 6162 3b20 7468 656e 0a20 2020 2020 2020  ab; then.       
│ │ │ -001f3560: 2023 2072 756e 7469 6d65 206f 7074 7320   # runtime opts 
│ │ │ -001f3570: 7769 7468 6f75 7420 736f 6d65 2061 7574  without some aut
│ │ │ -001f3580: 6f6d 6174 6963 206b 6572 6e65 6c2f 7573  omatic kernel/us
│ │ │ -001f3590: 6572 7370 6163 652d 6164 6465 6420 6465  erspace-added de
│ │ │ -001f35a0: 6661 756c 7473 0a20 2020 2020 2020 2070  faults.        p
│ │ │ -001f35b0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001f35c0: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ -001f35d0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001f35e0: 6765 7870 2220 2f65 7463 2f6d 7461 6220  gexp" /etc/mtab 
│ │ │ -001f35f0: 7c20 6865 6164 202d 3120 7c20 2061 776b  | head -1 |  awk
│ │ │ -001f3600: 2027 7b70 7269 6e74 2024 347d 2720 5c0a   '{print $4}' \.
│ │ │ -001f3610: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -001f3620: 2020 2020 7c20 7365 6420 2d45 2022 732f      | sed -E "s/
│ │ │ -001f3630: 2872 777c 6465 6661 756c 7473 7c73 6563  (rw|defaults|sec
│ │ │ -001f3640: 6c61 6265 6c7c 6e6f 7375 6964 2928 2c7c  label|nosuid)(,|
│ │ │ -001f3650: 2429 2f2f 673b 732f 2c24 2f2f 2229 0a20  $)//g;s/,$//"). 
│ │ │ -001f3660: 2020 2020 2020 205b 2022 2470 7265 7669         [ "$previ
│ │ │ -001f3670: 6f75 735f 6d6f 756e 745f 6f70 7473 2220  ous_mount_opts" 
│ │ │ -001f3680: 5d20 2661 6d70 3b26 616d 703b 2070 7265  ] && pre
│ │ │ -001f3690: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ -001f36a0: 2b3d 222c 220a 2020 2020 2020 2020 2320  +=",".        # 
│ │ │ -001f36b0: 496e 2069 736f 3936 3630 2066 696c 6573  In iso9660 files
│ │ │ -001f36c0: 7973 7465 6d73 206d 7461 6220 636f 756c  ystems mtab coul
│ │ │ -001f36d0: 6420 6465 7363 7269 6265 2061 2022 626c  d describe a "bl
│ │ │ -001f36e0: 6f63 6b73 697a 6522 2076 616c 7565 2c20  ocksize" value, 
│ │ │ -001f36f0: 7468 6973 2073 686f 756c 6420 6265 2072  this should be r
│ │ │ -001f3700: 6566 6c65 6374 6564 2069 6e0a 2020 2020  eflected in.    
│ │ │ -001f3710: 2020 2020 2320 6673 7461 6220 6173 2022      # fstab as "
│ │ │ -001f3720: 626c 6f63 6b22 2e20 2054 6865 206e 6578  block".  The nex
│ │ │ -001f3730: 7420 7661 7269 6162 6c65 2069 7320 746f  t variable is to
│ │ │ -001f3740: 2073 6174 6973 6679 2073 6865 6c6c 6368   satisfy shellch
│ │ │ -001f3750: 6563 6b20 5343 3230 3530 2e0a 2020 2020  eck SC2050..    
│ │ │ -001f3760: 2020 2020 6673 5f74 7970 653d 2222 0a20      fs_type="". 
│ │ │ -001f3770: 2020 2020 2020 2069 6620 5b20 2022 2466         if [  "$f
│ │ │ -001f3780: 735f 7479 7065 2220 3d3d 2022 6973 6f39  s_type" == "iso9
│ │ │ -001f3790: 3636 3022 205d 203b 2074 6865 6e0a 2020  660" ] ; then.  
│ │ │ -001f37a0: 2020 2020 2020 2020 2020 7072 6576 696f            previo
│ │ │ -001f37b0: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ -001f37c0: 7365 6420 2773 2f62 6c6f 636b 7369 7a65  sed 's/blocksize
│ │ │ -001f37d0: 3d2f 626c 6f63 6b3d 2f27 2026 6c74 3b26  =/block=/' <&
│ │ │ -001f37e0: 6c74 3b26 6c74 3b20 2224 7072 6576 696f  lt;< "$previo
│ │ │ -001f37f0: 7573 5f6d 6f75 6e74 5f6f 7074 7322 290a  us_mount_opts").
│ │ │ -001f3800: 2020 2020 2020 2020 6669 0a20 2020 2020          fi.     
│ │ │ -001f3810: 2020 2065 6368 6f20 2220 2f76 6172 2f6c     echo " /var/l
│ │ │ -001f3820: 6f67 2020 6465 6661 756c 7473 2c24 7b70  og  defaults,${p
│ │ │ -001f3830: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001f3840: 7473 7d6e 6f73 7569 6420 3020 3022 2026  ts}nosuid 0 0" &
│ │ │ -001f3850: 6774 3b26 6774 3b20 2f65 7463 2f66 7374  gt;> /etc/fst
│ │ │ -001f3860: 6162 0a20 2020 2023 2049 6620 7468 6520  ab.    # If the 
│ │ │ -001f3870: 6d6f 756e 745f 6f70 7420 6f70 7469 6f6e  mount_opt option
│ │ │ -001f3880: 2069 7320 6e6f 7420 616c 7265 6164 7920   is not already 
│ │ │ -001f3890: 696e 2074 6865 206d 6f75 6e74 2070 6f69  in the mount poi
│ │ │ -001f38a0: 6e74 2773 202f 6574 632f 6673 7461 6220  nt's /etc/fstab 
│ │ │ -001f38b0: 656e 7472 792c 2061 6464 2069 740a 2020  entry, add it.  
│ │ │ -001f38c0: 2020 656c 6966 2021 2067 7265 7020 2224    elif ! grep "$
│ │ │ -001f38d0: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001f38e0: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ -001f38f0: 7374 6162 207c 2067 7265 7020 2d71 2022  stab | grep -q "
│ │ │ -001f3900: 6e6f 7375 6964 223b 2074 6865 6e0a 2020  nosuid"; then.  
│ │ │ -001f3910: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ -001f3920: 6f75 6e74 5f6f 7074 733d 2428 6772 6570  ount_opts=$(grep
│ │ │ -001f3930: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -001f3940: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ -001f3950: 632f 6673 7461 6220 7c20 6177 6b20 277b  c/fstab | awk '{
│ │ │ -001f3960: 7072 696e 7420 2434 7d27 290a 2020 2020  print $4}').    
│ │ │ -001f3970: 2020 2020 7365 6420 2d69 2022 737c 5c28      sed -i "s|\(
│ │ │ -001f3980: 247b 6d6f 756e 745f 706f 696e 745f 6d61  ${mount_point_ma
│ │ │ -001f3990: 7463 685f 7265 6765 7870 7d2e 2a24 7b70  tch_regexp}.*${p
│ │ │ -001f39a0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001f39b0: 7473 7d5c 297c 5c31 2c6e 6f73 7569 647c  ts}\)|\1,nosuid|
│ │ │ -001f39c0: 2220 2f65 7463 2f66 7374 6162 0a20 2020  " /etc/fstab.   
│ │ │ -001f39d0: 2066 690a 0a0a 2020 2020 6966 206d 6b64   fi...    if mkd
│ │ │ -001f39e0: 6972 202d 7020 222f 7661 722f 6c6f 6722  ir -p "/var/log"
│ │ │ -001f39f0: 3b20 7468 656e 0a20 2020 2020 2020 2069  ; then.        i
│ │ │ -001f3a00: 6620 6d6f 756e 7470 6f69 6e74 202d 7120  f mountpoint -q 
│ │ │ -001f3a10: 222f 7661 722f 6c6f 6722 3b20 7468 656e  "/var/log"; then
│ │ │ -001f3a20: 0a20 2020 2020 2020 2020 2020 206d 6f75  .            mou
│ │ │ -001f3a30: 6e74 202d 6f20 7265 6d6f 756e 7420 2d2d  nt -o remount --
│ │ │ -001f3a40: 7461 7267 6574 2022 2f76 6172 2f6c 6f67  target "/var/log
│ │ │ -001f3a50: 220a 2020 2020 2020 2020 6669 0a20 2020  ".        fi.   
│ │ │ -001f3a60: 2066 690a 7d0a 0a70 6572 666f 726d 5f72   fi.}..perform_r
│ │ │ -001f3a70: 656d 6564 6961 7469 6f6e 0a0a 656c 7365  emediation..else
│ │ │ -001f3a80: 0a20 2020 2026 6774 3b26 616d 703b 3220  .    >&2 
│ │ │ -001f3a90: 6563 686f 2027 5265 6d65 6469 6174 696f  echo 'Remediatio
│ │ │ -001f3aa0: 6e20 6973 206e 6f74 2061 7070 6c69 6361  n is not applica
│ │ │ -001f3ab0: 626c 652c 206e 6f74 6869 6e67 2077 6173  ble, nothing was
│ │ │ -001f3ac0: 2064 6f6e 6527 0a66 690a 3c2f 636f 6465   done'.fi.
│ │ │ +001f1410: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +001f1440: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +001f14b0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption: │ │ │ +001f14d0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +001f1500: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Comple │ │ │ +001f1490: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +001f14a0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
high
Reb │ │ │ +001f14e0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +001f14f0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:configure< │ │ │ +001f1520: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ +001f1540: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ +001f1550: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ +001f1560: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ +001f1570: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ +001f1580: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +001f1590: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ +001f15a0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001f15b0: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ +001f15c0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +001f15d0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001f15e0: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ +001f15f0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ +001f1600: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ +001f1610: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ +001f1620: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ +001f1630: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ +001f1640: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +001f1650: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +001f1660: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ +001f1670: 7469 6f6e 5f76 6172 5f6c 6f67 5f6e 6f73  tion_var_log_nos
│ │ │ +001f1680: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f  uid.  - no_reboo
│ │ │ +001f1690: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ +001f16a0: 3a20 2741 6464 206e 6f73 7569 6420 4f70  : 'Add nosuid Op
│ │ │ +001f16b0: 7469 6f6e 2074 6f20 2f76 6172 2f6c 6f67  tion to /var/log
│ │ │ +001f16c0: 3a20 4368 6563 6b20 696e 666f 726d 6174  : Check informat
│ │ │ +001f16d0: 696f 6e20 6173 736f 6369 6174 6564 2074  ion associated t
│ │ │ +001f16e0: 6f20 6d6f 756e 7470 6f69 6e74 270a 2020  o mountpoint'.  
│ │ │ +001f16f0: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +001f1700: 636f 6d6d 616e 643a 2066 696e 646d 6e74  command: findmnt
│ │ │ +001f1710: 202d 2d66 7374 6162 2027 2f76 6172 2f6c   --fstab '/var/l
│ │ │ +001f1720: 6f67 270a 2020 7265 6769 7374 6572 3a20  og'.  register: 
│ │ │ +001f1730: 6465 7669 6365 5f6e 616d 650a 2020 6661  device_name.  fa
│ │ │ +001f1740: 696c 6564 5f77 6865 6e3a 2064 6576 6963  iled_when: devic
│ │ │ +001f1750: 655f 6e61 6d65 2e72 6320 2667 743b 2031  e_name.rc > 1
│ │ │ +001f1760: 0a20 2063 6861 6e67 6564 5f77 6865 6e3a  .  changed_when:
│ │ │ +001f1770: 2066 616c 7365 0a20 2063 6865 636b 5f6d   false.  check_m
│ │ │ +001f1780: 6f64 653a 2066 616c 7365 0a20 2077 6865  ode: false.  whe
│ │ │ +001f1790: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +001f17a0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001f17b0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001f17c0: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ +001f17d0: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ +001f17e0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001f17f0: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ +001f1800: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001f1810: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ +001f1820: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +001f1830: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ +001f1840: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001f1850: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ +001f1860: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ +001f1870: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ +001f1880: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ +001f1890: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ +001f18a0: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ +001f18b0: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ +001f18c0: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ +001f18d0: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ +001f18e0: 2722 2f76 6172 2f6c 6f67 2220 696e 2061  '"/var/log" in a
│ │ │ +001f18f0: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ +001f1900: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ +001f1910: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ +001f1920: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +001f1930: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ +001f1940: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001f1950: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ +001f1960: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +001f1970: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001f1980: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001f1990: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ +001f19a0: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ +001f19b0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +001f19c0: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +001f19d0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001f19e0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001f19f0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001f1a00: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001f1a10: 696f 6e5f 7661 725f 6c6f 675f 6e6f 7375  ion_var_log_nosu
│ │ │ +001f1a20: 6964 0a20 202d 206e 6f5f 7265 626f 6f74  id.  - no_reboot
│ │ │ +001f1a30: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ +001f1a40: 2027 4164 6420 6e6f 7375 6964 204f 7074   'Add nosuid Opt
│ │ │ +001f1a50: 696f 6e20 746f 202f 7661 722f 6c6f 673a  ion to /var/log:
│ │ │ +001f1a60: 2043 7265 6174 6520 6d6f 756e 745f 696e   Create mount_in
│ │ │ +001f1a70: 666f 2064 6963 7469 6f6e 6172 7920 7661  fo dictionary va
│ │ │ +001f1a80: 7269 6162 6c65 270a 2020 7365 745f 6661  riable'.  set_fa
│ │ │ +001f1a90: 6374 3a0a 2020 2020 6d6f 756e 745f 696e  ct:.    mount_in
│ │ │ +001f1aa0: 666f 3a20 277b 7b20 6d6f 756e 745f 696e  fo: '{{ mount_in
│ │ │ +001f1ab0: 666f 7c64 6566 6175 6c74 287b 7d29 7c63  fo|default({})|c
│ │ │ +001f1ac0: 6f6d 6269 6e65 287b 6974 656d 2e30 3a20  ombine({item.0: 
│ │ │ +001f1ad0: 6974 656d 2e31 7d29 207d 7d27 0a20 2077  item.1}) }}'.  w
│ │ │ +001f1ae0: 6974 685f 746f 6765 7468 6572 3a0a 2020  ith_together:.  
│ │ │ +001f1af0: 2d20 277b 7b20 6465 7669 6365 5f6e 616d  - '{{ device_nam
│ │ │ +001f1b00: 652e 7374 646f 7574 5f6c 696e 6573 5b30  e.stdout_lines[0
│ │ │ +001f1b10: 5d2e 7370 6c69 7428 2920 7c20 6d61 7028  ].split() | map(
│ │ │ +001f1b20: 2727 6c6f 7765 7227 2729 207c 206c 6973  ''lower'') | lis
│ │ │ +001f1b30: 7420 7d7d 270a 2020 2d20 277b 7b20 6465  t }}'.  - '{{ de
│ │ │ +001f1b40: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001f1b50: 5f6c 696e 6573 5b31 5d2e 7370 6c69 7428  _lines[1].split(
│ │ │ +001f1b60: 2920 7c20 6c69 7374 207d 7d27 0a20 2077  ) | list }}'.  w
│ │ │ +001f1b70: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +001f1b80: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +001f1b90: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001f1ba0: 6765 7320 616e 6420 2272 706d 2d6f 7374  ges and "rpm-ost
│ │ │ +001f1bb0: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001f1bc0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001f1bd0: 2020 2061 6e64 2022 626f 6f74 6322 2069     and "bootc" i
│ │ │ +001f1be0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001f1bf0: 7061 636b 6167 6573 2061 6e64 206e 6f74  packages and not
│ │ │ +001f1c00: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ +001f1c10: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ +001f1c20: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001f1c30: 2020 2061 6e64 2022 6f73 7472 6565 2220     and "ostree" 
│ │ │ +001f1c40: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ +001f1c50: 636d 646c 696e 6520 2920 616e 6420 6e6f  cmdline ) and no
│ │ │ +001f1c60: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ +001f1c70: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ +001f1c80: 696e 0a20 2020 205b 2264 6f63 6b65 7222  in.    ["docker"
│ │ │ +001f1c90: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ +001f1ca0: 222c 2022 706f 646d 616e 222c 2022 636f  ", "podman", "co
│ │ │ +001f1cb0: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ +001f1cc0: 2d20 2722 2f76 6172 2f6c 6f67 2220 696e  - '"/var/log" in
│ │ │ +001f1cd0: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ +001f1ce0: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ +001f1cf0: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ +001f1d00: 0a20 202d 2064 6576 6963 655f 6e61 6d65  .  - device_name
│ │ │ +001f1d10: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ +001f1d20: 6564 2061 6e64 2064 6576 6963 655f 6e61  ed and device_na
│ │ │ +001f1d30: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320  me.stdout_lines 
│ │ │ +001f1d40: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ +001f1d50: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001f1d60: 7574 207c 206c 656e 6774 6820 2667 743b  ut | length >
│ │ │ +001f1d70: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ +001f1d80: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001f1d90: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001f1da0: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ +001f1db0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +001f1dc0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001f1dd0: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ +001f1de0: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ +001f1df0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001f1e00: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ +001f1e10: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +001f1e20: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ +001f1e30: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001f1e40: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ +001f1e50: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ +001f1e60: 745f 6f70 7469 6f6e 5f76 6172 5f6c 6f67  t_option_var_log
│ │ │ +001f1e70: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ +001f1e80: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +001f1e90: 6e61 6d65 3a20 2741 6464 206e 6f73 7569  name: 'Add nosui
│ │ │ +001f1ea0: 6420 4f70 7469 6f6e 2074 6f20 2f76 6172  d Option to /var
│ │ │ +001f1eb0: 2f6c 6f67 3a20 4966 202f 7661 722f 6c6f  /log: If /var/lo
│ │ │ +001f1ec0: 6720 6e6f 7420 6d6f 756e 7465 642c 2063  g not mounted, c
│ │ │ +001f1ed0: 7261 6674 206d 6f75 6e74 5f69 6e66 6f0a  raft mount_info.
│ │ │ +001f1ee0: 2020 2020 6d61 6e75 616c 6c79 270a 2020      manually'.  
│ │ │ +001f1ef0: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ +001f1f00: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ +001f1f10: 756e 745f 696e 666f 7c64 6566 6175 6c74  unt_info|default
│ │ │ +001f1f20: 287b 7d29 7c63 6f6d 6269 6e65 287b 6974  ({})|combine({it
│ │ │ +001f1f30: 656d 2e30 3a20 6974 656d 2e31 7d29 207d  em.0: item.1}) }
│ │ │ +001f1f40: 7d27 0a20 2077 6974 685f 746f 6765 7468  }'.  with_togeth
│ │ │ +001f1f50: 6572 3a0a 2020 2d20 2d20 7461 7267 6574  er:.  - - target
│ │ │ +001f1f60: 0a20 2020 202d 2073 6f75 7263 650a 2020  .    - source.  
│ │ │ +001f1f70: 2020 2d20 6673 7479 7065 0a20 2020 202d    - fstype.    -
│ │ │ +001f1f80: 206f 7074 696f 6e73 0a20 202d 202d 202f   options.  - - /
│ │ │ +001f1f90: 7661 722f 6c6f 670a 2020 2020 2d20 2727  var/log.    - ''
│ │ │ +001f1fa0: 0a20 2020 202d 2027 270a 2020 2020 2d20  .    - ''.    - 
│ │ │ +001f1fb0: 6465 6661 756c 7473 0a20 2077 6865 6e3a  defaults.  when:
│ │ │ +001f1fc0: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ +001f1fd0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +001f1fe0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001f1ff0: 616e 6420 2272 706d 2d6f 7374 7265 6522  and "rpm-ostree"
│ │ │ +001f2000: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001f2010: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001f2020: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ +001f2030: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001f2040: 6167 6573 2061 6e64 206e 6f74 2022 6f70  ages and not "op
│ │ │ +001f2050: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ +001f2060: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001f2070: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001f2080: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ +001f2090: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ +001f20a0: 696e 6520 2920 616e 6420 6e6f 7420 2820  ine ) and not ( 
│ │ │ +001f20b0: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ +001f20c0: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20  zation_type in. 
│ │ │ +001f20d0: 2020 205b 2264 6f63 6b65 7222 2c20 226c     ["docker", "l
│ │ │ +001f20e0: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ +001f20f0: 706f 646d 616e 222c 2022 636f 6e74 6169  podman", "contai
│ │ │ +001f2100: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ +001f2110: 2f76 6172 2f6c 6f67 2220 696e 2061 6e73  /var/log" in ans
│ │ │ +001f2120: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ +001f2130: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ +001f2140: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ +001f2150: 2028 222d 2d66 7374 6162 2220 7c20 6c65   ("--fstab" | le
│ │ │ +001f2160: 6e67 7468 203d 3d20 3029 0a20 202d 2064  ngth == 0).  - d
│ │ │ +001f2170: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001f2180: 7420 6973 2064 6566 696e 6564 2061 6e64  t is defined and
│ │ │ +001f2190: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +001f21a0: 6f75 745f 6c69 6e65 7320 6973 2064 6566  out_lines is def
│ │ │ +001f21b0: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ +001f21c0: 5f6e 616d 652e 7374 646f 7574 207c 206c  _name.stdout | l
│ │ │ +001f21d0: 656e 6774 6820 3d3d 2030 290a 2020 7461  ength == 0).  ta
│ │ │ +001f21e0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +001f21f0: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ +001f2200: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ +001f2210: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001f2220: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ +001f2230: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ +001f2240: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001f2250: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ +001f2260: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ +001f2270: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001f2280: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001f2290: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001f22a0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001f22b0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001f22c0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001f22d0: 5f76 6172 5f6c 6f67 5f6e 6f73 7569 640a  _var_log_nosuid.
│ │ │ +001f22e0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001f22f0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001f2300: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ +001f2310: 2074 6f20 2f76 6172 2f6c 6f67 3a20 4d61   to /var/log: Ma
│ │ │ +001f2320: 6b65 2073 7572 6520 6e6f 7375 6964 206f  ke sure nosuid o
│ │ │ +001f2330: 7074 696f 6e20 6973 2070 6172 7420 6f66  ption is part of
│ │ │ +001f2340: 2074 6865 2074 6f0a 2020 2020 2f76 6172   the to.    /var
│ │ │ +001f2350: 2f6c 6f67 206f 7074 696f 6e73 270a 2020  /log options'.  
│ │ │ +001f2360: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ +001f2370: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ +001f2380: 756e 745f 696e 666f 207c 2063 6f6d 6269  unt_info | combi
│ │ │ +001f2390: 6e65 2820 7b27 276f 7074 696f 6e73 2727  ne( {''options''
│ │ │ +001f23a0: 3a27 2727 277e 286d 6f75 6e74 5f69 6e66  :''''~(mount_inf
│ │ │ +001f23b0: 6f2e 6f70 7469 6f6e 7320 7c0a 2020 2020  o.options |.    
│ │ │ +001f23c0: 2020 6465 6661 756c 7428 2727 2727 2929    default(''''))
│ │ │ +001f23d0: 7e28 2727 2c27 2720 6966 2028 6d6f 756e  ~('','' if (moun
│ │ │ +001f23e0: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ +001f23f0: 2064 6566 6175 6c74 2827 2727 2729 2920   default('''')) 
│ │ │ +001f2400: 656c 7365 2027 2727 2729 7e27 276e 6f73  else '''')~''nos
│ │ │ +001f2410: 7569 6427 270a 2020 2020 2020 7d29 207d  uid''.      }) }
│ │ │ +001f2420: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028  }'.  when:.  - (
│ │ │ +001f2430: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +001f2440: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001f2450: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ +001f2460: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ +001f2470: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001f2480: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ +001f2490: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ +001f24a0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001f24b0: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ +001f24c0: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ +001f24d0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001f24e0: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ +001f24f0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001f2500: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ +001f2510: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ +001f2520: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ +001f2530: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ +001f2540: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ +001f2550: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ +001f2560: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ +001f2570: 2920 290a 2020 2d20 2722 2f76 6172 2f6c  ) ).  - '"/var/l
│ │ │ +001f2580: 6f67 2220 696e 2061 6e73 6962 6c65 5f6d  og" in ansible_m
│ │ │ +001f2590: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ +001f25a0: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ +001f25b0: 206c 6973 7427 0a20 202d 206d 6f75 6e74   list'.  - mount
│ │ │ +001f25c0: 5f69 6e66 6f20 6973 2064 6566 696e 6564  _info is defined
│ │ │ +001f25d0: 2061 6e64 2022 6e6f 7375 6964 2220 6e6f   and "nosuid" no
│ │ │ +001f25e0: 7420 696e 2028 6d6f 756e 745f 696e 666f  t in (mount_info
│ │ │ +001f25f0: 2e6f 7074 696f 6e73 207c 2064 6566 6175  .options | defau
│ │ │ +001f2600: 6c74 2827 2729 290a 2020 7461 6773 3a0a  lt('')).  tags:.
│ │ │ +001f2610: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001f2620: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ +001f2630: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ +001f2640: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001f2650: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ +001f2660: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ +001f2670: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001f2680: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ +001f2690: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ +001f26a0: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001f26b0: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001f26c0: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001f26d0: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001f26e0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001f26f0: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ +001f2700: 5f6c 6f67 5f6e 6f73 7569 640a 2020 2d20  _log_nosuid.  - 
│ │ │ +001f2710: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001f2720: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ +001f2730: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20  osuid Option to 
│ │ │ +001f2740: 2f76 6172 2f6c 6f67 3a20 456e 7375 7265  /var/log: Ensure
│ │ │ +001f2750: 202f 7661 722f 6c6f 6720 6973 206d 6f75   /var/log is mou
│ │ │ +001f2760: 6e74 6564 2077 6974 6820 6e6f 7375 6964  nted with nosuid
│ │ │ +001f2770: 206f 7074 696f 6e27 0a20 2061 6e73 6962   option'.  ansib
│ │ │ +001f2780: 6c65 2e70 6f73 6978 2e6d 6f75 6e74 3a0a  le.posix.mount:.
│ │ │ +001f2790: 2020 2020 7061 7468 3a20 2f76 6172 2f6c      path: /var/l
│ │ │ +001f27a0: 6f67 0a20 2020 2073 7263 3a20 277b 7b20  og.    src: '{{ 
│ │ │ +001f27b0: 6d6f 756e 745f 696e 666f 2e73 6f75 7263  mount_info.sourc
│ │ │ +001f27c0: 6520 7c20 6465 6661 756c 7428 2727 2727  e | default(''''
│ │ │ +001f27d0: 2920 7d7d 270a 2020 2020 6f70 7473 3a20  ) }}'.    opts: 
│ │ │ +001f27e0: 277b 7b20 6d6f 756e 745f 696e 666f 2e6f  '{{ mount_info.o
│ │ │ +001f27f0: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ +001f2800: 2827 2727 2729 207d 7d27 0a20 2020 2073  ('''') }}'.    s
│ │ │ +001f2810: 7461 7465 3a20 6d6f 756e 7465 640a 2020  tate: mounted.  
│ │ │ +001f2820: 2020 6673 7479 7065 3a20 277b 7b20 6d6f    fstype: '{{ mo
│ │ │ +001f2830: 756e 745f 696e 666f 2e66 7374 7970 6520  unt_info.fstype 
│ │ │ +001f2840: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ +001f2850: 7d7d 270a 2020 7265 6769 7374 6572 3a20  }}'.  register: 
│ │ │ +001f2860: 6d6f 756e 745f 7265 7375 6c74 0a20 2066  mount_result.  f
│ │ │ +001f2870: 6169 6c65 645f 7768 656e 3a0a 2020 2d20  ailed_when:.  - 
│ │ │ +001f2880: 6d6f 756e 745f 7265 7375 6c74 2069 7320  mount_result is 
│ │ │ +001f2890: 6661 696c 6564 0a20 202d 2027 2727 7461  failed.  - '''ta
│ │ │ +001f28a0: 7267 6574 2069 7320 6275 7379 2727 206e  rget is busy'' n
│ │ │ +001f28b0: 6f74 2069 6e20 286d 6f75 6e74 5f72 6573  ot in (mount_res
│ │ │ +001f28c0: 756c 742e 6d73 6720 7c20 6465 6661 756c  ult.msg | defaul
│ │ │ +001f28d0: 7428 2727 2727 2929 270a 2020 2d20 2727  t(''''))'.  - ''
│ │ │ +001f28e0: 2761 6c72 6561 6479 206d 6f75 6e74 6564  'already mounted
│ │ │ +001f28f0: 2727 206e 6f74 2069 6e20 286d 6f75 6e74  '' not in (mount
│ │ │ +001f2900: 5f72 6573 756c 742e 6d73 6720 7c20 6465  _result.msg | de
│ │ │ +001f2910: 6661 756c 7428 2727 2727 2929 270a 2020  fault(''''))'.  
│ │ │ +001f2920: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ +001f2930: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ +001f2940: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001f2950: 6167 6573 2061 6e64 2022 7270 6d2d 6f73  ages and "rpm-os
│ │ │ +001f2960: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001f2970: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001f2980: 2020 2020 616e 6420 2262 6f6f 7463 2220      and "bootc" 
│ │ │ +001f2990: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001f29a0: 2e70 6163 6b61 6765 7320 616e 6420 6e6f  .packages and no
│ │ │ +001f29b0: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ +001f29c0: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ +001f29d0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001f29e0: 2020 2020 616e 6420 226f 7374 7265 6522      and "ostree"
│ │ │ +001f29f0: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ +001f2a00: 5f63 6d64 6c69 6e65 2029 2061 6e64 206e  _cmdline ) and n
│ │ │ +001f2a10: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ +001f2a20: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ +001f2a30: 2069 6e0a 2020 2020 5b22 646f 636b 6572   in.    ["docker
│ │ │ +001f2a40: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ +001f2a50: 7a22 2c20 2270 6f64 6d61 6e22 2c20 2263  z", "podman", "c
│ │ │ +001f2a60: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ +001f2a70: 202d 2027 222f 7661 722f 6c6f 6722 2069   - '"/var/log" i
│ │ │ +001f2a80: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ +001f2a90: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ +001f2aa0: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ +001f2ab0: 270a 2020 2d20 6d6f 756e 745f 696e 666f  '.  - mount_info
│ │ │ +001f2ac0: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ +001f2ad0: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ +001f2ae0: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ +001f2af0: 6e64 2028 6465 7669 6365 5f6e 616d 652e  nd (device_name.
│ │ │ +001f2b00: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ +001f2b10: 2667 743b 2030 2929 206f 7220 2822 2d2d  > 0)) or ("--
│ │ │ +001f2b20: 6673 7461 6222 0a20 2020 207c 206c 656e  fstab".    | len
│ │ │ +001f2b30: 6774 6820 3d3d 2030 290a 2020 7461 6773  gth == 0).  tags
│ │ │ +001f2b40: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +001f2b50: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ +001f2b60: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ +001f2b70: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001f2b80: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ +001f2b90: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ +001f2ba0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001f2bb0: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ +001f2bc0: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ +001f2bd0: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +001f2be0: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +001f2bf0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +001f2c00: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +001f2c10: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001f2c20: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76  - mount_option_v
│ │ │ +001f2c30: 6172 5f6c 6f67 5f6e 6f73 7569 640a 2020  ar_log_nosuid.  
│ │ │ +001f2c40: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001f2c50: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e  ed.
│ │ │ +001f2c60: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation S │ │ │ +001f2d10: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ +001f2d20: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ +001f2dc0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Reboot:false
# Remediation
│ │ │ +001f2de0: 2069 7320 6170 706c 6963 6162 6c65 206f   is applicable o
│ │ │ +001f2df0: 6e6c 7920 696e 2063 6572 7461 696e 2070  nly in certain p
│ │ │ +001f2e00: 6c61 7466 6f72 6d73 0a69 6620 2820 2120  latforms.if ( ! 
│ │ │ +001f2e10: 2820 7b20 7270 6d20 2d2d 7175 6965 7420  ( { rpm --quiet 
│ │ │ +001f2e20: 2d71 206b 6572 6e65 6c20 3b7d 2026 616d  -q kernel ;} &am
│ │ │ +001f2e30: 703b 2661 6d70 3b20 7b20 7270 6d20 2d2d  p;& { rpm --
│ │ │ +001f2e40: 7175 6965 7420 2d71 2072 706d 2d6f 7374  quiet -q rpm-ost
│ │ │ +001f2e50: 7265 6520 3b7d 2026 616d 703b 2661 6d70  ree ;} &&
│ │ │ +001f2e60: 3b20 7b20 7270 6d20 2d2d 7175 6965 7420  ; { rpm --quiet 
│ │ │ +001f2e70: 2d71 2062 6f6f 7463 203b 7d20 2661 6d70  -q bootc ;} &
│ │ │ +001f2e80: 3b26 616d 703b 207b 2021 2072 706d 202d  ;& { ! rpm -
│ │ │ +001f2e90: 2d71 7569 6574 202d 7120 6f70 656e 7368  -quiet -q opensh
│ │ │ +001f2ea0: 6966 742d 6b75 6265 6c65 7420 3b7d 2026  ift-kubelet ;} &
│ │ │ +001f2eb0: 616d 703b 2661 6d70 3b20 285b 202d 6620  amp;& ([ -f 
│ │ │ +001f2ec0: 2f72 756e 2f6f 7374 7265 652d 626f 6f74  /run/ostree-boot
│ │ │ +001f2ed0: 6564 205d 207c 7c20 5b20 2d4c 202f 6f73  ed ] || [ -L /os
│ │ │ +001f2ee0: 7472 6565 205d 2920 2920 2661 6d70 3b26  tree ]) ) &&
│ │ │ +001f2ef0: 616d 703b 2021 2028 205b 202d 6620 2f2e  amp; ! ( [ -f /.
│ │ │ +001f2f00: 646f 636b 6572 656e 7620 5d20 7c7c 205b  dockerenv ] || [
│ │ │ +001f2f10: 202d 6620 2f72 756e 2f2e 636f 6e74 6169   -f /run/.contai
│ │ │ +001f2f20: 6e65 7265 6e76 205d 2029 2029 2026 616d  nerenv ] ) ) &am
│ │ │ +001f2f30: 703b 2661 6d70 3b20 7b20 2820 6669 6e64  p;& { ( find
│ │ │ +001f2f40: 6d6e 7420 2d2d 6b65 726e 656c 2022 2f76  mnt --kernel "/v
│ │ │ +001f2f50: 6172 2f6c 6f67 2220 2667 743b 202f 6465  ar/log" > /de
│ │ │ +001f2f60: 762f 6e75 6c6c 207c 7c20 6669 6e64 6d6e  v/null || findmn
│ │ │ +001f2f70: 7420 2d2d 6673 7461 6220 222f 7661 722f  t --fstab "/var/
│ │ │ +001f2f80: 6c6f 6722 2026 6774 3b20 2f64 6576 2f6e  log" > /dev/n
│ │ │ +001f2f90: 756c 6c20 293b 207d 3b20 7468 656e 0a0a  ull ); }; then..
│ │ │ +001f2fa0: 6675 6e63 7469 6f6e 2070 6572 666f 726d  function perform
│ │ │ +001f2fb0: 5f72 656d 6564 6961 7469 6f6e 207b 0a0a  _remediation {..
│ │ │ +001f2fc0: 2020 2020 0a20 2020 2020 2020 2023 2074      .        # t
│ │ │ +001f2fd0: 6865 206d 6f75 6e74 2070 6f69 6e74 202f  he mount point /
│ │ │ +001f2fe0: 7661 722f 6c6f 6720 6861 7320 746f 2062  var/log has to b
│ │ │ +001f2ff0: 6520 6465 6669 6e65 6420 696e 202f 6574  e defined in /et
│ │ │ +001f3000: 632f 6673 7461 620a 2020 2020 2020 2020  c/fstab.        
│ │ │ +001f3010: 2320 6265 666f 7265 2074 6869 7320 7265  # before this re
│ │ │ +001f3020: 6d65 6469 6174 696f 6e20 6361 6e20 6265  mediation can be
│ │ │ +001f3030: 2065 7865 6375 7465 642e 2049 6e20 6361   executed. In ca
│ │ │ +001f3040: 7365 2069 7420 6973 206e 6f74 2064 6566  se it is not def
│ │ │ +001f3050: 696e 6564 2c20 7468 650a 2020 2020 2020  ined, the.      
│ │ │ +001f3060: 2020 2320 7265 6d65 6469 6174 696f 6e20    # remediation 
│ │ │ +001f3070: 6162 6f72 7473 2061 6e64 206e 6f20 6368  aborts and no ch
│ │ │ +001f3080: 616e 6765 7320 7265 6761 7264 696e 6720  anges regarding 
│ │ │ +001f3090: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ +001f30a0: 6172 6520 646f 6e65 2e0a 2020 2020 2020  are done..      
│ │ │ +001f30b0: 2020 6d6f 756e 745f 706f 696e 745f 6d61    mount_point_ma
│ │ │ +001f30c0: 7463 685f 7265 6765 7870 3d22 2428 7072  tch_regexp="$(pr
│ │ │ +001f30d0: 696e 7466 2022 5e5b 5b3a 7370 6163 653a  intf "^[[:space:
│ │ │ +001f30e0: 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163  ]]*[^#].*[[:spac
│ │ │ +001f30f0: 653a 5d5d 2573 5b5b 3a73 7061 6365 3a5d  e:]]%s[[:space:]
│ │ │ +001f3100: 5d22 2022 2f76 6172 2f6c 6f67 2229 220a  ]" "/var/log")".
│ │ │ +001f3110: 0a20 2020 2067 7265 7020 2224 6d6f 756e  .    grep "$moun
│ │ │ +001f3120: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001f3130: 6765 7870 2220 2d71 202f 6574 632f 6673  gexp" -q /etc/fs
│ │ │ +001f3140: 7461 6220 5c0a 2020 2020 2020 2020 7c7c  tab \.        ||
│ │ │ +001f3150: 207b 2065 6368 6f20 2254 6865 206d 6f75   { echo "The mou
│ │ │ +001f3160: 6e74 2070 6f69 6e74 2027 2f76 6172 2f6c  nt point '/var/l
│ │ │ +001f3170: 6f67 2720 6973 206e 6f74 2065 7665 6e20  og' is not even 
│ │ │ +001f3180: 696e 202f 6574 632f 6673 7461 622c 2073  in /etc/fstab, s
│ │ │ +001f3190: 6f20 7765 2063 616e 2774 2073 6574 2075  o we can't set u
│ │ │ +001f31a0: 7020 6d6f 756e 7420 6f70 7469 6f6e 7322  p mount options"
│ │ │ +001f31b0: 2026 6774 3b26 616d 703b 323b 0a20 2020   >&2;.   
│ │ │ +001f31c0: 2020 2020 2020 2020 2020 2020 2065 6368               ech
│ │ │ +001f31d0: 6f20 224e 6f74 2072 656d 6564 6961 7469  o "Not remediati
│ │ │ +001f31e0: 6e67 2c20 6265 6361 7573 6520 7468 6572  ng, because ther
│ │ │ +001f31f0: 6520 6973 206e 6f20 7265 636f 7264 206f  e is no record o
│ │ │ +001f3200: 6620 2f76 6172 2f6c 6f67 2069 6e20 2f65  f /var/log in /e
│ │ │ +001f3210: 7463 2f66 7374 6162 2220 2667 743b 2661  tc/fstab" >&a
│ │ │ +001f3220: 6d70 3b32 3b20 7265 7475 726e 2031 3b20  mp;2; return 1; 
│ │ │ +001f3230: 7d0a 2020 2020 0a0a 0a20 2020 206d 6f75  }.    ...    mou
│ │ │ +001f3240: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +001f3250: 6567 6578 703d 2224 2870 7269 6e74 6620  egexp="$(printf 
│ │ │ +001f3260: 225e 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e  "^[[:space:]]*[^
│ │ │ +001f3270: 235d 2e2a 5b5b 3a73 7061 6365 3a5d 5d25  #].*[[:space:]]%
│ │ │ +001f3280: 735b 5b3a 7370 6163 653a 5d5d 2220 2f76  s[[:space:]]" /v
│ │ │ +001f3290: 6172 2f6c 6f67 2922 0a0a 2020 2020 2320  ar/log)"..    # 
│ │ │ +001f32a0: 4966 2074 6865 206d 6f75 6e74 2070 6f69  If the mount poi
│ │ │ +001f32b0: 6e74 2069 7320 6e6f 7420 696e 202f 6574  nt is not in /et
│ │ │ +001f32c0: 632f 6673 7461 622c 2067 6574 2070 7265  c/fstab, get pre
│ │ │ +001f32d0: 7669 6f75 7320 6d6f 756e 7420 6f70 7469  vious mount opti
│ │ │ +001f32e0: 6f6e 7320 6672 6f6d 202f 6574 632f 6d74  ons from /etc/mt
│ │ │ +001f32f0: 6162 0a20 2020 2069 6620 2120 6772 6570  ab.    if ! grep
│ │ │ +001f3300: 202d 7120 2224 6d6f 756e 745f 706f 696e   -q "$mount_poin
│ │ │ +001f3310: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ +001f3320: 2f65 7463 2f66 7374 6162 3b20 7468 656e  /etc/fstab; then
│ │ │ +001f3330: 0a20 2020 2020 2020 2023 2072 756e 7469  .        # runti
│ │ │ +001f3340: 6d65 206f 7074 7320 7769 7468 6f75 7420  me opts without 
│ │ │ +001f3350: 736f 6d65 2061 7574 6f6d 6174 6963 206b  some automatic k
│ │ │ +001f3360: 6572 6e65 6c2f 7573 6572 7370 6163 652d  ernel/userspace-
│ │ │ +001f3370: 6164 6465 6420 6465 6661 756c 7473 0a20  added defaults. 
│ │ │ +001f3380: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ +001f3390: 6d6f 756e 745f 6f70 7473 3d24 2867 7265  mount_opts=$(gre
│ │ │ +001f33a0: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ +001f33b0: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ +001f33c0: 7463 2f6d 7461 6220 7c20 6865 6164 202d  tc/mtab | head -
│ │ │ +001f33d0: 3120 7c20 2061 776b 2027 7b70 7269 6e74  1 |  awk '{print
│ │ │ +001f33e0: 2024 347d 2720 5c0a 2020 2020 2020 2020   $4}' \.        
│ │ │ +001f33f0: 2020 2020 2020 2020 2020 2020 7c20 7365              | se
│ │ │ +001f3400: 6420 2d45 2022 732f 2872 777c 6465 6661  d -E "s/(rw|defa
│ │ │ +001f3410: 756c 7473 7c73 6563 6c61 6265 6c7c 6e6f  ults|seclabel|no
│ │ │ +001f3420: 7375 6964 2928 2c7c 2429 2f2f 673b 732f  suid)(,|$)//g;s/
│ │ │ +001f3430: 2c24 2f2f 2229 0a20 2020 2020 2020 205b  ,$//").        [
│ │ │ +001f3440: 2022 2470 7265 7669 6f75 735f 6d6f 756e   "$previous_moun
│ │ │ +001f3450: 745f 6f70 7473 2220 5d20 2661 6d70 3b26  t_opts" ] &&
│ │ │ +001f3460: 616d 703b 2070 7265 7669 6f75 735f 6d6f  amp; previous_mo
│ │ │ +001f3470: 756e 745f 6f70 7473 2b3d 222c 220a 2020  unt_opts+=",".  
│ │ │ +001f3480: 2020 2020 2020 2320 496e 2069 736f 3936        # In iso96
│ │ │ +001f3490: 3630 2066 696c 6573 7973 7465 6d73 206d  60 filesystems m
│ │ │ +001f34a0: 7461 6220 636f 756c 6420 6465 7363 7269  tab could descri
│ │ │ +001f34b0: 6265 2061 2022 626c 6f63 6b73 697a 6522  be a "blocksize"
│ │ │ +001f34c0: 2076 616c 7565 2c20 7468 6973 2073 686f   value, this sho
│ │ │ +001f34d0: 756c 6420 6265 2072 6566 6c65 6374 6564  uld be reflected
│ │ │ +001f34e0: 2069 6e0a 2020 2020 2020 2020 2320 6673   in.        # fs
│ │ │ +001f34f0: 7461 6220 6173 2022 626c 6f63 6b22 2e20  tab as "block". 
│ │ │ +001f3500: 2054 6865 206e 6578 7420 7661 7269 6162   The next variab
│ │ │ +001f3510: 6c65 2069 7320 746f 2073 6174 6973 6679  le is to satisfy
│ │ │ +001f3520: 2073 6865 6c6c 6368 6563 6b20 5343 3230   shellcheck SC20
│ │ │ +001f3530: 3530 2e0a 2020 2020 2020 2020 6673 5f74  50..        fs_t
│ │ │ +001f3540: 7970 653d 2222 0a20 2020 2020 2020 2069  ype="".        i
│ │ │ +001f3550: 6620 5b20 2022 2466 735f 7479 7065 2220  f [  "$fs_type" 
│ │ │ +001f3560: 3d3d 2022 6973 6f39 3636 3022 205d 203b  == "iso9660" ] ;
│ │ │ +001f3570: 2074 6865 6e0a 2020 2020 2020 2020 2020   then.          
│ │ │ +001f3580: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ +001f3590: 5f6f 7074 733d 2428 7365 6420 2773 2f62  _opts=$(sed 's/b
│ │ │ +001f35a0: 6c6f 636b 7369 7a65 3d2f 626c 6f63 6b3d  locksize=/block=
│ │ │ +001f35b0: 2f27 2026 6c74 3b26 6c74 3b26 6c74 3b20  /' <<< 
│ │ │ +001f35c0: 2224 7072 6576 696f 7573 5f6d 6f75 6e74  "$previous_mount
│ │ │ +001f35d0: 5f6f 7074 7322 290a 2020 2020 2020 2020  _opts").        
│ │ │ +001f35e0: 6669 0a20 2020 2020 2020 2065 6368 6f20  fi.        echo 
│ │ │ +001f35f0: 2220 2f76 6172 2f6c 6f67 2020 6465 6661  " /var/log  defa
│ │ │ +001f3600: 756c 7473 2c24 7b70 7265 7669 6f75 735f  ults,${previous_
│ │ │ +001f3610: 6d6f 756e 745f 6f70 7473 7d6e 6f73 7569  mount_opts}nosui
│ │ │ +001f3620: 6420 3020 3022 2026 6774 3b26 6774 3b20  d 0 0" >> 
│ │ │ +001f3630: 2f65 7463 2f66 7374 6162 0a20 2020 2023  /etc/fstab.    #
│ │ │ +001f3640: 2049 6620 7468 6520 6d6f 756e 745f 6f70   If the mount_op
│ │ │ +001f3650: 7420 6f70 7469 6f6e 2069 7320 6e6f 7420  t option is not 
│ │ │ +001f3660: 616c 7265 6164 7920 696e 2074 6865 206d  already in the m
│ │ │ +001f3670: 6f75 6e74 2070 6f69 6e74 2773 202f 6574  ount point's /et
│ │ │ +001f3680: 632f 6673 7461 6220 656e 7472 792c 2061  c/fstab entry, a
│ │ │ +001f3690: 6464 2069 740a 2020 2020 656c 6966 2021  dd it.    elif !
│ │ │ +001f36a0: 2067 7265 7020 2224 6d6f 756e 745f 706f   grep "$mount_po
│ │ │ +001f36b0: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001f36c0: 2220 2f65 7463 2f66 7374 6162 207c 2067  " /etc/fstab | g
│ │ │ +001f36d0: 7265 7020 2d71 2022 6e6f 7375 6964 223b  rep -q "nosuid";
│ │ │ +001f36e0: 2074 6865 6e0a 2020 2020 2020 2020 7072   then.        pr
│ │ │ +001f36f0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001f3700: 733d 2428 6772 6570 2022 246d 6f75 6e74  s=$(grep "$mount
│ │ │ +001f3710: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001f3720: 6578 7022 202f 6574 632f 6673 7461 6220  exp" /etc/fstab 
│ │ │ +001f3730: 7c20 6177 6b20 277b 7072 696e 7420 2434  | awk '{print $4
│ │ │ +001f3740: 7d27 290a 2020 2020 2020 2020 7365 6420  }').        sed 
│ │ │ +001f3750: 2d69 2022 737c 5c28 247b 6d6f 756e 745f  -i "s|\(${mount_
│ │ │ +001f3760: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001f3770: 7870 7d2e 2a24 7b70 7265 7669 6f75 735f  xp}.*${previous_
│ │ │ +001f3780: 6d6f 756e 745f 6f70 7473 7d5c 297c 5c31  mount_opts}\)|\1
│ │ │ +001f3790: 2c6e 6f73 7569 647c 2220 2f65 7463 2f66  ,nosuid|" /etc/f
│ │ │ +001f37a0: 7374 6162 0a20 2020 2066 690a 0a0a 2020  stab.    fi...  
│ │ │ +001f37b0: 2020 6966 206d 6b64 6972 202d 7020 222f    if mkdir -p "/
│ │ │ +001f37c0: 7661 722f 6c6f 6722 3b20 7468 656e 0a20  var/log"; then. 
│ │ │ +001f37d0: 2020 2020 2020 2069 6620 6d6f 756e 7470         if mountp
│ │ │ +001f37e0: 6f69 6e74 202d 7120 222f 7661 722f 6c6f  oint -q "/var/lo
│ │ │ +001f37f0: 6722 3b20 7468 656e 0a20 2020 2020 2020  g"; then.       
│ │ │ +001f3800: 2020 2020 206d 6f75 6e74 202d 6f20 7265       mount -o re
│ │ │ +001f3810: 6d6f 756e 7420 2d2d 7461 7267 6574 2022  mount --target "
│ │ │ +001f3820: 2f76 6172 2f6c 6f67 220a 2020 2020 2020  /var/log".      
│ │ │ +001f3830: 2020 6669 0a20 2020 2066 690a 7d0a 0a70    fi.    fi.}..p
│ │ │ +001f3840: 6572 666f 726d 5f72 656d 6564 6961 7469  erform_remediati
│ │ │ +001f3850: 6f6e 0a0a 656c 7365 0a20 2020 2026 6774  on..else.    >
│ │ │ +001f3860: 3b26 616d 703b 3220 6563 686f 2027 5265  ;&2 echo 'Re
│ │ │ +001f3870: 6d65 6469 6174 696f 6e20 6973 206e 6f74  mediation is not
│ │ │ +001f3880: 2061 7070 6c69 6361 626c 652c 206e 6f74   applicable, not
│ │ │ +001f3890: 6869 6e67 2077 6173 2064 6f6e 6527 0a66  hing was done'.f
│ │ │ +001f38a0: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +001f38b0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>
Remediation An │ │ │ +001f3960: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ +001f3970: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +001f39f0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +001f3a10: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ +001f3a40: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ +001f3a90: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +001f3a00: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +001f3a20: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ +001f3a70: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +001f3a80: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable
.part /var/lo
│ │ │ +001f3ab0: 6720 2d2d 6d6f 756e 746f 7074 696f 6e73  g --mountoptions
│ │ │ +001f3ac0: 3d22 6e6f 7375 6964 220a 3c2f 636f 6465  ="nosuid".
Remediati │ │ │ -001f4370: 6f6e 2041 6e61 636f 6e64 6120 736e 6970 on Anaconda snip │ │ │ -001f4380: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -001f4390: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -001f43a0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -001f43b0: 7365 2220 6964 3d22 6964 3630 3922 3e3c se" id="id609">< │ │ │ -001f43c0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -001f43d0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -001f43e0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -001f43f0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -001f4400: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -001f4410: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -001f4420: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:high< │ │ │ -001f4450: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>Rebo │ │ │ -001f4460: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -001f4470: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e< │ │ │ -001f4480: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:enable │ │ │ -001f44a0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 .part /v │ │ │ -001f44c0: 6172 202d 2d6d 6f75 6e74 6f70 7469 6f6e ar --mountoption │ │ │ -001f44d0: 733d 226e 6f65 7865 6322 0a3c 2f63 6f64 s="noexec".
Remed │ │ │ -001f4590: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ -001f45a0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
- 
│ │ │ -001f46e0: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ -001f46f0: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ -001f4700: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ -001f4710: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ -001f4720: 6f0a 2020 7461 6773 3a0a 2020 2d20 636f  o.  tags:.  - co
│ │ │ -001f4730: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -001f4740: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -001f4750: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -001f4760: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -001f4770: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001f4780: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ -001f4790: 5f6e 6f65 7865 630a 2020 2d20 6e6f 5f72  _noexec.  - no_r
│ │ │ -001f47a0: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ -001f47b0: 6e61 6d65 3a20 2741 6464 206e 6f65 7865  name: 'Add noexe
│ │ │ -001f47c0: 6320 4f70 7469 6f6e 2074 6f20 2f76 6172  c Option to /var
│ │ │ -001f47d0: 3a20 4368 6563 6b20 696e 666f 726d 6174  : Check informat
│ │ │ -001f47e0: 696f 6e20 6173 736f 6369 6174 6564 2074  ion associated t
│ │ │ -001f47f0: 6f20 6d6f 756e 7470 6f69 6e74 270a 2020  o mountpoint'.  
│ │ │ -001f4800: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -001f4810: 636f 6d6d 616e 643a 2066 696e 646d 6e74  command: findmnt
│ │ │ -001f4820: 202d 2d66 7374 6162 2027 2f76 6172 270a   --fstab '/var'.
│ │ │ -001f4830: 2020 7265 6769 7374 6572 3a20 6465 7669    register: devi
│ │ │ -001f4840: 6365 5f6e 616d 650a 2020 6661 696c 6564  ce_name.  failed
│ │ │ -001f4850: 5f77 6865 6e3a 2064 6576 6963 655f 6e61  _when: device_na
│ │ │ -001f4860: 6d65 2e72 6320 2667 743b 2031 0a20 2063  me.rc > 1.  c
│ │ │ -001f4870: 6861 6e67 6564 5f77 6865 6e3a 2066 616c  hanged_when: fal
│ │ │ -001f4880: 7365 0a20 2063 6865 636b 5f6d 6f64 653a  se.  check_mode:
│ │ │ -001f4890: 2066 616c 7365 0a20 2077 6865 6e3a 0a20   false.  when:. 
│ │ │ -001f48a0: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ -001f48b0: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -001f48c0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001f48d0: 6420 2272 706d 2d6f 7374 7265 6522 2069  d "rpm-ostree" i
│ │ │ -001f48e0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001f48f0: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001f4900: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ -001f4910: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001f4920: 6573 2061 6e64 206e 6f74 2022 6f70 656e  es and not "open
│ │ │ -001f4930: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ -001f4940: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001f4950: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001f4960: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ -001f4970: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ -001f4980: 6520 2920 616e 6420 6e6f 7420 2820 616e  e ) and not ( an
│ │ │ -001f4990: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ -001f49a0: 7469 6f6e 5f74 7970 6520 696e 0a20 2020  tion_type in.   
│ │ │ -001f49b0: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ -001f49c0: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ -001f49d0: 646d 616e 222c 2022 636f 6e74 6169 6e65  dman", "containe
│ │ │ -001f49e0: 7222 5d20 2920 290a 2020 2d20 2722 2f76  r"] ) ).  - '"/v
│ │ │ -001f49f0: 6172 2220 696e 2061 6e73 6962 6c65 5f6d  ar" in ansible_m
│ │ │ -001f4a00: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ -001f4a10: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ -001f4a20: 206c 6973 7427 0a20 2074 6167 733a 0a20   list'.  tags:. 
│ │ │ -001f4a30: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -001f4a40: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -001f4a50: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -001f4a60: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -001f4a70: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -001f4a80: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ -001f4a90: 6e5f 7661 725f 6e6f 6578 6563 0a20 202d  n_var_noexec.  -
│ │ │ -001f4aa0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -001f4ab0: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ -001f4ac0: 6e6f 6578 6563 204f 7074 696f 6e20 746f  noexec Option to
│ │ │ -001f4ad0: 202f 7661 723a 2043 7265 6174 6520 6d6f   /var: Create mo
│ │ │ -001f4ae0: 756e 745f 696e 666f 2064 6963 7469 6f6e  unt_info diction
│ │ │ -001f4af0: 6172 7920 7661 7269 6162 6c65 270a 2020  ary variable'.  
│ │ │ -001f4b00: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ -001f4b10: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ -001f4b20: 756e 745f 696e 666f 7c64 6566 6175 6c74  unt_info|default
│ │ │ -001f4b30: 287b 7d29 7c63 6f6d 6269 6e65 287b 6974  ({})|combine({it
│ │ │ -001f4b40: 656d 2e30 3a20 6974 656d 2e31 7d29 207d  em.0: item.1}) }
│ │ │ -001f4b50: 7d27 0a20 2077 6974 685f 746f 6765 7468  }'.  with_togeth
│ │ │ -001f4b60: 6572 3a0a 2020 2d20 277b 7b20 6465 7669  er:.  - '{{ devi
│ │ │ -001f4b70: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ -001f4b80: 696e 6573 5b30 5d2e 7370 6c69 7428 2920  ines[0].split() 
│ │ │ -001f4b90: 7c20 6d61 7028 2727 6c6f 7765 7227 2729  | map(''lower'')
│ │ │ -001f4ba0: 207c 206c 6973 7420 7d7d 270a 2020 2d20   | list }}'.  - 
│ │ │ -001f4bb0: 277b 7b20 6465 7669 6365 5f6e 616d 652e  '{{ device_name.
│ │ │ -001f4bc0: 7374 646f 7574 5f6c 696e 6573 5b31 5d2e  stdout_lines[1].
│ │ │ -001f4bd0: 7370 6c69 7428 2920 7c20 6c69 7374 207d  split() | list }
│ │ │ -001f4be0: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028  }'.  when:.  - (
│ │ │ -001f4bf0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -001f4c00: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001f4c10: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ -001f4c20: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ -001f4c30: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001f4c40: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ -001f4c50: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ -001f4c60: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001f4c70: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -001f4c80: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -001f4c90: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001f4ca0: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ -001f4cb0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001f4cc0: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ -001f4cd0: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -001f4ce0: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -001f4cf0: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ -001f4d00: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ -001f4d10: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ -001f4d20: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ -001f4d30: 2920 290a 2020 2d20 2722 2f76 6172 2220  ) ).  - '"/var" 
│ │ │ -001f4d40: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ -001f4d50: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ -001f4d60: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ -001f4d70: 7427 0a20 202d 2064 6576 6963 655f 6e61  t'.  - device_na
│ │ │ -001f4d80: 6d65 2e73 7464 6f75 7420 6973 2064 6566  me.stdout is def
│ │ │ -001f4d90: 696e 6564 2061 6e64 2064 6576 6963 655f  ined and device_
│ │ │ -001f4da0: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ -001f4db0: 7320 6973 2064 6566 696e 6564 0a20 202d  s is defined.  -
│ │ │ -001f4dc0: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ -001f4dd0: 646f 7574 207c 206c 656e 6774 6820 2667  dout | length &g
│ │ │ -001f4de0: 743b 2030 290a 2020 7461 6773 3a0a 2020  t; 0).  tags:.  
│ │ │ -001f4df0: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -001f4e00: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ -001f4e10: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -001f4e20: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001f4e30: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -001f4e40: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ -001f4e50: 5f76 6172 5f6e 6f65 7865 630a 2020 2d20  _var_noexec.  - 
│ │ │ -001f4e60: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001f4e70: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ -001f4e80: 6f65 7865 6320 4f70 7469 6f6e 2074 6f20  oexec Option to 
│ │ │ -001f4e90: 2f76 6172 3a20 4966 202f 7661 7220 6e6f  /var: If /var no
│ │ │ -001f4ea0: 7420 6d6f 756e 7465 642c 2063 7261 6674  t mounted, craft
│ │ │ -001f4eb0: 206d 6f75 6e74 5f69 6e66 6f20 6d61 6e75   mount_info manu
│ │ │ -001f4ec0: 616c 6c79 270a 2020 7365 745f 6661 6374  ally'.  set_fact
│ │ │ -001f4ed0: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ -001f4ee0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001f4ef0: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d  |default({})|com
│ │ │ -001f4f00: 6269 6e65 287b 6974 656d 2e30 3a20 6974  bine({item.0: it
│ │ │ -001f4f10: 656d 2e31 7d29 207d 7d27 0a20 2077 6974  em.1}) }}'.  wit
│ │ │ -001f4f20: 685f 746f 6765 7468 6572 3a0a 2020 2d20  h_together:.  - 
│ │ │ -001f4f30: 2d20 7461 7267 6574 0a20 2020 202d 2073  - target.    - s
│ │ │ -001f4f40: 6f75 7263 650a 2020 2020 2d20 6673 7479  ource.    - fsty
│ │ │ -001f4f50: 7065 0a20 2020 202d 206f 7074 696f 6e73  pe.    - options
│ │ │ -001f4f60: 0a20 202d 202d 202f 7661 720a 2020 2020  .  - - /var.    
│ │ │ -001f4f70: 2d20 2727 0a20 2020 202d 2027 270a 2020  - ''.    - ''.  
│ │ │ -001f4f80: 2020 2d20 6465 6661 756c 7473 0a20 2077    - defaults.  w
│ │ │ -001f4f90: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ -001f4fa0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -001f4fb0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001f4fc0: 6765 7320 616e 6420 2272 706d 2d6f 7374  ges and "rpm-ost
│ │ │ -001f4fd0: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -001f4fe0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -001f4ff0: 2020 2061 6e64 2022 626f 6f74 6322 2069     and "bootc" i
│ │ │ -001f5000: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001f5010: 7061 636b 6167 6573 2061 6e64 206e 6f74  packages and not
│ │ │ -001f5020: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ -001f5030: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ -001f5040: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -001f5050: 2020 2061 6e64 2022 6f73 7472 6565 2220     and "ostree" 
│ │ │ -001f5060: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ -001f5070: 636d 646c 696e 6520 2920 616e 6420 6e6f  cmdline ) and no
│ │ │ -001f5080: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ -001f5090: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ -001f50a0: 696e 0a20 2020 205b 2264 6f63 6b65 7222  in.    ["docker"
│ │ │ -001f50b0: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ -001f50c0: 222c 2022 706f 646d 616e 222c 2022 636f  ", "podman", "co
│ │ │ -001f50d0: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ -001f50e0: 2d20 2722 2f76 6172 2220 696e 2061 6e73  - '"/var" in ans
│ │ │ -001f50f0: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ -001f5100: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ -001f5110: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ -001f5120: 2028 222d 2d66 7374 6162 2220 7c20 6c65   ("--fstab" | le
│ │ │ -001f5130: 6e67 7468 203d 3d20 3029 0a20 202d 2064  ngth == 0).  - d
│ │ │ -001f5140: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001f5150: 7420 6973 2064 6566 696e 6564 2061 6e64  t is defined and
│ │ │ -001f5160: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ -001f5170: 6f75 745f 6c69 6e65 7320 6973 2064 6566  out_lines is def
│ │ │ -001f5180: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ -001f5190: 5f6e 616d 652e 7374 646f 7574 207c 206c  _name.stdout | l
│ │ │ -001f51a0: 656e 6774 6820 3d3d 2030 290a 2020 7461  ength == 0).  ta
│ │ │ -001f51b0: 6773 3a0a 2020 2d20 636f 6e66 6967 7572  gs:.  - configur
│ │ │ -001f51c0: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -001f51d0: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -001f51e0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001f51f0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -001f5200: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ -001f5210: 6f70 7469 6f6e 5f76 6172 5f6e 6f65 7865  option_var_noexe
│ │ │ -001f5220: 630a 2020 2d20 6e6f 5f72 6562 6f6f 745f  c.  - no_reboot_
│ │ │ -001f5230: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ -001f5240: 2741 6464 206e 6f65 7865 6320 4f70 7469  'Add noexec Opti
│ │ │ -001f5250: 6f6e 2074 6f20 2f76 6172 3a20 4d61 6b65  on to /var: Make
│ │ │ -001f5260: 2073 7572 6520 6e6f 6578 6563 206f 7074   sure noexec opt
│ │ │ -001f5270: 696f 6e20 6973 2070 6172 7420 6f66 2074  ion is part of t
│ │ │ -001f5280: 6865 2074 6f20 2f76 6172 0a20 2020 206f  he to /var.    o
│ │ │ -001f5290: 7074 696f 6e73 270a 2020 7365 745f 6661  ptions'.  set_fa
│ │ │ -001f52a0: 6374 3a0a 2020 2020 6d6f 756e 745f 696e  ct:.    mount_in
│ │ │ -001f52b0: 666f 3a20 277b 7b20 6d6f 756e 745f 696e  fo: '{{ mount_in
│ │ │ -001f52c0: 666f 207c 2063 6f6d 6269 6e65 2820 7b27  fo | combine( {'
│ │ │ -001f52d0: 276f 7074 696f 6e73 2727 3a27 2727 277e  'options'':''''~
│ │ │ -001f52e0: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469  (mount_info.opti
│ │ │ -001f52f0: 6f6e 7320 7c0a 2020 2020 2020 6465 6661  ons |.      defa
│ │ │ -001f5300: 756c 7428 2727 2727 2929 7e28 2727 2c27  ult(''''))~('','
│ │ │ -001f5310: 2720 6966 2028 6d6f 756e 745f 696e 666f  ' if (mount_info
│ │ │ -001f5320: 2e6f 7074 696f 6e73 207c 2064 6566 6175  .options | defau
│ │ │ -001f5330: 6c74 2827 2727 2729 2920 656c 7365 2027  lt('''')) else '
│ │ │ -001f5340: 2727 2729 7e27 276e 6f65 7865 6327 270a  ''')~''noexec''.
│ │ │ -001f5350: 2020 2020 2020 7d29 207d 7d27 0a20 2077        }) }}'.  w
│ │ │ -001f5360: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ -001f5370: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -001f5380: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001f5390: 6765 7320 616e 6420 2272 706d 2d6f 7374  ges and "rpm-ost
│ │ │ -001f53a0: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -001f53b0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -001f53c0: 2020 2061 6e64 2022 626f 6f74 6322 2069     and "bootc" i
│ │ │ -001f53d0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001f53e0: 7061 636b 6167 6573 2061 6e64 206e 6f74  packages and not
│ │ │ -001f53f0: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ -001f5400: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ -001f5410: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -001f5420: 2020 2061 6e64 2022 6f73 7472 6565 2220     and "ostree" 
│ │ │ -001f5430: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ -001f5440: 636d 646c 696e 6520 2920 616e 6420 6e6f  cmdline ) and no
│ │ │ -001f5450: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ -001f5460: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ -001f5470: 696e 0a20 2020 205b 2264 6f63 6b65 7222  in.    ["docker"
│ │ │ -001f5480: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ -001f5490: 222c 2022 706f 646d 616e 222c 2022 636f  ", "podman", "co
│ │ │ -001f54a0: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ -001f54b0: 2d20 2722 2f76 6172 2220 696e 2061 6e73  - '"/var" in ans
│ │ │ -001f54c0: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ -001f54d0: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ -001f54e0: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ -001f54f0: 206d 6f75 6e74 5f69 6e66 6f20 6973 2064   mount_info is d
│ │ │ -001f5500: 6566 696e 6564 2061 6e64 2022 6e6f 6578  efined and "noex
│ │ │ -001f5510: 6563 2220 6e6f 7420 696e 2028 6d6f 756e  ec" not in (moun
│ │ │ -001f5520: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ -001f5530: 2064 6566 6175 6c74 2827 2729 290a 2020   default('')).  
│ │ │ -001f5540: 7461 6773 3a0a 2020 2d20 636f 6e66 6967  tags:.  - config
│ │ │ -001f5550: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001f5560: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001f5570: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001f5580: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001f5590: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001f55a0: 745f 6f70 7469 6f6e 5f76 6172 5f6e 6f65  t_option_var_noe
│ │ │ -001f55b0: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f  xec.  - no_reboo
│ │ │ -001f55c0: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ -001f55d0: 3a20 2741 6464 206e 6f65 7865 6320 4f70  : 'Add noexec Op
│ │ │ -001f55e0: 7469 6f6e 2074 6f20 2f76 6172 3a20 456e  tion to /var: En
│ │ │ -001f55f0: 7375 7265 202f 7661 7220 6973 206d 6f75  sure /var is mou
│ │ │ -001f5600: 6e74 6564 2077 6974 6820 6e6f 6578 6563  nted with noexec
│ │ │ -001f5610: 206f 7074 696f 6e27 0a20 2061 6e73 6962   option'.  ansib
│ │ │ -001f5620: 6c65 2e70 6f73 6978 2e6d 6f75 6e74 3a0a  le.posix.mount:.
│ │ │ -001f5630: 2020 2020 7061 7468 3a20 2f76 6172 0a20      path: /var. 
│ │ │ -001f5640: 2020 2073 7263 3a20 277b 7b20 6d6f 756e     src: '{{ moun
│ │ │ -001f5650: 745f 696e 666f 2e73 6f75 7263 6520 7c20  t_info.source | 
│ │ │ -001f5660: 6465 6661 756c 7428 2727 2727 2920 7d7d  default('''') }}
│ │ │ -001f5670: 270a 2020 2020 6f70 7473 3a20 277b 7b20  '.    opts: '{{ 
│ │ │ -001f5680: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ -001f5690: 6e73 207c 2064 6566 6175 6c74 2827 2727  ns | default('''
│ │ │ -001f56a0: 2729 207d 7d27 0a20 2020 2073 7461 7465  ') }}'.    state
│ │ │ -001f56b0: 3a20 6d6f 756e 7465 640a 2020 2020 6673  : mounted.    fs
│ │ │ -001f56c0: 7479 7065 3a20 277b 7b20 6d6f 756e 745f  type: '{{ mount_
│ │ │ -001f56d0: 696e 666f 2e66 7374 7970 6520 7c20 6465  info.fstype | de
│ │ │ -001f56e0: 6661 756c 7428 2727 2727 2920 7d7d 270a  fault('''') }}'.
│ │ │ -001f56f0: 2020 7265 6769 7374 6572 3a20 6d6f 756e    register: moun
│ │ │ -001f5700: 745f 7265 7375 6c74 0a20 2066 6169 6c65  t_result.  faile
│ │ │ -001f5710: 645f 7768 656e 3a0a 2020 2d20 6d6f 756e  d_when:.  - moun
│ │ │ -001f5720: 745f 7265 7375 6c74 2069 7320 6661 696c  t_result is fail
│ │ │ -001f5730: 6564 0a20 202d 2027 2727 7461 7267 6574  ed.  - '''target
│ │ │ -001f5740: 2069 7320 6275 7379 2727 206e 6f74 2069   is busy'' not i
│ │ │ -001f5750: 6e20 286d 6f75 6e74 5f72 6573 756c 742e  n (mount_result.
│ │ │ -001f5760: 6d73 6720 7c20 6465 6661 756c 7428 2727  msg | default(''
│ │ │ -001f5770: 2727 2929 270a 2020 2d20 2727 2761 6c72  ''))'.  - '''alr
│ │ │ -001f5780: 6561 6479 206d 6f75 6e74 6564 2727 206e  eady mounted'' n
│ │ │ -001f5790: 6f74 2069 6e20 286d 6f75 6e74 5f72 6573  ot in (mount_res
│ │ │ -001f57a0: 756c 742e 6d73 6720 7c20 6465 6661 756c  ult.msg | defaul
│ │ │ -001f57b0: 7428 2727 2727 2929 270a 2020 7768 656e  t(''''))'.  when
│ │ │ -001f57c0: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ -001f57d0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -001f57e0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001f57f0: 2061 6e64 2022 7270 6d2d 6f73 7472 6565   and "rpm-ostree
│ │ │ -001f5800: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001f5810: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001f5820: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ -001f5830: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001f5840: 6b61 6765 7320 616e 6420 6e6f 7420 226f  kages and not "o
│ │ │ -001f5850: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ -001f5860: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001f5870: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001f5880: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ -001f5890: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ -001f58a0: 6c69 6e65 2029 2061 6e64 206e 6f74 2028  line ) and not (
│ │ │ -001f58b0: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ -001f58c0: 697a 6174 696f 6e5f 7479 7065 2069 6e0a  ization_type in.
│ │ │ -001f58d0: 2020 2020 5b22 646f 636b 6572 222c 2022      ["docker", "
│ │ │ -001f58e0: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ -001f58f0: 2270 6f64 6d61 6e22 2c20 2263 6f6e 7461  "podman", "conta
│ │ │ -001f5900: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ -001f5910: 222f 7661 7222 2069 6e20 616e 7369 626c  "/var" in ansibl
│ │ │ -001f5920: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ -001f5930: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ -001f5940: 2920 7c20 6c69 7374 270a 2020 2d20 6d6f  ) | list'.  - mo
│ │ │ -001f5950: 756e 745f 696e 666f 2069 7320 6465 6669  unt_info is defi
│ │ │ -001f5960: 6e65 640a 2020 2d20 2864 6576 6963 655f  ned.  - (device_
│ │ │ -001f5970: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ -001f5980: 6566 696e 6564 2061 6e64 2028 6465 7669  efined and (devi
│ │ │ -001f5990: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ -001f59a0: 206c 656e 6774 6820 2667 743b 2030 2929   length > 0))
│ │ │ -001f59b0: 206f 7220 2822 2d2d 6673 7461 6222 0a20   or ("--fstab". 
│ │ │ -001f59c0: 2020 207c 206c 656e 6774 6820 3d3d 2030     | length == 0
│ │ │ -001f59d0: 290a 2020 7461 6773 3a0a 2020 2d20 636f  ).  tags:.  - co
│ │ │ -001f59e0: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -001f59f0: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -001f5a00: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -001f5a10: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -001f5a20: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001f5a30: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ -001f5a40: 5f6e 6f65 7865 630a 2020 2d20 6e6f 5f72  _noexec.  - no_r
│ │ │ -001f5a50: 6562 6f6f 745f 6e65 6564 6564 0a3c 2f63  eboot_needed.
│ │ │ -001f5a70: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -001f5b10: 6564 6961 7469 6f6e 2053 6865 6c6c 2073 ediation Shell s │ │ │ -001f5b20: 6372 6970 7420 e287 b23c 2f61 3e3c 6272 cript ...
Comp │ │ │ -001f4630: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -001f4640: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -001f4660: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ -001f4680: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001f4690: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -001f46b0: 2f74 683e 3c74 643e 636f 6e66 6967 7572 /th>configur │ │ │ -001f46c0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
# R
│ │ │ -001f5be0: 656d 6564 6961 7469 6f6e 2069 7320 6170  emediation is ap
│ │ │ -001f5bf0: 706c 6963 6162 6c65 206f 6e6c 7920 696e  plicable only in
│ │ │ -001f5c00: 2063 6572 7461 696e 2070 6c61 7466 6f72   certain platfor
│ │ │ -001f5c10: 6d73 0a69 6620 2820 2120 2820 7b20 7270  ms.if ( ! ( { rp
│ │ │ -001f5c20: 6d20 2d2d 7175 6965 7420 2d71 206b 6572  m --quiet -q ker
│ │ │ -001f5c30: 6e65 6c20 3b7d 2026 616d 703b 2661 6d70  nel ;} &&
│ │ │ -001f5c40: 3b20 7b20 7270 6d20 2d2d 7175 6965 7420  ; { rpm --quiet 
│ │ │ -001f5c50: 2d71 2072 706d 2d6f 7374 7265 6520 3b7d  -q rpm-ostree ;}
│ │ │ -001f5c60: 2026 616d 703b 2661 6d70 3b20 7b20 7270   && { rp
│ │ │ -001f5c70: 6d20 2d2d 7175 6965 7420 2d71 2062 6f6f  m --quiet -q boo
│ │ │ -001f5c80: 7463 203b 7d20 2661 6d70 3b26 616d 703b  tc ;} &&
│ │ │ -001f5c90: 207b 2021 2072 706d 202d 2d71 7569 6574   { ! rpm --quiet
│ │ │ -001f5ca0: 202d 7120 6f70 656e 7368 6966 742d 6b75   -q openshift-ku
│ │ │ -001f5cb0: 6265 6c65 7420 3b7d 2026 616d 703b 2661  belet ;} &&a
│ │ │ -001f5cc0: 6d70 3b20 285b 202d 6620 2f72 756e 2f6f  mp; ([ -f /run/o
│ │ │ -001f5cd0: 7374 7265 652d 626f 6f74 6564 205d 207c  stree-booted ] |
│ │ │ -001f5ce0: 7c20 5b20 2d4c 202f 6f73 7472 6565 205d  | [ -L /ostree ]
│ │ │ -001f5cf0: 2920 2920 2661 6d70 3b26 616d 703b 2021  ) ) && !
│ │ │ -001f5d00: 2028 205b 202d 6620 2f2e 646f 636b 6572   ( [ -f /.docker
│ │ │ -001f5d10: 656e 7620 5d20 7c7c 205b 202d 6620 2f72  env ] || [ -f /r
│ │ │ -001f5d20: 756e 2f2e 636f 6e74 6169 6e65 7265 6e76  un/.containerenv
│ │ │ -001f5d30: 205d 2029 2029 2026 616d 703b 2661 6d70   ] ) ) &&
│ │ │ -001f5d40: 3b20 7b20 2820 6669 6e64 6d6e 7420 2d2d  ; { ( findmnt --
│ │ │ -001f5d50: 6b65 726e 656c 2022 2f76 6172 2220 2667  kernel "/var" &g
│ │ │ -001f5d60: 743b 202f 6465 762f 6e75 6c6c 207c 7c20  t; /dev/null || 
│ │ │ -001f5d70: 6669 6e64 6d6e 7420 2d2d 6673 7461 6220  findmnt --fstab 
│ │ │ -001f5d80: 222f 7661 7222 2026 6774 3b20 2f64 6576  "/var" > /dev
│ │ │ -001f5d90: 2f6e 756c 6c20 293b 207d 3b20 7468 656e  /null ); }; then
│ │ │ -001f5da0: 0a0a 6675 6e63 7469 6f6e 2070 6572 666f  ..function perfo
│ │ │ -001f5db0: 726d 5f72 656d 6564 6961 7469 6f6e 207b  rm_remediation {
│ │ │ -001f5dc0: 0a0a 2020 2020 0a20 2020 2020 2020 2023  ..    .        #
│ │ │ -001f5dd0: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ -001f5de0: 202f 7661 7220 6861 7320 746f 2062 6520   /var has to be 
│ │ │ -001f5df0: 6465 6669 6e65 6420 696e 202f 6574 632f  defined in /etc/
│ │ │ -001f5e00: 6673 7461 620a 2020 2020 2020 2020 2320  fstab.        # 
│ │ │ -001f5e10: 6265 666f 7265 2074 6869 7320 7265 6d65  before this reme
│ │ │ -001f5e20: 6469 6174 696f 6e20 6361 6e20 6265 2065  diation can be e
│ │ │ -001f5e30: 7865 6375 7465 642e 2049 6e20 6361 7365  xecuted. In case
│ │ │ -001f5e40: 2069 7420 6973 206e 6f74 2064 6566 696e   it is not defin
│ │ │ -001f5e50: 6564 2c20 7468 650a 2020 2020 2020 2020  ed, the.        
│ │ │ -001f5e60: 2320 7265 6d65 6469 6174 696f 6e20 6162  # remediation ab
│ │ │ -001f5e70: 6f72 7473 2061 6e64 206e 6f20 6368 616e  orts and no chan
│ │ │ -001f5e80: 6765 7320 7265 6761 7264 696e 6720 7468  ges regarding th
│ │ │ -001f5e90: 6520 6d6f 756e 7420 706f 696e 7420 6172  e mount point ar
│ │ │ -001f5ea0: 6520 646f 6e65 2e0a 2020 2020 2020 2020  e done..        
│ │ │ -001f5eb0: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001f5ec0: 685f 7265 6765 7870 3d22 2428 7072 696e  h_regexp="$(prin
│ │ │ -001f5ed0: 7466 2022 5e5b 5b3a 7370 6163 653a 5d5d  tf "^[[:space:]]
│ │ │ -001f5ee0: 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163 653a  *[^#].*[[:space:
│ │ │ -001f5ef0: 5d5d 2573 5b5b 3a73 7061 6365 3a5d 5d22  ]]%s[[:space:]]"
│ │ │ -001f5f00: 2022 2f76 6172 2229 220a 0a20 2020 2067   "/var")"..    g
│ │ │ -001f5f10: 7265 7020 2224 6d6f 756e 745f 706f 696e  rep "$mount_poin
│ │ │ -001f5f20: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ -001f5f30: 2d71 202f 6574 632f 6673 7461 6220 5c0a  -q /etc/fstab \.
│ │ │ -001f5f40: 2020 2020 2020 2020 7c7c 207b 2065 6368          || { ech
│ │ │ -001f5f50: 6f20 2254 6865 206d 6f75 6e74 2070 6f69  o "The mount poi
│ │ │ -001f5f60: 6e74 2027 2f76 6172 2720 6973 206e 6f74  nt '/var' is not
│ │ │ -001f5f70: 2065 7665 6e20 696e 202f 6574 632f 6673   even in /etc/fs
│ │ │ -001f5f80: 7461 622c 2073 6f20 7765 2063 616e 2774  tab, so we can't
│ │ │ -001f5f90: 2073 6574 2075 7020 6d6f 756e 7420 6f70   set up mount op
│ │ │ -001f5fa0: 7469 6f6e 7322 2026 6774 3b26 616d 703b  tions" >&
│ │ │ -001f5fb0: 323b 0a20 2020 2020 2020 2020 2020 2020  2;.             
│ │ │ -001f5fc0: 2020 2065 6368 6f20 224e 6f74 2072 656d     echo "Not rem
│ │ │ -001f5fd0: 6564 6961 7469 6e67 2c20 6265 6361 7573  ediating, becaus
│ │ │ -001f5fe0: 6520 7468 6572 6520 6973 206e 6f20 7265  e there is no re
│ │ │ -001f5ff0: 636f 7264 206f 6620 2f76 6172 2069 6e20  cord of /var in 
│ │ │ -001f6000: 2f65 7463 2f66 7374 6162 2220 2667 743b  /etc/fstab" >
│ │ │ -001f6010: 2661 6d70 3b32 3b20 7265 7475 726e 2031  &2; return 1
│ │ │ -001f6020: 3b20 7d0a 2020 2020 0a0a 0a20 2020 206d  ; }.    ...    m
│ │ │ -001f6030: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001f6040: 5f72 6567 6578 703d 2224 2870 7269 6e74  _regexp="$(print
│ │ │ -001f6050: 6620 225e 5b5b 3a73 7061 6365 3a5d 5d2a  f "^[[:space:]]*
│ │ │ -001f6060: 5b5e 235d 2e2a 5b5b 3a73 7061 6365 3a5d  [^#].*[[:space:]
│ │ │ -001f6070: 5d25 735b 5b3a 7370 6163 653a 5d5d 2220  ]%s[[:space:]]" 
│ │ │ -001f6080: 2f76 6172 2922 0a0a 2020 2020 2320 4966  /var)"..    # If
│ │ │ -001f6090: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ -001f60a0: 2069 7320 6e6f 7420 696e 202f 6574 632f   is not in /etc/
│ │ │ -001f60b0: 6673 7461 622c 2067 6574 2070 7265 7669  fstab, get previ
│ │ │ -001f60c0: 6f75 7320 6d6f 756e 7420 6f70 7469 6f6e  ous mount option
│ │ │ -001f60d0: 7320 6672 6f6d 202f 6574 632f 6d74 6162  s from /etc/mtab
│ │ │ -001f60e0: 0a20 2020 2069 6620 2120 6772 6570 202d  .    if ! grep -
│ │ │ -001f60f0: 7120 2224 6d6f 756e 745f 706f 696e 745f  q "$mount_point_
│ │ │ -001f6100: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ -001f6110: 7463 2f66 7374 6162 3b20 7468 656e 0a20  tc/fstab; then. 
│ │ │ -001f6120: 2020 2020 2020 2023 2072 756e 7469 6d65         # runtime
│ │ │ -001f6130: 206f 7074 7320 7769 7468 6f75 7420 736f   opts without so
│ │ │ -001f6140: 6d65 2061 7574 6f6d 6174 6963 206b 6572  me automatic ker
│ │ │ -001f6150: 6e65 6c2f 7573 6572 7370 6163 652d 6164  nel/userspace-ad
│ │ │ -001f6160: 6465 6420 6465 6661 756c 7473 0a20 2020  ded defaults.   
│ │ │ -001f6170: 2020 2020 2070 7265 7669 6f75 735f 6d6f       previous_mo
│ │ │ -001f6180: 756e 745f 6f70 7473 3d24 2867 7265 7020  unt_opts=$(grep 
│ │ │ -001f6190: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ -001f61a0: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ -001f61b0: 2f6d 7461 6220 7c20 6865 6164 202d 3120  /mtab | head -1 
│ │ │ -001f61c0: 7c20 2061 776b 2027 7b70 7269 6e74 2024  |  awk '{print $
│ │ │ -001f61d0: 347d 2720 5c0a 2020 2020 2020 2020 2020  4}' \.          
│ │ │ -001f61e0: 2020 2020 2020 2020 2020 7c20 7365 6420            | sed 
│ │ │ -001f61f0: 2d45 2022 732f 2872 777c 6465 6661 756c  -E "s/(rw|defaul
│ │ │ -001f6200: 7473 7c73 6563 6c61 6265 6c7c 6e6f 6578  ts|seclabel|noex
│ │ │ -001f6210: 6563 2928 2c7c 2429 2f2f 673b 732f 2c24  ec)(,|$)//g;s/,$
│ │ │ -001f6220: 2f2f 2229 0a20 2020 2020 2020 205b 2022  //").        [ "
│ │ │ -001f6230: 2470 7265 7669 6f75 735f 6d6f 756e 745f  $previous_mount_
│ │ │ -001f6240: 6f70 7473 2220 5d20 2661 6d70 3b26 616d  opts" ] &&am
│ │ │ -001f6250: 703b 2070 7265 7669 6f75 735f 6d6f 756e  p; previous_moun
│ │ │ -001f6260: 745f 6f70 7473 2b3d 222c 220a 2020 2020  t_opts+=",".    
│ │ │ -001f6270: 2020 2020 2320 496e 2069 736f 3936 3630      # In iso9660
│ │ │ -001f6280: 2066 696c 6573 7973 7465 6d73 206d 7461   filesystems mta
│ │ │ -001f6290: 6220 636f 756c 6420 6465 7363 7269 6265  b could describe
│ │ │ -001f62a0: 2061 2022 626c 6f63 6b73 697a 6522 2076   a "blocksize" v
│ │ │ -001f62b0: 616c 7565 2c20 7468 6973 2073 686f 756c  alue, this shoul
│ │ │ -001f62c0: 6420 6265 2072 6566 6c65 6374 6564 2069  d be reflected i
│ │ │ -001f62d0: 6e0a 2020 2020 2020 2020 2320 6673 7461  n.        # fsta
│ │ │ -001f62e0: 6220 6173 2022 626c 6f63 6b22 2e20 2054  b as "block".  T
│ │ │ -001f62f0: 6865 206e 6578 7420 7661 7269 6162 6c65  he next variable
│ │ │ -001f6300: 2069 7320 746f 2073 6174 6973 6679 2073   is to satisfy s
│ │ │ -001f6310: 6865 6c6c 6368 6563 6b20 5343 3230 3530  hellcheck SC2050
│ │ │ -001f6320: 2e0a 2020 2020 2020 2020 6673 5f74 7970  ..        fs_typ
│ │ │ -001f6330: 653d 2222 0a20 2020 2020 2020 2069 6620  e="".        if 
│ │ │ -001f6340: 5b20 2022 2466 735f 7479 7065 2220 3d3d  [  "$fs_type" ==
│ │ │ -001f6350: 2022 6973 6f39 3636 3022 205d 203b 2074   "iso9660" ] ; t
│ │ │ -001f6360: 6865 6e0a 2020 2020 2020 2020 2020 2020  hen.            
│ │ │ -001f6370: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001f6380: 7074 733d 2428 7365 6420 2773 2f62 6c6f  pts=$(sed 's/blo
│ │ │ -001f6390: 636b 7369 7a65 3d2f 626c 6f63 6b3d 2f27  cksize=/block=/'
│ │ │ -001f63a0: 2026 6c74 3b26 6c74 3b26 6c74 3b20 2224   <<< "$
│ │ │ -001f63b0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001f63c0: 7074 7322 290a 2020 2020 2020 2020 6669  pts").        fi
│ │ │ -001f63d0: 0a20 2020 2020 2020 2065 6368 6f20 2220  .        echo " 
│ │ │ -001f63e0: 2f76 6172 2020 6465 6661 756c 7473 2c24  /var  defaults,$
│ │ │ -001f63f0: 7b70 7265 7669 6f75 735f 6d6f 756e 745f  {previous_mount_
│ │ │ -001f6400: 6f70 7473 7d6e 6f65 7865 6320 3020 3022  opts}noexec 0 0"
│ │ │ -001f6410: 2026 6774 3b26 6774 3b20 2f65 7463 2f66   >> /etc/f
│ │ │ -001f6420: 7374 6162 0a20 2020 2023 2049 6620 7468  stab.    # If th
│ │ │ -001f6430: 6520 6d6f 756e 745f 6f70 7420 6f70 7469  e mount_opt opti
│ │ │ -001f6440: 6f6e 2069 7320 6e6f 7420 616c 7265 6164  on is not alread
│ │ │ -001f6450: 7920 696e 2074 6865 206d 6f75 6e74 2070  y in the mount p
│ │ │ -001f6460: 6f69 6e74 2773 202f 6574 632f 6673 7461  oint's /etc/fsta
│ │ │ -001f6470: 6220 656e 7472 792c 2061 6464 2069 740a  b entry, add it.
│ │ │ -001f6480: 2020 2020 656c 6966 2021 2067 7265 7020      elif ! grep 
│ │ │ -001f6490: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ -001f64a0: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ -001f64b0: 2f66 7374 6162 207c 2067 7265 7020 2d71  /fstab | grep -q
│ │ │ -001f64c0: 2022 6e6f 6578 6563 223b 2074 6865 6e0a   "noexec"; then.
│ │ │ -001f64d0: 2020 2020 2020 2020 7072 6576 696f 7573          previous
│ │ │ -001f64e0: 5f6d 6f75 6e74 5f6f 7074 733d 2428 6772  _mount_opts=$(gr
│ │ │ -001f64f0: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ -001f6500: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ -001f6510: 6574 632f 6673 7461 6220 7c20 6177 6b20  etc/fstab | awk 
│ │ │ -001f6520: 277b 7072 696e 7420 2434 7d27 290a 2020  '{print $4}').  
│ │ │ -001f6530: 2020 2020 2020 7365 6420 2d69 2022 737c        sed -i "s|
│ │ │ -001f6540: 5c28 247b 6d6f 756e 745f 706f 696e 745f  \(${mount_point_
│ │ │ -001f6550: 6d61 7463 685f 7265 6765 7870 7d2e 2a24  match_regexp}.*$
│ │ │ -001f6560: 7b70 7265 7669 6f75 735f 6d6f 756e 745f  {previous_mount_
│ │ │ -001f6570: 6f70 7473 7d5c 297c 5c31 2c6e 6f65 7865  opts}\)|\1,noexe
│ │ │ -001f6580: 637c 2220 2f65 7463 2f66 7374 6162 0a20  c|" /etc/fstab. 
│ │ │ -001f6590: 2020 2066 690a 0a0a 2020 2020 6966 206d     fi...    if m
│ │ │ -001f65a0: 6b64 6972 202d 7020 222f 7661 7222 3b20  kdir -p "/var"; 
│ │ │ -001f65b0: 7468 656e 0a20 2020 2020 2020 2069 6620  then.        if 
│ │ │ -001f65c0: 6d6f 756e 7470 6f69 6e74 202d 7120 222f  mountpoint -q "/
│ │ │ -001f65d0: 7661 7222 3b20 7468 656e 0a20 2020 2020  var"; then.     
│ │ │ -001f65e0: 2020 2020 2020 206d 6f75 6e74 202d 6f20         mount -o 
│ │ │ -001f65f0: 7265 6d6f 756e 7420 2d2d 7461 7267 6574  remount --target
│ │ │ -001f6600: 2022 2f76 6172 220a 2020 2020 2020 2020   "/var".        
│ │ │ -001f6610: 6669 0a20 2020 2066 690a 7d0a 0a70 6572  fi.    fi.}..per
│ │ │ -001f6620: 666f 726d 5f72 656d 6564 6961 7469 6f6e  form_remediation
│ │ │ -001f6630: 0a0a 656c 7365 0a20 2020 2026 6774 3b26  ..else.    >&
│ │ │ -001f6640: 616d 703b 3220 6563 686f 2027 5265 6d65  amp;2 echo 'Reme
│ │ │ -001f6650: 6469 6174 696f 6e20 6973 206e 6f74 2061  diation is not a
│ │ │ -001f6660: 7070 6c69 6361 626c 652c 206e 6f74 6869  pplicable, nothi
│ │ │ -001f6670: 6e67 2077 6173 2064 6f6e 6527 0a66 690a  ng was done'.fi.
│ │ │ +001f4370: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070  on Ansible snipp
│ │ │ +001f4380: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...
│ │ │ +001f4400: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
Strategy: │ │ │ +001f4490: 3c74 643e 636f 6e66 6967 7572 653c 2f74
Reboo │ │ │ -001f5bb0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -001f5bc0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexi │ │ │ +001f4410: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +001f4420: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:high
Reboo │ │ │ +001f4460: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +001f4470: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
configure
< │ │ │ +001f44b0: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ +001f44c0: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ +001f44d0: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ +001f44e0: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ +001f44f0: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ +001f4500: 7461 6773 3a0a 2020 2d20 636f 6e66 6967 tags:. - config │ │ │ +001f4510: 7572 655f 7374 7261 7465 6779 0a20 202d ure_strategy. - │ │ │ +001f4520: 2068 6967 685f 6469 7372 7570 7469 6f6e high_disruption │ │ │ +001f4530: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ +001f4540: 6974 790a 2020 2d20 6d65 6469 756d 5f73 ity. - medium_s │ │ │ +001f4550: 6576 6572 6974 790a 2020 2d20 6d6f 756e everity. - moun │ │ │ +001f4560: 745f 6f70 7469 6f6e 5f76 6172 5f6e 6f65 t_option_var_noe │ │ │ +001f4570: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f xec. - no_reboo │ │ │ +001f4580: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65 t_needed..- name │ │ │ +001f4590: 3a20 2741 6464 206e 6f65 7865 6320 4f70 : 'Add noexec Op │ │ │ +001f45a0: 7469 6f6e 2074 6f20 2f76 6172 3a20 4368 tion to /var: Ch │ │ │ +001f45b0: 6563 6b20 696e 666f 726d 6174 696f 6e20 eck information │ │ │ +001f45c0: 6173 736f 6369 6174 6564 2074 6f20 6d6f associated to mo │ │ │ +001f45d0: 756e 7470 6f69 6e74 270a 2020 616e 7369 untpoint'. ansi │ │ │ +001f45e0: 626c 652e 6275 696c 7469 6e2e 636f 6d6d ble.builtin.comm │ │ │ +001f45f0: 616e 643a 2066 696e 646d 6e74 202d 2d66 and: findmnt --f │ │ │ +001f4600: 7374 6162 2027 2f76 6172 270a 2020 7265 stab '/var'. re │ │ │ +001f4610: 6769 7374 6572 3a20 6465 7669 6365 5f6e gister: device_n │ │ │ +001f4620: 616d 650a 2020 6661 696c 6564 5f77 6865 ame. failed_whe │ │ │ +001f4630: 6e3a 2064 6576 6963 655f 6e61 6d65 2e72 n: device_name.r │ │ │ +001f4640: 6320 2667 743b 2031 0a20 2063 6861 6e67 c > 1. chang │ │ │ +001f4650: 6564 5f77 6865 6e3a 2066 616c 7365 0a20 ed_when: false. │ │ │ +001f4660: 2063 6865 636b 5f6d 6f64 653a 2066 616c check_mode: fal │ │ │ +001f4670: 7365 0a20 2077 6865 6e3a 0a20 202d 2028 se. when:. - ( │ │ │ +001f4680: 206e 6f74 2028 2022 6b65 726e 656c 2220 not ( "kernel" │ │ │ +001f4690: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ +001f46a0: 2e70 6163 6b61 6765 7320 616e 6420 2272 .packages and "r │ │ │ +001f46b0: 706d 2d6f 7374 7265 6522 2069 6e20 616e pm-ostree" in an │ │ │ +001f46c0: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +001f46d0: 6167 6573 0a20 2020 2061 6e64 2022 626f ages. and "bo │ │ │ +001f46e0: 6f74 6322 2069 6e20 616e 7369 626c 655f otc" in ansible_ │ │ │ +001f46f0: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ +001f4700: 6e64 206e 6f74 2022 6f70 656e 7368 6966 nd not "openshif │ │ │ +001f4710: 742d 6b75 6265 6c65 7422 2069 6e20 616e t-kubelet" in an │ │ │ +001f4720: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +001f4730: 6167 6573 0a20 2020 2061 6e64 2022 6f73 ages. and "os │ │ │ +001f4740: 7472 6565 2220 696e 2061 6e73 6962 6c65 tree" in ansible │ │ │ +001f4750: 5f70 726f 635f 636d 646c 696e 6520 2920 _proc_cmdline ) │ │ │ +001f4760: 616e 6420 6e6f 7420 2820 616e 7369 626c and not ( ansibl │ │ │ +001f4770: 655f 7669 7274 7561 6c69 7a61 7469 6f6e e_virtualization │ │ │ +001f4780: 5f74 7970 6520 696e 0a20 2020 205b 2264 _type in. ["d │ │ │ +001f4790: 6f63 6b65 7222 2c20 226c 7863 222c 2022 ocker", "lxc", " │ │ │ +001f47a0: 6f70 656e 767a 222c 2022 706f 646d 616e openvz", "podman │ │ │ +001f47b0: 222c 2022 636f 6e74 6169 6e65 7222 5d20 ", "container"] │ │ │ +001f47c0: 2920 290a 2020 2d20 2722 2f76 6172 2220 ) ). - '"/var" │ │ │ +001f47d0: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74 in ansible_mount │ │ │ +001f47e0: 7320 7c20 6d61 7028 6174 7472 6962 7574 s | map(attribut │ │ │ +001f47f0: 653d 226d 6f75 6e74 2229 207c 206c 6973 e="mount") | lis │ │ │ +001f4800: 7427 0a20 2074 6167 733a 0a20 202d 2063 t'. tags:. - c │ │ │ +001f4810: 6f6e 6669 6775 7265 5f73 7472 6174 6567 onfigure_strateg │ │ │ +001f4820: 790a 2020 2d20 6869 6768 5f64 6973 7275 y. - high_disru │ │ │ +001f4830: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f ption. - low_co │ │ │ +001f4840: 6d70 6c65 7869 7479 0a20 202d 206d 6564 mplexity. - med │ │ │ +001f4850: 6975 6d5f 7365 7665 7269 7479 0a20 202d ium_severity. - │ │ │ +001f4860: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661 mount_option_va │ │ │ +001f4870: 725f 6e6f 6578 6563 0a20 202d 206e 6f5f r_noexec. - no_ │ │ │ +001f4880: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d reboot_needed..- │ │ │ +001f4890: 206e 616d 653a 2027 4164 6420 6e6f 6578 name: 'Add noex │ │ │ +001f48a0: 6563 204f 7074 696f 6e20 746f 202f 7661 ec Option to /va │ │ │ +001f48b0: 723a 2043 7265 6174 6520 6d6f 756e 745f r: Create mount_ │ │ │ +001f48c0: 696e 666f 2064 6963 7469 6f6e 6172 7920 info dictionary │ │ │ +001f48d0: 7661 7269 6162 6c65 270a 2020 7365 745f variable'. set_ │ │ │ +001f48e0: 6661 6374 3a0a 2020 2020 6d6f 756e 745f fact:. mount_ │ │ │ +001f48f0: 696e 666f 3a20 277b 7b20 6d6f 756e 745f info: '{{ mount_ │ │ │ +001f4900: 696e 666f 7c64 6566 6175 6c74 287b 7d29 info|default({}) │ │ │ +001f4910: 7c63 6f6d 6269 6e65 287b 6974 656d 2e30 |combine({item.0 │ │ │ +001f4920: 3a20 6974 656d 2e31 7d29 207d 7d27 0a20 : item.1}) }}'. │ │ │ +001f4930: 2077 6974 685f 746f 6765 7468 6572 3a0a with_together:. │ │ │ +001f4940: 2020 2d20 277b 7b20 6465 7669 6365 5f6e - '{{ device_n │ │ │ +001f4950: 616d 652e 7374 646f 7574 5f6c 696e 6573 ame.stdout_lines │ │ │ +001f4960: 5b30 5d2e 7370 6c69 7428 2920 7c20 6d61 [0].split() | ma │ │ │ +001f4970: 7028 2727 6c6f 7765 7227 2729 207c 206c p(''lower'') | l │ │ │ +001f4980: 6973 7420 7d7d 270a 2020 2d20 277b 7b20 ist }}'. - '{{ │ │ │ +001f4990: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ +001f49a0: 7574 5f6c 696e 6573 5b31 5d2e 7370 6c69 ut_lines[1].spli │ │ │ +001f49b0: 7428 2920 7c20 6c69 7374 207d 7d27 0a20 t() | list }}'. │ │ │ +001f49c0: 2077 6865 6e3a 0a20 202d 2028 206e 6f74 when:. - ( not │ │ │ +001f49d0: 2028 2022 6b65 726e 656c 2220 696e 2061 ( "kernel" in a │ │ │ +001f49e0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ +001f49f0: 6b61 6765 7320 616e 6420 2272 706d 2d6f kages and "rpm-o │ │ │ +001f4a00: 7374 7265 6522 2069 6e20 616e 7369 626c stree" in ansibl │ │ │ +001f4a10: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ +001f4a20: 0a20 2020 2061 6e64 2022 626f 6f74 6322 . and "bootc" │ │ │ +001f4a30: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +001f4a40: 732e 7061 636b 6167 6573 2061 6e64 206e s.packages and n │ │ │ +001f4a50: 6f74 2022 6f70 656e 7368 6966 742d 6b75 ot "openshift-ku │ │ │ +001f4a60: 6265 6c65 7422 2069 6e20 616e 7369 626c belet" in ansibl │ │ │ +001f4a70: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ +001f4a80: 0a20 2020 2061 6e64 2022 6f73 7472 6565 . and "ostree │ │ │ +001f4a90: 2220 696e 2061 6e73 6962 6c65 5f70 726f " in ansible_pro │ │ │ +001f4aa0: 635f 636d 646c 696e 6520 2920 616e 6420 c_cmdline ) and │ │ │ +001f4ab0: 6e6f 7420 2820 616e 7369 626c 655f 7669 not ( ansible_vi │ │ │ +001f4ac0: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970 rtualization_typ │ │ │ +001f4ad0: 6520 696e 0a20 2020 205b 2264 6f63 6b65 e in. ["docke │ │ │ +001f4ae0: 7222 2c20 226c 7863 222c 2022 6f70 656e r", "lxc", "open │ │ │ +001f4af0: 767a 222c 2022 706f 646d 616e 222c 2022 vz", "podman", " │ │ │ +001f4b00: 636f 6e74 6169 6e65 7222 5d20 2920 290a container"] ) ). │ │ │ +001f4b10: 2020 2d20 2722 2f76 6172 2220 696e 2061 - '"/var" in a │ │ │ +001f4b20: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20 nsible_mounts | │ │ │ +001f4b30: 6d61 7028 6174 7472 6962 7574 653d 226d map(attribute="m │ │ │ +001f4b40: 6f75 6e74 2229 207c 206c 6973 7427 0a20 ount") | list'. │ │ │ +001f4b50: 202d 2064 6576 6963 655f 6e61 6d65 2e73 - device_name.s │ │ │ +001f4b60: 7464 6f75 7420 6973 2064 6566 696e 6564 tdout is defined │ │ │ +001f4b70: 2061 6e64 2064 6576 6963 655f 6e61 6d65 and device_name │ │ │ +001f4b80: 2e73 7464 6f75 745f 6c69 6e65 7320 6973 .stdout_lines is │ │ │ +001f4b90: 2064 6566 696e 6564 0a20 202d 2028 6465 defined. - (de │ │ │ +001f4ba0: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ +001f4bb0: 207c 206c 656e 6774 6820 2667 743b 2030 | length > 0 │ │ │ +001f4bc0: 290a 2020 7461 6773 3a0a 2020 2d20 636f ). tags:. - co │ │ │ +001f4bd0: 6e66 6967 7572 655f 7374 7261 7465 6779 nfigure_strategy │ │ │ +001f4be0: 0a20 202d 2068 6967 685f 6469 7372 7570 . - high_disrup │ │ │ +001f4bf0: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d tion. - low_com │ │ │ +001f4c00: 706c 6578 6974 790a 2020 2d20 6d65 6469 plexity. - medi │ │ │ +001f4c10: 756d 5f73 6576 6572 6974 790a 2020 2d20 um_severity. - │ │ │ +001f4c20: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172 mount_option_var │ │ │ +001f4c30: 5f6e 6f65 7865 630a 2020 2d20 6e6f 5f72 _noexec. - no_r │ │ │ +001f4c40: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20 eboot_needed..- │ │ │ +001f4c50: 6e61 6d65 3a20 2741 6464 206e 6f65 7865 name: 'Add noexe │ │ │ +001f4c60: 6320 4f70 7469 6f6e 2074 6f20 2f76 6172 c Option to /var │ │ │ +001f4c70: 3a20 4966 202f 7661 7220 6e6f 7420 6d6f : If /var not mo │ │ │ +001f4c80: 756e 7465 642c 2063 7261 6674 206d 6f75 unted, craft mou │ │ │ +001f4c90: 6e74 5f69 6e66 6f20 6d61 6e75 616c 6c79 nt_info manually │ │ │ +001f4ca0: 270a 2020 7365 745f 6661 6374 3a0a 2020 '. set_fact:. │ │ │ +001f4cb0: 2020 6d6f 756e 745f 696e 666f 3a20 277b mount_info: '{ │ │ │ +001f4cc0: 7b20 6d6f 756e 745f 696e 666f 7c64 6566 { mount_info|def │ │ │ +001f4cd0: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65 ault({})|combine │ │ │ +001f4ce0: 287b 6974 656d 2e30 3a20 6974 656d 2e31 ({item.0: item.1 │ │ │ +001f4cf0: 7d29 207d 7d27 0a20 2077 6974 685f 746f }) }}'. with_to │ │ │ +001f4d00: 6765 7468 6572 3a0a 2020 2d20 2d20 7461 gether:. - - ta │ │ │ +001f4d10: 7267 6574 0a20 2020 202d 2073 6f75 7263 rget. - sourc │ │ │ +001f4d20: 650a 2020 2020 2d20 6673 7479 7065 0a20 e. - fstype. │ │ │ +001f4d30: 2020 202d 206f 7074 696f 6e73 0a20 202d - options. - │ │ │ +001f4d40: 202d 202f 7661 720a 2020 2020 2d20 2727 - /var. - '' │ │ │ +001f4d50: 0a20 2020 202d 2027 270a 2020 2020 2d20 . - ''. - │ │ │ +001f4d60: 6465 6661 756c 7473 0a20 2077 6865 6e3a defaults. when: │ │ │ +001f4d70: 0a20 202d 2028 206e 6f74 2028 2022 6b65 . - ( not ( "ke │ │ │ +001f4d80: 726e 656c 2220 696e 2061 6e73 6962 6c65 rnel" in ansible │ │ │ +001f4d90: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ +001f4da0: 616e 6420 2272 706d 2d6f 7374 7265 6522 and "rpm-ostree" │ │ │ +001f4db0: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +001f4dc0: 732e 7061 636b 6167 6573 0a20 2020 2061 s.packages. a │ │ │ +001f4dd0: 6e64 2022 626f 6f74 6322 2069 6e20 616e nd "bootc" in an │ │ │ +001f4de0: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +001f4df0: 6167 6573 2061 6e64 206e 6f74 2022 6f70 ages and not "op │ │ │ +001f4e00: 656e 7368 6966 742d 6b75 6265 6c65 7422 enshift-kubelet" │ │ │ +001f4e10: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +001f4e20: 732e 7061 636b 6167 6573 0a20 2020 2061 s.packages. a │ │ │ +001f4e30: 6e64 2022 6f73 7472 6565 2220 696e 2061 nd "ostree" in a │ │ │ +001f4e40: 6e73 6962 6c65 5f70 726f 635f 636d 646c nsible_proc_cmdl │ │ │ +001f4e50: 696e 6520 2920 616e 6420 6e6f 7420 2820 ine ) and not ( │ │ │ +001f4e60: 616e 7369 626c 655f 7669 7274 7561 6c69 ansible_virtuali │ │ │ +001f4e70: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20 zation_type in. │ │ │ +001f4e80: 2020 205b 2264 6f63 6b65 7222 2c20 226c ["docker", "l │ │ │ +001f4e90: 7863 222c 2022 6f70 656e 767a 222c 2022 xc", "openvz", " │ │ │ +001f4ea0: 706f 646d 616e 222c 2022 636f 6e74 6169 podman", "contai │ │ │ +001f4eb0: 6e65 7222 5d20 2920 290a 2020 2d20 2722 ner"] ) ). - '" │ │ │ +001f4ec0: 2f76 6172 2220 696e 2061 6e73 6962 6c65 /var" in ansible │ │ │ +001f4ed0: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174 _mounts | map(at │ │ │ +001f4ee0: 7472 6962 7574 653d 226d 6f75 6e74 2229 tribute="mount") │ │ │ +001f4ef0: 207c 206c 6973 7427 0a20 202d 2028 222d | list'. - ("- │ │ │ +001f4f00: 2d66 7374 6162 2220 7c20 6c65 6e67 7468 -fstab" | length │ │ │ +001f4f10: 203d 3d20 3029 0a20 202d 2064 6576 6963 == 0). - devic │ │ │ +001f4f20: 655f 6e61 6d65 2e73 7464 6f75 7420 6973 e_name.stdout is │ │ │ +001f4f30: 2064 6566 696e 6564 2061 6e64 2064 6576 defined and dev │ │ │ +001f4f40: 6963 655f 6e61 6d65 2e73 7464 6f75 745f ice_name.stdout_ │ │ │ +001f4f50: 6c69 6e65 7320 6973 2064 6566 696e 6564 lines is defined │ │ │ +001f4f60: 0a20 202d 2028 6465 7669 6365 5f6e 616d . - (device_nam │ │ │ +001f4f70: 652e 7374 646f 7574 207c 206c 656e 6774 e.stdout | lengt │ │ │ +001f4f80: 6820 3d3d 2030 290a 2020 7461 6773 3a0a h == 0). tags:. │ │ │ +001f4f90: 2020 2d20 636f 6e66 6967 7572 655f 7374 - configure_st │ │ │ +001f4fa0: 7261 7465 6779 0a20 202d 2068 6967 685f rategy. - high_ │ │ │ +001f4fb0: 6469 7372 7570 7469 6f6e 0a20 202d 206c disruption. - l │ │ │ +001f4fc0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ +001f4fd0: 2d20 6d65 6469 756d 5f73 6576 6572 6974 - medium_severit │ │ │ +001f4fe0: 790a 2020 2d20 6d6f 756e 745f 6f70 7469 y. - mount_opti │ │ │ +001f4ff0: 6f6e 5f76 6172 5f6e 6f65 7865 630a 2020 on_var_noexec. │ │ │ +001f5000: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ +001f5010: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464 ed..- name: 'Add │ │ │ +001f5020: 206e 6f65 7865 6320 4f70 7469 6f6e 2074 noexec Option t │ │ │ +001f5030: 6f20 2f76 6172 3a20 4d61 6b65 2073 7572 o /var: Make sur │ │ │ +001f5040: 6520 6e6f 6578 6563 206f 7074 696f 6e20 e noexec option │ │ │ +001f5050: 6973 2070 6172 7420 6f66 2074 6865 2074 is part of the t │ │ │ +001f5060: 6f20 2f76 6172 0a20 2020 206f 7074 696f o /var. optio │ │ │ +001f5070: 6e73 270a 2020 7365 745f 6661 6374 3a0a ns'. set_fact:. │ │ │ +001f5080: 2020 2020 6d6f 756e 745f 696e 666f 3a20 mount_info: │ │ │ +001f5090: 277b 7b20 6d6f 756e 745f 696e 666f 207c '{{ mount_info | │ │ │ +001f50a0: 2063 6f6d 6269 6e65 2820 7b27 276f 7074 combine( {''opt │ │ │ +001f50b0: 696f 6e73 2727 3a27 2727 277e 286d 6f75 ions'':''''~(mou │ │ │ +001f50c0: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320 nt_info.options │ │ │ +001f50d0: 7c0a 2020 2020 2020 6465 6661 756c 7428 |. default( │ │ │ +001f50e0: 2727 2727 2929 7e28 2727 2c27 2720 6966 ''''))~('','' if │ │ │ +001f50f0: 2028 6d6f 756e 745f 696e 666f 2e6f 7074 (mount_info.opt │ │ │ +001f5100: 696f 6e73 207c 2064 6566 6175 6c74 2827 ions | default(' │ │ │ +001f5110: 2727 2729 2920 656c 7365 2027 2727 2729 ''')) else '''') │ │ │ +001f5120: 7e27 276e 6f65 7865 6327 270a 2020 2020 ~''noexec''. │ │ │ +001f5130: 2020 7d29 207d 7d27 0a20 2077 6865 6e3a }) }}'. when: │ │ │ +001f5140: 0a20 202d 2028 206e 6f74 2028 2022 6b65 . - ( not ( "ke │ │ │ +001f5150: 726e 656c 2220 696e 2061 6e73 6962 6c65 rnel" in ansible │ │ │ +001f5160: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ +001f5170: 616e 6420 2272 706d 2d6f 7374 7265 6522 and "rpm-ostree" │ │ │ +001f5180: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +001f5190: 732e 7061 636b 6167 6573 0a20 2020 2061 s.packages. a │ │ │ +001f51a0: 6e64 2022 626f 6f74 6322 2069 6e20 616e nd "bootc" in an │ │ │ +001f51b0: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +001f51c0: 6167 6573 2061 6e64 206e 6f74 2022 6f70 ages and not "op │ │ │ +001f51d0: 656e 7368 6966 742d 6b75 6265 6c65 7422 enshift-kubelet" │ │ │ +001f51e0: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +001f51f0: 732e 7061 636b 6167 6573 0a20 2020 2061 s.packages. a │ │ │ +001f5200: 6e64 2022 6f73 7472 6565 2220 696e 2061 nd "ostree" in a │ │ │ +001f5210: 6e73 6962 6c65 5f70 726f 635f 636d 646c nsible_proc_cmdl │ │ │ +001f5220: 696e 6520 2920 616e 6420 6e6f 7420 2820 ine ) and not ( │ │ │ +001f5230: 616e 7369 626c 655f 7669 7274 7561 6c69 ansible_virtuali │ │ │ +001f5240: 7a61 7469 6f6e 5f74 7970 6520 696e 0a20 zation_type in. │ │ │ +001f5250: 2020 205b 2264 6f63 6b65 7222 2c20 226c ["docker", "l │ │ │ +001f5260: 7863 222c 2022 6f70 656e 767a 222c 2022 xc", "openvz", " │ │ │ +001f5270: 706f 646d 616e 222c 2022 636f 6e74 6169 podman", "contai │ │ │ +001f5280: 6e65 7222 5d20 2920 290a 2020 2d20 2722 ner"] ) ). - '" │ │ │ +001f5290: 2f76 6172 2220 696e 2061 6e73 6962 6c65 /var" in ansible │ │ │ +001f52a0: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174 _mounts | map(at │ │ │ +001f52b0: 7472 6962 7574 653d 226d 6f75 6e74 2229 tribute="mount") │ │ │ +001f52c0: 207c 206c 6973 7427 0a20 202d 206d 6f75 | list'. - mou │ │ │ +001f52d0: 6e74 5f69 6e66 6f20 6973 2064 6566 696e nt_info is defin │ │ │ +001f52e0: 6564 2061 6e64 2022 6e6f 6578 6563 2220 ed and "noexec" │ │ │ +001f52f0: 6e6f 7420 696e 2028 6d6f 756e 745f 696e not in (mount_in │ │ │ +001f5300: 666f 2e6f 7074 696f 6e73 207c 2064 6566 fo.options | def │ │ │ +001f5310: 6175 6c74 2827 2729 290a 2020 7461 6773 ault('')). tags │ │ │ +001f5320: 3a0a 2020 2d20 636f 6e66 6967 7572 655f :. - configure_ │ │ │ +001f5330: 7374 7261 7465 6779 0a20 202d 2068 6967 strategy. - hig │ │ │ +001f5340: 685f 6469 7372 7570 7469 6f6e 0a20 202d h_disruption. - │ │ │ +001f5350: 206c 6f77 5f63 6f6d 706c 6578 6974 790a low_complexity. │ │ │ +001f5360: 2020 2d20 6d65 6469 756d 5f73 6576 6572 - medium_sever │ │ │ +001f5370: 6974 790a 2020 2d20 6d6f 756e 745f 6f70 ity. - mount_op │ │ │ +001f5380: 7469 6f6e 5f76 6172 5f6e 6f65 7865 630a tion_var_noexec. │ │ │ +001f5390: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ +001f53a0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741 eded..- name: 'A │ │ │ +001f53b0: 6464 206e 6f65 7865 6320 4f70 7469 6f6e dd noexec Option │ │ │ +001f53c0: 2074 6f20 2f76 6172 3a20 456e 7375 7265 to /var: Ensure │ │ │ +001f53d0: 202f 7661 7220 6973 206d 6f75 6e74 6564 /var is mounted │ │ │ +001f53e0: 2077 6974 6820 6e6f 6578 6563 206f 7074 with noexec opt │ │ │ +001f53f0: 696f 6e27 0a20 2061 6e73 6962 6c65 2e70 ion'. ansible.p │ │ │ +001f5400: 6f73 6978 2e6d 6f75 6e74 3a0a 2020 2020 osix.mount:. │ │ │ +001f5410: 7061 7468 3a20 2f76 6172 0a20 2020 2073 path: /var. s │ │ │ +001f5420: 7263 3a20 277b 7b20 6d6f 756e 745f 696e rc: '{{ mount_in │ │ │ +001f5430: 666f 2e73 6f75 7263 6520 7c20 6465 6661 fo.source | defa │ │ │ +001f5440: 756c 7428 2727 2727 2920 7d7d 270a 2020 ult('''') }}'. │ │ │ +001f5450: 2020 6f70 7473 3a20 277b 7b20 6d6f 756e opts: '{{ moun │ │ │ +001f5460: 745f 696e 666f 2e6f 7074 696f 6e73 207c t_info.options | │ │ │ +001f5470: 2064 6566 6175 6c74 2827 2727 2729 207d default('''') } │ │ │ +001f5480: 7d27 0a20 2020 2073 7461 7465 3a20 6d6f }'. state: mo │ │ │ +001f5490: 756e 7465 640a 2020 2020 6673 7479 7065 unted. fstype │ │ │ +001f54a0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f : '{{ mount_info │ │ │ +001f54b0: 2e66 7374 7970 6520 7c20 6465 6661 756c .fstype | defaul │ │ │ +001f54c0: 7428 2727 2727 2920 7d7d 270a 2020 7265 t('''') }}'. re │ │ │ +001f54d0: 6769 7374 6572 3a20 6d6f 756e 745f 7265 gister: mount_re │ │ │ +001f54e0: 7375 6c74 0a20 2066 6169 6c65 645f 7768 sult. failed_wh │ │ │ +001f54f0: 656e 3a0a 2020 2d20 6d6f 756e 745f 7265 en:. - mount_re │ │ │ +001f5500: 7375 6c74 2069 7320 6661 696c 6564 0a20 sult is failed. │ │ │ +001f5510: 202d 2027 2727 7461 7267 6574 2069 7320 - '''target is │ │ │ +001f5520: 6275 7379 2727 206e 6f74 2069 6e20 286d busy'' not in (m │ │ │ +001f5530: 6f75 6e74 5f72 6573 756c 742e 6d73 6720 ount_result.msg │ │ │ +001f5540: 7c20 6465 6661 756c 7428 2727 2727 2929 | default('''')) │ │ │ +001f5550: 270a 2020 2d20 2727 2761 6c72 6561 6479 '. - '''already │ │ │ +001f5560: 206d 6f75 6e74 6564 2727 206e 6f74 2069 mounted'' not i │ │ │ +001f5570: 6e20 286d 6f75 6e74 5f72 6573 756c 742e n (mount_result. │ │ │ +001f5580: 6d73 6720 7c20 6465 6661 756c 7428 2727 msg | default('' │ │ │ +001f5590: 2727 2929 270a 2020 7768 656e 3a0a 2020 ''))'. when:. │ │ │ +001f55a0: 2d20 2820 6e6f 7420 2820 226b 6572 6e65 - ( not ( "kerne │ │ │ +001f55b0: 6c22 2069 6e20 616e 7369 626c 655f 6661 l" in ansible_fa │ │ │ +001f55c0: 6374 732e 7061 636b 6167 6573 2061 6e64 cts.packages and │ │ │ +001f55d0: 2022 7270 6d2d 6f73 7472 6565 2220 696e "rpm-ostree" in │ │ │ +001f55e0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ +001f55f0: 6163 6b61 6765 730a 2020 2020 616e 6420 ackages. and │ │ │ +001f5600: 2262 6f6f 7463 2220 696e 2061 6e73 6962 "bootc" in ansib │ │ │ +001f5610: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ +001f5620: 7320 616e 6420 6e6f 7420 226f 7065 6e73 s and not "opens │ │ │ +001f5630: 6869 6674 2d6b 7562 656c 6574 2220 696e hift-kubelet" in │ │ │ +001f5640: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ +001f5650: 6163 6b61 6765 730a 2020 2020 616e 6420 ackages. and │ │ │ +001f5660: 226f 7374 7265 6522 2069 6e20 616e 7369 "ostree" in ansi │ │ │ +001f5670: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65 ble_proc_cmdline │ │ │ +001f5680: 2029 2061 6e64 206e 6f74 2028 2061 6e73 ) and not ( ans │ │ │ +001f5690: 6962 6c65 5f76 6972 7475 616c 697a 6174 ible_virtualizat │ │ │ +001f56a0: 696f 6e5f 7479 7065 2069 6e0a 2020 2020 ion_type in. │ │ │ +001f56b0: 5b22 646f 636b 6572 222c 2022 6c78 6322 ["docker", "lxc" │ │ │ +001f56c0: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64 , "openvz", "pod │ │ │ +001f56d0: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572 man", "container │ │ │ +001f56e0: 225d 2029 2029 0a20 202d 2027 222f 7661 "] ) ). - '"/va │ │ │ +001f56f0: 7222 2069 6e20 616e 7369 626c 655f 6d6f r" in ansible_mo │ │ │ +001f5700: 756e 7473 207c 206d 6170 2861 7474 7269 unts | map(attri │ │ │ +001f5710: 6275 7465 3d22 6d6f 756e 7422 2920 7c20 bute="mount") | │ │ │ +001f5720: 6c69 7374 270a 2020 2d20 6d6f 756e 745f list'. - mount_ │ │ │ +001f5730: 696e 666f 2069 7320 6465 6669 6e65 640a info is defined. │ │ │ +001f5740: 2020 2d20 2864 6576 6963 655f 6e61 6d65 - (device_name │ │ │ +001f5750: 2e73 7464 6f75 7420 6973 2064 6566 696e .stdout is defin │ │ │ +001f5760: 6564 2061 6e64 2028 6465 7669 6365 5f6e ed and (device_n │ │ │ +001f5770: 616d 652e 7374 646f 7574 207c 206c 656e ame.stdout | len │ │ │ +001f5780: 6774 6820 2667 743b 2030 2929 206f 7220 gth > 0)) or │ │ │ +001f5790: 2822 2d2d 6673 7461 6222 0a20 2020 207c ("--fstab". | │ │ │ +001f57a0: 206c 656e 6774 6820 3d3d 2030 290a 2020 length == 0). │ │ │ +001f57b0: 7461 6773 3a0a 2020 2d20 636f 6e66 6967 tags:. - config │ │ │ +001f57c0: 7572 655f 7374 7261 7465 6779 0a20 202d ure_strategy. - │ │ │ +001f57d0: 2068 6967 685f 6469 7372 7570 7469 6f6e high_disruption │ │ │ +001f57e0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ +001f57f0: 6974 790a 2020 2d20 6d65 6469 756d 5f73 ity. - medium_s │ │ │ +001f5800: 6576 6572 6974 790a 2020 2d20 6d6f 756e everity. - moun │ │ │ +001f5810: 745f 6f70 7469 6f6e 5f76 6172 5f6e 6f65 t_option_var_noe │ │ │ +001f5820: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f xec. - no_reboo │ │ │ +001f5830: 745f 6e65 6564 6564 0a3c 2f63 6f64 653e t_needed. │ │ │ +001f5840: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063
Remedia │ │ │ +001f58f0: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ +001f5900: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +001f5980: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:false

# Remed │ │ │ +001f59c0: 6961 7469 6f6e 2069 7320 6170 706c 6963 iation is applic │ │ │ +001f59d0: 6162 6c65 206f 6e6c 7920 696e 2063 6572 able only in cer │ │ │ +001f59e0: 7461 696e 2070 6c61 7466 6f72 6d73 0a69 tain platforms.i │ │ │ +001f59f0: 6620 2820 2120 2820 7b20 7270 6d20 2d2d f ( ! ( { rpm -- │ │ │ +001f5a00: 7175 6965 7420 2d71 206b 6572 6e65 6c20 quiet -q kernel │ │ │ +001f5a10: 3b7d 2026 616d 703b 2661 6d70 3b20 7b20 ;} && { │ │ │ +001f5a20: 7270 6d20 2d2d 7175 6965 7420 2d71 2072 rpm --quiet -q r │ │ │ +001f5a30: 706d 2d6f 7374 7265 6520 3b7d 2026 616d pm-ostree ;} &am │ │ │ +001f5a40: 703b 2661 6d70 3b20 7b20 7270 6d20 2d2d p;& { rpm -- │ │ │ +001f5a50: 7175 6965 7420 2d71 2062 6f6f 7463 203b quiet -q bootc ; │ │ │ +001f5a60: 7d20 2661 6d70 3b26 616d 703b 207b 2021 } && { ! │ │ │ +001f5a70: 2072 706d 202d 2d71 7569 6574 202d 7120 rpm --quiet -q │ │ │ +001f5a80: 6f70 656e 7368 6966 742d 6b75 6265 6c65 openshift-kubele │ │ │ +001f5a90: 7420 3b7d 2026 616d 703b 2661 6d70 3b20 t ;} && │ │ │ +001f5aa0: 285b 202d 6620 2f72 756e 2f6f 7374 7265 ([ -f /run/ostre │ │ │ +001f5ab0: 652d 626f 6f74 6564 205d 207c 7c20 5b20 e-booted ] || [ │ │ │ +001f5ac0: 2d4c 202f 6f73 7472 6565 205d 2920 2920 -L /ostree ]) ) │ │ │ +001f5ad0: 2661 6d70 3b26 616d 703b 2021 2028 205b && ! ( [ │ │ │ +001f5ae0: 202d 6620 2f2e 646f 636b 6572 656e 7620 -f /.dockerenv │ │ │ +001f5af0: 5d20 7c7c 205b 202d 6620 2f72 756e 2f2e ] || [ -f /run/. │ │ │ +001f5b00: 636f 6e74 6169 6e65 7265 6e76 205d 2029 containerenv ] ) │ │ │ +001f5b10: 2029 2026 616d 703b 2661 6d70 3b20 7b20 ) && { │ │ │ +001f5b20: 2820 6669 6e64 6d6e 7420 2d2d 6b65 726e ( findmnt --kern │ │ │ +001f5b30: 656c 2022 2f76 6172 2220 2667 743b 202f el "/var" > / │ │ │ +001f5b40: 6465 762f 6e75 6c6c 207c 7c20 6669 6e64 dev/null || find │ │ │ +001f5b50: 6d6e 7420 2d2d 6673 7461 6220 222f 7661 mnt --fstab "/va │ │ │ +001f5b60: 7222 2026 6774 3b20 2f64 6576 2f6e 756c r" > /dev/nul │ │ │ +001f5b70: 6c20 293b 207d 3b20 7468 656e 0a0a 6675 l ); }; then..fu │ │ │ +001f5b80: 6e63 7469 6f6e 2070 6572 666f 726d 5f72 nction perform_r │ │ │ +001f5b90: 656d 6564 6961 7469 6f6e 207b 0a0a 2020 emediation {.. │ │ │ +001f5ba0: 2020 0a20 2020 2020 2020 2023 2074 6865 . # the │ │ │ +001f5bb0: 206d 6f75 6e74 2070 6f69 6e74 202f 7661 mount point /va │ │ │ +001f5bc0: 7220 6861 7320 746f 2062 6520 6465 6669 r has to be defi │ │ │ +001f5bd0: 6e65 6420 696e 202f 6574 632f 6673 7461 ned in /etc/fsta │ │ │ +001f5be0: 620a 2020 2020 2020 2020 2320 6265 666f b. # befo │ │ │ +001f5bf0: 7265 2074 6869 7320 7265 6d65 6469 6174 re this remediat │ │ │ +001f5c00: 696f 6e20 6361 6e20 6265 2065 7865 6375 ion can be execu │ │ │ +001f5c10: 7465 642e 2049 6e20 6361 7365 2069 7420 ted. In case it │ │ │ +001f5c20: 6973 206e 6f74 2064 6566 696e 6564 2c20 is not defined, │ │ │ +001f5c30: 7468 650a 2020 2020 2020 2020 2320 7265 the. # re │ │ │ +001f5c40: 6d65 6469 6174 696f 6e20 6162 6f72 7473 mediation aborts │ │ │ +001f5c50: 2061 6e64 206e 6f20 6368 616e 6765 7320 and no changes │ │ │ +001f5c60: 7265 6761 7264 696e 6720 7468 6520 6d6f regarding the mo │ │ │ +001f5c70: 756e 7420 706f 696e 7420 6172 6520 646f unt point are do │ │ │ +001f5c80: 6e65 2e0a 2020 2020 2020 2020 6d6f 756e ne.. moun │ │ │ +001f5c90: 745f 706f 696e 745f 6d61 7463 685f 7265 t_point_match_re │ │ │ +001f5ca0: 6765 7870 3d22 2428 7072 696e 7466 2022 gexp="$(printf " │ │ │ +001f5cb0: 5e5b 5b3a 7370 6163 653a 5d5d 2a5b 5e23 ^[[:space:]]*[^# │ │ │ +001f5cc0: 5d2e 2a5b 5b3a 7370 6163 653a 5d5d 2573 ].*[[:space:]]%s │ │ │ +001f5cd0: 5b5b 3a73 7061 6365 3a5d 5d22 2022 2f76 [[:space:]]" "/v │ │ │ +001f5ce0: 6172 2229 220a 0a20 2020 2067 7265 7020 ar")".. grep │ │ │ +001f5cf0: 2224 6d6f 756e 745f 706f 696e 745f 6d61 "$mount_point_ma │ │ │ +001f5d00: 7463 685f 7265 6765 7870 2220 2d71 202f tch_regexp" -q / │ │ │ +001f5d10: 6574 632f 6673 7461 6220 5c0a 2020 2020 etc/fstab \. │ │ │ +001f5d20: 2020 2020 7c7c 207b 2065 6368 6f20 2254 || { echo "T │ │ │ +001f5d30: 6865 206d 6f75 6e74 2070 6f69 6e74 2027 he mount point ' │ │ │ +001f5d40: 2f76 6172 2720 6973 206e 6f74 2065 7665 /var' is not eve │ │ │ +001f5d50: 6e20 696e 202f 6574 632f 6673 7461 622c n in /etc/fstab, │ │ │ +001f5d60: 2073 6f20 7765 2063 616e 2774 2073 6574 so we can't set │ │ │ +001f5d70: 2075 7020 6d6f 756e 7420 6f70 7469 6f6e up mount option │ │ │ +001f5d80: 7322 2026 6774 3b26 616d 703b 323b 0a20 s" >&2;. │ │ │ +001f5d90: 2020 2020 2020 2020 2020 2020 2020 2065 e │ │ │ +001f5da0: 6368 6f20 224e 6f74 2072 656d 6564 6961 cho "Not remedia │ │ │ +001f5db0: 7469 6e67 2c20 6265 6361 7573 6520 7468 ting, because th │ │ │ +001f5dc0: 6572 6520 6973 206e 6f20 7265 636f 7264 ere is no record │ │ │ +001f5dd0: 206f 6620 2f76 6172 2069 6e20 2f65 7463 of /var in /etc │ │ │ +001f5de0: 2f66 7374 6162 2220 2667 743b 2661 6d70 /fstab" >& │ │ │ +001f5df0: 3b32 3b20 7265 7475 726e 2031 3b20 7d0a ;2; return 1; }. │ │ │ +001f5e00: 2020 2020 0a0a 0a20 2020 206d 6f75 6e74 ... mount │ │ │ +001f5e10: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567 _point_match_reg │ │ │ +001f5e20: 6578 703d 2224 2870 7269 6e74 6620 225e exp="$(printf "^ │ │ │ +001f5e30: 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e 235d [[:space:]]*[^#] │ │ │ +001f5e40: 2e2a 5b5b 3a73 7061 6365 3a5d 5d25 735b .*[[:space:]]%s[ │ │ │ +001f5e50: 5b3a 7370 6163 653a 5d5d 2220 2f76 6172 [:space:]]" /var │ │ │ +001f5e60: 2922 0a0a 2020 2020 2320 4966 2074 6865 )".. # If the │ │ │ +001f5e70: 206d 6f75 6e74 2070 6f69 6e74 2069 7320 mount point is │ │ │ +001f5e80: 6e6f 7420 696e 202f 6574 632f 6673 7461 not in /etc/fsta │ │ │ +001f5e90: 622c 2067 6574 2070 7265 7669 6f75 7320 b, get previous │ │ │ +001f5ea0: 6d6f 756e 7420 6f70 7469 6f6e 7320 6672 mount options fr │ │ │ +001f5eb0: 6f6d 202f 6574 632f 6d74 6162 0a20 2020 om /etc/mtab. │ │ │ +001f5ec0: 2069 6620 2120 6772 6570 202d 7120 2224 if ! grep -q "$ │ │ │ +001f5ed0: 6d6f 756e 745f 706f 696e 745f 6d61 7463 mount_point_matc │ │ │ +001f5ee0: 685f 7265 6765 7870 2220 2f65 7463 2f66 h_regexp" /etc/f │ │ │ +001f5ef0: 7374 6162 3b20 7468 656e 0a20 2020 2020 stab; then. │ │ │ +001f5f00: 2020 2023 2072 756e 7469 6d65 206f 7074 # runtime opt │ │ │ +001f5f10: 7320 7769 7468 6f75 7420 736f 6d65 2061 s without some a │ │ │ +001f5f20: 7574 6f6d 6174 6963 206b 6572 6e65 6c2f utomatic kernel/ │ │ │ +001f5f30: 7573 6572 7370 6163 652d 6164 6465 6420 userspace-added │ │ │ +001f5f40: 6465 6661 756c 7473 0a20 2020 2020 2020 defaults. │ │ │ +001f5f50: 2070 7265 7669 6f75 735f 6d6f 756e 745f previous_mount_ │ │ │ +001f5f60: 6f70 7473 3d24 2867 7265 7020 2224 6d6f opts=$(grep "$mo │ │ │ +001f5f70: 756e 745f 706f 696e 745f 6d61 7463 685f unt_point_match_ │ │ │ +001f5f80: 7265 6765 7870 2220 2f65 7463 2f6d 7461 regexp" /etc/mta │ │ │ +001f5f90: 6220 7c20 6865 6164 202d 3120 7c20 2061 b | head -1 | a │ │ │ +001f5fa0: 776b 2027 7b70 7269 6e74 2024 347d 2720 wk '{print $4}' │ │ │ +001f5fb0: 5c0a 2020 2020 2020 2020 2020 2020 2020 \. │ │ │ +001f5fc0: 2020 2020 2020 7c20 7365 6420 2d45 2022 | sed -E " │ │ │ +001f5fd0: 732f 2872 777c 6465 6661 756c 7473 7c73 s/(rw|defaults|s │ │ │ +001f5fe0: 6563 6c61 6265 6c7c 6e6f 6578 6563 2928 eclabel|noexec)( │ │ │ +001f5ff0: 2c7c 2429 2f2f 673b 732f 2c24 2f2f 2229 ,|$)//g;s/,$//") │ │ │ +001f6000: 0a20 2020 2020 2020 205b 2022 2470 7265 . [ "$pre │ │ │ +001f6010: 7669 6f75 735f 6d6f 756e 745f 6f70 7473 vious_mount_opts │ │ │ +001f6020: 2220 5d20 2661 6d70 3b26 616d 703b 2070 " ] && p │ │ │ +001f6030: 7265 7669 6f75 735f 6d6f 756e 745f 6f70 revious_mount_op │ │ │ +001f6040: 7473 2b3d 222c 220a 2020 2020 2020 2020 ts+=",". │ │ │ +001f6050: 2320 496e 2069 736f 3936 3630 2066 696c # In iso9660 fil │ │ │ +001f6060: 6573 7973 7465 6d73 206d 7461 6220 636f esystems mtab co │ │ │ +001f6070: 756c 6420 6465 7363 7269 6265 2061 2022 uld describe a " │ │ │ +001f6080: 626c 6f63 6b73 697a 6522 2076 616c 7565 blocksize" value │ │ │ +001f6090: 2c20 7468 6973 2073 686f 756c 6420 6265 , this should be │ │ │ +001f60a0: 2072 6566 6c65 6374 6564 2069 6e0a 2020 reflected in. │ │ │ +001f60b0: 2020 2020 2020 2320 6673 7461 6220 6173 # fstab as │ │ │ +001f60c0: 2022 626c 6f63 6b22 2e20 2054 6865 206e "block". The n │ │ │ +001f60d0: 6578 7420 7661 7269 6162 6c65 2069 7320 ext variable is │ │ │ +001f60e0: 746f 2073 6174 6973 6679 2073 6865 6c6c to satisfy shell │ │ │ +001f60f0: 6368 6563 6b20 5343 3230 3530 2e0a 2020 check SC2050.. │ │ │ +001f6100: 2020 2020 2020 6673 5f74 7970 653d 2222 fs_type="" │ │ │ +001f6110: 0a20 2020 2020 2020 2069 6620 5b20 2022 . if [ " │ │ │ +001f6120: 2466 735f 7479 7065 2220 3d3d 2022 6973 $fs_type" == "is │ │ │ +001f6130: 6f39 3636 3022 205d 203b 2074 6865 6e0a o9660" ] ; then. │ │ │ +001f6140: 2020 2020 2020 2020 2020 2020 7072 6576 prev │ │ │ +001f6150: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d ious_mount_opts= │ │ │ +001f6160: 2428 7365 6420 2773 2f62 6c6f 636b 7369 $(sed 's/blocksi │ │ │ +001f6170: 7a65 3d2f 626c 6f63 6b3d 2f27 2026 6c74 ze=/block=/' < │ │ │ +001f6180: 3b26 6c74 3b26 6c74 3b20 2224 7072 6576 ;<< "$prev │ │ │ +001f6190: 696f 7573 5f6d 6f75 6e74 5f6f 7074 7322 ious_mount_opts" │ │ │ +001f61a0: 290a 2020 2020 2020 2020 6669 0a20 2020 ). fi. │ │ │ +001f61b0: 2020 2020 2065 6368 6f20 2220 2f76 6172 echo " /var │ │ │ +001f61c0: 2020 6465 6661 756c 7473 2c24 7b70 7265 defaults,${pre │ │ │ +001f61d0: 7669 6f75 735f 6d6f 756e 745f 6f70 7473 vious_mount_opts │ │ │ +001f61e0: 7d6e 6f65 7865 6320 3020 3022 2026 6774 }noexec 0 0" > │ │ │ +001f61f0: 3b26 6774 3b20 2f65 7463 2f66 7374 6162 ;> /etc/fstab │ │ │ +001f6200: 0a20 2020 2023 2049 6620 7468 6520 6d6f . # If the mo │ │ │ +001f6210: 756e 745f 6f70 7420 6f70 7469 6f6e 2069 unt_opt option i │ │ │ +001f6220: 7320 6e6f 7420 616c 7265 6164 7920 696e s not already in │ │ │ +001f6230: 2074 6865 206d 6f75 6e74 2070 6f69 6e74 the mount point │ │ │ +001f6240: 2773 202f 6574 632f 6673 7461 6220 656e 's /etc/fstab en │ │ │ +001f6250: 7472 792c 2061 6464 2069 740a 2020 2020 try, add it. │ │ │ +001f6260: 656c 6966 2021 2067 7265 7020 2224 6d6f elif ! grep "$mo │ │ │ +001f6270: 756e 745f 706f 696e 745f 6d61 7463 685f unt_point_match_ │ │ │ +001f6280: 7265 6765 7870 2220 2f65 7463 2f66 7374 regexp" /etc/fst │ │ │ +001f6290: 6162 207c 2067 7265 7020 2d71 2022 6e6f ab | grep -q "no │ │ │ +001f62a0: 6578 6563 223b 2074 6865 6e0a 2020 2020 exec"; then. │ │ │ +001f62b0: 2020 2020 7072 6576 696f 7573 5f6d 6f75 previous_mou │ │ │ +001f62c0: 6e74 5f6f 7074 733d 2428 6772 6570 2022 nt_opts=$(grep " │ │ │ +001f62d0: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174 $mount_point_mat │ │ │ +001f62e0: 6368 5f72 6567 6578 7022 202f 6574 632f ch_regexp" /etc/ │ │ │ +001f62f0: 6673 7461 6220 7c20 6177 6b20 277b 7072 fstab | awk '{pr │ │ │ +001f6300: 696e 7420 2434 7d27 290a 2020 2020 2020 int $4}'). │ │ │ +001f6310: 2020 7365 6420 2d69 2022 737c 5c28 247b sed -i "s|\(${ │ │ │ +001f6320: 6d6f 756e 745f 706f 696e 745f 6d61 7463 mount_point_matc │ │ │ +001f6330: 685f 7265 6765 7870 7d2e 2a24 7b70 7265 h_regexp}.*${pre │ │ │ +001f6340: 7669 6f75 735f 6d6f 756e 745f 6f70 7473 vious_mount_opts │ │ │ +001f6350: 7d5c 297c 5c31 2c6e 6f65 7865 637c 2220 }\)|\1,noexec|" │ │ │ +001f6360: 2f65 7463 2f66 7374 6162 0a20 2020 2066 /etc/fstab. f │ │ │ +001f6370: 690a 0a0a 2020 2020 6966 206d 6b64 6972 i... if mkdir │ │ │ +001f6380: 202d 7020 222f 7661 7222 3b20 7468 656e -p "/var"; then │ │ │ +001f6390: 0a20 2020 2020 2020 2069 6620 6d6f 756e . if moun │ │ │ +001f63a0: 7470 6f69 6e74 202d 7120 222f 7661 7222 tpoint -q "/var" │ │ │ +001f63b0: 3b20 7468 656e 0a20 2020 2020 2020 2020 ; then. │ │ │ +001f63c0: 2020 206d 6f75 6e74 202d 6f20 7265 6d6f mount -o remo │ │ │ +001f63d0: 756e 7420 2d2d 7461 7267 6574 2022 2f76 unt --target "/v │ │ │ +001f63e0: 6172 220a 2020 2020 2020 2020 6669 0a20 ar". fi. │ │ │ +001f63f0: 2020 2066 690a 7d0a 0a70 6572 666f 726d fi.}..perform │ │ │ +001f6400: 5f72 656d 6564 6961 7469 6f6e 0a0a 656c _remediation..el │ │ │ +001f6410: 7365 0a20 2020 2026 6774 3b26 616d 703b se. >& │ │ │ +001f6420: 3220 6563 686f 2027 5265 6d65 6469 6174 2 echo 'Remediat │ │ │ +001f6430: 696f 6e20 6973 206e 6f74 2061 7070 6c69 ion is not appli │ │ │ +001f6440: 6361 626c 652c 206e 6f74 6869 6e67 2077 cable, nothing w │ │ │ +001f6450: 6173 2064 6f6e 6527 0a66 690a 3c2f 636f as done'.fi.

< │ │ │ +001f6470: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +001f6480: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +001f6490: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +001f64a0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +001f64b0: 6436 3131 2220 7461 6269 6e64 6578 3d22 d611" tabindex=" │ │ │ +001f64c0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +001f64d0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +001f64e0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +001f64f0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +001f6500: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +001f6510: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ +001f6520: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +001f6530: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +001f65d0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr> │ │ │ +001f6620: 3c74 723e 3c74 683e 5374 7261 7465 6779
.pa
│ │ │ +001f6660: 7274 202f 7661 7220 2d2d 6d6f 756e 746f  rt /var --mounto
│ │ │ +001f6670: 7074 696f 6e73 3d22 6e6f 6578 6563 220a  ptions="noexec".
│ │ │  001f6680: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
Remediation │ │ │ -001f6f90: 2041 6e61 636f 6e64 6120 736e 6970 7065 Anaconda snippe │ │ │ -001f6fa0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -001f7020: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr> │ │ │ -001f7060: 3c74 643e 6869 6768 3c2f 7464 3e3c 2f74 < │ │ │ -001f70b0: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
Co │ │ │ +001f65b0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +001f65e0: 6e3a 3c2f 7468 3e3c 7464 3e68 6967 683c n:high< │ │ │ +001f65f0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +001f6630: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +001f6640: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexit │ │ │ -001f7030: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ -001f7050: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:high
Reboot │ │ │ -001f7080: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -001f7090: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
│ │ │ -001f70d0: 3c63 6f64 653e 0a70 6172 7420 2f76 6172  .part /var
│ │ │ -001f70e0: 202d 2d6d 6f75 6e74 6f70 7469 6f6e 733d   --mountoptions=
│ │ │ -001f70f0: 226e 6f73 7569 6422 0a3c 2f63 6f64 653e  "nosuid".
│ │ │ -001f7100: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -001f71b0: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -001f71c0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -001f71d0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -001f7200: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -001f7270: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption: │ │ │ -001f7290: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -001f72c0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Comple │ │ │ -001f7250: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -001f7260: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
high
Reb │ │ │ -001f72a0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -001f72b0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:configure< │ │ │ -001f72e0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -001f7300: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ -001f7310: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ -001f7320: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ -001f7330: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ -001f7340: 2020 7461 6773 3a0a 2020 2d20 636f 6e66    tags:.  - conf
│ │ │ -001f7350: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -001f7360: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -001f7370: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -001f7380: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -001f7390: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -001f73a0: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6e  unt_option_var_n
│ │ │ -001f73b0: 6f73 7569 640a 2020 2d20 6e6f 5f72 6562  osuid.  - no_reb
│ │ │ -001f73c0: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61  oot_needed..- na
│ │ │ -001f73d0: 6d65 3a20 2741 6464 206e 6f73 7569 6420  me: 'Add nosuid 
│ │ │ -001f73e0: 4f70 7469 6f6e 2074 6f20 2f76 6172 3a20  Option to /var: 
│ │ │ -001f73f0: 4368 6563 6b20 696e 666f 726d 6174 696f  Check informatio
│ │ │ -001f7400: 6e20 6173 736f 6369 6174 6564 2074 6f20  n associated to 
│ │ │ -001f7410: 6d6f 756e 7470 6f69 6e74 270a 2020 616e  mountpoint'.  an
│ │ │ -001f7420: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ -001f7430: 6d6d 616e 643a 2066 696e 646d 6e74 202d  mmand: findmnt -
│ │ │ -001f7440: 2d66 7374 6162 2027 2f76 6172 270a 2020  -fstab '/var'.  
│ │ │ -001f7450: 7265 6769 7374 6572 3a20 6465 7669 6365  register: device
│ │ │ -001f7460: 5f6e 616d 650a 2020 6661 696c 6564 5f77  _name.  failed_w
│ │ │ -001f7470: 6865 6e3a 2064 6576 6963 655f 6e61 6d65  hen: device_name
│ │ │ -001f7480: 2e72 6320 2667 743b 2031 0a20 2063 6861  .rc > 1.  cha
│ │ │ -001f7490: 6e67 6564 5f77 6865 6e3a 2066 616c 7365  nged_when: false
│ │ │ -001f74a0: 0a20 2063 6865 636b 5f6d 6f64 653a 2066  .  check_mode: f
│ │ │ -001f74b0: 616c 7365 0a20 2077 6865 6e3a 0a20 202d  alse.  when:.  -
│ │ │ -001f74c0: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ -001f74d0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001f74e0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001f74f0: 2272 706d 2d6f 7374 7265 6522 2069 6e20  "rpm-ostree" in 
│ │ │ -001f7500: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001f7510: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001f7520: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -001f7530: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001f7540: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ -001f7550: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ -001f7560: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001f7570: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001f7580: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001f7590: 6c65 5f70 726f 635f 636d 646c 696e 6520  le_proc_cmdline 
│ │ │ -001f75a0: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ -001f75b0: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ -001f75c0: 6f6e 5f74 7970 6520 696e 0a20 2020 205b  on_type in.    [
│ │ │ -001f75d0: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -001f75e0: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -001f75f0: 616e 222c 2022 636f 6e74 6169 6e65 7222  an", "container"
│ │ │ -001f7600: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ -001f7610: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ -001f7620: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ -001f7630: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ -001f7640: 6973 7427 0a20 2074 6167 733a 0a20 202d  ist'.  tags:.  -
│ │ │ -001f7650: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ -001f7660: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ -001f7670: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -001f7680: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -001f7690: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -001f76a0: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ -001f76b0: 7661 725f 6e6f 7375 6964 0a20 202d 206e  var_nosuid.  - n
│ │ │ -001f76c0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -001f76d0: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ -001f76e0: 7375 6964 204f 7074 696f 6e20 746f 202f  suid Option to /
│ │ │ -001f76f0: 7661 723a 2043 7265 6174 6520 6d6f 756e  var: Create moun
│ │ │ -001f7700: 745f 696e 666f 2064 6963 7469 6f6e 6172  t_info dictionar
│ │ │ -001f7710: 7920 7661 7269 6162 6c65 270a 2020 7365  y variable'.  se
│ │ │ -001f7720: 745f 6661 6374 3a0a 2020 2020 6d6f 756e  t_fact:.    moun
│ │ │ -001f7730: 745f 696e 666f 3a20 277b 7b20 6d6f 756e  t_info: '{{ moun
│ │ │ -001f7740: 745f 696e 666f 7c64 6566 6175 6c74 287b  t_info|default({
│ │ │ -001f7750: 7d29 7c63 6f6d 6269 6e65 287b 6974 656d  })|combine({item
│ │ │ -001f7760: 2e30 3a20 6974 656d 2e31 7d29 207d 7d27  .0: item.1}) }}'
│ │ │ -001f7770: 0a20 2077 6974 685f 746f 6765 7468 6572  .  with_together
│ │ │ -001f7780: 3a0a 2020 2d20 277b 7b20 6465 7669 6365  :.  - '{{ device
│ │ │ -001f7790: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ -001f77a0: 6573 5b30 5d2e 7370 6c69 7428 2920 7c20  es[0].split() | 
│ │ │ -001f77b0: 6d61 7028 2727 6c6f 7765 7227 2729 207c  map(''lower'') |
│ │ │ -001f77c0: 206c 6973 7420 7d7d 270a 2020 2d20 277b   list }}'.  - '{
│ │ │ -001f77d0: 7b20 6465 7669 6365 5f6e 616d 652e 7374  { device_name.st
│ │ │ -001f77e0: 646f 7574 5f6c 696e 6573 5b31 5d2e 7370  dout_lines[1].sp
│ │ │ -001f77f0: 6c69 7428 2920 7c20 6c69 7374 207d 7d27  lit() | list }}'
│ │ │ -001f7800: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ -001f7810: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ -001f7820: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001f7830: 6163 6b61 6765 7320 616e 6420 2272 706d  ackages and "rpm
│ │ │ -001f7840: 2d6f 7374 7265 6522 2069 6e20 616e 7369  -ostree" in ansi
│ │ │ -001f7850: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001f7860: 6573 0a20 2020 2061 6e64 2022 626f 6f74  es.    and "boot
│ │ │ -001f7870: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ -001f7880: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001f7890: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ -001f78a0: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ -001f78b0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001f78c0: 6573 0a20 2020 2061 6e64 2022 6f73 7472  es.    and "ostr
│ │ │ -001f78d0: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ -001f78e0: 726f 635f 636d 646c 696e 6520 2920 616e  roc_cmdline ) an
│ │ │ -001f78f0: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ -001f7900: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ -001f7910: 7970 6520 696e 0a20 2020 205b 2264 6f63  ype in.    ["doc
│ │ │ -001f7920: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ -001f7930: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ -001f7940: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ -001f7950: 290a 2020 2d20 2722 2f76 6172 2220 696e  ).  - '"/var" in
│ │ │ -001f7960: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ -001f7970: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ -001f7980: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ -001f7990: 0a20 202d 2064 6576 6963 655f 6e61 6d65  .  - device_name
│ │ │ -001f79a0: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ -001f79b0: 6564 2061 6e64 2064 6576 6963 655f 6e61  ed and device_na
│ │ │ -001f79c0: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320  me.stdout_lines 
│ │ │ -001f79d0: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ -001f79e0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001f79f0: 7574 207c 206c 656e 6774 6820 2667 743b  ut | length >
│ │ │ -001f7a00: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ -001f7a10: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ -001f7a20: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ -001f7a30: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ -001f7a40: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ -001f7a50: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -001f7a60: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76  - mount_option_v
│ │ │ -001f7a70: 6172 5f6e 6f73 7569 640a 2020 2d20 6e6f  ar_nosuid.  - no
│ │ │ -001f7a80: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ -001f7a90: 2d20 6e61 6d65 3a20 2741 6464 206e 6f73  - name: 'Add nos
│ │ │ -001f7aa0: 7569 6420 4f70 7469 6f6e 2074 6f20 2f76  uid Option to /v
│ │ │ -001f7ab0: 6172 3a20 4966 202f 7661 7220 6e6f 7420  ar: If /var not 
│ │ │ -001f7ac0: 6d6f 756e 7465 642c 2063 7261 6674 206d  mounted, craft m
│ │ │ -001f7ad0: 6f75 6e74 5f69 6e66 6f20 6d61 6e75 616c  ount_info manual
│ │ │ -001f7ae0: 6c79 270a 2020 7365 745f 6661 6374 3a0a  ly'.  set_fact:.
│ │ │ -001f7af0: 2020 2020 6d6f 756e 745f 696e 666f 3a20      mount_info: 
│ │ │ -001f7b00: 277b 7b20 6d6f 756e 745f 696e 666f 7c64  '{{ mount_info|d
│ │ │ -001f7b10: 6566 6175 6c74 287b 7d29 7c63 6f6d 6269  efault({})|combi
│ │ │ -001f7b20: 6e65 287b 6974 656d 2e30 3a20 6974 656d  ne({item.0: item
│ │ │ -001f7b30: 2e31 7d29 207d 7d27 0a20 2077 6974 685f  .1}) }}'.  with_
│ │ │ -001f7b40: 746f 6765 7468 6572 3a0a 2020 2d20 2d20  together:.  - - 
│ │ │ -001f7b50: 7461 7267 6574 0a20 2020 202d 2073 6f75  target.    - sou
│ │ │ -001f7b60: 7263 650a 2020 2020 2d20 6673 7479 7065  rce.    - fstype
│ │ │ -001f7b70: 0a20 2020 202d 206f 7074 696f 6e73 0a20  .    - options. 
│ │ │ -001f7b80: 202d 202d 202f 7661 720a 2020 2020 2d20   - - /var.    - 
│ │ │ -001f7b90: 2727 0a20 2020 202d 2027 270a 2020 2020  ''.    - ''.    
│ │ │ -001f7ba0: 2d20 6465 6661 756c 7473 0a20 2077 6865  - defaults.  whe
│ │ │ -001f7bb0: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ -001f7bc0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -001f7bd0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001f7be0: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ -001f7bf0: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ -001f7c00: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001f7c10: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -001f7c20: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001f7c30: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ -001f7c40: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001f7c50: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001f7c60: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001f7c70: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -001f7c80: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -001f7c90: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ -001f7ca0: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001f7cb0: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001f7cc0: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ -001f7cd0: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -001f7ce0: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ -001f7cf0: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001f7d00: 2722 2f76 6172 2220 696e 2061 6e73 6962  '"/var" in ansib
│ │ │ -001f7d10: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ -001f7d20: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ -001f7d30: 2229 207c 206c 6973 7427 0a20 202d 2028  ") | list'.  - (
│ │ │ -001f7d40: 222d 2d66 7374 6162 2220 7c20 6c65 6e67  "--fstab" | leng
│ │ │ -001f7d50: 7468 203d 3d20 3029 0a20 202d 2064 6576  th == 0).  - dev
│ │ │ -001f7d60: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ -001f7d70: 6973 2064 6566 696e 6564 2061 6e64 2064  is defined and d
│ │ │ -001f7d80: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001f7d90: 745f 6c69 6e65 7320 6973 2064 6566 696e  t_lines is defin
│ │ │ -001f7da0: 6564 0a20 202d 2028 6465 7669 6365 5f6e  ed.  - (device_n
│ │ │ -001f7db0: 616d 652e 7374 646f 7574 207c 206c 656e  ame.stdout | len
│ │ │ -001f7dc0: 6774 6820 3d3d 2030 290a 2020 7461 6773  gth == 0).  tags
│ │ │ -001f7dd0: 3a0a 2020 2d20 636f 6e66 6967 7572 655f  :.  - configure_
│ │ │ -001f7de0: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001f7df0: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001f7e00: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001f7e10: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001f7e20: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001f7e30: 7469 6f6e 5f76 6172 5f6e 6f73 7569 640a  tion_var_nosuid.
│ │ │ -001f7e40: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001f7e50: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ -001f7e60: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ -001f7e70: 2074 6f20 2f76 6172 3a20 4d61 6b65 2073   to /var: Make s
│ │ │ -001f7e80: 7572 6520 6e6f 7375 6964 206f 7074 696f  ure nosuid optio
│ │ │ -001f7e90: 6e20 6973 2070 6172 7420 6f66 2074 6865  n is part of the
│ │ │ -001f7ea0: 2074 6f20 2f76 6172 0a20 2020 206f 7074   to /var.    opt
│ │ │ -001f7eb0: 696f 6e73 270a 2020 7365 745f 6661 6374  ions'.  set_fact
│ │ │ -001f7ec0: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ -001f7ed0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001f7ee0: 207c 2063 6f6d 6269 6e65 2820 7b27 276f   | combine( {''o
│ │ │ -001f7ef0: 7074 696f 6e73 2727 3a27 2727 277e 286d  ptions'':''''~(m
│ │ │ -001f7f00: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -001f7f10: 7320 7c0a 2020 2020 2020 6465 6661 756c  s |.      defaul
│ │ │ -001f7f20: 7428 2727 2727 2929 7e28 2727 2c27 2720  t(''''))~('','' 
│ │ │ -001f7f30: 6966 2028 6d6f 756e 745f 696e 666f 2e6f  if (mount_info.o
│ │ │ -001f7f40: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ -001f7f50: 2827 2727 2729 2920 656c 7365 2027 2727  ('''')) else '''
│ │ │ -001f7f60: 2729 7e27 276e 6f73 7569 6427 270a 2020  ')~''nosuid''.  
│ │ │ -001f7f70: 2020 2020 7d29 207d 7d27 0a20 2077 6865      }) }}'.  whe
│ │ │ -001f7f80: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ -001f7f90: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -001f7fa0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001f7fb0: 7320 616e 6420 2272 706d 2d6f 7374 7265  s and "rpm-ostre
│ │ │ -001f7fc0: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ -001f7fd0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001f7fe0: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -001f7ff0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001f8000: 636b 6167 6573 2061 6e64 206e 6f74 2022  ckages and not "
│ │ │ -001f8010: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001f8020: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001f8030: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001f8040: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -001f8050: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -001f8060: 646c 696e 6520 2920 616e 6420 6e6f 7420  dline ) and not 
│ │ │ -001f8070: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001f8080: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001f8090: 0a20 2020 205b 2264 6f63 6b65 7222 2c20  .    ["docker", 
│ │ │ -001f80a0: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -001f80b0: 2022 706f 646d 616e 222c 2022 636f 6e74   "podman", "cont
│ │ │ -001f80c0: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001f80d0: 2722 2f76 6172 2220 696e 2061 6e73 6962  '"/var" in ansib
│ │ │ -001f80e0: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ -001f80f0: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ -001f8100: 2229 207c 206c 6973 7427 0a20 202d 206d  ") | list'.  - m
│ │ │ -001f8110: 6f75 6e74 5f69 6e66 6f20 6973 2064 6566  ount_info is def
│ │ │ -001f8120: 696e 6564 2061 6e64 2022 6e6f 7375 6964  ined and "nosuid
│ │ │ -001f8130: 2220 6e6f 7420 696e 2028 6d6f 756e 745f  " not in (mount_
│ │ │ -001f8140: 696e 666f 2e6f 7074 696f 6e73 207c 2064  info.options | d
│ │ │ -001f8150: 6566 6175 6c74 2827 2729 290a 2020 7461  efault('')).  ta
│ │ │ -001f8160: 6773 3a0a 2020 2d20 636f 6e66 6967 7572  gs:.  - configur
│ │ │ -001f8170: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -001f8180: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -001f8190: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001f81a0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -001f81b0: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ -001f81c0: 6f70 7469 6f6e 5f76 6172 5f6e 6f73 7569  option_var_nosui
│ │ │ -001f81d0: 640a 2020 2d20 6e6f 5f72 6562 6f6f 745f  d.  - no_reboot_
│ │ │ -001f81e0: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ -001f81f0: 2741 6464 206e 6f73 7569 6420 4f70 7469  'Add nosuid Opti
│ │ │ -001f8200: 6f6e 2074 6f20 2f76 6172 3a20 456e 7375  on to /var: Ensu
│ │ │ -001f8210: 7265 202f 7661 7220 6973 206d 6f75 6e74  re /var is mount
│ │ │ -001f8220: 6564 2077 6974 6820 6e6f 7375 6964 206f  ed with nosuid o
│ │ │ -001f8230: 7074 696f 6e27 0a20 2061 6e73 6962 6c65  ption'.  ansible
│ │ │ -001f8240: 2e70 6f73 6978 2e6d 6f75 6e74 3a0a 2020  .posix.mount:.  
│ │ │ -001f8250: 2020 7061 7468 3a20 2f76 6172 0a20 2020    path: /var.   
│ │ │ -001f8260: 2073 7263 3a20 277b 7b20 6d6f 756e 745f   src: '{{ mount_
│ │ │ -001f8270: 696e 666f 2e73 6f75 7263 6520 7c20 6465  info.source | de
│ │ │ -001f8280: 6661 756c 7428 2727 2727 2920 7d7d 270a  fault('''') }}'.
│ │ │ -001f8290: 2020 2020 6f70 7473 3a20 277b 7b20 6d6f      opts: '{{ mo
│ │ │ -001f82a0: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ -001f82b0: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ -001f82c0: 207d 7d27 0a20 2020 2073 7461 7465 3a20   }}'.    state: 
│ │ │ -001f82d0: 6d6f 756e 7465 640a 2020 2020 6673 7479  mounted.    fsty
│ │ │ -001f82e0: 7065 3a20 277b 7b20 6d6f 756e 745f 696e  pe: '{{ mount_in
│ │ │ -001f82f0: 666f 2e66 7374 7970 6520 7c20 6465 6661  fo.fstype | defa
│ │ │ -001f8300: 756c 7428 2727 2727 2920 7d7d 270a 2020  ult('''') }}'.  
│ │ │ -001f8310: 7265 6769 7374 6572 3a20 6d6f 756e 745f  register: mount_
│ │ │ -001f8320: 7265 7375 6c74 0a20 2066 6169 6c65 645f  result.  failed_
│ │ │ -001f8330: 7768 656e 3a0a 2020 2d20 6d6f 756e 745f  when:.  - mount_
│ │ │ -001f8340: 7265 7375 6c74 2069 7320 6661 696c 6564  result is failed
│ │ │ -001f8350: 0a20 202d 2027 2727 7461 7267 6574 2069  .  - '''target i
│ │ │ -001f8360: 7320 6275 7379 2727 206e 6f74 2069 6e20  s busy'' not in 
│ │ │ -001f8370: 286d 6f75 6e74 5f72 6573 756c 742e 6d73  (mount_result.ms
│ │ │ -001f8380: 6720 7c20 6465 6661 756c 7428 2727 2727  g | default(''''
│ │ │ -001f8390: 2929 270a 2020 2d20 2727 2761 6c72 6561  ))'.  - '''alrea
│ │ │ -001f83a0: 6479 206d 6f75 6e74 6564 2727 206e 6f74  dy mounted'' not
│ │ │ -001f83b0: 2069 6e20 286d 6f75 6e74 5f72 6573 756c   in (mount_resul
│ │ │ -001f83c0: 742e 6d73 6720 7c20 6465 6661 756c 7428  t.msg | default(
│ │ │ -001f83d0: 2727 2727 2929 270a 2020 7768 656e 3a0a  ''''))'.  when:.
│ │ │ -001f83e0: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ -001f83f0: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -001f8400: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001f8410: 6e64 2022 7270 6d2d 6f73 7472 6565 2220  nd "rpm-ostree" 
│ │ │ -001f8420: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001f8430: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001f8440: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ -001f8450: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001f8460: 6765 7320 616e 6420 6e6f 7420 226f 7065  ges and not "ope
│ │ │ -001f8470: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ -001f8480: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001f8490: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001f84a0: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ -001f84b0: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ -001f84c0: 6e65 2029 2061 6e64 206e 6f74 2028 2061  ne ) and not ( a
│ │ │ -001f84d0: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ -001f84e0: 6174 696f 6e5f 7479 7065 2069 6e0a 2020  ation_type in.  
│ │ │ -001f84f0: 2020 5b22 646f 636b 6572 222c 2022 6c78    ["docker", "lx
│ │ │ -001f8500: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ -001f8510: 6f64 6d61 6e22 2c20 2263 6f6e 7461 696e  odman", "contain
│ │ │ -001f8520: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ -001f8530: 7661 7222 2069 6e20 616e 7369 626c 655f  var" in ansible_
│ │ │ -001f8540: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ -001f8550: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ -001f8560: 7c20 6c69 7374 270a 2020 2d20 6d6f 756e  | list'.  - moun
│ │ │ -001f8570: 745f 696e 666f 2069 7320 6465 6669 6e65  t_info is define
│ │ │ -001f8580: 640a 2020 2d20 2864 6576 6963 655f 6e61  d.  - (device_na
│ │ │ -001f8590: 6d65 2e73 7464 6f75 7420 6973 2064 6566  me.stdout is def
│ │ │ -001f85a0: 696e 6564 2061 6e64 2028 6465 7669 6365  ined and (device
│ │ │ -001f85b0: 5f6e 616d 652e 7374 646f 7574 207c 206c  _name.stdout | l
│ │ │ -001f85c0: 656e 6774 6820 2667 743b 2030 2929 206f  ength > 0)) o
│ │ │ -001f85d0: 7220 2822 2d2d 6673 7461 6222 0a20 2020  r ("--fstab".   
│ │ │ -001f85e0: 207c 206c 656e 6774 6820 3d3d 2030 290a   | length == 0).
│ │ │ -001f85f0: 2020 7461 6773 3a0a 2020 2d20 636f 6e66    tags:.  - conf
│ │ │ -001f8600: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -001f8610: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -001f8620: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -001f8630: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -001f8640: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -001f8650: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6e  unt_option_var_n
│ │ │ -001f8660: 6f73 7569 640a 2020 2d20 6e6f 5f72 6562  osuid.  - no_reb
│ │ │ -001f8670: 6f6f 745f 6e65 6564 6564 0a3c 2f63 6f64  oot_needed.
Remed │ │ │ -001f8730: 6961 7469 6f6e 2053 6865 6c6c 2073 6372 iation Shell scr │ │ │ -001f8740: 6970 7420 e287 b23c 2f61 3e3c 6272 3e3c ipt ...
< │ │ │ -001f8750: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -001f8760: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -001f8770: 7365 2220 6964 3d22 6964 3631 3522 3e3c se" id="id615">< │ │ │ -001f8780: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -001f8790: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -001f87a0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -001f87b0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -001f87c0: 3e3c 7472 3e3c 7468 3e52 6562 6f6f 743a >Reboot: │ │ │ -001f87d0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -001f87f0: 3c70 7265 3e3c 636f 6465 3e23 2052 656d
# Rem
│ │ │ -001f8800: 6564 6961 7469 6f6e 2069 7320 6170 706c  ediation is appl
│ │ │ -001f8810: 6963 6162 6c65 206f 6e6c 7920 696e 2063  icable only in c
│ │ │ -001f8820: 6572 7461 696e 2070 6c61 7466 6f72 6d73  ertain platforms
│ │ │ -001f8830: 0a69 6620 2820 2120 2820 7b20 7270 6d20  .if ( ! ( { rpm 
│ │ │ -001f8840: 2d2d 7175 6965 7420 2d71 206b 6572 6e65  --quiet -q kerne
│ │ │ -001f8850: 6c20 3b7d 2026 616d 703b 2661 6d70 3b20  l ;} && 
│ │ │ -001f8860: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ -001f8870: 2072 706d 2d6f 7374 7265 6520 3b7d 2026   rpm-ostree ;} &
│ │ │ -001f8880: 616d 703b 2661 6d70 3b20 7b20 7270 6d20  amp;& { rpm 
│ │ │ -001f8890: 2d2d 7175 6965 7420 2d71 2062 6f6f 7463  --quiet -q bootc
│ │ │ -001f88a0: 203b 7d20 2661 6d70 3b26 616d 703b 207b   ;} && {
│ │ │ -001f88b0: 2021 2072 706d 202d 2d71 7569 6574 202d   ! rpm --quiet -
│ │ │ -001f88c0: 7120 6f70 656e 7368 6966 742d 6b75 6265  q openshift-kube
│ │ │ -001f88d0: 6c65 7420 3b7d 2026 616d 703b 2661 6d70  let ;} &&
│ │ │ -001f88e0: 3b20 285b 202d 6620 2f72 756e 2f6f 7374  ; ([ -f /run/ost
│ │ │ -001f88f0: 7265 652d 626f 6f74 6564 205d 207c 7c20  ree-booted ] || 
│ │ │ -001f8900: 5b20 2d4c 202f 6f73 7472 6565 205d 2920  [ -L /ostree ]) 
│ │ │ -001f8910: 2920 2661 6d70 3b26 616d 703b 2021 2028  ) && ! (
│ │ │ -001f8920: 205b 202d 6620 2f2e 646f 636b 6572 656e   [ -f /.dockeren
│ │ │ -001f8930: 7620 5d20 7c7c 205b 202d 6620 2f72 756e  v ] || [ -f /run
│ │ │ -001f8940: 2f2e 636f 6e74 6169 6e65 7265 6e76 205d  /.containerenv ]
│ │ │ -001f8950: 2029 2029 2026 616d 703b 2661 6d70 3b20   ) ) && 
│ │ │ -001f8960: 7b20 2820 6669 6e64 6d6e 7420 2d2d 6b65  { ( findmnt --ke
│ │ │ -001f8970: 726e 656c 2022 2f76 6172 2220 2667 743b  rnel "/var" >
│ │ │ -001f8980: 202f 6465 762f 6e75 6c6c 207c 7c20 6669   /dev/null || fi
│ │ │ -001f8990: 6e64 6d6e 7420 2d2d 6673 7461 6220 222f  ndmnt --fstab "/
│ │ │ -001f89a0: 7661 7222 2026 6774 3b20 2f64 6576 2f6e  var" > /dev/n
│ │ │ -001f89b0: 756c 6c20 293b 207d 3b20 7468 656e 0a0a  ull ); }; then..
│ │ │ -001f89c0: 6675 6e63 7469 6f6e 2070 6572 666f 726d  function perform
│ │ │ -001f89d0: 5f72 656d 6564 6961 7469 6f6e 207b 0a0a  _remediation {..
│ │ │ -001f89e0: 2020 2020 0a20 2020 2020 2020 2023 2074      .        # t
│ │ │ -001f89f0: 6865 206d 6f75 6e74 2070 6f69 6e74 202f  he mount point /
│ │ │ -001f8a00: 7661 7220 6861 7320 746f 2062 6520 6465  var has to be de
│ │ │ -001f8a10: 6669 6e65 6420 696e 202f 6574 632f 6673  fined in /etc/fs
│ │ │ -001f8a20: 7461 620a 2020 2020 2020 2020 2320 6265  tab.        # be
│ │ │ -001f8a30: 666f 7265 2074 6869 7320 7265 6d65 6469  fore this remedi
│ │ │ -001f8a40: 6174 696f 6e20 6361 6e20 6265 2065 7865  ation can be exe
│ │ │ -001f8a50: 6375 7465 642e 2049 6e20 6361 7365 2069  cuted. In case i
│ │ │ -001f8a60: 7420 6973 206e 6f74 2064 6566 696e 6564  t is not defined
│ │ │ -001f8a70: 2c20 7468 650a 2020 2020 2020 2020 2320  , the.        # 
│ │ │ -001f8a80: 7265 6d65 6469 6174 696f 6e20 6162 6f72  remediation abor
│ │ │ -001f8a90: 7473 2061 6e64 206e 6f20 6368 616e 6765  ts and no change
│ │ │ -001f8aa0: 7320 7265 6761 7264 696e 6720 7468 6520  s regarding the 
│ │ │ -001f8ab0: 6d6f 756e 7420 706f 696e 7420 6172 6520  mount point are 
│ │ │ -001f8ac0: 646f 6e65 2e0a 2020 2020 2020 2020 6d6f  done..        mo
│ │ │ -001f8ad0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001f8ae0: 7265 6765 7870 3d22 2428 7072 696e 7466  regexp="$(printf
│ │ │ -001f8af0: 2022 5e5b 5b3a 7370 6163 653a 5d5d 2a5b   "^[[:space:]]*[
│ │ │ -001f8b00: 5e23 5d2e 2a5b 5b3a 7370 6163 653a 5d5d  ^#].*[[:space:]]
│ │ │ -001f8b10: 2573 5b5b 3a73 7061 6365 3a5d 5d22 2022  %s[[:space:]]" "
│ │ │ -001f8b20: 2f76 6172 2229 220a 0a20 2020 2067 7265  /var")"..    gre
│ │ │ -001f8b30: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001f8b40: 6d61 7463 685f 7265 6765 7870 2220 2d71  match_regexp" -q
│ │ │ -001f8b50: 202f 6574 632f 6673 7461 6220 5c0a 2020   /etc/fstab \.  
│ │ │ -001f8b60: 2020 2020 2020 7c7c 207b 2065 6368 6f20        || { echo 
│ │ │ -001f8b70: 2254 6865 206d 6f75 6e74 2070 6f69 6e74  "The mount point
│ │ │ -001f8b80: 2027 2f76 6172 2720 6973 206e 6f74 2065   '/var' is not e
│ │ │ -001f8b90: 7665 6e20 696e 202f 6574 632f 6673 7461  ven in /etc/fsta
│ │ │ -001f8ba0: 622c 2073 6f20 7765 2063 616e 2774 2073  b, so we can't s
│ │ │ -001f8bb0: 6574 2075 7020 6d6f 756e 7420 6f70 7469  et up mount opti
│ │ │ -001f8bc0: 6f6e 7322 2026 6774 3b26 616d 703b 323b  ons" >&2;
│ │ │ -001f8bd0: 0a20 2020 2020 2020 2020 2020 2020 2020  .               
│ │ │ -001f8be0: 2065 6368 6f20 224e 6f74 2072 656d 6564   echo "Not remed
│ │ │ -001f8bf0: 6961 7469 6e67 2c20 6265 6361 7573 6520  iating, because 
│ │ │ -001f8c00: 7468 6572 6520 6973 206e 6f20 7265 636f  there is no reco
│ │ │ -001f8c10: 7264 206f 6620 2f76 6172 2069 6e20 2f65  rd of /var in /e
│ │ │ -001f8c20: 7463 2f66 7374 6162 2220 2667 743b 2661  tc/fstab" >&a
│ │ │ -001f8c30: 6d70 3b32 3b20 7265 7475 726e 2031 3b20  mp;2; return 1; 
│ │ │ -001f8c40: 7d0a 2020 2020 0a0a 0a20 2020 206d 6f75  }.    ...    mou
│ │ │ -001f8c50: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001f8c60: 6567 6578 703d 2224 2870 7269 6e74 6620  egexp="$(printf 
│ │ │ -001f8c70: 225e 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e  "^[[:space:]]*[^
│ │ │ -001f8c80: 235d 2e2a 5b5b 3a73 7061 6365 3a5d 5d25  #].*[[:space:]]%
│ │ │ -001f8c90: 735b 5b3a 7370 6163 653a 5d5d 2220 2f76  s[[:space:]]" /v
│ │ │ -001f8ca0: 6172 2922 0a0a 2020 2020 2320 4966 2074  ar)"..    # If t
│ │ │ -001f8cb0: 6865 206d 6f75 6e74 2070 6f69 6e74 2069  he mount point i
│ │ │ -001f8cc0: 7320 6e6f 7420 696e 202f 6574 632f 6673  s not in /etc/fs
│ │ │ -001f8cd0: 7461 622c 2067 6574 2070 7265 7669 6f75  tab, get previou
│ │ │ -001f8ce0: 7320 6d6f 756e 7420 6f70 7469 6f6e 7320  s mount options 
│ │ │ -001f8cf0: 6672 6f6d 202f 6574 632f 6d74 6162 0a20  from /etc/mtab. 
│ │ │ -001f8d00: 2020 2069 6620 2120 6772 6570 202d 7120     if ! grep -q 
│ │ │ -001f8d10: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ -001f8d20: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ -001f8d30: 2f66 7374 6162 3b20 7468 656e 0a20 2020  /fstab; then.   
│ │ │ -001f8d40: 2020 2020 2023 2072 756e 7469 6d65 206f       # runtime o
│ │ │ -001f8d50: 7074 7320 7769 7468 6f75 7420 736f 6d65  pts without some
│ │ │ -001f8d60: 2061 7574 6f6d 6174 6963 206b 6572 6e65   automatic kerne
│ │ │ -001f8d70: 6c2f 7573 6572 7370 6163 652d 6164 6465  l/userspace-adde
│ │ │ -001f8d80: 6420 6465 6661 756c 7473 0a20 2020 2020  d defaults.     
│ │ │ -001f8d90: 2020 2070 7265 7669 6f75 735f 6d6f 756e     previous_moun
│ │ │ -001f8da0: 745f 6f70 7473 3d24 2867 7265 7020 2224  t_opts=$(grep "$
│ │ │ -001f8db0: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001f8dc0: 685f 7265 6765 7870 2220 2f65 7463 2f6d  h_regexp" /etc/m
│ │ │ -001f8dd0: 7461 6220 7c20 6865 6164 202d 3120 7c20  tab | head -1 | 
│ │ │ -001f8de0: 2061 776b 2027 7b70 7269 6e74 2024 347d   awk '{print $4}
│ │ │ -001f8df0: 2720 5c0a 2020 2020 2020 2020 2020 2020  ' \.            
│ │ │ -001f8e00: 2020 2020 2020 2020 7c20 7365 6420 2d45          | sed -E
│ │ │ -001f8e10: 2022 732f 2872 777c 6465 6661 756c 7473   "s/(rw|defaults
│ │ │ -001f8e20: 7c73 6563 6c61 6265 6c7c 6e6f 7375 6964  |seclabel|nosuid
│ │ │ -001f8e30: 2928 2c7c 2429 2f2f 673b 732f 2c24 2f2f  )(,|$)//g;s/,$//
│ │ │ -001f8e40: 2229 0a20 2020 2020 2020 205b 2022 2470  ").        [ "$p
│ │ │ -001f8e50: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001f8e60: 7473 2220 5d20 2661 6d70 3b26 616d 703b  ts" ] &&
│ │ │ -001f8e70: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ -001f8e80: 6f70 7473 2b3d 222c 220a 2020 2020 2020  opts+=",".      
│ │ │ -001f8e90: 2020 2320 496e 2069 736f 3936 3630 2066    # In iso9660 f
│ │ │ -001f8ea0: 696c 6573 7973 7465 6d73 206d 7461 6220  ilesystems mtab 
│ │ │ -001f8eb0: 636f 756c 6420 6465 7363 7269 6265 2061  could describe a
│ │ │ -001f8ec0: 2022 626c 6f63 6b73 697a 6522 2076 616c   "blocksize" val
│ │ │ -001f8ed0: 7565 2c20 7468 6973 2073 686f 756c 6420  ue, this should 
│ │ │ -001f8ee0: 6265 2072 6566 6c65 6374 6564 2069 6e0a  be reflected in.
│ │ │ -001f8ef0: 2020 2020 2020 2020 2320 6673 7461 6220          # fstab 
│ │ │ -001f8f00: 6173 2022 626c 6f63 6b22 2e20 2054 6865  as "block".  The
│ │ │ -001f8f10: 206e 6578 7420 7661 7269 6162 6c65 2069   next variable i
│ │ │ -001f8f20: 7320 746f 2073 6174 6973 6679 2073 6865  s to satisfy she
│ │ │ -001f8f30: 6c6c 6368 6563 6b20 5343 3230 3530 2e0a  llcheck SC2050..
│ │ │ -001f8f40: 2020 2020 2020 2020 6673 5f74 7970 653d          fs_type=
│ │ │ -001f8f50: 2222 0a20 2020 2020 2020 2069 6620 5b20  "".        if [ 
│ │ │ -001f8f60: 2022 2466 735f 7479 7065 2220 3d3d 2022   "$fs_type" == "
│ │ │ -001f8f70: 6973 6f39 3636 3022 205d 203b 2074 6865  iso9660" ] ; the
│ │ │ -001f8f80: 6e0a 2020 2020 2020 2020 2020 2020 7072  n.            pr
│ │ │ -001f8f90: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001f8fa0: 733d 2428 7365 6420 2773 2f62 6c6f 636b  s=$(sed 's/block
│ │ │ -001f8fb0: 7369 7a65 3d2f 626c 6f63 6b3d 2f27 2026  size=/block=/' &
│ │ │ -001f8fc0: 6c74 3b26 6c74 3b26 6c74 3b20 2224 7072  lt;<< "$pr
│ │ │ -001f8fd0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001f8fe0: 7322 290a 2020 2020 2020 2020 6669 0a20  s").        fi. 
│ │ │ -001f8ff0: 2020 2020 2020 2065 6368 6f20 2220 2f76         echo " /v
│ │ │ -001f9000: 6172 2020 6465 6661 756c 7473 2c24 7b70  ar  defaults,${p
│ │ │ -001f9010: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001f9020: 7473 7d6e 6f73 7569 6420 3020 3022 2026  ts}nosuid 0 0" &
│ │ │ -001f9030: 6774 3b26 6774 3b20 2f65 7463 2f66 7374  gt;> /etc/fst
│ │ │ -001f9040: 6162 0a20 2020 2023 2049 6620 7468 6520  ab.    # If the 
│ │ │ -001f9050: 6d6f 756e 745f 6f70 7420 6f70 7469 6f6e  mount_opt option
│ │ │ -001f9060: 2069 7320 6e6f 7420 616c 7265 6164 7920   is not already 
│ │ │ -001f9070: 696e 2074 6865 206d 6f75 6e74 2070 6f69  in the mount poi
│ │ │ -001f9080: 6e74 2773 202f 6574 632f 6673 7461 6220  nt's /etc/fstab 
│ │ │ -001f9090: 656e 7472 792c 2061 6464 2069 740a 2020  entry, add it.  
│ │ │ -001f90a0: 2020 656c 6966 2021 2067 7265 7020 2224    elif ! grep "$
│ │ │ -001f90b0: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001f90c0: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ -001f90d0: 7374 6162 207c 2067 7265 7020 2d71 2022  stab | grep -q "
│ │ │ -001f90e0: 6e6f 7375 6964 223b 2074 6865 6e0a 2020  nosuid"; then.  
│ │ │ -001f90f0: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ -001f9100: 6f75 6e74 5f6f 7074 733d 2428 6772 6570  ount_opts=$(grep
│ │ │ -001f9110: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -001f9120: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ -001f9130: 632f 6673 7461 6220 7c20 6177 6b20 277b  c/fstab | awk '{
│ │ │ -001f9140: 7072 696e 7420 2434 7d27 290a 2020 2020  print $4}').    
│ │ │ -001f9150: 2020 2020 7365 6420 2d69 2022 737c 5c28      sed -i "s|\(
│ │ │ -001f9160: 247b 6d6f 756e 745f 706f 696e 745f 6d61  ${mount_point_ma
│ │ │ -001f9170: 7463 685f 7265 6765 7870 7d2e 2a24 7b70  tch_regexp}.*${p
│ │ │ -001f9180: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001f9190: 7473 7d5c 297c 5c31 2c6e 6f73 7569 647c  ts}\)|\1,nosuid|
│ │ │ -001f91a0: 2220 2f65 7463 2f66 7374 6162 0a20 2020  " /etc/fstab.   
│ │ │ -001f91b0: 2066 690a 0a0a 2020 2020 6966 206d 6b64   fi...    if mkd
│ │ │ -001f91c0: 6972 202d 7020 222f 7661 7222 3b20 7468  ir -p "/var"; th
│ │ │ -001f91d0: 656e 0a20 2020 2020 2020 2069 6620 6d6f  en.        if mo
│ │ │ -001f91e0: 756e 7470 6f69 6e74 202d 7120 222f 7661  untpoint -q "/va
│ │ │ -001f91f0: 7222 3b20 7468 656e 0a20 2020 2020 2020  r"; then.       
│ │ │ -001f9200: 2020 2020 206d 6f75 6e74 202d 6f20 7265       mount -o re
│ │ │ -001f9210: 6d6f 756e 7420 2d2d 7461 7267 6574 2022  mount --target "
│ │ │ -001f9220: 2f76 6172 220a 2020 2020 2020 2020 6669  /var".        fi
│ │ │ -001f9230: 0a20 2020 2066 690a 7d0a 0a70 6572 666f  .    fi.}..perfo
│ │ │ -001f9240: 726d 5f72 656d 6564 6961 7469 6f6e 0a0a  rm_remediation..
│ │ │ -001f9250: 656c 7365 0a20 2020 2026 6774 3b26 616d  else.    >&am
│ │ │ -001f9260: 703b 3220 6563 686f 2027 5265 6d65 6469  p;2 echo 'Remedi
│ │ │ -001f9270: 6174 696f 6e20 6973 206e 6f74 2061 7070  ation is not app
│ │ │ -001f9280: 6c69 6361 626c 652c 206e 6f74 6869 6e67  licable, nothing
│ │ │ -001f9290: 2077 6173 2064 6f6e 6527 0a66 690a 3c2f   was done'.fi.
Complexity │ │ │ +001f7030: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +001f7050: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +001f7060: 7464 3e68 6967 683c 2f74 643e 3c2f 7472 td>highReboot: │ │ │ +001f7080: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +001f70a0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:configure │ │ │ +001f70c0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 - name: │ │ │ +001f70e0: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ +001f70f0: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ +001f7100: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ +001f7110: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ +001f7120: 6773 3a0a 2020 2d20 636f 6e66 6967 7572 gs:. - configur │ │ │ +001f7130: 655f 7374 7261 7465 6779 0a20 202d 2068 e_strategy. - h │ │ │ +001f7140: 6967 685f 6469 7372 7570 7469 6f6e 0a20 igh_disruption. │ │ │ +001f7150: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ +001f7160: 790a 2020 2d20 6d65 6469 756d 5f73 6576 y. - medium_sev │ │ │ +001f7170: 6572 6974 790a 2020 2d20 6d6f 756e 745f erity. - mount_ │ │ │ +001f7180: 6f70 7469 6f6e 5f76 6172 5f6e 6f73 7569 option_var_nosui │ │ │ +001f7190: 640a 2020 2d20 6e6f 5f72 6562 6f6f 745f d. - no_reboot_ │ │ │ +001f71a0: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20 needed..- name: │ │ │ +001f71b0: 2741 6464 206e 6f73 7569 6420 4f70 7469 'Add nosuid Opti │ │ │ +001f71c0: 6f6e 2074 6f20 2f76 6172 3a20 4368 6563 on to /var: Chec │ │ │ +001f71d0: 6b20 696e 666f 726d 6174 696f 6e20 6173 k information as │ │ │ +001f71e0: 736f 6369 6174 6564 2074 6f20 6d6f 756e sociated to moun │ │ │ +001f71f0: 7470 6f69 6e74 270a 2020 616e 7369 626c tpoint'. ansibl │ │ │ +001f7200: 652e 6275 696c 7469 6e2e 636f 6d6d 616e e.builtin.comman │ │ │ +001f7210: 643a 2066 696e 646d 6e74 202d 2d66 7374 d: findmnt --fst │ │ │ +001f7220: 6162 2027 2f76 6172 270a 2020 7265 6769 ab '/var'. regi │ │ │ +001f7230: 7374 6572 3a20 6465 7669 6365 5f6e 616d ster: device_nam │ │ │ +001f7240: 650a 2020 6661 696c 6564 5f77 6865 6e3a e. failed_when: │ │ │ +001f7250: 2064 6576 6963 655f 6e61 6d65 2e72 6320 device_name.rc │ │ │ +001f7260: 2667 743b 2031 0a20 2063 6861 6e67 6564 > 1. changed │ │ │ +001f7270: 5f77 6865 6e3a 2066 616c 7365 0a20 2063 _when: false. c │ │ │ +001f7280: 6865 636b 5f6d 6f64 653a 2066 616c 7365 heck_mode: false │ │ │ +001f7290: 0a20 2077 6865 6e3a 0a20 202d 2028 206e . when:. - ( n │ │ │ +001f72a0: 6f74 2028 2022 6b65 726e 656c 2220 696e ot ( "kernel" in │ │ │ +001f72b0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ +001f72c0: 6163 6b61 6765 7320 616e 6420 2272 706d ackages and "rpm │ │ │ +001f72d0: 2d6f 7374 7265 6522 2069 6e20 616e 7369 -ostree" in ansi │ │ │ +001f72e0: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +001f72f0: 6573 0a20 2020 2061 6e64 2022 626f 6f74 es. and "boot │ │ │ +001f7300: 6322 2069 6e20 616e 7369 626c 655f 6661 c" in ansible_fa │ │ │ +001f7310: 6374 732e 7061 636b 6167 6573 2061 6e64 cts.packages and │ │ │ +001f7320: 206e 6f74 2022 6f70 656e 7368 6966 742d not "openshift- │ │ │ +001f7330: 6b75 6265 6c65 7422 2069 6e20 616e 7369 kubelet" in ansi │ │ │ +001f7340: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +001f7350: 6573 0a20 2020 2061 6e64 2022 6f73 7472 es. and "ostr │ │ │ +001f7360: 6565 2220 696e 2061 6e73 6962 6c65 5f70 ee" in ansible_p │ │ │ +001f7370: 726f 635f 636d 646c 696e 6520 2920 616e roc_cmdline ) an │ │ │ +001f7380: 6420 6e6f 7420 2820 616e 7369 626c 655f d not ( ansible_ │ │ │ +001f7390: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74 virtualization_t │ │ │ +001f73a0: 7970 6520 696e 0a20 2020 205b 2264 6f63 ype in. ["doc │ │ │ +001f73b0: 6b65 7222 2c20 226c 7863 222c 2022 6f70 ker", "lxc", "op │ │ │ +001f73c0: 656e 767a 222c 2022 706f 646d 616e 222c envz", "podman", │ │ │ +001f73d0: 2022 636f 6e74 6169 6e65 7222 5d20 2920 "container"] ) │ │ │ +001f73e0: 290a 2020 2d20 2722 2f76 6172 2220 696e ). - '"/var" in │ │ │ +001f73f0: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320 ansible_mounts │ │ │ +001f7400: 7c20 6d61 7028 6174 7472 6962 7574 653d | map(attribute= │ │ │ +001f7410: 226d 6f75 6e74 2229 207c 206c 6973 7427 "mount") | list' │ │ │ +001f7420: 0a20 2074 6167 733a 0a20 202d 2063 6f6e . tags:. - con │ │ │ +001f7430: 6669 6775 7265 5f73 7472 6174 6567 790a figure_strategy. │ │ │ +001f7440: 2020 2d20 6869 6768 5f64 6973 7275 7074 - high_disrupt │ │ │ +001f7450: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70 ion. - low_comp │ │ │ +001f7460: 6c65 7869 7479 0a20 202d 206d 6564 6975 lexity. - mediu │ │ │ +001f7470: 6d5f 7365 7665 7269 7479 0a20 202d 206d m_severity. - m │ │ │ +001f7480: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f ount_option_var_ │ │ │ +001f7490: 6e6f 7375 6964 0a20 202d 206e 6f5f 7265 nosuid. - no_re │ │ │ +001f74a0: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e boot_needed..- n │ │ │ +001f74b0: 616d 653a 2027 4164 6420 6e6f 7375 6964 ame: 'Add nosuid │ │ │ +001f74c0: 204f 7074 696f 6e20 746f 202f 7661 723a Option to /var: │ │ │ +001f74d0: 2043 7265 6174 6520 6d6f 756e 745f 696e Create mount_in │ │ │ +001f74e0: 666f 2064 6963 7469 6f6e 6172 7920 7661 fo dictionary va │ │ │ +001f74f0: 7269 6162 6c65 270a 2020 7365 745f 6661 riable'. set_fa │ │ │ +001f7500: 6374 3a0a 2020 2020 6d6f 756e 745f 696e ct:. mount_in │ │ │ +001f7510: 666f 3a20 277b 7b20 6d6f 756e 745f 696e fo: '{{ mount_in │ │ │ +001f7520: 666f 7c64 6566 6175 6c74 287b 7d29 7c63 fo|default({})|c │ │ │ +001f7530: 6f6d 6269 6e65 287b 6974 656d 2e30 3a20 ombine({item.0: │ │ │ +001f7540: 6974 656d 2e31 7d29 207d 7d27 0a20 2077 item.1}) }}'. w │ │ │ +001f7550: 6974 685f 746f 6765 7468 6572 3a0a 2020 ith_together:. │ │ │ +001f7560: 2d20 277b 7b20 6465 7669 6365 5f6e 616d - '{{ device_nam │ │ │ +001f7570: 652e 7374 646f 7574 5f6c 696e 6573 5b30 e.stdout_lines[0 │ │ │ +001f7580: 5d2e 7370 6c69 7428 2920 7c20 6d61 7028 ].split() | map( │ │ │ +001f7590: 2727 6c6f 7765 7227 2729 207c 206c 6973 ''lower'') | lis │ │ │ +001f75a0: 7420 7d7d 270a 2020 2d20 277b 7b20 6465 t }}'. - '{{ de │ │ │ +001f75b0: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ +001f75c0: 5f6c 696e 6573 5b31 5d2e 7370 6c69 7428 _lines[1].split( │ │ │ +001f75d0: 2920 7c20 6c69 7374 207d 7d27 0a20 2077 ) | list }}'. w │ │ │ +001f75e0: 6865 6e3a 0a20 202d 2028 206e 6f74 2028 hen:. - ( not ( │ │ │ +001f75f0: 2022 6b65 726e 656c 2220 696e 2061 6e73 "kernel" in ans │ │ │ +001f7600: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ +001f7610: 6765 7320 616e 6420 2272 706d 2d6f 7374 ges and "rpm-ost │ │ │ +001f7620: 7265 6522 2069 6e20 616e 7369 626c 655f ree" in ansible_ │ │ │ +001f7630: 6661 6374 732e 7061 636b 6167 6573 0a20 facts.packages. │ │ │ +001f7640: 2020 2061 6e64 2022 626f 6f74 6322 2069 and "bootc" i │ │ │ +001f7650: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001f7660: 7061 636b 6167 6573 2061 6e64 206e 6f74 packages and not │ │ │ +001f7670: 2022 6f70 656e 7368 6966 742d 6b75 6265 "openshift-kube │ │ │ +001f7680: 6c65 7422 2069 6e20 616e 7369 626c 655f let" in ansible_ │ │ │ +001f7690: 6661 6374 732e 7061 636b 6167 6573 0a20 facts.packages. │ │ │ +001f76a0: 2020 2061 6e64 2022 6f73 7472 6565 2220 and "ostree" │ │ │ +001f76b0: 696e 2061 6e73 6962 6c65 5f70 726f 635f in ansible_proc_ │ │ │ +001f76c0: 636d 646c 696e 6520 2920 616e 6420 6e6f cmdline ) and no │ │ │ +001f76d0: 7420 2820 616e 7369 626c 655f 7669 7274 t ( ansible_virt │ │ │ +001f76e0: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520 ualization_type │ │ │ +001f76f0: 696e 0a20 2020 205b 2264 6f63 6b65 7222 in. ["docker" │ │ │ +001f7700: 2c20 226c 7863 222c 2022 6f70 656e 767a , "lxc", "openvz │ │ │ +001f7710: 222c 2022 706f 646d 616e 222c 2022 636f ", "podman", "co │ │ │ +001f7720: 6e74 6169 6e65 7222 5d20 2920 290a 2020 ntainer"] ) ). │ │ │ +001f7730: 2d20 2722 2f76 6172 2220 696e 2061 6e73 - '"/var" in ans │ │ │ +001f7740: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61 ible_mounts | ma │ │ │ +001f7750: 7028 6174 7472 6962 7574 653d 226d 6f75 p(attribute="mou │ │ │ +001f7760: 6e74 2229 207c 206c 6973 7427 0a20 202d nt") | list'. - │ │ │ +001f7770: 2064 6576 6963 655f 6e61 6d65 2e73 7464 device_name.std │ │ │ +001f7780: 6f75 7420 6973 2064 6566 696e 6564 2061 out is defined a │ │ │ +001f7790: 6e64 2064 6576 6963 655f 6e61 6d65 2e73 nd device_name.s │ │ │ +001f77a0: 7464 6f75 745f 6c69 6e65 7320 6973 2064 tdout_lines is d │ │ │ +001f77b0: 6566 696e 6564 0a20 202d 2028 6465 7669 efined. - (devi │ │ │ +001f77c0: 6365 5f6e 616d 652e 7374 646f 7574 207c ce_name.stdout | │ │ │ +001f77d0: 206c 656e 6774 6820 2667 743b 2030 290a length > 0). │ │ │ +001f77e0: 2020 7461 6773 3a0a 2020 2d20 636f 6e66 tags:. - conf │ │ │ +001f77f0: 6967 7572 655f 7374 7261 7465 6779 0a20 igure_strategy. │ │ │ +001f7800: 202d 2068 6967 685f 6469 7372 7570 7469 - high_disrupti │ │ │ +001f7810: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c on. - low_compl │ │ │ +001f7820: 6578 6974 790a 2020 2d20 6d65 6469 756d exity. - medium │ │ │ +001f7830: 5f73 6576 6572 6974 790a 2020 2d20 6d6f _severity. - mo │ │ │ +001f7840: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6e unt_option_var_n │ │ │ +001f7850: 6f73 7569 640a 2020 2d20 6e6f 5f72 6562 osuid. - no_reb │ │ │ +001f7860: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61 oot_needed..- na │ │ │ +001f7870: 6d65 3a20 2741 6464 206e 6f73 7569 6420 me: 'Add nosuid │ │ │ +001f7880: 4f70 7469 6f6e 2074 6f20 2f76 6172 3a20 Option to /var: │ │ │ +001f7890: 4966 202f 7661 7220 6e6f 7420 6d6f 756e If /var not moun │ │ │ +001f78a0: 7465 642c 2063 7261 6674 206d 6f75 6e74 ted, craft mount │ │ │ +001f78b0: 5f69 6e66 6f20 6d61 6e75 616c 6c79 270a _info manually'. │ │ │ +001f78c0: 2020 7365 745f 6661 6374 3a0a 2020 2020 set_fact:. │ │ │ +001f78d0: 6d6f 756e 745f 696e 666f 3a20 277b 7b20 mount_info: '{{ │ │ │ +001f78e0: 6d6f 756e 745f 696e 666f 7c64 6566 6175 mount_info|defau │ │ │ +001f78f0: 6c74 287b 7d29 7c63 6f6d 6269 6e65 287b lt({})|combine({ │ │ │ +001f7900: 6974 656d 2e30 3a20 6974 656d 2e31 7d29 item.0: item.1}) │ │ │ +001f7910: 207d 7d27 0a20 2077 6974 685f 746f 6765 }}'. with_toge │ │ │ +001f7920: 7468 6572 3a0a 2020 2d20 2d20 7461 7267 ther:. - - targ │ │ │ +001f7930: 6574 0a20 2020 202d 2073 6f75 7263 650a et. - source. │ │ │ +001f7940: 2020 2020 2d20 6673 7479 7065 0a20 2020 - fstype. │ │ │ +001f7950: 202d 206f 7074 696f 6e73 0a20 202d 202d - options. - - │ │ │ +001f7960: 202f 7661 720a 2020 2020 2d20 2727 0a20 /var. - ''. │ │ │ +001f7970: 2020 202d 2027 270a 2020 2020 2d20 6465 - ''. - de │ │ │ +001f7980: 6661 756c 7473 0a20 2077 6865 6e3a 0a20 faults. when:. │ │ │ +001f7990: 202d 2028 206e 6f74 2028 2022 6b65 726e - ( not ( "kern │ │ │ +001f79a0: 656c 2220 696e 2061 6e73 6962 6c65 5f66 el" in ansible_f │ │ │ +001f79b0: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ +001f79c0: 6420 2272 706d 2d6f 7374 7265 6522 2069 d "rpm-ostree" i │ │ │ +001f79d0: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001f79e0: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ +001f79f0: 2022 626f 6f74 6322 2069 6e20 616e 7369 "bootc" in ansi │ │ │ +001f7a00: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +001f7a10: 6573 2061 6e64 206e 6f74 2022 6f70 656e es and not "open │ │ │ +001f7a20: 7368 6966 742d 6b75 6265 6c65 7422 2069 shift-kubelet" i │ │ │ +001f7a30: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001f7a40: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ +001f7a50: 2022 6f73 7472 6565 2220 696e 2061 6e73 "ostree" in ans │ │ │ +001f7a60: 6962 6c65 5f70 726f 635f 636d 646c 696e ible_proc_cmdlin │ │ │ +001f7a70: 6520 2920 616e 6420 6e6f 7420 2820 616e e ) and not ( an │ │ │ +001f7a80: 7369 626c 655f 7669 7274 7561 6c69 7a61 sible_virtualiza │ │ │ +001f7a90: 7469 6f6e 5f74 7970 6520 696e 0a20 2020 tion_type in. │ │ │ +001f7aa0: 205b 2264 6f63 6b65 7222 2c20 226c 7863 ["docker", "lxc │ │ │ +001f7ab0: 222c 2022 6f70 656e 767a 222c 2022 706f ", "openvz", "po │ │ │ +001f7ac0: 646d 616e 222c 2022 636f 6e74 6169 6e65 dman", "containe │ │ │ +001f7ad0: 7222 5d20 2920 290a 2020 2d20 2722 2f76 r"] ) ). - '"/v │ │ │ +001f7ae0: 6172 2220 696e 2061 6e73 6962 6c65 5f6d ar" in ansible_m │ │ │ +001f7af0: 6f75 6e74 7320 7c20 6d61 7028 6174 7472 ounts | map(attr │ │ │ +001f7b00: 6962 7574 653d 226d 6f75 6e74 2229 207c ibute="mount") | │ │ │ +001f7b10: 206c 6973 7427 0a20 202d 2028 222d 2d66 list'. - ("--f │ │ │ +001f7b20: 7374 6162 2220 7c20 6c65 6e67 7468 203d stab" | length = │ │ │ +001f7b30: 3d20 3029 0a20 202d 2064 6576 6963 655f = 0). - device_ │ │ │ +001f7b40: 6e61 6d65 2e73 7464 6f75 7420 6973 2064 name.stdout is d │ │ │ +001f7b50: 6566 696e 6564 2061 6e64 2064 6576 6963 efined and devic │ │ │ +001f7b60: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69 e_name.stdout_li │ │ │ +001f7b70: 6e65 7320 6973 2064 6566 696e 6564 0a20 nes is defined. │ │ │ +001f7b80: 202d 2028 6465 7669 6365 5f6e 616d 652e - (device_name. │ │ │ +001f7b90: 7374 646f 7574 207c 206c 656e 6774 6820 stdout | length │ │ │ +001f7ba0: 3d3d 2030 290a 2020 7461 6773 3a0a 2020 == 0). tags:. │ │ │ +001f7bb0: 2d20 636f 6e66 6967 7572 655f 7374 7261 - configure_stra │ │ │ +001f7bc0: 7465 6779 0a20 202d 2068 6967 685f 6469 tegy. - high_di │ │ │ +001f7bd0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77 sruption. - low │ │ │ +001f7be0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ +001f7bf0: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ +001f7c00: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e - mount_option │ │ │ +001f7c10: 5f76 6172 5f6e 6f73 7569 640a 2020 2d20 _var_nosuid. - │ │ │ +001f7c20: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564 no_reboot_needed │ │ │ +001f7c30: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e ..- name: 'Add n │ │ │ +001f7c40: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20 osuid Option to │ │ │ +001f7c50: 2f76 6172 3a20 4d61 6b65 2073 7572 6520 /var: Make sure │ │ │ +001f7c60: 6e6f 7375 6964 206f 7074 696f 6e20 6973 nosuid option is │ │ │ +001f7c70: 2070 6172 7420 6f66 2074 6865 2074 6f20 part of the to │ │ │ +001f7c80: 2f76 6172 0a20 2020 206f 7074 696f 6e73 /var. options │ │ │ +001f7c90: 270a 2020 7365 745f 6661 6374 3a0a 2020 '. set_fact:. │ │ │ +001f7ca0: 2020 6d6f 756e 745f 696e 666f 3a20 277b mount_info: '{ │ │ │ +001f7cb0: 7b20 6d6f 756e 745f 696e 666f 207c 2063 { mount_info | c │ │ │ +001f7cc0: 6f6d 6269 6e65 2820 7b27 276f 7074 696f ombine( {''optio │ │ │ +001f7cd0: 6e73 2727 3a27 2727 277e 286d 6f75 6e74 ns'':''''~(mount │ │ │ +001f7ce0: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c0a _info.options |. │ │ │ +001f7cf0: 2020 2020 2020 6465 6661 756c 7428 2727 default('' │ │ │ +001f7d00: 2727 2929 7e28 2727 2c27 2720 6966 2028 ''))~('','' if ( │ │ │ +001f7d10: 6d6f 756e 745f 696e 666f 2e6f 7074 696f mount_info.optio │ │ │ +001f7d20: 6e73 207c 2064 6566 6175 6c74 2827 2727 ns | default(''' │ │ │ +001f7d30: 2729 2920 656c 7365 2027 2727 2729 7e27 ')) else '''')~' │ │ │ +001f7d40: 276e 6f73 7569 6427 270a 2020 2020 2020 'nosuid''. │ │ │ +001f7d50: 7d29 207d 7d27 0a20 2077 6865 6e3a 0a20 }) }}'. when:. │ │ │ +001f7d60: 202d 2028 206e 6f74 2028 2022 6b65 726e - ( not ( "kern │ │ │ +001f7d70: 656c 2220 696e 2061 6e73 6962 6c65 5f66 el" in ansible_f │ │ │ +001f7d80: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ +001f7d90: 6420 2272 706d 2d6f 7374 7265 6522 2069 d "rpm-ostree" i │ │ │ +001f7da0: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001f7db0: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ +001f7dc0: 2022 626f 6f74 6322 2069 6e20 616e 7369 "bootc" in ansi │ │ │ +001f7dd0: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +001f7de0: 6573 2061 6e64 206e 6f74 2022 6f70 656e es and not "open │ │ │ +001f7df0: 7368 6966 742d 6b75 6265 6c65 7422 2069 shift-kubelet" i │ │ │ +001f7e00: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001f7e10: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ +001f7e20: 2022 6f73 7472 6565 2220 696e 2061 6e73 "ostree" in ans │ │ │ +001f7e30: 6962 6c65 5f70 726f 635f 636d 646c 696e ible_proc_cmdlin │ │ │ +001f7e40: 6520 2920 616e 6420 6e6f 7420 2820 616e e ) and not ( an │ │ │ +001f7e50: 7369 626c 655f 7669 7274 7561 6c69 7a61 sible_virtualiza │ │ │ +001f7e60: 7469 6f6e 5f74 7970 6520 696e 0a20 2020 tion_type in. │ │ │ +001f7e70: 205b 2264 6f63 6b65 7222 2c20 226c 7863 ["docker", "lxc │ │ │ +001f7e80: 222c 2022 6f70 656e 767a 222c 2022 706f ", "openvz", "po │ │ │ +001f7e90: 646d 616e 222c 2022 636f 6e74 6169 6e65 dman", "containe │ │ │ +001f7ea0: 7222 5d20 2920 290a 2020 2d20 2722 2f76 r"] ) ). - '"/v │ │ │ +001f7eb0: 6172 2220 696e 2061 6e73 6962 6c65 5f6d ar" in ansible_m │ │ │ +001f7ec0: 6f75 6e74 7320 7c20 6d61 7028 6174 7472 ounts | map(attr │ │ │ +001f7ed0: 6962 7574 653d 226d 6f75 6e74 2229 207c ibute="mount") | │ │ │ +001f7ee0: 206c 6973 7427 0a20 202d 206d 6f75 6e74 list'. - mount │ │ │ +001f7ef0: 5f69 6e66 6f20 6973 2064 6566 696e 6564 _info is defined │ │ │ +001f7f00: 2061 6e64 2022 6e6f 7375 6964 2220 6e6f and "nosuid" no │ │ │ +001f7f10: 7420 696e 2028 6d6f 756e 745f 696e 666f t in (mount_info │ │ │ +001f7f20: 2e6f 7074 696f 6e73 207c 2064 6566 6175 .options | defau │ │ │ +001f7f30: 6c74 2827 2729 290a 2020 7461 6773 3a0a lt('')). tags:. │ │ │ +001f7f40: 2020 2d20 636f 6e66 6967 7572 655f 7374 - configure_st │ │ │ +001f7f50: 7261 7465 6779 0a20 202d 2068 6967 685f rategy. - high_ │ │ │ +001f7f60: 6469 7372 7570 7469 6f6e 0a20 202d 206c disruption. - l │ │ │ +001f7f70: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ +001f7f80: 2d20 6d65 6469 756d 5f73 6576 6572 6974 - medium_severit │ │ │ +001f7f90: 790a 2020 2d20 6d6f 756e 745f 6f70 7469 y. - mount_opti │ │ │ +001f7fa0: 6f6e 5f76 6172 5f6e 6f73 7569 640a 2020 on_var_nosuid. │ │ │ +001f7fb0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ +001f7fc0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464 ed..- name: 'Add │ │ │ +001f7fd0: 206e 6f73 7569 6420 4f70 7469 6f6e 2074 nosuid Option t │ │ │ +001f7fe0: 6f20 2f76 6172 3a20 456e 7375 7265 202f o /var: Ensure / │ │ │ +001f7ff0: 7661 7220 6973 206d 6f75 6e74 6564 2077 var is mounted w │ │ │ +001f8000: 6974 6820 6e6f 7375 6964 206f 7074 696f ith nosuid optio │ │ │ +001f8010: 6e27 0a20 2061 6e73 6962 6c65 2e70 6f73 n'. ansible.pos │ │ │ +001f8020: 6978 2e6d 6f75 6e74 3a0a 2020 2020 7061 ix.mount:. pa │ │ │ +001f8030: 7468 3a20 2f76 6172 0a20 2020 2073 7263 th: /var. src │ │ │ +001f8040: 3a20 277b 7b20 6d6f 756e 745f 696e 666f : '{{ mount_info │ │ │ +001f8050: 2e73 6f75 7263 6520 7c20 6465 6661 756c .source | defaul │ │ │ +001f8060: 7428 2727 2727 2920 7d7d 270a 2020 2020 t('''') }}'. │ │ │ +001f8070: 6f70 7473 3a20 277b 7b20 6d6f 756e 745f opts: '{{ mount_ │ │ │ +001f8080: 696e 666f 2e6f 7074 696f 6e73 207c 2064 info.options | d │ │ │ +001f8090: 6566 6175 6c74 2827 2727 2729 207d 7d27 efault('''') }}' │ │ │ +001f80a0: 0a20 2020 2073 7461 7465 3a20 6d6f 756e . state: moun │ │ │ +001f80b0: 7465 640a 2020 2020 6673 7479 7065 3a20 ted. fstype: │ │ │ +001f80c0: 277b 7b20 6d6f 756e 745f 696e 666f 2e66 '{{ mount_info.f │ │ │ +001f80d0: 7374 7970 6520 7c20 6465 6661 756c 7428 stype | default( │ │ │ +001f80e0: 2727 2727 2920 7d7d 270a 2020 7265 6769 '''') }}'. regi │ │ │ +001f80f0: 7374 6572 3a20 6d6f 756e 745f 7265 7375 ster: mount_resu │ │ │ +001f8100: 6c74 0a20 2066 6169 6c65 645f 7768 656e lt. failed_when │ │ │ +001f8110: 3a0a 2020 2d20 6d6f 756e 745f 7265 7375 :. - mount_resu │ │ │ +001f8120: 6c74 2069 7320 6661 696c 6564 0a20 202d lt is failed. - │ │ │ +001f8130: 2027 2727 7461 7267 6574 2069 7320 6275 '''target is bu │ │ │ +001f8140: 7379 2727 206e 6f74 2069 6e20 286d 6f75 sy'' not in (mou │ │ │ +001f8150: 6e74 5f72 6573 756c 742e 6d73 6720 7c20 nt_result.msg | │ │ │ +001f8160: 6465 6661 756c 7428 2727 2727 2929 270a default(''''))'. │ │ │ +001f8170: 2020 2d20 2727 2761 6c72 6561 6479 206d - '''already m │ │ │ +001f8180: 6f75 6e74 6564 2727 206e 6f74 2069 6e20 ounted'' not in │ │ │ +001f8190: 286d 6f75 6e74 5f72 6573 756c 742e 6d73 (mount_result.ms │ │ │ +001f81a0: 6720 7c20 6465 6661 756c 7428 2727 2727 g | default('''' │ │ │ +001f81b0: 2929 270a 2020 7768 656e 3a0a 2020 2d20 ))'. when:. - │ │ │ +001f81c0: 2820 6e6f 7420 2820 226b 6572 6e65 6c22 ( not ( "kernel" │ │ │ +001f81d0: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +001f81e0: 732e 7061 636b 6167 6573 2061 6e64 2022 s.packages and " │ │ │ +001f81f0: 7270 6d2d 6f73 7472 6565 2220 696e 2061 rpm-ostree" in a │ │ │ +001f8200: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ +001f8210: 6b61 6765 730a 2020 2020 616e 6420 2262 kages. and "b │ │ │ +001f8220: 6f6f 7463 2220 696e 2061 6e73 6962 6c65 ootc" in ansible │ │ │ +001f8230: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ +001f8240: 616e 6420 6e6f 7420 226f 7065 6e73 6869 and not "openshi │ │ │ +001f8250: 6674 2d6b 7562 656c 6574 2220 696e 2061 ft-kubelet" in a │ │ │ +001f8260: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ +001f8270: 6b61 6765 730a 2020 2020 616e 6420 226f kages. and "o │ │ │ +001f8280: 7374 7265 6522 2069 6e20 616e 7369 626c stree" in ansibl │ │ │ +001f8290: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029 e_proc_cmdline ) │ │ │ +001f82a0: 2061 6e64 206e 6f74 2028 2061 6e73 6962 and not ( ansib │ │ │ +001f82b0: 6c65 5f76 6972 7475 616c 697a 6174 696f le_virtualizatio │ │ │ +001f82c0: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22 n_type in. [" │ │ │ +001f82d0: 646f 636b 6572 222c 2022 6c78 6322 2c20 docker", "lxc", │ │ │ +001f82e0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61 "openvz", "podma │ │ │ +001f82f0: 6e22 2c20 2263 6f6e 7461 696e 6572 225d n", "container"] │ │ │ +001f8300: 2029 2029 0a20 202d 2027 222f 7661 7222 ) ). - '"/var" │ │ │ +001f8310: 2069 6e20 616e 7369 626c 655f 6d6f 756e in ansible_moun │ │ │ +001f8320: 7473 207c 206d 6170 2861 7474 7269 6275 ts | map(attribu │ │ │ +001f8330: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69 te="mount") | li │ │ │ +001f8340: 7374 270a 2020 2d20 6d6f 756e 745f 696e st'. - mount_in │ │ │ +001f8350: 666f 2069 7320 6465 6669 6e65 640a 2020 fo is defined. │ │ │ +001f8360: 2d20 2864 6576 6963 655f 6e61 6d65 2e73 - (device_name.s │ │ │ +001f8370: 7464 6f75 7420 6973 2064 6566 696e 6564 tdout is defined │ │ │ +001f8380: 2061 6e64 2028 6465 7669 6365 5f6e 616d and (device_nam │ │ │ +001f8390: 652e 7374 646f 7574 207c 206c 656e 6774 e.stdout | lengt │ │ │ +001f83a0: 6820 2667 743b 2030 2929 206f 7220 2822 h > 0)) or (" │ │ │ +001f83b0: 2d2d 6673 7461 6222 0a20 2020 207c 206c --fstab". | l │ │ │ +001f83c0: 656e 6774 6820 3d3d 2030 290a 2020 7461 ength == 0). ta │ │ │ +001f83d0: 6773 3a0a 2020 2d20 636f 6e66 6967 7572 gs:. - configur │ │ │ +001f83e0: 655f 7374 7261 7465 6779 0a20 202d 2068 e_strategy. - h │ │ │ +001f83f0: 6967 685f 6469 7372 7570 7469 6f6e 0a20 igh_disruption. │ │ │ +001f8400: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ +001f8410: 790a 2020 2d20 6d65 6469 756d 5f73 6576 y. - medium_sev │ │ │ +001f8420: 6572 6974 790a 2020 2d20 6d6f 756e 745f erity. - mount_ │ │ │ +001f8430: 6f70 7469 6f6e 5f76 6172 5f6e 6f73 7569 option_var_nosui │ │ │ +001f8440: 640a 2020 2d20 6e6f 5f72 6562 6f6f 745f d. - no_reboot_ │ │ │ +001f8450: 6e65 6564 6564 0a3c 2f63 6f64 653e 3c2f needed.
Remediati │ │ │ +001f8510: 6f6e 2053 6865 6c6c 2073 6372 6970 7420 on Shell script │ │ │ +001f8520: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Reboot:false< │ │ │ +001f85c0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
# Remedia
│ │ │ +001f85e0: 7469 6f6e 2069 7320 6170 706c 6963 6162  tion is applicab
│ │ │ +001f85f0: 6c65 206f 6e6c 7920 696e 2063 6572 7461  le only in certa
│ │ │ +001f8600: 696e 2070 6c61 7466 6f72 6d73 0a69 6620  in platforms.if 
│ │ │ +001f8610: 2820 2120 2820 7b20 7270 6d20 2d2d 7175  ( ! ( { rpm --qu
│ │ │ +001f8620: 6965 7420 2d71 206b 6572 6e65 6c20 3b7d  iet -q kernel ;}
│ │ │ +001f8630: 2026 616d 703b 2661 6d70 3b20 7b20 7270   && { rp
│ │ │ +001f8640: 6d20 2d2d 7175 6965 7420 2d71 2072 706d  m --quiet -q rpm
│ │ │ +001f8650: 2d6f 7374 7265 6520 3b7d 2026 616d 703b  -ostree ;} &
│ │ │ +001f8660: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ +001f8670: 6965 7420 2d71 2062 6f6f 7463 203b 7d20  iet -q bootc ;} 
│ │ │ +001f8680: 2661 6d70 3b26 616d 703b 207b 2021 2072  && { ! r
│ │ │ +001f8690: 706d 202d 2d71 7569 6574 202d 7120 6f70  pm --quiet -q op
│ │ │ +001f86a0: 656e 7368 6966 742d 6b75 6265 6c65 7420  enshift-kubelet 
│ │ │ +001f86b0: 3b7d 2026 616d 703b 2661 6d70 3b20 285b  ;} && ([
│ │ │ +001f86c0: 202d 6620 2f72 756e 2f6f 7374 7265 652d   -f /run/ostree-
│ │ │ +001f86d0: 626f 6f74 6564 205d 207c 7c20 5b20 2d4c  booted ] || [ -L
│ │ │ +001f86e0: 202f 6f73 7472 6565 205d 2920 2920 2661   /ostree ]) ) &a
│ │ │ +001f86f0: 6d70 3b26 616d 703b 2021 2028 205b 202d  mp;& ! ( [ -
│ │ │ +001f8700: 6620 2f2e 646f 636b 6572 656e 7620 5d20  f /.dockerenv ] 
│ │ │ +001f8710: 7c7c 205b 202d 6620 2f72 756e 2f2e 636f  || [ -f /run/.co
│ │ │ +001f8720: 6e74 6169 6e65 7265 6e76 205d 2029 2029  ntainerenv ] ) )
│ │ │ +001f8730: 2026 616d 703b 2661 6d70 3b20 7b20 2820   && { ( 
│ │ │ +001f8740: 6669 6e64 6d6e 7420 2d2d 6b65 726e 656c  findmnt --kernel
│ │ │ +001f8750: 2022 2f76 6172 2220 2667 743b 202f 6465   "/var" > /de
│ │ │ +001f8760: 762f 6e75 6c6c 207c 7c20 6669 6e64 6d6e  v/null || findmn
│ │ │ +001f8770: 7420 2d2d 6673 7461 6220 222f 7661 7222  t --fstab "/var"
│ │ │ +001f8780: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20   > /dev/null 
│ │ │ +001f8790: 293b 207d 3b20 7468 656e 0a0a 6675 6e63  ); }; then..func
│ │ │ +001f87a0: 7469 6f6e 2070 6572 666f 726d 5f72 656d  tion perform_rem
│ │ │ +001f87b0: 6564 6961 7469 6f6e 207b 0a0a 2020 2020  ediation {..    
│ │ │ +001f87c0: 0a20 2020 2020 2020 2023 2074 6865 206d  .        # the m
│ │ │ +001f87d0: 6f75 6e74 2070 6f69 6e74 202f 7661 7220  ount point /var 
│ │ │ +001f87e0: 6861 7320 746f 2062 6520 6465 6669 6e65  has to be define
│ │ │ +001f87f0: 6420 696e 202f 6574 632f 6673 7461 620a  d in /etc/fstab.
│ │ │ +001f8800: 2020 2020 2020 2020 2320 6265 666f 7265          # before
│ │ │ +001f8810: 2074 6869 7320 7265 6d65 6469 6174 696f   this remediatio
│ │ │ +001f8820: 6e20 6361 6e20 6265 2065 7865 6375 7465  n can be execute
│ │ │ +001f8830: 642e 2049 6e20 6361 7365 2069 7420 6973  d. In case it is
│ │ │ +001f8840: 206e 6f74 2064 6566 696e 6564 2c20 7468   not defined, th
│ │ │ +001f8850: 650a 2020 2020 2020 2020 2320 7265 6d65  e.        # reme
│ │ │ +001f8860: 6469 6174 696f 6e20 6162 6f72 7473 2061  diation aborts a
│ │ │ +001f8870: 6e64 206e 6f20 6368 616e 6765 7320 7265  nd no changes re
│ │ │ +001f8880: 6761 7264 696e 6720 7468 6520 6d6f 756e  garding the moun
│ │ │ +001f8890: 7420 706f 696e 7420 6172 6520 646f 6e65  t point are done
│ │ │ +001f88a0: 2e0a 2020 2020 2020 2020 6d6f 756e 745f  ..        mount_
│ │ │ +001f88b0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001f88c0: 7870 3d22 2428 7072 696e 7466 2022 5e5b  xp="$(printf "^[
│ │ │ +001f88d0: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e  [:space:]]*[^#].
│ │ │ +001f88e0: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b  *[[:space:]]%s[[
│ │ │ +001f88f0: 3a73 7061 6365 3a5d 5d22 2022 2f76 6172  :space:]]" "/var
│ │ │ +001f8900: 2229 220a 0a20 2020 2067 7265 7020 2224  ")"..    grep "$
│ │ │ +001f8910: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001f8920: 685f 7265 6765 7870 2220 2d71 202f 6574  h_regexp" -q /et
│ │ │ +001f8930: 632f 6673 7461 6220 5c0a 2020 2020 2020  c/fstab \.      
│ │ │ +001f8940: 2020 7c7c 207b 2065 6368 6f20 2254 6865    || { echo "The
│ │ │ +001f8950: 206d 6f75 6e74 2070 6f69 6e74 2027 2f76   mount point '/v
│ │ │ +001f8960: 6172 2720 6973 206e 6f74 2065 7665 6e20  ar' is not even 
│ │ │ +001f8970: 696e 202f 6574 632f 6673 7461 622c 2073  in /etc/fstab, s
│ │ │ +001f8980: 6f20 7765 2063 616e 2774 2073 6574 2075  o we can't set u
│ │ │ +001f8990: 7020 6d6f 756e 7420 6f70 7469 6f6e 7322  p mount options"
│ │ │ +001f89a0: 2026 6774 3b26 616d 703b 323b 0a20 2020   >&2;.   
│ │ │ +001f89b0: 2020 2020 2020 2020 2020 2020 2065 6368               ech
│ │ │ +001f89c0: 6f20 224e 6f74 2072 656d 6564 6961 7469  o "Not remediati
│ │ │ +001f89d0: 6e67 2c20 6265 6361 7573 6520 7468 6572  ng, because ther
│ │ │ +001f89e0: 6520 6973 206e 6f20 7265 636f 7264 206f  e is no record o
│ │ │ +001f89f0: 6620 2f76 6172 2069 6e20 2f65 7463 2f66  f /var in /etc/f
│ │ │ +001f8a00: 7374 6162 2220 2667 743b 2661 6d70 3b32  stab" >&2
│ │ │ +001f8a10: 3b20 7265 7475 726e 2031 3b20 7d0a 2020  ; return 1; }.  
│ │ │ +001f8a20: 2020 0a0a 0a20 2020 206d 6f75 6e74 5f70    ...    mount_p
│ │ │ +001f8a30: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001f8a40: 703d 2224 2870 7269 6e74 6620 225e 5b5b  p="$(printf "^[[
│ │ │ +001f8a50: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a  :space:]]*[^#].*
│ │ │ +001f8a60: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a  [[:space:]]%s[[:
│ │ │ +001f8a70: 7370 6163 653a 5d5d 2220 2f76 6172 2922  space:]]" /var)"
│ │ │ +001f8a80: 0a0a 2020 2020 2320 4966 2074 6865 206d  ..    # If the m
│ │ │ +001f8a90: 6f75 6e74 2070 6f69 6e74 2069 7320 6e6f  ount point is no
│ │ │ +001f8aa0: 7420 696e 202f 6574 632f 6673 7461 622c  t in /etc/fstab,
│ │ │ +001f8ab0: 2067 6574 2070 7265 7669 6f75 7320 6d6f   get previous mo
│ │ │ +001f8ac0: 756e 7420 6f70 7469 6f6e 7320 6672 6f6d  unt options from
│ │ │ +001f8ad0: 202f 6574 632f 6d74 6162 0a20 2020 2069   /etc/mtab.    i
│ │ │ +001f8ae0: 6620 2120 6772 6570 202d 7120 2224 6d6f  f ! grep -q "$mo
│ │ │ +001f8af0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001f8b00: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ +001f8b10: 6162 3b20 7468 656e 0a20 2020 2020 2020  ab; then.       
│ │ │ +001f8b20: 2023 2072 756e 7469 6d65 206f 7074 7320   # runtime opts 
│ │ │ +001f8b30: 7769 7468 6f75 7420 736f 6d65 2061 7574  without some aut
│ │ │ +001f8b40: 6f6d 6174 6963 206b 6572 6e65 6c2f 7573  omatic kernel/us
│ │ │ +001f8b50: 6572 7370 6163 652d 6164 6465 6420 6465  erspace-added de
│ │ │ +001f8b60: 6661 756c 7473 0a20 2020 2020 2020 2070  faults.        p
│ │ │ +001f8b70: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001f8b80: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ +001f8b90: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001f8ba0: 6765 7870 2220 2f65 7463 2f6d 7461 6220  gexp" /etc/mtab 
│ │ │ +001f8bb0: 7c20 6865 6164 202d 3120 7c20 2061 776b  | head -1 |  awk
│ │ │ +001f8bc0: 2027 7b70 7269 6e74 2024 347d 2720 5c0a   '{print $4}' \.
│ │ │ +001f8bd0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +001f8be0: 2020 2020 7c20 7365 6420 2d45 2022 732f      | sed -E "s/
│ │ │ +001f8bf0: 2872 777c 6465 6661 756c 7473 7c73 6563  (rw|defaults|sec
│ │ │ +001f8c00: 6c61 6265 6c7c 6e6f 7375 6964 2928 2c7c  label|nosuid)(,|
│ │ │ +001f8c10: 2429 2f2f 673b 732f 2c24 2f2f 2229 0a20  $)//g;s/,$//"). 
│ │ │ +001f8c20: 2020 2020 2020 205b 2022 2470 7265 7669         [ "$previ
│ │ │ +001f8c30: 6f75 735f 6d6f 756e 745f 6f70 7473 2220  ous_mount_opts" 
│ │ │ +001f8c40: 5d20 2661 6d70 3b26 616d 703b 2070 7265  ] && pre
│ │ │ +001f8c50: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001f8c60: 2b3d 222c 220a 2020 2020 2020 2020 2320  +=",".        # 
│ │ │ +001f8c70: 496e 2069 736f 3936 3630 2066 696c 6573  In iso9660 files
│ │ │ +001f8c80: 7973 7465 6d73 206d 7461 6220 636f 756c  ystems mtab coul
│ │ │ +001f8c90: 6420 6465 7363 7269 6265 2061 2022 626c  d describe a "bl
│ │ │ +001f8ca0: 6f63 6b73 697a 6522 2076 616c 7565 2c20  ocksize" value, 
│ │ │ +001f8cb0: 7468 6973 2073 686f 756c 6420 6265 2072  this should be r
│ │ │ +001f8cc0: 6566 6c65 6374 6564 2069 6e0a 2020 2020  eflected in.    
│ │ │ +001f8cd0: 2020 2020 2320 6673 7461 6220 6173 2022      # fstab as "
│ │ │ +001f8ce0: 626c 6f63 6b22 2e20 2054 6865 206e 6578  block".  The nex
│ │ │ +001f8cf0: 7420 7661 7269 6162 6c65 2069 7320 746f  t variable is to
│ │ │ +001f8d00: 2073 6174 6973 6679 2073 6865 6c6c 6368   satisfy shellch
│ │ │ +001f8d10: 6563 6b20 5343 3230 3530 2e0a 2020 2020  eck SC2050..    
│ │ │ +001f8d20: 2020 2020 6673 5f74 7970 653d 2222 0a20      fs_type="". 
│ │ │ +001f8d30: 2020 2020 2020 2069 6620 5b20 2022 2466         if [  "$f
│ │ │ +001f8d40: 735f 7479 7065 2220 3d3d 2022 6973 6f39  s_type" == "iso9
│ │ │ +001f8d50: 3636 3022 205d 203b 2074 6865 6e0a 2020  660" ] ; then.  
│ │ │ +001f8d60: 2020 2020 2020 2020 2020 7072 6576 696f            previo
│ │ │ +001f8d70: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ +001f8d80: 7365 6420 2773 2f62 6c6f 636b 7369 7a65  sed 's/blocksize
│ │ │ +001f8d90: 3d2f 626c 6f63 6b3d 2f27 2026 6c74 3b26  =/block=/' <&
│ │ │ +001f8da0: 6c74 3b26 6c74 3b20 2224 7072 6576 696f  lt;< "$previo
│ │ │ +001f8db0: 7573 5f6d 6f75 6e74 5f6f 7074 7322 290a  us_mount_opts").
│ │ │ +001f8dc0: 2020 2020 2020 2020 6669 0a20 2020 2020          fi.     
│ │ │ +001f8dd0: 2020 2065 6368 6f20 2220 2f76 6172 2020     echo " /var  
│ │ │ +001f8de0: 6465 6661 756c 7473 2c24 7b70 7265 7669  defaults,${previ
│ │ │ +001f8df0: 6f75 735f 6d6f 756e 745f 6f70 7473 7d6e  ous_mount_opts}n
│ │ │ +001f8e00: 6f73 7569 6420 3020 3022 2026 6774 3b26  osuid 0 0" >&
│ │ │ +001f8e10: 6774 3b20 2f65 7463 2f66 7374 6162 0a20  gt; /etc/fstab. 
│ │ │ +001f8e20: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ +001f8e30: 745f 6f70 7420 6f70 7469 6f6e 2069 7320  t_opt option is 
│ │ │ +001f8e40: 6e6f 7420 616c 7265 6164 7920 696e 2074  not already in t
│ │ │ +001f8e50: 6865 206d 6f75 6e74 2070 6f69 6e74 2773  he mount point's
│ │ │ +001f8e60: 202f 6574 632f 6673 7461 6220 656e 7472   /etc/fstab entr
│ │ │ +001f8e70: 792c 2061 6464 2069 740a 2020 2020 656c  y, add it.    el
│ │ │ +001f8e80: 6966 2021 2067 7265 7020 2224 6d6f 756e  if ! grep "$moun
│ │ │ +001f8e90: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001f8ea0: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ +001f8eb0: 207c 2067 7265 7020 2d71 2022 6e6f 7375   | grep -q "nosu
│ │ │ +001f8ec0: 6964 223b 2074 6865 6e0a 2020 2020 2020  id"; then.      
│ │ │ +001f8ed0: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ +001f8ee0: 5f6f 7074 733d 2428 6772 6570 2022 246d  _opts=$(grep "$m
│ │ │ +001f8ef0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001f8f00: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ +001f8f10: 7461 6220 7c20 6177 6b20 277b 7072 696e  tab | awk '{prin
│ │ │ +001f8f20: 7420 2434 7d27 290a 2020 2020 2020 2020  t $4}').        
│ │ │ +001f8f30: 7365 6420 2d69 2022 737c 5c28 247b 6d6f  sed -i "s|\(${mo
│ │ │ +001f8f40: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001f8f50: 7265 6765 7870 7d2e 2a24 7b70 7265 7669  regexp}.*${previ
│ │ │ +001f8f60: 6f75 735f 6d6f 756e 745f 6f70 7473 7d5c  ous_mount_opts}\
│ │ │ +001f8f70: 297c 5c31 2c6e 6f73 7569 647c 2220 2f65  )|\1,nosuid|" /e
│ │ │ +001f8f80: 7463 2f66 7374 6162 0a20 2020 2066 690a  tc/fstab.    fi.
│ │ │ +001f8f90: 0a0a 2020 2020 6966 206d 6b64 6972 202d  ..    if mkdir -
│ │ │ +001f8fa0: 7020 222f 7661 7222 3b20 7468 656e 0a20  p "/var"; then. 
│ │ │ +001f8fb0: 2020 2020 2020 2069 6620 6d6f 756e 7470         if mountp
│ │ │ +001f8fc0: 6f69 6e74 202d 7120 222f 7661 7222 3b20  oint -q "/var"; 
│ │ │ +001f8fd0: 7468 656e 0a20 2020 2020 2020 2020 2020  then.           
│ │ │ +001f8fe0: 206d 6f75 6e74 202d 6f20 7265 6d6f 756e   mount -o remoun
│ │ │ +001f8ff0: 7420 2d2d 7461 7267 6574 2022 2f76 6172  t --target "/var
│ │ │ +001f9000: 220a 2020 2020 2020 2020 6669 0a20 2020  ".        fi.   
│ │ │ +001f9010: 2066 690a 7d0a 0a70 6572 666f 726d 5f72   fi.}..perform_r
│ │ │ +001f9020: 656d 6564 6961 7469 6f6e 0a0a 656c 7365  emediation..else
│ │ │ +001f9030: 0a20 2020 2026 6774 3b26 616d 703b 3220  .    >&2 
│ │ │ +001f9040: 6563 686f 2027 5265 6d65 6469 6174 696f  echo 'Remediatio
│ │ │ +001f9050: 6e20 6973 206e 6f74 2061 7070 6c69 6361  n is not applica
│ │ │ +001f9060: 626c 652c 206e 6f74 6869 6e67 2077 6173  ble, nothing was
│ │ │ +001f9070: 2064 6f6e 6527 0a66 690a 3c2f 636f 6465   done'.fi.
Remedi │ │ │ +001f9130: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ +001f9140: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +001f91d0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +001f91e0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +001f9200: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ +001f9220: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +001f9230: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +001f9250: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ +001f9270: 3c70 7265 3e3c 636f 6465 3e0a 7061 7274
.part
│ │ │ +001f9280: 202f 7661 7220 2d2d 6d6f 756e 746f 7074   /var --mountopt
│ │ │ +001f9290: 696f 6e73 3d22 6e6f 7375 6964 220a 3c2f  ions="nosuid".
Rem │ │ │ -001f9ca0: 6564 6961 7469 6f6e 2041 6e61 636f 6e64 ediation Anacond │ │ │ -001f9cb0: 6120 736e 6970 7065 7420 e287 b23c 2f61 a snippet ...
< │ │ │ -001f9d50: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -001f9d60: 3c74 723e 3c74 683e 4469 7372 7570 7469 Reboot:false
.p
│ │ │ -001f9df0: 6172 7420 2f76 6172 2f74 6d70 202d 2d6d  art /var/tmp --m
│ │ │ -001f9e00: 6f75 6e74 6f70 7469 6f6e 733d 226e 6f65  ountoptions="noe
│ │ │ -001f9e10: 7865 6322 0a3c 2f63 6f64 653e 3c2f 7072  xec".Remediation
│ │ │ -001f9ed0: 2041 6e73 6962 6c65 2073 6e69 7070 6574   Ansible snippet
│ │ │ -001f9ee0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
< │ │ │ -001f9fa0: 7464 3e68 6967 683c 2f74 643e 3c2f 7472 td>highconfigure │ │ │ -001fa000: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
C │ │ │ -001f9d40: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -001f9d70: 6f6e 3a3c 2f74 683e 3c74 643e 6869 6768 on:high │ │ │ -001f9d80: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -001f9dc0: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -001f9dd0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexity │ │ │ -001f9f70: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ -001f9f90: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot: │ │ │ -001f9fc0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ -001f9fe0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
- name: │ │ │ -001fa020: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ -001fa030: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ -001fa040: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ -001fa050: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ -001fa060: 6773 3a0a 2020 2d20 636f 6e66 6967 7572 gs:. - configur │ │ │ -001fa070: 655f 7374 7261 7465 6779 0a20 202d 2068 e_strategy. - h │ │ │ -001fa080: 6967 685f 6469 7372 7570 7469 6f6e 0a20 igh_disruption. │ │ │ -001fa090: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ -001fa0a0: 790a 2020 2d20 6d65 6469 756d 5f73 6576 y. - medium_sev │ │ │ -001fa0b0: 6572 6974 790a 2020 2d20 6d6f 756e 745f erity. - mount_ │ │ │ -001fa0c0: 6f70 7469 6f6e 5f76 6172 5f74 6d70 5f6e option_var_tmp_n │ │ │ -001fa0d0: 6f65 7865 630a 2020 2d20 6e6f 5f72 6562 oexec. - no_reb │ │ │ -001fa0e0: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61 oot_needed..- na │ │ │ -001fa0f0: 6d65 3a20 2741 6464 206e 6f65 7865 6320 me: 'Add noexec │ │ │ -001fa100: 4f70 7469 6f6e 2074 6f20 2f76 6172 2f74 Option to /var/t │ │ │ -001fa110: 6d70 3a20 4368 6563 6b20 696e 666f 726d mp: Check inform │ │ │ -001fa120: 6174 696f 6e20 6173 736f 6369 6174 6564 ation associated │ │ │ -001fa130: 2074 6f20 6d6f 756e 7470 6f69 6e74 270a to mountpoint'. │ │ │ -001fa140: 2020 616e 7369 626c 652e 6275 696c 7469 ansible.builti │ │ │ -001fa150: 6e2e 636f 6d6d 616e 643a 2066 696e 646d n.command: findm │ │ │ -001fa160: 6e74 202d 2d66 7374 6162 2027 2f76 6172 nt --fstab '/var │ │ │ -001fa170: 2f74 6d70 270a 2020 7265 6769 7374 6572 /tmp'. register │ │ │ -001fa180: 3a20 6465 7669 6365 5f6e 616d 650a 2020 : device_name. │ │ │ -001fa190: 6661 696c 6564 5f77 6865 6e3a 2064 6576 failed_when: dev │ │ │ -001fa1a0: 6963 655f 6e61 6d65 2e72 6320 2667 743b ice_name.rc > │ │ │ -001fa1b0: 2031 0a20 2063 6861 6e67 6564 5f77 6865 1. changed_whe │ │ │ -001fa1c0: 6e3a 2066 616c 7365 0a20 2063 6865 636b n: false. check │ │ │ -001fa1d0: 5f6d 6f64 653a 2066 616c 7365 0a20 2077 _mode: false. w │ │ │ -001fa1e0: 6865 6e3a 0a20 202d 2028 206e 6f74 2028 hen:. - ( not ( │ │ │ -001fa1f0: 2022 6b65 726e 656c 2220 696e 2061 6e73 "kernel" in ans │ │ │ -001fa200: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ -001fa210: 6765 7320 616e 6420 2272 706d 2d6f 7374 ges and "rpm-ost │ │ │ -001fa220: 7265 6522 2069 6e20 616e 7369 626c 655f ree" in ansible_ │ │ │ -001fa230: 6661 6374 732e 7061 636b 6167 6573 0a20 facts.packages. │ │ │ -001fa240: 2020 2061 6e64 2022 626f 6f74 6322 2069 and "bootc" i │ │ │ -001fa250: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001fa260: 7061 636b 6167 6573 2061 6e64 206e 6f74 packages and not │ │ │ -001fa270: 2022 6f70 656e 7368 6966 742d 6b75 6265 "openshift-kube │ │ │ -001fa280: 6c65 7422 2069 6e20 616e 7369 626c 655f let" in ansible_ │ │ │ -001fa290: 6661 6374 732e 7061 636b 6167 6573 0a20 facts.packages. │ │ │ -001fa2a0: 2020 2061 6e64 2022 6f73 7472 6565 2220 and "ostree" │ │ │ -001fa2b0: 696e 2061 6e73 6962 6c65 5f70 726f 635f in ansible_proc_ │ │ │ -001fa2c0: 636d 646c 696e 6520 2920 616e 6420 6e6f cmdline ) and no │ │ │ -001fa2d0: 7420 2820 616e 7369 626c 655f 7669 7274 t ( ansible_virt │ │ │ -001fa2e0: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520 ualization_type │ │ │ -001fa2f0: 696e 0a20 2020 205b 2264 6f63 6b65 7222 in. ["docker" │ │ │ -001fa300: 2c20 226c 7863 222c 2022 6f70 656e 767a , "lxc", "openvz │ │ │ -001fa310: 222c 2022 706f 646d 616e 222c 2022 636f ", "podman", "co │ │ │ -001fa320: 6e74 6169 6e65 7222 5d20 2920 290a 2020 ntainer"] ) ). │ │ │ -001fa330: 2d20 2722 2f76 6172 2f74 6d70 2220 696e - '"/var/tmp" in │ │ │ -001fa340: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320 ansible_mounts │ │ │ -001fa350: 7c20 6d61 7028 6174 7472 6962 7574 653d | map(attribute= │ │ │ -001fa360: 226d 6f75 6e74 2229 207c 206c 6973 7427 "mount") | list' │ │ │ -001fa370: 0a20 2074 6167 733a 0a20 202d 2063 6f6e . tags:. - con │ │ │ -001fa380: 6669 6775 7265 5f73 7472 6174 6567 790a figure_strategy. │ │ │ -001fa390: 2020 2d20 6869 6768 5f64 6973 7275 7074 - high_disrupt │ │ │ -001fa3a0: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70 ion. - low_comp │ │ │ -001fa3b0: 6c65 7869 7479 0a20 202d 206d 6564 6975 lexity. - mediu │ │ │ -001fa3c0: 6d5f 7365 7665 7269 7479 0a20 202d 206d m_severity. - m │ │ │ -001fa3d0: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f ount_option_var_ │ │ │ -001fa3e0: 746d 705f 6e6f 6578 6563 0a20 202d 206e tmp_noexec. - n │ │ │ -001fa3f0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a o_reboot_needed. │ │ │ -001fa400: 0a2d 206e 616d 653a 2027 4164 6420 6e6f .- name: 'Add no │ │ │ -001fa410: 6578 6563 204f 7074 696f 6e20 746f 202f exec Option to / │ │ │ -001fa420: 7661 722f 746d 703a 2043 7265 6174 6520 var/tmp: Create │ │ │ -001fa430: 6d6f 756e 745f 696e 666f 2064 6963 7469 mount_info dicti │ │ │ -001fa440: 6f6e 6172 7920 7661 7269 6162 6c65 270a onary variable'. │ │ │ -001fa450: 2020 7365 745f 6661 6374 3a0a 2020 2020 set_fact:. │ │ │ -001fa460: 6d6f 756e 745f 696e 666f 3a20 277b 7b20 mount_info: '{{ │ │ │ -001fa470: 6d6f 756e 745f 696e 666f 7c64 6566 6175 mount_info|defau │ │ │ -001fa480: 6c74 287b 7d29 7c63 6f6d 6269 6e65 287b lt({})|combine({ │ │ │ -001fa490: 6974 656d 2e30 3a20 6974 656d 2e31 7d29 item.0: item.1}) │ │ │ -001fa4a0: 207d 7d27 0a20 2077 6974 685f 746f 6765 }}'. with_toge │ │ │ -001fa4b0: 7468 6572 3a0a 2020 2d20 277b 7b20 6465 ther:. - '{{ de │ │ │ -001fa4c0: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ -001fa4d0: 5f6c 696e 6573 5b30 5d2e 7370 6c69 7428 _lines[0].split( │ │ │ -001fa4e0: 2920 7c20 6d61 7028 2727 6c6f 7765 7227 ) | map(''lower' │ │ │ -001fa4f0: 2729 207c 206c 6973 7420 7d7d 270a 2020 ') | list }}'. │ │ │ -001fa500: 2d20 277b 7b20 6465 7669 6365 5f6e 616d - '{{ device_nam │ │ │ -001fa510: 652e 7374 646f 7574 5f6c 696e 6573 5b31 e.stdout_lines[1 │ │ │ -001fa520: 5d2e 7370 6c69 7428 2920 7c20 6c69 7374 ].split() | list │ │ │ -001fa530: 207d 7d27 0a20 2077 6865 6e3a 0a20 202d }}'. when:. - │ │ │ -001fa540: 2028 206e 6f74 2028 2022 6b65 726e 656c ( not ( "kernel │ │ │ -001fa550: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -001fa560: 7473 2e70 6163 6b61 6765 7320 616e 6420 ts.packages and │ │ │ -001fa570: 2272 706d 2d6f 7374 7265 6522 2069 6e20 "rpm-ostree" in │ │ │ -001fa580: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -001fa590: 636b 6167 6573 0a20 2020 2061 6e64 2022 ckages. and " │ │ │ -001fa5a0: 626f 6f74 6322 2069 6e20 616e 7369 626c bootc" in ansibl │ │ │ -001fa5b0: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -001fa5c0: 2061 6e64 206e 6f74 2022 6f70 656e 7368 and not "opensh │ │ │ -001fa5d0: 6966 742d 6b75 6265 6c65 7422 2069 6e20 ift-kubelet" in │ │ │ -001fa5e0: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -001fa5f0: 636b 6167 6573 0a20 2020 2061 6e64 2022 ckages. and " │ │ │ -001fa600: 6f73 7472 6565 2220 696e 2061 6e73 6962 ostree" in ansib │ │ │ -001fa610: 6c65 5f70 726f 635f 636d 646c 696e 6520 le_proc_cmdline │ │ │ -001fa620: 2920 616e 6420 6e6f 7420 2820 616e 7369 ) and not ( ansi │ │ │ -001fa630: 626c 655f 7669 7274 7561 6c69 7a61 7469 ble_virtualizati │ │ │ -001fa640: 6f6e 5f74 7970 6520 696e 0a20 2020 205b on_type in. [ │ │ │ -001fa650: 2264 6f63 6b65 7222 2c20 226c 7863 222c "docker", "lxc", │ │ │ -001fa660: 2022 6f70 656e 767a 222c 2022 706f 646d "openvz", "podm │ │ │ -001fa670: 616e 222c 2022 636f 6e74 6169 6e65 7222 an", "container" │ │ │ -001fa680: 5d20 2920 290a 2020 2d20 2722 2f76 6172 ] ) ). - '"/var │ │ │ -001fa690: 2f74 6d70 2220 696e 2061 6e73 6962 6c65 /tmp" in ansible │ │ │ -001fa6a0: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174 _mounts | map(at │ │ │ -001fa6b0: 7472 6962 7574 653d 226d 6f75 6e74 2229 tribute="mount") │ │ │ -001fa6c0: 207c 206c 6973 7427 0a20 202d 2064 6576 | list'. - dev │ │ │ -001fa6d0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420 ice_name.stdout │ │ │ -001fa6e0: 6973 2064 6566 696e 6564 2061 6e64 2064 is defined and d │ │ │ -001fa6f0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75 evice_name.stdou │ │ │ -001fa700: 745f 6c69 6e65 7320 6973 2064 6566 696e t_lines is defin │ │ │ -001fa710: 6564 0a20 202d 2028 6465 7669 6365 5f6e ed. - (device_n │ │ │ -001fa720: 616d 652e 7374 646f 7574 207c 206c 656e ame.stdout | len │ │ │ -001fa730: 6774 6820 2667 743b 2030 290a 2020 7461 gth > 0). ta │ │ │ -001fa740: 6773 3a0a 2020 2d20 636f 6e66 6967 7572 gs:. - configur │ │ │ -001fa750: 655f 7374 7261 7465 6779 0a20 202d 2068 e_strategy. - h │ │ │ -001fa760: 6967 685f 6469 7372 7570 7469 6f6e 0a20 igh_disruption. │ │ │ -001fa770: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ -001fa780: 790a 2020 2d20 6d65 6469 756d 5f73 6576 y. - medium_sev │ │ │ -001fa790: 6572 6974 790a 2020 2d20 6d6f 756e 745f erity. - mount_ │ │ │ -001fa7a0: 6f70 7469 6f6e 5f76 6172 5f74 6d70 5f6e option_var_tmp_n │ │ │ -001fa7b0: 6f65 7865 630a 2020 2d20 6e6f 5f72 6562 oexec. - no_reb │ │ │ -001fa7c0: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61 oot_needed..- na │ │ │ -001fa7d0: 6d65 3a20 2741 6464 206e 6f65 7865 6320 me: 'Add noexec │ │ │ -001fa7e0: 4f70 7469 6f6e 2074 6f20 2f76 6172 2f74 Option to /var/t │ │ │ -001fa7f0: 6d70 3a20 4966 202f 7661 722f 746d 7020 mp: If /var/tmp │ │ │ -001fa800: 6e6f 7420 6d6f 756e 7465 642c 2063 7261 not mounted, cra │ │ │ -001fa810: 6674 206d 6f75 6e74 5f69 6e66 6f0a 2020 ft mount_info. │ │ │ -001fa820: 2020 6d61 6e75 616c 6c79 270a 2020 7365 manually'. se │ │ │ -001fa830: 745f 6661 6374 3a0a 2020 2020 6d6f 756e t_fact:. moun │ │ │ -001fa840: 745f 696e 666f 3a20 277b 7b20 6d6f 756e t_info: '{{ moun │ │ │ -001fa850: 745f 696e 666f 7c64 6566 6175 6c74 287b t_info|default({ │ │ │ -001fa860: 7d29 7c63 6f6d 6269 6e65 287b 6974 656d })|combine({item │ │ │ -001fa870: 2e30 3a20 6974 656d 2e31 7d29 207d 7d27 .0: item.1}) }}' │ │ │ -001fa880: 0a20 2077 6974 685f 746f 6765 7468 6572 . with_together │ │ │ -001fa890: 3a0a 2020 2d20 2d20 7461 7267 6574 0a20 :. - - target. │ │ │ -001fa8a0: 2020 202d 2073 6f75 7263 650a 2020 2020 - source. │ │ │ -001fa8b0: 2d20 6673 7479 7065 0a20 2020 202d 206f - fstype. - o │ │ │ -001fa8c0: 7074 696f 6e73 0a20 202d 202d 202f 7661 ptions. - - /va │ │ │ -001fa8d0: 722f 746d 700a 2020 2020 2d20 2727 0a20 r/tmp. - ''. │ │ │ -001fa8e0: 2020 202d 2027 270a 2020 2020 2d20 6465 - ''. - de │ │ │ -001fa8f0: 6661 756c 7473 0a20 2077 6865 6e3a 0a20 faults. when:. │ │ │ -001fa900: 202d 2028 206e 6f74 2028 2022 6b65 726e - ( not ( "kern │ │ │ -001fa910: 656c 2220 696e 2061 6e73 6962 6c65 5f66 el" in ansible_f │ │ │ -001fa920: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ -001fa930: 6420 2272 706d 2d6f 7374 7265 6522 2069 d "rpm-ostree" i │ │ │ -001fa940: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001fa950: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ -001fa960: 2022 626f 6f74 6322 2069 6e20 616e 7369 "bootc" in ansi │ │ │ -001fa970: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -001fa980: 6573 2061 6e64 206e 6f74 2022 6f70 656e es and not "open │ │ │ -001fa990: 7368 6966 742d 6b75 6265 6c65 7422 2069 shift-kubelet" i │ │ │ -001fa9a0: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001fa9b0: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ -001fa9c0: 2022 6f73 7472 6565 2220 696e 2061 6e73 "ostree" in ans │ │ │ -001fa9d0: 6962 6c65 5f70 726f 635f 636d 646c 696e ible_proc_cmdlin │ │ │ -001fa9e0: 6520 2920 616e 6420 6e6f 7420 2820 616e e ) and not ( an │ │ │ -001fa9f0: 7369 626c 655f 7669 7274 7561 6c69 7a61 sible_virtualiza │ │ │ -001faa00: 7469 6f6e 5f74 7970 6520 696e 0a20 2020 tion_type in. │ │ │ -001faa10: 205b 2264 6f63 6b65 7222 2c20 226c 7863 ["docker", "lxc │ │ │ -001faa20: 222c 2022 6f70 656e 767a 222c 2022 706f ", "openvz", "po │ │ │ -001faa30: 646d 616e 222c 2022 636f 6e74 6169 6e65 dman", "containe │ │ │ -001faa40: 7222 5d20 2920 290a 2020 2d20 2722 2f76 r"] ) ). - '"/v │ │ │ -001faa50: 6172 2f74 6d70 2220 696e 2061 6e73 6962 ar/tmp" in ansib │ │ │ -001faa60: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028 le_mounts | map( │ │ │ -001faa70: 6174 7472 6962 7574 653d 226d 6f75 6e74 attribute="mount │ │ │ -001faa80: 2229 207c 206c 6973 7427 0a20 202d 2028 ") | list'. - ( │ │ │ -001faa90: 222d 2d66 7374 6162 2220 7c20 6c65 6e67 "--fstab" | leng │ │ │ -001faaa0: 7468 203d 3d20 3029 0a20 202d 2064 6576 th == 0). - dev │ │ │ -001faab0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420 ice_name.stdout │ │ │ -001faac0: 6973 2064 6566 696e 6564 2061 6e64 2064 is defined and d │ │ │ -001faad0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75 evice_name.stdou │ │ │ -001faae0: 745f 6c69 6e65 7320 6973 2064 6566 696e t_lines is defin │ │ │ -001faaf0: 6564 0a20 202d 2028 6465 7669 6365 5f6e ed. - (device_n │ │ │ -001fab00: 616d 652e 7374 646f 7574 207c 206c 656e ame.stdout | len │ │ │ -001fab10: 6774 6820 3d3d 2030 290a 2020 7461 6773 gth == 0). tags │ │ │ -001fab20: 3a0a 2020 2d20 636f 6e66 6967 7572 655f :. - configure_ │ │ │ -001fab30: 7374 7261 7465 6779 0a20 202d 2068 6967 strategy. - hig │ │ │ -001fab40: 685f 6469 7372 7570 7469 6f6e 0a20 202d h_disruption. - │ │ │ -001fab50: 206c 6f77 5f63 6f6d 706c 6578 6974 790a low_complexity. │ │ │ -001fab60: 2020 2d20 6d65 6469 756d 5f73 6576 6572 - medium_sever │ │ │ -001fab70: 6974 790a 2020 2d20 6d6f 756e 745f 6f70 ity. - mount_op │ │ │ -001fab80: 7469 6f6e 5f76 6172 5f74 6d70 5f6e 6f65 tion_var_tmp_noe │ │ │ -001fab90: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f xec. - no_reboo │ │ │ -001faba0: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65 t_needed..- name │ │ │ -001fabb0: 3a20 2741 6464 206e 6f65 7865 6320 4f70 : 'Add noexec Op │ │ │ -001fabc0: 7469 6f6e 2074 6f20 2f76 6172 2f74 6d70 tion to /var/tmp │ │ │ -001fabd0: 3a20 4d61 6b65 2073 7572 6520 6e6f 6578 : Make sure noex │ │ │ -001fabe0: 6563 206f 7074 696f 6e20 6973 2070 6172 ec option is par │ │ │ -001fabf0: 7420 6f66 2074 6865 2074 6f0a 2020 2020 t of the to. │ │ │ -001fac00: 2f76 6172 2f74 6d70 206f 7074 696f 6e73 /var/tmp options │ │ │ -001fac10: 270a 2020 7365 745f 6661 6374 3a0a 2020 '. set_fact:. │ │ │ -001fac20: 2020 6d6f 756e 745f 696e 666f 3a20 277b mount_info: '{ │ │ │ -001fac30: 7b20 6d6f 756e 745f 696e 666f 207c 2063 { mount_info | c │ │ │ -001fac40: 6f6d 6269 6e65 2820 7b27 276f 7074 696f ombine( {''optio │ │ │ -001fac50: 6e73 2727 3a27 2727 277e 286d 6f75 6e74 ns'':''''~(mount │ │ │ -001fac60: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c0a _info.options |. │ │ │ -001fac70: 2020 2020 2020 6465 6661 756c 7428 2727 default('' │ │ │ -001fac80: 2727 2929 7e28 2727 2c27 2720 6966 2028 ''))~('','' if ( │ │ │ -001fac90: 6d6f 756e 745f 696e 666f 2e6f 7074 696f mount_info.optio │ │ │ -001faca0: 6e73 207c 2064 6566 6175 6c74 2827 2727 ns | default(''' │ │ │ -001facb0: 2729 2920 656c 7365 2027 2727 2729 7e27 ')) else '''')~' │ │ │ -001facc0: 276e 6f65 7865 6327 270a 2020 2020 2020 'noexec''. │ │ │ -001facd0: 7d29 207d 7d27 0a20 2077 6865 6e3a 0a20 }) }}'. when:. │ │ │ -001face0: 202d 2028 206e 6f74 2028 2022 6b65 726e - ( not ( "kern │ │ │ -001facf0: 656c 2220 696e 2061 6e73 6962 6c65 5f66 el" in ansible_f │ │ │ -001fad00: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ -001fad10: 6420 2272 706d 2d6f 7374 7265 6522 2069 d "rpm-ostree" i │ │ │ -001fad20: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001fad30: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ -001fad40: 2022 626f 6f74 6322 2069 6e20 616e 7369 "bootc" in ansi │ │ │ -001fad50: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -001fad60: 6573 2061 6e64 206e 6f74 2022 6f70 656e es and not "open │ │ │ -001fad70: 7368 6966 742d 6b75 6265 6c65 7422 2069 shift-kubelet" i │ │ │ -001fad80: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001fad90: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ -001fada0: 2022 6f73 7472 6565 2220 696e 2061 6e73 "ostree" in ans │ │ │ -001fadb0: 6962 6c65 5f70 726f 635f 636d 646c 696e ible_proc_cmdlin │ │ │ -001fadc0: 6520 2920 616e 6420 6e6f 7420 2820 616e e ) and not ( an │ │ │ -001fadd0: 7369 626c 655f 7669 7274 7561 6c69 7a61 sible_virtualiza │ │ │ -001fade0: 7469 6f6e 5f74 7970 6520 696e 0a20 2020 tion_type in. │ │ │ -001fadf0: 205b 2264 6f63 6b65 7222 2c20 226c 7863 ["docker", "lxc │ │ │ -001fae00: 222c 2022 6f70 656e 767a 222c 2022 706f ", "openvz", "po │ │ │ -001fae10: 646d 616e 222c 2022 636f 6e74 6169 6e65 dman", "containe │ │ │ -001fae20: 7222 5d20 2920 290a 2020 2d20 2722 2f76 r"] ) ). - '"/v │ │ │ -001fae30: 6172 2f74 6d70 2220 696e 2061 6e73 6962 ar/tmp" in ansib │ │ │ -001fae40: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028 le_mounts | map( │ │ │ -001fae50: 6174 7472 6962 7574 653d 226d 6f75 6e74 attribute="mount │ │ │ -001fae60: 2229 207c 206c 6973 7427 0a20 202d 206d ") | list'. - m │ │ │ -001fae70: 6f75 6e74 5f69 6e66 6f20 6973 2064 6566 ount_info is def │ │ │ -001fae80: 696e 6564 2061 6e64 2022 6e6f 6578 6563 ined and "noexec │ │ │ -001fae90: 2220 6e6f 7420 696e 2028 6d6f 756e 745f " not in (mount_ │ │ │ -001faea0: 696e 666f 2e6f 7074 696f 6e73 207c 2064 info.options | d │ │ │ -001faeb0: 6566 6175 6c74 2827 2729 290a 2020 7461 efault('')). ta │ │ │ -001faec0: 6773 3a0a 2020 2d20 636f 6e66 6967 7572 gs:. - configur │ │ │ -001faed0: 655f 7374 7261 7465 6779 0a20 202d 2068 e_strategy. - h │ │ │ -001faee0: 6967 685f 6469 7372 7570 7469 6f6e 0a20 igh_disruption. │ │ │ -001faef0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ -001faf00: 790a 2020 2d20 6d65 6469 756d 5f73 6576 y. - medium_sev │ │ │ -001faf10: 6572 6974 790a 2020 2d20 6d6f 756e 745f erity. - mount_ │ │ │ -001faf20: 6f70 7469 6f6e 5f76 6172 5f74 6d70 5f6e option_var_tmp_n │ │ │ -001faf30: 6f65 7865 630a 2020 2d20 6e6f 5f72 6562 oexec. - no_reb │ │ │ -001faf40: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61 oot_needed..- na │ │ │ -001faf50: 6d65 3a20 2741 6464 206e 6f65 7865 6320 me: 'Add noexec │ │ │ -001faf60: 4f70 7469 6f6e 2074 6f20 2f76 6172 2f74 Option to /var/t │ │ │ -001faf70: 6d70 3a20 456e 7375 7265 202f 7661 722f mp: Ensure /var/ │ │ │ -001faf80: 746d 7020 6973 206d 6f75 6e74 6564 2077 tmp is mounted w │ │ │ -001faf90: 6974 6820 6e6f 6578 6563 206f 7074 696f ith noexec optio │ │ │ -001fafa0: 6e27 0a20 2061 6e73 6962 6c65 2e70 6f73 n'. ansible.pos │ │ │ -001fafb0: 6978 2e6d 6f75 6e74 3a0a 2020 2020 7061 ix.mount:. pa │ │ │ -001fafc0: 7468 3a20 2f76 6172 2f74 6d70 0a20 2020 th: /var/tmp. │ │ │ -001fafd0: 2073 7263 3a20 277b 7b20 6d6f 756e 745f src: '{{ mount_ │ │ │ -001fafe0: 696e 666f 2e73 6f75 7263 6520 7c20 6465 info.source | de │ │ │ -001faff0: 6661 756c 7428 2727 2727 2920 7d7d 270a fault('''') }}'. │ │ │ -001fb000: 2020 2020 6f70 7473 3a20 277b 7b20 6d6f opts: '{{ mo │ │ │ -001fb010: 756e 745f 696e 666f 2e6f 7074 696f 6e73 unt_info.options │ │ │ -001fb020: 207c 2064 6566 6175 6c74 2827 2727 2729 | default('''') │ │ │ -001fb030: 207d 7d27 0a20 2020 2073 7461 7465 3a20 }}'. state: │ │ │ -001fb040: 6d6f 756e 7465 640a 2020 2020 6673 7479 mounted. fsty │ │ │ -001fb050: 7065 3a20 277b 7b20 6d6f 756e 745f 696e pe: '{{ mount_in │ │ │ -001fb060: 666f 2e66 7374 7970 6520 7c20 6465 6661 fo.fstype | defa │ │ │ -001fb070: 756c 7428 2727 2727 2920 7d7d 270a 2020 ult('''') }}'. │ │ │ -001fb080: 7265 6769 7374 6572 3a20 6d6f 756e 745f register: mount_ │ │ │ -001fb090: 7265 7375 6c74 0a20 2066 6169 6c65 645f result. failed_ │ │ │ -001fb0a0: 7768 656e 3a0a 2020 2d20 6d6f 756e 745f when:. - mount_ │ │ │ -001fb0b0: 7265 7375 6c74 2069 7320 6661 696c 6564 result is failed │ │ │ -001fb0c0: 0a20 202d 2027 2727 7461 7267 6574 2069 . - '''target i │ │ │ -001fb0d0: 7320 6275 7379 2727 206e 6f74 2069 6e20 s busy'' not in │ │ │ -001fb0e0: 286d 6f75 6e74 5f72 6573 756c 742e 6d73 (mount_result.ms │ │ │ -001fb0f0: 6720 7c20 6465 6661 756c 7428 2727 2727 g | default('''' │ │ │ -001fb100: 2929 270a 2020 2d20 2727 2761 6c72 6561 ))'. - '''alrea │ │ │ -001fb110: 6479 206d 6f75 6e74 6564 2727 206e 6f74 dy mounted'' not │ │ │ -001fb120: 2069 6e20 286d 6f75 6e74 5f72 6573 756c in (mount_resul │ │ │ -001fb130: 742e 6d73 6720 7c20 6465 6661 756c 7428 t.msg | default( │ │ │ -001fb140: 2727 2727 2929 270a 2020 7768 656e 3a0a ''''))'. when:. │ │ │ -001fb150: 2020 2d20 2820 6e6f 7420 2820 226b 6572 - ( not ( "ker │ │ │ -001fb160: 6e65 6c22 2069 6e20 616e 7369 626c 655f nel" in ansible_ │ │ │ -001fb170: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ -001fb180: 6e64 2022 7270 6d2d 6f73 7472 6565 2220 nd "rpm-ostree" │ │ │ -001fb190: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ -001fb1a0: 2e70 6163 6b61 6765 730a 2020 2020 616e .packages. an │ │ │ -001fb1b0: 6420 2262 6f6f 7463 2220 696e 2061 6e73 d "bootc" in ans │ │ │ -001fb1c0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ -001fb1d0: 6765 7320 616e 6420 6e6f 7420 226f 7065 ges and not "ope │ │ │ -001fb1e0: 6e73 6869 6674 2d6b 7562 656c 6574 2220 nshift-kubelet" │ │ │ -001fb1f0: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ -001fb200: 2e70 6163 6b61 6765 730a 2020 2020 616e .packages. an │ │ │ -001fb210: 6420 226f 7374 7265 6522 2069 6e20 616e d "ostree" in an │ │ │ -001fb220: 7369 626c 655f 7072 6f63 5f63 6d64 6c69 sible_proc_cmdli │ │ │ -001fb230: 6e65 2029 2061 6e64 206e 6f74 2028 2061 ne ) and not ( a │ │ │ -001fb240: 6e73 6962 6c65 5f76 6972 7475 616c 697a nsible_virtualiz │ │ │ -001fb250: 6174 696f 6e5f 7479 7065 2069 6e0a 2020 ation_type in. │ │ │ -001fb260: 2020 5b22 646f 636b 6572 222c 2022 6c78 ["docker", "lx │ │ │ -001fb270: 6322 2c20 226f 7065 6e76 7a22 2c20 2270 c", "openvz", "p │ │ │ -001fb280: 6f64 6d61 6e22 2c20 2263 6f6e 7461 696e odman", "contain │ │ │ -001fb290: 6572 225d 2029 2029 0a20 202d 2027 222f er"] ) ). - '"/ │ │ │ -001fb2a0: 7661 722f 746d 7022 2069 6e20 616e 7369 var/tmp" in ansi │ │ │ -001fb2b0: 626c 655f 6d6f 756e 7473 207c 206d 6170 ble_mounts | map │ │ │ -001fb2c0: 2861 7474 7269 6275 7465 3d22 6d6f 756e (attribute="moun │ │ │ -001fb2d0: 7422 2920 7c20 6c69 7374 270a 2020 2d20 t") | list'. - │ │ │ -001fb2e0: 6d6f 756e 745f 696e 666f 2069 7320 6465 mount_info is de │ │ │ -001fb2f0: 6669 6e65 640a 2020 2d20 2864 6576 6963 fined. - (devic │ │ │ -001fb300: 655f 6e61 6d65 2e73 7464 6f75 7420 6973 e_name.stdout is │ │ │ -001fb310: 2064 6566 696e 6564 2061 6e64 2028 6465 defined and (de │ │ │ -001fb320: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ -001fb330: 207c 206c 656e 6774 6820 2667 743b 2030 | length > 0 │ │ │ -001fb340: 2929 206f 7220 2822 2d2d 6673 7461 6222 )) or ("--fstab" │ │ │ -001fb350: 0a20 2020 207c 206c 656e 6774 6820 3d3d . | length == │ │ │ -001fb360: 2030 290a 2020 7461 6773 3a0a 2020 2d20 0). tags:. - │ │ │ -001fb370: 636f 6e66 6967 7572 655f 7374 7261 7465 configure_strate │ │ │ -001fb380: 6779 0a20 202d 2068 6967 685f 6469 7372 gy. - high_disr │ │ │ -001fb390: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63 uption. - low_c │ │ │ -001fb3a0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65 omplexity. - me │ │ │ -001fb3b0: 6469 756d 5f73 6576 6572 6974 790a 2020 dium_severity. │ │ │ -001fb3c0: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76 - mount_option_v │ │ │ -001fb3d0: 6172 5f74 6d70 5f6e 6f65 7865 630a 2020 ar_tmp_noexec. │ │ │ -001fb3e0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ -001fb3f0: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e ed. │ │ │ -001fb400: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation S │ │ │ -001fb4b0: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ -001fb4c0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -001fb560: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Reboot:false
# Remediation
│ │ │ -001fb580: 2069 7320 6170 706c 6963 6162 6c65 206f   is applicable o
│ │ │ -001fb590: 6e6c 7920 696e 2063 6572 7461 696e 2070  nly in certain p
│ │ │ -001fb5a0: 6c61 7466 6f72 6d73 0a69 6620 2820 2120  latforms.if ( ! 
│ │ │ -001fb5b0: 2820 7b20 7270 6d20 2d2d 7175 6965 7420  ( { rpm --quiet 
│ │ │ -001fb5c0: 2d71 206b 6572 6e65 6c20 3b7d 2026 616d  -q kernel ;} &am
│ │ │ -001fb5d0: 703b 2661 6d70 3b20 7b20 7270 6d20 2d2d  p;& { rpm --
│ │ │ -001fb5e0: 7175 6965 7420 2d71 2072 706d 2d6f 7374  quiet -q rpm-ost
│ │ │ -001fb5f0: 7265 6520 3b7d 2026 616d 703b 2661 6d70  ree ;} &&
│ │ │ -001fb600: 3b20 7b20 7270 6d20 2d2d 7175 6965 7420  ; { rpm --quiet 
│ │ │ -001fb610: 2d71 2062 6f6f 7463 203b 7d20 2661 6d70  -q bootc ;} &
│ │ │ -001fb620: 3b26 616d 703b 207b 2021 2072 706d 202d  ;& { ! rpm -
│ │ │ -001fb630: 2d71 7569 6574 202d 7120 6f70 656e 7368  -quiet -q opensh
│ │ │ -001fb640: 6966 742d 6b75 6265 6c65 7420 3b7d 2026  ift-kubelet ;} &
│ │ │ -001fb650: 616d 703b 2661 6d70 3b20 285b 202d 6620  amp;& ([ -f 
│ │ │ -001fb660: 2f72 756e 2f6f 7374 7265 652d 626f 6f74  /run/ostree-boot
│ │ │ -001fb670: 6564 205d 207c 7c20 5b20 2d4c 202f 6f73  ed ] || [ -L /os
│ │ │ -001fb680: 7472 6565 205d 2920 2920 2661 6d70 3b26  tree ]) ) &&
│ │ │ -001fb690: 616d 703b 2021 2028 205b 202d 6620 2f2e  amp; ! ( [ -f /.
│ │ │ -001fb6a0: 646f 636b 6572 656e 7620 5d20 7c7c 205b  dockerenv ] || [
│ │ │ -001fb6b0: 202d 6620 2f72 756e 2f2e 636f 6e74 6169   -f /run/.contai
│ │ │ -001fb6c0: 6e65 7265 6e76 205d 2029 2029 2026 616d  nerenv ] ) ) &am
│ │ │ -001fb6d0: 703b 2661 6d70 3b20 7b20 2820 6669 6e64  p;& { ( find
│ │ │ -001fb6e0: 6d6e 7420 2d2d 6b65 726e 656c 2022 2f76  mnt --kernel "/v
│ │ │ -001fb6f0: 6172 2f74 6d70 2220 2667 743b 202f 6465  ar/tmp" > /de
│ │ │ -001fb700: 762f 6e75 6c6c 207c 7c20 6669 6e64 6d6e  v/null || findmn
│ │ │ -001fb710: 7420 2d2d 6673 7461 6220 222f 7661 722f  t --fstab "/var/
│ │ │ -001fb720: 746d 7022 2026 6774 3b20 2f64 6576 2f6e  tmp" > /dev/n
│ │ │ -001fb730: 756c 6c20 293b 207d 3b20 7468 656e 0a0a  ull ); }; then..
│ │ │ -001fb740: 6675 6e63 7469 6f6e 2070 6572 666f 726d  function perform
│ │ │ -001fb750: 5f72 656d 6564 6961 7469 6f6e 207b 0a0a  _remediation {..
│ │ │ -001fb760: 2020 2020 0a20 2020 2020 2020 2023 2074      .        # t
│ │ │ -001fb770: 6865 206d 6f75 6e74 2070 6f69 6e74 202f  he mount point /
│ │ │ -001fb780: 7661 722f 746d 7020 6861 7320 746f 2062  var/tmp has to b
│ │ │ -001fb790: 6520 6465 6669 6e65 6420 696e 202f 6574  e defined in /et
│ │ │ -001fb7a0: 632f 6673 7461 620a 2020 2020 2020 2020  c/fstab.        
│ │ │ -001fb7b0: 2320 6265 666f 7265 2074 6869 7320 7265  # before this re
│ │ │ -001fb7c0: 6d65 6469 6174 696f 6e20 6361 6e20 6265  mediation can be
│ │ │ -001fb7d0: 2065 7865 6375 7465 642e 2049 6e20 6361   executed. In ca
│ │ │ -001fb7e0: 7365 2069 7420 6973 206e 6f74 2064 6566  se it is not def
│ │ │ -001fb7f0: 696e 6564 2c20 7468 650a 2020 2020 2020  ined, the.      
│ │ │ -001fb800: 2020 2320 7265 6d65 6469 6174 696f 6e20    # remediation 
│ │ │ -001fb810: 6162 6f72 7473 2061 6e64 206e 6f20 6368  aborts and no ch
│ │ │ -001fb820: 616e 6765 7320 7265 6761 7264 696e 6720  anges regarding 
│ │ │ -001fb830: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ -001fb840: 6172 6520 646f 6e65 2e0a 2020 2020 2020  are done..      
│ │ │ -001fb850: 2020 6d6f 756e 745f 706f 696e 745f 6d61    mount_point_ma
│ │ │ -001fb860: 7463 685f 7265 6765 7870 3d22 2428 7072  tch_regexp="$(pr
│ │ │ -001fb870: 696e 7466 2022 5e5b 5b3a 7370 6163 653a  intf "^[[:space:
│ │ │ -001fb880: 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163  ]]*[^#].*[[:spac
│ │ │ -001fb890: 653a 5d5d 2573 5b5b 3a73 7061 6365 3a5d  e:]]%s[[:space:]
│ │ │ -001fb8a0: 5d22 2022 2f76 6172 2f74 6d70 2229 220a  ]" "/var/tmp")".
│ │ │ -001fb8b0: 0a20 2020 2067 7265 7020 2224 6d6f 756e  .    grep "$moun
│ │ │ -001fb8c0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001fb8d0: 6765 7870 2220 2d71 202f 6574 632f 6673  gexp" -q /etc/fs
│ │ │ -001fb8e0: 7461 6220 5c0a 2020 2020 2020 2020 7c7c  tab \.        ||
│ │ │ -001fb8f0: 207b 2065 6368 6f20 2254 6865 206d 6f75   { echo "The mou
│ │ │ -001fb900: 6e74 2070 6f69 6e74 2027 2f76 6172 2f74  nt point '/var/t
│ │ │ -001fb910: 6d70 2720 6973 206e 6f74 2065 7665 6e20  mp' is not even 
│ │ │ -001fb920: 696e 202f 6574 632f 6673 7461 622c 2073  in /etc/fstab, s
│ │ │ -001fb930: 6f20 7765 2063 616e 2774 2073 6574 2075  o we can't set u
│ │ │ -001fb940: 7020 6d6f 756e 7420 6f70 7469 6f6e 7322  p mount options"
│ │ │ -001fb950: 2026 6774 3b26 616d 703b 323b 0a20 2020   >&2;.   
│ │ │ -001fb960: 2020 2020 2020 2020 2020 2020 2065 6368               ech
│ │ │ -001fb970: 6f20 224e 6f74 2072 656d 6564 6961 7469  o "Not remediati
│ │ │ -001fb980: 6e67 2c20 6265 6361 7573 6520 7468 6572  ng, because ther
│ │ │ -001fb990: 6520 6973 206e 6f20 7265 636f 7264 206f  e is no record o
│ │ │ -001fb9a0: 6620 2f76 6172 2f74 6d70 2069 6e20 2f65  f /var/tmp in /e
│ │ │ -001fb9b0: 7463 2f66 7374 6162 2220 2667 743b 2661  tc/fstab" >&a
│ │ │ -001fb9c0: 6d70 3b32 3b20 7265 7475 726e 2031 3b20  mp;2; return 1; 
│ │ │ -001fb9d0: 7d0a 2020 2020 0a0a 0a20 2020 206d 6f75  }.    ...    mou
│ │ │ -001fb9e0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001fb9f0: 6567 6578 703d 2224 2870 7269 6e74 6620  egexp="$(printf 
│ │ │ -001fba00: 225e 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e  "^[[:space:]]*[^
│ │ │ -001fba10: 235d 2e2a 5b5b 3a73 7061 6365 3a5d 5d25  #].*[[:space:]]%
│ │ │ -001fba20: 735b 5b3a 7370 6163 653a 5d5d 2220 2f76  s[[:space:]]" /v
│ │ │ -001fba30: 6172 2f74 6d70 2922 0a0a 2020 2020 2320  ar/tmp)"..    # 
│ │ │ -001fba40: 4966 2074 6865 206d 6f75 6e74 2070 6f69  If the mount poi
│ │ │ -001fba50: 6e74 2069 7320 6e6f 7420 696e 202f 6574  nt is not in /et
│ │ │ -001fba60: 632f 6673 7461 622c 2067 6574 2070 7265  c/fstab, get pre
│ │ │ -001fba70: 7669 6f75 7320 6d6f 756e 7420 6f70 7469  vious mount opti
│ │ │ -001fba80: 6f6e 7320 6672 6f6d 202f 6574 632f 6d74  ons from /etc/mt
│ │ │ -001fba90: 6162 0a20 2020 2069 6620 2120 6772 6570  ab.    if ! grep
│ │ │ -001fbaa0: 202d 7120 2224 6d6f 756e 745f 706f 696e   -q "$mount_poin
│ │ │ -001fbab0: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ -001fbac0: 2f65 7463 2f66 7374 6162 3b20 7468 656e  /etc/fstab; then
│ │ │ -001fbad0: 0a20 2020 2020 2020 2023 2072 756e 7469  .        # runti
│ │ │ -001fbae0: 6d65 206f 7074 7320 7769 7468 6f75 7420  me opts without 
│ │ │ -001fbaf0: 736f 6d65 2061 7574 6f6d 6174 6963 206b  some automatic k
│ │ │ -001fbb00: 6572 6e65 6c2f 7573 6572 7370 6163 652d  ernel/userspace-
│ │ │ -001fbb10: 6164 6465 6420 6465 6661 756c 7473 0a20  added defaults. 
│ │ │ -001fbb20: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ -001fbb30: 6d6f 756e 745f 6f70 7473 3d24 2867 7265  mount_opts=$(gre
│ │ │ -001fbb40: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001fbb50: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ -001fbb60: 7463 2f6d 7461 6220 7c20 6865 6164 202d  tc/mtab | head -
│ │ │ -001fbb70: 3120 7c20 2061 776b 2027 7b70 7269 6e74  1 |  awk '{print
│ │ │ -001fbb80: 2024 347d 2720 5c0a 2020 2020 2020 2020   $4}' \.        
│ │ │ -001fbb90: 2020 2020 2020 2020 2020 2020 7c20 7365              | se
│ │ │ -001fbba0: 6420 2d45 2022 732f 2872 777c 6465 6661  d -E "s/(rw|defa
│ │ │ -001fbbb0: 756c 7473 7c73 6563 6c61 6265 6c7c 6e6f  ults|seclabel|no
│ │ │ -001fbbc0: 6578 6563 2928 2c7c 2429 2f2f 673b 732f  exec)(,|$)//g;s/
│ │ │ -001fbbd0: 2c24 2f2f 2229 0a20 2020 2020 2020 205b  ,$//").        [
│ │ │ -001fbbe0: 2022 2470 7265 7669 6f75 735f 6d6f 756e   "$previous_moun
│ │ │ -001fbbf0: 745f 6f70 7473 2220 5d20 2661 6d70 3b26  t_opts" ] &&
│ │ │ -001fbc00: 616d 703b 2070 7265 7669 6f75 735f 6d6f  amp; previous_mo
│ │ │ -001fbc10: 756e 745f 6f70 7473 2b3d 222c 220a 2020  unt_opts+=",".  
│ │ │ -001fbc20: 2020 2020 2020 2320 496e 2069 736f 3936        # In iso96
│ │ │ -001fbc30: 3630 2066 696c 6573 7973 7465 6d73 206d  60 filesystems m
│ │ │ -001fbc40: 7461 6220 636f 756c 6420 6465 7363 7269  tab could descri
│ │ │ -001fbc50: 6265 2061 2022 626c 6f63 6b73 697a 6522  be a "blocksize"
│ │ │ -001fbc60: 2076 616c 7565 2c20 7468 6973 2073 686f   value, this sho
│ │ │ -001fbc70: 756c 6420 6265 2072 6566 6c65 6374 6564  uld be reflected
│ │ │ -001fbc80: 2069 6e0a 2020 2020 2020 2020 2320 6673   in.        # fs
│ │ │ -001fbc90: 7461 6220 6173 2022 626c 6f63 6b22 2e20  tab as "block". 
│ │ │ -001fbca0: 2054 6865 206e 6578 7420 7661 7269 6162   The next variab
│ │ │ -001fbcb0: 6c65 2069 7320 746f 2073 6174 6973 6679  le is to satisfy
│ │ │ -001fbcc0: 2073 6865 6c6c 6368 6563 6b20 5343 3230   shellcheck SC20
│ │ │ -001fbcd0: 3530 2e0a 2020 2020 2020 2020 6673 5f74  50..        fs_t
│ │ │ -001fbce0: 7970 653d 2222 0a20 2020 2020 2020 2069  ype="".        i
│ │ │ -001fbcf0: 6620 5b20 2022 2466 735f 7479 7065 2220  f [  "$fs_type" 
│ │ │ -001fbd00: 3d3d 2022 6973 6f39 3636 3022 205d 203b  == "iso9660" ] ;
│ │ │ -001fbd10: 2074 6865 6e0a 2020 2020 2020 2020 2020   then.          
│ │ │ -001fbd20: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ -001fbd30: 5f6f 7074 733d 2428 7365 6420 2773 2f62  _opts=$(sed 's/b
│ │ │ -001fbd40: 6c6f 636b 7369 7a65 3d2f 626c 6f63 6b3d  locksize=/block=
│ │ │ -001fbd50: 2f27 2026 6c74 3b26 6c74 3b26 6c74 3b20  /' <<< 
│ │ │ -001fbd60: 2224 7072 6576 696f 7573 5f6d 6f75 6e74  "$previous_mount
│ │ │ -001fbd70: 5f6f 7074 7322 290a 2020 2020 2020 2020  _opts").        
│ │ │ -001fbd80: 6669 0a20 2020 2020 2020 2065 6368 6f20  fi.        echo 
│ │ │ -001fbd90: 2220 2f76 6172 2f74 6d70 2020 6465 6661  " /var/tmp  defa
│ │ │ -001fbda0: 756c 7473 2c24 7b70 7265 7669 6f75 735f  ults,${previous_
│ │ │ -001fbdb0: 6d6f 756e 745f 6f70 7473 7d6e 6f65 7865  mount_opts}noexe
│ │ │ -001fbdc0: 6320 3020 3022 2026 6774 3b26 6774 3b20  c 0 0" >> 
│ │ │ -001fbdd0: 2f65 7463 2f66 7374 6162 0a20 2020 2023  /etc/fstab.    #
│ │ │ -001fbde0: 2049 6620 7468 6520 6d6f 756e 745f 6f70   If the mount_op
│ │ │ -001fbdf0: 7420 6f70 7469 6f6e 2069 7320 6e6f 7420  t option is not 
│ │ │ -001fbe00: 616c 7265 6164 7920 696e 2074 6865 206d  already in the m
│ │ │ -001fbe10: 6f75 6e74 2070 6f69 6e74 2773 202f 6574  ount point's /et
│ │ │ -001fbe20: 632f 6673 7461 6220 656e 7472 792c 2061  c/fstab entry, a
│ │ │ -001fbe30: 6464 2069 740a 2020 2020 656c 6966 2021  dd it.    elif !
│ │ │ -001fbe40: 2067 7265 7020 2224 6d6f 756e 745f 706f   grep "$mount_po
│ │ │ -001fbe50: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001fbe60: 2220 2f65 7463 2f66 7374 6162 207c 2067  " /etc/fstab | g
│ │ │ -001fbe70: 7265 7020 2d71 2022 6e6f 6578 6563 223b  rep -q "noexec";
│ │ │ -001fbe80: 2074 6865 6e0a 2020 2020 2020 2020 7072   then.        pr
│ │ │ -001fbe90: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001fbea0: 733d 2428 6772 6570 2022 246d 6f75 6e74  s=$(grep "$mount
│ │ │ -001fbeb0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001fbec0: 6578 7022 202f 6574 632f 6673 7461 6220  exp" /etc/fstab 
│ │ │ -001fbed0: 7c20 6177 6b20 277b 7072 696e 7420 2434  | awk '{print $4
│ │ │ -001fbee0: 7d27 290a 2020 2020 2020 2020 7365 6420  }').        sed 
│ │ │ -001fbef0: 2d69 2022 737c 5c28 247b 6d6f 756e 745f  -i "s|\(${mount_
│ │ │ -001fbf00: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001fbf10: 7870 7d2e 2a24 7b70 7265 7669 6f75 735f  xp}.*${previous_
│ │ │ -001fbf20: 6d6f 756e 745f 6f70 7473 7d5c 297c 5c31  mount_opts}\)|\1
│ │ │ -001fbf30: 2c6e 6f65 7865 637c 2220 2f65 7463 2f66  ,noexec|" /etc/f
│ │ │ -001fbf40: 7374 6162 0a20 2020 2066 690a 0a0a 2020  stab.    fi...  
│ │ │ -001fbf50: 2020 6966 206d 6b64 6972 202d 7020 222f    if mkdir -p "/
│ │ │ -001fbf60: 7661 722f 746d 7022 3b20 7468 656e 0a20  var/tmp"; then. 
│ │ │ -001fbf70: 2020 2020 2020 2069 6620 6d6f 756e 7470         if mountp
│ │ │ -001fbf80: 6f69 6e74 202d 7120 222f 7661 722f 746d  oint -q "/var/tm
│ │ │ -001fbf90: 7022 3b20 7468 656e 0a20 2020 2020 2020  p"; then.       
│ │ │ -001fbfa0: 2020 2020 206d 6f75 6e74 202d 6f20 7265       mount -o re
│ │ │ -001fbfb0: 6d6f 756e 7420 2d2d 7461 7267 6574 2022  mount --target "
│ │ │ -001fbfc0: 2f76 6172 2f74 6d70 220a 2020 2020 2020  /var/tmp".      
│ │ │ -001fbfd0: 2020 6669 0a20 2020 2066 690a 7d0a 0a70    fi.    fi.}..p
│ │ │ -001fbfe0: 6572 666f 726d 5f72 656d 6564 6961 7469  erform_remediati
│ │ │ -001fbff0: 6f6e 0a0a 656c 7365 0a20 2020 2026 6774  on..else.    >
│ │ │ -001fc000: 3b26 616d 703b 3220 6563 686f 2027 5265  ;&2 echo 'Re
│ │ │ -001fc010: 6d65 6469 6174 696f 6e20 6973 206e 6f74  mediation is not
│ │ │ -001fc020: 2061 7070 6c69 6361 626c 652c 206e 6f74   applicable, not
│ │ │ -001fc030: 6869 6e67 2077 6173 2064 6f6e 6527 0a66  hing was done'.f
│ │ │ -001fc040: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +001f9ca0: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ +001f9cb0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ...
│ │ │ +001f9cc0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +001f9d60: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr> │ │ │ +001f9db0: 3c74 723e 3c74 683e 5374 7261 7465 6779

│ │ │ +001f9df0: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ +001f9e00: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ +001f9e10: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ +001f9e20: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ +001f9e30: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ +001f9e40: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +001f9e50: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +001f9e60: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +001f9e70: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +001f9e80: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001f9e90: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76  - mount_option_v
│ │ │ +001f9ea0: 6172 5f74 6d70 5f6e 6f65 7865 630a 2020  ar_tmp_noexec.  
│ │ │ +001f9eb0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001f9ec0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ +001f9ed0: 206e 6f65 7865 6320 4f70 7469 6f6e 2074   noexec Option t
│ │ │ +001f9ee0: 6f20 2f76 6172 2f74 6d70 3a20 4368 6563  o /var/tmp: Chec
│ │ │ +001f9ef0: 6b20 696e 666f 726d 6174 696f 6e20 6173  k information as
│ │ │ +001f9f00: 736f 6369 6174 6564 2074 6f20 6d6f 756e  sociated to moun
│ │ │ +001f9f10: 7470 6f69 6e74 270a 2020 616e 7369 626c  tpoint'.  ansibl
│ │ │ +001f9f20: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ +001f9f30: 643a 2066 696e 646d 6e74 202d 2d66 7374  d: findmnt --fst
│ │ │ +001f9f40: 6162 2027 2f76 6172 2f74 6d70 270a 2020  ab '/var/tmp'.  
│ │ │ +001f9f50: 7265 6769 7374 6572 3a20 6465 7669 6365  register: device
│ │ │ +001f9f60: 5f6e 616d 650a 2020 6661 696c 6564 5f77  _name.  failed_w
│ │ │ +001f9f70: 6865 6e3a 2064 6576 6963 655f 6e61 6d65  hen: device_name
│ │ │ +001f9f80: 2e72 6320 2667 743b 2031 0a20 2063 6861  .rc > 1.  cha
│ │ │ +001f9f90: 6e67 6564 5f77 6865 6e3a 2066 616c 7365  nged_when: false
│ │ │ +001f9fa0: 0a20 2063 6865 636b 5f6d 6f64 653a 2066  .  check_mode: f
│ │ │ +001f9fb0: 616c 7365 0a20 2077 6865 6e3a 0a20 202d  alse.  when:.  -
│ │ │ +001f9fc0: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ +001f9fd0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001f9fe0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001f9ff0: 2272 706d 2d6f 7374 7265 6522 2069 6e20  "rpm-ostree" in 
│ │ │ +001fa000: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001fa010: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ +001fa020: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ +001fa030: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001fa040: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ +001fa050: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ +001fa060: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001fa070: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ +001fa080: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001fa090: 6c65 5f70 726f 635f 636d 646c 696e 6520  le_proc_cmdline 
│ │ │ +001fa0a0: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ +001fa0b0: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ +001fa0c0: 6f6e 5f74 7970 6520 696e 0a20 2020 205b  on_type in.    [
│ │ │ +001fa0d0: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ +001fa0e0: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ +001fa0f0: 616e 222c 2022 636f 6e74 6169 6e65 7222  an", "container"
│ │ │ +001fa100: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ +001fa110: 2f74 6d70 2220 696e 2061 6e73 6962 6c65  /tmp" in ansible
│ │ │ +001fa120: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ +001fa130: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ +001fa140: 207c 206c 6973 7427 0a20 2074 6167 733a   | list'.  tags:
│ │ │ +001fa150: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +001fa160: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +001fa170: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001fa180: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001fa190: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001fa1a0: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001fa1b0: 696f 6e5f 7661 725f 746d 705f 6e6f 6578  ion_var_tmp_noex
│ │ │ +001fa1c0: 6563 0a20 202d 206e 6f5f 7265 626f 6f74  ec.  - no_reboot
│ │ │ +001fa1d0: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ +001fa1e0: 2027 4164 6420 6e6f 6578 6563 204f 7074   'Add noexec Opt
│ │ │ +001fa1f0: 696f 6e20 746f 202f 7661 722f 746d 703a  ion to /var/tmp:
│ │ │ +001fa200: 2043 7265 6174 6520 6d6f 756e 745f 696e   Create mount_in
│ │ │ +001fa210: 666f 2064 6963 7469 6f6e 6172 7920 7661  fo dictionary va
│ │ │ +001fa220: 7269 6162 6c65 270a 2020 7365 745f 6661  riable'.  set_fa
│ │ │ +001fa230: 6374 3a0a 2020 2020 6d6f 756e 745f 696e  ct:.    mount_in
│ │ │ +001fa240: 666f 3a20 277b 7b20 6d6f 756e 745f 696e  fo: '{{ mount_in
│ │ │ +001fa250: 666f 7c64 6566 6175 6c74 287b 7d29 7c63  fo|default({})|c
│ │ │ +001fa260: 6f6d 6269 6e65 287b 6974 656d 2e30 3a20  ombine({item.0: 
│ │ │ +001fa270: 6974 656d 2e31 7d29 207d 7d27 0a20 2077  item.1}) }}'.  w
│ │ │ +001fa280: 6974 685f 746f 6765 7468 6572 3a0a 2020  ith_together:.  
│ │ │ +001fa290: 2d20 277b 7b20 6465 7669 6365 5f6e 616d  - '{{ device_nam
│ │ │ +001fa2a0: 652e 7374 646f 7574 5f6c 696e 6573 5b30  e.stdout_lines[0
│ │ │ +001fa2b0: 5d2e 7370 6c69 7428 2920 7c20 6d61 7028  ].split() | map(
│ │ │ +001fa2c0: 2727 6c6f 7765 7227 2729 207c 206c 6973  ''lower'') | lis
│ │ │ +001fa2d0: 7420 7d7d 270a 2020 2d20 277b 7b20 6465  t }}'.  - '{{ de
│ │ │ +001fa2e0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001fa2f0: 5f6c 696e 6573 5b31 5d2e 7370 6c69 7428  _lines[1].split(
│ │ │ +001fa300: 2920 7c20 6c69 7374 207d 7d27 0a20 2077  ) | list }}'.  w
│ │ │ +001fa310: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +001fa320: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +001fa330: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001fa340: 6765 7320 616e 6420 2272 706d 2d6f 7374  ges and "rpm-ost
│ │ │ +001fa350: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001fa360: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001fa370: 2020 2061 6e64 2022 626f 6f74 6322 2069     and "bootc" i
│ │ │ +001fa380: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001fa390: 7061 636b 6167 6573 2061 6e64 206e 6f74  packages and not
│ │ │ +001fa3a0: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ +001fa3b0: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ +001fa3c0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001fa3d0: 2020 2061 6e64 2022 6f73 7472 6565 2220     and "ostree" 
│ │ │ +001fa3e0: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ +001fa3f0: 636d 646c 696e 6520 2920 616e 6420 6e6f  cmdline ) and no
│ │ │ +001fa400: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ +001fa410: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ +001fa420: 696e 0a20 2020 205b 2264 6f63 6b65 7222  in.    ["docker"
│ │ │ +001fa430: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ +001fa440: 222c 2022 706f 646d 616e 222c 2022 636f  ", "podman", "co
│ │ │ +001fa450: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ +001fa460: 2d20 2722 2f76 6172 2f74 6d70 2220 696e  - '"/var/tmp" in
│ │ │ +001fa470: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ +001fa480: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ +001fa490: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ +001fa4a0: 0a20 202d 2064 6576 6963 655f 6e61 6d65  .  - device_name
│ │ │ +001fa4b0: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ +001fa4c0: 6564 2061 6e64 2064 6576 6963 655f 6e61  ed and device_na
│ │ │ +001fa4d0: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320  me.stdout_lines 
│ │ │ +001fa4e0: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ +001fa4f0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001fa500: 7574 207c 206c 656e 6774 6820 2667 743b  ut | length >
│ │ │ +001fa510: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ +001fa520: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +001fa530: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +001fa540: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +001fa550: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +001fa560: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001fa570: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76  - mount_option_v
│ │ │ +001fa580: 6172 5f74 6d70 5f6e 6f65 7865 630a 2020  ar_tmp_noexec.  
│ │ │ +001fa590: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001fa5a0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ +001fa5b0: 206e 6f65 7865 6320 4f70 7469 6f6e 2074   noexec Option t
│ │ │ +001fa5c0: 6f20 2f76 6172 2f74 6d70 3a20 4966 202f  o /var/tmp: If /
│ │ │ +001fa5d0: 7661 722f 746d 7020 6e6f 7420 6d6f 756e  var/tmp not moun
│ │ │ +001fa5e0: 7465 642c 2063 7261 6674 206d 6f75 6e74  ted, craft mount
│ │ │ +001fa5f0: 5f69 6e66 6f0a 2020 2020 6d61 6e75 616c  _info.    manual
│ │ │ +001fa600: 6c79 270a 2020 7365 745f 6661 6374 3a0a  ly'.  set_fact:.
│ │ │ +001fa610: 2020 2020 6d6f 756e 745f 696e 666f 3a20      mount_info: 
│ │ │ +001fa620: 277b 7b20 6d6f 756e 745f 696e 666f 7c64  '{{ mount_info|d
│ │ │ +001fa630: 6566 6175 6c74 287b 7d29 7c63 6f6d 6269  efault({})|combi
│ │ │ +001fa640: 6e65 287b 6974 656d 2e30 3a20 6974 656d  ne({item.0: item
│ │ │ +001fa650: 2e31 7d29 207d 7d27 0a20 2077 6974 685f  .1}) }}'.  with_
│ │ │ +001fa660: 746f 6765 7468 6572 3a0a 2020 2d20 2d20  together:.  - - 
│ │ │ +001fa670: 7461 7267 6574 0a20 2020 202d 2073 6f75  target.    - sou
│ │ │ +001fa680: 7263 650a 2020 2020 2d20 6673 7479 7065  rce.    - fstype
│ │ │ +001fa690: 0a20 2020 202d 206f 7074 696f 6e73 0a20  .    - options. 
│ │ │ +001fa6a0: 202d 202d 202f 7661 722f 746d 700a 2020   - - /var/tmp.  
│ │ │ +001fa6b0: 2020 2d20 2727 0a20 2020 202d 2027 270a    - ''.    - ''.
│ │ │ +001fa6c0: 2020 2020 2d20 6465 6661 756c 7473 0a20      - defaults. 
│ │ │ +001fa6d0: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ +001fa6e0: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ +001fa6f0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001fa700: 6b61 6765 7320 616e 6420 2272 706d 2d6f  kages and "rpm-o
│ │ │ +001fa710: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001fa720: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001fa730: 0a20 2020 2061 6e64 2022 626f 6f74 6322  .    and "bootc"
│ │ │ +001fa740: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001fa750: 732e 7061 636b 6167 6573 2061 6e64 206e  s.packages and n
│ │ │ +001fa760: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ +001fa770: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ +001fa780: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001fa790: 0a20 2020 2061 6e64 2022 6f73 7472 6565  .    and "ostree
│ │ │ +001fa7a0: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ +001fa7b0: 635f 636d 646c 696e 6520 2920 616e 6420  c_cmdline ) and 
│ │ │ +001fa7c0: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ +001fa7d0: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ +001fa7e0: 6520 696e 0a20 2020 205b 2264 6f63 6b65  e in.    ["docke
│ │ │ +001fa7f0: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ +001fa800: 767a 222c 2022 706f 646d 616e 222c 2022  vz", "podman", "
│ │ │ +001fa810: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ +001fa820: 2020 2d20 2722 2f76 6172 2f74 6d70 2220    - '"/var/tmp" 
│ │ │ +001fa830: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ +001fa840: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ +001fa850: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ +001fa860: 7427 0a20 202d 2028 222d 2d66 7374 6162  t'.  - ("--fstab
│ │ │ +001fa870: 2220 7c20 6c65 6e67 7468 203d 3d20 3029  " | length == 0)
│ │ │ +001fa880: 0a20 202d 2064 6576 6963 655f 6e61 6d65  .  - device_name
│ │ │ +001fa890: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ +001fa8a0: 6564 2061 6e64 2064 6576 6963 655f 6e61  ed and device_na
│ │ │ +001fa8b0: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320  me.stdout_lines 
│ │ │ +001fa8c0: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ +001fa8d0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001fa8e0: 7574 207c 206c 656e 6774 6820 3d3d 2030  ut | length == 0
│ │ │ +001fa8f0: 290a 2020 7461 6773 3a0a 2020 2d20 636f  ).  tags:.  - co
│ │ │ +001fa900: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001fa910: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001fa920: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001fa930: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001fa940: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001fa950: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ +001fa960: 5f74 6d70 5f6e 6f65 7865 630a 2020 2d20  _tmp_noexec.  - 
│ │ │ +001fa970: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001fa980: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ +001fa990: 6f65 7865 6320 4f70 7469 6f6e 2074 6f20  oexec Option to 
│ │ │ +001fa9a0: 2f76 6172 2f74 6d70 3a20 4d61 6b65 2073  /var/tmp: Make s
│ │ │ +001fa9b0: 7572 6520 6e6f 6578 6563 206f 7074 696f  ure noexec optio
│ │ │ +001fa9c0: 6e20 6973 2070 6172 7420 6f66 2074 6865  n is part of the
│ │ │ +001fa9d0: 2074 6f0a 2020 2020 2f76 6172 2f74 6d70   to.    /var/tmp
│ │ │ +001fa9e0: 206f 7074 696f 6e73 270a 2020 7365 745f   options'.  set_
│ │ │ +001fa9f0: 6661 6374 3a0a 2020 2020 6d6f 756e 745f  fact:.    mount_
│ │ │ +001faa00: 696e 666f 3a20 277b 7b20 6d6f 756e 745f  info: '{{ mount_
│ │ │ +001faa10: 696e 666f 207c 2063 6f6d 6269 6e65 2820  info | combine( 
│ │ │ +001faa20: 7b27 276f 7074 696f 6e73 2727 3a27 2727  {''options'':'''
│ │ │ +001faa30: 277e 286d 6f75 6e74 5f69 6e66 6f2e 6f70  '~(mount_info.op
│ │ │ +001faa40: 7469 6f6e 7320 7c0a 2020 2020 2020 6465  tions |.      de
│ │ │ +001faa50: 6661 756c 7428 2727 2727 2929 7e28 2727  fault(''''))~(''
│ │ │ +001faa60: 2c27 2720 6966 2028 6d6f 756e 745f 696e  ,'' if (mount_in
│ │ │ +001faa70: 666f 2e6f 7074 696f 6e73 207c 2064 6566  fo.options | def
│ │ │ +001faa80: 6175 6c74 2827 2727 2729 2920 656c 7365  ault('''')) else
│ │ │ +001faa90: 2027 2727 2729 7e27 276e 6f65 7865 6327   '''')~''noexec'
│ │ │ +001faaa0: 270a 2020 2020 2020 7d29 207d 7d27 0a20  '.      }) }}'. 
│ │ │ +001faab0: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ +001faac0: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ +001faad0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001faae0: 6b61 6765 7320 616e 6420 2272 706d 2d6f  kages and "rpm-o
│ │ │ +001faaf0: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001fab00: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001fab10: 0a20 2020 2061 6e64 2022 626f 6f74 6322  .    and "bootc"
│ │ │ +001fab20: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001fab30: 732e 7061 636b 6167 6573 2061 6e64 206e  s.packages and n
│ │ │ +001fab40: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ +001fab50: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ +001fab60: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001fab70: 0a20 2020 2061 6e64 2022 6f73 7472 6565  .    and "ostree
│ │ │ +001fab80: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ +001fab90: 635f 636d 646c 696e 6520 2920 616e 6420  c_cmdline ) and 
│ │ │ +001faba0: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ +001fabb0: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ +001fabc0: 6520 696e 0a20 2020 205b 2264 6f63 6b65  e in.    ["docke
│ │ │ +001fabd0: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ +001fabe0: 767a 222c 2022 706f 646d 616e 222c 2022  vz", "podman", "
│ │ │ +001fabf0: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ +001fac00: 2020 2d20 2722 2f76 6172 2f74 6d70 2220    - '"/var/tmp" 
│ │ │ +001fac10: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ +001fac20: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ +001fac30: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ +001fac40: 7427 0a20 202d 206d 6f75 6e74 5f69 6e66  t'.  - mount_inf
│ │ │ +001fac50: 6f20 6973 2064 6566 696e 6564 2061 6e64  o is defined and
│ │ │ +001fac60: 2022 6e6f 6578 6563 2220 6e6f 7420 696e   "noexec" not in
│ │ │ +001fac70: 2028 6d6f 756e 745f 696e 666f 2e6f 7074   (mount_info.opt
│ │ │ +001fac80: 696f 6e73 207c 2064 6566 6175 6c74 2827  ions | default('
│ │ │ +001fac90: 2729 290a 2020 7461 6773 3a0a 2020 2d20  ')).  tags:.  - 
│ │ │ +001faca0: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +001facb0: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +001facc0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +001facd0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +001face0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001facf0: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76  - mount_option_v
│ │ │ +001fad00: 6172 5f74 6d70 5f6e 6f65 7865 630a 2020  ar_tmp_noexec.  
│ │ │ +001fad10: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001fad20: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ +001fad30: 206e 6f65 7865 6320 4f70 7469 6f6e 2074   noexec Option t
│ │ │ +001fad40: 6f20 2f76 6172 2f74 6d70 3a20 456e 7375  o /var/tmp: Ensu
│ │ │ +001fad50: 7265 202f 7661 722f 746d 7020 6973 206d  re /var/tmp is m
│ │ │ +001fad60: 6f75 6e74 6564 2077 6974 6820 6e6f 6578  ounted with noex
│ │ │ +001fad70: 6563 206f 7074 696f 6e27 0a20 2061 6e73  ec option'.  ans
│ │ │ +001fad80: 6962 6c65 2e70 6f73 6978 2e6d 6f75 6e74  ible.posix.mount
│ │ │ +001fad90: 3a0a 2020 2020 7061 7468 3a20 2f76 6172  :.    path: /var
│ │ │ +001fada0: 2f74 6d70 0a20 2020 2073 7263 3a20 277b  /tmp.    src: '{
│ │ │ +001fadb0: 7b20 6d6f 756e 745f 696e 666f 2e73 6f75  { mount_info.sou
│ │ │ +001fadc0: 7263 6520 7c20 6465 6661 756c 7428 2727  rce | default(''
│ │ │ +001fadd0: 2727 2920 7d7d 270a 2020 2020 6f70 7473  '') }}'.    opts
│ │ │ +001fade0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001fadf0: 2e6f 7074 696f 6e73 207c 2064 6566 6175  .options | defau
│ │ │ +001fae00: 6c74 2827 2727 2729 207d 7d27 0a20 2020  lt('''') }}'.   
│ │ │ +001fae10: 2073 7461 7465 3a20 6d6f 756e 7465 640a   state: mounted.
│ │ │ +001fae20: 2020 2020 6673 7479 7065 3a20 277b 7b20      fstype: '{{ 
│ │ │ +001fae30: 6d6f 756e 745f 696e 666f 2e66 7374 7970  mount_info.fstyp
│ │ │ +001fae40: 6520 7c20 6465 6661 756c 7428 2727 2727  e | default(''''
│ │ │ +001fae50: 2920 7d7d 270a 2020 7265 6769 7374 6572  ) }}'.  register
│ │ │ +001fae60: 3a20 6d6f 756e 745f 7265 7375 6c74 0a20  : mount_result. 
│ │ │ +001fae70: 2066 6169 6c65 645f 7768 656e 3a0a 2020   failed_when:.  
│ │ │ +001fae80: 2d20 6d6f 756e 745f 7265 7375 6c74 2069  - mount_result i
│ │ │ +001fae90: 7320 6661 696c 6564 0a20 202d 2027 2727  s failed.  - '''
│ │ │ +001faea0: 7461 7267 6574 2069 7320 6275 7379 2727  target is busy''
│ │ │ +001faeb0: 206e 6f74 2069 6e20 286d 6f75 6e74 5f72   not in (mount_r
│ │ │ +001faec0: 6573 756c 742e 6d73 6720 7c20 6465 6661  esult.msg | defa
│ │ │ +001faed0: 756c 7428 2727 2727 2929 270a 2020 2d20  ult(''''))'.  - 
│ │ │ +001faee0: 2727 2761 6c72 6561 6479 206d 6f75 6e74  '''already mount
│ │ │ +001faef0: 6564 2727 206e 6f74 2069 6e20 286d 6f75  ed'' not in (mou
│ │ │ +001faf00: 6e74 5f72 6573 756c 742e 6d73 6720 7c20  nt_result.msg | 
│ │ │ +001faf10: 6465 6661 756c 7428 2727 2727 2929 270a  default(''''))'.
│ │ │ +001faf20: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ +001faf30: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ +001faf40: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001faf50: 636b 6167 6573 2061 6e64 2022 7270 6d2d  ckages and "rpm-
│ │ │ +001faf60: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001faf70: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001faf80: 730a 2020 2020 616e 6420 2262 6f6f 7463  s.    and "bootc
│ │ │ +001faf90: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001fafa0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001fafb0: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ +001fafc0: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ +001fafd0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001fafe0: 730a 2020 2020 616e 6420 226f 7374 7265  s.    and "ostre
│ │ │ +001faff0: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ +001fb000: 6f63 5f63 6d64 6c69 6e65 2029 2061 6e64  oc_cmdline ) and
│ │ │ +001fb010: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ +001fb020: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ +001fb030: 7065 2069 6e0a 2020 2020 5b22 646f 636b  pe in.    ["dock
│ │ │ +001fb040: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ +001fb050: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c20  nvz", "podman", 
│ │ │ +001fb060: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ +001fb070: 0a20 202d 2027 222f 7661 722f 746d 7022  .  - '"/var/tmp"
│ │ │ +001fb080: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ +001fb090: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ +001fb0a0: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ +001fb0b0: 7374 270a 2020 2d20 6d6f 756e 745f 696e  st'.  - mount_in
│ │ │ +001fb0c0: 666f 2069 7320 6465 6669 6e65 640a 2020  fo is defined.  
│ │ │ +001fb0d0: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ +001fb0e0: 7464 6f75 7420 6973 2064 6566 696e 6564  tdout is defined
│ │ │ +001fb0f0: 2061 6e64 2028 6465 7669 6365 5f6e 616d   and (device_nam
│ │ │ +001fb100: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ +001fb110: 6820 2667 743b 2030 2929 206f 7220 2822  h > 0)) or ("
│ │ │ +001fb120: 2d2d 6673 7461 6222 0a20 2020 207c 206c  --fstab".    | l
│ │ │ +001fb130: 656e 6774 6820 3d3d 2030 290a 2020 7461  ength == 0).  ta
│ │ │ +001fb140: 6773 3a0a 2020 2d20 636f 6e66 6967 7572  gs:.  - configur
│ │ │ +001fb150: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ +001fb160: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ +001fb170: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +001fb180: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +001fb190: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ +001fb1a0: 6f70 7469 6f6e 5f76 6172 5f74 6d70 5f6e  option_var_tmp_n
│ │ │ +001fb1b0: 6f65 7865 630a 2020 2d20 6e6f 5f72 6562  oexec.  - no_reb
│ │ │ +001fb1c0: 6f6f 745f 6e65 6564 6564 0a3c 2f63 6f64  oot_needed.
Remed │ │ │ +001fb280: 6961 7469 6f6e 2053 6865 6c6c 2073 6372 iation Shell scr │ │ │ +001fb290: 6970 7420 e287 b23c 2f61 3e3c 6272 3e3c ipt ...
< │ │ │ +001fb2a0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001fb2b0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001fb2c0: 7365 2220 6964 3d22 6964 3631 3822 3e3c se" id="id618">< │ │ │ +001fb2d0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001fb2e0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001fb2f0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001fb300: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +001fb310: 3e3c 7472 3e3c 7468 3e52 6562 6f6f 743a >
Co │ │ │ +001f9d40: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +001f9d70: 6e3a 3c2f 7468 3e3c 7464 3e68 6967 683c n:high< │ │ │ +001f9d80: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +001f9dc0: 3a3c 2f74 683e 3c74 643e 636f 6e66 6967 :config │ │ │ +001f9dd0: 7572 653c 2f74 643e 3c2f 7472 3e3c 2f74 ure
Reboot: │ │ │ +001fb320: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ +001fb340: 3c70 7265 3e3c 636f 6465 3e23 2052 656d
# Rem
│ │ │ +001fb350: 6564 6961 7469 6f6e 2069 7320 6170 706c  ediation is appl
│ │ │ +001fb360: 6963 6162 6c65 206f 6e6c 7920 696e 2063  icable only in c
│ │ │ +001fb370: 6572 7461 696e 2070 6c61 7466 6f72 6d73  ertain platforms
│ │ │ +001fb380: 0a69 6620 2820 2120 2820 7b20 7270 6d20  .if ( ! ( { rpm 
│ │ │ +001fb390: 2d2d 7175 6965 7420 2d71 206b 6572 6e65  --quiet -q kerne
│ │ │ +001fb3a0: 6c20 3b7d 2026 616d 703b 2661 6d70 3b20  l ;} && 
│ │ │ +001fb3b0: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ +001fb3c0: 2072 706d 2d6f 7374 7265 6520 3b7d 2026   rpm-ostree ;} &
│ │ │ +001fb3d0: 616d 703b 2661 6d70 3b20 7b20 7270 6d20  amp;& { rpm 
│ │ │ +001fb3e0: 2d2d 7175 6965 7420 2d71 2062 6f6f 7463  --quiet -q bootc
│ │ │ +001fb3f0: 203b 7d20 2661 6d70 3b26 616d 703b 207b   ;} && {
│ │ │ +001fb400: 2021 2072 706d 202d 2d71 7569 6574 202d   ! rpm --quiet -
│ │ │ +001fb410: 7120 6f70 656e 7368 6966 742d 6b75 6265  q openshift-kube
│ │ │ +001fb420: 6c65 7420 3b7d 2026 616d 703b 2661 6d70  let ;} &&
│ │ │ +001fb430: 3b20 285b 202d 6620 2f72 756e 2f6f 7374  ; ([ -f /run/ost
│ │ │ +001fb440: 7265 652d 626f 6f74 6564 205d 207c 7c20  ree-booted ] || 
│ │ │ +001fb450: 5b20 2d4c 202f 6f73 7472 6565 205d 2920  [ -L /ostree ]) 
│ │ │ +001fb460: 2920 2661 6d70 3b26 616d 703b 2021 2028  ) && ! (
│ │ │ +001fb470: 205b 202d 6620 2f2e 646f 636b 6572 656e   [ -f /.dockeren
│ │ │ +001fb480: 7620 5d20 7c7c 205b 202d 6620 2f72 756e  v ] || [ -f /run
│ │ │ +001fb490: 2f2e 636f 6e74 6169 6e65 7265 6e76 205d  /.containerenv ]
│ │ │ +001fb4a0: 2029 2029 2026 616d 703b 2661 6d70 3b20   ) ) && 
│ │ │ +001fb4b0: 7b20 2820 6669 6e64 6d6e 7420 2d2d 6b65  { ( findmnt --ke
│ │ │ +001fb4c0: 726e 656c 2022 2f76 6172 2f74 6d70 2220  rnel "/var/tmp" 
│ │ │ +001fb4d0: 2667 743b 202f 6465 762f 6e75 6c6c 207c  > /dev/null |
│ │ │ +001fb4e0: 7c20 6669 6e64 6d6e 7420 2d2d 6673 7461  | findmnt --fsta
│ │ │ +001fb4f0: 6220 222f 7661 722f 746d 7022 2026 6774  b "/var/tmp" >
│ │ │ +001fb500: 3b20 2f64 6576 2f6e 756c 6c20 293b 207d  ; /dev/null ); }
│ │ │ +001fb510: 3b20 7468 656e 0a0a 6675 6e63 7469 6f6e  ; then..function
│ │ │ +001fb520: 2070 6572 666f 726d 5f72 656d 6564 6961   perform_remedia
│ │ │ +001fb530: 7469 6f6e 207b 0a0a 2020 2020 0a20 2020  tion {..    .   
│ │ │ +001fb540: 2020 2020 2023 2074 6865 206d 6f75 6e74       # the mount
│ │ │ +001fb550: 2070 6f69 6e74 202f 7661 722f 746d 7020   point /var/tmp 
│ │ │ +001fb560: 6861 7320 746f 2062 6520 6465 6669 6e65  has to be define
│ │ │ +001fb570: 6420 696e 202f 6574 632f 6673 7461 620a  d in /etc/fstab.
│ │ │ +001fb580: 2020 2020 2020 2020 2320 6265 666f 7265          # before
│ │ │ +001fb590: 2074 6869 7320 7265 6d65 6469 6174 696f   this remediatio
│ │ │ +001fb5a0: 6e20 6361 6e20 6265 2065 7865 6375 7465  n can be execute
│ │ │ +001fb5b0: 642e 2049 6e20 6361 7365 2069 7420 6973  d. In case it is
│ │ │ +001fb5c0: 206e 6f74 2064 6566 696e 6564 2c20 7468   not defined, th
│ │ │ +001fb5d0: 650a 2020 2020 2020 2020 2320 7265 6d65  e.        # reme
│ │ │ +001fb5e0: 6469 6174 696f 6e20 6162 6f72 7473 2061  diation aborts a
│ │ │ +001fb5f0: 6e64 206e 6f20 6368 616e 6765 7320 7265  nd no changes re
│ │ │ +001fb600: 6761 7264 696e 6720 7468 6520 6d6f 756e  garding the moun
│ │ │ +001fb610: 7420 706f 696e 7420 6172 6520 646f 6e65  t point are done
│ │ │ +001fb620: 2e0a 2020 2020 2020 2020 6d6f 756e 745f  ..        mount_
│ │ │ +001fb630: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001fb640: 7870 3d22 2428 7072 696e 7466 2022 5e5b  xp="$(printf "^[
│ │ │ +001fb650: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e  [:space:]]*[^#].
│ │ │ +001fb660: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b  *[[:space:]]%s[[
│ │ │ +001fb670: 3a73 7061 6365 3a5d 5d22 2022 2f76 6172  :space:]]" "/var
│ │ │ +001fb680: 2f74 6d70 2229 220a 0a20 2020 2067 7265  /tmp")"..    gre
│ │ │ +001fb690: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ +001fb6a0: 6d61 7463 685f 7265 6765 7870 2220 2d71  match_regexp" -q
│ │ │ +001fb6b0: 202f 6574 632f 6673 7461 6220 5c0a 2020   /etc/fstab \.  
│ │ │ +001fb6c0: 2020 2020 2020 7c7c 207b 2065 6368 6f20        || { echo 
│ │ │ +001fb6d0: 2254 6865 206d 6f75 6e74 2070 6f69 6e74  "The mount point
│ │ │ +001fb6e0: 2027 2f76 6172 2f74 6d70 2720 6973 206e   '/var/tmp' is n
│ │ │ +001fb6f0: 6f74 2065 7665 6e20 696e 202f 6574 632f  ot even in /etc/
│ │ │ +001fb700: 6673 7461 622c 2073 6f20 7765 2063 616e  fstab, so we can
│ │ │ +001fb710: 2774 2073 6574 2075 7020 6d6f 756e 7420  't set up mount 
│ │ │ +001fb720: 6f70 7469 6f6e 7322 2026 6774 3b26 616d  options" >&am
│ │ │ +001fb730: 703b 323b 0a20 2020 2020 2020 2020 2020  p;2;.           
│ │ │ +001fb740: 2020 2020 2065 6368 6f20 224e 6f74 2072       echo "Not r
│ │ │ +001fb750: 656d 6564 6961 7469 6e67 2c20 6265 6361  emediating, beca
│ │ │ +001fb760: 7573 6520 7468 6572 6520 6973 206e 6f20  use there is no 
│ │ │ +001fb770: 7265 636f 7264 206f 6620 2f76 6172 2f74  record of /var/t
│ │ │ +001fb780: 6d70 2069 6e20 2f65 7463 2f66 7374 6162  mp in /etc/fstab
│ │ │ +001fb790: 2220 2667 743b 2661 6d70 3b32 3b20 7265  " >&2; re
│ │ │ +001fb7a0: 7475 726e 2031 3b20 7d0a 2020 2020 0a0a  turn 1; }.    ..
│ │ │ +001fb7b0: 0a20 2020 206d 6f75 6e74 5f70 6f69 6e74  .    mount_point
│ │ │ +001fb7c0: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ +001fb7d0: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ +001fb7e0: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ +001fb7f0: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ +001fb800: 653a 5d5d 2220 2f76 6172 2f74 6d70 2922  e:]]" /var/tmp)"
│ │ │ +001fb810: 0a0a 2020 2020 2320 4966 2074 6865 206d  ..    # If the m
│ │ │ +001fb820: 6f75 6e74 2070 6f69 6e74 2069 7320 6e6f  ount point is no
│ │ │ +001fb830: 7420 696e 202f 6574 632f 6673 7461 622c  t in /etc/fstab,
│ │ │ +001fb840: 2067 6574 2070 7265 7669 6f75 7320 6d6f   get previous mo
│ │ │ +001fb850: 756e 7420 6f70 7469 6f6e 7320 6672 6f6d  unt options from
│ │ │ +001fb860: 202f 6574 632f 6d74 6162 0a20 2020 2069   /etc/mtab.    i
│ │ │ +001fb870: 6620 2120 6772 6570 202d 7120 2224 6d6f  f ! grep -q "$mo
│ │ │ +001fb880: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001fb890: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ +001fb8a0: 6162 3b20 7468 656e 0a20 2020 2020 2020  ab; then.       
│ │ │ +001fb8b0: 2023 2072 756e 7469 6d65 206f 7074 7320   # runtime opts 
│ │ │ +001fb8c0: 7769 7468 6f75 7420 736f 6d65 2061 7574  without some aut
│ │ │ +001fb8d0: 6f6d 6174 6963 206b 6572 6e65 6c2f 7573  omatic kernel/us
│ │ │ +001fb8e0: 6572 7370 6163 652d 6164 6465 6420 6465  erspace-added de
│ │ │ +001fb8f0: 6661 756c 7473 0a20 2020 2020 2020 2070  faults.        p
│ │ │ +001fb900: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001fb910: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ +001fb920: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001fb930: 6765 7870 2220 2f65 7463 2f6d 7461 6220  gexp" /etc/mtab 
│ │ │ +001fb940: 7c20 6865 6164 202d 3120 7c20 2061 776b  | head -1 |  awk
│ │ │ +001fb950: 2027 7b70 7269 6e74 2024 347d 2720 5c0a   '{print $4}' \.
│ │ │ +001fb960: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +001fb970: 2020 2020 7c20 7365 6420 2d45 2022 732f      | sed -E "s/
│ │ │ +001fb980: 2872 777c 6465 6661 756c 7473 7c73 6563  (rw|defaults|sec
│ │ │ +001fb990: 6c61 6265 6c7c 6e6f 6578 6563 2928 2c7c  label|noexec)(,|
│ │ │ +001fb9a0: 2429 2f2f 673b 732f 2c24 2f2f 2229 0a20  $)//g;s/,$//"). 
│ │ │ +001fb9b0: 2020 2020 2020 205b 2022 2470 7265 7669         [ "$previ
│ │ │ +001fb9c0: 6f75 735f 6d6f 756e 745f 6f70 7473 2220  ous_mount_opts" 
│ │ │ +001fb9d0: 5d20 2661 6d70 3b26 616d 703b 2070 7265  ] && pre
│ │ │ +001fb9e0: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001fb9f0: 2b3d 222c 220a 2020 2020 2020 2020 2320  +=",".        # 
│ │ │ +001fba00: 496e 2069 736f 3936 3630 2066 696c 6573  In iso9660 files
│ │ │ +001fba10: 7973 7465 6d73 206d 7461 6220 636f 756c  ystems mtab coul
│ │ │ +001fba20: 6420 6465 7363 7269 6265 2061 2022 626c  d describe a "bl
│ │ │ +001fba30: 6f63 6b73 697a 6522 2076 616c 7565 2c20  ocksize" value, 
│ │ │ +001fba40: 7468 6973 2073 686f 756c 6420 6265 2072  this should be r
│ │ │ +001fba50: 6566 6c65 6374 6564 2069 6e0a 2020 2020  eflected in.    
│ │ │ +001fba60: 2020 2020 2320 6673 7461 6220 6173 2022      # fstab as "
│ │ │ +001fba70: 626c 6f63 6b22 2e20 2054 6865 206e 6578  block".  The nex
│ │ │ +001fba80: 7420 7661 7269 6162 6c65 2069 7320 746f  t variable is to
│ │ │ +001fba90: 2073 6174 6973 6679 2073 6865 6c6c 6368   satisfy shellch
│ │ │ +001fbaa0: 6563 6b20 5343 3230 3530 2e0a 2020 2020  eck SC2050..    
│ │ │ +001fbab0: 2020 2020 6673 5f74 7970 653d 2222 0a20      fs_type="". 
│ │ │ +001fbac0: 2020 2020 2020 2069 6620 5b20 2022 2466         if [  "$f
│ │ │ +001fbad0: 735f 7479 7065 2220 3d3d 2022 6973 6f39  s_type" == "iso9
│ │ │ +001fbae0: 3636 3022 205d 203b 2074 6865 6e0a 2020  660" ] ; then.  
│ │ │ +001fbaf0: 2020 2020 2020 2020 2020 7072 6576 696f            previo
│ │ │ +001fbb00: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ +001fbb10: 7365 6420 2773 2f62 6c6f 636b 7369 7a65  sed 's/blocksize
│ │ │ +001fbb20: 3d2f 626c 6f63 6b3d 2f27 2026 6c74 3b26  =/block=/' <&
│ │ │ +001fbb30: 6c74 3b26 6c74 3b20 2224 7072 6576 696f  lt;< "$previo
│ │ │ +001fbb40: 7573 5f6d 6f75 6e74 5f6f 7074 7322 290a  us_mount_opts").
│ │ │ +001fbb50: 2020 2020 2020 2020 6669 0a20 2020 2020          fi.     
│ │ │ +001fbb60: 2020 2065 6368 6f20 2220 2f76 6172 2f74     echo " /var/t
│ │ │ +001fbb70: 6d70 2020 6465 6661 756c 7473 2c24 7b70  mp  defaults,${p
│ │ │ +001fbb80: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001fbb90: 7473 7d6e 6f65 7865 6320 3020 3022 2026  ts}noexec 0 0" &
│ │ │ +001fbba0: 6774 3b26 6774 3b20 2f65 7463 2f66 7374  gt;> /etc/fst
│ │ │ +001fbbb0: 6162 0a20 2020 2023 2049 6620 7468 6520  ab.    # If the 
│ │ │ +001fbbc0: 6d6f 756e 745f 6f70 7420 6f70 7469 6f6e  mount_opt option
│ │ │ +001fbbd0: 2069 7320 6e6f 7420 616c 7265 6164 7920   is not already 
│ │ │ +001fbbe0: 696e 2074 6865 206d 6f75 6e74 2070 6f69  in the mount poi
│ │ │ +001fbbf0: 6e74 2773 202f 6574 632f 6673 7461 6220  nt's /etc/fstab 
│ │ │ +001fbc00: 656e 7472 792c 2061 6464 2069 740a 2020  entry, add it.  
│ │ │ +001fbc10: 2020 656c 6966 2021 2067 7265 7020 2224    elif ! grep "$
│ │ │ +001fbc20: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001fbc30: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ +001fbc40: 7374 6162 207c 2067 7265 7020 2d71 2022  stab | grep -q "
│ │ │ +001fbc50: 6e6f 6578 6563 223b 2074 6865 6e0a 2020  noexec"; then.  
│ │ │ +001fbc60: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ +001fbc70: 6f75 6e74 5f6f 7074 733d 2428 6772 6570  ount_opts=$(grep
│ │ │ +001fbc80: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ +001fbc90: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ +001fbca0: 632f 6673 7461 6220 7c20 6177 6b20 277b  c/fstab | awk '{
│ │ │ +001fbcb0: 7072 696e 7420 2434 7d27 290a 2020 2020  print $4}').    
│ │ │ +001fbcc0: 2020 2020 7365 6420 2d69 2022 737c 5c28      sed -i "s|\(
│ │ │ +001fbcd0: 247b 6d6f 756e 745f 706f 696e 745f 6d61  ${mount_point_ma
│ │ │ +001fbce0: 7463 685f 7265 6765 7870 7d2e 2a24 7b70  tch_regexp}.*${p
│ │ │ +001fbcf0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001fbd00: 7473 7d5c 297c 5c31 2c6e 6f65 7865 637c  ts}\)|\1,noexec|
│ │ │ +001fbd10: 2220 2f65 7463 2f66 7374 6162 0a20 2020  " /etc/fstab.   
│ │ │ +001fbd20: 2066 690a 0a0a 2020 2020 6966 206d 6b64   fi...    if mkd
│ │ │ +001fbd30: 6972 202d 7020 222f 7661 722f 746d 7022  ir -p "/var/tmp"
│ │ │ +001fbd40: 3b20 7468 656e 0a20 2020 2020 2020 2069  ; then.        i
│ │ │ +001fbd50: 6620 6d6f 756e 7470 6f69 6e74 202d 7120  f mountpoint -q 
│ │ │ +001fbd60: 222f 7661 722f 746d 7022 3b20 7468 656e  "/var/tmp"; then
│ │ │ +001fbd70: 0a20 2020 2020 2020 2020 2020 206d 6f75  .            mou
│ │ │ +001fbd80: 6e74 202d 6f20 7265 6d6f 756e 7420 2d2d  nt -o remount --
│ │ │ +001fbd90: 7461 7267 6574 2022 2f76 6172 2f74 6d70  target "/var/tmp
│ │ │ +001fbda0: 220a 2020 2020 2020 2020 6669 0a20 2020  ".        fi.   
│ │ │ +001fbdb0: 2066 690a 7d0a 0a70 6572 666f 726d 5f72   fi.}..perform_r
│ │ │ +001fbdc0: 656d 6564 6961 7469 6f6e 0a0a 656c 7365  emediation..else
│ │ │ +001fbdd0: 0a20 2020 2026 6774 3b26 616d 703b 3220  .    >&2 
│ │ │ +001fbde0: 6563 686f 2027 5265 6d65 6469 6174 696f  echo 'Remediatio
│ │ │ +001fbdf0: 6e20 6973 206e 6f74 2061 7070 6c69 6361  n is not applica
│ │ │ +001fbe00: 626c 652c 206e 6f74 6869 6e67 2077 6173  ble, nothing was
│ │ │ +001fbe10: 2064 6f6e 6527 0a66 690a 3c2f 636f 6465   done'.fi.
Remedi │ │ │ +001fbed0: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ +001fbee0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +001fbf70: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +001fbf80: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +001fbfa0: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ +001fbfc0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +001fbfd0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +001fbff0: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ +001fc010: 3c70 7265 3e3c 636f 6465 3e0a 7061 7274
.part
│ │ │ +001fc020: 202f 7661 722f 746d 7020 2d2d 6d6f 756e   /var/tmp --moun
│ │ │ +001fc030: 746f 7074 696f 6e73 3d22 6e6f 6578 6563  toptions="noexec
│ │ │ +001fc040: 220a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  ".
< │ │ │ 001fc050: 2f64 6976 3e3c 2f64 6976 3e3c 2f74 643e /div>
│ │ │ 001fc060: 3c2f 7472 3e3c 2f74 626f 6479 3e3c 2f74 < │ │ │ 001fc080: 7472 2064 6174 612d 7474 2d69 643d 2278 tr data-tt-id="x │ │ │ 001fc090: 6363 6466 5f6f 7267 2e73 7367 7072 6f6a ccdf_org.ssgproj │ │ │ 001fc0a0: 6563 742e 636f 6e74 656e 745f 7275 6c65 ect.content_rule │ │ │ 001fc0b0: 5f6d 6f75 6e74 5f6f 7074 696f 6e5f 7661 _mount_option_va │ │ │ @@ -130210,584 +130210,584 @@ │ │ │ 001fca10: 6174 612d 7461 7267 6574 3d22 2369 6436 ata-target="#id6 │ │ │ 001fca20: 3231 2220 7461 6269 6e64 6578 3d22 3022 21" tabindex="0" │ │ │ 001fca30: 2072 6f6c 653d 2262 7574 746f 6e22 2061 role="button" a │ │ │ 001fca40: 7269 612d 6578 7061 6e64 6564 3d22 6661 ria-expanded="fa │ │ │ 001fca50: 6c73 6522 2074 6974 6c65 3d22 4163 7469 lse" title="Acti │ │ │ 001fca60: 7661 7465 2074 6f20 7265 7665 616c 2220 vate to reveal" │ │ │ 001fca70: 6872 6566 3d22 2321 223e 5265 6d65 6469 href="#!">Remedi │ │ │ -001fca80: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ -001fca90: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -001fcb20: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -001fcb30: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -001fcb50: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ -001fcb70: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001fcb80: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -001fcba0: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -001fcbc0: 3c70 7265 3e3c 636f 6465 3e0a 7061 7274
.part
│ │ │ -001fcbd0: 202f 7661 722f 746d 7020 2d2d 6d6f 756e   /var/tmp --moun
│ │ │ -001fcbe0: 746f 7074 696f 6e73 3d22 6e6f 7375 6964  toptions="nosuid
│ │ │ -001fcbf0: 220a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  ".
< │ │ │ -001fcc00: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -001fccb0: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -001fccc0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -001fcd40: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -001fcd60: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr> │ │ │ -001fcdb0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472
low
Disr │ │ │ -001fcd70: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -001fcd80: 6869 6768 3c2f 7464 3e3c 2f74 723e 3c74 high
Reboot:false
Str │ │ │ -001fcdc0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e63 ategy:c │ │ │ -001fcdd0: 6f6e 6669 6775 7265 3c2f 7464 3e3c 2f74 onfigure
<
│ │ │ -001fcdf0: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ -001fce00: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ -001fce10: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ -001fce20: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ -001fce30: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ -001fce40: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -001fce50: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -001fce60: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001fce70: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001fce80: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001fce90: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -001fcea0: 696f 6e5f 7661 725f 746d 705f 6e6f 7375  ion_var_tmp_nosu
│ │ │ -001fceb0: 6964 0a20 202d 206e 6f5f 7265 626f 6f74  id.  - no_reboot
│ │ │ -001fcec0: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ -001fced0: 2027 4164 6420 6e6f 7375 6964 204f 7074   'Add nosuid Opt
│ │ │ -001fcee0: 696f 6e20 746f 202f 7661 722f 746d 703a  ion to /var/tmp:
│ │ │ -001fcef0: 2043 6865 636b 2069 6e66 6f72 6d61 7469   Check informati
│ │ │ -001fcf00: 6f6e 2061 7373 6f63 6961 7465 6420 746f  on associated to
│ │ │ -001fcf10: 206d 6f75 6e74 706f 696e 7427 0a20 2061   mountpoint'.  a
│ │ │ -001fcf20: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ -001fcf30: 6f6d 6d61 6e64 3a20 6669 6e64 6d6e 7420  ommand: findmnt 
│ │ │ -001fcf40: 2d2d 6673 7461 6220 272f 7661 722f 746d  --fstab '/var/tm
│ │ │ -001fcf50: 7027 0a20 2072 6567 6973 7465 723a 2064  p'.  register: d
│ │ │ -001fcf60: 6576 6963 655f 6e61 6d65 0a20 2066 6169  evice_name.  fai
│ │ │ -001fcf70: 6c65 645f 7768 656e 3a20 6465 7669 6365  led_when: device
│ │ │ -001fcf80: 5f6e 616d 652e 7263 2026 6774 3b20 310a  _name.rc > 1.
│ │ │ -001fcf90: 2020 6368 616e 6765 645f 7768 656e 3a20    changed_when: 
│ │ │ -001fcfa0: 6661 6c73 650a 2020 6368 6563 6b5f 6d6f  false.  check_mo
│ │ │ -001fcfb0: 6465 3a20 6661 6c73 650a 2020 7768 656e  de: false.  when
│ │ │ -001fcfc0: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ -001fcfd0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -001fcfe0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001fcff0: 2061 6e64 2022 7270 6d2d 6f73 7472 6565   and "rpm-ostree
│ │ │ -001fd000: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001fd010: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001fd020: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ -001fd030: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001fd040: 6b61 6765 7320 616e 6420 6e6f 7420 226f  kages and not "o
│ │ │ -001fd050: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ -001fd060: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001fd070: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001fd080: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ -001fd090: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ -001fd0a0: 6c69 6e65 2029 2061 6e64 206e 6f74 2028  line ) and not (
│ │ │ -001fd0b0: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ -001fd0c0: 697a 6174 696f 6e5f 7479 7065 2069 6e0a  ization_type in.
│ │ │ -001fd0d0: 2020 2020 5b22 646f 636b 6572 222c 2022      ["docker", "
│ │ │ -001fd0e0: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ -001fd0f0: 2270 6f64 6d61 6e22 2c20 2263 6f6e 7461  "podman", "conta
│ │ │ -001fd100: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ -001fd110: 222f 7661 722f 746d 7022 2069 6e20 616e  "/var/tmp" in an
│ │ │ -001fd120: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ -001fd130: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ -001fd140: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ -001fd150: 7461 6773 3a0a 2020 2d20 636f 6e66 6967  tags:.  - config
│ │ │ -001fd160: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001fd170: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001fd180: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001fd190: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001fd1a0: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001fd1b0: 745f 6f70 7469 6f6e 5f76 6172 5f74 6d70  t_option_var_tmp
│ │ │ -001fd1c0: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ -001fd1d0: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ -001fd1e0: 6e61 6d65 3a20 2741 6464 206e 6f73 7569  name: 'Add nosui
│ │ │ -001fd1f0: 6420 4f70 7469 6f6e 2074 6f20 2f76 6172  d Option to /var
│ │ │ -001fd200: 2f74 6d70 3a20 4372 6561 7465 206d 6f75  /tmp: Create mou
│ │ │ -001fd210: 6e74 5f69 6e66 6f20 6469 6374 696f 6e61  nt_info dictiona
│ │ │ -001fd220: 7279 2076 6172 6961 626c 6527 0a20 2073  ry variable'.  s
│ │ │ -001fd230: 6574 5f66 6163 743a 0a20 2020 206d 6f75  et_fact:.    mou
│ │ │ -001fd240: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75  nt_info: '{{ mou
│ │ │ -001fd250: 6e74 5f69 6e66 6f7c 6465 6661 756c 7428  nt_info|default(
│ │ │ -001fd260: 7b7d 297c 636f 6d62 696e 6528 7b69 7465  {})|combine({ite
│ │ │ -001fd270: 6d2e 303a 2069 7465 6d2e 317d 2920 7d7d  m.0: item.1}) }}
│ │ │ -001fd280: 270a 2020 7769 7468 5f74 6f67 6574 6865  '.  with_togethe
│ │ │ -001fd290: 723a 0a20 202d 2027 7b7b 2064 6576 6963  r:.  - '{{ devic
│ │ │ -001fd2a0: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ -001fd2b0: 6e65 735b 305d 2e73 706c 6974 2829 207c  nes[0].split() |
│ │ │ -001fd2c0: 206d 6170 2827 276c 6f77 6572 2727 2920   map(''lower'') 
│ │ │ -001fd2d0: 7c20 6c69 7374 207d 7d27 0a20 202d 2027  | list }}'.  - '
│ │ │ -001fd2e0: 7b7b 2064 6576 6963 655f 6e61 6d65 2e73  {{ device_name.s
│ │ │ -001fd2f0: 7464 6f75 745f 6c69 6e65 735b 315d 2e73  tdout_lines[1].s
│ │ │ -001fd300: 706c 6974 2829 207c 206c 6973 7420 7d7d  plit() | list }}
│ │ │ -001fd310: 270a 2020 7768 656e 3a0a 2020 2d20 2820  '.  when:.  - ( 
│ │ │ -001fd320: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ -001fd330: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001fd340: 7061 636b 6167 6573 2061 6e64 2022 7270  packages and "rp
│ │ │ -001fd350: 6d2d 6f73 7472 6565 2220 696e 2061 6e73  m-ostree" in ans
│ │ │ -001fd360: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001fd370: 6765 730a 2020 2020 616e 6420 2262 6f6f  ges.    and "boo
│ │ │ -001fd380: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ -001fd390: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001fd3a0: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ -001fd3b0: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ -001fd3c0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001fd3d0: 6765 730a 2020 2020 616e 6420 226f 7374  ges.    and "ost
│ │ │ -001fd3e0: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -001fd3f0: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061  proc_cmdline ) a
│ │ │ -001fd400: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ -001fd410: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ -001fd420: 7479 7065 2069 6e0a 2020 2020 5b22 646f  type in.    ["do
│ │ │ -001fd430: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ -001fd440: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ -001fd450: 2c20 2263 6f6e 7461 696e 6572 225d 2029  , "container"] )
│ │ │ -001fd460: 2029 0a20 202d 2027 222f 7661 722f 746d   ).  - '"/var/tm
│ │ │ -001fd470: 7022 2069 6e20 616e 7369 626c 655f 6d6f  p" in ansible_mo
│ │ │ -001fd480: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ -001fd490: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ -001fd4a0: 6c69 7374 270a 2020 2d20 6465 7669 6365  list'.  - device
│ │ │ -001fd4b0: 5f6e 616d 652e 7374 646f 7574 2069 7320  _name.stdout is 
│ │ │ -001fd4c0: 6465 6669 6e65 6420 616e 6420 6465 7669  defined and devi
│ │ │ -001fd4d0: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ -001fd4e0: 696e 6573 2069 7320 6465 6669 6e65 640a  ines is defined.
│ │ │ -001fd4f0: 2020 2d20 2864 6576 6963 655f 6e61 6d65    - (device_name
│ │ │ -001fd500: 2e73 7464 6f75 7420 7c20 6c65 6e67 7468  .stdout | length
│ │ │ -001fd510: 2026 6774 3b20 3029 0a20 2074 6167 733a   > 0).  tags:
│ │ │ -001fd520: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -001fd530: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -001fd540: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001fd550: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001fd560: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001fd570: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -001fd580: 696f 6e5f 7661 725f 746d 705f 6e6f 7375  ion_var_tmp_nosu
│ │ │ -001fd590: 6964 0a20 202d 206e 6f5f 7265 626f 6f74  id.  - no_reboot
│ │ │ -001fd5a0: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ -001fd5b0: 2027 4164 6420 6e6f 7375 6964 204f 7074   'Add nosuid Opt
│ │ │ -001fd5c0: 696f 6e20 746f 202f 7661 722f 746d 703a  ion to /var/tmp:
│ │ │ -001fd5d0: 2049 6620 2f76 6172 2f74 6d70 206e 6f74   If /var/tmp not
│ │ │ -001fd5e0: 206d 6f75 6e74 6564 2c20 6372 6166 7420   mounted, craft 
│ │ │ -001fd5f0: 6d6f 756e 745f 696e 666f 0a20 2020 206d  mount_info.    m
│ │ │ -001fd600: 616e 7561 6c6c 7927 0a20 2073 6574 5f66  anually'.  set_f
│ │ │ -001fd610: 6163 743a 0a20 2020 206d 6f75 6e74 5f69  act:.    mount_i
│ │ │ -001fd620: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69  nfo: '{{ mount_i
│ │ │ -001fd630: 6e66 6f7c 6465 6661 756c 7428 7b7d 297c  nfo|default({})|
│ │ │ -001fd640: 636f 6d62 696e 6528 7b69 7465 6d2e 303a  combine({item.0:
│ │ │ -001fd650: 2069 7465 6d2e 317d 2920 7d7d 270a 2020   item.1}) }}'.  
│ │ │ -001fd660: 7769 7468 5f74 6f67 6574 6865 723a 0a20  with_together:. 
│ │ │ -001fd670: 202d 202d 2074 6172 6765 740a 2020 2020   - - target.    
│ │ │ -001fd680: 2d20 736f 7572 6365 0a20 2020 202d 2066  - source.    - f
│ │ │ -001fd690: 7374 7970 650a 2020 2020 2d20 6f70 7469  stype.    - opti
│ │ │ -001fd6a0: 6f6e 730a 2020 2d20 2d20 2f76 6172 2f74  ons.  - - /var/t
│ │ │ -001fd6b0: 6d70 0a20 2020 202d 2027 270a 2020 2020  mp.    - ''.    
│ │ │ -001fd6c0: 2d20 2727 0a20 2020 202d 2064 6566 6175  - ''.    - defau
│ │ │ -001fd6d0: 6c74 730a 2020 7768 656e 3a0a 2020 2d20  lts.  when:.  - 
│ │ │ -001fd6e0: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -001fd6f0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001fd700: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001fd710: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ -001fd720: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001fd730: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ -001fd740: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -001fd750: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001fd760: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001fd770: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001fd780: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001fd790: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ -001fd7a0: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001fd7b0: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ -001fd7c0: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001fd7d0: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001fd7e0: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ -001fd7f0: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -001fd800: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -001fd810: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ -001fd820: 2029 2029 0a20 202d 2027 222f 7661 722f   ) ).  - '"/var/
│ │ │ -001fd830: 746d 7022 2069 6e20 616e 7369 626c 655f  tmp" in ansible_
│ │ │ -001fd840: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ -001fd850: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ -001fd860: 7c20 6c69 7374 270a 2020 2d20 2822 2d2d  | list'.  - ("--
│ │ │ -001fd870: 6673 7461 6222 207c 206c 656e 6774 6820  fstab" | length 
│ │ │ -001fd880: 3d3d 2030 290a 2020 2d20 6465 7669 6365  == 0).  - device
│ │ │ -001fd890: 5f6e 616d 652e 7374 646f 7574 2069 7320  _name.stdout is 
│ │ │ -001fd8a0: 6465 6669 6e65 6420 616e 6420 6465 7669  defined and devi
│ │ │ -001fd8b0: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ -001fd8c0: 696e 6573 2069 7320 6465 6669 6e65 640a  ines is defined.
│ │ │ -001fd8d0: 2020 2d20 2864 6576 6963 655f 6e61 6d65    - (device_name
│ │ │ -001fd8e0: 2e73 7464 6f75 7420 7c20 6c65 6e67 7468  .stdout | length
│ │ │ -001fd8f0: 203d 3d20 3029 0a20 2074 6167 733a 0a20   == 0).  tags:. 
│ │ │ -001fd900: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -001fd910: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -001fd920: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -001fd930: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -001fd940: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -001fd950: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ -001fd960: 6e5f 7661 725f 746d 705f 6e6f 7375 6964  n_var_tmp_nosuid
│ │ │ -001fd970: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -001fd980: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ -001fd990: 4164 6420 6e6f 7375 6964 204f 7074 696f  Add nosuid Optio
│ │ │ -001fd9a0: 6e20 746f 202f 7661 722f 746d 703a 204d  n to /var/tmp: M
│ │ │ -001fd9b0: 616b 6520 7375 7265 206e 6f73 7569 6420  ake sure nosuid 
│ │ │ -001fd9c0: 6f70 7469 6f6e 2069 7320 7061 7274 206f  option is part o
│ │ │ -001fd9d0: 6620 7468 6520 746f 0a20 2020 202f 7661  f the to.    /va
│ │ │ -001fd9e0: 722f 746d 7020 6f70 7469 6f6e 7327 0a20  r/tmp options'. 
│ │ │ -001fd9f0: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ -001fda00: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ -001fda10: 6f75 6e74 5f69 6e66 6f20 7c20 636f 6d62  ount_info | comb
│ │ │ -001fda20: 696e 6528 207b 2727 6f70 7469 6f6e 7327  ine( {''options'
│ │ │ -001fda30: 273a 2727 2727 7e28 6d6f 756e 745f 696e  ':''''~(mount_in
│ │ │ -001fda40: 666f 2e6f 7074 696f 6e73 207c 0a20 2020  fo.options |.   
│ │ │ -001fda50: 2020 2064 6566 6175 6c74 2827 2727 2729     default('''')
│ │ │ -001fda60: 297e 2827 272c 2727 2069 6620 286d 6f75  )~('','' if (mou
│ │ │ -001fda70: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ -001fda80: 7c20 6465 6661 756c 7428 2727 2727 2929  | default(''''))
│ │ │ -001fda90: 2065 6c73 6520 2727 2727 297e 2727 6e6f   else '''')~''no
│ │ │ -001fdaa0: 7375 6964 2727 0a20 2020 2020 207d 2920  suid''.      }) 
│ │ │ -001fdab0: 7d7d 270a 2020 7768 656e 3a0a 2020 2d20  }}'.  when:.  - 
│ │ │ -001fdac0: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -001fdad0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001fdae0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001fdaf0: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ -001fdb00: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001fdb10: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ -001fdb20: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -001fdb30: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001fdb40: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001fdb50: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001fdb60: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001fdb70: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ -001fdb80: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001fdb90: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ -001fdba0: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001fdbb0: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001fdbc0: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ -001fdbd0: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -001fdbe0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -001fdbf0: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ -001fdc00: 2029 2029 0a20 202d 2027 222f 7661 722f   ) ).  - '"/var/
│ │ │ -001fdc10: 746d 7022 2069 6e20 616e 7369 626c 655f  tmp" in ansible_
│ │ │ -001fdc20: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ -001fdc30: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ -001fdc40: 7c20 6c69 7374 270a 2020 2d20 6d6f 756e  | list'.  - moun
│ │ │ -001fdc50: 745f 696e 666f 2069 7320 6465 6669 6e65  t_info is define
│ │ │ -001fdc60: 6420 616e 6420 226e 6f73 7569 6422 206e  d and "nosuid" n
│ │ │ -001fdc70: 6f74 2069 6e20 286d 6f75 6e74 5f69 6e66  ot in (mount_inf
│ │ │ -001fdc80: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ -001fdc90: 756c 7428 2727 2929 0a20 2074 6167 733a  ult('')).  tags:
│ │ │ -001fdca0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -001fdcb0: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -001fdcc0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001fdcd0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001fdce0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001fdcf0: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -001fdd00: 696f 6e5f 7661 725f 746d 705f 6e6f 7375  ion_var_tmp_nosu
│ │ │ -001fdd10: 6964 0a20 202d 206e 6f5f 7265 626f 6f74  id.  - no_reboot
│ │ │ -001fdd20: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ -001fdd30: 2027 4164 6420 6e6f 7375 6964 204f 7074   'Add nosuid Opt
│ │ │ -001fdd40: 696f 6e20 746f 202f 7661 722f 746d 703a  ion to /var/tmp:
│ │ │ -001fdd50: 2045 6e73 7572 6520 2f76 6172 2f74 6d70   Ensure /var/tmp
│ │ │ -001fdd60: 2069 7320 6d6f 756e 7465 6420 7769 7468   is mounted with
│ │ │ -001fdd70: 206e 6f73 7569 6420 6f70 7469 6f6e 270a   nosuid option'.
│ │ │ -001fdd80: 2020 616e 7369 626c 652e 706f 7369 782e    ansible.posix.
│ │ │ -001fdd90: 6d6f 756e 743a 0a20 2020 2070 6174 683a  mount:.    path:
│ │ │ -001fdda0: 202f 7661 722f 746d 700a 2020 2020 7372   /var/tmp.    sr
│ │ │ -001fddb0: 633a 2027 7b7b 206d 6f75 6e74 5f69 6e66  c: '{{ mount_inf
│ │ │ -001fddc0: 6f2e 736f 7572 6365 207c 2064 6566 6175  o.source | defau
│ │ │ -001fddd0: 6c74 2827 2727 2729 207d 7d27 0a20 2020  lt('''') }}'.   
│ │ │ -001fdde0: 206f 7074 733a 2027 7b7b 206d 6f75 6e74   opts: '{{ mount
│ │ │ -001fddf0: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ -001fde00: 6465 6661 756c 7428 2727 2727 2920 7d7d  default('''') }}
│ │ │ -001fde10: 270a 2020 2020 7374 6174 653a 206d 6f75  '.    state: mou
│ │ │ -001fde20: 6e74 6564 0a20 2020 2066 7374 7970 653a  nted.    fstype:
│ │ │ -001fde30: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ -001fde40: 6673 7479 7065 207c 2064 6566 6175 6c74  fstype | default
│ │ │ -001fde50: 2827 2727 2729 207d 7d27 0a20 2072 6567  ('''') }}'.  reg
│ │ │ -001fde60: 6973 7465 723a 206d 6f75 6e74 5f72 6573  ister: mount_res
│ │ │ -001fde70: 756c 740a 2020 6661 696c 6564 5f77 6865  ult.  failed_whe
│ │ │ -001fde80: 6e3a 0a20 202d 206d 6f75 6e74 5f72 6573  n:.  - mount_res
│ │ │ -001fde90: 756c 7420 6973 2066 6169 6c65 640a 2020  ult is failed.  
│ │ │ -001fdea0: 2d20 2727 2774 6172 6765 7420 6973 2062  - '''target is b
│ │ │ -001fdeb0: 7573 7927 2720 6e6f 7420 696e 2028 6d6f  usy'' not in (mo
│ │ │ -001fdec0: 756e 745f 7265 7375 6c74 2e6d 7367 207c  unt_result.msg |
│ │ │ -001fded0: 2064 6566 6175 6c74 2827 2727 2729 2927   default(''''))'
│ │ │ -001fdee0: 0a20 202d 2027 2727 616c 7265 6164 7920  .  - '''already 
│ │ │ -001fdef0: 6d6f 756e 7465 6427 2720 6e6f 7420 696e  mounted'' not in
│ │ │ -001fdf00: 2028 6d6f 756e 745f 7265 7375 6c74 2e6d   (mount_result.m
│ │ │ -001fdf10: 7367 207c 2064 6566 6175 6c74 2827 2727  sg | default('''
│ │ │ -001fdf20: 2729 2927 0a20 2077 6865 6e3a 0a20 202d  '))'.  when:.  -
│ │ │ -001fdf30: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ -001fdf40: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001fdf50: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001fdf60: 2272 706d 2d6f 7374 7265 6522 2069 6e20  "rpm-ostree" in 
│ │ │ -001fdf70: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001fdf80: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001fdf90: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -001fdfa0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001fdfb0: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ -001fdfc0: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ -001fdfd0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001fdfe0: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -001fdff0: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001fe000: 6c65 5f70 726f 635f 636d 646c 696e 6520  le_proc_cmdline 
│ │ │ -001fe010: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ -001fe020: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ -001fe030: 6f6e 5f74 7970 6520 696e 0a20 2020 205b  on_type in.    [
│ │ │ -001fe040: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -001fe050: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -001fe060: 616e 222c 2022 636f 6e74 6169 6e65 7222  an", "container"
│ │ │ -001fe070: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ -001fe080: 2f74 6d70 2220 696e 2061 6e73 6962 6c65  /tmp" in ansible
│ │ │ -001fe090: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ -001fe0a0: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ -001fe0b0: 207c 206c 6973 7427 0a20 202d 206d 6f75   | list'.  - mou
│ │ │ -001fe0c0: 6e74 5f69 6e66 6f20 6973 2064 6566 696e  nt_info is defin
│ │ │ -001fe0d0: 6564 0a20 202d 2028 6465 7669 6365 5f6e  ed.  - (device_n
│ │ │ -001fe0e0: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ -001fe0f0: 6669 6e65 6420 616e 6420 2864 6576 6963  fined and (devic
│ │ │ -001fe100: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ -001fe110: 6c65 6e67 7468 2026 6774 3b20 3029 2920  length > 0)) 
│ │ │ -001fe120: 6f72 2028 222d 2d66 7374 6162 220a 2020  or ("--fstab".  
│ │ │ -001fe130: 2020 7c20 6c65 6e67 7468 203d 3d20 3029    | length == 0)
│ │ │ -001fe140: 0a20 2074 6167 733a 0a20 202d 2063 6f6e  .  tags:.  - con
│ │ │ -001fe150: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -001fe160: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -001fe170: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -001fe180: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -001fe190: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -001fe1a0: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f  ount_option_var_
│ │ │ -001fe1b0: 746d 705f 6e6f 7375 6964 0a20 202d 206e  tmp_nosuid.  - n
│ │ │ -001fe1c0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -001fe1d0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -001fe280: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ -001fe290: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ -001fe2a0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22

│ │ │ -001fe350: 2320 5265 6d65 6469 6174 696f 6e20 6973  # Remediation is
│ │ │ -001fe360: 2061 7070 6c69 6361 626c 6520 6f6e 6c79   applicable only
│ │ │ -001fe370: 2069 6e20 6365 7274 6169 6e20 706c 6174   in certain plat
│ │ │ -001fe380: 666f 726d 730a 6966 2028 2021 2028 207b  forms.if ( ! ( {
│ │ │ -001fe390: 2072 706d 202d 2d71 7569 6574 202d 7120   rpm --quiet -q 
│ │ │ -001fe3a0: 6b65 726e 656c 203b 7d20 2661 6d70 3b26  kernel ;} &&
│ │ │ -001fe3b0: 616d 703b 207b 2072 706d 202d 2d71 7569  amp; { rpm --qui
│ │ │ -001fe3c0: 6574 202d 7120 7270 6d2d 6f73 7472 6565  et -q rpm-ostree
│ │ │ -001fe3d0: 203b 7d20 2661 6d70 3b26 616d 703b 207b   ;} && {
│ │ │ -001fe3e0: 2072 706d 202d 2d71 7569 6574 202d 7120   rpm --quiet -q 
│ │ │ -001fe3f0: 626f 6f74 6320 3b7d 2026 616d 703b 2661  bootc ;} &&a
│ │ │ -001fe400: 6d70 3b20 7b20 2120 7270 6d20 2d2d 7175  mp; { ! rpm --qu
│ │ │ -001fe410: 6965 7420 2d71 206f 7065 6e73 6869 6674  iet -q openshift
│ │ │ -001fe420: 2d6b 7562 656c 6574 203b 7d20 2661 6d70  -kubelet ;} &
│ │ │ -001fe430: 3b26 616d 703b 2028 5b20 2d66 202f 7275  ;& ([ -f /ru
│ │ │ -001fe440: 6e2f 6f73 7472 6565 2d62 6f6f 7465 6420  n/ostree-booted 
│ │ │ -001fe450: 5d20 7c7c 205b 202d 4c20 2f6f 7374 7265  ] || [ -L /ostre
│ │ │ -001fe460: 6520 5d29 2029 2026 616d 703b 2661 6d70  e ]) ) &&
│ │ │ -001fe470: 3b20 2120 2820 5b20 2d66 202f 2e64 6f63  ; ! ( [ -f /.doc
│ │ │ -001fe480: 6b65 7265 6e76 205d 207c 7c20 5b20 2d66  kerenv ] || [ -f
│ │ │ -001fe490: 202f 7275 6e2f 2e63 6f6e 7461 696e 6572   /run/.container
│ │ │ -001fe4a0: 656e 7620 5d20 2920 2920 2661 6d70 3b26  env ] ) ) &&
│ │ │ -001fe4b0: 616d 703b 207b 2028 2066 696e 646d 6e74  amp; { ( findmnt
│ │ │ -001fe4c0: 202d 2d6b 6572 6e65 6c20 222f 7661 722f   --kernel "/var/
│ │ │ -001fe4d0: 746d 7022 2026 6774 3b20 2f64 6576 2f6e  tmp" > /dev/n
│ │ │ -001fe4e0: 756c 6c20 7c7c 2066 696e 646d 6e74 202d  ull || findmnt -
│ │ │ -001fe4f0: 2d66 7374 6162 2022 2f76 6172 2f74 6d70  -fstab "/var/tmp
│ │ │ -001fe500: 2220 2667 743b 202f 6465 762f 6e75 6c6c  " > /dev/null
│ │ │ -001fe510: 2029 3b20 7d3b 2074 6865 6e0a 0a66 756e   ); }; then..fun
│ │ │ -001fe520: 6374 696f 6e20 7065 7266 6f72 6d5f 7265  ction perform_re
│ │ │ -001fe530: 6d65 6469 6174 696f 6e20 7b0a 0a20 2020  mediation {..   
│ │ │ -001fe540: 200a 2020 2020 2020 2020 2320 7468 6520   .        # the 
│ │ │ -001fe550: 6d6f 756e 7420 706f 696e 7420 2f76 6172  mount point /var
│ │ │ -001fe560: 2f74 6d70 2068 6173 2074 6f20 6265 2064  /tmp has to be d
│ │ │ -001fe570: 6566 696e 6564 2069 6e20 2f65 7463 2f66  efined in /etc/f
│ │ │ -001fe580: 7374 6162 0a20 2020 2020 2020 2023 2062  stab.        # b
│ │ │ -001fe590: 6566 6f72 6520 7468 6973 2072 656d 6564  efore this remed
│ │ │ -001fe5a0: 6961 7469 6f6e 2063 616e 2062 6520 6578  iation can be ex
│ │ │ -001fe5b0: 6563 7574 6564 2e20 496e 2063 6173 6520  ecuted. In case 
│ │ │ -001fe5c0: 6974 2069 7320 6e6f 7420 6465 6669 6e65  it is not define
│ │ │ -001fe5d0: 642c 2074 6865 0a20 2020 2020 2020 2023  d, the.        #
│ │ │ -001fe5e0: 2072 656d 6564 6961 7469 6f6e 2061 626f   remediation abo
│ │ │ -001fe5f0: 7274 7320 616e 6420 6e6f 2063 6861 6e67  rts and no chang
│ │ │ -001fe600: 6573 2072 6567 6172 6469 6e67 2074 6865  es regarding the
│ │ │ -001fe610: 206d 6f75 6e74 2070 6f69 6e74 2061 7265   mount point are
│ │ │ -001fe620: 2064 6f6e 652e 0a20 2020 2020 2020 206d   done..        m
│ │ │ -001fe630: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001fe640: 5f72 6567 6578 703d 2224 2870 7269 6e74  _regexp="$(print
│ │ │ -001fe650: 6620 225e 5b5b 3a73 7061 6365 3a5d 5d2a  f "^[[:space:]]*
│ │ │ -001fe660: 5b5e 235d 2e2a 5b5b 3a73 7061 6365 3a5d  [^#].*[[:space:]
│ │ │ -001fe670: 5d25 735b 5b3a 7370 6163 653a 5d5d 2220  ]%s[[:space:]]" 
│ │ │ -001fe680: 222f 7661 722f 746d 7022 2922 0a0a 2020  "/var/tmp")"..  
│ │ │ -001fe690: 2020 6772 6570 2022 246d 6f75 6e74 5f70    grep "$mount_p
│ │ │ -001fe6a0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001fe6b0: 7022 202d 7120 2f65 7463 2f66 7374 6162  p" -q /etc/fstab
│ │ │ -001fe6c0: 205c 0a20 2020 2020 2020 207c 7c20 7b20   \.        || { 
│ │ │ -001fe6d0: 6563 686f 2022 5468 6520 6d6f 756e 7420  echo "The mount 
│ │ │ -001fe6e0: 706f 696e 7420 272f 7661 722f 746d 7027  point '/var/tmp'
│ │ │ -001fe6f0: 2069 7320 6e6f 7420 6576 656e 2069 6e20   is not even in 
│ │ │ -001fe700: 2f65 7463 2f66 7374 6162 2c20 736f 2077  /etc/fstab, so w
│ │ │ -001fe710: 6520 6361 6e27 7420 7365 7420 7570 206d  e can't set up m
│ │ │ -001fe720: 6f75 6e74 206f 7074 696f 6e73 2220 2667  ount options" &g
│ │ │ -001fe730: 743b 2661 6d70 3b32 3b0a 2020 2020 2020  t;&2;.      
│ │ │ -001fe740: 2020 2020 2020 2020 2020 6563 686f 2022            echo "
│ │ │ -001fe750: 4e6f 7420 7265 6d65 6469 6174 696e 672c  Not remediating,
│ │ │ -001fe760: 2062 6563 6175 7365 2074 6865 7265 2069   because there i
│ │ │ -001fe770: 7320 6e6f 2072 6563 6f72 6420 6f66 202f  s no record of /
│ │ │ -001fe780: 7661 722f 746d 7020 696e 202f 6574 632f  var/tmp in /etc/
│ │ │ -001fe790: 6673 7461 6222 2026 6774 3b26 616d 703b  fstab" >&
│ │ │ -001fe7a0: 323b 2072 6574 7572 6e20 313b 207d 0a20  2; return 1; }. 
│ │ │ -001fe7b0: 2020 200a 0a0a 2020 2020 6d6f 756e 745f     ...    mount_
│ │ │ -001fe7c0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001fe7d0: 7870 3d22 2428 7072 696e 7466 2022 5e5b  xp="$(printf "^[
│ │ │ -001fe7e0: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e  [:space:]]*[^#].
│ │ │ -001fe7f0: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b  *[[:space:]]%s[[
│ │ │ -001fe800: 3a73 7061 6365 3a5d 5d22 202f 7661 722f  :space:]]" /var/
│ │ │ -001fe810: 746d 7029 220a 0a20 2020 2023 2049 6620  tmp)"..    # If 
│ │ │ -001fe820: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ -001fe830: 6973 206e 6f74 2069 6e20 2f65 7463 2f66  is not in /etc/f
│ │ │ -001fe840: 7374 6162 2c20 6765 7420 7072 6576 696f  stab, get previo
│ │ │ -001fe850: 7573 206d 6f75 6e74 206f 7074 696f 6e73  us mount options
│ │ │ -001fe860: 2066 726f 6d20 2f65 7463 2f6d 7461 620a   from /etc/mtab.
│ │ │ -001fe870: 2020 2020 6966 2021 2067 7265 7020 2d71      if ! grep -q
│ │ │ -001fe880: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -001fe890: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ -001fe8a0: 632f 6673 7461 623b 2074 6865 6e0a 2020  c/fstab; then.  
│ │ │ -001fe8b0: 2020 2020 2020 2320 7275 6e74 696d 6520        # runtime 
│ │ │ -001fe8c0: 6f70 7473 2077 6974 686f 7574 2073 6f6d  opts without som
│ │ │ -001fe8d0: 6520 6175 746f 6d61 7469 6320 6b65 726e  e automatic kern
│ │ │ -001fe8e0: 656c 2f75 7365 7273 7061 6365 2d61 6464  el/userspace-add
│ │ │ -001fe8f0: 6564 2064 6566 6175 6c74 730a 2020 2020  ed defaults.    
│ │ │ -001fe900: 2020 2020 7072 6576 696f 7573 5f6d 6f75      previous_mou
│ │ │ -001fe910: 6e74 5f6f 7074 733d 2428 6772 6570 2022  nt_opts=$(grep "
│ │ │ -001fe920: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ -001fe930: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ -001fe940: 6d74 6162 207c 2068 6561 6420 2d31 207c  mtab | head -1 |
│ │ │ -001fe950: 2020 6177 6b20 277b 7072 696e 7420 2434    awk '{print $4
│ │ │ -001fe960: 7d27 205c 0a20 2020 2020 2020 2020 2020  }' \.           
│ │ │ -001fe970: 2020 2020 2020 2020 207c 2073 6564 202d           | sed -
│ │ │ -001fe980: 4520 2273 2f28 7277 7c64 6566 6175 6c74  E "s/(rw|default
│ │ │ -001fe990: 737c 7365 636c 6162 656c 7c6e 6f73 7569  s|seclabel|nosui
│ │ │ -001fe9a0: 6429 282c 7c24 292f 2f67 3b73 2f2c 242f  d)(,|$)//g;s/,$/
│ │ │ -001fe9b0: 2f22 290a 2020 2020 2020 2020 5b20 2224  /").        [ "$
│ │ │ -001fe9c0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001fe9d0: 7074 7322 205d 2026 616d 703b 2661 6d70  pts" ] &&
│ │ │ -001fe9e0: 3b20 7072 6576 696f 7573 5f6d 6f75 6e74  ; previous_mount
│ │ │ -001fe9f0: 5f6f 7074 732b 3d22 2c22 0a20 2020 2020  _opts+=",".     
│ │ │ -001fea00: 2020 2023 2049 6e20 6973 6f39 3636 3020     # In iso9660 
│ │ │ -001fea10: 6669 6c65 7379 7374 656d 7320 6d74 6162  filesystems mtab
│ │ │ -001fea20: 2063 6f75 6c64 2064 6573 6372 6962 6520   could describe 
│ │ │ -001fea30: 6120 2262 6c6f 636b 7369 7a65 2220 7661  a "blocksize" va
│ │ │ -001fea40: 6c75 652c 2074 6869 7320 7368 6f75 6c64  lue, this should
│ │ │ -001fea50: 2062 6520 7265 666c 6563 7465 6420 696e   be reflected in
│ │ │ -001fea60: 0a20 2020 2020 2020 2023 2066 7374 6162  .        # fstab
│ │ │ -001fea70: 2061 7320 2262 6c6f 636b 222e 2020 5468   as "block".  Th
│ │ │ -001fea80: 6520 6e65 7874 2076 6172 6961 626c 6520  e next variable 
│ │ │ -001fea90: 6973 2074 6f20 7361 7469 7366 7920 7368  is to satisfy sh
│ │ │ -001feaa0: 656c 6c63 6865 636b 2053 4332 3035 302e  ellcheck SC2050.
│ │ │ -001feab0: 0a20 2020 2020 2020 2066 735f 7479 7065  .        fs_type
│ │ │ -001feac0: 3d22 220a 2020 2020 2020 2020 6966 205b  ="".        if [
│ │ │ -001fead0: 2020 2224 6673 5f74 7970 6522 203d 3d20    "$fs_type" == 
│ │ │ -001feae0: 2269 736f 3936 3630 2220 5d20 3b20 7468  "iso9660" ] ; th
│ │ │ -001feaf0: 656e 0a20 2020 2020 2020 2020 2020 2070  en.            p
│ │ │ -001feb00: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001feb10: 7473 3d24 2873 6564 2027 732f 626c 6f63  ts=$(sed 's/bloc
│ │ │ -001feb20: 6b73 697a 653d 2f62 6c6f 636b 3d2f 2720  ksize=/block=/' 
│ │ │ -001feb30: 266c 743b 266c 743b 266c 743b 2022 2470  <<< "$p
│ │ │ -001feb40: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001feb50: 7473 2229 0a20 2020 2020 2020 2066 690a  ts").        fi.
│ │ │ -001feb60: 2020 2020 2020 2020 6563 686f 2022 202f          echo " /
│ │ │ -001feb70: 7661 722f 746d 7020 2064 6566 6175 6c74  var/tmp  default
│ │ │ -001feb80: 732c 247b 7072 6576 696f 7573 5f6d 6f75  s,${previous_mou
│ │ │ -001feb90: 6e74 5f6f 7074 737d 6e6f 7375 6964 2030  nt_opts}nosuid 0
│ │ │ -001feba0: 2030 2220 2667 743b 2667 743b 202f 6574   0" >> /et
│ │ │ -001febb0: 632f 6673 7461 620a 2020 2020 2320 4966  c/fstab.    # If
│ │ │ -001febc0: 2074 6865 206d 6f75 6e74 5f6f 7074 206f   the mount_opt o
│ │ │ -001febd0: 7074 696f 6e20 6973 206e 6f74 2061 6c72  ption is not alr
│ │ │ -001febe0: 6561 6479 2069 6e20 7468 6520 6d6f 756e  eady in the moun
│ │ │ -001febf0: 7420 706f 696e 7427 7320 2f65 7463 2f66  t point's /etc/f
│ │ │ -001fec00: 7374 6162 2065 6e74 7279 2c20 6164 6420  stab entry, add 
│ │ │ -001fec10: 6974 0a20 2020 2065 6c69 6620 2120 6772  it.    elif ! gr
│ │ │ -001fec20: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ -001fec30: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ -001fec40: 6574 632f 6673 7461 6220 7c20 6772 6570  etc/fstab | grep
│ │ │ -001fec50: 202d 7120 226e 6f73 7569 6422 3b20 7468   -q "nosuid"; th
│ │ │ -001fec60: 656e 0a20 2020 2020 2020 2070 7265 7669  en.        previ
│ │ │ -001fec70: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ -001fec80: 2867 7265 7020 2224 6d6f 756e 745f 706f  (grep "$mount_po
│ │ │ -001fec90: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001feca0: 2220 2f65 7463 2f66 7374 6162 207c 2061  " /etc/fstab | a
│ │ │ -001fecb0: 776b 2027 7b70 7269 6e74 2024 347d 2729  wk '{print $4}')
│ │ │ -001fecc0: 0a20 2020 2020 2020 2073 6564 202d 6920  .        sed -i 
│ │ │ -001fecd0: 2273 7c5c 2824 7b6d 6f75 6e74 5f70 6f69  "s|\(${mount_poi
│ │ │ -001fece0: 6e74 5f6d 6174 6368 5f72 6567 6578 707d  nt_match_regexp}
│ │ │ -001fecf0: 2e2a 247b 7072 6576 696f 7573 5f6d 6f75  .*${previous_mou
│ │ │ -001fed00: 6e74 5f6f 7074 737d 5c29 7c5c 312c 6e6f  nt_opts}\)|\1,no
│ │ │ -001fed10: 7375 6964 7c22 202f 6574 632f 6673 7461  suid|" /etc/fsta
│ │ │ -001fed20: 620a 2020 2020 6669 0a0a 0a20 2020 2069  b.    fi...    i
│ │ │ -001fed30: 6620 6d6b 6469 7220 2d70 2022 2f76 6172  f mkdir -p "/var
│ │ │ -001fed40: 2f74 6d70 223b 2074 6865 6e0a 2020 2020  /tmp"; then.    
│ │ │ -001fed50: 2020 2020 6966 206d 6f75 6e74 706f 696e      if mountpoin
│ │ │ -001fed60: 7420 2d71 2022 2f76 6172 2f74 6d70 223b  t -q "/var/tmp";
│ │ │ -001fed70: 2074 6865 6e0a 2020 2020 2020 2020 2020   then.          
│ │ │ -001fed80: 2020 6d6f 756e 7420 2d6f 2072 656d 6f75    mount -o remou
│ │ │ -001fed90: 6e74 202d 2d74 6172 6765 7420 222f 7661  nt --target "/va
│ │ │ -001feda0: 722f 746d 7022 0a20 2020 2020 2020 2066  r/tmp".        f
│ │ │ -001fedb0: 690a 2020 2020 6669 0a7d 0a0a 7065 7266  i.    fi.}..perf
│ │ │ -001fedc0: 6f72 6d5f 7265 6d65 6469 6174 696f 6e0a  orm_remediation.
│ │ │ -001fedd0: 0a65 6c73 650a 2020 2020 2667 743b 2661  .else.    >&a
│ │ │ -001fede0: 6d70 3b32 2065 6368 6f20 2752 656d 6564  mp;2 echo 'Remed
│ │ │ -001fedf0: 6961 7469 6f6e 2069 7320 6e6f 7420 6170  iation is not ap
│ │ │ -001fee00: 706c 6963 6162 6c65 2c20 6e6f 7468 696e  plicable, nothin
│ │ │ -001fee10: 6720 7761 7320 646f 6e65 270a 6669 0a3c  g was done'.fi.<
│ │ │ +001fca80: 6174 696f 6e20 416e 7369 626c 6520 736e  ation Ansible sn
│ │ │ +001fca90: 6970 7065 7420 e287 b23c 2f61 3e3c 6272  ippet ...
Re │ │ │ -001fe320: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -001fe330: 6c73 653c 2f74 643e 3c2f 7472 3e3c 2f74 lse
│ │ │ +001fcb40: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c
- n
│ │ │ +001fcbd0: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ +001fcbe0: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ +001fcbf0: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ +001fcc00: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ +001fcc10: 0a20 2074 6167 733a 0a20 202d 2063 6f6e  .  tags:.  - con
│ │ │ +001fcc20: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +001fcc30: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ +001fcc40: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ +001fcc50: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ +001fcc60: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ +001fcc70: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f  ount_option_var_
│ │ │ +001fcc80: 746d 705f 6e6f 7375 6964 0a20 202d 206e  tmp_nosuid.  - n
│ │ │ +001fcc90: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +001fcca0: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ +001fccb0: 7375 6964 204f 7074 696f 6e20 746f 202f  suid Option to /
│ │ │ +001fccc0: 7661 722f 746d 703a 2043 6865 636b 2069  var/tmp: Check i
│ │ │ +001fccd0: 6e66 6f72 6d61 7469 6f6e 2061 7373 6f63  nformation assoc
│ │ │ +001fcce0: 6961 7465 6420 746f 206d 6f75 6e74 706f  iated to mountpo
│ │ │ +001fccf0: 696e 7427 0a20 2061 6e73 6962 6c65 2e62  int'.  ansible.b
│ │ │ +001fcd00: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ +001fcd10: 6669 6e64 6d6e 7420 2d2d 6673 7461 6220  findmnt --fstab 
│ │ │ +001fcd20: 272f 7661 722f 746d 7027 0a20 2072 6567  '/var/tmp'.  reg
│ │ │ +001fcd30: 6973 7465 723a 2064 6576 6963 655f 6e61  ister: device_na
│ │ │ +001fcd40: 6d65 0a20 2066 6169 6c65 645f 7768 656e  me.  failed_when
│ │ │ +001fcd50: 3a20 6465 7669 6365 5f6e 616d 652e 7263  : device_name.rc
│ │ │ +001fcd60: 2026 6774 3b20 310a 2020 6368 616e 6765   > 1.  change
│ │ │ +001fcd70: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ +001fcd80: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73  check_mode: fals
│ │ │ +001fcd90: 650a 2020 7768 656e 3a0a 2020 2d20 2820  e.  when:.  - ( 
│ │ │ +001fcda0: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ +001fcdb0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001fcdc0: 7061 636b 6167 6573 2061 6e64 2022 7270  packages and "rp
│ │ │ +001fcdd0: 6d2d 6f73 7472 6565 2220 696e 2061 6e73  m-ostree" in ans
│ │ │ +001fcde0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001fcdf0: 6765 730a 2020 2020 616e 6420 2262 6f6f  ges.    and "boo
│ │ │ +001fce00: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ +001fce10: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001fce20: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ +001fce30: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ +001fce40: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001fce50: 6765 730a 2020 2020 616e 6420 226f 7374  ges.    and "ost
│ │ │ +001fce60: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001fce70: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061  proc_cmdline ) a
│ │ │ +001fce80: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ +001fce90: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ +001fcea0: 7479 7065 2069 6e0a 2020 2020 5b22 646f  type in.    ["do
│ │ │ +001fceb0: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ +001fcec0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ +001fced0: 2c20 2263 6f6e 7461 696e 6572 225d 2029  , "container"] )
│ │ │ +001fcee0: 2029 0a20 202d 2027 222f 7661 722f 746d   ).  - '"/var/tm
│ │ │ +001fcef0: 7022 2069 6e20 616e 7369 626c 655f 6d6f  p" in ansible_mo
│ │ │ +001fcf00: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ +001fcf10: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ +001fcf20: 6c69 7374 270a 2020 7461 6773 3a0a 2020  list'.  tags:.  
│ │ │ +001fcf30: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001fcf40: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001fcf50: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001fcf60: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001fcf70: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001fcf80: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001fcf90: 5f76 6172 5f74 6d70 5f6e 6f73 7569 640a  _var_tmp_nosuid.
│ │ │ +001fcfa0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001fcfb0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001fcfc0: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ +001fcfd0: 2074 6f20 2f76 6172 2f74 6d70 3a20 4372   to /var/tmp: Cr
│ │ │ +001fcfe0: 6561 7465 206d 6f75 6e74 5f69 6e66 6f20  eate mount_info 
│ │ │ +001fcff0: 6469 6374 696f 6e61 7279 2076 6172 6961  dictionary varia
│ │ │ +001fd000: 626c 6527 0a20 2073 6574 5f66 6163 743a  ble'.  set_fact:
│ │ │ +001fd010: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ +001fd020: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c   '{{ mount_info|
│ │ │ +001fd030: 6465 6661 756c 7428 7b7d 297c 636f 6d62  default({})|comb
│ │ │ +001fd040: 696e 6528 7b69 7465 6d2e 303a 2069 7465  ine({item.0: ite
│ │ │ +001fd050: 6d2e 317d 2920 7d7d 270a 2020 7769 7468  m.1}) }}'.  with
│ │ │ +001fd060: 5f74 6f67 6574 6865 723a 0a20 202d 2027  _together:.  - '
│ │ │ +001fd070: 7b7b 2064 6576 6963 655f 6e61 6d65 2e73  {{ device_name.s
│ │ │ +001fd080: 7464 6f75 745f 6c69 6e65 735b 305d 2e73  tdout_lines[0].s
│ │ │ +001fd090: 706c 6974 2829 207c 206d 6170 2827 276c  plit() | map(''l
│ │ │ +001fd0a0: 6f77 6572 2727 2920 7c20 6c69 7374 207d  ower'') | list }
│ │ │ +001fd0b0: 7d27 0a20 202d 2027 7b7b 2064 6576 6963  }'.  - '{{ devic
│ │ │ +001fd0c0: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ +001fd0d0: 6e65 735b 315d 2e73 706c 6974 2829 207c  nes[1].split() |
│ │ │ +001fd0e0: 206c 6973 7420 7d7d 270a 2020 7768 656e   list }}'.  when
│ │ │ +001fd0f0: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ +001fd100: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +001fd110: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001fd120: 2061 6e64 2022 7270 6d2d 6f73 7472 6565   and "rpm-ostree
│ │ │ +001fd130: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001fd140: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +001fd150: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ +001fd160: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001fd170: 6b61 6765 7320 616e 6420 6e6f 7420 226f  kages and not "o
│ │ │ +001fd180: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ +001fd190: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001fd1a0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +001fd1b0: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ +001fd1c0: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ +001fd1d0: 6c69 6e65 2029 2061 6e64 206e 6f74 2028  line ) and not (
│ │ │ +001fd1e0: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ +001fd1f0: 697a 6174 696f 6e5f 7479 7065 2069 6e0a  ization_type in.
│ │ │ +001fd200: 2020 2020 5b22 646f 636b 6572 222c 2022      ["docker", "
│ │ │ +001fd210: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ +001fd220: 2270 6f64 6d61 6e22 2c20 2263 6f6e 7461  "podman", "conta
│ │ │ +001fd230: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ +001fd240: 222f 7661 722f 746d 7022 2069 6e20 616e  "/var/tmp" in an
│ │ │ +001fd250: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ +001fd260: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ +001fd270: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ +001fd280: 2d20 6465 7669 6365 5f6e 616d 652e 7374  - device_name.st
│ │ │ +001fd290: 646f 7574 2069 7320 6465 6669 6e65 6420  dout is defined 
│ │ │ +001fd2a0: 616e 6420 6465 7669 6365 5f6e 616d 652e  and device_name.
│ │ │ +001fd2b0: 7374 646f 7574 5f6c 696e 6573 2069 7320  stdout_lines is 
│ │ │ +001fd2c0: 6465 6669 6e65 640a 2020 2d20 2864 6576  defined.  - (dev
│ │ │ +001fd2d0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ +001fd2e0: 7c20 6c65 6e67 7468 2026 6774 3b20 3029  | length > 0)
│ │ │ +001fd2f0: 0a20 2074 6167 733a 0a20 202d 2063 6f6e  .  tags:.  - con
│ │ │ +001fd300: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +001fd310: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ +001fd320: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ +001fd330: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ +001fd340: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ +001fd350: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f  ount_option_var_
│ │ │ +001fd360: 746d 705f 6e6f 7375 6964 0a20 202d 206e  tmp_nosuid.  - n
│ │ │ +001fd370: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +001fd380: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ +001fd390: 7375 6964 204f 7074 696f 6e20 746f 202f  suid Option to /
│ │ │ +001fd3a0: 7661 722f 746d 703a 2049 6620 2f76 6172  var/tmp: If /var
│ │ │ +001fd3b0: 2f74 6d70 206e 6f74 206d 6f75 6e74 6564  /tmp not mounted
│ │ │ +001fd3c0: 2c20 6372 6166 7420 6d6f 756e 745f 696e  , craft mount_in
│ │ │ +001fd3d0: 666f 0a20 2020 206d 616e 7561 6c6c 7927  fo.    manually'
│ │ │ +001fd3e0: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ +001fd3f0: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b   mount_info: '{{
│ │ │ +001fd400: 206d 6f75 6e74 5f69 6e66 6f7c 6465 6661   mount_info|defa
│ │ │ +001fd410: 756c 7428 7b7d 297c 636f 6d62 696e 6528  ult({})|combine(
│ │ │ +001fd420: 7b69 7465 6d2e 303a 2069 7465 6d2e 317d  {item.0: item.1}
│ │ │ +001fd430: 2920 7d7d 270a 2020 7769 7468 5f74 6f67  ) }}'.  with_tog
│ │ │ +001fd440: 6574 6865 723a 0a20 202d 202d 2074 6172  ether:.  - - tar
│ │ │ +001fd450: 6765 740a 2020 2020 2d20 736f 7572 6365  get.    - source
│ │ │ +001fd460: 0a20 2020 202d 2066 7374 7970 650a 2020  .    - fstype.  
│ │ │ +001fd470: 2020 2d20 6f70 7469 6f6e 730a 2020 2d20    - options.  - 
│ │ │ +001fd480: 2d20 2f76 6172 2f74 6d70 0a20 2020 202d  - /var/tmp.    -
│ │ │ +001fd490: 2027 270a 2020 2020 2d20 2727 0a20 2020   ''.    - ''.   
│ │ │ +001fd4a0: 202d 2064 6566 6175 6c74 730a 2020 7768   - defaults.  wh
│ │ │ +001fd4b0: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ +001fd4c0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +001fd4d0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001fd4e0: 6573 2061 6e64 2022 7270 6d2d 6f73 7472  es and "rpm-ostr
│ │ │ +001fd4f0: 6565 2220 696e 2061 6e73 6962 6c65 5f66  ee" in ansible_f
│ │ │ +001fd500: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001fd510: 2020 616e 6420 2262 6f6f 7463 2220 696e    and "bootc" in
│ │ │ +001fd520: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001fd530: 6163 6b61 6765 7320 616e 6420 6e6f 7420  ackages and not 
│ │ │ +001fd540: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +001fd550: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +001fd560: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001fd570: 2020 616e 6420 226f 7374 7265 6522 2069    and "ostree" i
│ │ │ +001fd580: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ +001fd590: 6d64 6c69 6e65 2029 2061 6e64 206e 6f74  mdline ) and not
│ │ │ +001fd5a0: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +001fd5b0: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +001fd5c0: 6e0a 2020 2020 5b22 646f 636b 6572 222c  n.    ["docker",
│ │ │ +001fd5d0: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ +001fd5e0: 2c20 2270 6f64 6d61 6e22 2c20 2263 6f6e  , "podman", "con
│ │ │ +001fd5f0: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ +001fd600: 2027 222f 7661 722f 746d 7022 2069 6e20   '"/var/tmp" in 
│ │ │ +001fd610: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ +001fd620: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ +001fd630: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ +001fd640: 2020 2d20 2822 2d2d 6673 7461 6222 207c    - ("--fstab" |
│ │ │ +001fd650: 206c 656e 6774 6820 3d3d 2030 290a 2020   length == 0).  
│ │ │ +001fd660: 2d20 6465 7669 6365 5f6e 616d 652e 7374  - device_name.st
│ │ │ +001fd670: 646f 7574 2069 7320 6465 6669 6e65 6420  dout is defined 
│ │ │ +001fd680: 616e 6420 6465 7669 6365 5f6e 616d 652e  and device_name.
│ │ │ +001fd690: 7374 646f 7574 5f6c 696e 6573 2069 7320  stdout_lines is 
│ │ │ +001fd6a0: 6465 6669 6e65 640a 2020 2d20 2864 6576  defined.  - (dev
│ │ │ +001fd6b0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ +001fd6c0: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ +001fd6d0: 2074 6167 733a 0a20 202d 2063 6f6e 6669   tags:.  - confi
│ │ │ +001fd6e0: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001fd6f0: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001fd700: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001fd710: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001fd720: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001fd730: 6e74 5f6f 7074 696f 6e5f 7661 725f 746d  nt_option_var_tm
│ │ │ +001fd740: 705f 6e6f 7375 6964 0a20 202d 206e 6f5f  p_nosuid.  - no_
│ │ │ +001fd750: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +001fd760: 206e 616d 653a 2027 4164 6420 6e6f 7375   name: 'Add nosu
│ │ │ +001fd770: 6964 204f 7074 696f 6e20 746f 202f 7661  id Option to /va
│ │ │ +001fd780: 722f 746d 703a 204d 616b 6520 7375 7265  r/tmp: Make sure
│ │ │ +001fd790: 206e 6f73 7569 6420 6f70 7469 6f6e 2069   nosuid option i
│ │ │ +001fd7a0: 7320 7061 7274 206f 6620 7468 6520 746f  s part of the to
│ │ │ +001fd7b0: 0a20 2020 202f 7661 722f 746d 7020 6f70  .    /var/tmp op
│ │ │ +001fd7c0: 7469 6f6e 7327 0a20 2073 6574 5f66 6163  tions'.  set_fac
│ │ │ +001fd7d0: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66  t:.    mount_inf
│ │ │ +001fd7e0: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66  o: '{{ mount_inf
│ │ │ +001fd7f0: 6f20 7c20 636f 6d62 696e 6528 207b 2727  o | combine( {''
│ │ │ +001fd800: 6f70 7469 6f6e 7327 273a 2727 2727 7e28  options'':''''~(
│ │ │ +001fd810: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ +001fd820: 6e73 207c 0a20 2020 2020 2064 6566 6175  ns |.      defau
│ │ │ +001fd830: 6c74 2827 2727 2729 297e 2827 272c 2727  lt(''''))~('',''
│ │ │ +001fd840: 2069 6620 286d 6f75 6e74 5f69 6e66 6f2e   if (mount_info.
│ │ │ +001fd850: 6f70 7469 6f6e 7320 7c20 6465 6661 756c  options | defaul
│ │ │ +001fd860: 7428 2727 2727 2929 2065 6c73 6520 2727  t('''')) else ''
│ │ │ +001fd870: 2727 297e 2727 6e6f 7375 6964 2727 0a20  '')~''nosuid''. 
│ │ │ +001fd880: 2020 2020 207d 2920 7d7d 270a 2020 7768       }) }}'.  wh
│ │ │ +001fd890: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ +001fd8a0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +001fd8b0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001fd8c0: 6573 2061 6e64 2022 7270 6d2d 6f73 7472  es and "rpm-ostr
│ │ │ +001fd8d0: 6565 2220 696e 2061 6e73 6962 6c65 5f66  ee" in ansible_f
│ │ │ +001fd8e0: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001fd8f0: 2020 616e 6420 2262 6f6f 7463 2220 696e    and "bootc" in
│ │ │ +001fd900: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001fd910: 6163 6b61 6765 7320 616e 6420 6e6f 7420  ackages and not 
│ │ │ +001fd920: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +001fd930: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +001fd940: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001fd950: 2020 616e 6420 226f 7374 7265 6522 2069    and "ostree" i
│ │ │ +001fd960: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ +001fd970: 6d64 6c69 6e65 2029 2061 6e64 206e 6f74  mdline ) and not
│ │ │ +001fd980: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +001fd990: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +001fd9a0: 6e0a 2020 2020 5b22 646f 636b 6572 222c  n.    ["docker",
│ │ │ +001fd9b0: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ +001fd9c0: 2c20 2270 6f64 6d61 6e22 2c20 2263 6f6e  , "podman", "con
│ │ │ +001fd9d0: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ +001fd9e0: 2027 222f 7661 722f 746d 7022 2069 6e20   '"/var/tmp" in 
│ │ │ +001fd9f0: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ +001fda00: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ +001fda10: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ +001fda20: 2020 2d20 6d6f 756e 745f 696e 666f 2069    - mount_info i
│ │ │ +001fda30: 7320 6465 6669 6e65 6420 616e 6420 226e  s defined and "n
│ │ │ +001fda40: 6f73 7569 6422 206e 6f74 2069 6e20 286d  osuid" not in (m
│ │ │ +001fda50: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ +001fda60: 7320 7c20 6465 6661 756c 7428 2727 2929  s | default(''))
│ │ │ +001fda70: 0a20 2074 6167 733a 0a20 202d 2063 6f6e  .  tags:.  - con
│ │ │ +001fda80: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +001fda90: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ +001fdaa0: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ +001fdab0: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ +001fdac0: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ +001fdad0: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f  ount_option_var_
│ │ │ +001fdae0: 746d 705f 6e6f 7375 6964 0a20 202d 206e  tmp_nosuid.  - n
│ │ │ +001fdaf0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +001fdb00: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ +001fdb10: 7375 6964 204f 7074 696f 6e20 746f 202f  suid Option to /
│ │ │ +001fdb20: 7661 722f 746d 703a 2045 6e73 7572 6520  var/tmp: Ensure 
│ │ │ +001fdb30: 2f76 6172 2f74 6d70 2069 7320 6d6f 756e  /var/tmp is moun
│ │ │ +001fdb40: 7465 6420 7769 7468 206e 6f73 7569 6420  ted with nosuid 
│ │ │ +001fdb50: 6f70 7469 6f6e 270a 2020 616e 7369 626c  option'.  ansibl
│ │ │ +001fdb60: 652e 706f 7369 782e 6d6f 756e 743a 0a20  e.posix.mount:. 
│ │ │ +001fdb70: 2020 2070 6174 683a 202f 7661 722f 746d     path: /var/tm
│ │ │ +001fdb80: 700a 2020 2020 7372 633a 2027 7b7b 206d  p.    src: '{{ m
│ │ │ +001fdb90: 6f75 6e74 5f69 6e66 6f2e 736f 7572 6365  ount_info.source
│ │ │ +001fdba0: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ +001fdbb0: 207d 7d27 0a20 2020 206f 7074 733a 2027   }}'.    opts: '
│ │ │ +001fdbc0: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 6f70  {{ mount_info.op
│ │ │ +001fdbd0: 7469 6f6e 7320 7c20 6465 6661 756c 7428  tions | default(
│ │ │ +001fdbe0: 2727 2727 2920 7d7d 270a 2020 2020 7374  '''') }}'.    st
│ │ │ +001fdbf0: 6174 653a 206d 6f75 6e74 6564 0a20 2020  ate: mounted.   
│ │ │ +001fdc00: 2066 7374 7970 653a 2027 7b7b 206d 6f75   fstype: '{{ mou
│ │ │ +001fdc10: 6e74 5f69 6e66 6f2e 6673 7479 7065 207c  nt_info.fstype |
│ │ │ +001fdc20: 2064 6566 6175 6c74 2827 2727 2729 207d   default('''') }
│ │ │ +001fdc30: 7d27 0a20 2072 6567 6973 7465 723a 206d  }'.  register: m
│ │ │ +001fdc40: 6f75 6e74 5f72 6573 756c 740a 2020 6661  ount_result.  fa
│ │ │ +001fdc50: 696c 6564 5f77 6865 6e3a 0a20 202d 206d  iled_when:.  - m
│ │ │ +001fdc60: 6f75 6e74 5f72 6573 756c 7420 6973 2066  ount_result is f
│ │ │ +001fdc70: 6169 6c65 640a 2020 2d20 2727 2774 6172  ailed.  - '''tar
│ │ │ +001fdc80: 6765 7420 6973 2062 7573 7927 2720 6e6f  get is busy'' no
│ │ │ +001fdc90: 7420 696e 2028 6d6f 756e 745f 7265 7375  t in (mount_resu
│ │ │ +001fdca0: 6c74 2e6d 7367 207c 2064 6566 6175 6c74  lt.msg | default
│ │ │ +001fdcb0: 2827 2727 2729 2927 0a20 202d 2027 2727  (''''))'.  - '''
│ │ │ +001fdcc0: 616c 7265 6164 7920 6d6f 756e 7465 6427  already mounted'
│ │ │ +001fdcd0: 2720 6e6f 7420 696e 2028 6d6f 756e 745f  ' not in (mount_
│ │ │ +001fdce0: 7265 7375 6c74 2e6d 7367 207c 2064 6566  result.msg | def
│ │ │ +001fdcf0: 6175 6c74 2827 2727 2729 2927 0a20 2077  ault(''''))'.  w
│ │ │ +001fdd00: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +001fdd10: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +001fdd20: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001fdd30: 6765 7320 616e 6420 2272 706d 2d6f 7374  ges and "rpm-ost
│ │ │ +001fdd40: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001fdd50: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001fdd60: 2020 2061 6e64 2022 626f 6f74 6322 2069     and "bootc" i
│ │ │ +001fdd70: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001fdd80: 7061 636b 6167 6573 2061 6e64 206e 6f74  packages and not
│ │ │ +001fdd90: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ +001fdda0: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ +001fddb0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001fddc0: 2020 2061 6e64 2022 6f73 7472 6565 2220     and "ostree" 
│ │ │ +001fddd0: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ +001fdde0: 636d 646c 696e 6520 2920 616e 6420 6e6f  cmdline ) and no
│ │ │ +001fddf0: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ +001fde00: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ +001fde10: 696e 0a20 2020 205b 2264 6f63 6b65 7222  in.    ["docker"
│ │ │ +001fde20: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ +001fde30: 222c 2022 706f 646d 616e 222c 2022 636f  ", "podman", "co
│ │ │ +001fde40: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ +001fde50: 2d20 2722 2f76 6172 2f74 6d70 2220 696e  - '"/var/tmp" in
│ │ │ +001fde60: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ +001fde70: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ +001fde80: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ +001fde90: 0a20 202d 206d 6f75 6e74 5f69 6e66 6f20  .  - mount_info 
│ │ │ +001fdea0: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ +001fdeb0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001fdec0: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ +001fded0: 6420 2864 6576 6963 655f 6e61 6d65 2e73  d (device_name.s
│ │ │ +001fdee0: 7464 6f75 7420 7c20 6c65 6e67 7468 2026  tdout | length &
│ │ │ +001fdef0: 6774 3b20 3029 2920 6f72 2028 222d 2d66  gt; 0)) or ("--f
│ │ │ +001fdf00: 7374 6162 220a 2020 2020 7c20 6c65 6e67  stab".    | leng
│ │ │ +001fdf10: 7468 203d 3d20 3029 0a20 2074 6167 733a  th == 0).  tags:
│ │ │ +001fdf20: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +001fdf30: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +001fdf40: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001fdf50: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001fdf60: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001fdf70: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001fdf80: 696f 6e5f 7661 725f 746d 705f 6e6f 7375  ion_var_tmp_nosu
│ │ │ +001fdf90: 6964 0a20 202d 206e 6f5f 7265 626f 6f74  id.  - no_reboot
│ │ │ +001fdfa0: 5f6e 6565 6465 640a 3c2f 636f 6465 3e3c  _needed.<
│ │ │ +001fdfb0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ +001fe060: 696f 6e20 5368 656c 6c20 7363 7269 7074  ion Shell script
│ │ │ +001fe070: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
│ │ │ +001fe110: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Compl │ │ │ +001fcb20: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +001fcb30: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +001fcb50: 2f74 683e 3c74 643e 6869 6768 3c2f 7464 /th>high
Re │ │ │ +001fcb70: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +001fcb80: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:configure │ │ │ +001fcbb0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Reboot:false
# Remedi │ │ │ +001fe130: 6174 696f 6e20 6973 2061 7070 6c69 6361 ation is applica │ │ │ +001fe140: 626c 6520 6f6e 6c79 2069 6e20 6365 7274 ble only in cert │ │ │ +001fe150: 6169 6e20 706c 6174 666f 726d 730a 6966 ain platforms.if │ │ │ +001fe160: 2028 2021 2028 207b 2072 706d 202d 2d71 ( ! ( { rpm --q │ │ │ +001fe170: 7569 6574 202d 7120 6b65 726e 656c 203b uiet -q kernel ; │ │ │ +001fe180: 7d20 2661 6d70 3b26 616d 703b 207b 2072 } && { r │ │ │ +001fe190: 706d 202d 2d71 7569 6574 202d 7120 7270 pm --quiet -q rp │ │ │ +001fe1a0: 6d2d 6f73 7472 6565 203b 7d20 2661 6d70 m-ostree ;} & │ │ │ +001fe1b0: 3b26 616d 703b 207b 2072 706d 202d 2d71 ;& { rpm --q │ │ │ +001fe1c0: 7569 6574 202d 7120 626f 6f74 6320 3b7d uiet -q bootc ;} │ │ │ +001fe1d0: 2026 616d 703b 2661 6d70 3b20 7b20 2120 && { ! │ │ │ +001fe1e0: 7270 6d20 2d2d 7175 6965 7420 2d71 206f rpm --quiet -q o │ │ │ +001fe1f0: 7065 6e73 6869 6674 2d6b 7562 656c 6574 penshift-kubelet │ │ │ +001fe200: 203b 7d20 2661 6d70 3b26 616d 703b 2028 ;} && ( │ │ │ +001fe210: 5b20 2d66 202f 7275 6e2f 6f73 7472 6565 [ -f /run/ostree │ │ │ +001fe220: 2d62 6f6f 7465 6420 5d20 7c7c 205b 202d -booted ] || [ - │ │ │ +001fe230: 4c20 2f6f 7374 7265 6520 5d29 2029 2026 L /ostree ]) ) & │ │ │ +001fe240: 616d 703b 2661 6d70 3b20 2120 2820 5b20 amp;& ! ( [ │ │ │ +001fe250: 2d66 202f 2e64 6f63 6b65 7265 6e76 205d -f /.dockerenv ] │ │ │ +001fe260: 207c 7c20 5b20 2d66 202f 7275 6e2f 2e63 || [ -f /run/.c │ │ │ +001fe270: 6f6e 7461 696e 6572 656e 7620 5d20 2920 ontainerenv ] ) │ │ │ +001fe280: 2920 2661 6d70 3b26 616d 703b 207b 2028 ) && { ( │ │ │ +001fe290: 2066 696e 646d 6e74 202d 2d6b 6572 6e65 findmnt --kerne │ │ │ +001fe2a0: 6c20 222f 7661 722f 746d 7022 2026 6774 l "/var/tmp" > │ │ │ +001fe2b0: 3b20 2f64 6576 2f6e 756c 6c20 7c7c 2066 ; /dev/null || f │ │ │ +001fe2c0: 696e 646d 6e74 202d 2d66 7374 6162 2022 indmnt --fstab " │ │ │ +001fe2d0: 2f76 6172 2f74 6d70 2220 2667 743b 202f /var/tmp" > / │ │ │ +001fe2e0: 6465 762f 6e75 6c6c 2029 3b20 7d3b 2074 dev/null ); }; t │ │ │ +001fe2f0: 6865 6e0a 0a66 756e 6374 696f 6e20 7065 hen..function pe │ │ │ +001fe300: 7266 6f72 6d5f 7265 6d65 6469 6174 696f rform_remediatio │ │ │ +001fe310: 6e20 7b0a 0a20 2020 200a 2020 2020 2020 n {.. . │ │ │ +001fe320: 2020 2320 7468 6520 6d6f 756e 7420 706f # the mount po │ │ │ +001fe330: 696e 7420 2f76 6172 2f74 6d70 2068 6173 int /var/tmp has │ │ │ +001fe340: 2074 6f20 6265 2064 6566 696e 6564 2069 to be defined i │ │ │ +001fe350: 6e20 2f65 7463 2f66 7374 6162 0a20 2020 n /etc/fstab. │ │ │ +001fe360: 2020 2020 2023 2062 6566 6f72 6520 7468 # before th │ │ │ +001fe370: 6973 2072 656d 6564 6961 7469 6f6e 2063 is remediation c │ │ │ +001fe380: 616e 2062 6520 6578 6563 7574 6564 2e20 an be executed. │ │ │ +001fe390: 496e 2063 6173 6520 6974 2069 7320 6e6f In case it is no │ │ │ +001fe3a0: 7420 6465 6669 6e65 642c 2074 6865 0a20 t defined, the. │ │ │ +001fe3b0: 2020 2020 2020 2023 2072 656d 6564 6961 # remedia │ │ │ +001fe3c0: 7469 6f6e 2061 626f 7274 7320 616e 6420 tion aborts and │ │ │ +001fe3d0: 6e6f 2063 6861 6e67 6573 2072 6567 6172 no changes regar │ │ │ +001fe3e0: 6469 6e67 2074 6865 206d 6f75 6e74 2070 ding the mount p │ │ │ +001fe3f0: 6f69 6e74 2061 7265 2064 6f6e 652e 0a20 oint are done.. │ │ │ +001fe400: 2020 2020 2020 206d 6f75 6e74 5f70 6f69 mount_poi │ │ │ +001fe410: 6e74 5f6d 6174 6368 5f72 6567 6578 703d nt_match_regexp= │ │ │ +001fe420: 2224 2870 7269 6e74 6620 225e 5b5b 3a73 "$(printf "^[[:s │ │ │ +001fe430: 7061 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b pace:]]*[^#].*[[ │ │ │ +001fe440: 3a73 7061 6365 3a5d 5d25 735b 5b3a 7370 :space:]]%s[[:sp │ │ │ +001fe450: 6163 653a 5d5d 2220 222f 7661 722f 746d ace:]]" "/var/tm │ │ │ +001fe460: 7022 2922 0a0a 2020 2020 6772 6570 2022 p")".. grep " │ │ │ +001fe470: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174 $mount_point_mat │ │ │ +001fe480: 6368 5f72 6567 6578 7022 202d 7120 2f65 ch_regexp" -q /e │ │ │ +001fe490: 7463 2f66 7374 6162 205c 0a20 2020 2020 tc/fstab \. │ │ │ +001fe4a0: 2020 207c 7c20 7b20 6563 686f 2022 5468 || { echo "Th │ │ │ +001fe4b0: 6520 6d6f 756e 7420 706f 696e 7420 272f e mount point '/ │ │ │ +001fe4c0: 7661 722f 746d 7027 2069 7320 6e6f 7420 var/tmp' is not │ │ │ +001fe4d0: 6576 656e 2069 6e20 2f65 7463 2f66 7374 even in /etc/fst │ │ │ +001fe4e0: 6162 2c20 736f 2077 6520 6361 6e27 7420 ab, so we can't │ │ │ +001fe4f0: 7365 7420 7570 206d 6f75 6e74 206f 7074 set up mount opt │ │ │ +001fe500: 696f 6e73 2220 2667 743b 2661 6d70 3b32 ions" >&2 │ │ │ +001fe510: 3b0a 2020 2020 2020 2020 2020 2020 2020 ;. │ │ │ +001fe520: 2020 6563 686f 2022 4e6f 7420 7265 6d65 echo "Not reme │ │ │ +001fe530: 6469 6174 696e 672c 2062 6563 6175 7365 diating, because │ │ │ +001fe540: 2074 6865 7265 2069 7320 6e6f 2072 6563 there is no rec │ │ │ +001fe550: 6f72 6420 6f66 202f 7661 722f 746d 7020 ord of /var/tmp │ │ │ +001fe560: 696e 202f 6574 632f 6673 7461 6222 2026 in /etc/fstab" & │ │ │ +001fe570: 6774 3b26 616d 703b 323b 2072 6574 7572 gt;&2; retur │ │ │ +001fe580: 6e20 313b 207d 0a20 2020 200a 0a0a 2020 n 1; }. ... │ │ │ +001fe590: 2020 6d6f 756e 745f 706f 696e 745f 6d61 mount_point_ma │ │ │ +001fe5a0: 7463 685f 7265 6765 7870 3d22 2428 7072 tch_regexp="$(pr │ │ │ +001fe5b0: 696e 7466 2022 5e5b 5b3a 7370 6163 653a intf "^[[:space: │ │ │ +001fe5c0: 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163 ]]*[^#].*[[:spac │ │ │ +001fe5d0: 653a 5d5d 2573 5b5b 3a73 7061 6365 3a5d e:]]%s[[:space:] │ │ │ +001fe5e0: 5d22 202f 7661 722f 746d 7029 220a 0a20 ]" /var/tmp)".. │ │ │ +001fe5f0: 2020 2023 2049 6620 7468 6520 6d6f 756e # If the moun │ │ │ +001fe600: 7420 706f 696e 7420 6973 206e 6f74 2069 t point is not i │ │ │ +001fe610: 6e20 2f65 7463 2f66 7374 6162 2c20 6765 n /etc/fstab, ge │ │ │ +001fe620: 7420 7072 6576 696f 7573 206d 6f75 6e74 t previous mount │ │ │ +001fe630: 206f 7074 696f 6e73 2066 726f 6d20 2f65 options from /e │ │ │ +001fe640: 7463 2f6d 7461 620a 2020 2020 6966 2021 tc/mtab. if ! │ │ │ +001fe650: 2067 7265 7020 2d71 2022 246d 6f75 6e74 grep -q "$mount │ │ │ +001fe660: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567 _point_match_reg │ │ │ +001fe670: 6578 7022 202f 6574 632f 6673 7461 623b exp" /etc/fstab; │ │ │ +001fe680: 2074 6865 6e0a 2020 2020 2020 2020 2320 then. # │ │ │ +001fe690: 7275 6e74 696d 6520 6f70 7473 2077 6974 runtime opts wit │ │ │ +001fe6a0: 686f 7574 2073 6f6d 6520 6175 746f 6d61 hout some automa │ │ │ +001fe6b0: 7469 6320 6b65 726e 656c 2f75 7365 7273 tic kernel/users │ │ │ +001fe6c0: 7061 6365 2d61 6464 6564 2064 6566 6175 pace-added defau │ │ │ +001fe6d0: 6c74 730a 2020 2020 2020 2020 7072 6576 lts. prev │ │ │ +001fe6e0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d ious_mount_opts= │ │ │ +001fe6f0: 2428 6772 6570 2022 246d 6f75 6e74 5f70 $(grep "$mount_p │ │ │ +001fe700: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578 oint_match_regex │ │ │ +001fe710: 7022 202f 6574 632f 6d74 6162 207c 2068 p" /etc/mtab | h │ │ │ +001fe720: 6561 6420 2d31 207c 2020 6177 6b20 277b ead -1 | awk '{ │ │ │ +001fe730: 7072 696e 7420 2434 7d27 205c 0a20 2020 print $4}' \. │ │ │ +001fe740: 2020 2020 2020 2020 2020 2020 2020 2020 │ │ │ +001fe750: 207c 2073 6564 202d 4520 2273 2f28 7277 | sed -E "s/(rw │ │ │ +001fe760: 7c64 6566 6175 6c74 737c 7365 636c 6162 |defaults|seclab │ │ │ +001fe770: 656c 7c6e 6f73 7569 6429 282c 7c24 292f el|nosuid)(,|$)/ │ │ │ +001fe780: 2f67 3b73 2f2c 242f 2f22 290a 2020 2020 /g;s/,$//"). │ │ │ +001fe790: 2020 2020 5b20 2224 7072 6576 696f 7573 [ "$previous │ │ │ +001fe7a0: 5f6d 6f75 6e74 5f6f 7074 7322 205d 2026 _mount_opts" ] & │ │ │ +001fe7b0: 616d 703b 2661 6d70 3b20 7072 6576 696f amp;& previo │ │ │ +001fe7c0: 7573 5f6d 6f75 6e74 5f6f 7074 732b 3d22 us_mount_opts+=" │ │ │ +001fe7d0: 2c22 0a20 2020 2020 2020 2023 2049 6e20 ,". # In │ │ │ +001fe7e0: 6973 6f39 3636 3020 6669 6c65 7379 7374 iso9660 filesyst │ │ │ +001fe7f0: 656d 7320 6d74 6162 2063 6f75 6c64 2064 ems mtab could d │ │ │ +001fe800: 6573 6372 6962 6520 6120 2262 6c6f 636b escribe a "block │ │ │ +001fe810: 7369 7a65 2220 7661 6c75 652c 2074 6869 size" value, thi │ │ │ +001fe820: 7320 7368 6f75 6c64 2062 6520 7265 666c s should be refl │ │ │ +001fe830: 6563 7465 6420 696e 0a20 2020 2020 2020 ected in. │ │ │ +001fe840: 2023 2066 7374 6162 2061 7320 2262 6c6f # fstab as "blo │ │ │ +001fe850: 636b 222e 2020 5468 6520 6e65 7874 2076 ck". The next v │ │ │ +001fe860: 6172 6961 626c 6520 6973 2074 6f20 7361 ariable is to sa │ │ │ +001fe870: 7469 7366 7920 7368 656c 6c63 6865 636b tisfy shellcheck │ │ │ +001fe880: 2053 4332 3035 302e 0a20 2020 2020 2020 SC2050.. │ │ │ +001fe890: 2066 735f 7479 7065 3d22 220a 2020 2020 fs_type="". │ │ │ +001fe8a0: 2020 2020 6966 205b 2020 2224 6673 5f74 if [ "$fs_t │ │ │ +001fe8b0: 7970 6522 203d 3d20 2269 736f 3936 3630 ype" == "iso9660 │ │ │ +001fe8c0: 2220 5d20 3b20 7468 656e 0a20 2020 2020 " ] ; then. │ │ │ +001fe8d0: 2020 2020 2020 2070 7265 7669 6f75 735f previous_ │ │ │ +001fe8e0: 6d6f 756e 745f 6f70 7473 3d24 2873 6564 mount_opts=$(sed │ │ │ +001fe8f0: 2027 732f 626c 6f63 6b73 697a 653d 2f62 's/blocksize=/b │ │ │ +001fe900: 6c6f 636b 3d2f 2720 266c 743b 266c 743b lock=/' << │ │ │ +001fe910: 266c 743b 2022 2470 7265 7669 6f75 735f < "$previous_ │ │ │ +001fe920: 6d6f 756e 745f 6f70 7473 2229 0a20 2020 mount_opts"). │ │ │ +001fe930: 2020 2020 2066 690a 2020 2020 2020 2020 fi. │ │ │ +001fe940: 6563 686f 2022 202f 7661 722f 746d 7020 echo " /var/tmp │ │ │ +001fe950: 2064 6566 6175 6c74 732c 247b 7072 6576 defaults,${prev │ │ │ +001fe960: 696f 7573 5f6d 6f75 6e74 5f6f 7074 737d ious_mount_opts} │ │ │ +001fe970: 6e6f 7375 6964 2030 2030 2220 2667 743b nosuid 0 0" > │ │ │ +001fe980: 2667 743b 202f 6574 632f 6673 7461 620a > /etc/fstab. │ │ │ +001fe990: 2020 2020 2320 4966 2074 6865 206d 6f75 # If the mou │ │ │ +001fe9a0: 6e74 5f6f 7074 206f 7074 696f 6e20 6973 nt_opt option is │ │ │ +001fe9b0: 206e 6f74 2061 6c72 6561 6479 2069 6e20 not already in │ │ │ +001fe9c0: 7468 6520 6d6f 756e 7420 706f 696e 7427 the mount point' │ │ │ +001fe9d0: 7320 2f65 7463 2f66 7374 6162 2065 6e74 s /etc/fstab ent │ │ │ +001fe9e0: 7279 2c20 6164 6420 6974 0a20 2020 2065 ry, add it. e │ │ │ +001fe9f0: 6c69 6620 2120 6772 6570 2022 246d 6f75 lif ! grep "$mou │ │ │ +001fea00: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72 nt_point_match_r │ │ │ +001fea10: 6567 6578 7022 202f 6574 632f 6673 7461 egexp" /etc/fsta │ │ │ +001fea20: 6220 7c20 6772 6570 202d 7120 226e 6f73 b | grep -q "nos │ │ │ +001fea30: 7569 6422 3b20 7468 656e 0a20 2020 2020 uid"; then. │ │ │ +001fea40: 2020 2070 7265 7669 6f75 735f 6d6f 756e previous_moun │ │ │ +001fea50: 745f 6f70 7473 3d24 2867 7265 7020 2224 t_opts=$(grep "$ │ │ │ +001fea60: 6d6f 756e 745f 706f 696e 745f 6d61 7463 mount_point_matc │ │ │ +001fea70: 685f 7265 6765 7870 2220 2f65 7463 2f66 h_regexp" /etc/f │ │ │ +001fea80: 7374 6162 207c 2061 776b 2027 7b70 7269 stab | awk '{pri │ │ │ +001fea90: 6e74 2024 347d 2729 0a20 2020 2020 2020 nt $4}'). │ │ │ +001feaa0: 2073 6564 202d 6920 2273 7c5c 2824 7b6d sed -i "s|\(${m │ │ │ +001feab0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368 ount_point_match │ │ │ +001feac0: 5f72 6567 6578 707d 2e2a 247b 7072 6576 _regexp}.*${prev │ │ │ +001fead0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 737d ious_mount_opts} │ │ │ +001feae0: 5c29 7c5c 312c 6e6f 7375 6964 7c22 202f \)|\1,nosuid|" / │ │ │ +001feaf0: 6574 632f 6673 7461 620a 2020 2020 6669 etc/fstab. fi │ │ │ +001feb00: 0a0a 0a20 2020 2069 6620 6d6b 6469 7220 ... if mkdir │ │ │ +001feb10: 2d70 2022 2f76 6172 2f74 6d70 223b 2074 -p "/var/tmp"; t │ │ │ +001feb20: 6865 6e0a 2020 2020 2020 2020 6966 206d hen. if m │ │ │ +001feb30: 6f75 6e74 706f 696e 7420 2d71 2022 2f76 ountpoint -q "/v │ │ │ +001feb40: 6172 2f74 6d70 223b 2074 6865 6e0a 2020 ar/tmp"; then. │ │ │ +001feb50: 2020 2020 2020 2020 2020 6d6f 756e 7420 mount │ │ │ +001feb60: 2d6f 2072 656d 6f75 6e74 202d 2d74 6172 -o remount --tar │ │ │ +001feb70: 6765 7420 222f 7661 722f 746d 7022 0a20 get "/var/tmp". │ │ │ +001feb80: 2020 2020 2020 2066 690a 2020 2020 6669 fi. fi │ │ │ +001feb90: 0a7d 0a0a 7065 7266 6f72 6d5f 7265 6d65 .}..perform_reme │ │ │ +001feba0: 6469 6174 696f 6e0a 0a65 6c73 650a 2020 diation..else. │ │ │ +001febb0: 2020 2667 743b 2661 6d70 3b32 2065 6368 >&2 ech │ │ │ +001febc0: 6f20 2752 656d 6564 6961 7469 6f6e 2069 o 'Remediation i │ │ │ +001febd0: 7320 6e6f 7420 6170 706c 6963 6162 6c65 s not applicable │ │ │ +001febe0: 2c20 6e6f 7468 696e 6720 7761 7320 646f , nothing was do │ │ │ +001febf0: 6e65 270a 6669 0a3c 2f63 6f64 653e 3c2f ne'.fi.
Remediati │ │ │ +001fecb0: 6f6e 2041 6e61 636f 6e64 6120 736e 6970 on Anaconda snip │ │ │ +001fecc0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +001fecd0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001fece0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001fecf0: 7365 2220 6964 3d22 6964 3632 3322 3e3c se" id="id623">< │ │ │ +001fed00: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001fed10: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001fed20: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001fed30: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +001fed40: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +001fed50: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +001fed60: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:high< │ │ │ +001fed90: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>Rebo │ │ │ +001feda0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001fedb0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e< │ │ │ +001fedc0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:enable │ │ │ +001fede0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 .part /v │ │ │ +001fee00: 6172 2f74 6d70 202d 2d6d 6f75 6e74 6f70 ar/tmp --mountop │ │ │ +001fee10: 7469 6f6e 733d 226e 6f73 7569 6422 0a3c tions="nosuid".< │ │ │ 001fee20: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469 /code>
Remedi │ │ │ -00208d80: 6174 696f 6e20 4f53 4275 696c 6420 426c ation OSBuild Bl │ │ │ -00208d90: 7565 7072 696e 7420 736e 6970 7065 7420 ueprint snippet │ │ │ -00208da0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
│ │ │ -00208de0: 3c63 6f64 653e 5b63 7573 746f 6d69 7a61  [customiza
│ │ │ -00208df0: 7469 6f6e 732e 6b65 726e 656c 5d0a 6170  tions.kernel].ap
│ │ │ -00208e00: 7065 6e64 203d 2022 7061 6765 5f70 6f69  pend = "page_poi
│ │ │ -00208e10: 736f 6e3d 3122 0a3c 2f63 6f64 653e 3c2f  son=1".
Remediati │ │ │ -00208ed0: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070 on Ansible snipp │ │ │ -00208ee0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -00208f60: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -00208f70: 7479 3a3c 2f74 683e 3c74 643e 6d65 6469 ty:medi │ │ │ -00208f80: 756d 3c2f 7464 3e3c 2f74 723e 3c74 723e um │ │ │ -00208f90: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c Disruption:< │ │ │ -00208fa0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low │ │ │ -00208fb0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 Reb │ │ │ -00208fc0: 6f6f 743a 3c2f 7468 3e3c 7464 3e74 7275 oot:tru │ │ │ -00208fd0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e< │ │ │ -00208fe0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:restrict< │ │ │ -00209010: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -00209020: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -00209030: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -00209040: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -00209050: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -00209060: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ -00209070: 3030 2d35 332d 434d 2d36 2861 290a 2020 00-53-CM-6(a). │ │ │ -00209080: 2d20 6772 7562 325f 7061 6765 5f70 6f69 - grub2_page_poi │ │ │ -00209090: 736f 6e5f 6172 6775 6d65 6e74 0a20 202d son_argument. - │ │ │ -002090a0: 206c 6f77 5f64 6973 7275 7074 696f 6e0a low_disruption. │ │ │ -002090b0: 2020 2d20 6d65 6469 756d 5f63 6f6d 706c - medium_compl │ │ │ -002090c0: 6578 6974 790a 2020 2d20 6d65 6469 756d exity. - medium │ │ │ -002090d0: 5f73 6576 6572 6974 790a 2020 2d20 7265 _severity. - re │ │ │ -002090e0: 626f 6f74 5f72 6571 7569 7265 640a 2020 boot_required. │ │ │ -002090f0: 2d20 7265 7374 7269 6374 5f73 7472 6174 - restrict_strat │ │ │ -00209100: 6567 790a 0a2d 206e 616d 653a 2043 6865 egy..- name: Che │ │ │ -00209110: 636b 2069 6620 7061 6765 5f70 6f69 736f ck if page_poiso │ │ │ -00209120: 6e20 6172 6775 6d65 6e74 2069 7320 616c n argument is al │ │ │ -00209130: 7265 6164 7920 7072 6573 656e 7420 696e ready present in │ │ │ -00209140: 202f 6574 632f 6465 6661 756c 742f 6772 /etc/default/gr │ │ │ -00209150: 7562 0a20 2061 6e73 6962 6c65 2e62 7569 ub. ansible.bui │ │ │ -00209160: 6c74 696e 2e73 6c75 7270 3a0a 2020 2020 ltin.slurp:. │ │ │ -00209170: 7372 633a 202f 6574 632f 6465 6661 756c src: /etc/defaul │ │ │ -00209180: 742f 6772 7562 0a20 2072 6567 6973 7465 t/grub. registe │ │ │ -00209190: 723a 2065 7463 5f64 6566 6175 6c74 5f67 r: etc_default_g │ │ │ -002091a0: 7275 620a 2020 7768 656e 3a0a 2020 2d20 rub. when:. - │ │ │ -002091b0: 2722 6b65 726e 656c 2220 696e 2061 6e73 '"kernel" in ans │ │ │ -002091c0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ -002091d0: 6765 7327 0a20 202d 2027 2267 7275 6232 ges'. - '"grub2 │ │ │ -002091e0: 2d63 6f6d 6d6f 6e22 2069 6e20 616e 7369 -common" in ansi │ │ │ -002091f0: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -00209200: 6573 270a 2020 7461 6773 3a0a 2020 2d20 es'. tags:. - │ │ │ -00209210: 4e49 5354 2d38 3030 2d35 332d 434d 2d36 NIST-800-53-CM-6 │ │ │ -00209220: 2861 290a 2020 2d20 6772 7562 325f 7061 (a). - grub2_pa │ │ │ -00209230: 6765 5f70 6f69 736f 6e5f 6172 6775 6d65 ge_poison_argume │ │ │ -00209240: 6e74 0a20 202d 206c 6f77 5f64 6973 7275 nt. - low_disru │ │ │ -00209250: 7074 696f 6e0a 2020 2d20 6d65 6469 756d ption. - medium │ │ │ -00209260: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ -00209270: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ -00209280: 2020 2d20 7265 626f 6f74 5f72 6571 7569 - reboot_requi │ │ │ -00209290: 7265 640a 2020 2d20 7265 7374 7269 6374 red. - restrict │ │ │ -002092a0: 5f73 7472 6174 6567 790a 0a2d 206e 616d _strategy..- nam │ │ │ -002092b0: 653a 2043 6865 636b 2069 6620 7061 6765 e: Check if page │ │ │ -002092c0: 5f70 6f69 736f 6e20 6172 6775 6d65 6e74 _poison argument │ │ │ -002092d0: 2069 7320 616c 7265 6164 7920 7072 6573 is already pres │ │ │ -002092e0: 656e 740a 2020 616e 7369 626c 652e 6275 ent. ansible.bu │ │ │ -002092f0: 696c 7469 6e2e 636f 6d6d 616e 643a 202f iltin.command: / │ │ │ -00209300: 7362 696e 2f67 7275 6262 7920 2d2d 696e sbin/grubby --in │ │ │ -00209310: 666f 3d41 4c4c 0a20 2072 6567 6973 7465 fo=ALL. registe │ │ │ -00209320: 723a 2067 7275 6262 795f 696e 666f 0a20 r: grubby_info. │ │ │ -00209330: 2063 6865 636b 5f6d 6f64 653a 2066 616c check_mode: fal │ │ │ -00209340: 7365 0a20 2063 6861 6e67 6564 5f77 6865 se. changed_whe │ │ │ -00209350: 6e3a 2066 616c 7365 0a20 2066 6169 6c65 n: false. faile │ │ │ -00209360: 645f 7768 656e 3a20 6661 6c73 650a 2020 d_when: false. │ │ │ -00209370: 7768 656e 3a0a 2020 2d20 2722 6b65 726e when:. - '"kern │ │ │ -00209380: 656c 2220 696e 2061 6e73 6962 6c65 5f66 el" in ansible_f │ │ │ -00209390: 6163 7473 2e70 6163 6b61 6765 7327 0a20 acts.packages'. │ │ │ -002093a0: 202d 2027 2267 7275 6232 2d63 6f6d 6d6f - '"grub2-commo │ │ │ -002093b0: 6e22 2069 6e20 616e 7369 626c 655f 6661 n" in ansible_fa │ │ │ -002093c0: 6374 732e 7061 636b 6167 6573 270a 2020 cts.packages'. │ │ │ -002093d0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ -002093e0: 3030 2d35 332d 434d 2d36 2861 290a 2020 00-53-CM-6(a). │ │ │ -002093f0: 2d20 6772 7562 325f 7061 6765 5f70 6f69 - grub2_page_poi │ │ │ -00209400: 736f 6e5f 6172 6775 6d65 6e74 0a20 202d son_argument. - │ │ │ -00209410: 206c 6f77 5f64 6973 7275 7074 696f 6e0a low_disruption. │ │ │ -00209420: 2020 2d20 6d65 6469 756d 5f63 6f6d 706c - medium_compl │ │ │ -00209430: 6578 6974 790a 2020 2d20 6d65 6469 756d exity. - medium │ │ │ -00209440: 5f73 6576 6572 6974 790a 2020 2d20 7265 _severity. - re │ │ │ -00209450: 626f 6f74 5f72 6571 7569 7265 640a 2020 boot_required. │ │ │ -00209460: 2d20 7265 7374 7269 6374 5f73 7472 6174 - restrict_strat │ │ │ -00209470: 6567 790a 0a2d 206e 616d 653a 2055 7064 egy..- name: Upd │ │ │ -00209480: 6174 6520 6772 7562 2064 6566 6175 6c74 ate grub default │ │ │ -00209490: 7320 616e 6420 7468 6520 626f 6f74 6c6f s and the bootlo │ │ │ -002094a0: 6164 6572 206d 656e 750a 2020 616e 7369 ader menu. ansi │ │ │ -002094b0: 626c 652e 6275 696c 7469 6e2e 636f 6d6d ble.builtin.comm │ │ │ -002094c0: 616e 643a 202f 7362 696e 2f67 7275 6262 and: /sbin/grubb │ │ │ -002094d0: 7920 2d2d 7570 6461 7465 2d6b 6572 6e65 y --update-kerne │ │ │ -002094e0: 6c3d 414c 4c20 2d2d 6172 6773 3d22 7061 l=ALL --args="pa │ │ │ -002094f0: 6765 5f70 6f69 736f 6e3d 3122 0a20 2077 ge_poison=1". w │ │ │ -00209500: 6865 6e3a 0a20 202d 2027 226b 6572 6e65 hen:. - '"kerne │ │ │ -00209510: 6c22 2069 6e20 616e 7369 626c 655f 6661 l" in ansible_fa │ │ │ -00209520: 6374 732e 7061 636b 6167 6573 270a 2020 cts.packages'. │ │ │ -00209530: 2d20 2722 6772 7562 322d 636f 6d6d 6f6e - '"grub2-common │ │ │ -00209540: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -00209550: 7473 2e70 6163 6b61 6765 7327 0a20 202d ts.packages'. - │ │ │ -00209560: 2028 6772 7562 6279 5f69 6e66 6f2e 7374 (grubby_info.st │ │ │ -00209570: 646f 7574 2069 7320 6e6f 7420 7365 6172 dout is not sear │ │ │ -00209580: 6368 2827 7061 6765 5f70 6f69 736f 6e3d ch('page_poison= │ │ │ -00209590: 3127 2929 206f 7220 2828 6574 635f 6465 1')) or ((etc_de │ │ │ -002095a0: 6661 756c 745f 6772 7562 5b27 636f 6e74 fault_grub['cont │ │ │ -002095b0: 656e 7427 5d0a 2020 2020 7c20 6236 3464 ent']. | b64d │ │ │ -002095c0: 6563 6f64 6529 2069 7320 6e6f 7420 7365 ecode) is not se │ │ │ -002095d0: 6172 6368 2827 7061 6765 5f70 6f69 736f arch('page_poiso │ │ │ -002095e0: 6e3d 3127 2929 0a20 2074 6167 733a 0a20 n=1')). tags:. │ │ │ -002095f0: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ -00209600: 4d2d 3628 6129 0a20 202d 2067 7275 6232 M-6(a). - grub2 │ │ │ -00209610: 5f70 6167 655f 706f 6973 6f6e 5f61 7267 _page_poison_arg │ │ │ -00209620: 756d 656e 740a 2020 2d20 6c6f 775f 6469 ument. - low_di │ │ │ -00209630: 7372 7570 7469 6f6e 0a20 202d 206d 6564 sruption. - med │ │ │ -00209640: 6975 6d5f 636f 6d70 6c65 7869 7479 0a20 ium_complexity. │ │ │ -00209650: 202d 206d 6564 6975 6d5f 7365 7665 7269 - medium_severi │ │ │ -00209660: 7479 0a20 202d 2072 6562 6f6f 745f 7265 ty. - reboot_re │ │ │ -00209670: 7175 6972 6564 0a20 202d 2072 6573 7472 quired. - restr │ │ │ -00209680: 6963 745f 7374 7261 7465 6779 0a3c 2f63 ict_strategy.
< │ │ │ +00208e40: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>
- n
│ │ │ +00208ed0: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ +00208ee0: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ +00208ef0: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ +00208f00: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ +00208f10: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +00208f20: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +00208f30: 0a20 202d 2067 7275 6232 5f70 6167 655f  .  - grub2_page_
│ │ │ +00208f40: 706f 6973 6f6e 5f61 7267 756d 656e 740a  poison_argument.
│ │ │ +00208f50: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +00208f60: 6f6e 0a20 202d 206d 6564 6975 6d5f 636f  on.  - medium_co
│ │ │ +00208f70: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +00208f80: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +00208f90: 2072 6562 6f6f 745f 7265 7175 6972 6564   reboot_required
│ │ │ +00208fa0: 0a20 202d 2072 6573 7472 6963 745f 7374  .  - restrict_st
│ │ │ +00208fb0: 7261 7465 6779 0a0a 2d20 6e61 6d65 3a20  rategy..- name: 
│ │ │ +00208fc0: 4368 6563 6b20 6966 2070 6167 655f 706f  Check if page_po
│ │ │ +00208fd0: 6973 6f6e 2061 7267 756d 656e 7420 6973  ison argument is
│ │ │ +00208fe0: 2061 6c72 6561 6479 2070 7265 7365 6e74   already present
│ │ │ +00208ff0: 2069 6e20 2f65 7463 2f64 6566 6175 6c74   in /etc/default
│ │ │ +00209000: 2f67 7275 620a 2020 616e 7369 626c 652e  /grub.  ansible.
│ │ │ +00209010: 6275 696c 7469 6e2e 736c 7572 703a 0a20  builtin.slurp:. 
│ │ │ +00209020: 2020 2073 7263 3a20 2f65 7463 2f64 6566     src: /etc/def
│ │ │ +00209030: 6175 6c74 2f67 7275 620a 2020 7265 6769  ault/grub.  regi
│ │ │ +00209040: 7374 6572 3a20 6574 635f 6465 6661 756c  ster: etc_defaul
│ │ │ +00209050: 745f 6772 7562 0a20 2077 6865 6e3a 0a20  t_grub.  when:. 
│ │ │ +00209060: 202d 2027 226b 6572 6e65 6c22 2069 6e20   - '"kernel" in 
│ │ │ +00209070: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +00209080: 636b 6167 6573 270a 2020 2d20 2722 6772  ckages'.  - '"gr
│ │ │ +00209090: 7562 322d 636f 6d6d 6f6e 2220 696e 2061  ub2-common" in a
│ │ │ +002090a0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +002090b0: 6b61 6765 7327 0a20 2074 6167 733a 0a20  kages'.  tags:. 
│ │ │ +002090c0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +002090d0: 4d2d 3628 6129 0a20 202d 2067 7275 6232  M-6(a).  - grub2
│ │ │ +002090e0: 5f70 6167 655f 706f 6973 6f6e 5f61 7267  _page_poison_arg
│ │ │ +002090f0: 756d 656e 740a 2020 2d20 6c6f 775f 6469  ument.  - low_di
│ │ │ +00209100: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ +00209110: 6975 6d5f 636f 6d70 6c65 7869 7479 0a20  ium_complexity. 
│ │ │ +00209120: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +00209130: 7479 0a20 202d 2072 6562 6f6f 745f 7265  ty.  - reboot_re
│ │ │ +00209140: 7175 6972 6564 0a20 202d 2072 6573 7472  quired.  - restr
│ │ │ +00209150: 6963 745f 7374 7261 7465 6779 0a0a 2d20  ict_strategy..- 
│ │ │ +00209160: 6e61 6d65 3a20 4368 6563 6b20 6966 2070  name: Check if p
│ │ │ +00209170: 6167 655f 706f 6973 6f6e 2061 7267 756d  age_poison argum
│ │ │ +00209180: 656e 7420 6973 2061 6c72 6561 6479 2070  ent is already p
│ │ │ +00209190: 7265 7365 6e74 0a20 2061 6e73 6962 6c65  resent.  ansible
│ │ │ +002091a0: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ +002091b0: 3a20 2f73 6269 6e2f 6772 7562 6279 202d  : /sbin/grubby -
│ │ │ +002091c0: 2d69 6e66 6f3d 414c 4c0a 2020 7265 6769  -info=ALL.  regi
│ │ │ +002091d0: 7374 6572 3a20 6772 7562 6279 5f69 6e66  ster: grubby_inf
│ │ │ +002091e0: 6f0a 2020 6368 6563 6b5f 6d6f 6465 3a20  o.  check_mode: 
│ │ │ +002091f0: 6661 6c73 650a 2020 6368 616e 6765 645f  false.  changed_
│ │ │ +00209200: 7768 656e 3a20 6661 6c73 650a 2020 6661  when: false.  fa
│ │ │ +00209210: 696c 6564 5f77 6865 6e3a 2066 616c 7365  iled_when: false
│ │ │ +00209220: 0a20 2077 6865 6e3a 0a20 202d 2027 226b  .  when:.  - '"k
│ │ │ +00209230: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +00209240: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +00209250: 270a 2020 2d20 2722 6772 7562 322d 636f  '.  - '"grub2-co
│ │ │ +00209260: 6d6d 6f6e 2220 696e 2061 6e73 6962 6c65  mmon" in ansible
│ │ │ +00209270: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ +00209280: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +00209290: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +002092a0: 0a20 202d 2067 7275 6232 5f70 6167 655f  .  - grub2_page_
│ │ │ +002092b0: 706f 6973 6f6e 5f61 7267 756d 656e 740a  poison_argument.
│ │ │ +002092c0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +002092d0: 6f6e 0a20 202d 206d 6564 6975 6d5f 636f  on.  - medium_co
│ │ │ +002092e0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +002092f0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +00209300: 2072 6562 6f6f 745f 7265 7175 6972 6564   reboot_required
│ │ │ +00209310: 0a20 202d 2072 6573 7472 6963 745f 7374  .  - restrict_st
│ │ │ +00209320: 7261 7465 6779 0a0a 2d20 6e61 6d65 3a20  rategy..- name: 
│ │ │ +00209330: 5570 6461 7465 2067 7275 6220 6465 6661  Update grub defa
│ │ │ +00209340: 756c 7473 2061 6e64 2074 6865 2062 6f6f  ults and the boo
│ │ │ +00209350: 746c 6f61 6465 7220 6d65 6e75 0a20 2061  tloader menu.  a
│ │ │ +00209360: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ +00209370: 6f6d 6d61 6e64 3a20 2f73 6269 6e2f 6772  ommand: /sbin/gr
│ │ │ +00209380: 7562 6279 202d 2d75 7064 6174 652d 6b65  ubby --update-ke
│ │ │ +00209390: 726e 656c 3d41 4c4c 202d 2d61 7267 733d  rnel=ALL --args=
│ │ │ +002093a0: 2270 6167 655f 706f 6973 6f6e 3d31 220a  "page_poison=1".
│ │ │ +002093b0: 2020 7768 656e 3a0a 2020 2d20 2722 6b65    when:.  - '"ke
│ │ │ +002093c0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +002093d0: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ +002093e0: 0a20 202d 2027 2267 7275 6232 2d63 6f6d  .  - '"grub2-com
│ │ │ +002093f0: 6d6f 6e22 2069 6e20 616e 7369 626c 655f  mon" in ansible_
│ │ │ +00209400: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ +00209410: 2020 2d20 2867 7275 6262 795f 696e 666f    - (grubby_info
│ │ │ +00209420: 2e73 7464 6f75 7420 6973 206e 6f74 2073  .stdout is not s
│ │ │ +00209430: 6561 7263 6828 2770 6167 655f 706f 6973  earch('page_pois
│ │ │ +00209440: 6f6e 3d31 2729 2920 6f72 2028 2865 7463  on=1')) or ((etc
│ │ │ +00209450: 5f64 6566 6175 6c74 5f67 7275 625b 2763  _default_grub['c
│ │ │ +00209460: 6f6e 7465 6e74 275d 0a20 2020 207c 2062  ontent'].    | b
│ │ │ +00209470: 3634 6465 636f 6465 2920 6973 206e 6f74  64decode) is not
│ │ │ +00209480: 2073 6561 7263 6828 2770 6167 655f 706f   search('page_po
│ │ │ +00209490: 6973 6f6e 3d31 2729 290a 2020 7461 6773  ison=1')).  tags
│ │ │ +002094a0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +002094b0: 332d 434d 2d36 2861 290a 2020 2d20 6772  3-CM-6(a).  - gr
│ │ │ +002094c0: 7562 325f 7061 6765 5f70 6f69 736f 6e5f  ub2_page_poison_
│ │ │ +002094d0: 6172 6775 6d65 6e74 0a20 202d 206c 6f77  argument.  - low
│ │ │ +002094e0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +002094f0: 6d65 6469 756d 5f63 6f6d 706c 6578 6974  medium_complexit
│ │ │ +00209500: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +00209510: 6572 6974 790a 2020 2d20 7265 626f 6f74  erity.  - reboot
│ │ │ +00209520: 5f72 6571 7569 7265 640a 2020 2d20 7265  _required.  - re
│ │ │ +00209530: 7374 7269 6374 5f73 7472 6174 6567 790a  strict_strategy.
│ │ │ +00209540: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +002095f0: 5265 6d65 6469 6174 696f 6e20 4f53 4275 Remediation OSBu │ │ │ +00209600: 696c 6420 426c 7565 7072 696e 7420 736e ild Blueprint sn │ │ │ +00209610: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
[cus
│ │ │ +00209660: 746f 6d69 7a61 7469 6f6e 732e 6b65 726e  tomizations.kern
│ │ │ +00209670: 656c 5d0a 6170 7065 6e64 203d 2022 7061  el].append = "pa
│ │ │ +00209680: 6765 5f70 6f69 736f 6e3d 3122 0a3c 2f63  ge_poison=1".
│ │ │ 002096a0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Remediation │ │ │ -0020a6e0: 4f53 4275 696c 6420 426c 7565 7072 696e OSBuild Blueprin │ │ │ -0020a6f0: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...

│ │ │ -0020a740: 5b63 7573 746f 6d69 7a61 7469 6f6e 732e  [customizations.
│ │ │ -0020a750: 6b65 726e 656c 5d0a 6170 7065 6e64 203d  kernel].append =
│ │ │ -0020a760: 2022 736c 7562 5f64 6562 7567 3d3c 6162   "slub_debug=
│ │ │ -0020a7d0: 465a 503c 2f61 6262 723e 220a 3c2f 636f  FZP".
< │ │ │ -0020a7f0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -0020a800: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -0020a810: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -0020a820: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -0020a830: 6436 3339 2220 7461 6269 6e64 6578 3d22 d639" tabindex=" │ │ │ -0020a840: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -0020a850: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -0020a860: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -0020a870: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -0020a880: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -0020a890: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ -0020a8a0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -0020a8b0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Compl │ │ │ +00208e20: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6d exity:m │ │ │ +00208e30: 6564 6975 6d3c 2f74 643e 3c2f 7472 3e3c edium
Disruptio │ │ │ +00208e50: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +00208e70: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +00208e80: 7472 7565 3c2f 7464 3e3c 2f74 723e 3c74 true
Strategy:< │ │ │ +00208ea0: 2f74 683e 3c74 643e 7265 7374 7269 6374 /th>restrict │ │ │ +00208eb0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Reboot:true │ │ │ -0020a9a0: 3c74 723e 3c74 683e 5374 7261 7465 6779
-
│ │ │ -0020a9e0: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ -0020a9f0: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ -0020aa00: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ -0020aa10: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ -0020aa20: 746f 0a20 2074 6167 733a 0a20 202d 204e  to.  tags:.  - N
│ │ │ -0020aa30: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -0020aa40: 6129 0a20 202d 2067 7275 6232 5f73 6c75  a).  - grub2_slu
│ │ │ -0020aa50: 625f 6465 6275 675f 6172 6775 6d65 6e74  b_debug_argument
│ │ │ -0020aa60: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -0020aa70: 696f 6e0a 2020 2d20 6d65 6469 756d 5f63  ion.  - medium_c
│ │ │ -0020aa80: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ -0020aa90: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -0020aaa0: 2d20 7265 626f 6f74 5f72 6571 7569 7265  - reboot_require
│ │ │ -0020aab0: 640a 2020 2d20 7265 7374 7269 6374 5f73  d.  - restrict_s
│ │ │ -0020aac0: 7472 6174 6567 790a 2d20 6e61 6d65 3a20  trategy.- name: 
│ │ │ -0020aad0: 5843 4344 4620 5661 6c75 6520 7661 725f  XCCDF Value var_
│ │ │ -0020aae0: 736c 7562 5f64 6562 7567 5f6f 7074 696f  slub_debug_optio
│ │ │ -0020aaf0: 6e73 2023 2070 726f 6d6f 7465 2074 6f20  ns # promote to 
│ │ │ -0020ab00: 7661 7269 6162 6c65 0a20 2073 6574 5f66  variable.  set_f
│ │ │ -0020ab10: 6163 743a 0a20 2020 2076 6172 5f73 6c75  act:.    var_slu
│ │ │ -0020ab20: 625f 6465 6275 675f 6f70 7469 6f6e 733a  b_debug_options:
│ │ │ -0020ab30: 2021 2173 7472 203c 6162 6272 2074 6974   !!str FZP.  tags:.   
│ │ │ -0020abb0: 202d 2061 6c77 6179 730a 0a2d 206e 616d   - always..- nam
│ │ │ -0020abc0: 653a 2043 6865 636b 2069 6620 736c 7562  e: Check if slub
│ │ │ -0020abd0: 5f64 6562 7567 2061 7267 756d 656e 7420  _debug argument 
│ │ │ -0020abe0: 6973 2061 6c72 6561 6479 2070 7265 7365  is already prese
│ │ │ -0020abf0: 6e74 2069 6e20 2f65 7463 2f64 6566 6175  nt in /etc/defau
│ │ │ -0020ac00: 6c74 2f67 7275 620a 2020 616e 7369 626c  lt/grub.  ansibl
│ │ │ -0020ac10: 652e 6275 696c 7469 6e2e 736c 7572 703a  e.builtin.slurp:
│ │ │ -0020ac20: 0a20 2020 2073 7263 3a20 2f65 7463 2f64  .    src: /etc/d
│ │ │ -0020ac30: 6566 6175 6c74 2f67 7275 620a 2020 7265  efault/grub.  re
│ │ │ -0020ac40: 6769 7374 6572 3a20 6574 635f 6465 6661  gister: etc_defa
│ │ │ -0020ac50: 756c 745f 6772 7562 0a20 2077 6865 6e3a  ult_grub.  when:
│ │ │ -0020ac60: 0a20 202d 2027 226b 6572 6e65 6c22 2069  .  - '"kernel" i
│ │ │ -0020ac70: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -0020ac80: 7061 636b 6167 6573 270a 2020 2d20 2722  packages'.  - '"
│ │ │ -0020ac90: 6772 7562 322d 636f 6d6d 6f6e 2220 696e  grub2-common" in
│ │ │ -0020aca0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -0020acb0: 6163 6b61 6765 7327 0a20 2074 6167 733a  ackages'.  tags:
│ │ │ -0020acc0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -0020acd0: 2d43 4d2d 3628 6129 0a20 202d 2067 7275  -CM-6(a).  - gru
│ │ │ -0020ace0: 6232 5f73 6c75 625f 6465 6275 675f 6172  b2_slub_debug_ar
│ │ │ -0020acf0: 6775 6d65 6e74 0a20 202d 206c 6f77 5f64  gument.  - low_d
│ │ │ -0020ad00: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -0020ad10: 6469 756d 5f63 6f6d 706c 6578 6974 790a  dium_complexity.
│ │ │ -0020ad20: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -0020ad30: 6974 790a 2020 2d20 7265 626f 6f74 5f72  ity.  - reboot_r
│ │ │ -0020ad40: 6571 7569 7265 640a 2020 2d20 7265 7374  equired.  - rest
│ │ │ -0020ad50: 7269 6374 5f73 7472 6174 6567 790a 0a2d  rict_strategy..-
│ │ │ -0020ad60: 206e 616d 653a 2043 6865 636b 2069 6620   name: Check if 
│ │ │ -0020ad70: 736c 7562 5f64 6562 7567 2061 7267 756d  slub_debug argum
│ │ │ -0020ad80: 656e 7420 6973 2061 6c72 6561 6479 2070  ent is already p
│ │ │ -0020ad90: 7265 7365 6e74 0a20 2061 6e73 6962 6c65  resent.  ansible
│ │ │ -0020ada0: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ -0020adb0: 3a20 2f73 6269 6e2f 6772 7562 6279 202d  : /sbin/grubby -
│ │ │ -0020adc0: 2d69 6e66 6f3d 414c 4c0a 2020 7265 6769  -info=ALL.  regi
│ │ │ -0020add0: 7374 6572 3a20 6772 7562 6279 5f69 6e66  ster: grubby_inf
│ │ │ -0020ade0: 6f0a 2020 6368 6563 6b5f 6d6f 6465 3a20  o.  check_mode: 
│ │ │ -0020adf0: 6661 6c73 650a 2020 6368 616e 6765 645f  false.  changed_
│ │ │ -0020ae00: 7768 656e 3a20 6661 6c73 650a 2020 6661  when: false.  fa
│ │ │ -0020ae10: 696c 6564 5f77 6865 6e3a 2066 616c 7365  iled_when: false
│ │ │ -0020ae20: 0a20 2077 6865 6e3a 0a20 202d 2027 226b  .  when:.  - '"k
│ │ │ -0020ae30: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -0020ae40: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -0020ae50: 270a 2020 2d20 2722 6772 7562 322d 636f  '.  - '"grub2-co
│ │ │ -0020ae60: 6d6d 6f6e 2220 696e 2061 6e73 6962 6c65  mmon" in ansible
│ │ │ -0020ae70: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ -0020ae80: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -0020ae90: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -0020aea0: 0a20 202d 2067 7275 6232 5f73 6c75 625f  .  - grub2_slub_
│ │ │ -0020aeb0: 6465 6275 675f 6172 6775 6d65 6e74 0a20  debug_argument. 
│ │ │ -0020aec0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -0020aed0: 6e0a 2020 2d20 6d65 6469 756d 5f63 6f6d  n.  - medium_com
│ │ │ -0020aee0: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -0020aef0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -0020af00: 7265 626f 6f74 5f72 6571 7569 7265 640a  reboot_required.
│ │ │ -0020af10: 2020 2d20 7265 7374 7269 6374 5f73 7472    - restrict_str
│ │ │ -0020af20: 6174 6567 790a 0a2d 206e 616d 653a 2055  ategy..- name: U
│ │ │ -0020af30: 7064 6174 6520 6772 7562 2064 6566 6175  pdate grub defau
│ │ │ -0020af40: 6c74 7320 616e 6420 7468 6520 626f 6f74  lts and the boot
│ │ │ -0020af50: 6c6f 6164 6572 206d 656e 750a 2020 616e  loader menu.  an
│ │ │ -0020af60: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ -0020af70: 6d6d 616e 643a 202f 7362 696e 2f67 7275  mmand: /sbin/gru
│ │ │ -0020af80: 6262 7920 2d2d 7570 6461 7465 2d6b 6572  bby --update-ker
│ │ │ -0020af90: 6e65 6c3d 414c 4c20 2d2d 6172 6773 3d22  nel=ALL --args="
│ │ │ -0020afa0: 736c 7562 5f64 6562 7567 3d7b 7b0a 2020  slub_debug={{.  
│ │ │ -0020afb0: 2020 7661 725f 736c 7562 5f64 6562 7567    var_slub_debug
│ │ │ -0020afc0: 5f6f 7074 696f 6e73 207d 7d22 0a20 2077  _options }}".  w
│ │ │ -0020afd0: 6865 6e3a 0a20 202d 2027 226b 6572 6e65  hen:.  - '"kerne
│ │ │ -0020afe0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -0020aff0: 6374 732e 7061 636b 6167 6573 270a 2020  cts.packages'.  
│ │ │ -0020b000: 2d20 2722 6772 7562 322d 636f 6d6d 6f6e  - '"grub2-common
│ │ │ -0020b010: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -0020b020: 7473 2e70 6163 6b61 6765 7327 0a20 202d  ts.packages'.  -
│ │ │ -0020b030: 2028 6772 7562 6279 5f69 6e66 6f2e 7374   (grubby_info.st
│ │ │ -0020b040: 646f 7574 2069 7320 6e6f 7420 7365 6172  dout is not sear
│ │ │ -0020b050: 6368 2827 736c 7562 5f64 6562 7567 3d27  ch('slub_debug='
│ │ │ -0020b060: 207e 2076 6172 5f73 6c75 625f 6465 6275   ~ var_slub_debu
│ │ │ -0020b070: 675f 6f70 7469 6f6e 7329 2920 6f72 0a20  g_options)) or. 
│ │ │ -0020b080: 2020 2028 2865 7463 5f64 6566 6175 6c74     ((etc_default
│ │ │ -0020b090: 5f67 7275 625b 2763 6f6e 7465 6e74 275d  _grub['content']
│ │ │ -0020b0a0: 207c 2062 3634 6465 636f 6465 2920 6973   | b64decode) is
│ │ │ -0020b0b0: 206e 6f74 2073 6561 7263 6828 2773 6c75   not search('slu
│ │ │ -0020b0c0: 625f 6465 6275 673d 2720 7e20 7661 725f  b_debug=' ~ var_
│ │ │ -0020b0d0: 736c 7562 5f64 6562 7567 5f6f 7074 696f  slub_debug_optio
│ │ │ -0020b0e0: 6e73 2929 0a20 2074 6167 733a 0a20 202d  ns)).  tags:.  -
│ │ │ -0020b0f0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -0020b100: 3628 6129 0a20 202d 2067 7275 6232 5f73  6(a).  - grub2_s
│ │ │ -0020b110: 6c75 625f 6465 6275 675f 6172 6775 6d65  lub_debug_argume
│ │ │ -0020b120: 6e74 0a20 202d 206c 6f77 5f64 6973 7275  nt.  - low_disru
│ │ │ -0020b130: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ -0020b140: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -0020b150: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -0020b160: 2020 2d20 7265 626f 6f74 5f72 6571 7569    - reboot_requi
│ │ │ -0020b170: 7265 640a 2020 2d20 7265 7374 7269 6374  red.  - restrict
│ │ │ -0020b180: 5f73 7472 6174 6567 790a 3c2f 636f 6465  _strategy.
restrict< │ │ │ +0020a810: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
Com │ │ │ -0020a930: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:medium
Disrupt │ │ │ -0020a960: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -0020a970: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strategy │ │ │ -0020a9b0: 3a3c 2f74 683e 3c74 643e 7265 7374 7269 :restri │ │ │ -0020a9c0: 6374 3c2f 7464 3e3c 2f74 723e 3c2f 7461 ct
Complexity: │ │ │ +0020a780: 3c2f 7468 3e3c 7464 3e6d 6564 6975 6d3c medium< │ │ │ +0020a790: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +0020a7d0: 3a3c 2f74 683e 3c74 643e 7472 7565 3c2f :true
│ │ │ +0020a7f0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
- name: G
│ │ │ +0020a830: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ +0020a840: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ +0020a850: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ +0020a860: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ +0020a870: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +0020a880: 3533 2d43 4d2d 3628 6129 0a20 202d 2067  53-CM-6(a).  - g
│ │ │ +0020a890: 7275 6232 5f73 6c75 625f 6465 6275 675f  rub2_slub_debug_
│ │ │ +0020a8a0: 6172 6775 6d65 6e74 0a20 202d 206c 6f77  argument.  - low
│ │ │ +0020a8b0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +0020a8c0: 6d65 6469 756d 5f63 6f6d 706c 6578 6974  medium_complexit
│ │ │ +0020a8d0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +0020a8e0: 6572 6974 790a 2020 2d20 7265 626f 6f74  erity.  - reboot
│ │ │ +0020a8f0: 5f72 6571 7569 7265 640a 2020 2d20 7265  _required.  - re
│ │ │ +0020a900: 7374 7269 6374 5f73 7472 6174 6567 790a  strict_strategy.
│ │ │ +0020a910: 2d20 6e61 6d65 3a20 5843 4344 4620 5661  - name: XCCDF Va
│ │ │ +0020a920: 6c75 6520 7661 725f 736c 7562 5f64 6562  lue var_slub_deb
│ │ │ +0020a930: 7567 5f6f 7074 696f 6e73 2023 2070 726f  ug_options # pro
│ │ │ +0020a940: 6d6f 7465 2074 6f20 7661 7269 6162 6c65  mote to variable
│ │ │ +0020a950: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ +0020a960: 2076 6172 5f73 6c75 625f 6465 6275 675f   var_slub_debug_
│ │ │ +0020a970: 6f70 7469 6f6e 733a 2021 2173 7472 203c  options: !!str <
│ │ │ +0020a980: 6162 6272 2074 6974 6c65 3d22 6672 6f6d  abbr title="from
│ │ │ +0020a990: 2050 726f 6669 6c65 2f72 6566 696e 652d   Profile/refine-
│ │ │ +0020a9a0: 7661 6c75 653a 2078 6363 6466 5f6f 7267  value: xccdf_org
│ │ │ +0020a9b0: 2e73 7367 7072 6f6a 6563 742e 636f 6e74  .ssgproject.cont
│ │ │ +0020a9c0: 656e 745f 7661 6c75 655f 7661 725f 736c  ent_value_var_sl
│ │ │ +0020a9d0: 7562 5f64 6562 7567 5f6f 7074 696f 6e73  ub_debug_options
│ │ │ +0020a9e0: 223e 465a 503c 2f61 6262 723e 0a20 2074  ">FZP.  t
│ │ │ +0020a9f0: 6167 733a 0a20 2020 202d 2061 6c77 6179  ags:.    - alway
│ │ │ +0020aa00: 730a 0a2d 206e 616d 653a 2043 6865 636b  s..- name: Check
│ │ │ +0020aa10: 2069 6620 736c 7562 5f64 6562 7567 2061   if slub_debug a
│ │ │ +0020aa20: 7267 756d 656e 7420 6973 2061 6c72 6561  rgument is alrea
│ │ │ +0020aa30: 6479 2070 7265 7365 6e74 2069 6e20 2f65  dy present in /e
│ │ │ +0020aa40: 7463 2f64 6566 6175 6c74 2f67 7275 620a  tc/default/grub.
│ │ │ +0020aa50: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +0020aa60: 6e2e 736c 7572 703a 0a20 2020 2073 7263  n.slurp:.    src
│ │ │ +0020aa70: 3a20 2f65 7463 2f64 6566 6175 6c74 2f67  : /etc/default/g
│ │ │ +0020aa80: 7275 620a 2020 7265 6769 7374 6572 3a20  rub.  register: 
│ │ │ +0020aa90: 6574 635f 6465 6661 756c 745f 6772 7562  etc_default_grub
│ │ │ +0020aaa0: 0a20 2077 6865 6e3a 0a20 202d 2027 226b  .  when:.  - '"k
│ │ │ +0020aab0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +0020aac0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +0020aad0: 270a 2020 2d20 2722 6772 7562 322d 636f  '.  - '"grub2-co
│ │ │ +0020aae0: 6d6d 6f6e 2220 696e 2061 6e73 6962 6c65  mmon" in ansible
│ │ │ +0020aaf0: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ +0020ab00: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +0020ab10: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +0020ab20: 0a20 202d 2067 7275 6232 5f73 6c75 625f  .  - grub2_slub_
│ │ │ +0020ab30: 6465 6275 675f 6172 6775 6d65 6e74 0a20  debug_argument. 
│ │ │ +0020ab40: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +0020ab50: 6e0a 2020 2d20 6d65 6469 756d 5f63 6f6d  n.  - medium_com
│ │ │ +0020ab60: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +0020ab70: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +0020ab80: 7265 626f 6f74 5f72 6571 7569 7265 640a  reboot_required.
│ │ │ +0020ab90: 2020 2d20 7265 7374 7269 6374 5f73 7472    - restrict_str
│ │ │ +0020aba0: 6174 6567 790a 0a2d 206e 616d 653a 2043  ategy..- name: C
│ │ │ +0020abb0: 6865 636b 2069 6620 736c 7562 5f64 6562  heck if slub_deb
│ │ │ +0020abc0: 7567 2061 7267 756d 656e 7420 6973 2061  ug argument is a
│ │ │ +0020abd0: 6c72 6561 6479 2070 7265 7365 6e74 0a20  lready present. 
│ │ │ +0020abe0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +0020abf0: 2e63 6f6d 6d61 6e64 3a20 2f73 6269 6e2f  .command: /sbin/
│ │ │ +0020ac00: 6772 7562 6279 202d 2d69 6e66 6f3d 414c  grubby --info=AL
│ │ │ +0020ac10: 4c0a 2020 7265 6769 7374 6572 3a20 6772  L.  register: gr
│ │ │ +0020ac20: 7562 6279 5f69 6e66 6f0a 2020 6368 6563  ubby_info.  chec
│ │ │ +0020ac30: 6b5f 6d6f 6465 3a20 6661 6c73 650a 2020  k_mode: false.  
│ │ │ +0020ac40: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ +0020ac50: 6c73 650a 2020 6661 696c 6564 5f77 6865  lse.  failed_whe
│ │ │ +0020ac60: 6e3a 2066 616c 7365 0a20 2077 6865 6e3a  n: false.  when:
│ │ │ +0020ac70: 0a20 202d 2027 226b 6572 6e65 6c22 2069  .  - '"kernel" i
│ │ │ +0020ac80: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +0020ac90: 7061 636b 6167 6573 270a 2020 2d20 2722  packages'.  - '"
│ │ │ +0020aca0: 6772 7562 322d 636f 6d6d 6f6e 2220 696e  grub2-common" in
│ │ │ +0020acb0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +0020acc0: 6163 6b61 6765 7327 0a20 2074 6167 733a  ackages'.  tags:
│ │ │ +0020acd0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +0020ace0: 2d43 4d2d 3628 6129 0a20 202d 2067 7275  -CM-6(a).  - gru
│ │ │ +0020acf0: 6232 5f73 6c75 625f 6465 6275 675f 6172  b2_slub_debug_ar
│ │ │ +0020ad00: 6775 6d65 6e74 0a20 202d 206c 6f77 5f64  gument.  - low_d
│ │ │ +0020ad10: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +0020ad20: 6469 756d 5f63 6f6d 706c 6578 6974 790a  dium_complexity.
│ │ │ +0020ad30: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +0020ad40: 6974 790a 2020 2d20 7265 626f 6f74 5f72  ity.  - reboot_r
│ │ │ +0020ad50: 6571 7569 7265 640a 2020 2d20 7265 7374  equired.  - rest
│ │ │ +0020ad60: 7269 6374 5f73 7472 6174 6567 790a 0a2d  rict_strategy..-
│ │ │ +0020ad70: 206e 616d 653a 2055 7064 6174 6520 6772   name: Update gr
│ │ │ +0020ad80: 7562 2064 6566 6175 6c74 7320 616e 6420  ub defaults and 
│ │ │ +0020ad90: 7468 6520 626f 6f74 6c6f 6164 6572 206d  the bootloader m
│ │ │ +0020ada0: 656e 750a 2020 616e 7369 626c 652e 6275  enu.  ansible.bu
│ │ │ +0020adb0: 696c 7469 6e2e 636f 6d6d 616e 643a 202f  iltin.command: /
│ │ │ +0020adc0: 7362 696e 2f67 7275 6262 7920 2d2d 7570  sbin/grubby --up
│ │ │ +0020add0: 6461 7465 2d6b 6572 6e65 6c3d 414c 4c20  date-kernel=ALL 
│ │ │ +0020ade0: 2d2d 6172 6773 3d22 736c 7562 5f64 6562  --args="slub_deb
│ │ │ +0020adf0: 7567 3d7b 7b0a 2020 2020 7661 725f 736c  ug={{.    var_sl
│ │ │ +0020ae00: 7562 5f64 6562 7567 5f6f 7074 696f 6e73  ub_debug_options
│ │ │ +0020ae10: 207d 7d22 0a20 2077 6865 6e3a 0a20 202d   }}".  when:.  -
│ │ │ +0020ae20: 2027 226b 6572 6e65 6c22 2069 6e20 616e   '"kernel" in an
│ │ │ +0020ae30: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +0020ae40: 6167 6573 270a 2020 2d20 2722 6772 7562  ages'.  - '"grub
│ │ │ +0020ae50: 322d 636f 6d6d 6f6e 2220 696e 2061 6e73  2-common" in ans
│ │ │ +0020ae60: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +0020ae70: 6765 7327 0a20 202d 2028 6772 7562 6279  ges'.  - (grubby
│ │ │ +0020ae80: 5f69 6e66 6f2e 7374 646f 7574 2069 7320  _info.stdout is 
│ │ │ +0020ae90: 6e6f 7420 7365 6172 6368 2827 736c 7562  not search('slub
│ │ │ +0020aea0: 5f64 6562 7567 3d27 207e 2076 6172 5f73  _debug=' ~ var_s
│ │ │ +0020aeb0: 6c75 625f 6465 6275 675f 6f70 7469 6f6e  lub_debug_option
│ │ │ +0020aec0: 7329 2920 6f72 0a20 2020 2028 2865 7463  s)) or.    ((etc
│ │ │ +0020aed0: 5f64 6566 6175 6c74 5f67 7275 625b 2763  _default_grub['c
│ │ │ +0020aee0: 6f6e 7465 6e74 275d 207c 2062 3634 6465  ontent'] | b64de
│ │ │ +0020aef0: 636f 6465 2920 6973 206e 6f74 2073 6561  code) is not sea
│ │ │ +0020af00: 7263 6828 2773 6c75 625f 6465 6275 673d  rch('slub_debug=
│ │ │ +0020af10: 2720 7e20 7661 725f 736c 7562 5f64 6562  ' ~ var_slub_deb
│ │ │ +0020af20: 7567 5f6f 7074 696f 6e73 2929 0a20 2074  ug_options)).  t
│ │ │ +0020af30: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +0020af40: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +0020af50: 2067 7275 6232 5f73 6c75 625f 6465 6275   grub2_slub_debu
│ │ │ +0020af60: 675f 6172 6775 6d65 6e74 0a20 202d 206c  g_argument.  - l
│ │ │ +0020af70: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +0020af80: 2d20 6d65 6469 756d 5f63 6f6d 706c 6578  - medium_complex
│ │ │ +0020af90: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ +0020afa0: 6576 6572 6974 790a 2020 2d20 7265 626f  everity.  - rebo
│ │ │ +0020afb0: 6f74 5f72 6571 7569 7265 640a 2020 2d20  ot_required.  - 
│ │ │ +0020afc0: 7265 7374 7269 6374 5f73 7472 6174 6567  restrict_strateg
│ │ │ +0020afd0: 790a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  y.
< │ │ │ +0020afe0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation OS │ │ │ +0020b090: 4275 696c 6420 426c 7565 7072 696e 7420 Build Blueprint │ │ │ +0020b0a0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +0020b0b0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
[c
│ │ │ +0020b0f0: 7573 746f 6d69 7a61 7469 6f6e 732e 6b65  ustomizations.ke
│ │ │ +0020b100: 726e 656c 5d0a 6170 7065 6e64 203d 2022  rnel].append = "
│ │ │ +0020b110: 736c 7562 5f64 6562 7567 3d3c 6162 6272  slub_debug=FZ
│ │ │ +0020b180: 503c 2f61 6262 723e 220a 3c2f 636f 6465  P".
│ │ │ -002344f0: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ -00234500: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ -00234510: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -002345e0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -002345f0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
..package --rem
│ │ │ -00234650: 6f76 653d 6468 6370 0a3c 2f63 6f64 653e  ove=dhcp.
│ │ │ -00234660: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -00234710: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ -00234720: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00234730: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00234740: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00234750: 7365 2220 6964 3d22 6964 3730 3422 3e3c se" id="id704">< │ │ │ -00234760: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -00234770: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -00234780: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -00234790: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -002347a0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Disruption:Strategy: │ │ │ -00234830: 3c74 643e 6469 7361 626c 653c 2f74 643e │ │ │ -00234840: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
low
Disru │ │ │ -002345c0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -002345d0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -00234610: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -00234620: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complex │ │ │ -002347b0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -002347c0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ -00234800: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -00234810: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
disable
.include │ │ │ -00234860: 2072 656d 6f76 655f 6468 6370 0a0a 636c remove_dhcp..cl │ │ │ -00234870: 6173 7320 7265 6d6f 7665 5f64 6863 7020 ass remove_dhcp │ │ │ -00234880: 7b0a 2020 7061 636b 6167 6520 7b20 2764 {. package { 'd │ │ │ -00234890: 6863 7027 3a0a 2020 2020 656e 7375 7265 hcp':. ensure │ │ │ -002348a0: 203d 2667 743b 2027 7075 7267 6564 272c => 'purged', │ │ │ -002348b0: 0a20 207d 0a7d 0a3c 2f63 6f64 653e 3c2f . }.}.
Remediati │ │ │ -00234970: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070 on Ansible snipp │ │ │ -00234980: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -00234a00: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -00234a10: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -00234a20: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -00234a60: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -00234a70: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -00234a90: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -00234aa0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
- name: '
│ │ │ -00234ac0: 556e 696e 7374 616c 6c20 4448 4350 2053  Uninstall DHCP S
│ │ │ -00234ad0: 6572 7665 7220 5061 636b 6167 653a 2045  erver Package: E
│ │ │ -00234ae0: 6e73 7572 6520 6468 6370 2069 7320 7265  nsure dhcp is re
│ │ │ -00234af0: 6d6f 7665 6427 0a20 2061 6e73 6962 6c65  moved'.  ansible
│ │ │ -00234b00: 2e62 7569 6c74 696e 2e70 6163 6b61 6765  .builtin.package
│ │ │ -00234b10: 3a0a 2020 2020 6e61 6d65 3a20 6468 6370  :.    name: dhcp
│ │ │ -00234b20: 0a20 2020 2073 7461 7465 3a20 6162 7365  .    state: abse
│ │ │ -00234b30: 6e74 0a20 2074 6167 733a 0a20 202d 204e  nt.  tags:.  - N
│ │ │ -00234b40: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -00234b50: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -00234b60: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ -00234b70: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -00234b80: 6229 0a20 202d 2050 4349 2d44 5353 7634  b).  - PCI-DSSv4
│ │ │ -00234b90: 2d32 2e32 0a20 202d 2050 4349 2d44 5353  -2.2.  - PCI-DSS
│ │ │ -00234ba0: 7634 2d32 2e32 2e34 0a20 202d 2064 6973  v4-2.2.4.  - dis
│ │ │ -00234bb0: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ -00234bc0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -00234bd0: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -00234be0: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ -00234bf0: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ -00234c00: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ -00234c10: 2070 6163 6b61 6765 5f64 6863 705f 7265   package_dhcp_re
│ │ │ -00234c20: 6d6f 7665 640a 3c2f 636f 6465 3e3c 2f70  moved.

Remediatio │ │ │ -00234ce0: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ -00234cf0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -00234d70: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -00234d90: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -00234de0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -00234e10: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -00234d80: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -00234da0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -00234df0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -00234e00: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.# CAUTION: T
│ │ │ -00234e30: 6869 7320 7265 6d65 6469 6174 696f 6e20  his remediation 
│ │ │ -00234e40: 7363 7269 7074 2077 696c 6c20 7265 6d6f  script will remo
│ │ │ -00234e50: 7665 2064 6863 700a 2320 6672 6f6d 2074  ve dhcp.# from t
│ │ │ -00234e60: 6865 2073 7973 7465 6d2c 2061 6e64 206d  he system, and m
│ │ │ -00234e70: 6179 2072 656d 6f76 6520 616e 7920 7061  ay remove any pa
│ │ │ -00234e80: 636b 6167 6573 0a23 2074 6861 7420 6465  ckages.# that de
│ │ │ -00234e90: 7065 6e64 206f 6e20 6468 6370 2e20 4578  pend on dhcp. Ex
│ │ │ -00234ea0: 6563 7574 6520 7468 6973 0a23 2072 656d  ecute this.# rem
│ │ │ -00234eb0: 6564 6961 7469 6f6e 2041 4654 4552 2074  ediation AFTER t
│ │ │ -00234ec0: 6573 7469 6e67 206f 6e20 6120 6e6f 6e2d  esting on a non-
│ │ │ -00234ed0: 7072 6f64 7563 7469 6f6e 0a23 2073 7973  production.# sys
│ │ │ -00234ee0: 7465 6d21 0a0a 0a69 6620 7270 6d20 2d71  tem!...if rpm -q
│ │ │ -00234ef0: 202d 2d71 7569 6574 2022 6468 6370 2220   --quiet "dhcp" 
│ │ │ -00234f00: 3b20 7468 656e 0a64 6e66 2072 656d 6f76  ; then.dnf remov
│ │ │ -00234f10: 6520 2d79 202d 2d6e 6f61 7574 6f72 656d  e -y --noautorem
│ │ │ -00234f20: 6f76 6520 2264 6863 7022 0a66 690a 3c2f  ove "dhcp".fi.
< │ │ │ +002345e0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +002345f0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ +00234640: 2d20 6e61 6d65 3a20 2755 6e69 6e73 7461  - name: 'Uninsta
│ │ │ +00234650: 6c6c 2044 4843 5020 5365 7276 6572 2050  ll DHCP Server P
│ │ │ +00234660: 6163 6b61 6765 3a20 456e 7375 7265 2064  ackage: Ensure d
│ │ │ +00234670: 6863 7020 6973 2072 656d 6f76 6564 270a  hcp is removed'.
│ │ │ +00234680: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +00234690: 6e2e 7061 636b 6167 653a 0a20 2020 206e  n.package:.    n
│ │ │ +002346a0: 616d 653a 2064 6863 700a 2020 2020 7374  ame: dhcp.    st
│ │ │ +002346b0: 6174 653a 2061 6273 656e 740a 2020 7461  ate: absent.  ta
│ │ │ +002346c0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +002346d0: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +002346e0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +002346f0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +00234700: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ +00234710: 5043 492d 4453 5376 342d 322e 320a 2020  PCI-DSSv4-2.2.  
│ │ │ +00234720: 2d20 5043 492d 4453 5376 342d 322e 322e  - PCI-DSSv4-2.2.
│ │ │ +00234730: 340a 2020 2d20 6469 7361 626c 655f 7374  4.  - disable_st
│ │ │ +00234740: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ +00234750: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ +00234760: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +00234770: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +00234780: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +00234790: 6565 6465 640a 2020 2d20 7061 636b 6167  eeded.  - packag
│ │ │ +002347a0: 655f 6468 6370 5f72 656d 6f76 6564 0a3c  e_dhcp_removed.<
│ │ │ +002347b0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +00234860: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ +00234870: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
Complexity:low
Disrup │ │ │ +002345c0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +002345d0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +00234610: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ +00234620: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ +00234910: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00234920: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +00234970: 3c74 723e 3c74 683e 5374 7261 7465 6779
.i
│ │ │ +002349b0: 6e63 6c75 6465 2072 656d 6f76 655f 6468  nclude remove_dh
│ │ │ +002349c0: 6370 0a0a 636c 6173 7320 7265 6d6f 7665  cp..class remove
│ │ │ +002349d0: 5f64 6863 7020 7b0a 2020 7061 636b 6167  _dhcp {.  packag
│ │ │ +002349e0: 6520 7b20 2764 6863 7027 3a0a 2020 2020  e { 'dhcp':.    
│ │ │ +002349f0: 656e 7375 7265 203d 2667 743b 2027 7075  ensure => 'pu
│ │ │ +00234a00: 7267 6564 272c 0a20 207d 0a7d 0a3c 2f63  rged',.  }.}.
│ │ │ +00234a20: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +00234ac0: 6564 6961 7469 6f6e 2053 6865 6c6c 2073 ediation Shell s │ │ │ +00234ad0: 6372 6970 7420 e287 b23c 2f61 3e3c 6272 cript ...
C │ │ │ +00234900: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +00234930: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +00234940: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +00234980: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ +00234990: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ +00234b80: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +00234ba0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +00234bd0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +00234b60: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +00234b70: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +00234b90: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +00234bb0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +00234bc0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ +00234c00: 7072 653e 3c63 6f64 653e 0a23 2043 4155 pre>.# CAU │ │ │ +00234c10: 5449 4f4e 3a20 5468 6973 2072 656d 6564 TION: This remed │ │ │ +00234c20: 6961 7469 6f6e 2073 6372 6970 7420 7769 iation script wi │ │ │ +00234c30: 6c6c 2072 656d 6f76 6520 6468 6370 0a23 ll remove dhcp.# │ │ │ +00234c40: 2066 726f 6d20 7468 6520 7379 7374 656d from the system │ │ │ +00234c50: 2c20 616e 6420 6d61 7920 7265 6d6f 7665 , and may remove │ │ │ +00234c60: 2061 6e79 2070 6163 6b61 6765 730a 2320 any packages.# │ │ │ +00234c70: 7468 6174 2064 6570 656e 6420 6f6e 2064 that depend on d │ │ │ +00234c80: 6863 702e 2045 7865 6375 7465 2074 6869 hcp. Execute thi │ │ │ +00234c90: 730a 2320 7265 6d65 6469 6174 696f 6e20 s.# remediation │ │ │ +00234ca0: 4146 5445 5220 7465 7374 696e 6720 6f6e AFTER testing on │ │ │ +00234cb0: 2061 206e 6f6e 2d70 726f 6475 6374 696f a non-productio │ │ │ +00234cc0: 6e0a 2320 7379 7374 656d 210a 0a0a 6966 n.# system!...if │ │ │ +00234cd0: 2072 706d 202d 7120 2d2d 7175 6965 7420 rpm -q --quiet │ │ │ +00234ce0: 2264 6863 7022 203b 2074 6865 6e0a 646e "dhcp" ; then.dn │ │ │ +00234cf0: 6620 7265 6d6f 7665 202d 7920 2d2d 6e6f f remove -y --no │ │ │ +00234d00: 6175 746f 7265 6d6f 7665 2022 6468 6370 autoremove "dhcp │ │ │ +00234d10: 220a 6669 0a3c 2f63 6f64 653e 3c2f 7072 ".fi.
Remediation │ │ │ +00234dd0: 2041 6e61 636f 6e64 6120 736e 6970 7065 Anaconda snippe │ │ │ +00234de0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +00234e60: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +00234e70: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +00234e90: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +00234ea0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +00234ec0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +00234ee0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ +00234f10: 3c63 6f64 653e 0a0a 7061 636b 6167 6520  ..package 
│ │ │ +00234f20: 2d2d 7265 6d6f 7665 3d64 6863 700a 3c2f  --remove=dhcp.
Remed │ │ │ -002390a0: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ -002390b0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -002390c0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -00239140: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -00239170: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -00239190: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -002391a0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -002391c0: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -002391d0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
..pa
│ │ │ -002391f0: 636b 6167 6520 2d2d 7265 6d6f 7665 3d73  ckage --remove=s
│ │ │ -00239200: 656e 646d 6169 6c0a 3c2f 636f 6465 3e3c  endmail.<
│ │ │ -00239210: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ -002392c0: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ -002392d0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -00239350: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -00239360: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -00239370: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -002393b0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -002393c0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -002393e0: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -002393f0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.include 
│ │ │ -00239410: 7265 6d6f 7665 5f73 656e 646d 6169 6c0a  remove_sendmail.
│ │ │ -00239420: 0a63 6c61 7373 2072 656d 6f76 655f 7365  .class remove_se
│ │ │ -00239430: 6e64 6d61 696c 207b 0a20 2070 6163 6b61  ndmail {.  packa
│ │ │ -00239440: 6765 207b 2027 7365 6e64 6d61 696c 273a  ge { 'sendmail':
│ │ │ -00239450: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ -00239460: 3b20 2770 7572 6765 6427 2c0a 2020 7d0a  ; 'purged',.  }.
│ │ │ -00239470: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -00239480: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -00239530: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -00239540: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -002395c0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -002395e0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -00239630: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -00239660: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ -00239680: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ -00239690: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ -002396a0: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ -002396b0: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ -002396c0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -002396d0: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -002396e0: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ -002396f0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -00239700: 2d37 2862 290a 2020 2d20 6469 7361 626c  -7(b).  - disabl
│ │ │ -00239710: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ -00239720: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -00239730: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -00239740: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -00239750: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -00239760: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ -00239770: 636b 6167 655f 7365 6e64 6d61 696c 5f72  ckage_sendmail_r
│ │ │ -00239780: 656d 6f76 6564 0a0a 2d20 6e61 6d65 3a20  emoved..- name: 
│ │ │ -00239790: 2755 6e69 6e73 7461 6c6c 2053 656e 646d  'Uninstall Sendm
│ │ │ -002397a0: 6169 6c20 5061 636b 6167 653a 2045 6e73  ail Package: Ens
│ │ │ -002397b0: 7572 6520 7365 6e64 6d61 696c 2069 7320  ure sendmail is 
│ │ │ -002397c0: 7265 6d6f 7665 6427 0a20 2061 6e73 6962  removed'.  ansib
│ │ │ -002397d0: 6c65 2e62 7569 6c74 696e 2e70 6163 6b61  le.builtin.packa
│ │ │ -002397e0: 6765 3a0a 2020 2020 6e61 6d65 3a20 7365  ge:.    name: se
│ │ │ -002397f0: 6e64 6d61 696c 0a20 2020 2073 7461 7465  ndmail.    state
│ │ │ -00239800: 3a20 6162 7365 6e74 0a20 2077 6865 6e3a  : absent.  when:
│ │ │ -00239810: 2027 226b 6572 6e65 6c22 2069 6e20 616e   '"kernel" in an
│ │ │ -00239820: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -00239830: 6167 6573 270a 2020 7461 6773 3a0a 2020  ages'.  tags:.  
│ │ │ -00239840: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -00239850: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -00239860: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ -00239870: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -00239880: 2d37 2862 290a 2020 2d20 6469 7361 626c  -7(b).  - disabl
│ │ │ -00239890: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ -002398a0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -002398b0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -002398c0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -002398d0: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -002398e0: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ -002398f0: 636b 6167 655f 7365 6e64 6d61 696c 5f72  ckage_sendmail_r
│ │ │ -00239900: 656d 6f76 6564 0a3c 2f63 6f64 653e 3c2f  emoved.Remediati
│ │ │ -002399c0: 6f6e 2053 6865 6c6c 2073 6372 6970 7420  on Shell script 
│ │ │ -002399d0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620  ...
low< │ │ │ -00239aa0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
low
Disr │ │ │ -002395f0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00239600: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -00239640: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -00239650: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Complexity: │ │ │ -00239a60: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ -00239a80: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:false
St │ │ │ -00239ad0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -00239ae0: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
# Remediatio
│ │ │ -00239b10: 6e20 6973 2061 7070 6c69 6361 626c 6520  n is applicable 
│ │ │ -00239b20: 6f6e 6c79 2069 6e20 6365 7274 6169 6e20  only in certain 
│ │ │ -00239b30: 706c 6174 666f 726d 730a 6966 2072 706d  platforms.if rpm
│ │ │ -00239b40: 202d 2d71 7569 6574 202d 7120 6b65 726e   --quiet -q kern
│ │ │ -00239b50: 656c 3b20 7468 656e 0a0a 2320 4341 5554  el; then..# CAUT
│ │ │ -00239b60: 494f 4e3a 2054 6869 7320 7265 6d65 6469  ION: This remedi
│ │ │ -00239b70: 6174 696f 6e20 7363 7269 7074 2077 696c  ation script wil
│ │ │ -00239b80: 6c20 7265 6d6f 7665 2073 656e 646d 6169  l remove sendmai
│ │ │ -00239b90: 6c0a 2320 6672 6f6d 2074 6865 2073 7973  l.# from the sys
│ │ │ -00239ba0: 7465 6d2c 2061 6e64 206d 6179 2072 656d  tem, and may rem
│ │ │ -00239bb0: 6f76 6520 616e 7920 7061 636b 6167 6573  ove any packages
│ │ │ -00239bc0: 0a23 2074 6861 7420 6465 7065 6e64 206f  .# that depend o
│ │ │ -00239bd0: 6e20 7365 6e64 6d61 696c 2e20 4578 6563  n sendmail. Exec
│ │ │ -00239be0: 7574 6520 7468 6973 0a23 2072 656d 6564  ute this.# remed
│ │ │ -00239bf0: 6961 7469 6f6e 2041 4654 4552 2074 6573  iation AFTER tes
│ │ │ -00239c00: 7469 6e67 206f 6e20 6120 6e6f 6e2d 7072  ting on a non-pr
│ │ │ -00239c10: 6f64 7563 7469 6f6e 0a23 2073 7973 7465  oduction.# syste
│ │ │ -00239c20: 6d21 0a0a 0a69 6620 7270 6d20 2d71 202d  m!...if rpm -q -
│ │ │ -00239c30: 2d71 7569 6574 2022 7365 6e64 6d61 696c  -quiet "sendmail
│ │ │ -00239c40: 2220 3b20 7468 656e 0a64 6e66 2072 656d  " ; then.dnf rem
│ │ │ -00239c50: 6f76 6520 2d79 202d 2d6e 6f61 7574 6f72  ove -y --noautor
│ │ │ -00239c60: 656d 6f76 6520 2273 656e 646d 6169 6c22  emove "sendmail"
│ │ │ -00239c70: 0a66 690a 0a65 6c73 650a 2020 2020 2667  .fi..else.    &g
│ │ │ -00239c80: 743b 2661 6d70 3b32 2065 6368 6f20 2752  t;&2 echo 'R
│ │ │ -00239c90: 656d 6564 6961 7469 6f6e 2069 7320 6e6f  emediation is no
│ │ │ -00239ca0: 7420 6170 706c 6963 6162 6c65 2c20 6e6f  t applicable, no
│ │ │ -00239cb0: 7468 696e 6720 7761 7320 646f 6e65 270a  thing was done'.
│ │ │ -00239cc0: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e  fi.
│ │ │ +002390a0: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ +002390b0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +00239140: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +00239150: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +00239170: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +00239190: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +002391a0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +002391e0: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ +002391f0: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ +00239200: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ +00239210: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ +00239220: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ +00239230: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +00239240: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +00239250: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +00239260: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +00239270: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +00239280: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ +00239290: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +002392a0: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +002392b0: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +002392c0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +002392d0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +002392e0: 6564 0a20 202d 2070 6163 6b61 6765 5f73  ed.  - package_s
│ │ │ +002392f0: 656e 646d 6169 6c5f 7265 6d6f 7665 640a  endmail_removed.
│ │ │ +00239300: 0a2d 206e 616d 653a 2027 556e 696e 7374  .- name: 'Uninst
│ │ │ +00239310: 616c 6c20 5365 6e64 6d61 696c 2050 6163  all Sendmail Pac
│ │ │ +00239320: 6b61 6765 3a20 456e 7375 7265 2073 656e  kage: Ensure sen
│ │ │ +00239330: 646d 6169 6c20 6973 2072 656d 6f76 6564  dmail is removed
│ │ │ +00239340: 270a 2020 616e 7369 626c 652e 6275 696c  '.  ansible.buil
│ │ │ +00239350: 7469 6e2e 7061 636b 6167 653a 0a20 2020  tin.package:.   
│ │ │ +00239360: 206e 616d 653a 2073 656e 646d 6169 6c0a   name: sendmail.
│ │ │ +00239370: 2020 2020 7374 6174 653a 2061 6273 656e      state: absen
│ │ │ +00239380: 740a 2020 7768 656e 3a20 2722 6b65 726e  t.  when: '"kern
│ │ │ +00239390: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +002393a0: 6163 7473 2e70 6163 6b61 6765 7327 0a20  acts.packages'. 
│ │ │ +002393b0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +002393c0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +002393d0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +002393e0: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +002393f0: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +00239400: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ +00239410: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +00239420: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +00239430: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +00239440: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +00239450: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +00239460: 6564 0a20 202d 2070 6163 6b61 6765 5f73  ed.  - package_s
│ │ │ +00239470: 656e 646d 6169 6c5f 7265 6d6f 7665 640a  endmail_removed.
│ │ │ +00239480: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +00239530: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +00239540: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
│ │ │ +002395e0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ +00239680: 696e 636c 7564 6520 7265 6d6f 7665 5f73  include remove_s
│ │ │ +00239690: 656e 646d 6169 6c0a 0a63 6c61 7373 2072  endmail..class r
│ │ │ +002396a0: 656d 6f76 655f 7365 6e64 6d61 696c 207b  emove_sendmail {
│ │ │ +002396b0: 0a20 2070 6163 6b61 6765 207b 2027 7365  .  package { 'se
│ │ │ +002396c0: 6e64 6d61 696c 273a 0a20 2020 2065 6e73  ndmail':.    ens
│ │ │ +002396d0: 7572 6520 3d26 6774 3b20 2770 7572 6765  ure => 'purge
│ │ │ +002396e0: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  d',.  }.}.
Remedi │ │ │ +002397a0: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ +002397b0: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
│ │ │ +00239830: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 < │ │ │ +002398c0: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +002398d0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
│ │ │ +002395d0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00239600: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00239610: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00239650: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +00239660: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexi │ │ │ +00239840: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +00239850: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +00239890: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +002398a0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
# Remedia
│ │ │ +002398f0: 7469 6f6e 2069 7320 6170 706c 6963 6162  tion is applicab
│ │ │ +00239900: 6c65 206f 6e6c 7920 696e 2063 6572 7461  le only in certa
│ │ │ +00239910: 696e 2070 6c61 7466 6f72 6d73 0a69 6620  in platforms.if 
│ │ │ +00239920: 7270 6d20 2d2d 7175 6965 7420 2d71 206b  rpm --quiet -q k
│ │ │ +00239930: 6572 6e65 6c3b 2074 6865 6e0a 0a23 2043  ernel; then..# C
│ │ │ +00239940: 4155 5449 4f4e 3a20 5468 6973 2072 656d  AUTION: This rem
│ │ │ +00239950: 6564 6961 7469 6f6e 2073 6372 6970 7420  ediation script 
│ │ │ +00239960: 7769 6c6c 2072 656d 6f76 6520 7365 6e64  will remove send
│ │ │ +00239970: 6d61 696c 0a23 2066 726f 6d20 7468 6520  mail.# from the 
│ │ │ +00239980: 7379 7374 656d 2c20 616e 6420 6d61 7920  system, and may 
│ │ │ +00239990: 7265 6d6f 7665 2061 6e79 2070 6163 6b61  remove any packa
│ │ │ +002399a0: 6765 730a 2320 7468 6174 2064 6570 656e  ges.# that depen
│ │ │ +002399b0: 6420 6f6e 2073 656e 646d 6169 6c2e 2045  d on sendmail. E
│ │ │ +002399c0: 7865 6375 7465 2074 6869 730a 2320 7265  xecute this.# re
│ │ │ +002399d0: 6d65 6469 6174 696f 6e20 4146 5445 5220  mediation AFTER 
│ │ │ +002399e0: 7465 7374 696e 6720 6f6e 2061 206e 6f6e  testing on a non
│ │ │ +002399f0: 2d70 726f 6475 6374 696f 6e0a 2320 7379  -production.# sy
│ │ │ +00239a00: 7374 656d 210a 0a0a 6966 2072 706d 202d  stem!...if rpm -
│ │ │ +00239a10: 7120 2d2d 7175 6965 7420 2273 656e 646d  q --quiet "sendm
│ │ │ +00239a20: 6169 6c22 203b 2074 6865 6e0a 646e 6620  ail" ; then.dnf 
│ │ │ +00239a30: 7265 6d6f 7665 202d 7920 2d2d 6e6f 6175  remove -y --noau
│ │ │ +00239a40: 746f 7265 6d6f 7665 2022 7365 6e64 6d61  toremove "sendma
│ │ │ +00239a50: 696c 220a 6669 0a0a 656c 7365 0a20 2020  il".fi..else.   
│ │ │ +00239a60: 2026 6774 3b26 616d 703b 3220 6563 686f   >&2 echo
│ │ │ +00239a70: 2027 5265 6d65 6469 6174 696f 6e20 6973   'Remediation is
│ │ │ +00239a80: 206e 6f74 2061 7070 6c69 6361 626c 652c   not applicable,
│ │ │ +00239a90: 206e 6f74 6869 6e67 2077 6173 2064 6f6e   nothing was don
│ │ │ +00239aa0: 6527 0a66 690a 3c2f 636f 6465 3e3c 2f70  e'.fi.

Remediatio │ │ │ +00239b60: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ +00239b70: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +00239bf0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +00239c00: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +00239c10: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +00239c50: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +00239c60: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +00239c80: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +00239c90: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
..package
│ │ │ +00239cb0: 202d 2d72 656d 6f76 653d 7365 6e64 6d61   --remove=sendma
│ │ │ +00239cc0: 696c 0a3c 2f63 6f64 653e 3c2f 7072 653e  il.
│ │ │ 00239cd0: 3c2f 6469 763e 3c2f 6469 763e 3c2f 7464
│ │ │ 00239d00: 3c74 7220 6461 7461 2d74 742d 6964 3d22 Remediation OSB │ │ │ -0023b970: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ -0023b980: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
.[[
│ │ │ -0023b9d0: 7061 636b 6167 6573 5d5d 0a6e 616d 6520  packages]].name 
│ │ │ -0023b9e0: 3d20 2263 6872 6f6e 7922 0a76 6572 7369  = "chrony".versi
│ │ │ -0023b9f0: 6f6e 203d 2022 2a22 0a3c 2f63 6f64 653e  on = "*".
│ │ │ -0023ba00: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -0023bab0: 7469 6f6e 2041 6e61 636f 6e64 6120 736e tion Anaconda sn │ │ │ -0023bac0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -0023bb70: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -0023bb90: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -0023bbc0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -0023bb50: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -0023bb60: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -0023bb80: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -0023bba0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -0023bbb0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

.packag │ │ │ -0023bc00: 6520 2d2d 6164 643d 6368 726f 6e79 0a3c e --add=chrony.< │ │ │ -0023bc10: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469 /code>R │ │ │ -0023bcc0: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ -0023bcd0: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...

< │ │ │ -0023bd70: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0023bd80: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -0023bdd0: 3c74 723e 3c74 683e 5374 7261 7465 6779
inc
│ │ │ -0023be10: 6c75 6465 2069 6e73 7461 6c6c 5f63 6872  lude install_chr
│ │ │ -0023be20: 6f6e 790a 0a63 6c61 7373 2069 6e73 7461  ony..class insta
│ │ │ -0023be30: 6c6c 5f63 6872 6f6e 7920 7b0a 2020 7061  ll_chrony {.  pa
│ │ │ -0023be40: 636b 6167 6520 7b20 2763 6872 6f6e 7927  ckage { 'chrony'
│ │ │ -0023be50: 3a0a 2020 2020 656e 7375 7265 203d 2667  :.    ensure =&g
│ │ │ -0023be60: 743b 2027 696e 7374 616c 6c65 6427 2c0a  t; 'installed',.
│ │ │ -0023be70: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediatio │ │ │ -0023bf30: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ -0023bf40: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -0023bfc0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ -0023c000: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 enable
C │ │ │ -0023bd60: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -0023bd90: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -0023bda0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -0023bde0: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -0023bdf0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexit │ │ │ -0023bfd0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ -0023bff0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ -0023c020: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ -0023c040: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
<
│ │ │ -0023c070: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ -0023c080: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ -0023c090: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ -0023c0a0: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ -0023c0b0: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ -0023c0c0: 0a20 202d 2050 4349 2d44 5353 2d52 6571  .  - PCI-DSS-Req
│ │ │ -0023c0d0: 2d31 302e 340a 2020 2d20 5043 492d 4453  -10.4.  - PCI-DS
│ │ │ -0023c0e0: 5376 342d 3130 2e36 0a20 202d 2050 4349  Sv4-10.6.  - PCI
│ │ │ -0023c0f0: 2d44 5353 7634 2d31 302e 362e 310a 2020  -DSSv4-10.6.1.  
│ │ │ -0023c100: 2d20 656e 6162 6c65 5f73 7472 6174 6567  - enable_strateg
│ │ │ -0023c110: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -0023c120: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -0023c130: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ -0023c140: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -0023c150: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -0023c160: 0a20 202d 2070 6163 6b61 6765 5f63 6872  .  - package_chr
│ │ │ -0023c170: 6f6e 795f 696e 7374 616c 6c65 640a 0a2d  ony_installed..-
│ │ │ -0023c180: 206e 616d 653a 2045 6e73 7572 6520 6368   name: Ensure ch
│ │ │ -0023c190: 726f 6e79 2069 7320 696e 7374 616c 6c65  rony is installe
│ │ │ -0023c1a0: 640a 2020 616e 7369 626c 652e 6275 696c  d.  ansible.buil
│ │ │ -0023c1b0: 7469 6e2e 7061 636b 6167 653a 0a20 2020  tin.package:.   
│ │ │ -0023c1c0: 206e 616d 653a 2063 6872 6f6e 790a 2020   name: chrony.  
│ │ │ -0023c1d0: 2020 7374 6174 653a 2070 7265 7365 6e74    state: present
│ │ │ -0023c1e0: 0a20 2077 6865 6e3a 2027 226b 6572 6e65  .  when: '"kerne
│ │ │ -0023c1f0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -0023c200: 6374 732e 7061 636b 6167 6573 270a 2020  cts.packages'.  
│ │ │ -0023c210: 7461 6773 3a0a 2020 2d20 5043 492d 4453  tags:.  - PCI-DS
│ │ │ -0023c220: 532d 5265 712d 3130 2e34 0a20 202d 2050  S-Req-10.4.  - P
│ │ │ -0023c230: 4349 2d44 5353 7634 2d31 302e 360a 2020  CI-DSSv4-10.6.  
│ │ │ -0023c240: 2d20 5043 492d 4453 5376 342d 3130 2e36  - PCI-DSSv4-10.6
│ │ │ -0023c250: 2e31 0a20 202d 2065 6e61 626c 655f 7374  .1.  - enable_st
│ │ │ -0023c260: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ -0023c270: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -0023c280: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -0023c290: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -0023c2a0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -0023c2b0: 6565 6465 640a 2020 2d20 7061 636b 6167  eeded.  - packag
│ │ │ -0023c2c0: 655f 6368 726f 6e79 5f69 6e73 7461 6c6c  e_chrony_install
│ │ │ -0023c2d0: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e  ed.
│ │ │ -0023c2e0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation S │ │ │ -0023c390: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ -0023c3a0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -0023c470: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0023c480: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
#
│ │ │ -0023c4d0: 2052 656d 6564 6961 7469 6f6e 2069 7320   Remediation is 
│ │ │ -0023c4e0: 6170 706c 6963 6162 6c65 206f 6e6c 7920  applicable only 
│ │ │ -0023c4f0: 696e 2063 6572 7461 696e 2070 6c61 7466  in certain platf
│ │ │ -0023c500: 6f72 6d73 0a69 6620 7270 6d20 2d2d 7175  orms.if rpm --qu
│ │ │ -0023c510: 6965 7420 2d71 206b 6572 6e65 6c3b 2074  iet -q kernel; t
│ │ │ -0023c520: 6865 6e0a 0a69 6620 2120 7270 6d20 2d71  hen..if ! rpm -q
│ │ │ -0023c530: 202d 2d71 7569 6574 2022 6368 726f 6e79   --quiet "chrony
│ │ │ -0023c540: 2220 3b20 7468 656e 0a20 2020 2064 6e66  " ; then.    dnf
│ │ │ -0023c550: 2069 6e73 7461 6c6c 202d 7920 2263 6872   install -y "chr
│ │ │ -0023c560: 6f6e 7922 0a66 690a 0a65 6c73 650a 2020  ony".fi..else.  
│ │ │ -0023c570: 2020 2667 743b 2661 6d70 3b32 2065 6368    >&2 ech
│ │ │ -0023c580: 6f20 2752 656d 6564 6961 7469 6f6e 2069  o 'Remediation i
│ │ │ -0023c590: 7320 6e6f 7420 6170 706c 6963 6162 6c65  s not applicable
│ │ │ -0023c5a0: 2c20 6e6f 7468 696e 6720 7761 7320 646f  , nothing was do
│ │ │ -0023c5b0: 6e65 270a 6669 0a3c 2f63 6f64 653e 3c2f  ne'.fi.Remediation Ans
│ │ │ +0023b970: 6962 6c65 2073 6e69 7070 6574 20e2 87b2  ible snippet ...
│ │ │ +0023b980: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
Complexity:low
Disrup │ │ │ -0023c450: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0023c460: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0023c4a0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -0023c4b0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity: │ │ │ +0023ba50: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +0023ba60: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +0023bab0: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ +0023bac0: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ +0023bad0: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ +0023bae0: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ +0023baf0: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ +0023bb00: 5043 492d 4453 532d 5265 712d 3130 2e34  PCI-DSS-Req-10.4
│ │ │ +0023bb10: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ +0023bb20: 302e 360a 2020 2d20 5043 492d 4453 5376  0.6.  - PCI-DSSv
│ │ │ +0023bb30: 342d 3130 2e36 2e31 0a20 202d 2065 6e61  4-10.6.1.  - ena
│ │ │ +0023bb40: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ +0023bb50: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +0023bb60: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +0023bb70: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ +0023bb80: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ +0023bb90: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ +0023bba0: 7061 636b 6167 655f 6368 726f 6e79 5f69  package_chrony_i
│ │ │ +0023bbb0: 6e73 7461 6c6c 6564 0a0a 2d20 6e61 6d65  nstalled..- name
│ │ │ +0023bbc0: 3a20 456e 7375 7265 2063 6872 6f6e 7920  : Ensure chrony 
│ │ │ +0023bbd0: 6973 2069 6e73 7461 6c6c 6564 0a20 2061  is installed.  a
│ │ │ +0023bbe0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ +0023bbf0: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ +0023bc00: 3a20 6368 726f 6e79 0a20 2020 2073 7461  : chrony.    sta
│ │ │ +0023bc10: 7465 3a20 7072 6573 656e 740a 2020 7768  te: present.  wh
│ │ │ +0023bc20: 656e 3a20 2722 6b65 726e 656c 2220 696e  en: '"kernel" in
│ │ │ +0023bc30: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +0023bc40: 6163 6b61 6765 7327 0a20 2074 6167 733a  ackages'.  tags:
│ │ │ +0023bc50: 0a20 202d 2050 4349 2d44 5353 2d52 6571  .  - PCI-DSS-Req
│ │ │ +0023bc60: 2d31 302e 340a 2020 2d20 5043 492d 4453  -10.4.  - PCI-DS
│ │ │ +0023bc70: 5376 342d 3130 2e36 0a20 202d 2050 4349  Sv4-10.6.  - PCI
│ │ │ +0023bc80: 2d44 5353 7634 2d31 302e 362e 310a 2020  -DSSv4-10.6.1.  
│ │ │ +0023bc90: 2d20 656e 6162 6c65 5f73 7472 6174 6567  - enable_strateg
│ │ │ +0023bca0: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ +0023bcb0: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ +0023bcc0: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ +0023bcd0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +0023bce0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +0023bcf0: 0a20 202d 2070 6163 6b61 6765 5f63 6872  .  - package_chr
│ │ │ +0023bd00: 6f6e 795f 696e 7374 616c 6c65 640a 3c2f  ony_installed.
Re │ │ │ +0023bdc0: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ +0023bdd0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +0023bde0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low
Disru │ │ │ +0023ba30: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +0023ba40: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +0023ba80: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +0023ba90: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
low< │ │ │ +0023be80: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0023bed0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +0023be60: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0023be90: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0023beb0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0023bec0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0023bee0: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +0023bef0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
incl
│ │ │ +0023bf10: 7564 6520 696e 7374 616c 6c5f 6368 726f  ude install_chro
│ │ │ +0023bf20: 6e79 0a0a 636c 6173 7320 696e 7374 616c  ny..class instal
│ │ │ +0023bf30: 6c5f 6368 726f 6e79 207b 0a20 2070 6163  l_chrony {.  pac
│ │ │ +0023bf40: 6b61 6765 207b 2027 6368 726f 6e79 273a  kage { 'chrony':
│ │ │ +0023bf50: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ +0023bf60: 3b20 2769 6e73 7461 6c6c 6564 272c 0a20  ; 'installed',. 
│ │ │ +0023bf70: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.
Remediation │ │ │ +0023c030: 204f 5342 7569 6c64 2042 6c75 6570 7269 OSBuild Bluepri │ │ │ +0023c040: 6e74 2073 6e69 7070 6574 20e2 87b2 3c2f nt snippet ...
.[[packages]].n
│ │ │ +0023c0a0: 616d 6520 3d20 2263 6872 6f6e 7922 0a76  ame = "chrony".v
│ │ │ +0023c0b0: 6572 7369 6f6e 203d 2022 2a22 0a3c 2f63  ersion = "*".
│ │ │ +0023c0d0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274
Rem │ │ │ +0023c170: 6564 6961 7469 6f6e 2053 6865 6c6c 2073 ediation Shell s │ │ │ +0023c180: 6372 6970 7420 e287 b23c 2f61 3e3c 6272 cript ...
│ │ │ +0023c230: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +0023c250: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +0023c280: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +0023c210: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +0023c220: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +0023c240: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +0023c260: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +0023c270: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

# Remed │ │ │ +0023c2c0: 6961 7469 6f6e 2069 7320 6170 706c 6963 iation is applic │ │ │ +0023c2d0: 6162 6c65 206f 6e6c 7920 696e 2063 6572 able only in cer │ │ │ +0023c2e0: 7461 696e 2070 6c61 7466 6f72 6d73 0a69 tain platforms.i │ │ │ +0023c2f0: 6620 7270 6d20 2d2d 7175 6965 7420 2d71 f rpm --quiet -q │ │ │ +0023c300: 206b 6572 6e65 6c3b 2074 6865 6e0a 0a69 kernel; then..i │ │ │ +0023c310: 6620 2120 7270 6d20 2d71 202d 2d71 7569 f ! rpm -q --qui │ │ │ +0023c320: 6574 2022 6368 726f 6e79 2220 3b20 7468 et "chrony" ; th │ │ │ +0023c330: 656e 0a20 2020 2064 6e66 2069 6e73 7461 en. dnf insta │ │ │ +0023c340: 6c6c 202d 7920 2263 6872 6f6e 7922 0a66 ll -y "chrony".f │ │ │ +0023c350: 690a 0a65 6c73 650a 2020 2020 2667 743b i..else. > │ │ │ +0023c360: 2661 6d70 3b32 2065 6368 6f20 2752 656d &2 echo 'Rem │ │ │ +0023c370: 6564 6961 7469 6f6e 2069 7320 6e6f 7420 ediation is not │ │ │ +0023c380: 6170 706c 6963 6162 6c65 2c20 6e6f 7468 applicable, noth │ │ │ +0023c390: 696e 6720 7761 7320 646f 6e65 270a 6669 ing was done'.fi │ │ │ +0023c3a0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .Remediation Ana │ │ │ +0023c460: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ +0023c470: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .

< │ │ │ +0023c4f0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +0023c510: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +0023c560: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
.package --add=
│ │ │ +0023c5b0: 6368 726f 6e79 0a3c 2f63 6f64 653e 3c2f  chrony.
│ │ │  0023c5d0: 3c2f 7464 3e3c 2f74 723e 3c2f 7462 6f64  
low
Disr │ │ │ +0023c520: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +0023c530: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +0023c570: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +0023c580: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ 0023c5f0: 2f74 723e 3c74 7220 6461 7461 2d74 742d /tr>Remediatio │ │ │ -00244fb0: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ -00244fc0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -00245040: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -00245050: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -00245060: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -002450a0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -002450b0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -002450d0: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -002450e0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
..package
│ │ │ -00245100: 202d 2d72 656d 6f76 653d 7869 6e65 7464   --remove=xinetd
│ │ │ -00245110: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Pup │ │ │ -002451d0: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ -002451e0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -002452b0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -002452c0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -00245310: 0a69 6e63 6c75 6465 2072 656d 6f76 655f  .include remove_
│ │ │ -00245320: 7869 6e65 7464 0a0a 636c 6173 7320 7265  xinetd..class re
│ │ │ -00245330: 6d6f 7665 5f78 696e 6574 6420 7b0a 2020  move_xinetd {.  
│ │ │ -00245340: 7061 636b 6167 6520 7b20 2778 696e 6574  package { 'xinet
│ │ │ -00245350: 6427 3a0a 2020 2020 656e 7375 7265 203d  d':.    ensure =
│ │ │ -00245360: 2667 743b 2027 7075 7267 6564 272c 0a20  > 'purged',. 
│ │ │ -00245370: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.Remediation
│ │ │ -00245430: 2041 6e73 6962 6c65 2073 6e69 7070 6574   Ansible snippet
│ │ │ -00245440: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
< │ │ │ -00245500: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00245510: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
Complexity:low
Disrup │ │ │ -00245290: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -002452a0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -002452e0: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -002452f0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexity │ │ │ -002454d0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ -002454f0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ -00245520: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ -00245540: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -00245570: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ -00245580: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ -00245590: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ -002455a0: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ -002455b0: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ -002455c0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -002455d0: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ -002455e0: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ -002455f0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -00245600: 2d43 4d2d 3728 6229 0a20 202d 2050 4349  -CM-7(b).  - PCI
│ │ │ -00245610: 2d44 5353 7634 2d32 2e32 0a20 202d 2050  -DSSv4-2.2.  - P
│ │ │ -00245620: 4349 2d44 5353 7634 2d32 2e32 2e34 0a20  CI-DSSv4-2.2.4. 
│ │ │ -00245630: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ -00245640: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ -00245650: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -00245660: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -00245670: 775f 7365 7665 7269 7479 0a20 202d 206e  w_severity.  - n
│ │ │ -00245680: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -00245690: 2020 2d20 7061 636b 6167 655f 7869 6e65    - package_xine
│ │ │ -002456a0: 7464 5f72 656d 6f76 6564 0a0a 2d20 6e61  td_removed..- na
│ │ │ -002456b0: 6d65 3a20 2755 6e69 6e73 7461 6c6c 2078  me: 'Uninstall x
│ │ │ -002456c0: 696e 6574 6420 5061 636b 6167 653a 2045  inetd Package: E
│ │ │ -002456d0: 6e73 7572 6520 7869 6e65 7464 2069 7320  nsure xinetd is 
│ │ │ -002456e0: 7265 6d6f 7665 6427 0a20 2061 6e73 6962  removed'.  ansib
│ │ │ -002456f0: 6c65 2e62 7569 6c74 696e 2e70 6163 6b61  le.builtin.packa
│ │ │ -00245700: 6765 3a0a 2020 2020 6e61 6d65 3a20 7869  ge:.    name: xi
│ │ │ -00245710: 6e65 7464 0a20 2020 2073 7461 7465 3a20  netd.    state: 
│ │ │ -00245720: 6162 7365 6e74 0a20 2077 6865 6e3a 2027  absent.  when: '
│ │ │ -00245730: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -00245740: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -00245750: 6573 270a 2020 7461 6773 3a0a 2020 2d20  es'.  tags:.  - 
│ │ │ -00245760: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -00245770: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -00245780: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ -00245790: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -002457a0: 2862 290a 2020 2d20 5043 492d 4453 5376  (b).  - PCI-DSSv
│ │ │ -002457b0: 342d 322e 320a 2020 2d20 5043 492d 4453  4-2.2.  - PCI-DS
│ │ │ -002457c0: 5376 342d 322e 322e 340a 2020 2d20 6469  Sv4-2.2.4.  - di
│ │ │ -002457d0: 7361 626c 655f 7374 7261 7465 6779 0a20  sable_strategy. 
│ │ │ -002457e0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -002457f0: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -00245800: 7469 6f6e 0a20 202d 206c 6f77 5f73 6576  tion.  - low_sev
│ │ │ -00245810: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ -00245820: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ -00245830: 6163 6b61 6765 5f78 696e 6574 645f 7265  ackage_xinetd_re
│ │ │ -00245840: 6d6f 7665 640a 3c2f 636f 6465 3e3c 2f70  moved.

Remediatio │ │ │ -00245900: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ -00245910: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -00245990: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -002459b0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -00245a00: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -00245a30: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -002459a0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -002459c0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -00245a10: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -00245a20: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
# Remediation
│ │ │ -00245a50: 2069 7320 6170 706c 6963 6162 6c65 206f   is applicable o
│ │ │ -00245a60: 6e6c 7920 696e 2063 6572 7461 696e 2070  nly in certain p
│ │ │ -00245a70: 6c61 7466 6f72 6d73 0a69 6620 7270 6d20  latforms.if rpm 
│ │ │ -00245a80: 2d2d 7175 6965 7420 2d71 206b 6572 6e65  --quiet -q kerne
│ │ │ -00245a90: 6c3b 2074 6865 6e0a 0a23 2043 4155 5449  l; then..# CAUTI
│ │ │ -00245aa0: 4f4e 3a20 5468 6973 2072 656d 6564 6961  ON: This remedia
│ │ │ -00245ab0: 7469 6f6e 2073 6372 6970 7420 7769 6c6c  tion script will
│ │ │ -00245ac0: 2072 656d 6f76 6520 7869 6e65 7464 0a23   remove xinetd.#
│ │ │ -00245ad0: 2066 726f 6d20 7468 6520 7379 7374 656d   from the system
│ │ │ -00245ae0: 2c20 616e 6420 6d61 7920 7265 6d6f 7665  , and may remove
│ │ │ -00245af0: 2061 6e79 2070 6163 6b61 6765 730a 2320   any packages.# 
│ │ │ -00245b00: 7468 6174 2064 6570 656e 6420 6f6e 2078  that depend on x
│ │ │ -00245b10: 696e 6574 642e 2045 7865 6375 7465 2074  inetd. Execute t
│ │ │ -00245b20: 6869 730a 2320 7265 6d65 6469 6174 696f  his.# remediatio
│ │ │ -00245b30: 6e20 4146 5445 5220 7465 7374 696e 6720  n AFTER testing 
│ │ │ -00245b40: 6f6e 2061 206e 6f6e 2d70 726f 6475 6374  on a non-product
│ │ │ -00245b50: 696f 6e0a 2320 7379 7374 656d 210a 0a0a  ion.# system!...
│ │ │ -00245b60: 6966 2072 706d 202d 7120 2d2d 7175 6965  if rpm -q --quie
│ │ │ -00245b70: 7420 2278 696e 6574 6422 203b 2074 6865  t "xinetd" ; the
│ │ │ -00245b80: 6e0a 646e 6620 7265 6d6f 7665 202d 7920  n.dnf remove -y 
│ │ │ -00245b90: 2d2d 6e6f 6175 746f 7265 6d6f 7665 2022  --noautoremove "
│ │ │ -00245ba0: 7869 6e65 7464 220a 6669 0a0a 656c 7365  xinetd".fi..else
│ │ │ -00245bb0: 0a20 2020 2026 6774 3b26 616d 703b 3220  .    >&2 
│ │ │ -00245bc0: 6563 686f 2027 5265 6d65 6469 6174 696f  echo 'Remediatio
│ │ │ -00245bd0: 6e20 6973 206e 6f74 2061 7070 6c69 6361  n is not applica
│ │ │ -00245be0: 626c 652c 206e 6f74 6869 6e67 2077 6173  ble, nothing was
│ │ │ -00245bf0: 2064 6f6e 6527 0a66 690a 3c2f 636f 6465   done'.fi.
< │ │ │ +00245040: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +00245050: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +00245070: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +00245080: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +002450a0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +002450c0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ +002450f0: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ +00245100: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ +00245110: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ +00245120: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ +00245130: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ +00245140: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +00245150: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +00245160: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ +00245170: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +00245180: 332d 434d 2d37 2862 290a 2020 2d20 5043  3-CM-7(b).  - PC
│ │ │ +00245190: 492d 4453 5376 342d 322e 320a 2020 2d20  I-DSSv4-2.2.  - 
│ │ │ +002451a0: 5043 492d 4453 5376 342d 322e 322e 340a  PCI-DSSv4-2.2.4.
│ │ │ +002451b0: 2020 2d20 6469 7361 626c 655f 7374 7261    - disable_stra
│ │ │ +002451c0: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ +002451d0: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +002451e0: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +002451f0: 6f77 5f73 6576 6572 6974 790a 2020 2d20  ow_severity.  - 
│ │ │ +00245200: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +00245210: 0a20 202d 2070 6163 6b61 6765 5f78 696e  .  - package_xin
│ │ │ +00245220: 6574 645f 7265 6d6f 7665 640a 0a2d 206e  etd_removed..- n
│ │ │ +00245230: 616d 653a 2027 556e 696e 7374 616c 6c20  ame: 'Uninstall 
│ │ │ +00245240: 7869 6e65 7464 2050 6163 6b61 6765 3a20  xinetd Package: 
│ │ │ +00245250: 456e 7375 7265 2078 696e 6574 6420 6973  Ensure xinetd is
│ │ │ +00245260: 2072 656d 6f76 6564 270a 2020 616e 7369   removed'.  ansi
│ │ │ +00245270: 626c 652e 6275 696c 7469 6e2e 7061 636b  ble.builtin.pack
│ │ │ +00245280: 6167 653a 0a20 2020 206e 616d 653a 2078  age:.    name: x
│ │ │ +00245290: 696e 6574 640a 2020 2020 7374 6174 653a  inetd.    state:
│ │ │ +002452a0: 2061 6273 656e 740a 2020 7768 656e 3a20   absent.  when: 
│ │ │ +002452b0: 2722 6b65 726e 656c 2220 696e 2061 6e73  '"kernel" in ans
│ │ │ +002452c0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +002452d0: 6765 7327 0a20 2074 6167 733a 0a20 202d  ges'.  tags:.  -
│ │ │ +002452e0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +002452f0: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ +00245300: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ +00245310: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +00245320: 3728 6229 0a20 202d 2050 4349 2d44 5353  7(b).  - PCI-DSS
│ │ │ +00245330: 7634 2d32 2e32 0a20 202d 2050 4349 2d44  v4-2.2.  - PCI-D
│ │ │ +00245340: 5353 7634 2d32 2e32 2e34 0a20 202d 2064  SSv4-2.2.4.  - d
│ │ │ +00245350: 6973 6162 6c65 5f73 7472 6174 6567 790a  isable_strategy.
│ │ │ +00245360: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +00245370: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ +00245380: 7074 696f 6e0a 2020 2d20 6c6f 775f 7365  ption.  - low_se
│ │ │ +00245390: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ +002453a0: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ +002453b0: 7061 636b 6167 655f 7869 6e65 7464 5f72  package_xinetd_r
│ │ │ +002453c0: 656d 6f76 6564 0a3c 2f63 6f64 653e 3c2f  emoved.
Remediati │ │ │ +00245480: 6f6e 2050 7570 7065 7420 736e 6970 7065 on Puppet snippe │ │ │ +00245490: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +00245510: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +00245520: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +00245540: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +00245550: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +00245570: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +00245590: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ +002455c0: 3c63 6f64 653e 0a69 6e63 6c75 6465 2072  .include r
│ │ │ +002455d0: 656d 6f76 655f 7869 6e65 7464 0a0a 636c  emove_xinetd..cl
│ │ │ +002455e0: 6173 7320 7265 6d6f 7665 5f78 696e 6574  ass remove_xinet
│ │ │ +002455f0: 6420 7b0a 2020 7061 636b 6167 6520 7b20  d {.  package { 
│ │ │ +00245600: 2778 696e 6574 6427 3a0a 2020 2020 656e  'xinetd':.    en
│ │ │ +00245610: 7375 7265 203d 2667 743b 2027 7075 7267  sure => 'purg
│ │ │ +00245620: 6564 272c 0a20 207d 0a7d 0a3c 2f63 6f64  ed',.  }.}.
Remed │ │ │ +002456e0: 6961 7469 6f6e 2053 6865 6c6c 2073 6372 iation Shell scr │ │ │ +002456f0: 6970 7420 e287 b23c 2f61 3e3c 6272 3e3c ipt ...
< │ │ │ +00245700: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +00245710: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +00245720: 7365 2220 6964 3d22 6964 3733 3722 3e3c se" id="id737">< │ │ │ +00245730: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +00245740: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +00245750: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +00245760: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +00245770: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +00245780: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +00245790: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ +002457d0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +002457e0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ +00245800: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ +00245810: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 # Remedi │ │ │ +00245830: 6174 696f 6e20 6973 2061 7070 6c69 6361 ation is applica │ │ │ +00245840: 626c 6520 6f6e 6c79 2069 6e20 6365 7274 ble only in cert │ │ │ +00245850: 6169 6e20 706c 6174 666f 726d 730a 6966 ain platforms.if │ │ │ +00245860: 2072 706d 202d 2d71 7569 6574 202d 7120 rpm --quiet -q │ │ │ +00245870: 6b65 726e 656c 3b20 7468 656e 0a0a 2320 kernel; then..# │ │ │ +00245880: 4341 5554 494f 4e3a 2054 6869 7320 7265 CAUTION: This re │ │ │ +00245890: 6d65 6469 6174 696f 6e20 7363 7269 7074 mediation script │ │ │ +002458a0: 2077 696c 6c20 7265 6d6f 7665 2078 696e will remove xin │ │ │ +002458b0: 6574 640a 2320 6672 6f6d 2074 6865 2073 etd.# from the s │ │ │ +002458c0: 7973 7465 6d2c 2061 6e64 206d 6179 2072 ystem, and may r │ │ │ +002458d0: 656d 6f76 6520 616e 7920 7061 636b 6167 emove any packag │ │ │ +002458e0: 6573 0a23 2074 6861 7420 6465 7065 6e64 es.# that depend │ │ │ +002458f0: 206f 6e20 7869 6e65 7464 2e20 4578 6563 on xinetd. Exec │ │ │ +00245900: 7574 6520 7468 6973 0a23 2072 656d 6564 ute this.# remed │ │ │ +00245910: 6961 7469 6f6e 2041 4654 4552 2074 6573 iation AFTER tes │ │ │ +00245920: 7469 6e67 206f 6e20 6120 6e6f 6e2d 7072 ting on a non-pr │ │ │ +00245930: 6f64 7563 7469 6f6e 0a23 2073 7973 7465 oduction.# syste │ │ │ +00245940: 6d21 0a0a 0a69 6620 7270 6d20 2d71 202d m!...if rpm -q - │ │ │ +00245950: 2d71 7569 6574 2022 7869 6e65 7464 2220 -quiet "xinetd" │ │ │ +00245960: 3b20 7468 656e 0a64 6e66 2072 656d 6f76 ; then.dnf remov │ │ │ +00245970: 6520 2d79 202d 2d6e 6f61 7574 6f72 656d e -y --noautorem │ │ │ +00245980: 6f76 6520 2278 696e 6574 6422 0a66 690a ove "xinetd".fi. │ │ │ +00245990: 0a65 6c73 650a 2020 2020 2667 743b 2661 .else. >&a │ │ │ +002459a0: 6d70 3b32 2065 6368 6f20 2752 656d 6564 mp;2 echo 'Remed │ │ │ +002459b0: 6961 7469 6f6e 2069 7320 6e6f 7420 6170 iation is not ap │ │ │ +002459c0: 706c 6963 6162 6c65 2c20 6e6f 7468 696e plicable, nothin │ │ │ +002459d0: 6720 7761 7320 646f 6e65 270a 6669 0a3c g was done'.fi.< │ │ │ +002459e0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469 /code>R │ │ │ +00245a90: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ +00245aa0: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ +00245ab0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ +00245b80: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +00245b90: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ +00245be0: 0a0a 7061 636b 6167 6520 2d2d 7265 6d6f  ..package --remo
│ │ │ +00245bf0: 7665 3d78 696e 6574 640a 3c2f 636f 6465  ve=xinetd.
Complexity:low
Disrup │ │ │ +00245b60: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +00245b70: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +00245bb0: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ +00245bc0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Remediatio │ │ │ -00246bd0: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ -00246be0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...

│ │ │ -00246c60: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -00246c70: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -00246c80: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -00246cc0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -00246cd0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -00246cf0: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -00246d00: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
..package
│ │ │ -00246d20: 202d 2d72 656d 6f76 653d 7970 6269 6e64   --remove=ypbind
│ │ │ -00246d30: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Pup │ │ │ -00246df0: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ -00246e00: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -00246ed0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00246ee0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -00246f30: 0a69 6e63 6c75 6465 2072 656d 6f76 655f  .include remove_
│ │ │ -00246f40: 7970 6269 6e64 0a0a 636c 6173 7320 7265  ypbind..class re
│ │ │ -00246f50: 6d6f 7665 5f79 7062 696e 6420 7b0a 2020  move_ypbind {.  
│ │ │ -00246f60: 7061 636b 6167 6520 7b20 2779 7062 696e  package { 'ypbin
│ │ │ -00246f70: 6427 3a0a 2020 2020 656e 7375 7265 203d  d':.    ensure =
│ │ │ -00246f80: 2667 743b 2027 7075 7267 6564 272c 0a20  > 'purged',. 
│ │ │ -00246f90: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.Remediation
│ │ │ -00247050: 2041 6e73 6962 6c65 2073 6e69 7070 6574   Ansible snippet
│ │ │ -00247060: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
< │ │ │ -00247120: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00247130: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
Complexity:low
Disrup │ │ │ -00246eb0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00246ec0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00246f00: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -00246f10: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexity │ │ │ -002470f0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ -00247110: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ -00247140: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ -00247160: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -00247190: 636f 6465 3e2d 206e 616d 653a 2027 5265  code>- name: 'Re
│ │ │ -002471a0: 6d6f 7665 204e 4953 2043 6c69 656e 743a  move NIS Client:
│ │ │ -002471b0: 2045 6e73 7572 6520 7970 6269 6e64 2069   Ensure ypbind i
│ │ │ -002471c0: 7320 7265 6d6f 7665 6427 0a20 2061 6e73  s removed'.  ans
│ │ │ -002471d0: 6962 6c65 2e62 7569 6c74 696e 2e70 6163  ible.builtin.pac
│ │ │ -002471e0: 6b61 6765 3a0a 2020 2020 6e61 6d65 3a20  kage:.    name: 
│ │ │ -002471f0: 7970 6269 6e64 0a20 2020 2073 7461 7465  ypbind.    state
│ │ │ -00247200: 3a20 6162 7365 6e74 0a20 2074 6167 733a  : absent.  tags:
│ │ │ -00247210: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ -00247220: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ -00247230: 2d32 2e32 2e34 0a20 202d 2064 6973 6162  -2.2.4.  - disab
│ │ │ -00247240: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ -00247250: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -00247260: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -00247270: 6e0a 2020 2d20 6e6f 5f72 6562 6f6f 745f  n.  - no_reboot_
│ │ │ -00247280: 6e65 6564 6564 0a20 202d 2070 6163 6b61  needed.  - packa
│ │ │ -00247290: 6765 5f79 7062 696e 645f 7265 6d6f 7665  ge_ypbind_remove
│ │ │ -002472a0: 640a 2020 2d20 756e 6b6e 6f77 6e5f 7365  d.  - unknown_se
│ │ │ -002472b0: 7665 7269 7479 0a3c 2f63 6f64 653e 3c2f  verity.
Remediati │ │ │ -00247370: 6f6e 2053 6865 6c6c 2073 6372 6970 7420 on Shell script │ │ │ -00247380: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -00247410: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -00247430: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -00247450: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -00247480: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -00247490: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
.# CAUTION: 
│ │ │ -002474c0: 5468 6973 2072 656d 6564 6961 7469 6f6e  This remediation
│ │ │ -002474d0: 2073 6372 6970 7420 7769 6c6c 2072 656d   script will rem
│ │ │ -002474e0: 6f76 6520 7970 6269 6e64 0a23 2066 726f  ove ypbind.# fro
│ │ │ -002474f0: 6d20 7468 6520 7379 7374 656d 2c20 616e  m the system, an
│ │ │ -00247500: 6420 6d61 7920 7265 6d6f 7665 2061 6e79  d may remove any
│ │ │ -00247510: 2070 6163 6b61 6765 730a 2320 7468 6174   packages.# that
│ │ │ -00247520: 2064 6570 656e 6420 6f6e 2079 7062 696e   depend on ypbin
│ │ │ -00247530: 642e 2045 7865 6375 7465 2074 6869 730a  d. Execute this.
│ │ │ -00247540: 2320 7265 6d65 6469 6174 696f 6e20 4146  # remediation AF
│ │ │ -00247550: 5445 5220 7465 7374 696e 6720 6f6e 2061  TER testing on a
│ │ │ -00247560: 206e 6f6e 2d70 726f 6475 6374 696f 6e0a   non-production.
│ │ │ -00247570: 2320 7379 7374 656d 210a 0a0a 6966 2072  # system!...if r
│ │ │ -00247580: 706d 202d 7120 2d2d 7175 6965 7420 2279  pm -q --quiet "y
│ │ │ -00247590: 7062 696e 6422 203b 2074 6865 6e0a 646e  pbind" ; then.dn
│ │ │ -002475a0: 6620 7265 6d6f 7665 202d 7920 2d2d 6e6f  f remove -y --no
│ │ │ -002475b0: 6175 746f 7265 6d6f 7665 2022 7970 6269  autoremove "ypbi
│ │ │ -002475c0: 6e64 220a 6669 0a3c 2f63 6f64 653e 3c2f  nd".fi.
< │ │ │ +00246c60: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +00246c70: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +00246c90: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +00246ca0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +00246cc0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +00246ce0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ +00246d10: 3c63 6f64 653e 2d20 6e61 6d65 3a20 2752  - name: 'R
│ │ │ +00246d20: 656d 6f76 6520 4e49 5320 436c 6965 6e74  emove NIS Client
│ │ │ +00246d30: 3a20 456e 7375 7265 2079 7062 696e 6420  : Ensure ypbind 
│ │ │ +00246d40: 6973 2072 656d 6f76 6564 270a 2020 616e  is removed'.  an
│ │ │ +00246d50: 7369 626c 652e 6275 696c 7469 6e2e 7061  sible.builtin.pa
│ │ │ +00246d60: 636b 6167 653a 0a20 2020 206e 616d 653a  ckage:.    name:
│ │ │ +00246d70: 2079 7062 696e 640a 2020 2020 7374 6174   ypbind.    stat
│ │ │ +00246d80: 653a 2061 6273 656e 740a 2020 7461 6773  e: absent.  tags
│ │ │ +00246d90: 3a0a 2020 2d20 5043 492d 4453 5376 342d  :.  - PCI-DSSv4-
│ │ │ +00246da0: 322e 320a 2020 2d20 5043 492d 4453 5376  2.2.  - PCI-DSSv
│ │ │ +00246db0: 342d 322e 322e 340a 2020 2d20 6469 7361  4-2.2.4.  - disa
│ │ │ +00246dc0: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ +00246dd0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +00246de0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +00246df0: 6f6e 0a20 202d 206e 6f5f 7265 626f 6f74  on.  - no_reboot
│ │ │ +00246e00: 5f6e 6565 6465 640a 2020 2d20 7061 636b  _needed.  - pack
│ │ │ +00246e10: 6167 655f 7970 6269 6e64 5f72 656d 6f76  age_ypbind_remov
│ │ │ +00246e20: 6564 0a20 202d 2075 6e6b 6e6f 776e 5f73  ed.  - unknown_s
│ │ │ +00246e30: 6576 6572 6974 790a 3c2f 636f 6465 3e3c  everity.<
│ │ │ +00246e40: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ +00246ef0: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ +00246f00: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +00246f80: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +00246f90: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +00246fa0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +00246fe0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +00246ff0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +00247010: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +00247020: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.include 
│ │ │ +00247040: 7265 6d6f 7665 5f79 7062 696e 640a 0a63  remove_ypbind..c
│ │ │ +00247050: 6c61 7373 2072 656d 6f76 655f 7970 6269  lass remove_ypbi
│ │ │ +00247060: 6e64 207b 0a20 2070 6163 6b61 6765 207b  nd {.  package {
│ │ │ +00247070: 2027 7970 6269 6e64 273a 0a20 2020 2065   'ypbind':.    e
│ │ │ +00247080: 6e73 7572 6520 3d26 6774 3b20 2770 7572  nsure => 'pur
│ │ │ +00247090: 6765 6427 2c0a 2020 7d0a 7d0a 3c2f 636f  ged',.  }.}.
< │ │ │ +002470b0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +002470c0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +002470d0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +002470e0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +002470f0: 6437 3432 2220 7461 6269 6e64 6578 3d22 d742" tabindex=" │ │ │ +00247100: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +00247110: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +00247120: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +00247130: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +00247140: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +00247150: 6469 6174 696f 6e20 5368 656c 6c20 7363 diation Shell sc │ │ │ +00247160: 7269 7074 20e2 87b2 3c2f 613e 3c62 723e ript ...
│ │ │ +00247170: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +002471a0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +00247210: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +00247230: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +00247260: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +002471f0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +00247200: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +00247240: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +00247250: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

.# CAUT │ │ │ +002472a0: 494f 4e3a 2054 6869 7320 7265 6d65 6469 ION: This remedi │ │ │ +002472b0: 6174 696f 6e20 7363 7269 7074 2077 696c ation script wil │ │ │ +002472c0: 6c20 7265 6d6f 7665 2079 7062 696e 640a l remove ypbind. │ │ │ +002472d0: 2320 6672 6f6d 2074 6865 2073 7973 7465 # from the syste │ │ │ +002472e0: 6d2c 2061 6e64 206d 6179 2072 656d 6f76 m, and may remov │ │ │ +002472f0: 6520 616e 7920 7061 636b 6167 6573 0a23 e any packages.# │ │ │ +00247300: 2074 6861 7420 6465 7065 6e64 206f 6e20 that depend on │ │ │ +00247310: 7970 6269 6e64 2e20 4578 6563 7574 6520 ypbind. Execute │ │ │ +00247320: 7468 6973 0a23 2072 656d 6564 6961 7469 this.# remediati │ │ │ +00247330: 6f6e 2041 4654 4552 2074 6573 7469 6e67 on AFTER testing │ │ │ +00247340: 206f 6e20 6120 6e6f 6e2d 7072 6f64 7563 on a non-produc │ │ │ +00247350: 7469 6f6e 0a23 2073 7973 7465 6d21 0a0a tion.# system!.. │ │ │ +00247360: 0a69 6620 7270 6d20 2d71 202d 2d71 7569 .if rpm -q --qui │ │ │ +00247370: 6574 2022 7970 6269 6e64 2220 3b20 7468 et "ypbind" ; th │ │ │ +00247380: 656e 0a64 6e66 2072 656d 6f76 6520 2d79 en.dnf remove -y │ │ │ +00247390: 202d 2d6e 6f61 7574 6f72 656d 6f76 6520 --noautoremove │ │ │ +002473a0: 2279 7062 696e 6422 0a66 690a 3c2f 636f "ypbind".fi.

< │ │ │ +002473c0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +002473d0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +002473e0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +002473f0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +00247400: 6437 3433 2220 7461 6269 6e64 6578 3d22 d743" tabindex=" │ │ │ +00247410: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +00247420: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +00247430: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +00247440: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +00247450: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +00247460: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ +00247470: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +00247480: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +00247520: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +00247570: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
..p
│ │ │ +002475b0: 6163 6b61 6765 202d 2d72 656d 6f76 653d  ackage --remove=
│ │ │ +002475c0: 7970 6269 6e64 0a3c 2f63 6f64 653e 3c2f  ypbind.
│ │ │  002475e0: 3c2f 7464 3e3c 2f74 723e 3c2f 7462 6f64  
Co │ │ │ +00247500: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +00247530: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +00247550: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +00247560: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +00247580: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +00247590: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ 00247600: 2f74 723e 3c74 7220 6461 7461 2d74 742d /tr>Remedia │ │ │ -002487a0: 7469 6f6e 2041 6e61 636f 6e64 6120 736e tion Anaconda sn │ │ │ -002487b0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -00248860: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -00248880: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -002488b0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -00248840: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -00248850: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00248870: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -00248890: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -002488a0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -002488e0: 7072 653e 3c63 6f64 653e 0a0a 7061 636b pre>..pack │ │ │ -002488f0: 6167 6520 2d2d 7265 6d6f 7665 3d79 7073 age --remove=yps │ │ │ -00248900: 6572 760a 3c2f 636f 6465 3e3c 2f70 7265 erv.
Remediation │ │ │ -002489c0: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ -002489d0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -00248a50: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -00248a70: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -00248ac0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -00248af0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -00248a60: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -00248a80: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -00248ad0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -00248ae0: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.include remo
│ │ │ -00248b10: 7665 5f79 7073 6572 760a 0a63 6c61 7373  ve_ypserv..class
│ │ │ -00248b20: 2072 656d 6f76 655f 7970 7365 7276 207b   remove_ypserv {
│ │ │ -00248b30: 0a20 2070 6163 6b61 6765 207b 2027 7970  .  package { 'yp
│ │ │ -00248b40: 7365 7276 273a 0a20 2020 2065 6e73 7572  serv':.    ensur
│ │ │ -00248b50: 6520 3d26 6774 3b20 2770 7572 6765 6427  e => 'purged'
│ │ │ -00248b60: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ -00248b70: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ -00248c20: 696f 6e20 416e 7369 626c 6520 736e 6970 ion Ansible snip │ │ │ -00248c30: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00248c40: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00248c50: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00248c60: 7365 2220 6964 3d22 6964 3734 3722 3e3c se" id="id747">< │ │ │ -00248c70: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -00248c80: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -00248c90: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -00248ca0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -00248cb0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -00248cc0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -00248cd0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -00248d10: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -00248d20: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -00248d40: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ -00248d50: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 - name: │ │ │ -00248d70: 2755 6e69 6e73 7461 6c6c 2079 7073 6572 'Uninstall ypser │ │ │ -00248d80: 7620 5061 636b 6167 653a 2045 6e73 7572 v Package: Ensur │ │ │ -00248d90: 6520 7970 7365 7276 2069 7320 7265 6d6f e ypserv is remo │ │ │ -00248da0: 7665 6427 0a20 2061 6e73 6962 6c65 2e62 ved'. ansible.b │ │ │ -00248db0: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a uiltin.package:. │ │ │ -00248dc0: 2020 2020 6e61 6d65 3a20 7970 7365 7276 name: ypserv │ │ │ -00248dd0: 0a20 2020 2073 7461 7465 3a20 6162 7365 . state: abse │ │ │ -00248de0: 6e74 0a20 2074 6167 733a 0a20 202d 204e nt. tags:. - N │ │ │ -00248df0: 4953 542d 3830 302d 3533 2d43 4d2d 3628 IST-800-53-CM-6( │ │ │ -00248e00: 6129 0a20 202d 204e 4953 542d 3830 302d a). - NIST-800- │ │ │ -00248e10: 3533 2d43 4d2d 3728 6129 0a20 202d 204e 53-CM-7(a). - N │ │ │ -00248e20: 4953 542d 3830 302d 3533 2d43 4d2d 3728 IST-800-53-CM-7( │ │ │ -00248e30: 6229 0a20 202d 204e 4953 542d 3830 302d b). - NIST-800- │ │ │ -00248e40: 3533 2d49 412d 3528 3129 2863 290a 2020 53-IA-5(1)(c). │ │ │ -00248e50: 2d20 5043 492d 4453 532d 5265 712d 322e - PCI-DSS-Req-2. │ │ │ -00248e60: 322e 320a 2020 2d20 5043 492d 4453 5376 2.2. - PCI-DSSv │ │ │ -00248e70: 342d 322e 320a 2020 2d20 5043 492d 4453 4-2.2. - PCI-DS │ │ │ -00248e80: 5376 342d 322e 322e 340a 2020 2d20 6469 Sv4-2.2.4. - di │ │ │ -00248e90: 7361 626c 655f 7374 7261 7465 6779 0a20 sable_strategy. │ │ │ -00248ea0: 202d 2068 6967 685f 7365 7665 7269 7479 - high_severity │ │ │ -00248eb0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ -00248ec0: 6974 790a 2020 2d20 6c6f 775f 6469 7372 ity. - low_disr │ │ │ -00248ed0: 7570 7469 6f6e 0a20 202d 206e 6f5f 7265 uption. - no_re │ │ │ -00248ee0: 626f 6f74 5f6e 6565 6465 640a 2020 2d20 boot_needed. - │ │ │ -00248ef0: 7061 636b 6167 655f 7970 7365 7276 5f72 package_ypserv_r │ │ │ -00248f00: 656d 6f76 6564 0a3c 2f63 6f64 653e 3c2f emoved.
Remediati │ │ │ -00248fc0: 6f6e 2053 6865 6c6c 2073 6372 6970 7420 on Shell script │ │ │ -00248fd0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -00249060: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -00249080: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -002490a0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -002490d0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -002490e0: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
.# CAUTION: 
│ │ │ -00249110: 5468 6973 2072 656d 6564 6961 7469 6f6e  This remediation
│ │ │ -00249120: 2073 6372 6970 7420 7769 6c6c 2072 656d   script will rem
│ │ │ -00249130: 6f76 6520 7970 7365 7276 0a23 2066 726f  ove ypserv.# fro
│ │ │ -00249140: 6d20 7468 6520 7379 7374 656d 2c20 616e  m the system, an
│ │ │ -00249150: 6420 6d61 7920 7265 6d6f 7665 2061 6e79  d may remove any
│ │ │ -00249160: 2070 6163 6b61 6765 730a 2320 7468 6174   packages.# that
│ │ │ -00249170: 2064 6570 656e 6420 6f6e 2079 7073 6572   depend on ypser
│ │ │ -00249180: 762e 2045 7865 6375 7465 2074 6869 730a  v. Execute this.
│ │ │ -00249190: 2320 7265 6d65 6469 6174 696f 6e20 4146  # remediation AF
│ │ │ -002491a0: 5445 5220 7465 7374 696e 6720 6f6e 2061  TER testing on a
│ │ │ -002491b0: 206e 6f6e 2d70 726f 6475 6374 696f 6e0a   non-production.
│ │ │ -002491c0: 2320 7379 7374 656d 210a 0a0a 6966 2072  # system!...if r
│ │ │ -002491d0: 706d 202d 7120 2d2d 7175 6965 7420 2279  pm -q --quiet "y
│ │ │ -002491e0: 7073 6572 7622 203b 2074 6865 6e0a 646e  pserv" ; then.dn
│ │ │ -002491f0: 6620 7265 6d6f 7665 202d 7920 2d2d 6e6f  f remove -y --no
│ │ │ -00249200: 6175 746f 7265 6d6f 7665 2022 7970 7365  autoremove "ypse
│ │ │ -00249210: 7276 220a 6669 0a3c 2f63 6f64 653e 3c2f  rv".fi.
│ │ │ +002487c0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +002487f0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +00248860: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +00248880: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +002488b0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +00248840: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +00248850: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +00248890: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +002488a0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

- name: │ │ │ +002488f0: 2027 556e 696e 7374 616c 6c20 7970 7365 'Uninstall ypse │ │ │ +00248900: 7276 2050 6163 6b61 6765 3a20 456e 7375 rv Package: Ensu │ │ │ +00248910: 7265 2079 7073 6572 7620 6973 2072 656d re ypserv is rem │ │ │ +00248920: 6f76 6564 270a 2020 616e 7369 626c 652e oved'. ansible. │ │ │ +00248930: 6275 696c 7469 6e2e 7061 636b 6167 653a builtin.package: │ │ │ +00248940: 0a20 2020 206e 616d 653a 2079 7073 6572 . name: ypser │ │ │ +00248950: 760a 2020 2020 7374 6174 653a 2061 6273 v. state: abs │ │ │ +00248960: 656e 740a 2020 7461 6773 3a0a 2020 2d20 ent. tags:. - │ │ │ +00248970: 4e49 5354 2d38 3030 2d35 332d 434d 2d36 NIST-800-53-CM-6 │ │ │ +00248980: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ +00248990: 2d35 332d 434d 2d37 2861 290a 2020 2d20 -53-CM-7(a). - │ │ │ +002489a0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37 NIST-800-53-CM-7 │ │ │ +002489b0: 2862 290a 2020 2d20 4e49 5354 2d38 3030 (b). - NIST-800 │ │ │ +002489c0: 2d35 332d 4941 2d35 2831 2928 6329 0a20 -53-IA-5(1)(c). │ │ │ +002489d0: 202d 2050 4349 2d44 5353 2d52 6571 2d32 - PCI-DSS-Req-2 │ │ │ +002489e0: 2e32 2e32 0a20 202d 2050 4349 2d44 5353 .2.2. - PCI-DSS │ │ │ +002489f0: 7634 2d32 2e32 0a20 202d 2050 4349 2d44 v4-2.2. - PCI-D │ │ │ +00248a00: 5353 7634 2d32 2e32 2e34 0a20 202d 2064 SSv4-2.2.4. - d │ │ │ +00248a10: 6973 6162 6c65 5f73 7472 6174 6567 790a isable_strategy. │ │ │ +00248a20: 2020 2d20 6869 6768 5f73 6576 6572 6974 - high_severit │ │ │ +00248a30: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65 y. - low_comple │ │ │ +00248a40: 7869 7479 0a20 202d 206c 6f77 5f64 6973 xity. - low_dis │ │ │ +00248a50: 7275 7074 696f 6e0a 2020 2d20 6e6f 5f72 ruption. - no_r │ │ │ +00248a60: 6562 6f6f 745f 6e65 6564 6564 0a20 202d eboot_needed. - │ │ │ +00248a70: 2070 6163 6b61 6765 5f79 7073 6572 765f package_ypserv_ │ │ │ +00248a80: 7265 6d6f 7665 640a 3c2f 636f 6465 3e3c removed.< │ │ │ +00248a90: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>

Remediat │ │ │ +00248b40: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ +00248b50: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +00248bd0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +00248be0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +00248bf0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +00248c30: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +00248c40: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +00248c60: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +00248c70: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.include 
│ │ │ +00248c90: 7265 6d6f 7665 5f79 7073 6572 760a 0a63  remove_ypserv..c
│ │ │ +00248ca0: 6c61 7373 2072 656d 6f76 655f 7970 7365  lass remove_ypse
│ │ │ +00248cb0: 7276 207b 0a20 2070 6163 6b61 6765 207b  rv {.  package {
│ │ │ +00248cc0: 2027 7970 7365 7276 273a 0a20 2020 2065   'ypserv':.    e
│ │ │ +00248cd0: 6e73 7572 6520 3d26 6774 3b20 2770 7572  nsure => 'pur
│ │ │ +00248ce0: 6765 6427 2c0a 2020 7d0a 7d0a 3c2f 636f  ged',.  }.}.
< │ │ │ +00248d00: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +00248d10: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +00248d20: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +00248d30: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +00248d40: 6437 3437 2220 7461 6269 6e64 6578 3d22 d747" tabindex=" │ │ │ +00248d50: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +00248d60: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +00248d70: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +00248d80: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +00248d90: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +00248da0: 6469 6174 696f 6e20 5368 656c 6c20 7363 diation Shell sc │ │ │ +00248db0: 7269 7074 20e2 87b2 3c2f 613e 3c62 723e ript ...
│ │ │ +00248dc0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +00248df0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +00248e60: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +00248e80: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +00248eb0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +00248e40: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +00248e50: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +00248e90: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +00248ea0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

.# CAUT │ │ │ +00248ef0: 494f 4e3a 2054 6869 7320 7265 6d65 6469 ION: This remedi │ │ │ +00248f00: 6174 696f 6e20 7363 7269 7074 2077 696c ation script wil │ │ │ +00248f10: 6c20 7265 6d6f 7665 2079 7073 6572 760a l remove ypserv. │ │ │ +00248f20: 2320 6672 6f6d 2074 6865 2073 7973 7465 # from the syste │ │ │ +00248f30: 6d2c 2061 6e64 206d 6179 2072 656d 6f76 m, and may remov │ │ │ +00248f40: 6520 616e 7920 7061 636b 6167 6573 0a23 e any packages.# │ │ │ +00248f50: 2074 6861 7420 6465 7065 6e64 206f 6e20 that depend on │ │ │ +00248f60: 7970 7365 7276 2e20 4578 6563 7574 6520 ypserv. Execute │ │ │ +00248f70: 7468 6973 0a23 2072 656d 6564 6961 7469 this.# remediati │ │ │ +00248f80: 6f6e 2041 4654 4552 2074 6573 7469 6e67 on AFTER testing │ │ │ +00248f90: 206f 6e20 6120 6e6f 6e2d 7072 6f64 7563 on a non-produc │ │ │ +00248fa0: 7469 6f6e 0a23 2073 7973 7465 6d21 0a0a tion.# system!.. │ │ │ +00248fb0: 0a69 6620 7270 6d20 2d71 202d 2d71 7569 .if rpm -q --qui │ │ │ +00248fc0: 6574 2022 7970 7365 7276 2220 3b20 7468 et "ypserv" ; th │ │ │ +00248fd0: 656e 0a64 6e66 2072 656d 6f76 6520 2d79 en.dnf remove -y │ │ │ +00248fe0: 202d 2d6e 6f61 7574 6f72 656d 6f76 6520 --noautoremove │ │ │ +00248ff0: 2279 7073 6572 7622 0a66 690a 3c2f 636f "ypserv".fi.

< │ │ │ +00249010: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +00249020: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +00249030: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +00249040: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +00249050: 6437 3438 2220 7461 6269 6e64 6578 3d22 d748" tabindex=" │ │ │ +00249060: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +00249070: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +00249080: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +00249090: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +002490a0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +002490b0: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ +002490c0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +002490d0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +00249170: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +002491c0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
..p
│ │ │ +00249200: 6163 6b61 6765 202d 2d72 656d 6f76 653d  ackage --remove=
│ │ │ +00249210: 7970 7365 7276 0a3c 2f63 6f64 653e 3c2f  ypserv.
│ │ │  00249230: 3c2f 7464 3e3c 2f74 723e 3c2f 7462 6f64  
Co │ │ │ +00249150: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +00249180: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +002491a0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +002491b0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +002491d0: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +002491e0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ 00249250: 2f74 723e 3c74 7220 6461 7461 2d74 742d /tr>Remediation Ana │ │ │ -0024a790: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ -0024a7a0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -0024a820: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -0024a840: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -0024a890: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -0024a8c0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
..package --re
│ │ │ -0024a8e0: 6d6f 7665 3d72 7368 2d73 6572 7665 720a  move=rsh-server.
│ │ │ -0024a8f0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -0024a9a0: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ -0024a9b0: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
low
Disr │ │ │ -0024a850: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -0024a860: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -0024a8a0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -0024a8b0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
│ │ │ -0024aa50: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ -0024aaf0: 696e 636c 7564 6520 7265 6d6f 7665 5f72  include remove_r
│ │ │ -0024ab00: 7368 2d73 6572 7665 720a 0a63 6c61 7373  sh-server..class
│ │ │ -0024ab10: 2072 656d 6f76 655f 7273 682d 7365 7276   remove_rsh-serv
│ │ │ -0024ab20: 6572 207b 0a20 2070 6163 6b61 6765 207b  er {.  package {
│ │ │ -0024ab30: 2027 7273 682d 7365 7276 6572 273a 0a20   'rsh-server':. 
│ │ │ -0024ab40: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ -0024ab50: 2770 7572 6765 6427 2c0a 2020 7d0a 7d0a  'purged',.  }.}.
│ │ │ -0024ab60: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -0024ac10: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -0024ac20: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -0024ac30: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -0024aa40: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -0024aa70: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -0024aa80: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -0024aac0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -0024aad0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ -0024ad00: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0024ad10: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -0024ad60: 2d20 6e61 6d65 3a20 2755 6e69 6e73 7461  - name: 'Uninsta
│ │ │ -0024ad70: 6c6c 2072 7368 2d73 6572 7665 7220 5061  ll rsh-server Pa
│ │ │ -0024ad80: 636b 6167 653a 2045 6e73 7572 6520 7273  ckage: Ensure rs
│ │ │ -0024ad90: 682d 7365 7276 6572 2069 7320 7265 6d6f  h-server is remo
│ │ │ -0024ada0: 7665 6427 0a20 2061 6e73 6962 6c65 2e62  ved'.  ansible.b
│ │ │ -0024adb0: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a  uiltin.package:.
│ │ │ -0024adc0: 2020 2020 6e61 6d65 3a20 7273 682d 7365      name: rsh-se
│ │ │ -0024add0: 7276 6572 0a20 2020 2073 7461 7465 3a20  rver.    state: 
│ │ │ -0024ade0: 6162 7365 6e74 0a20 2074 6167 733a 0a20  absent.  tags:. 
│ │ │ -0024adf0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -0024ae00: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ -0024ae10: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ -0024ae20: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -0024ae30: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ -0024ae40: 3830 302d 3533 2d49 412d 3528 3129 2863  800-53-IA-5(1)(c
│ │ │ -0024ae50: 290a 2020 2d20 5043 492d 4453 5376 342d  ).  - PCI-DSSv4-
│ │ │ -0024ae60: 322e 320a 2020 2d20 5043 492d 4453 5376  2.2.  - PCI-DSSv
│ │ │ -0024ae70: 342d 322e 322e 340a 2020 2d20 6469 7361  4-2.2.4.  - disa
│ │ │ -0024ae80: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ -0024ae90: 2068 6967 685f 7365 7665 7269 7479 0a20   high_severity. 
│ │ │ -0024aea0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -0024aeb0: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -0024aec0: 7469 6f6e 0a20 202d 206e 6f5f 7265 626f  tion.  - no_rebo
│ │ │ -0024aed0: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ -0024aee0: 636b 6167 655f 7273 682d 7365 7276 6572  ckage_rsh-server
│ │ │ -0024aef0: 5f72 656d 6f76 6564 0a3c 2f63 6f64 653e  _removed.
│ │ │ -0024af00: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -0024afb0: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ -0024afc0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -0024b040: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr> │ │ │ -0024b080: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 disable
Complexity:low
Disrup │ │ │ -0024ace0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0024acf0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0024ad30: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -0024ad40: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexit │ │ │ -0024b050: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ -0024b070: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ -0024b0a0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ -0024b0c0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
│ │ │ -0024b0f0: 3c63 6f64 653e 0a23 2043 4155 5449 4f4e  .# CAUTION
│ │ │ -0024b100: 3a20 5468 6973 2072 656d 6564 6961 7469  : This remediati
│ │ │ -0024b110: 6f6e 2073 6372 6970 7420 7769 6c6c 2072  on script will r
│ │ │ -0024b120: 656d 6f76 6520 7273 682d 7365 7276 6572  emove rsh-server
│ │ │ -0024b130: 0a23 2066 726f 6d20 7468 6520 7379 7374  .# from the syst
│ │ │ -0024b140: 656d 2c20 616e 6420 6d61 7920 7265 6d6f  em, and may remo
│ │ │ -0024b150: 7665 2061 6e79 2070 6163 6b61 6765 730a  ve any packages.
│ │ │ -0024b160: 2320 7468 6174 2064 6570 656e 6420 6f6e  # that depend on
│ │ │ -0024b170: 2072 7368 2d73 6572 7665 722e 2045 7865   rsh-server. Exe
│ │ │ -0024b180: 6375 7465 2074 6869 730a 2320 7265 6d65  cute this.# reme
│ │ │ -0024b190: 6469 6174 696f 6e20 4146 5445 5220 7465  diation AFTER te
│ │ │ -0024b1a0: 7374 696e 6720 6f6e 2061 206e 6f6e 2d70  sting on a non-p
│ │ │ -0024b1b0: 726f 6475 6374 696f 6e0a 2320 7379 7374  roduction.# syst
│ │ │ -0024b1c0: 656d 210a 0a0a 6966 2072 706d 202d 7120  em!...if rpm -q 
│ │ │ -0024b1d0: 2d2d 7175 6965 7420 2272 7368 2d73 6572  --quiet "rsh-ser
│ │ │ -0024b1e0: 7665 7222 203b 2074 6865 6e0a 646e 6620  ver" ; then.dnf 
│ │ │ -0024b1f0: 7265 6d6f 7665 202d 7920 2d2d 6e6f 6175  remove -y --noau
│ │ │ -0024b200: 746f 7265 6d6f 7665 2022 7273 682d 7365  toremove "rsh-se
│ │ │ -0024b210: 7276 6572 220a 6669 0a3c 2f63 6f64 653e  rver".fi.
│ │ │ +0024a780: 3e52 656d 6564 6961 7469 6f6e 2041 6e73  >Remediation Ans
│ │ │ +0024a790: 6962 6c65 2073 6e69 7070 6574 20e2 87b2  ible snippet ...
│ │ │ +0024a7a0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
Complexity: │ │ │ +0024a870: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +0024a880: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
- name: 'Uninst
│ │ │ +0024a8e0: 616c 6c20 7273 682d 7365 7276 6572 2050  all rsh-server P
│ │ │ +0024a8f0: 6163 6b61 6765 3a20 456e 7375 7265 2072  ackage: Ensure r
│ │ │ +0024a900: 7368 2d73 6572 7665 7220 6973 2072 656d  sh-server is rem
│ │ │ +0024a910: 6f76 6564 270a 2020 616e 7369 626c 652e  oved'.  ansible.
│ │ │ +0024a920: 6275 696c 7469 6e2e 7061 636b 6167 653a  builtin.package:
│ │ │ +0024a930: 0a20 2020 206e 616d 653a 2072 7368 2d73  .    name: rsh-s
│ │ │ +0024a940: 6572 7665 720a 2020 2020 7374 6174 653a  erver.    state:
│ │ │ +0024a950: 2061 6273 656e 740a 2020 7461 6773 3a0a   absent.  tags:.
│ │ │ +0024a960: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +0024a970: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ +0024a980: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ +0024a990: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +0024a9a0: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ +0024a9b0: 2d38 3030 2d35 332d 4941 2d35 2831 2928  -800-53-IA-5(1)(
│ │ │ +0024a9c0: 6329 0a20 202d 2050 4349 2d44 5353 7634  c).  - PCI-DSSv4
│ │ │ +0024a9d0: 2d32 2e32 0a20 202d 2050 4349 2d44 5353  -2.2.  - PCI-DSS
│ │ │ +0024a9e0: 7634 2d32 2e32 2e34 0a20 202d 2064 6973  v4-2.2.4.  - dis
│ │ │ +0024a9f0: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ +0024aa00: 2d20 6869 6768 5f73 6576 6572 6974 790a  - high_severity.
│ │ │ +0024aa10: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +0024aa20: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ +0024aa30: 7074 696f 6e0a 2020 2d20 6e6f 5f72 6562  ption.  - no_reb
│ │ │ +0024aa40: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ +0024aa50: 6163 6b61 6765 5f72 7368 2d73 6572 7665  ackage_rsh-serve
│ │ │ +0024aa60: 725f 7265 6d6f 7665 640a 3c2f 636f 6465  r_removed.
Remedi │ │ │ +0024ab20: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ +0024ab30: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +0024ab40: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +0024ab70: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
low
Disru │ │ │ +0024a850: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +0024a860: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +0024a8a0: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +0024a8b0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ +0024abe0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +0024ac00: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +0024ac30: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +0024abc0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +0024abd0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +0024ac10: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +0024ac20: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

.includ │ │ │ +0024ac70: 6520 7265 6d6f 7665 5f72 7368 2d73 6572 e remove_rsh-ser │ │ │ +0024ac80: 7665 720a 0a63 6c61 7373 2072 656d 6f76 ver..class remov │ │ │ +0024ac90: 655f 7273 682d 7365 7276 6572 207b 0a20 e_rsh-server {. │ │ │ +0024aca0: 2070 6163 6b61 6765 207b 2027 7273 682d package { 'rsh- │ │ │ +0024acb0: 7365 7276 6572 273a 0a20 2020 2065 6e73 server':. ens │ │ │ +0024acc0: 7572 6520 3d26 6774 3b20 2770 7572 6765 ure => 'purge │ │ │ +0024acd0: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 d',. }.}.

Remedi │ │ │ +0024ad90: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ +0024ada0: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
│ │ │ +0024ae20: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +0024ae30: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +0024ae40: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +0024ae80: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +0024ae90: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +0024aeb0: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +0024aec0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.# CAUTIO
│ │ │ +0024aee0: 4e3a 2054 6869 7320 7265 6d65 6469 6174  N: This remediat
│ │ │ +0024aef0: 696f 6e20 7363 7269 7074 2077 696c 6c20  ion script will 
│ │ │ +0024af00: 7265 6d6f 7665 2072 7368 2d73 6572 7665  remove rsh-serve
│ │ │ +0024af10: 720a 2320 6672 6f6d 2074 6865 2073 7973  r.# from the sys
│ │ │ +0024af20: 7465 6d2c 2061 6e64 206d 6179 2072 656d  tem, and may rem
│ │ │ +0024af30: 6f76 6520 616e 7920 7061 636b 6167 6573  ove any packages
│ │ │ +0024af40: 0a23 2074 6861 7420 6465 7065 6e64 206f  .# that depend o
│ │ │ +0024af50: 6e20 7273 682d 7365 7276 6572 2e20 4578  n rsh-server. Ex
│ │ │ +0024af60: 6563 7574 6520 7468 6973 0a23 2072 656d  ecute this.# rem
│ │ │ +0024af70: 6564 6961 7469 6f6e 2041 4654 4552 2074  ediation AFTER t
│ │ │ +0024af80: 6573 7469 6e67 206f 6e20 6120 6e6f 6e2d  esting on a non-
│ │ │ +0024af90: 7072 6f64 7563 7469 6f6e 0a23 2073 7973  production.# sys
│ │ │ +0024afa0: 7465 6d21 0a0a 0a69 6620 7270 6d20 2d71  tem!...if rpm -q
│ │ │ +0024afb0: 202d 2d71 7569 6574 2022 7273 682d 7365   --quiet "rsh-se
│ │ │ +0024afc0: 7276 6572 2220 3b20 7468 656e 0a64 6e66  rver" ; then.dnf
│ │ │ +0024afd0: 2072 656d 6f76 6520 2d79 202d 2d6e 6f61   remove -y --noa
│ │ │ +0024afe0: 7574 6f72 656d 6f76 6520 2272 7368 2d73  utoremove "rsh-s
│ │ │ +0024aff0: 6572 7665 7222 0a66 690a 3c2f 636f 6465  erver".fi.
Remedi │ │ │ +0024b0b0: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ +0024b0c0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +0024b150: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +0024b160: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +0024b180: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +0024b1a0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +0024b1b0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +0024b1f0: 3c70 7265 3e3c 636f 6465 3e0a 0a70 6163
..pac
│ │ │ +0024b200: 6b61 6765 202d 2d72 656d 6f76 653d 7273  kage --remove=rs
│ │ │ +0024b210: 682d 7365 7276 6572 0a3c 2f63 6f64 653e  h-server.
│ │ │  0024b220: 3c2f 7072 653e 3c2f 6469 763e 3c2f 6469  
Re │ │ │ -0024bdb0: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ -0024bdc0: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
│ │ │ -0024be60: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ -0024bf00: 0a70 6163 6b61 6765 202d 2d72 656d 6f76  .package --remov
│ │ │ -0024bf10: 653d 7273 680a 3c2f 636f 6465 3e3c 2f70  e=rsh.

Remediatio │ │ │ -0024bfd0: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ -0024bfe0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
< │ │ │ -0024c0a0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0024c0b0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
│ │ │ -0024be50: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -0024be80: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -0024be90: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -0024bed0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -0024bee0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity │ │ │ -0024c070: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ -0024c090: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ -0024c0c0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ -0024c0e0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -0024c110: 636f 6465 3e0a 696e 636c 7564 6520 7265  code>.include re
│ │ │ -0024c120: 6d6f 7665 5f72 7368 0a0a 636c 6173 7320  move_rsh..class 
│ │ │ -0024c130: 7265 6d6f 7665 5f72 7368 207b 0a20 2070  remove_rsh {.  p
│ │ │ -0024c140: 6163 6b61 6765 207b 2027 7273 6827 3a0a  ackage { 'rsh':.
│ │ │ -0024c150: 2020 2020 656e 7375 7265 203d 2667 743b      ensure =>
│ │ │ -0024c160: 2027 7075 7267 6564 272c 0a20 207d 0a7d   'purged',.  }.}
│ │ │ -0024c170: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Ans │ │ │ -0024c230: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ -0024c240: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -0024c310: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -0024c320: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
- name: 'Uninst
│ │ │ -0024c380: 616c 6c20 7273 6820 5061 636b 6167 653a  all rsh Package:
│ │ │ -0024c390: 2045 6e73 7572 6520 7273 6820 6973 2072   Ensure rsh is r
│ │ │ -0024c3a0: 656d 6f76 6564 270a 2020 616e 7369 626c  emoved'.  ansibl
│ │ │ -0024c3b0: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ -0024c3c0: 653a 0a20 2020 206e 616d 653a 2072 7368  e:.    name: rsh
│ │ │ -0024c3d0: 0a20 2020 2073 7461 7465 3a20 6162 7365  .    state: abse
│ │ │ -0024c3e0: 6e74 0a20 2074 6167 733a 0a20 202d 204e  nt.  tags:.  - N
│ │ │ -0024c3f0: 4953 542d 3830 302d 3137 312d 332e 312e  IST-800-171-3.1.
│ │ │ -0024c400: 3133 0a20 202d 2050 4349 2d44 5353 7634  13.  - PCI-DSSv4
│ │ │ -0024c410: 2d32 2e32 0a20 202d 2050 4349 2d44 5353  -2.2.  - PCI-DSS
│ │ │ -0024c420: 7634 2d32 2e32 2e34 0a20 202d 2064 6973  v4-2.2.4.  - dis
│ │ │ -0024c430: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ -0024c440: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -0024c450: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -0024c460: 696f 6e0a 2020 2d20 6e6f 5f72 6562 6f6f  ion.  - no_reboo
│ │ │ -0024c470: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ -0024c480: 6b61 6765 5f72 7368 5f72 656d 6f76 6564  kage_rsh_removed
│ │ │ -0024c490: 0a20 202d 2075 6e6b 6e6f 776e 5f73 6576  .  - unknown_sev
│ │ │ -0024c4a0: 6572 6974 790a 3c2f 636f 6465 3e3c 2f70  erity.

Remediatio │ │ │ -0024c560: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ -0024c570: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
low
Disru │ │ │ -0024c2f0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -0024c300: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -0024c340: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -0024c350: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ -0024c5f0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -0024c610: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -0024c660: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -0024c690: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -0024c600: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -0024c620: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -0024c670: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -0024c680: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.# CAUTION: T
│ │ │ -0024c6b0: 6869 7320 7265 6d65 6469 6174 696f 6e20  his remediation 
│ │ │ -0024c6c0: 7363 7269 7074 2077 696c 6c20 7265 6d6f  script will remo
│ │ │ -0024c6d0: 7665 2072 7368 0a23 2066 726f 6d20 7468  ve rsh.# from th
│ │ │ -0024c6e0: 6520 7379 7374 656d 2c20 616e 6420 6d61  e system, and ma
│ │ │ -0024c6f0: 7920 7265 6d6f 7665 2061 6e79 2070 6163  y remove any pac
│ │ │ -0024c700: 6b61 6765 730a 2320 7468 6174 2064 6570  kages.# that dep
│ │ │ -0024c710: 656e 6420 6f6e 2072 7368 2e20 4578 6563  end on rsh. Exec
│ │ │ -0024c720: 7574 6520 7468 6973 0a23 2072 656d 6564  ute this.# remed
│ │ │ -0024c730: 6961 7469 6f6e 2041 4654 4552 2074 6573  iation AFTER tes
│ │ │ -0024c740: 7469 6e67 206f 6e20 6120 6e6f 6e2d 7072  ting on a non-pr
│ │ │ -0024c750: 6f64 7563 7469 6f6e 0a23 2073 7973 7465  oduction.# syste
│ │ │ -0024c760: 6d21 0a0a 0a69 6620 7270 6d20 2d71 202d  m!...if rpm -q -
│ │ │ -0024c770: 2d71 7569 6574 2022 7273 6822 203b 2074  -quiet "rsh" ; t
│ │ │ -0024c780: 6865 6e0a 646e 6620 7265 6d6f 7665 202d  hen.dnf remove -
│ │ │ -0024c790: 7920 2d2d 6e6f 6175 746f 7265 6d6f 7665  y --noautoremove
│ │ │ -0024c7a0: 2022 7273 6822 0a66 690a 3c2f 636f 6465   "rsh".fi.
< │ │ │ +0024be60: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0024be70: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +0024bec0: 3c74 723e 3c74 683e 5374 7261 7465 6779
- 
│ │ │ +0024bf00: 6e61 6d65 3a20 2755 6e69 6e73 7461 6c6c  name: 'Uninstall
│ │ │ +0024bf10: 2072 7368 2050 6163 6b61 6765 3a20 456e   rsh Package: En
│ │ │ +0024bf20: 7375 7265 2072 7368 2069 7320 7265 6d6f  sure rsh is remo
│ │ │ +0024bf30: 7665 6427 0a20 2061 6e73 6962 6c65 2e62  ved'.  ansible.b
│ │ │ +0024bf40: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a  uiltin.package:.
│ │ │ +0024bf50: 2020 2020 6e61 6d65 3a20 7273 680a 2020      name: rsh.  
│ │ │ +0024bf60: 2020 7374 6174 653a 2061 6273 656e 740a    state: absent.
│ │ │ +0024bf70: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +0024bf80: 2d38 3030 2d31 3731 2d33 2e31 2e31 330a  -800-171-3.1.13.
│ │ │ +0024bf90: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ +0024bfa0: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ +0024bfb0: 322e 322e 340a 2020 2d20 6469 7361 626c  2.2.4.  - disabl
│ │ │ +0024bfc0: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ +0024bfd0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +0024bfe0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +0024bff0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +0024c000: 6565 6465 640a 2020 2d20 7061 636b 6167  eeded.  - packag
│ │ │ +0024c010: 655f 7273 685f 7265 6d6f 7665 640a 2020  e_rsh_removed.  
│ │ │ +0024c020: 2d20 756e 6b6e 6f77 6e5f 7365 7665 7269  - unknown_severi
│ │ │ +0024c030: 7479 0a3c 2f63 6f64 653e 3c2f 7072 653e  ty.
│ │ │ +0024c040: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation P │ │ │ +0024c0f0: 7570 7065 7420 736e 6970 7065 7420 e287 uppet snippet .. │ │ │ +0024c100: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
C │ │ │ +0024be50: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +0024be80: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +0024be90: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +0024bed0: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ +0024bee0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ +0024c180: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +0024c1a0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +0024c1f0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ +0024c220: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.include remov
│ │ │ +0024c240: 655f 7273 680a 0a63 6c61 7373 2072 656d  e_rsh..class rem
│ │ │ +0024c250: 6f76 655f 7273 6820 7b0a 2020 7061 636b  ove_rsh {.  pack
│ │ │ +0024c260: 6167 6520 7b20 2772 7368 273a 0a20 2020  age { 'rsh':.   
│ │ │ +0024c270: 2065 6e73 7572 6520 3d26 6774 3b20 2770   ensure => 'p
│ │ │ +0024c280: 7572 6765 6427 2c0a 2020 7d0a 7d0a 3c2f  urged',.  }.}.
Re │ │ │ +0024c340: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ +0024c350: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
low
Disr │ │ │ +0024c1b0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +0024c1c0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +0024c200: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ +0024c210: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Comp │ │ │ +0024c3e0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +0024c3f0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +0024c410: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +0024c430: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +0024c440: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +0024c480: 3c70 7265 3e3c 636f 6465 3e0a 2320 4341
.# CA
│ │ │ +0024c490: 5554 494f 4e3a 2054 6869 7320 7265 6d65  UTION: This reme
│ │ │ +0024c4a0: 6469 6174 696f 6e20 7363 7269 7074 2077  diation script w
│ │ │ +0024c4b0: 696c 6c20 7265 6d6f 7665 2072 7368 0a23  ill remove rsh.#
│ │ │ +0024c4c0: 2066 726f 6d20 7468 6520 7379 7374 656d   from the system
│ │ │ +0024c4d0: 2c20 616e 6420 6d61 7920 7265 6d6f 7665  , and may remove
│ │ │ +0024c4e0: 2061 6e79 2070 6163 6b61 6765 730a 2320   any packages.# 
│ │ │ +0024c4f0: 7468 6174 2064 6570 656e 6420 6f6e 2072  that depend on r
│ │ │ +0024c500: 7368 2e20 4578 6563 7574 6520 7468 6973  sh. Execute this
│ │ │ +0024c510: 0a23 2072 656d 6564 6961 7469 6f6e 2041  .# remediation A
│ │ │ +0024c520: 4654 4552 2074 6573 7469 6e67 206f 6e20  FTER testing on 
│ │ │ +0024c530: 6120 6e6f 6e2d 7072 6f64 7563 7469 6f6e  a non-production
│ │ │ +0024c540: 0a23 2073 7973 7465 6d21 0a0a 0a69 6620  .# system!...if 
│ │ │ +0024c550: 7270 6d20 2d71 202d 2d71 7569 6574 2022  rpm -q --quiet "
│ │ │ +0024c560: 7273 6822 203b 2074 6865 6e0a 646e 6620  rsh" ; then.dnf 
│ │ │ +0024c570: 7265 6d6f 7665 202d 7920 2d2d 6e6f 6175  remove -y --noau
│ │ │ +0024c580: 746f 7265 6d6f 7665 2022 7273 6822 0a66  toremove "rsh".f
│ │ │ +0024c590: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +0024c5a0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ +0024c650: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ +0024c660: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +0024c6e0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +0024c700: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +0024c750: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +0024c780: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +0024c6f0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +0024c710: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +0024c760: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +0024c770: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
..package --r
│ │ │ +0024c7a0: 656d 6f76 653d 7273 680a 3c2f 636f 6465  emove=rsh.
Remedi │ │ │ -0024d510: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ -0024d520: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -0024d5b0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -0024d5c0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -0024d5e0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -0024d600: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -0024d610: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -0024d650: 3c70 7265 3e3c 636f 6465 3e0a 0a70 6163
..pac
│ │ │ -0024d660: 6b61 6765 202d 2d72 656d 6f76 653d 7461  kage --remove=ta
│ │ │ -0024d670: 6c6b 2d73 6572 7665 720a 3c2f 636f 6465  lk-server.
Remedi │ │ │ -0024d730: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ -0024d740: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -0024d750: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -0024d780: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -0024d7f0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -0024d810: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -0024d840: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -0024d7d0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -0024d7e0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -0024d820: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -0024d830: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

.includ │ │ │ -0024d880: 6520 7265 6d6f 7665 5f74 616c 6b2d 7365 e remove_talk-se │ │ │ -0024d890: 7276 6572 0a0a 636c 6173 7320 7265 6d6f rver..class remo │ │ │ -0024d8a0: 7665 5f74 616c 6b2d 7365 7276 6572 207b ve_talk-server { │ │ │ -0024d8b0: 0a20 2070 6163 6b61 6765 207b 2027 7461 . package { 'ta │ │ │ -0024d8c0: 6c6b 2d73 6572 7665 7227 3a0a 2020 2020 lk-server':. │ │ │ -0024d8d0: 656e 7375 7265 203d 2667 743b 2027 7075 ensure => 'pu │ │ │ -0024d8e0: 7267 6564 272c 0a20 207d 0a7d 0a3c 2f63 rged',. }.}.

│ │ │ -0024d900: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -0024d9a0: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -0024d9b0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -0024d9c0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -0024da60: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -0024dab0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
- n
│ │ │ -0024daf0: 616d 653a 2027 556e 696e 7374 616c 6c20  ame: 'Uninstall 
│ │ │ -0024db00: 7461 6c6b 2d73 6572 7665 7220 5061 636b  talk-server Pack
│ │ │ -0024db10: 6167 653a 2045 6e73 7572 6520 7461 6c6b  age: Ensure talk
│ │ │ -0024db20: 2d73 6572 7665 7220 6973 2072 656d 6f76  -server is remov
│ │ │ -0024db30: 6564 270a 2020 616e 7369 626c 652e 6275  ed'.  ansible.bu
│ │ │ -0024db40: 696c 7469 6e2e 7061 636b 6167 653a 0a20  iltin.package:. 
│ │ │ -0024db50: 2020 206e 616d 653a 2074 616c 6b2d 7365     name: talk-se
│ │ │ -0024db60: 7276 6572 0a20 2020 2073 7461 7465 3a20  rver.    state: 
│ │ │ -0024db70: 6162 7365 6e74 0a20 2074 6167 733a 0a20  absent.  tags:. 
│ │ │ -0024db80: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ -0024db90: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ -0024dba0: 2e32 2e34 0a20 202d 2064 6973 6162 6c65  .2.4.  - disable
│ │ │ -0024dbb0: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ -0024dbc0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -0024dbd0: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -0024dbe0: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -0024dbf0: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ -0024dc00: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ -0024dc10: 6b61 6765 5f74 616c 6b2d 7365 7276 6572  kage_talk-server
│ │ │ -0024dc20: 5f72 656d 6f76 6564 0a3c 2f63 6f64 653e  _removed.
│ │ │ -0024dc30: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -0024dce0: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ -0024dcf0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -0024dd70: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr> │ │ │ -0024ddb0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 disable
Co │ │ │ -0024da40: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -0024da70: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -0024da90: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -0024daa0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -0024dac0: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -0024dad0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexit │ │ │ -0024dd80: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ -0024dda0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ -0024ddd0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ -0024ddf0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
│ │ │ -0024de20: 3c63 6f64 653e 0a23 2043 4155 5449 4f4e  .# CAUTION
│ │ │ -0024de30: 3a20 5468 6973 2072 656d 6564 6961 7469  : This remediati
│ │ │ -0024de40: 6f6e 2073 6372 6970 7420 7769 6c6c 2072  on script will r
│ │ │ -0024de50: 656d 6f76 6520 7461 6c6b 2d73 6572 7665  emove talk-serve
│ │ │ -0024de60: 720a 2320 6672 6f6d 2074 6865 2073 7973  r.# from the sys
│ │ │ -0024de70: 7465 6d2c 2061 6e64 206d 6179 2072 656d  tem, and may rem
│ │ │ -0024de80: 6f76 6520 616e 7920 7061 636b 6167 6573  ove any packages
│ │ │ -0024de90: 0a23 2074 6861 7420 6465 7065 6e64 206f  .# that depend o
│ │ │ -0024dea0: 6e20 7461 6c6b 2d73 6572 7665 722e 2045  n talk-server. E
│ │ │ -0024deb0: 7865 6375 7465 2074 6869 730a 2320 7265  xecute this.# re
│ │ │ -0024dec0: 6d65 6469 6174 696f 6e20 4146 5445 5220  mediation AFTER 
│ │ │ -0024ded0: 7465 7374 696e 6720 6f6e 2061 206e 6f6e  testing on a non
│ │ │ -0024dee0: 2d70 726f 6475 6374 696f 6e0a 2320 7379  -production.# sy
│ │ │ -0024def0: 7374 656d 210a 0a0a 6966 2072 706d 202d  stem!...if rpm -
│ │ │ -0024df00: 7120 2d2d 7175 6965 7420 2274 616c 6b2d  q --quiet "talk-
│ │ │ -0024df10: 7365 7276 6572 2220 3b20 7468 656e 0a64  server" ; then.d
│ │ │ -0024df20: 6e66 2072 656d 6f76 6520 2d79 202d 2d6e  nf remove -y --n
│ │ │ -0024df30: 6f61 7574 6f72 656d 6f76 6520 2274 616c  oautoremove "tal
│ │ │ -0024df40: 6b2d 7365 7276 6572 220a 6669 0a3c 2f63  k-server".fi.
│ │ │ +0024d5d0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +0024d5f0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +0024d620: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +0024d5b0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +0024d5c0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +0024d5e0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +0024d600: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +0024d610: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ +0024d650: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ +0024d660: 3a20 2755 6e69 6e73 7461 6c6c 2074 616c : 'Uninstall tal │ │ │ +0024d670: 6b2d 7365 7276 6572 2050 6163 6b61 6765 k-server Package │ │ │ +0024d680: 3a20 456e 7375 7265 2074 616c 6b2d 7365 : Ensure talk-se │ │ │ +0024d690: 7276 6572 2069 7320 7265 6d6f 7665 6427 rver is removed' │ │ │ +0024d6a0: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74 . ansible.built │ │ │ +0024d6b0: 696e 2e70 6163 6b61 6765 3a0a 2020 2020 in.package:. │ │ │ +0024d6c0: 6e61 6d65 3a20 7461 6c6b 2d73 6572 7665 name: talk-serve │ │ │ +0024d6d0: 720a 2020 2020 7374 6174 653a 2061 6273 r. state: abs │ │ │ +0024d6e0: 656e 740a 2020 7461 6773 3a0a 2020 2d20 ent. tags:. - │ │ │ +0024d6f0: 5043 492d 4453 5376 342d 322e 320a 2020 PCI-DSSv4-2.2. │ │ │ +0024d700: 2d20 5043 492d 4453 5376 342d 322e 322e - PCI-DSSv4-2.2. │ │ │ +0024d710: 340a 2020 2d20 6469 7361 626c 655f 7374 4. - disable_st │ │ │ +0024d720: 7261 7465 6779 0a20 202d 206c 6f77 5f63 rategy. - low_c │ │ │ +0024d730: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f omplexity. - lo │ │ │ +0024d740: 775f 6469 7372 7570 7469 6f6e 0a20 202d w_disruption. - │ │ │ +0024d750: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ +0024d760: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ +0024d770: 6565 6465 640a 2020 2d20 7061 636b 6167 eeded. - packag │ │ │ +0024d780: 655f 7461 6c6b 2d73 6572 7665 725f 7265 e_talk-server_re │ │ │ +0024d790: 6d6f 7665 640a 3c2f 636f 6465 3e3c 2f70 moved.

Remediatio │ │ │ +0024d850: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ +0024d860: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ +0024d8f0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +0024d910: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +0024d920: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0024d930: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +0024d940: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +0024d960: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +0024d990: 636f 6465 3e0a 696e 636c 7564 6520 7265  code>.include re
│ │ │ +0024d9a0: 6d6f 7665 5f74 616c 6b2d 7365 7276 6572  move_talk-server
│ │ │ +0024d9b0: 0a0a 636c 6173 7320 7265 6d6f 7665 5f74  ..class remove_t
│ │ │ +0024d9c0: 616c 6b2d 7365 7276 6572 207b 0a20 2070  alk-server {.  p
│ │ │ +0024d9d0: 6163 6b61 6765 207b 2027 7461 6c6b 2d73  ackage { 'talk-s
│ │ │ +0024d9e0: 6572 7665 7227 3a0a 2020 2020 656e 7375  erver':.    ensu
│ │ │ +0024d9f0: 7265 203d 2667 743b 2027 7075 7267 6564  re => 'purged
│ │ │ +0024da00: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e  ',.  }.}.
│ │ │ +0024da10: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +0024dac0: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ +0024dad0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +0024db50: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +0024db60: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +0024db80: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +0024db90: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +0024dbb0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +0024dbd0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ +0024dc00: 3c63 6f64 653e 0a23 2043 4155 5449 4f4e  .# CAUTION
│ │ │ +0024dc10: 3a20 5468 6973 2072 656d 6564 6961 7469  : This remediati
│ │ │ +0024dc20: 6f6e 2073 6372 6970 7420 7769 6c6c 2072  on script will r
│ │ │ +0024dc30: 656d 6f76 6520 7461 6c6b 2d73 6572 7665  emove talk-serve
│ │ │ +0024dc40: 720a 2320 6672 6f6d 2074 6865 2073 7973  r.# from the sys
│ │ │ +0024dc50: 7465 6d2c 2061 6e64 206d 6179 2072 656d  tem, and may rem
│ │ │ +0024dc60: 6f76 6520 616e 7920 7061 636b 6167 6573  ove any packages
│ │ │ +0024dc70: 0a23 2074 6861 7420 6465 7065 6e64 206f  .# that depend o
│ │ │ +0024dc80: 6e20 7461 6c6b 2d73 6572 7665 722e 2045  n talk-server. E
│ │ │ +0024dc90: 7865 6375 7465 2074 6869 730a 2320 7265  xecute this.# re
│ │ │ +0024dca0: 6d65 6469 6174 696f 6e20 4146 5445 5220  mediation AFTER 
│ │ │ +0024dcb0: 7465 7374 696e 6720 6f6e 2061 206e 6f6e  testing on a non
│ │ │ +0024dcc0: 2d70 726f 6475 6374 696f 6e0a 2320 7379  -production.# sy
│ │ │ +0024dcd0: 7374 656d 210a 0a0a 6966 2072 706d 202d  stem!...if rpm -
│ │ │ +0024dce0: 7120 2d2d 7175 6965 7420 2274 616c 6b2d  q --quiet "talk-
│ │ │ +0024dcf0: 7365 7276 6572 2220 3b20 7468 656e 0a64  server" ; then.d
│ │ │ +0024dd00: 6e66 2072 656d 6f76 6520 2d79 202d 2d6e  nf remove -y --n
│ │ │ +0024dd10: 6f61 7574 6f72 656d 6f76 6520 2274 616c  oautoremove "tal
│ │ │ +0024dd20: 6b2d 7365 7276 6572 220a 6669 0a3c 2f63  k-server".fi.
│ │ │ +0024dd40: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +0024dde0: 6564 6961 7469 6f6e 2041 6e61 636f 6e64 ediation Anacond │ │ │ +0024ddf0: 6120 736e 6970 7065 7420 e287 b23c 2f61 a snippet ...
< │ │ │ +0024de90: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0024dea0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +0024def0: 3c74 723e 3c74 683e 5374 7261 7465 6779
..
│ │ │ +0024df30: 7061 636b 6167 6520 2d2d 7265 6d6f 7665  package --remove
│ │ │ +0024df40: 3d74 616c 6b2d 7365 7276 6572 0a3c 2f63  =talk-server.
│ │ │ 0024df60: 3c2f 6469 763e 3c2f 7464 3e3c 2f74 723e │ │ │ 0024df70: 3c2f 7462 6f64 793e 3c2f 7461 626c 653e
C │ │ │ +0024de80: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +0024deb0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +0024dec0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +0024df00: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ +0024df10: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ 0024df80: 3c2f 7464 3e3c 2f74 723e 3c74 7220 6461 Remed │ │ │ -0024ea10: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ -0024ea20: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -0024ea30: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -0024eab0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -0024eae0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -0024eb00: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -0024eb10: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -0024eb30: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -0024eb40: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
..pa
│ │ │ -0024eb60: 636b 6167 6520 2d2d 7265 6d6f 7665 3d74  ckage --remove=t
│ │ │ -0024eb70: 616c 6b0a 3c2f 636f 6465 3e3c 2f70 7265  alk.
Remediation │ │ │ -0024ec30: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ -0024ec40: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -0024ecc0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -0024ece0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -0024ed30: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -0024ed60: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -0024ecd0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -0024ecf0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -0024ed40: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -0024ed50: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.include remo
│ │ │ -0024ed80: 7665 5f74 616c 6b0a 0a63 6c61 7373 2072  ve_talk..class r
│ │ │ -0024ed90: 656d 6f76 655f 7461 6c6b 207b 0a20 2070  emove_talk {.  p
│ │ │ -0024eda0: 6163 6b61 6765 207b 2027 7461 6c6b 273a  ackage { 'talk':
│ │ │ -0024edb0: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ -0024edc0: 3b20 2770 7572 6765 6427 2c0a 2020 7d0a  ; 'purged',.  }.
│ │ │ -0024edd0: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -0024ede0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -0024ee90: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -0024eea0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -0024ef20: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -0024ef40: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -0024ef90: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -0024efc0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: 'Unins
│ │ │ -0024efe0: 7461 6c6c 2074 616c 6b20 5061 636b 6167  tall talk Packag
│ │ │ -0024eff0: 653a 2045 6e73 7572 6520 7461 6c6b 2069  e: Ensure talk i
│ │ │ -0024f000: 7320 7265 6d6f 7665 6427 0a20 2061 6e73  s removed'.  ans
│ │ │ -0024f010: 6962 6c65 2e62 7569 6c74 696e 2e70 6163  ible.builtin.pac
│ │ │ -0024f020: 6b61 6765 3a0a 2020 2020 6e61 6d65 3a20  kage:.    name: 
│ │ │ -0024f030: 7461 6c6b 0a20 2020 2073 7461 7465 3a20  talk.    state: 
│ │ │ -0024f040: 6162 7365 6e74 0a20 2074 6167 733a 0a20  absent.  tags:. 
│ │ │ -0024f050: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ -0024f060: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ -0024f070: 2e32 2e34 0a20 202d 2064 6973 6162 6c65  .2.4.  - disable
│ │ │ -0024f080: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ -0024f090: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -0024f0a0: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -0024f0b0: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -0024f0c0: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ -0024f0d0: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ -0024f0e0: 6b61 6765 5f74 616c 6b5f 7265 6d6f 7665  kage_talk_remove
│ │ │ -0024f0f0: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ -0024f100: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Sh │ │ │ -0024f1b0: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
low
Disr │ │ │ -0024ef50: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -0024ef60: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -0024efa0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -0024efb0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
│ │ │ -0024f250: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ -0024f2f0: 2320 4341 5554 494f 4e3a 2054 6869 7320  # CAUTION: This 
│ │ │ -0024f300: 7265 6d65 6469 6174 696f 6e20 7363 7269  remediation scri
│ │ │ -0024f310: 7074 2077 696c 6c20 7265 6d6f 7665 2074  pt will remove t
│ │ │ -0024f320: 616c 6b0a 2320 6672 6f6d 2074 6865 2073  alk.# from the s
│ │ │ -0024f330: 7973 7465 6d2c 2061 6e64 206d 6179 2072  ystem, and may r
│ │ │ -0024f340: 656d 6f76 6520 616e 7920 7061 636b 6167  emove any packag
│ │ │ -0024f350: 6573 0a23 2074 6861 7420 6465 7065 6e64  es.# that depend
│ │ │ -0024f360: 206f 6e20 7461 6c6b 2e20 4578 6563 7574   on talk. Execut
│ │ │ -0024f370: 6520 7468 6973 0a23 2072 656d 6564 6961  e this.# remedia
│ │ │ -0024f380: 7469 6f6e 2041 4654 4552 2074 6573 7469  tion AFTER testi
│ │ │ -0024f390: 6e67 206f 6e20 6120 6e6f 6e2d 7072 6f64  ng on a non-prod
│ │ │ -0024f3a0: 7563 7469 6f6e 0a23 2073 7973 7465 6d21  uction.# system!
│ │ │ -0024f3b0: 0a0a 0a69 6620 7270 6d20 2d71 202d 2d71  ...if rpm -q --q
│ │ │ -0024f3c0: 7569 6574 2022 7461 6c6b 2220 3b20 7468  uiet "talk" ; th
│ │ │ -0024f3d0: 656e 0a64 6e66 2072 656d 6f76 6520 2d79  en.dnf remove -y
│ │ │ -0024f3e0: 202d 2d6e 6f61 7574 6f72 656d 6f76 6520   --noautoremove 
│ │ │ -0024f3f0: 2274 616c 6b22 0a66 690a 3c2f 636f 6465  "talk".fi.
│ │ │ -0024f240: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -0024f270: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -0024f280: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -0024f2c0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -0024f2d0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Comp │ │ │ +0024eab0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +0024eac0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +0024eae0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +0024eb00: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +0024eb10: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +0024eb50: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ +0024eb60: 653a 2027 556e 696e 7374 616c 6c20 7461  e: 'Uninstall ta
│ │ │ +0024eb70: 6c6b 2050 6163 6b61 6765 3a20 456e 7375  lk Package: Ensu
│ │ │ +0024eb80: 7265 2074 616c 6b20 6973 2072 656d 6f76  re talk is remov
│ │ │ +0024eb90: 6564 270a 2020 616e 7369 626c 652e 6275  ed'.  ansible.bu
│ │ │ +0024eba0: 696c 7469 6e2e 7061 636b 6167 653a 0a20  iltin.package:. 
│ │ │ +0024ebb0: 2020 206e 616d 653a 2074 616c 6b0a 2020     name: talk.  
│ │ │ +0024ebc0: 2020 7374 6174 653a 2061 6273 656e 740a    state: absent.
│ │ │ +0024ebd0: 2020 7461 6773 3a0a 2020 2d20 5043 492d    tags:.  - PCI-
│ │ │ +0024ebe0: 4453 5376 342d 322e 320a 2020 2d20 5043  DSSv4-2.2.  - PC
│ │ │ +0024ebf0: 492d 4453 5376 342d 322e 322e 340a 2020  I-DSSv4-2.2.4.  
│ │ │ +0024ec00: 2d20 6469 7361 626c 655f 7374 7261 7465  - disable_strate
│ │ │ +0024ec10: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ +0024ec20: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ +0024ec30: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ +0024ec40: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +0024ec50: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +0024ec60: 640a 2020 2d20 7061 636b 6167 655f 7461  d.  - package_ta
│ │ │ +0024ec70: 6c6b 5f72 656d 6f76 6564 0a3c 2f63 6f64  lk_removed.
Remed │ │ │ +0024ed30: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ +0024ed40: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ +0024edf0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +0024ee10: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +0024ee40: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +0024edd0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +0024ede0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +0024ee00: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +0024ee20: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +0024ee30: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ +0024ee70: 7072 653e 3c63 6f64 653e 0a69 6e63 6c75 pre>.inclu │ │ │ +0024ee80: 6465 2072 656d 6f76 655f 7461 6c6b 0a0a de remove_talk.. │ │ │ +0024ee90: 636c 6173 7320 7265 6d6f 7665 5f74 616c class remove_tal │ │ │ +0024eea0: 6b20 7b0a 2020 7061 636b 6167 6520 7b20 k {. package { │ │ │ +0024eeb0: 2774 616c 6b27 3a0a 2020 2020 656e 7375 'talk':. ensu │ │ │ +0024eec0: 7265 203d 2667 743b 2027 7075 7267 6564 re => 'purged │ │ │ +0024eed0: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e ',. }.}. │ │ │ +0024eee0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063
Remedia │ │ │ +0024ef90: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ +0024efa0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +0024f020: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +0024f030: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +0024f050: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +0024f060: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +0024f080: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +0024f0a0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ +0024f0d0: 3c63 6f64 653e 0a23 2043 4155 5449 4f4e  .# CAUTION
│ │ │ +0024f0e0: 3a20 5468 6973 2072 656d 6564 6961 7469  : This remediati
│ │ │ +0024f0f0: 6f6e 2073 6372 6970 7420 7769 6c6c 2072  on script will r
│ │ │ +0024f100: 656d 6f76 6520 7461 6c6b 0a23 2066 726f  emove talk.# fro
│ │ │ +0024f110: 6d20 7468 6520 7379 7374 656d 2c20 616e  m the system, an
│ │ │ +0024f120: 6420 6d61 7920 7265 6d6f 7665 2061 6e79  d may remove any
│ │ │ +0024f130: 2070 6163 6b61 6765 730a 2320 7468 6174   packages.# that
│ │ │ +0024f140: 2064 6570 656e 6420 6f6e 2074 616c 6b2e   depend on talk.
│ │ │ +0024f150: 2045 7865 6375 7465 2074 6869 730a 2320   Execute this.# 
│ │ │ +0024f160: 7265 6d65 6469 6174 696f 6e20 4146 5445  remediation AFTE
│ │ │ +0024f170: 5220 7465 7374 696e 6720 6f6e 2061 206e  R testing on a n
│ │ │ +0024f180: 6f6e 2d70 726f 6475 6374 696f 6e0a 2320  on-production.# 
│ │ │ +0024f190: 7379 7374 656d 210a 0a0a 6966 2072 706d  system!...if rpm
│ │ │ +0024f1a0: 202d 7120 2d2d 7175 6965 7420 2274 616c   -q --quiet "tal
│ │ │ +0024f1b0: 6b22 203b 2074 6865 6e0a 646e 6620 7265  k" ; then.dnf re
│ │ │ +0024f1c0: 6d6f 7665 202d 7920 2d2d 6e6f 6175 746f  move -y --noauto
│ │ │ +0024f1d0: 7265 6d6f 7665 2022 7461 6c6b 220a 6669  remove "talk".fi
│ │ │ +0024f1e0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Ana │ │ │ +0024f2a0: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ +0024f2b0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ +0024f330: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +0024f350: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +0024f3a0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ +0024f3d0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
..package --re
│ │ │ +0024f3f0: 6d6f 7665 3d74 616c 6b0a 3c2f 636f 6465  move=talk.
low
Disr │ │ │ +0024f360: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +0024f370: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +0024f3b0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ +0024f3c0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Remed │ │ │ -00250c00: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ -00250c10: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -00250c20: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -00250ca0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -00250cd0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -00250cf0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -00250d00: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -00250d20: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -00250d30: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
..pa
│ │ │ -00250d50: 636b 6167 6520 2d2d 7265 6d6f 7665 3d74  ckage --remove=t
│ │ │ -00250d60: 656c 6e65 742d 7365 7276 6572 0a3c 2f63  elnet-server.
│ │ │ -00250d80: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -00250e20: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ -00250e30: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -00250e40: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -00250ec0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -00250ef0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -00250f10: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -00250f20: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -00250f40: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -00250f50: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.inc
│ │ │ -00250f70: 6c75 6465 2072 656d 6f76 655f 7465 6c6e  lude remove_teln
│ │ │ -00250f80: 6574 2d73 6572 7665 720a 0a63 6c61 7373  et-server..class
│ │ │ -00250f90: 2072 656d 6f76 655f 7465 6c6e 6574 2d73   remove_telnet-s
│ │ │ -00250fa0: 6572 7665 7220 7b0a 2020 7061 636b 6167  erver {.  packag
│ │ │ -00250fb0: 6520 7b20 2774 656c 6e65 742d 7365 7276  e { 'telnet-serv
│ │ │ -00250fc0: 6572 273a 0a20 2020 2065 6e73 7572 6520  er':.    ensure 
│ │ │ -00250fd0: 3d26 6774 3b20 2770 7572 6765 6427 2c0a  => 'purged',.
│ │ │ -00250fe0: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediatio │ │ │ -002510a0: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ -002510b0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -00251130: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -00251140: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -00251160: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -00251170: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -00251190: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -002511b0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ -002511e0: 3c63 6f64 653e 2d20 6e61 6d65 3a20 2755  - name: 'U
│ │ │ -002511f0: 6e69 6e73 7461 6c6c 2074 656c 6e65 742d  ninstall telnet-
│ │ │ -00251200: 7365 7276 6572 2050 6163 6b61 6765 3a20  server Package: 
│ │ │ -00251210: 456e 7375 7265 2074 656c 6e65 742d 7365  Ensure telnet-se
│ │ │ -00251220: 7276 6572 2069 7320 7265 6d6f 7665 6427  rver is removed'
│ │ │ -00251230: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -00251240: 696e 2e70 6163 6b61 6765 3a0a 2020 2020  in.package:.    
│ │ │ -00251250: 6e61 6d65 3a20 7465 6c6e 6574 2d73 6572  name: telnet-ser
│ │ │ -00251260: 7665 720a 2020 2020 7374 6174 653a 2061  ver.    state: a
│ │ │ -00251270: 6273 656e 740a 2020 7461 6773 3a0a 2020  bsent.  tags:.  
│ │ │ -00251280: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -00251290: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -002512a0: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ -002512b0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -002512c0: 2d37 2862 290a 2020 2d20 5043 492d 4453  -7(b).  - PCI-DS
│ │ │ -002512d0: 532d 5265 712d 322e 322e 320a 2020 2d20  S-Req-2.2.2.  - 
│ │ │ -002512e0: 5043 492d 4453 5376 342d 322e 320a 2020  PCI-DSSv4-2.2.  
│ │ │ -002512f0: 2d20 5043 492d 4453 5376 342d 322e 322e  - PCI-DSSv4-2.2.
│ │ │ -00251300: 340a 2020 2d20 6469 7361 626c 655f 7374  4.  - disable_st
│ │ │ -00251310: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ -00251320: 7365 7665 7269 7479 0a20 202d 206c 6f77  severity.  - low
│ │ │ -00251330: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -00251340: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -00251350: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -00251360: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ -00251370: 7465 6c6e 6574 2d73 6572 7665 725f 7265  telnet-server_re
│ │ │ -00251380: 6d6f 7665 640a 3c2f 636f 6465 3e3c 2f70  moved.

Remediatio │ │ │ -00251440: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ -00251450: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -002514d0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -002514f0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -00251540: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -00251570: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -002514e0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -00251500: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -00251550: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -00251560: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.# CAUTION: T
│ │ │ -00251590: 6869 7320 7265 6d65 6469 6174 696f 6e20  his remediation 
│ │ │ -002515a0: 7363 7269 7074 2077 696c 6c20 7265 6d6f  script will remo
│ │ │ -002515b0: 7665 2074 656c 6e65 742d 7365 7276 6572  ve telnet-server
│ │ │ -002515c0: 0a23 2066 726f 6d20 7468 6520 7379 7374  .# from the syst
│ │ │ -002515d0: 656d 2c20 616e 6420 6d61 7920 7265 6d6f  em, and may remo
│ │ │ -002515e0: 7665 2061 6e79 2070 6163 6b61 6765 730a  ve any packages.
│ │ │ -002515f0: 2320 7468 6174 2064 6570 656e 6420 6f6e  # that depend on
│ │ │ -00251600: 2074 656c 6e65 742d 7365 7276 6572 2e20   telnet-server. 
│ │ │ -00251610: 4578 6563 7574 6520 7468 6973 0a23 2072  Execute this.# r
│ │ │ -00251620: 656d 6564 6961 7469 6f6e 2041 4654 4552  emediation AFTER
│ │ │ -00251630: 2074 6573 7469 6e67 206f 6e20 6120 6e6f   testing on a no
│ │ │ -00251640: 6e2d 7072 6f64 7563 7469 6f6e 0a23 2073  n-production.# s
│ │ │ -00251650: 7973 7465 6d21 0a0a 0a69 6620 7270 6d20  ystem!...if rpm 
│ │ │ -00251660: 2d71 202d 2d71 7569 6574 2022 7465 6c6e  -q --quiet "teln
│ │ │ -00251670: 6574 2d73 6572 7665 7222 203b 2074 6865  et-server" ; the
│ │ │ -00251680: 6e0a 646e 6620 7265 6d6f 7665 202d 7920  n.dnf remove -y 
│ │ │ -00251690: 2d2d 6e6f 6175 746f 7265 6d6f 7665 2022  --noautoremove "
│ │ │ -002516a0: 7465 6c6e 6574 2d73 6572 7665 7222 0a66  telnet-server".f
│ │ │ -002516b0: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +00250c00: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ +00250c10: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +00250ca0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +00250cb0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +00250cd0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +00250cf0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +00250d00: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +00250d40: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ +00250d50: 653a 2027 556e 696e 7374 616c 6c20 7465  e: 'Uninstall te
│ │ │ +00250d60: 6c6e 6574 2d73 6572 7665 7220 5061 636b  lnet-server Pack
│ │ │ +00250d70: 6167 653a 2045 6e73 7572 6520 7465 6c6e  age: Ensure teln
│ │ │ +00250d80: 6574 2d73 6572 7665 7220 6973 2072 656d  et-server is rem
│ │ │ +00250d90: 6f76 6564 270a 2020 616e 7369 626c 652e  oved'.  ansible.
│ │ │ +00250da0: 6275 696c 7469 6e2e 7061 636b 6167 653a  builtin.package:
│ │ │ +00250db0: 0a20 2020 206e 616d 653a 2074 656c 6e65  .    name: telne
│ │ │ +00250dc0: 742d 7365 7276 6572 0a20 2020 2073 7461  t-server.    sta
│ │ │ +00250dd0: 7465 3a20 6162 7365 6e74 0a20 2074 6167  te: absent.  tag
│ │ │ +00250de0: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +00250df0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ +00250e00: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +00250e10: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +00250e20: 3533 2d43 4d2d 3728 6229 0a20 202d 2050  53-CM-7(b).  - P
│ │ │ +00250e30: 4349 2d44 5353 2d52 6571 2d32 2e32 2e32  CI-DSS-Req-2.2.2
│ │ │ +00250e40: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ +00250e50: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ +00250e60: 2d32 2e32 2e34 0a20 202d 2064 6973 6162  -2.2.4.  - disab
│ │ │ +00250e70: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ +00250e80: 6869 6768 5f73 6576 6572 6974 790a 2020  high_severity.  
│ │ │ +00250e90: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +00250ea0: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +00250eb0: 696f 6e0a 2020 2d20 6e6f 5f72 6562 6f6f  ion.  - no_reboo
│ │ │ +00250ec0: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ +00250ed0: 6b61 6765 5f74 656c 6e65 742d 7365 7276  kage_telnet-serv
│ │ │ +00250ee0: 6572 5f72 656d 6f76 6564 0a3c 2f63 6f64  er_removed.
Remed │ │ │ +00250fa0: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ +00250fb0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ +00251060: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +00251080: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +002510b0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +00251040: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +00251050: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +00251070: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +00251090: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +002510a0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ +002510e0: 7072 653e 3c63 6f64 653e 0a69 6e63 6c75 pre>.inclu │ │ │ +002510f0: 6465 2072 656d 6f76 655f 7465 6c6e 6574 de remove_telnet │ │ │ +00251100: 2d73 6572 7665 720a 0a63 6c61 7373 2072 -server..class r │ │ │ +00251110: 656d 6f76 655f 7465 6c6e 6574 2d73 6572 emove_telnet-ser │ │ │ +00251120: 7665 7220 7b0a 2020 7061 636b 6167 6520 ver {. package │ │ │ +00251130: 7b20 2774 656c 6e65 742d 7365 7276 6572 { 'telnet-server │ │ │ +00251140: 273a 0a20 2020 2065 6e73 7572 6520 3d26 ':. ensure =& │ │ │ +00251150: 6774 3b20 2770 7572 6765 6427 2c0a 2020 gt; 'purged',. │ │ │ +00251160: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265 }.}.
Remediation │ │ │ +00251220: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ +00251230: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ +00251300: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00251310: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.# CAUTION: Thi
│ │ │ +00251370: 7320 7265 6d65 6469 6174 696f 6e20 7363  s remediation sc
│ │ │ +00251380: 7269 7074 2077 696c 6c20 7265 6d6f 7665  ript will remove
│ │ │ +00251390: 2074 656c 6e65 742d 7365 7276 6572 0a23   telnet-server.#
│ │ │ +002513a0: 2066 726f 6d20 7468 6520 7379 7374 656d   from the system
│ │ │ +002513b0: 2c20 616e 6420 6d61 7920 7265 6d6f 7665  , and may remove
│ │ │ +002513c0: 2061 6e79 2070 6163 6b61 6765 730a 2320   any packages.# 
│ │ │ +002513d0: 7468 6174 2064 6570 656e 6420 6f6e 2074  that depend on t
│ │ │ +002513e0: 656c 6e65 742d 7365 7276 6572 2e20 4578  elnet-server. Ex
│ │ │ +002513f0: 6563 7574 6520 7468 6973 0a23 2072 656d  ecute this.# rem
│ │ │ +00251400: 6564 6961 7469 6f6e 2041 4654 4552 2074  ediation AFTER t
│ │ │ +00251410: 6573 7469 6e67 206f 6e20 6120 6e6f 6e2d  esting on a non-
│ │ │ +00251420: 7072 6f64 7563 7469 6f6e 0a23 2073 7973  production.# sys
│ │ │ +00251430: 7465 6d21 0a0a 0a69 6620 7270 6d20 2d71  tem!...if rpm -q
│ │ │ +00251440: 202d 2d71 7569 6574 2022 7465 6c6e 6574   --quiet "telnet
│ │ │ +00251450: 2d73 6572 7665 7222 203b 2074 6865 6e0a  -server" ; then.
│ │ │ +00251460: 646e 6620 7265 6d6f 7665 202d 7920 2d2d  dnf remove -y --
│ │ │ +00251470: 6e6f 6175 746f 7265 6d6f 7665 2022 7465  noautoremove "te
│ │ │ +00251480: 6c6e 6574 2d73 6572 7665 7222 0a66 690a  lnet-server".fi.
│ │ │ +00251490: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +00251540: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ +00251550: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ +00251560: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
low
Disru │ │ │ +002512e0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +002512f0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00251330: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +00251340: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexity: │ │ │ +00251630: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00251640: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
..package --rem
│ │ │ +002516a0: 6f76 653d 7465 6c6e 6574 2d73 6572 7665  ove=telnet-serve
│ │ │ +002516b0: 720a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  r.
< │ │ │ 002516c0: 2f64 6976 3e3c 2f64 6976 3e3c 2f74 643e /div> │ │ │ 002516d0: 3c2f 7472 3e3c 2f74 626f 6479 3e3c 2f74 < │ │ │ 002516f0: 7472 2064 6174 612d 7474 2d69 643d 2278 tr data-tt-id="x │ │ │ 00251700: 6363 6466 5f6f 7267 2e73 7367 7072 6f6a ccdf_org.ssgproj │ │ │ 00251710: 6563 742e 636f 6e74 656e 745f 7275 6c65 ect.content_rule │ │ │ 00251720: 5f70 6163 6b61 6765 5f74 656c 6e65 745f _package_telnet_ │ │ │ @@ -152099,175 +152099,175 @@ │ │ │ 00252220: 7461 7267 6574 3d22 2369 6437 3735 2220 target="#id775" │ │ │ 00252230: 7461 6269 6e64 6578 3d22 3022 2072 6f6c tabindex="0" rol │ │ │ 00252240: 653d 2262 7574 746f 6e22 2061 7269 612d e="button" aria- │ │ │ 00252250: 6578 7061 6e64 6564 3d22 6661 6c73 6522 expanded="false" │ │ │ 00252260: 2074 6974 6c65 3d22 4163 7469 7661 7465 title="Activate │ │ │ 00252270: 2074 6f20 7265 7665 616c 2220 6872 6566 to reveal" href │ │ │ 00252280: 3d22 2321 223e 5265 6d65 6469 6174 696f ="#!">Remediatio │ │ │ -00252290: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ -002522a0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -00252320: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 < │ │ │ -002523b0: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -002523c0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
low
Disru │ │ │ +00251610: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00251620: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00251660: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +00251670: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexi │ │ │ -00252330: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -00252340: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ -00252380: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -00252390: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
..package
│ │ │ -002523e0: 202d 2d72 656d 6f76 653d 7465 6c6e 6574   --remove=telnet
│ │ │ -002523f0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Pup │ │ │ -002524b0: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ -002524c0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -00252590: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -002525a0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -002525f0: 0a69 6e63 6c75 6465 2072 656d 6f76 655f  .include remove_
│ │ │ -00252600: 7465 6c6e 6574 0a0a 636c 6173 7320 7265  telnet..class re
│ │ │ -00252610: 6d6f 7665 5f74 656c 6e65 7420 7b0a 2020  move_telnet {.  
│ │ │ -00252620: 7061 636b 6167 6520 7b20 2774 656c 6e65  package { 'telne
│ │ │ -00252630: 7427 3a0a 2020 2020 656e 7375 7265 203d  t':.    ensure =
│ │ │ -00252640: 2667 743b 2027 7075 7267 6564 272c 0a20  > 'purged',. 
│ │ │ -00252650: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.Remediation
│ │ │ -00252710: 2041 6e73 6962 6c65 2073 6e69 7070 6574   Ansible snippet
│ │ │ -00252720: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
< │ │ │ -002527e0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -002527f0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
Complexity:low
Disrup │ │ │ -00252570: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00252580: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -002525c0: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -002525d0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexity │ │ │ -002527b0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ -002527d0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ -00252800: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ -00252820: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -00252850: 636f 6465 3e2d 206e 616d 653a 2027 5265  code>- name: 'Re
│ │ │ -00252860: 6d6f 7665 2074 656c 6e65 7420 436c 6965  move telnet Clie
│ │ │ -00252870: 6e74 733a 2045 6e73 7572 6520 7465 6c6e  nts: Ensure teln
│ │ │ -00252880: 6574 2069 7320 7265 6d6f 7665 6427 0a20  et is removed'. 
│ │ │ -00252890: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -002528a0: 2e70 6163 6b61 6765 3a0a 2020 2020 6e61  .package:.    na
│ │ │ -002528b0: 6d65 3a20 7465 6c6e 6574 0a20 2020 2073  me: telnet.    s
│ │ │ -002528c0: 7461 7465 3a20 6162 7365 6e74 0a20 2074  tate: absent.  t
│ │ │ -002528d0: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -002528e0: 302d 3137 312d 332e 312e 3133 0a20 202d  0-171-3.1.13.  -
│ │ │ -002528f0: 2050 4349 2d44 5353 7634 2d32 2e32 0a20   PCI-DSSv4-2.2. 
│ │ │ -00252900: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ -00252910: 2e34 0a20 202d 2064 6973 6162 6c65 5f73  .4.  - disable_s
│ │ │ -00252920: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ -00252930: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ -00252940: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -00252950: 2d20 6c6f 775f 7365 7665 7269 7479 0a20  - low_severity. 
│ │ │ -00252960: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -00252970: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ -00252980: 7465 6c6e 6574 5f72 656d 6f76 6564 0a3c  telnet_removed.<
│ │ │ -00252990: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -00252a40: 656d 6564 6961 7469 6f6e 2053 6865 6c6c emediation Shell │ │ │ -00252a50: 2073 6372 6970 7420 e287 b23c 2f61 3e3c script ...< │ │ │ -00252a60: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -00252ae0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -00252b10: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -00252b30: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -00252b40: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -00252b60: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -00252b70: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.# C
│ │ │ -00252b90: 4155 5449 4f4e 3a20 5468 6973 2072 656d  AUTION: This rem
│ │ │ -00252ba0: 6564 6961 7469 6f6e 2073 6372 6970 7420  ediation script 
│ │ │ -00252bb0: 7769 6c6c 2072 656d 6f76 6520 7465 6c6e  will remove teln
│ │ │ -00252bc0: 6574 0a23 2066 726f 6d20 7468 6520 7379  et.# from the sy
│ │ │ -00252bd0: 7374 656d 2c20 616e 6420 6d61 7920 7265  stem, and may re
│ │ │ -00252be0: 6d6f 7665 2061 6e79 2070 6163 6b61 6765  move any package
│ │ │ -00252bf0: 730a 2320 7468 6174 2064 6570 656e 6420  s.# that depend 
│ │ │ -00252c00: 6f6e 2074 656c 6e65 742e 2045 7865 6375  on telnet. Execu
│ │ │ -00252c10: 7465 2074 6869 730a 2320 7265 6d65 6469  te this.# remedi
│ │ │ -00252c20: 6174 696f 6e20 4146 5445 5220 7465 7374  ation AFTER test
│ │ │ -00252c30: 696e 6720 6f6e 2061 206e 6f6e 2d70 726f  ing on a non-pro
│ │ │ -00252c40: 6475 6374 696f 6e0a 2320 7379 7374 656d  duction.# system
│ │ │ -00252c50: 210a 0a0a 6966 2072 706d 202d 7120 2d2d  !...if rpm -q --
│ │ │ -00252c60: 7175 6965 7420 2274 656c 6e65 7422 203b  quiet "telnet" ;
│ │ │ -00252c70: 2074 6865 6e0a 646e 6620 7265 6d6f 7665   then.dnf remove
│ │ │ -00252c80: 202d 7920 2d2d 6e6f 6175 746f 7265 6d6f   -y --noautoremo
│ │ │ -00252c90: 7665 2022 7465 6c6e 6574 220a 6669 0a3c  ve "telnet".fi.<
│ │ │ +00252290: 6e20 416e 7369 626c 6520 736e 6970 7065  n Ansible snippe
│ │ │ +002522a0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469  t ...
< │ │ │ +00252320: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +00252330: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +00252350: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +00252360: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +00252380: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +002523a0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ +002523d0: 3c63 6f64 653e 2d20 6e61 6d65 3a20 2752  - name: 'R
│ │ │ +002523e0: 656d 6f76 6520 7465 6c6e 6574 2043 6c69  emove telnet Cli
│ │ │ +002523f0: 656e 7473 3a20 456e 7375 7265 2074 656c  ents: Ensure tel
│ │ │ +00252400: 6e65 7420 6973 2072 656d 6f76 6564 270a  net is removed'.
│ │ │ +00252410: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +00252420: 6e2e 7061 636b 6167 653a 0a20 2020 206e  n.package:.    n
│ │ │ +00252430: 616d 653a 2074 656c 6e65 740a 2020 2020  ame: telnet.    
│ │ │ +00252440: 7374 6174 653a 2061 6273 656e 740a 2020  state: absent.  
│ │ │ +00252450: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +00252460: 3030 2d31 3731 2d33 2e31 2e31 330a 2020  00-171-3.1.13.  
│ │ │ +00252470: 2d20 5043 492d 4453 5376 342d 322e 320a  - PCI-DSSv4-2.2.
│ │ │ +00252480: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ +00252490: 322e 340a 2020 2d20 6469 7361 626c 655f  2.4.  - disable_
│ │ │ +002524a0: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ +002524b0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +002524c0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +002524d0: 202d 206c 6f77 5f73 6576 6572 6974 790a   - low_severity.
│ │ │ +002524e0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +002524f0: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ +00252500: 5f74 656c 6e65 745f 7265 6d6f 7665 640a  _telnet_removed.
│ │ │ +00252510: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +002525c0: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +002525d0: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
│ │ │ +00252670: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ +00252710: 696e 636c 7564 6520 7265 6d6f 7665 5f74  include remove_t
│ │ │ +00252720: 656c 6e65 740a 0a63 6c61 7373 2072 656d  elnet..class rem
│ │ │ +00252730: 6f76 655f 7465 6c6e 6574 207b 0a20 2070  ove_telnet {.  p
│ │ │ +00252740: 6163 6b61 6765 207b 2027 7465 6c6e 6574  ackage { 'telnet
│ │ │ +00252750: 273a 0a20 2020 2065 6e73 7572 6520 3d26  ':.    ensure =&
│ │ │ +00252760: 6774 3b20 2770 7572 6765 6427 2c0a 2020  gt; 'purged',.  
│ │ │ +00252770: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Remediation │ │ │ +00252830: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ +00252840: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
│ │ │ +00252660: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00252690: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +002526a0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +002526e0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +002526f0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity: │ │ │ +00252910: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00252920: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.# CAUTION: Thi
│ │ │ +00252980: 7320 7265 6d65 6469 6174 696f 6e20 7363  s remediation sc
│ │ │ +00252990: 7269 7074 2077 696c 6c20 7265 6d6f 7665  ript will remove
│ │ │ +002529a0: 2074 656c 6e65 740a 2320 6672 6f6d 2074   telnet.# from t
│ │ │ +002529b0: 6865 2073 7973 7465 6d2c 2061 6e64 206d  he system, and m
│ │ │ +002529c0: 6179 2072 656d 6f76 6520 616e 7920 7061  ay remove any pa
│ │ │ +002529d0: 636b 6167 6573 0a23 2074 6861 7420 6465  ckages.# that de
│ │ │ +002529e0: 7065 6e64 206f 6e20 7465 6c6e 6574 2e20  pend on telnet. 
│ │ │ +002529f0: 4578 6563 7574 6520 7468 6973 0a23 2072  Execute this.# r
│ │ │ +00252a00: 656d 6564 6961 7469 6f6e 2041 4654 4552  emediation AFTER
│ │ │ +00252a10: 2074 6573 7469 6e67 206f 6e20 6120 6e6f   testing on a no
│ │ │ +00252a20: 6e2d 7072 6f64 7563 7469 6f6e 0a23 2073  n-production.# s
│ │ │ +00252a30: 7973 7465 6d21 0a0a 0a69 6620 7270 6d20  ystem!...if rpm 
│ │ │ +00252a40: 2d71 202d 2d71 7569 6574 2022 7465 6c6e  -q --quiet "teln
│ │ │ +00252a50: 6574 2220 3b20 7468 656e 0a64 6e66 2072  et" ; then.dnf r
│ │ │ +00252a60: 656d 6f76 6520 2d79 202d 2d6e 6f61 7574  emove -y --noaut
│ │ │ +00252a70: 6f72 656d 6f76 6520 2274 656c 6e65 7422  oremove "telnet"
│ │ │ +00252a80: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.
Remediation │ │ │ +00252b40: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ +00252b50: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
< │ │ │ +00252c10: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00252c20: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
low
Disru │ │ │ +002528f0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00252900: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00252940: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +00252950: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexity │ │ │ +00252be0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ +00252c00: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ +00252c30: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ +00252c50: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +00252c80: 636f 6465 3e0a 0a70 6163 6b61 6765 202d  code>..package -
│ │ │ +00252c90: 2d72 656d 6f76 653d 7465 6c6e 6574 0a3c  -remove=telnet.<
│ │ │  00252ca0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Remediatio │ │ │ -00254210: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ -00254220: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -002542a0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -002542b0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -002542c0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -00254300: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -00254310: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -00254330: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -00254340: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
..package
│ │ │ -00254360: 202d 2d72 656d 6f76 653d 7466 7470 2d73   --remove=tftp-s
│ │ │ -00254370: 6572 7665 720a 3c2f 636f 6465 3e3c 2f70  erver.

Remediatio │ │ │ -00254430: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ -00254440: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -002544d0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -002544f0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -00254500: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00254510: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -00254520: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -00254540: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -00254570: 636f 6465 3e0a 696e 636c 7564 6520 7265  code>.include re
│ │ │ -00254580: 6d6f 7665 5f74 6674 702d 7365 7276 6572  move_tftp-server
│ │ │ -00254590: 0a0a 636c 6173 7320 7265 6d6f 7665 5f74  ..class remove_t
│ │ │ -002545a0: 6674 702d 7365 7276 6572 207b 0a20 2070  ftp-server {.  p
│ │ │ -002545b0: 6163 6b61 6765 207b 2027 7466 7470 2d73  ackage { 'tftp-s
│ │ │ -002545c0: 6572 7665 7227 3a0a 2020 2020 656e 7375  erver':.    ensu
│ │ │ -002545d0: 7265 203d 2667 743b 2027 7075 7267 6564  re => 'purged
│ │ │ -002545e0: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e  ',.  }.}.
│ │ │ -002545f0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -002546a0: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -002546b0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -002546c0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -002546f0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -00254760: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -00254780: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -002547b0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -00254740: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -00254750: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -00254790: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -002547a0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

- name: │ │ │ -002547f0: 2027 556e 696e 7374 616c 6c20 7466 7470 'Uninstall tftp │ │ │ -00254800: 2d73 6572 7665 7220 5061 636b 6167 653a -server Package: │ │ │ -00254810: 2045 6e73 7572 6520 7466 7470 2d73 6572 Ensure tftp-ser │ │ │ -00254820: 7665 7220 6973 2072 656d 6f76 6564 270a ver is removed'. │ │ │ -00254830: 2020 616e 7369 626c 652e 6275 696c 7469 ansible.builti │ │ │ -00254840: 6e2e 7061 636b 6167 653a 0a20 2020 206e n.package:. n │ │ │ -00254850: 616d 653a 2074 6674 702d 7365 7276 6572 ame: tftp-server │ │ │ -00254860: 0a20 2020 2073 7461 7465 3a20 6162 7365 . state: abse │ │ │ -00254870: 6e74 0a20 2074 6167 733a 0a20 202d 204e nt. tags:. - N │ │ │ -00254880: 4953 542d 3830 302d 3533 2d43 4d2d 3628 IST-800-53-CM-6( │ │ │ -00254890: 6129 0a20 202d 204e 4953 542d 3830 302d a). - NIST-800- │ │ │ -002548a0: 3533 2d43 4d2d 3728 6129 0a20 202d 204e 53-CM-7(a). - N │ │ │ -002548b0: 4953 542d 3830 302d 3533 2d43 4d2d 3728 IST-800-53-CM-7( │ │ │ -002548c0: 6229 0a20 202d 2050 4349 2d44 5353 7634 b). - PCI-DSSv4 │ │ │ -002548d0: 2d32 2e32 0a20 202d 2050 4349 2d44 5353 -2.2. - PCI-DSS │ │ │ -002548e0: 7634 2d32 2e32 2e34 0a20 202d 2064 6973 v4-2.2.4. - dis │ │ │ -002548f0: 6162 6c65 5f73 7472 6174 6567 790a 2020 able_strategy. │ │ │ -00254900: 2d20 6869 6768 5f73 6576 6572 6974 790a - high_severity. │ │ │ -00254910: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ -00254920: 7479 0a20 202d 206c 6f77 5f64 6973 7275 ty. - low_disru │ │ │ -00254930: 7074 696f 6e0a 2020 2d20 6e6f 5f72 6562 ption. - no_reb │ │ │ -00254940: 6f6f 745f 6e65 6564 6564 0a20 202d 2070 oot_needed. - p │ │ │ -00254950: 6163 6b61 6765 5f74 6674 702d 7365 7276 ackage_tftp-serv │ │ │ -00254960: 6572 5f72 656d 6f76 6564 0a3c 2f63 6f64 er_removed.

Remed │ │ │ -00254a20: 6961 7469 6f6e 2053 6865 6c6c 2073 6372 iation Shell scr │ │ │ -00254a30: 6970 7420 e287 b23c 2f61 3e3c 6272 3e3c ipt ...
< │ │ │ -00254a40: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00254a50: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00254a60: 7365 2220 6964 3d22 6964 3738 3322 3e3c se" id="id783">< │ │ │ -00254a70: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -00254a80: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -00254a90: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -00254aa0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -00254ab0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -00254ac0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -00254ad0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -00254b10: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -00254b20: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -00254b40: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ -00254b50: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 .# CAUTI │ │ │ -00254b70: 4f4e 3a20 5468 6973 2072 656d 6564 6961 ON: This remedia │ │ │ -00254b80: 7469 6f6e 2073 6372 6970 7420 7769 6c6c tion script will │ │ │ -00254b90: 2072 656d 6f76 6520 7466 7470 2d73 6572 remove tftp-ser │ │ │ -00254ba0: 7665 720a 2320 6672 6f6d 2074 6865 2073 ver.# from the s │ │ │ -00254bb0: 7973 7465 6d2c 2061 6e64 206d 6179 2072 ystem, and may r │ │ │ -00254bc0: 656d 6f76 6520 616e 7920 7061 636b 6167 emove any packag │ │ │ -00254bd0: 6573 0a23 2074 6861 7420 6465 7065 6e64 es.# that depend │ │ │ -00254be0: 206f 6e20 7466 7470 2d73 6572 7665 722e on tftp-server. │ │ │ -00254bf0: 2045 7865 6375 7465 2074 6869 730a 2320 Execute this.# │ │ │ -00254c00: 7265 6d65 6469 6174 696f 6e20 4146 5445 remediation AFTE │ │ │ -00254c10: 5220 7465 7374 696e 6720 6f6e 2061 206e R testing on a n │ │ │ -00254c20: 6f6e 2d70 726f 6475 6374 696f 6e0a 2320 on-production.# │ │ │ -00254c30: 7379 7374 656d 210a 0a0a 6966 2072 706d system!...if rpm │ │ │ -00254c40: 202d 7120 2d2d 7175 6965 7420 2274 6674 -q --quiet "tft │ │ │ -00254c50: 702d 7365 7276 6572 2220 3b20 7468 656e p-server" ; then │ │ │ -00254c60: 0a64 6e66 2072 656d 6f76 6520 2d79 202d .dnf remove -y - │ │ │ -00254c70: 2d6e 6f61 7574 6f72 656d 6f76 6520 2274 -noautoremove "t │ │ │ -00254c80: 6674 702d 7365 7276 6572 220a 6669 0a3c ftp-server".fi.< │ │ │ +00254210: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ +00254220: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +002542a0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +002542b0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +002542d0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +002542e0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +00254300: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +00254320: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ +00254350: 3c63 6f64 653e 2d20 6e61 6d65 3a20 2755  - name: 'U
│ │ │ +00254360: 6e69 6e73 7461 6c6c 2074 6674 702d 7365  ninstall tftp-se
│ │ │ +00254370: 7276 6572 2050 6163 6b61 6765 3a20 456e  rver Package: En
│ │ │ +00254380: 7375 7265 2074 6674 702d 7365 7276 6572  sure tftp-server
│ │ │ +00254390: 2069 7320 7265 6d6f 7665 6427 0a20 2061   is removed'.  a
│ │ │ +002543a0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ +002543b0: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ +002543c0: 3a20 7466 7470 2d73 6572 7665 720a 2020  : tftp-server.  
│ │ │ +002543d0: 2020 7374 6174 653a 2061 6273 656e 740a    state: absent.
│ │ │ +002543e0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +002543f0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +00254400: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +00254410: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +00254420: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +00254430: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ +00254440: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ +00254450: 322e 322e 340a 2020 2d20 6469 7361 626c  2.2.4.  - disabl
│ │ │ +00254460: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ +00254470: 6967 685f 7365 7665 7269 7479 0a20 202d  igh_severity.  -
│ │ │ +00254480: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +00254490: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +002544a0: 6f6e 0a20 202d 206e 6f5f 7265 626f 6f74  on.  - no_reboot
│ │ │ +002544b0: 5f6e 6565 6465 640a 2020 2d20 7061 636b  _needed.  - pack
│ │ │ +002544c0: 6167 655f 7466 7470 2d73 6572 7665 725f  age_tftp-server_
│ │ │ +002544d0: 7265 6d6f 7665 640a 3c2f 636f 6465 3e3c  removed.<
│ │ │ +002544e0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ +00254590: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ +002545a0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +00254620: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +00254630: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +00254640: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +00254680: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +00254690: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +002546b0: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +002546c0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.include 
│ │ │ +002546e0: 7265 6d6f 7665 5f74 6674 702d 7365 7276  remove_tftp-serv
│ │ │ +002546f0: 6572 0a0a 636c 6173 7320 7265 6d6f 7665  er..class remove
│ │ │ +00254700: 5f74 6674 702d 7365 7276 6572 207b 0a20  _tftp-server {. 
│ │ │ +00254710: 2070 6163 6b61 6765 207b 2027 7466 7470   package { 'tftp
│ │ │ +00254720: 2d73 6572 7665 7227 3a0a 2020 2020 656e  -server':.    en
│ │ │ +00254730: 7375 7265 203d 2667 743b 2027 7075 7267  sure => 'purg
│ │ │ +00254740: 6564 272c 0a20 207d 0a7d 0a3c 2f63 6f64  ed',.  }.}.
Remed │ │ │ +00254800: 6961 7469 6f6e 2053 6865 6c6c 2073 6372 iation Shell scr │ │ │ +00254810: 6970 7420 e287 b23c 2f61 3e3c 6272 3e3c ipt ...
< │ │ │ +00254820: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +00254830: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +00254840: 7365 2220 6964 3d22 6964 3738 3222 3e3c se" id="id782">< │ │ │ +00254850: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +00254860: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +00254870: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +00254880: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +00254890: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +002548a0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +002548b0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ +002548f0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +00254900: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ +00254920: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ +00254930: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 .# CAUTI │ │ │ +00254950: 4f4e 3a20 5468 6973 2072 656d 6564 6961 ON: This remedia │ │ │ +00254960: 7469 6f6e 2073 6372 6970 7420 7769 6c6c tion script will │ │ │ +00254970: 2072 656d 6f76 6520 7466 7470 2d73 6572 remove tftp-ser │ │ │ +00254980: 7665 720a 2320 6672 6f6d 2074 6865 2073 ver.# from the s │ │ │ +00254990: 7973 7465 6d2c 2061 6e64 206d 6179 2072 ystem, and may r │ │ │ +002549a0: 656d 6f76 6520 616e 7920 7061 636b 6167 emove any packag │ │ │ +002549b0: 6573 0a23 2074 6861 7420 6465 7065 6e64 es.# that depend │ │ │ +002549c0: 206f 6e20 7466 7470 2d73 6572 7665 722e on tftp-server. │ │ │ +002549d0: 2045 7865 6375 7465 2074 6869 730a 2320 Execute this.# │ │ │ +002549e0: 7265 6d65 6469 6174 696f 6e20 4146 5445 remediation AFTE │ │ │ +002549f0: 5220 7465 7374 696e 6720 6f6e 2061 206e R testing on a n │ │ │ +00254a00: 6f6e 2d70 726f 6475 6374 696f 6e0a 2320 on-production.# │ │ │ +00254a10: 7379 7374 656d 210a 0a0a 6966 2072 706d system!...if rpm │ │ │ +00254a20: 202d 7120 2d2d 7175 6965 7420 2274 6674 -q --quiet "tft │ │ │ +00254a30: 702d 7365 7276 6572 2220 3b20 7468 656e p-server" ; then │ │ │ +00254a40: 0a64 6e66 2072 656d 6f76 6520 2d79 202d .dnf remove -y - │ │ │ +00254a50: 2d6e 6f61 7574 6f72 656d 6f76 6520 2274 -noautoremove "t │ │ │ +00254a60: 6674 702d 7365 7276 6572 220a 6669 0a3c ftp-server".fi.< │ │ │ +00254a70: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469 /code>R │ │ │ +00254b20: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ +00254b30: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ +00254b40: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ +00254c10: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +00254c20: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ +00254c70: 0a0a 7061 636b 6167 6520 2d2d 7265 6d6f  ..package --remo
│ │ │ +00254c80: 7665 3d74 6674 702d 7365 7276 6572 0a3c  ve=tftp-server.<
│ │ │  00254c90: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Remediati │ │ │ -00255710: 6f6e 2041 6e61 636f 6e64 6120 736e 6970 on Anaconda snip │ │ │ -00255720: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00255730: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00255740: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00255750: 7365 2220 6964 3d22 6964 3738 3522 3e3c se" id="id785">< │ │ │ -00255760: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -00255770: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -00255780: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -00255790: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -002557a0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:Strategy: │ │ │ -00255830: 3c74 643e 6469 7361 626c 653c 2f74 643e │ │ │ -00255840: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Complexity:low
Disrup │ │ │ +00254bf0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +00254c00: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +00254c40: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ +00254c50: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complex │ │ │ -002557b0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -002557c0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ -00255800: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -00255810: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
disable
..packag │ │ │ -00255860: 6520 2d2d 7265 6d6f 7665 3d74 6674 700a e --remove=tftp. │ │ │ -00255870: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64
│ │ │ -00255920: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ -00255930: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
│ │ │ -002559d0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ -00255a70: 696e 636c 7564 6520 7265 6d6f 7665 5f74  include remove_t
│ │ │ -00255a80: 6674 700a 0a63 6c61 7373 2072 656d 6f76  ftp..class remov
│ │ │ -00255a90: 655f 7466 7470 207b 0a20 2070 6163 6b61  e_tftp {.  packa
│ │ │ -00255aa0: 6765 207b 2027 7466 7470 273a 0a20 2020  ge { 'tftp':.   
│ │ │ -00255ab0: 2065 6e73 7572 6520 3d26 6774 3b20 2770   ensure => 'p
│ │ │ -00255ac0: 7572 6765 6427 2c0a 2020 7d0a 7d0a 3c2f  urged',.  }.}.
Re │ │ │ -00255b80: 6d65 6469 6174 696f 6e20 416e 7369 626c mediation Ansibl │ │ │ -00255b90: 6520 736e 6970 7065 7420 e287 b23c 2f61 e snippet ...
│ │ │ -002559c0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -002559f0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00255a00: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00255a40: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -00255a50: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ -00255c30: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00255c40: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -00255c90: 3c74 723e 3c74 683e 5374 7261 7465 6779
- 
│ │ │ -00255cd0: 6e61 6d65 3a20 2752 656d 6f76 6520 7466  name: 'Remove tf
│ │ │ -00255ce0: 7470 2044 6165 6d6f 6e3a 2045 6e73 7572  tp Daemon: Ensur
│ │ │ -00255cf0: 6520 7466 7470 2069 7320 7265 6d6f 7665  e tftp is remove
│ │ │ -00255d00: 6427 0a20 2061 6e73 6962 6c65 2e62 7569  d'.  ansible.bui
│ │ │ -00255d10: 6c74 696e 2e70 6163 6b61 6765 3a0a 2020  ltin.package:.  
│ │ │ -00255d20: 2020 6e61 6d65 3a20 7466 7470 0a20 2020    name: tftp.   
│ │ │ -00255d30: 2073 7461 7465 3a20 6162 7365 6e74 0a20   state: absent. 
│ │ │ -00255d40: 2074 6167 733a 0a20 202d 2050 4349 2d44   tags:.  - PCI-D
│ │ │ -00255d50: 5353 7634 2d32 2e32 0a20 202d 2050 4349  SSv4-2.2.  - PCI
│ │ │ -00255d60: 2d44 5353 7634 2d32 2e32 2e34 0a20 202d  -DSSv4-2.2.4.  -
│ │ │ -00255d70: 2064 6973 6162 6c65 5f73 7472 6174 6567   disable_strateg
│ │ │ -00255d80: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -00255d90: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -00255da0: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -00255db0: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ -00255dc0: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ -00255dd0: 2d20 7061 636b 6167 655f 7466 7470 5f72  - package_tftp_r
│ │ │ -00255de0: 656d 6f76 6564 0a3c 2f63 6f64 653e 3c2f  emoved.Remediati
│ │ │ -00255ea0: 6f6e 2053 6865 6c6c 2073 6372 6970 7420  on Shell script 
│ │ │ -00255eb0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620  ...
low< │ │ │ -00255f80: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
C │ │ │ -00255c20: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -00255c50: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -00255c60: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -00255ca0: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ -00255cb0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexity: │ │ │ -00255f40: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ -00255f60: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:false
St │ │ │ -00255fb0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -00255fc0: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
.# CAUTION: 
│ │ │ -00255ff0: 5468 6973 2072 656d 6564 6961 7469 6f6e  This remediation
│ │ │ -00256000: 2073 6372 6970 7420 7769 6c6c 2072 656d   script will rem
│ │ │ -00256010: 6f76 6520 7466 7470 0a23 2066 726f 6d20  ove tftp.# from 
│ │ │ -00256020: 7468 6520 7379 7374 656d 2c20 616e 6420  the system, and 
│ │ │ -00256030: 6d61 7920 7265 6d6f 7665 2061 6e79 2070  may remove any p
│ │ │ -00256040: 6163 6b61 6765 730a 2320 7468 6174 2064  ackages.# that d
│ │ │ -00256050: 6570 656e 6420 6f6e 2074 6674 702e 2045  epend on tftp. E
│ │ │ -00256060: 7865 6375 7465 2074 6869 730a 2320 7265  xecute this.# re
│ │ │ -00256070: 6d65 6469 6174 696f 6e20 4146 5445 5220  mediation AFTER 
│ │ │ -00256080: 7465 7374 696e 6720 6f6e 2061 206e 6f6e  testing on a non
│ │ │ -00256090: 2d70 726f 6475 6374 696f 6e0a 2320 7379  -production.# sy
│ │ │ -002560a0: 7374 656d 210a 0a0a 6966 2072 706d 202d  stem!...if rpm -
│ │ │ -002560b0: 7120 2d2d 7175 6965 7420 2274 6674 7022  q --quiet "tftp"
│ │ │ -002560c0: 203b 2074 6865 6e0a 646e 6620 7265 6d6f   ; then.dnf remo
│ │ │ -002560d0: 7665 202d 7920 2d2d 6e6f 6175 746f 7265  ve -y --noautore
│ │ │ -002560e0: 6d6f 7665 2022 7466 7470 220a 6669 0a3c  move "tftp".fi.<
│ │ │ +00255710: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070  on Ansible snipp
│ │ │ +00255720: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...
│ │ │ +002557a0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +002557b0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +002557c0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +00255800: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +00255810: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +00255830: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +00255840: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
- name: '
│ │ │ +00255860: 5265 6d6f 7665 2074 6674 7020 4461 656d  Remove tftp Daem
│ │ │ +00255870: 6f6e 3a20 456e 7375 7265 2074 6674 7020  on: Ensure tftp 
│ │ │ +00255880: 6973 2072 656d 6f76 6564 270a 2020 616e  is removed'.  an
│ │ │ +00255890: 7369 626c 652e 6275 696c 7469 6e2e 7061  sible.builtin.pa
│ │ │ +002558a0: 636b 6167 653a 0a20 2020 206e 616d 653a  ckage:.    name:
│ │ │ +002558b0: 2074 6674 700a 2020 2020 7374 6174 653a   tftp.    state:
│ │ │ +002558c0: 2061 6273 656e 740a 2020 7461 6773 3a0a   absent.  tags:.
│ │ │ +002558d0: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ +002558e0: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ +002558f0: 322e 322e 340a 2020 2d20 6469 7361 626c  2.2.4.  - disabl
│ │ │ +00255900: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ +00255910: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +00255920: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +00255930: 0a20 202d 206c 6f77 5f73 6576 6572 6974  .  - low_severit
│ │ │ +00255940: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +00255950: 6e65 6564 6564 0a20 202d 2070 6163 6b61  needed.  - packa
│ │ │ +00255960: 6765 5f74 6674 705f 7265 6d6f 7665 640a  ge_tftp_removed.
│ │ │ +00255970: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +00255a20: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +00255a30: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
│ │ │ +00255ad0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ +00255b70: 696e 636c 7564 6520 7265 6d6f 7665 5f74  include remove_t
│ │ │ +00255b80: 6674 700a 0a63 6c61 7373 2072 656d 6f76  ftp..class remov
│ │ │ +00255b90: 655f 7466 7470 207b 0a20 2070 6163 6b61  e_tftp {.  packa
│ │ │ +00255ba0: 6765 207b 2027 7466 7470 273a 0a20 2020  ge { 'tftp':.   
│ │ │ +00255bb0: 2065 6e73 7572 6520 3d26 6774 3b20 2770   ensure => 'p
│ │ │ +00255bc0: 7572 6765 6427 2c0a 2020 7d0a 7d0a 3c2f  urged',.  }.}.
Re │ │ │ +00255c80: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ +00255c90: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
│ │ │ +00255ac0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00255af0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00255b00: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00255b40: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +00255b50: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Comp │ │ │ +00255d20: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +00255d30: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +00255d50: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +00255d70: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +00255d80: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +00255dc0: 3c70 7265 3e3c 636f 6465 3e0a 2320 4341
.# CA
│ │ │ +00255dd0: 5554 494f 4e3a 2054 6869 7320 7265 6d65  UTION: This reme
│ │ │ +00255de0: 6469 6174 696f 6e20 7363 7269 7074 2077  diation script w
│ │ │ +00255df0: 696c 6c20 7265 6d6f 7665 2074 6674 700a  ill remove tftp.
│ │ │ +00255e00: 2320 6672 6f6d 2074 6865 2073 7973 7465  # from the syste
│ │ │ +00255e10: 6d2c 2061 6e64 206d 6179 2072 656d 6f76  m, and may remov
│ │ │ +00255e20: 6520 616e 7920 7061 636b 6167 6573 0a23  e any packages.#
│ │ │ +00255e30: 2074 6861 7420 6465 7065 6e64 206f 6e20   that depend on 
│ │ │ +00255e40: 7466 7470 2e20 4578 6563 7574 6520 7468  tftp. Execute th
│ │ │ +00255e50: 6973 0a23 2072 656d 6564 6961 7469 6f6e  is.# remediation
│ │ │ +00255e60: 2041 4654 4552 2074 6573 7469 6e67 206f   AFTER testing o
│ │ │ +00255e70: 6e20 6120 6e6f 6e2d 7072 6f64 7563 7469  n a non-producti
│ │ │ +00255e80: 6f6e 0a23 2073 7973 7465 6d21 0a0a 0a69  on.# system!...i
│ │ │ +00255e90: 6620 7270 6d20 2d71 202d 2d71 7569 6574  f rpm -q --quiet
│ │ │ +00255ea0: 2022 7466 7470 2220 3b20 7468 656e 0a64   "tftp" ; then.d
│ │ │ +00255eb0: 6e66 2072 656d 6f76 6520 2d79 202d 2d6e  nf remove -y --n
│ │ │ +00255ec0: 6f61 7574 6f72 656d 6f76 6520 2274 6674  oautoremove "tft
│ │ │ +00255ed0: 7022 0a66 690a 3c2f 636f 6465 3e3c 2f70  p".fi.

Remediatio │ │ │ +00255f90: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ +00255fa0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +00256020: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +00256030: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +00256040: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +00256080: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +00256090: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +002560b0: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +002560c0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
..package
│ │ │ +002560e0: 202d 2d72 656d 6f76 653d 7466 7470 0a3c   --remove=tftp.<
│ │ │  002560f0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Remediation P │ │ │ -002640d0: 7570 7065 7420 736e 6970 7065 7420 e287 uppet snippet .. │ │ │ -002640e0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
include ssh_
│ │ │ -00264130: 7072 6976 6174 655f 6b65 795f 7065 726d  private_key_perm
│ │ │ -00264140: 730a 0a63 6c61 7373 2073 7368 5f70 7269  s..class ssh_pri
│ │ │ -00264150: 7661 7465 5f6b 6579 5f70 6572 6d73 207b  vate_key_perms {
│ │ │ -00264160: 0a20 2065 7865 6320 7b20 2773 7368 645f  .  exec { 'sshd_
│ │ │ -00264170: 7072 6976 5f6b 6579 273a 0a20 2020 2063  priv_key':.    c
│ │ │ -00264180: 6f6d 6d61 6e64 203d 2667 743b 2022 6368  ommand => "ch
│ │ │ -00264190: 6d6f 6420 3036 3430 202f 6574 632f 7373  mod 0640 /etc/ss
│ │ │ -002641a0: 682f 2a5f 6b65 7922 2c0a 2020 2020 7061  h/*_key",.    pa
│ │ │ -002641b0: 7468 2020 2020 3d26 6774 3b20 272f 6269  th    => '/bi
│ │ │ -002641c0: 6e3a 2f75 7372 2f62 696e 270a 2020 7d0a  n:/usr/bin'.  }.
│ │ │ -002641d0: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -002641e0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -00264290: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -002642a0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -00264320: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -00264340: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -00264390: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
low
Disr │ │ │ -00264350: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00264360: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -002643a0: 7465 6779 3a3c 2f74 683e 3c74 643e 636f tegy:co │ │ │ -002643b0: 6e66 6967 7572 653c 2f74 643e 3c2f 7472 nfigure
- name: Gath
│ │ │ -002643e0: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ -002643f0: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ -00264400: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ -00264410: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ -00264420: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ -00264430: 2d33 2e31 2e31 330a 2020 2d20 4e49 5354  -3.1.13.  - NIST
│ │ │ -00264440: 2d38 3030 2d31 3731 2d33 2e31 332e 3130  -800-171-3.13.10
│ │ │ -00264450: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -00264460: 2d41 432d 3137 2861 290a 2020 2d20 4e49  -AC-17(a).  - NI
│ │ │ -00264470: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ -00264480: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -00264490: 332d 434d 2d36 2861 290a 2020 2d20 5043  3-CM-6(a).  - PC
│ │ │ -002644a0: 492d 4453 532d 5265 712d 322e 322e 340a  I-DSS-Req-2.2.4.
│ │ │ -002644b0: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ -002644c0: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ -002644d0: 322e 322e 360a 2020 2d20 636f 6e66 6967  2.2.6.  - config
│ │ │ -002644e0: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -002644f0: 2066 696c 655f 7065 726d 6973 7369 6f6e   file_permission
│ │ │ -00264500: 735f 7373 6864 5f70 7269 7661 7465 5f6b  s_sshd_private_k
│ │ │ -00264510: 6579 0a20 202d 206c 6f77 5f63 6f6d 706c  ey.  - low_compl
│ │ │ -00264520: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ -00264530: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ -00264540: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -00264550: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -00264560: 640a 0a2d 206e 616d 653a 2046 696e 6420  d..- name: Find 
│ │ │ -00264570: 726f 6f74 3a72 6f6f 742d 6f77 6e65 6420  root:root-owned 
│ │ │ -00264580: 6b65 7973 0a20 2061 6e73 6962 6c65 2e62  keys.  ansible.b
│ │ │ -00264590: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ -002645a0: 6669 6e64 202d 4820 2f65 7463 2f73 7368  find -H /etc/ssh
│ │ │ -002645b0: 2f20 2d6d 6178 6465 7074 6820 3120 2d75  / -maxdepth 1 -u
│ │ │ -002645c0: 7365 7220 726f 6f74 202d 7265 6765 7820  ser root -regex 
│ │ │ -002645d0: 222e 2a5f 6b65 7924 220a 2020 2020 2d74  ".*_key$".    -t
│ │ │ -002645e0: 7970 6520 6620 2d67 726f 7570 2072 6f6f  ype f -group roo
│ │ │ -002645f0: 7420 2d70 6572 6d20 2f75 2b78 732c 672b  t -perm /u+xs,g+
│ │ │ -00264600: 7877 7273 2c6f 2b78 7772 740a 2020 7265  xwrs,o+xwrt.  re
│ │ │ -00264610: 6769 7374 6572 3a20 726f 6f74 5f6f 776e  gister: root_own
│ │ │ -00264620: 6564 5f6b 6579 730a 2020 6368 616e 6765  ed_keys.  change
│ │ │ -00264630: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ -00264640: 6661 696c 6564 5f77 6865 6e3a 2066 616c  failed_when: fal
│ │ │ -00264650: 7365 0a20 2063 6865 636b 5f6d 6f64 653a  se.  check_mode:
│ │ │ -00264660: 2066 616c 7365 0a20 2077 6865 6e3a 2027   false.  when: '
│ │ │ -00264670: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -00264680: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -00264690: 6573 270a 2020 7461 6773 3a0a 2020 2d20  es'.  tags:.  - 
│ │ │ -002646a0: 4e49 5354 2d38 3030 2d31 3731 2d33 2e31  NIST-800-171-3.1
│ │ │ -002646b0: 2e31 330a 2020 2d20 4e49 5354 2d38 3030  .13.  - NIST-800
│ │ │ -002646c0: 2d31 3731 2d33 2e31 332e 3130 0a20 202d  -171-3.13.10.  -
│ │ │ -002646d0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -002646e0: 3137 2861 290a 2020 2d20 4e49 5354 2d38  17(a).  - NIST-8
│ │ │ -002646f0: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ -00264700: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -00264710: 2d36 2861 290a 2020 2d20 5043 492d 4453  -6(a).  - PCI-DS
│ │ │ -00264720: 532d 5265 712d 322e 322e 340a 2020 2d20  S-Req-2.2.4.  - 
│ │ │ -00264730: 5043 492d 4453 5376 342d 322e 320a 2020  PCI-DSSv4-2.2.  
│ │ │ -00264740: 2d20 5043 492d 4453 5376 342d 322e 322e  - PCI-DSSv4-2.2.
│ │ │ -00264750: 360a 2020 2d20 636f 6e66 6967 7572 655f  6.  - configure_
│ │ │ -00264760: 7374 7261 7465 6779 0a20 202d 2066 696c  strategy.  - fil
│ │ │ -00264770: 655f 7065 726d 6973 7369 6f6e 735f 7373  e_permissions_ss
│ │ │ -00264780: 6864 5f70 7269 7661 7465 5f6b 6579 0a20  hd_private_key. 
│ │ │ -00264790: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -002647a0: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -002647b0: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ -002647c0: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ -002647d0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -002647e0: 206e 616d 653a 2053 6574 2070 6572 6d69   name: Set permi
│ │ │ -002647f0: 7373 696f 6e73 2066 6f72 2072 6f6f 743a  ssions for root:
│ │ │ -00264800: 726f 6f74 2d6f 776e 6564 206b 6579 730a  root-owned keys.
│ │ │ -00264810: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -00264820: 6e2e 6669 6c65 3a0a 2020 2020 7061 7468  n.file:.    path
│ │ │ -00264830: 3a20 277b 7b20 6974 656d 207d 7d27 0a20  : '{{ item }}'. 
│ │ │ -00264840: 2020 206d 6f64 653a 2075 2d78 732c 672d     mode: u-xs,g-
│ │ │ -00264850: 7877 7273 2c6f 2d78 7772 740a 2020 2020  xwrs,o-xwrt.    
│ │ │ -00264860: 7374 6174 653a 2066 696c 650a 2020 7769  state: file.  wi
│ │ │ -00264870: 7468 5f69 7465 6d73 3a0a 2020 2d20 277b  th_items:.  - '{
│ │ │ -00264880: 7b20 726f 6f74 5f6f 776e 6564 5f6b 6579  { root_owned_key
│ │ │ -00264890: 732e 7374 646f 7574 5f6c 696e 6573 207d  s.stdout_lines }
│ │ │ -002648a0: 7d27 0a20 2077 6865 6e3a 2027 226b 6572  }'.  when: '"ker
│ │ │ -002648b0: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -002648c0: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ -002648d0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -002648e0: 2d38 3030 2d31 3731 2d33 2e31 2e31 330a  -800-171-3.1.13.
│ │ │ -002648f0: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ -00264900: 2d33 2e31 332e 3130 0a20 202d 204e 4953  -3.13.10.  - NIS
│ │ │ -00264910: 542d 3830 302d 3533 2d41 432d 3137 2861  T-800-53-AC-17(a
│ │ │ -00264920: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -00264930: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ -00264940: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -00264950: 290a 2020 2d20 5043 492d 4453 532d 5265  ).  - PCI-DSS-Re
│ │ │ -00264960: 712d 322e 322e 340a 2020 2d20 5043 492d  q-2.2.4.  - PCI-
│ │ │ -00264970: 4453 5376 342d 322e 320a 2020 2d20 5043  DSSv4-2.2.  - PC
│ │ │ -00264980: 492d 4453 5376 342d 322e 322e 360a 2020  I-DSSv4-2.2.6.  
│ │ │ -00264990: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -002649a0: 7465 6779 0a20 202d 2066 696c 655f 7065  tegy.  - file_pe
│ │ │ -002649b0: 726d 6973 7369 6f6e 735f 7373 6864 5f70  rmissions_sshd_p
│ │ │ -002649c0: 7269 7661 7465 5f6b 6579 0a20 202d 206c  rivate_key.  - l
│ │ │ -002649d0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -002649e0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -002649f0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -00264a00: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -00264a10: 6f74 5f6e 6565 6465 640a 3c2f 636f 6465  ot_needed.Remediation A
│ │ │ +002640d0: 6e73 6962 6c65 2073 6e69 7070 6574 20e2  nsible snippet .
│ │ │ +002640e0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063  ..
│ │ │ +00264160: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +00264180: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +002641d0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472
Complexity:< │ │ │ +00264170: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00264190: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +002641e0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e63 ategy:c │ │ │ +002641f0: 6f6e 6669 6775 7265 3c2f 7464 3e3c 2f74 onfigure
<
│ │ │ +00264210: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ +00264220: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ +00264230: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ +00264240: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ +00264250: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ +00264260: 0a20 202d 204e 4953 542d 3830 302d 3137  .  - NIST-800-17
│ │ │ +00264270: 312d 332e 312e 3133 0a20 202d 204e 4953  1-3.1.13.  - NIS
│ │ │ +00264280: 542d 3830 302d 3137 312d 332e 3133 2e31  T-800-171-3.13.1
│ │ │ +00264290: 300a 2020 2d20 4e49 5354 2d38 3030 2d35  0.  - NIST-800-5
│ │ │ +002642a0: 332d 4143 2d31 3728 6129 0a20 202d 204e  3-AC-17(a).  - N
│ │ │ +002642b0: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ +002642c0: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ +002642d0: 3533 2d43 4d2d 3628 6129 0a20 202d 2050  53-CM-6(a).  - P
│ │ │ +002642e0: 4349 2d44 5353 2d52 6571 2d32 2e32 2e34  CI-DSS-Req-2.2.4
│ │ │ +002642f0: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ +00264300: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ +00264310: 2d32 2e32 2e36 0a20 202d 2063 6f6e 6669  -2.2.6.  - confi
│ │ │ +00264320: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +00264330: 2d20 6669 6c65 5f70 6572 6d69 7373 696f  - file_permissio
│ │ │ +00264340: 6e73 5f73 7368 645f 7072 6976 6174 655f  ns_sshd_private_
│ │ │ +00264350: 6b65 790a 2020 2d20 6c6f 775f 636f 6d70  key.  - low_comp
│ │ │ +00264360: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +00264370: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +00264380: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +00264390: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +002643a0: 6564 0a0a 2d20 6e61 6d65 3a20 4669 6e64  ed..- name: Find
│ │ │ +002643b0: 2072 6f6f 743a 726f 6f74 2d6f 776e 6564   root:root-owned
│ │ │ +002643c0: 206b 6579 730a 2020 616e 7369 626c 652e   keys.  ansible.
│ │ │ +002643d0: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ +002643e0: 2066 696e 6420 2d48 202f 6574 632f 7373   find -H /etc/ss
│ │ │ +002643f0: 682f 202d 6d61 7864 6570 7468 2031 202d  h/ -maxdepth 1 -
│ │ │ +00264400: 7573 6572 2072 6f6f 7420 2d72 6567 6578  user root -regex
│ │ │ +00264410: 2022 2e2a 5f6b 6579 2422 0a20 2020 202d   ".*_key$".    -
│ │ │ +00264420: 7479 7065 2066 202d 6772 6f75 7020 726f  type f -group ro
│ │ │ +00264430: 6f74 202d 7065 726d 202f 752b 7873 2c67  ot -perm /u+xs,g
│ │ │ +00264440: 2b78 7772 732c 6f2b 7877 7274 0a20 2072  +xwrs,o+xwrt.  r
│ │ │ +00264450: 6567 6973 7465 723a 2072 6f6f 745f 6f77  egister: root_ow
│ │ │ +00264460: 6e65 645f 6b65 7973 0a20 2063 6861 6e67  ned_keys.  chang
│ │ │ +00264470: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ +00264480: 2066 6169 6c65 645f 7768 656e 3a20 6661   failed_when: fa
│ │ │ +00264490: 6c73 650a 2020 6368 6563 6b5f 6d6f 6465  lse.  check_mode
│ │ │ +002644a0: 3a20 6661 6c73 650a 2020 7768 656e 3a20  : false.  when: 
│ │ │ +002644b0: 2722 6b65 726e 656c 2220 696e 2061 6e73  '"kernel" in ans
│ │ │ +002644c0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +002644d0: 6765 7327 0a20 2074 6167 733a 0a20 202d  ges'.  tags:.  -
│ │ │ +002644e0: 204e 4953 542d 3830 302d 3137 312d 332e   NIST-800-171-3.
│ │ │ +002644f0: 312e 3133 0a20 202d 204e 4953 542d 3830  1.13.  - NIST-80
│ │ │ +00264500: 302d 3137 312d 332e 3133 2e31 300a 2020  0-171-3.13.10.  
│ │ │ +00264510: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +00264520: 2d31 3728 6129 0a20 202d 204e 4953 542d  -17(a).  - NIST-
│ │ │ +00264530: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ +00264540: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +00264550: 4d2d 3628 6129 0a20 202d 2050 4349 2d44  M-6(a).  - PCI-D
│ │ │ +00264560: 5353 2d52 6571 2d32 2e32 2e34 0a20 202d  SS-Req-2.2.4.  -
│ │ │ +00264570: 2050 4349 2d44 5353 7634 2d32 2e32 0a20   PCI-DSSv4-2.2. 
│ │ │ +00264580: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ +00264590: 2e36 0a20 202d 2063 6f6e 6669 6775 7265  .6.  - configure
│ │ │ +002645a0: 5f73 7472 6174 6567 790a 2020 2d20 6669  _strategy.  - fi
│ │ │ +002645b0: 6c65 5f70 6572 6d69 7373 696f 6e73 5f73  le_permissions_s
│ │ │ +002645c0: 7368 645f 7072 6976 6174 655f 6b65 790a  shd_private_key.
│ │ │ +002645d0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +002645e0: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ +002645f0: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ +00264600: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ +00264610: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +00264620: 2d20 6e61 6d65 3a20 5365 7420 7065 726d  - name: Set perm
│ │ │ +00264630: 6973 7369 6f6e 7320 666f 7220 726f 6f74  issions for root
│ │ │ +00264640: 3a72 6f6f 742d 6f77 6e65 6420 6b65 7973  :root-owned keys
│ │ │ +00264650: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ +00264660: 696e 2e66 696c 653a 0a20 2020 2070 6174  in.file:.    pat
│ │ │ +00264670: 683a 2027 7b7b 2069 7465 6d20 7d7d 270a  h: '{{ item }}'.
│ │ │ +00264680: 2020 2020 6d6f 6465 3a20 752d 7873 2c67      mode: u-xs,g
│ │ │ +00264690: 2d78 7772 732c 6f2d 7877 7274 0a20 2020  -xwrs,o-xwrt.   
│ │ │ +002646a0: 2073 7461 7465 3a20 6669 6c65 0a20 2077   state: file.  w
│ │ │ +002646b0: 6974 685f 6974 656d 733a 0a20 202d 2027  ith_items:.  - '
│ │ │ +002646c0: 7b7b 2072 6f6f 745f 6f77 6e65 645f 6b65  {{ root_owned_ke
│ │ │ +002646d0: 7973 2e73 7464 6f75 745f 6c69 6e65 7320  ys.stdout_lines 
│ │ │ +002646e0: 7d7d 270a 2020 7768 656e 3a20 2722 6b65  }}'.  when: '"ke
│ │ │ +002646f0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +00264700: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ +00264710: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +00264720: 542d 3830 302d 3137 312d 332e 312e 3133  T-800-171-3.1.13
│ │ │ +00264730: 0a20 202d 204e 4953 542d 3830 302d 3137  .  - NIST-800-17
│ │ │ +00264740: 312d 332e 3133 2e31 300a 2020 2d20 4e49  1-3.13.10.  - NI
│ │ │ +00264750: 5354 2d38 3030 2d35 332d 4143 2d31 3728  ST-800-53-AC-17(
│ │ │ +00264760: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +00264770: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ +00264780: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +00264790: 6129 0a20 202d 2050 4349 2d44 5353 2d52  a).  - PCI-DSS-R
│ │ │ +002647a0: 6571 2d32 2e32 2e34 0a20 202d 2050 4349  eq-2.2.4.  - PCI
│ │ │ +002647b0: 2d44 5353 7634 2d32 2e32 0a20 202d 2050  -DSSv4-2.2.  - P
│ │ │ +002647c0: 4349 2d44 5353 7634 2d32 2e32 2e36 0a20  CI-DSSv4-2.2.6. 
│ │ │ +002647d0: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ +002647e0: 6174 6567 790a 2020 2d20 6669 6c65 5f70  ategy.  - file_p
│ │ │ +002647f0: 6572 6d69 7373 696f 6e73 5f73 7368 645f  ermissions_sshd_
│ │ │ +00264800: 7072 6976 6174 655f 6b65 790a 2020 2d20  private_key.  - 
│ │ │ +00264810: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +00264820: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +00264830: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ +00264840: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ +00264850: 6f6f 745f 6e65 6564 6564 0a3c 2f63 6f64  oot_needed.
Remed │ │ │ +00264910: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ +00264920: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
incl
│ │ │ +00264970: 7564 6520 7373 685f 7072 6976 6174 655f  ude ssh_private_
│ │ │ +00264980: 6b65 795f 7065 726d 730a 0a63 6c61 7373  key_perms..class
│ │ │ +00264990: 2073 7368 5f70 7269 7661 7465 5f6b 6579   ssh_private_key
│ │ │ +002649a0: 5f70 6572 6d73 207b 0a20 2065 7865 6320  _perms {.  exec 
│ │ │ +002649b0: 7b20 2773 7368 645f 7072 6976 5f6b 6579  { 'sshd_priv_key
│ │ │ +002649c0: 273a 0a20 2020 2063 6f6d 6d61 6e64 203d  ':.    command =
│ │ │ +002649d0: 2667 743b 2022 6368 6d6f 6420 3036 3430  > "chmod 0640
│ │ │ +002649e0: 202f 6574 632f 7373 682f 2a5f 6b65 7922   /etc/ssh/*_key"
│ │ │ +002649f0: 2c0a 2020 2020 7061 7468 2020 2020 3d26  ,.    path    =&
│ │ │ +00264a00: 6774 3b20 272f 6269 6e3a 2f75 7372 2f62  gt; '/bin:/usr/b
│ │ │ +00264a10: 696e 270a 2020 7d0a 7d0a 3c2f 636f 6465  in'.  }.}.
Reme │ │ │ -00265e30: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ -00265e40: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
inc
│ │ │ -00265e90: 6c75 6465 2073 7368 5f70 7562 6c69 635f  lude ssh_public_
│ │ │ -00265ea0: 6b65 795f 7065 726d 730a 0a63 6c61 7373  key_perms..class
│ │ │ -00265eb0: 2073 7368 5f70 7562 6c69 635f 6b65 795f   ssh_public_key_
│ │ │ -00265ec0: 7065 726d 7320 7b0a 2020 6578 6563 207b  perms {.  exec {
│ │ │ -00265ed0: 2027 7373 6864 5f70 7562 5f6b 6579 273a   'sshd_pub_key':
│ │ │ -00265ee0: 0a20 2020 2063 6f6d 6d61 6e64 203d 2667  .    command =&g
│ │ │ -00265ef0: 743b 2022 6368 6d6f 6420 3036 3434 202f  t; "chmod 0644 /
│ │ │ -00265f00: 6574 632f 7373 682f 2a2e 7075 6222 2c0a  etc/ssh/*.pub",.
│ │ │ -00265f10: 2020 2020 7061 7468 2020 2020 3d26 6774      path    =>
│ │ │ -00265f20: 3b20 272f 6269 6e3a 2f75 7372 2f62 696e  ; '/bin:/usr/bin
│ │ │ -00265f30: 270a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  '.  }.}.<
│ │ │ -00265f40: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ -00265ff0: 696f 6e20 416e 7369 626c 6520 736e 6970 ion Ansible snip │ │ │ -00266000: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00266010: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00266020: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00266030: 7365 2220 6964 3d22 6964 3831 3922 3e3c se" id="id819">< │ │ │ -00266040: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -00266050: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -00266060: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -00266070: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -00266080: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -00266090: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -002660a0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -002660e0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -002660f0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -00266110: 3c74 643e 636f 6e66 6967 7572 653c 2f74 configure< │ │ │ -00266130: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -00266140: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -00266150: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -00266160: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -00266170: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -00266180: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ -00266190: 3030 2d31 3731 2d33 2e31 2e31 330a 2020 00-171-3.1.13. │ │ │ -002661a0: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33 - NIST-800-171-3 │ │ │ -002661b0: 2e31 332e 3130 0a20 202d 204e 4953 542d .13.10. - NIST- │ │ │ -002661c0: 3830 302d 3533 2d41 432d 3137 2861 290a 800-53-AC-17(a). │ │ │ -002661d0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -002661e0: 4143 2d36 2831 290a 2020 2d20 4e49 5354 AC-6(1). - NIST │ │ │ -002661f0: 2d38 3030 2d35 332d 434d 2d36 2861 290a -800-53-CM-6(a). │ │ │ -00266200: 2020 2d20 5043 492d 4453 532d 5265 712d - PCI-DSS-Req- │ │ │ -00266210: 322e 322e 340a 2020 2d20 5043 492d 4453 2.2.4. - PCI-DS │ │ │ -00266220: 5376 342d 322e 320a 2020 2d20 5043 492d Sv4-2.2. - PCI- │ │ │ -00266230: 4453 5376 342d 322e 322e 360a 2020 2d20 DSSv4-2.2.6. - │ │ │ -00266240: 636f 6e66 6967 7572 655f 7374 7261 7465 configure_strate │ │ │ -00266250: 6779 0a20 202d 2066 696c 655f 7065 726d gy. - file_perm │ │ │ -00266260: 6973 7369 6f6e 735f 7373 6864 5f70 7562 issions_sshd_pub │ │ │ -00266270: 5f6b 6579 0a20 202d 206c 6f77 5f63 6f6d _key. - low_com │ │ │ -00266280: 706c 6578 6974 790a 2020 2d20 6c6f 775f plexity. - low_ │ │ │ -00266290: 6469 7372 7570 7469 6f6e 0a20 202d 206d disruption. - m │ │ │ -002662a0: 6564 6975 6d5f 7365 7665 7269 7479 0a20 edium_severity. │ │ │ -002662b0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ -002662c0: 6465 640a 0a2d 206e 616d 653a 2046 696e ded..- name: Fin │ │ │ -002662d0: 6420 2f65 7463 2f73 7368 2f20 6669 6c65 d /etc/ssh/ file │ │ │ -002662e0: 2873 290a 2020 616e 7369 626c 652e 6275 (s). ansible.bu │ │ │ -002662f0: 696c 7469 6e2e 636f 6d6d 616e 643a 2066 iltin.command: f │ │ │ -00266300: 696e 6420 2d50 202f 6574 632f 7373 682f ind -P /etc/ssh/ │ │ │ -00266310: 202d 6d61 7864 6570 7468 2031 202d 7065 -maxdepth 1 -pe │ │ │ -00266320: 726d 202f 752b 7873 2c67 2b78 7773 2c6f rm /u+xs,g+xws,o │ │ │ -00266330: 2b78 7774 2020 2d74 7970 650a 2020 2020 +xwt -type. │ │ │ -00266340: 6620 2d72 6567 6578 7479 7065 2070 6f73 f -regextype pos │ │ │ -00266350: 6978 2d65 7874 656e 6465 6420 2d72 6567 ix-extended -reg │ │ │ -00266360: 6578 2022 5e2e 2a5c 2e70 7562 2422 0a20 ex "^.*\.pub$". │ │ │ -00266370: 2072 6567 6973 7465 723a 2066 696c 6573 register: files │ │ │ -00266380: 5f66 6f75 6e64 0a20 2063 6861 6e67 6564 _found. changed │ │ │ -00266390: 5f77 6865 6e3a 2066 616c 7365 0a20 2066 _when: false. f │ │ │ -002663a0: 6169 6c65 645f 7768 656e 3a20 6661 6c73 ailed_when: fals │ │ │ -002663b0: 650a 2020 6368 6563 6b5f 6d6f 6465 3a20 e. check_mode: │ │ │ -002663c0: 6661 6c73 650a 2020 7768 656e 3a20 2722 false. when: '" │ │ │ -002663d0: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ -002663e0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -002663f0: 7327 0a20 2074 6167 733a 0a20 202d 204e s'. tags:. - N │ │ │ -00266400: 4953 542d 3830 302d 3137 312d 332e 312e IST-800-171-3.1. │ │ │ -00266410: 3133 0a20 202d 204e 4953 542d 3830 302d 13. - NIST-800- │ │ │ -00266420: 3137 312d 332e 3133 2e31 300a 2020 2d20 171-3.13.10. - │ │ │ -00266430: 4e49 5354 2d38 3030 2d35 332d 4143 2d31 NIST-800-53-AC-1 │ │ │ -00266440: 3728 6129 0a20 202d 204e 4953 542d 3830 7(a). - NIST-80 │ │ │ -00266450: 302d 3533 2d41 432d 3628 3129 0a20 202d 0-53-AC-6(1). - │ │ │ -00266460: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ -00266470: 3628 6129 0a20 202d 2050 4349 2d44 5353 6(a). - PCI-DSS │ │ │ -00266480: 2d52 6571 2d32 2e32 2e34 0a20 202d 2050 -Req-2.2.4. - P │ │ │ -00266490: 4349 2d44 5353 7634 2d32 2e32 0a20 202d CI-DSSv4-2.2. - │ │ │ -002664a0: 2050 4349 2d44 5353 7634 2d32 2e32 2e36 PCI-DSSv4-2.2.6 │ │ │ -002664b0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73 . - configure_s │ │ │ -002664c0: 7472 6174 6567 790a 2020 2d20 6669 6c65 trategy. - file │ │ │ -002664d0: 5f70 6572 6d69 7373 696f 6e73 5f73 7368 _permissions_ssh │ │ │ -002664e0: 645f 7075 625f 6b65 790a 2020 2d20 6c6f d_pub_key. - lo │ │ │ -002664f0: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ -00266500: 206c 6f77 5f64 6973 7275 7074 696f 6e0a low_disruption. │ │ │ -00266510: 2020 2d20 6d65 6469 756d 5f73 6576 6572 - medium_sever │ │ │ -00266520: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f ity. - no_reboo │ │ │ -00266530: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65 t_needed..- name │ │ │ -00266540: 3a20 5365 7420 7065 726d 6973 7369 6f6e : Set permission │ │ │ -00266550: 7320 666f 7220 2f65 7463 2f73 7368 2f20 s for /etc/ssh/ │ │ │ -00266560: 6669 6c65 2873 290a 2020 616e 7369 626c file(s). ansibl │ │ │ -00266570: 652e 6275 696c 7469 6e2e 6669 6c65 3a0a e.builtin.file:. │ │ │ -00266580: 2020 2020 7061 7468 3a20 277b 7b20 6974 path: '{{ it │ │ │ -00266590: 656d 207d 7d27 0a20 2020 206d 6f64 653a em }}'. mode: │ │ │ -002665a0: 2075 2d78 732c 672d 7877 732c 6f2d 7877 u-xs,g-xws,o-xw │ │ │ -002665b0: 740a 2020 2020 7374 6174 653a 2066 696c t. state: fil │ │ │ -002665c0: 650a 2020 7769 7468 5f69 7465 6d73 3a0a e. with_items:. │ │ │ -002665d0: 2020 2d20 277b 7b20 6669 6c65 735f 666f - '{{ files_fo │ │ │ -002665e0: 756e 642e 7374 646f 7574 5f6c 696e 6573 und.stdout_lines │ │ │ -002665f0: 207d 7d27 0a20 2077 6865 6e3a 2027 226b }}'. when: '"k │ │ │ -00266600: 6572 6e65 6c22 2069 6e20 616e 7369 626c ernel" in ansibl │ │ │ -00266610: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -00266620: 270a 2020 7461 6773 3a0a 2020 2d20 4e49 '. tags:. - NI │ │ │ -00266630: 5354 2d38 3030 2d31 3731 2d33 2e31 2e31 ST-800-171-3.1.1 │ │ │ -00266640: 330a 2020 2d20 4e49 5354 2d38 3030 2d31 3. - NIST-800-1 │ │ │ -00266650: 3731 2d33 2e31 332e 3130 0a20 202d 204e 71-3.13.10. - N │ │ │ -00266660: 4953 542d 3830 302d 3533 2d41 432d 3137 IST-800-53-AC-17 │ │ │ -00266670: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ -00266680: 2d35 332d 4143 2d36 2831 290a 2020 2d20 -53-AC-6(1). - │ │ │ -00266690: 4e49 5354 2d38 3030 2d35 332d 434d 2d36 NIST-800-53-CM-6 │ │ │ -002666a0: 2861 290a 2020 2d20 5043 492d 4453 532d (a). - PCI-DSS- │ │ │ -002666b0: 5265 712d 322e 322e 340a 2020 2d20 5043 Req-2.2.4. - PC │ │ │ -002666c0: 492d 4453 5376 342d 322e 320a 2020 2d20 I-DSSv4-2.2. - │ │ │ -002666d0: 5043 492d 4453 5376 342d 322e 322e 360a PCI-DSSv4-2.2.6. │ │ │ -002666e0: 2020 2d20 636f 6e66 6967 7572 655f 7374 - configure_st │ │ │ -002666f0: 7261 7465 6779 0a20 202d 2066 696c 655f rategy. - file_ │ │ │ -00266700: 7065 726d 6973 7369 6f6e 735f 7373 6864 permissions_sshd │ │ │ -00266710: 5f70 7562 5f6b 6579 0a20 202d 206c 6f77 _pub_key. - low │ │ │ -00266720: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ -00266730: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20 low_disruption. │ │ │ -00266740: 202d 206d 6564 6975 6d5f 7365 7665 7269 - medium_severi │ │ │ -00266750: 7479 0a20 202d 206e 6f5f 7265 626f 6f74 ty. - no_reboot │ │ │ -00266760: 5f6e 6565 6465 640a 3c2f 636f 6465 3e3c _needed.< │ │ │ +00265e30: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ +00265e40: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +00265e50: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
- 
│ │ │ +00265f80: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ +00265f90: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ +00265fa0: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ +00265fb0: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ +00265fc0: 6f0a 2020 7461 6773 3a0a 2020 2d20 4e49  o.  tags:.  - NI
│ │ │ +00265fd0: 5354 2d38 3030 2d31 3731 2d33 2e31 2e31  ST-800-171-3.1.1
│ │ │ +00265fe0: 330a 2020 2d20 4e49 5354 2d38 3030 2d31  3.  - NIST-800-1
│ │ │ +00265ff0: 3731 2d33 2e31 332e 3130 0a20 202d 204e  71-3.13.10.  - N
│ │ │ +00266000: 4953 542d 3830 302d 3533 2d41 432d 3137  IST-800-53-AC-17
│ │ │ +00266010: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +00266020: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ +00266030: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +00266040: 2861 290a 2020 2d20 5043 492d 4453 532d  (a).  - PCI-DSS-
│ │ │ +00266050: 5265 712d 322e 322e 340a 2020 2d20 5043  Req-2.2.4.  - PC
│ │ │ +00266060: 492d 4453 5376 342d 322e 320a 2020 2d20  I-DSSv4-2.2.  - 
│ │ │ +00266070: 5043 492d 4453 5376 342d 322e 322e 360a  PCI-DSSv4-2.2.6.
│ │ │ +00266080: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +00266090: 7261 7465 6779 0a20 202d 2066 696c 655f  rategy.  - file_
│ │ │ +002660a0: 7065 726d 6973 7369 6f6e 735f 7373 6864  permissions_sshd
│ │ │ +002660b0: 5f70 7562 5f6b 6579 0a20 202d 206c 6f77  _pub_key.  - low
│ │ │ +002660c0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +002660d0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +002660e0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +002660f0: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ +00266100: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ +00266110: 2046 696e 6420 2f65 7463 2f73 7368 2f20   Find /etc/ssh/ 
│ │ │ +00266120: 6669 6c65 2873 290a 2020 616e 7369 626c  file(s).  ansibl
│ │ │ +00266130: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ +00266140: 643a 2066 696e 6420 2d50 202f 6574 632f  d: find -P /etc/
│ │ │ +00266150: 7373 682f 202d 6d61 7864 6570 7468 2031  ssh/ -maxdepth 1
│ │ │ +00266160: 202d 7065 726d 202f 752b 7873 2c67 2b78   -perm /u+xs,g+x
│ │ │ +00266170: 7773 2c6f 2b78 7774 2020 2d74 7970 650a  ws,o+xwt  -type.
│ │ │ +00266180: 2020 2020 6620 2d72 6567 6578 7479 7065      f -regextype
│ │ │ +00266190: 2070 6f73 6978 2d65 7874 656e 6465 6420   posix-extended 
│ │ │ +002661a0: 2d72 6567 6578 2022 5e2e 2a5c 2e70 7562  -regex "^.*\.pub
│ │ │ +002661b0: 2422 0a20 2072 6567 6973 7465 723a 2066  $".  register: f
│ │ │ +002661c0: 696c 6573 5f66 6f75 6e64 0a20 2063 6861  iles_found.  cha
│ │ │ +002661d0: 6e67 6564 5f77 6865 6e3a 2066 616c 7365  nged_when: false
│ │ │ +002661e0: 0a20 2066 6169 6c65 645f 7768 656e 3a20  .  failed_when: 
│ │ │ +002661f0: 6661 6c73 650a 2020 6368 6563 6b5f 6d6f  false.  check_mo
│ │ │ +00266200: 6465 3a20 6661 6c73 650a 2020 7768 656e  de: false.  when
│ │ │ +00266210: 3a20 2722 6b65 726e 656c 2220 696e 2061  : '"kernel" in a
│ │ │ +00266220: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +00266230: 6b61 6765 7327 0a20 2074 6167 733a 0a20  kages'.  tags:. 
│ │ │ +00266240: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ +00266250: 332e 312e 3133 0a20 202d 204e 4953 542d  3.1.13.  - NIST-
│ │ │ +00266260: 3830 302d 3137 312d 332e 3133 2e31 300a  800-171-3.13.10.
│ │ │ +00266270: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +00266280: 4143 2d31 3728 6129 0a20 202d 204e 4953  AC-17(a).  - NIS
│ │ │ +00266290: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ +002662a0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +002662b0: 2d43 4d2d 3628 6129 0a20 202d 2050 4349  -CM-6(a).  - PCI
│ │ │ +002662c0: 2d44 5353 2d52 6571 2d32 2e32 2e34 0a20  -DSS-Req-2.2.4. 
│ │ │ +002662d0: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ +002662e0: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ +002662f0: 2e32 2e36 0a20 202d 2063 6f6e 6669 6775  .2.6.  - configu
│ │ │ +00266300: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +00266310: 6669 6c65 5f70 6572 6d69 7373 696f 6e73  file_permissions
│ │ │ +00266320: 5f73 7368 645f 7075 625f 6b65 790a 2020  _sshd_pub_key.  
│ │ │ +00266330: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +00266340: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +00266350: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ +00266360: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ +00266370: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +00266380: 6e61 6d65 3a20 5365 7420 7065 726d 6973  name: Set permis
│ │ │ +00266390: 7369 6f6e 7320 666f 7220 2f65 7463 2f73  sions for /etc/s
│ │ │ +002663a0: 7368 2f20 6669 6c65 2873 290a 2020 616e  sh/ file(s).  an
│ │ │ +002663b0: 7369 626c 652e 6275 696c 7469 6e2e 6669  sible.builtin.fi
│ │ │ +002663c0: 6c65 3a0a 2020 2020 7061 7468 3a20 277b  le:.    path: '{
│ │ │ +002663d0: 7b20 6974 656d 207d 7d27 0a20 2020 206d  { item }}'.    m
│ │ │ +002663e0: 6f64 653a 2075 2d78 732c 672d 7877 732c  ode: u-xs,g-xws,
│ │ │ +002663f0: 6f2d 7877 740a 2020 2020 7374 6174 653a  o-xwt.    state:
│ │ │ +00266400: 2066 696c 650a 2020 7769 7468 5f69 7465   file.  with_ite
│ │ │ +00266410: 6d73 3a0a 2020 2d20 277b 7b20 6669 6c65  ms:.  - '{{ file
│ │ │ +00266420: 735f 666f 756e 642e 7374 646f 7574 5f6c  s_found.stdout_l
│ │ │ +00266430: 696e 6573 207d 7d27 0a20 2077 6865 6e3a  ines }}'.  when:
│ │ │ +00266440: 2027 226b 6572 6e65 6c22 2069 6e20 616e   '"kernel" in an
│ │ │ +00266450: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +00266460: 6167 6573 270a 2020 7461 6773 3a0a 2020  ages'.  tags:.  
│ │ │ +00266470: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33  - NIST-800-171-3
│ │ │ +00266480: 2e31 2e31 330a 2020 2d20 4e49 5354 2d38  .1.13.  - NIST-8
│ │ │ +00266490: 3030 2d31 3731 2d33 2e31 332e 3130 0a20  00-171-3.13.10. 
│ │ │ +002664a0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +002664b0: 432d 3137 2861 290a 2020 2d20 4e49 5354  C-17(a).  - NIST
│ │ │ +002664c0: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ +002664d0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +002664e0: 434d 2d36 2861 290a 2020 2d20 5043 492d  CM-6(a).  - PCI-
│ │ │ +002664f0: 4453 532d 5265 712d 322e 322e 340a 2020  DSS-Req-2.2.4.  
│ │ │ +00266500: 2d20 5043 492d 4453 5376 342d 322e 320a  - PCI-DSSv4-2.2.
│ │ │ +00266510: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ +00266520: 322e 360a 2020 2d20 636f 6e66 6967 7572  2.6.  - configur
│ │ │ +00266530: 655f 7374 7261 7465 6779 0a20 202d 2066  e_strategy.  - f
│ │ │ +00266540: 696c 655f 7065 726d 6973 7369 6f6e 735f  ile_permissions_
│ │ │ +00266550: 7373 6864 5f70 7562 5f6b 6579 0a20 202d  sshd_pub_key.  -
│ │ │ +00266560: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +00266570: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +00266580: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ +00266590: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ +002665a0: 626f 6f74 5f6e 6565 6465 640a 3c2f 636f  boot_needed.
< │ │ │ +002665c0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +002665d0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +002665e0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +002665f0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +00266600: 6438 3139 2220 7461 6269 6e64 6578 3d22 d819" tabindex=" │ │ │ +00266610: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +00266620: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +00266630: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +00266640: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +00266650: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +00266660: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ +00266670: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
inc
│ │ │ +002666c0: 6c75 6465 2073 7368 5f70 7562 6c69 635f  lude ssh_public_
│ │ │ +002666d0: 6b65 795f 7065 726d 730a 0a63 6c61 7373  key_perms..class
│ │ │ +002666e0: 2073 7368 5f70 7562 6c69 635f 6b65 795f   ssh_public_key_
│ │ │ +002666f0: 7065 726d 7320 7b0a 2020 6578 6563 207b  perms {.  exec {
│ │ │ +00266700: 2027 7373 6864 5f70 7562 5f6b 6579 273a   'sshd_pub_key':
│ │ │ +00266710: 0a20 2020 2063 6f6d 6d61 6e64 203d 2667  .    command =&g
│ │ │ +00266720: 743b 2022 6368 6d6f 6420 3036 3434 202f  t; "chmod 0644 /
│ │ │ +00266730: 6574 632f 7373 682f 2a2e 7075 6222 2c0a  etc/ssh/*.pub",.
│ │ │ +00266740: 2020 2020 7061 7468 2020 2020 3d26 6774      path    =>
│ │ │ +00266750: 3b20 272f 6269 6e3a 2f75 7372 2f62 696e  ; '/bin:/usr/bin
│ │ │ +00266760: 270a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  '.  }.}.<
│ │ │  00266770: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediati │ │ │ -0026cf30: 6f6e 204f 5342 7569 6c64 2042 6c75 6570 on OSBuild Bluep │ │ │ -0026cf40: 7269 6e74 2073 6e69 7070 6574 20e2 87b2 rint snippet ... │ │ │ -0026cf50: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
.[[packages]]
│ │ │ -0026cfa0: 0a6e 616d 6520 3d20 2273 7373 6422 0a76  .name = "sssd".v
│ │ │ -0026cfb0: 6572 7369 6f6e 203d 2022 2a22 0a3c 2f63  ersion = "*".
│ │ │ -0026cfd0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -0026d070: 6564 6961 7469 6f6e 2041 6e61 636f 6e64 ediation Anacond │ │ │ -0026d080: 6120 736e 6970 7065 7420 e287 b23c 2f61 a snippet ...
Com │ │ │ +00265ed0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +00265f00: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +00265f20: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +00265f30: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +00265f50: 2f74 683e 3c74 643e 636f 6e66 6967 7572 /th>configur │ │ │ +00265f60: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ -0026d120: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0026d130: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -0026d180: 3c74 723e 3c74 683e 5374 7261 7465 6779
.pa
│ │ │ -0026d1c0: 636b 6167 6520 2d2d 6164 643d 7373 7364  ckage --add=sssd
│ │ │ -0026d1d0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Pup │ │ │ -0026d290: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ -0026d2a0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
C │ │ │ -0026d110: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -0026d140: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -0026d150: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -0026d190: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -0026d1a0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ -0026d370: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0026d380: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
i
│ │ │ -0026d3d0: 6e63 6c75 6465 2069 6e73 7461 6c6c 5f73  nclude install_s
│ │ │ -0026d3e0: 7373 640a 0a63 6c61 7373 2069 6e73 7461  ssd..class insta
│ │ │ -0026d3f0: 6c6c 5f73 7373 6420 7b0a 2020 7061 636b  ll_sssd {.  pack
│ │ │ -0026d400: 6167 6520 7b20 2773 7373 6427 3a0a 2020  age { 'sssd':.  
│ │ │ -0026d410: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ -0026d420: 696e 7374 616c 6c65 6427 2c0a 2020 7d0a  installed',.  }.
│ │ │ -0026d430: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -0026d440: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -0026d4f0: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -0026d500: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
Complexity:low
Disrup │ │ │ -0026d350: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0026d360: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0026d3a0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -0026d3b0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ -0026d580: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -0026d5a0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -0026d5f0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
- name: Gather 
│ │ │ -0026d640: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -0026d650: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -0026d660: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -0026d670: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -0026d680: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -0026d690: 3628 6129 0a20 202d 2065 6e61 626c 655f  6(a).  - enable_
│ │ │ -0026d6a0: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ -0026d6b0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -0026d6c0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -0026d6d0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -0026d6e0: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ -0026d6f0: 5f6e 6565 6465 640a 2020 2d20 7061 636b  _needed.  - pack
│ │ │ -0026d700: 6167 655f 7373 7364 5f69 6e73 7461 6c6c  age_sssd_install
│ │ │ -0026d710: 6564 0a0a 2d20 6e61 6d65 3a20 456e 7375  ed..- name: Ensu
│ │ │ -0026d720: 7265 2073 7373 6420 6973 2069 6e73 7461  re sssd is insta
│ │ │ -0026d730: 6c6c 6564 0a20 2061 6e73 6962 6c65 2e62  lled.  ansible.b
│ │ │ -0026d740: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a  uiltin.package:.
│ │ │ -0026d750: 2020 2020 6e61 6d65 3a20 7373 7364 0a20      name: sssd. 
│ │ │ -0026d760: 2020 2073 7461 7465 3a20 7072 6573 656e     state: presen
│ │ │ -0026d770: 740a 2020 7768 656e 3a20 2722 7373 7364  t.  when: '"sssd
│ │ │ -0026d780: 2d63 6f6d 6d6f 6e22 2069 6e20 616e 7369  -common" in ansi
│ │ │ -0026d790: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -0026d7a0: 6573 270a 2020 7461 6773 3a0a 2020 2d20  es'.  tags:.  - 
│ │ │ -0026d7b0: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -0026d7c0: 2861 290a 2020 2d20 656e 6162 6c65 5f73  (a).  - enable_s
│ │ │ -0026d7d0: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ -0026d7e0: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ -0026d7f0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -0026d800: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -0026d810: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ -0026d820: 6e65 6564 6564 0a20 202d 2070 6163 6b61  needed.  - packa
│ │ │ -0026d830: 6765 5f73 7373 645f 696e 7374 616c 6c65  ge_sssd_installe
│ │ │ -0026d840: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ -0026d850: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Sh │ │ │ -0026d900: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
low
Disr │ │ │ -0026d5b0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -0026d5c0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -0026d600: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ -0026d610: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ -0026d9a0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
# 
│ │ │ -0026da40: 5265 6d65 6469 6174 696f 6e20 6973 2061  Remediation is a
│ │ │ -0026da50: 7070 6c69 6361 626c 6520 6f6e 6c79 2069  pplicable only i
│ │ │ -0026da60: 6e20 6365 7274 6169 6e20 706c 6174 666f  n certain platfo
│ │ │ -0026da70: 726d 730a 6966 2072 706d 202d 2d71 7569  rms.if rpm --qui
│ │ │ -0026da80: 6574 202d 7120 7373 7364 2d63 6f6d 6d6f  et -q sssd-commo
│ │ │ -0026da90: 6e3b 2074 6865 6e0a 0a69 6620 2120 7270  n; then..if ! rp
│ │ │ -0026daa0: 6d20 2d71 202d 2d71 7569 6574 2022 7373  m -q --quiet "ss
│ │ │ -0026dab0: 7364 2220 3b20 7468 656e 0a20 2020 2064  sd" ; then.    d
│ │ │ -0026dac0: 6e66 2069 6e73 7461 6c6c 202d 7920 2273  nf install -y "s
│ │ │ -0026dad0: 7373 6422 0a66 690a 0a65 6c73 650a 2020  ssd".fi..else.  
│ │ │ -0026dae0: 2020 2667 743b 2661 6d70 3b32 2065 6368    >&2 ech
│ │ │ -0026daf0: 6f20 2752 656d 6564 6961 7469 6f6e 2069  o 'Remediation i
│ │ │ -0026db00: 7320 6e6f 7420 6170 706c 6963 6162 6c65  s not applicable
│ │ │ -0026db10: 2c20 6e6f 7468 696e 6720 7761 7320 646f  , nothing was do
│ │ │ -0026db20: 6e65 270a 6669 0a3c 2f63 6f64 653e 3c2f  ne'.fi.
│ │ │ +0026cfc0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ +0026d050: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ -0026d990: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -0026d9c0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -0026d9d0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -0026da10: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -0026da20: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexi │ │ │ +0026cfd0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +0026cfe0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +0026d020: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +0026d030: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
│ │ │ +0026d070: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ +0026d080: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ +0026d090: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ +0026d0a0: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ +0026d0b0: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ +0026d0c0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +0026d0d0: 332d 434d 2d36 2861 290a 2020 2d20 656e  3-CM-6(a).  - en
│ │ │ +0026d0e0: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ +0026d0f0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +0026d100: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +0026d110: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ +0026d120: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ +0026d130: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ +0026d140: 2070 6163 6b61 6765 5f73 7373 645f 696e   package_sssd_in
│ │ │ +0026d150: 7374 616c 6c65 640a 0a2d 206e 616d 653a  stalled..- name:
│ │ │ +0026d160: 2045 6e73 7572 6520 7373 7364 2069 7320   Ensure sssd is 
│ │ │ +0026d170: 696e 7374 616c 6c65 640a 2020 616e 7369  installed.  ansi
│ │ │ +0026d180: 626c 652e 6275 696c 7469 6e2e 7061 636b  ble.builtin.pack
│ │ │ +0026d190: 6167 653a 0a20 2020 206e 616d 653a 2073  age:.    name: s
│ │ │ +0026d1a0: 7373 640a 2020 2020 7374 6174 653a 2070  ssd.    state: p
│ │ │ +0026d1b0: 7265 7365 6e74 0a20 2077 6865 6e3a 2027  resent.  when: '
│ │ │ +0026d1c0: 2273 7373 642d 636f 6d6d 6f6e 2220 696e  "sssd-common" in
│ │ │ +0026d1d0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +0026d1e0: 6163 6b61 6765 7327 0a20 2074 6167 733a  ackages'.  tags:
│ │ │ +0026d1f0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +0026d200: 2d43 4d2d 3628 6129 0a20 202d 2065 6e61  -CM-6(a).  - ena
│ │ │ +0026d210: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ +0026d220: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +0026d230: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +0026d240: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ +0026d250: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ +0026d260: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ +0026d270: 7061 636b 6167 655f 7373 7364 5f69 6e73  package_sssd_ins
│ │ │ +0026d280: 7461 6c6c 6564 0a3c 2f63 6f64 653e 3c2f  talled.
Remediati │ │ │ +0026d340: 6f6e 2050 7570 7065 7420 736e 6970 7065 on Puppet snippe │ │ │ +0026d350: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +0026d3d0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +0026d3e0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +0026d400: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +0026d410: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +0026d430: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +0026d450: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ +0026d480: 636f 6465 3e69 6e63 6c75 6465 2069 6e73  code>include ins
│ │ │ +0026d490: 7461 6c6c 5f73 7373 640a 0a63 6c61 7373  tall_sssd..class
│ │ │ +0026d4a0: 2069 6e73 7461 6c6c 5f73 7373 6420 7b0a   install_sssd {.
│ │ │ +0026d4b0: 2020 7061 636b 6167 6520 7b20 2773 7373    package { 'sss
│ │ │ +0026d4c0: 6427 3a0a 2020 2020 656e 7375 7265 203d  d':.    ensure =
│ │ │ +0026d4d0: 2667 743b 2027 696e 7374 616c 6c65 6427  > 'installed'
│ │ │ +0026d4e0: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ +0026d4f0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ +0026d5a0: 696f 6e20 4f53 4275 696c 6420 426c 7565 ion OSBuild Blue │ │ │ +0026d5b0: 7072 696e 7420 736e 6970 7065 7420 e287 print snippet .. │ │ │ +0026d5c0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
.[[packages]
│ │ │ +0026d610: 5d0a 6e61 6d65 203d 2022 7373 7364 220a  ].name = "sssd".
│ │ │ +0026d620: 7665 7273 696f 6e20 3d20 222a 220a 3c2f  version = "*".
Re │ │ │ +0026d6e0: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ +0026d6f0: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
Comp │ │ │ +0026d780: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +0026d790: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +0026d7b0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +0026d7d0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +0026d7e0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ +0026d820: 7072 653e 3c63 6f64 653e 2320 5265 6d65 pre># Reme │ │ │ +0026d830: 6469 6174 696f 6e20 6973 2061 7070 6c69 diation is appli │ │ │ +0026d840: 6361 626c 6520 6f6e 6c79 2069 6e20 6365 cable only in ce │ │ │ +0026d850: 7274 6169 6e20 706c 6174 666f 726d 730a rtain platforms. │ │ │ +0026d860: 6966 2072 706d 202d 2d71 7569 6574 202d if rpm --quiet - │ │ │ +0026d870: 7120 7373 7364 2d63 6f6d 6d6f 6e3b 2074 q sssd-common; t │ │ │ +0026d880: 6865 6e0a 0a69 6620 2120 7270 6d20 2d71 hen..if ! rpm -q │ │ │ +0026d890: 202d 2d71 7569 6574 2022 7373 7364 2220 --quiet "sssd" │ │ │ +0026d8a0: 3b20 7468 656e 0a20 2020 2064 6e66 2069 ; then. dnf i │ │ │ +0026d8b0: 6e73 7461 6c6c 202d 7920 2273 7373 6422 nstall -y "sssd" │ │ │ +0026d8c0: 0a66 690a 0a65 6c73 650a 2020 2020 2667 .fi..else. &g │ │ │ +0026d8d0: 743b 2661 6d70 3b32 2065 6368 6f20 2752 t;&2 echo 'R │ │ │ +0026d8e0: 656d 6564 6961 7469 6f6e 2069 7320 6e6f emediation is no │ │ │ +0026d8f0: 7420 6170 706c 6963 6162 6c65 2c20 6e6f t applicable, no │ │ │ +0026d900: 7468 696e 6720 7761 7320 646f 6e65 270a thing was done'. │ │ │ +0026d910: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e fi. │ │ │ +0026d920: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation A │ │ │ +0026d9d0: 6e61 636f 6e64 6120 736e 6970 7065 7420 naconda snippet │ │ │ +0026d9e0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ +0026da70: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +0026da90: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +0026dab0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +0026dae0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +0026daf0: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ +0026db00: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
.package --ad
│ │ │ +0026db20: 643d 7373 7364 0a3c 2f63 6f64 653e 3c2f  d=sssd.
│ │ │ 0026db40: 3c2f 7464 3e3c 2f74 723e 3c2f 7462 6f64 < │ │ │ 0026db60: 2f74 723e 3c74 7220 6461 7461 2d74 742d /tr>Remediati │ │ │ -0026ea10: 6f6e 204f 5342 7569 6c64 2042 6c75 6570 on OSBuild Bluep │ │ │ -0026ea20: 7269 6e74 2073 6e69 7070 6574 20e2 87b2 rint snippet ... │ │ │ -0026ea30: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
.[customizati
│ │ │ -0026ea80: 6f6e 732e 7365 7276 6963 6573 5d0a 656e  ons.services].en
│ │ │ -0026ea90: 6162 6c65 6420 3d20 5b22 7373 7364 225d  abled = ["sssd"]
│ │ │ -0026eaa0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Pup │ │ │ -0026eb60: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ -0026eb70: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -0026ec40: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0026ec50: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
i
│ │ │ -0026eca0: 6e63 6c75 6465 2065 6e61 626c 655f 7373  nclude enable_ss
│ │ │ -0026ecb0: 7364 0a0a 636c 6173 7320 656e 6162 6c65  sd..class enable
│ │ │ -0026ecc0: 5f73 7373 6420 7b0a 2020 7365 7276 6963  _sssd {.  servic
│ │ │ -0026ecd0: 6520 7b27 7373 7364 273a 0a20 2020 2065  e {'sssd':.    e
│ │ │ -0026ece0: 6e61 626c 6520 3d26 6774 3b20 7472 7565  nable => true
│ │ │ -0026ecf0: 2c0a 2020 2020 656e 7375 7265 203d 2667  ,.    ensure =&g
│ │ │ -0026ed00: 743b 2027 7275 6e6e 696e 6727 2c0a 2020  t; 'running',.  
│ │ │ -0026ed10: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Remediation │ │ │ -0026edd0: 416e 7369 626c 6520 736e 6970 7065 7420 Ansible snippet │ │ │ -0026ede0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
low< │ │ │ -0026eeb0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ -0026ef00: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:low
Disrup │ │ │ -0026ec20: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0026ec30: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0026ec70: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -0026ec80: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity: │ │ │ -0026ee70: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ -0026ee90: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:false
St │ │ │ -0026eee0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -0026eef0: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable
- name: Gathe
│ │ │ -0026ef20: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ -0026ef30: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ -0026ef40: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ -0026ef50: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ -0026ef60: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -0026ef70: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ -0026ef80: 3830 302d 3533 2d49 412d 3528 3130 290a  800-53-IA-5(10).
│ │ │ -0026ef90: 2020 2d20 656e 6162 6c65 5f73 7472 6174    - enable_strat
│ │ │ -0026efa0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ -0026efb0: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -0026efc0: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -0026efd0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -0026efe0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -0026eff0: 6564 0a20 202d 2073 6572 7669 6365 5f73  ed.  - service_s
│ │ │ -0026f000: 7373 645f 656e 6162 6c65 640a 0a2d 206e  ssd_enabled..- n
│ │ │ -0026f010: 616d 653a 2045 6e61 626c 6520 7468 6520  ame: Enable the 
│ │ │ -0026f020: 5353 5344 2053 6572 7669 6365 202d 2045  SSSD Service - E
│ │ │ -0026f030: 6e61 626c 6520 7365 7276 6963 6520 7373  nable service ss
│ │ │ -0026f040: 7364 0a20 2062 6c6f 636b 3a0a 0a20 202d  sd.  block:..  -
│ │ │ -0026f050: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ -0026f060: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ -0026f070: 2020 2020 616e 7369 626c 652e 6275 696c      ansible.buil
│ │ │ -0026f080: 7469 6e2e 7061 636b 6167 655f 6661 6374  tin.package_fact
│ │ │ -0026f090: 733a 0a20 2020 2020 206d 616e 6167 6572  s:.      manager
│ │ │ -0026f0a0: 3a20 6175 746f 0a0a 2020 2d20 6e61 6d65  : auto..  - name
│ │ │ -0026f0b0: 3a20 456e 6162 6c65 2074 6865 2053 5353  : Enable the SSS
│ │ │ -0026f0c0: 4420 5365 7276 6963 6520 2d20 456e 6162  D Service - Enab
│ │ │ -0026f0d0: 6c65 2053 6572 7669 6365 2073 7373 640a  le Service sssd.
│ │ │ -0026f0e0: 2020 2020 616e 7369 626c 652e 6275 696c      ansible.buil
│ │ │ -0026f0f0: 7469 6e2e 7379 7374 656d 643a 0a20 2020  tin.systemd:.   
│ │ │ -0026f100: 2020 206e 616d 653a 2073 7373 640a 2020     name: sssd.  
│ │ │ -0026f110: 2020 2020 656e 6162 6c65 643a 2074 7275      enabled: tru
│ │ │ -0026f120: 650a 2020 2020 2020 7374 6174 653a 2073  e.      state: s
│ │ │ -0026f130: 7461 7274 6564 0a20 2020 2020 206d 6173  tarted.      mas
│ │ │ -0026f140: 6b65 643a 2066 616c 7365 0a20 2020 2077  ked: false.    w
│ │ │ -0026f150: 6865 6e3a 0a20 2020 202d 2027 2273 7373  hen:.    - '"sss
│ │ │ -0026f160: 642d 636f 6d6d 6f6e 2220 696e 2061 6e73  d-common" in ans
│ │ │ -0026f170: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -0026f180: 6765 7327 0a20 2074 6167 733a 0a20 202d  ges'.  tags:.  -
│ │ │ -0026f190: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -0026f1a0: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ -0026f1b0: 302d 3533 2d49 412d 3528 3130 290a 2020  0-53-IA-5(10).  
│ │ │ -0026f1c0: 2d20 656e 6162 6c65 5f73 7472 6174 6567  - enable_strateg
│ │ │ -0026f1d0: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -0026f1e0: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -0026f1f0: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ -0026f200: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -0026f210: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -0026f220: 0a20 202d 2073 6572 7669 6365 5f73 7373  .  - service_sss
│ │ │ -0026f230: 645f 656e 6162 6c65 640a 2020 2d20 7370  d_enabled.  - sp
│ │ │ -0026f240: 6563 6961 6c5f 7365 7276 6963 655f 626c  ecial_service_bl
│ │ │ -0026f250: 6f63 6b0a 2020 7768 656e 3a0a 2020 2d20  ock.  when:.  - 
│ │ │ -0026f260: 2722 7373 7364 2d63 6f6d 6d6f 6e22 2069  '"sssd-common" i
│ │ │ -0026f270: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -0026f280: 7061 636b 6167 6573 270a 2020 2d20 2820  packages'.  - ( 
│ │ │ -0026f290: 2273 7373 642d 636f 6d6d 6f6e 2220 696e  "sssd-common" in
│ │ │ -0026f2a0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -0026f2b0: 6163 6b61 6765 7320 616e 6420 226b 6572  ackages and "ker
│ │ │ -0026f2c0: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -0026f2d0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -0026f2e0: 2020 2029 0a3c 2f63 6f64 653e 3c2f 7072     ).
│ │ │ +0026eaa0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +0026eab0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +0026eac0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +0026eb00: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +0026eb10: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +0026eb30: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ +0026eb50: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ +0026eb60: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ +0026eb70: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ +0026eb80: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ +0026eb90: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ +0026eba0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +0026ebb0: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +0026ebc0: 5354 2d38 3030 2d35 332d 4941 2d35 2831  ST-800-53-IA-5(1
│ │ │ +0026ebd0: 3029 0a20 202d 2065 6e61 626c 655f 7374  0).  - enable_st
│ │ │ +0026ebe0: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ +0026ebf0: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ +0026ec00: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +0026ec10: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +0026ec20: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +0026ec30: 6565 6465 640a 2020 2d20 7365 7276 6963  eeded.  - servic
│ │ │ +0026ec40: 655f 7373 7364 5f65 6e61 626c 6564 0a0a  e_sssd_enabled..
│ │ │ +0026ec50: 2d20 6e61 6d65 3a20 456e 6162 6c65 2074  - name: Enable t
│ │ │ +0026ec60: 6865 2053 5353 4420 5365 7276 6963 6520  he SSSD Service 
│ │ │ +0026ec70: 2d20 456e 6162 6c65 2073 6572 7669 6365  - Enable service
│ │ │ +0026ec80: 2073 7373 640a 2020 626c 6f63 6b3a 0a0a   sssd.  block:..
│ │ │ +0026ec90: 2020 2d20 6e61 6d65 3a20 4761 7468 6572    - name: Gather
│ │ │ +0026eca0: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ +0026ecb0: 7473 0a20 2020 2061 6e73 6962 6c65 2e62  ts.    ansible.b
│ │ │ +0026ecc0: 7569 6c74 696e 2e70 6163 6b61 6765 5f66  uiltin.package_f
│ │ │ +0026ecd0: 6163 7473 3a0a 2020 2020 2020 6d61 6e61  acts:.      mana
│ │ │ +0026ece0: 6765 723a 2061 7574 6f0a 0a20 202d 206e  ger: auto..  - n
│ │ │ +0026ecf0: 616d 653a 2045 6e61 626c 6520 7468 6520  ame: Enable the 
│ │ │ +0026ed00: 5353 5344 2053 6572 7669 6365 202d 2045  SSSD Service - E
│ │ │ +0026ed10: 6e61 626c 6520 5365 7276 6963 6520 7373  nable Service ss
│ │ │ +0026ed20: 7364 0a20 2020 2061 6e73 6962 6c65 2e62  sd.    ansible.b
│ │ │ +0026ed30: 7569 6c74 696e 2e73 7973 7465 6d64 3a0a  uiltin.systemd:.
│ │ │ +0026ed40: 2020 2020 2020 6e61 6d65 3a20 7373 7364        name: sssd
│ │ │ +0026ed50: 0a20 2020 2020 2065 6e61 626c 6564 3a20  .      enabled: 
│ │ │ +0026ed60: 7472 7565 0a20 2020 2020 2073 7461 7465  true.      state
│ │ │ +0026ed70: 3a20 7374 6172 7465 640a 2020 2020 2020  : started.      
│ │ │ +0026ed80: 6d61 736b 6564 3a20 6661 6c73 650a 2020  masked: false.  
│ │ │ +0026ed90: 2020 7768 656e 3a0a 2020 2020 2d20 2722    when:.    - '"
│ │ │ +0026eda0: 7373 7364 2d63 6f6d 6d6f 6e22 2069 6e20  sssd-common" in 
│ │ │ +0026edb0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +0026edc0: 636b 6167 6573 270a 2020 7461 6773 3a0a  ckages'.  tags:.
│ │ │ +0026edd0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +0026ede0: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ +0026edf0: 2d38 3030 2d35 332d 4941 2d35 2831 3029  -800-53-IA-5(10)
│ │ │ +0026ee00: 0a20 202d 2065 6e61 626c 655f 7374 7261  .  - enable_stra
│ │ │ +0026ee10: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ +0026ee20: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +0026ee30: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ +0026ee40: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +0026ee50: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +0026ee60: 6465 640a 2020 2d20 7365 7276 6963 655f  ded.  - service_
│ │ │ +0026ee70: 7373 7364 5f65 6e61 626c 6564 0a20 202d  sssd_enabled.  -
│ │ │ +0026ee80: 2073 7065 6369 616c 5f73 6572 7669 6365   special_service
│ │ │ +0026ee90: 5f62 6c6f 636b 0a20 2077 6865 6e3a 0a20  _block.  when:. 
│ │ │ +0026eea0: 202d 2027 2273 7373 642d 636f 6d6d 6f6e   - '"sssd-common
│ │ │ +0026eeb0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +0026eec0: 7473 2e70 6163 6b61 6765 7327 0a20 202d  ts.packages'.  -
│ │ │ +0026eed0: 2028 2022 7373 7364 2d63 6f6d 6d6f 6e22   ( "sssd-common"
│ │ │ +0026eee0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +0026eef0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +0026ef00: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +0026ef10: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +0026ef20: 730a 2020 2020 290a 3c2f 636f 6465 3e3c  s.    ).<
│ │ │ +0026ef30: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ +0026efe0: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ +0026eff0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +0026f070: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +0026f080: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +0026f090: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +0026f0d0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +0026f0e0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +0026f100: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ +0026f120: 3c63 6f64 653e 696e 636c 7564 6520 656e  include en
│ │ │ +0026f130: 6162 6c65 5f73 7373 640a 0a63 6c61 7373  able_sssd..class
│ │ │ +0026f140: 2065 6e61 626c 655f 7373 7364 207b 0a20   enable_sssd {. 
│ │ │ +0026f150: 2073 6572 7669 6365 207b 2773 7373 6427   service {'sssd'
│ │ │ +0026f160: 3a0a 2020 2020 656e 6162 6c65 203d 2667  :.    enable =&g
│ │ │ +0026f170: 743b 2074 7275 652c 0a20 2020 2065 6e73  t; true,.    ens
│ │ │ +0026f180: 7572 6520 3d26 6774 3b20 2772 756e 6e69  ure => 'runni
│ │ │ +0026f190: 6e67 272c 0a20 207d 0a7d 0a3c 2f63 6f64  ng',.  }.}.
Remed │ │ │ +0026f250: 6961 7469 6f6e 204f 5342 7569 6c64 2042 iation OSBuild B │ │ │ +0026f260: 6c75 6570 7269 6e74 2073 6e69 7070 6574 lueprint snippet │ │ │ +0026f270: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
.[customi
│ │ │ +0026f2c0: 7a61 7469 6f6e 732e 7365 7276 6963 6573  zations.services
│ │ │ +0026f2d0: 5d0a 656e 6162 6c65 6420 3d20 5b22 7373  ].enabled = ["ss
│ │ │ +0026f2e0: 7364 225d 0a3c 2f63 6f64 653e 3c2f 7072  sd"].
Remedi │ │ │ -003fb440: 6174 696f 6e20 4f53 4275 696c 6420 426c ation OSBuild Bl │ │ │ -003fb450: 7565 7072 696e 7420 736e 6970 7065 7420 ueprint snippet │ │ │ -003fb460: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
│ │ │ -003fb4a0: 3c63 6f64 653e 0a5b 5b70 6163 6b61 6765  .[[package
│ │ │ -003fb4b0: 735d 5d0a 6e61 6d65 203d 2022 6175 6469  s]].name = "audi
│ │ │ -003fb4c0: 7422 0a76 6572 7369 6f6e 203d 2022 2a22  t".version = "*"
│ │ │ -003fb4d0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Ana │ │ │ -003fb590: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ -003fb5a0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -003fb620: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -003fb640: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -003fb690: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
.package --add=
│ │ │ -003fb6e0: 6175 6469 740a 3c2f 636f 6465 3e3c 2f70  audit.

Remediatio │ │ │ -003fb7a0: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ -003fb7b0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
< │ │ │ -003fb870: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -003fb880: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
low
Disr │ │ │ -003fb650: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -003fb660: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -003fb6a0: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ -003fb6b0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexity │ │ │ -003fb840: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ -003fb860: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ -003fb890: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ -003fb8b0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
include inst
│ │ │ -003fb8f0: 616c 6c5f 6175 6469 740a 0a63 6c61 7373  all_audit..class
│ │ │ -003fb900: 2069 6e73 7461 6c6c 5f61 7564 6974 207b   install_audit {
│ │ │ -003fb910: 0a20 2070 6163 6b61 6765 207b 2027 6175  .  package { 'au
│ │ │ -003fb920: 6469 7427 3a0a 2020 2020 656e 7375 7265  dit':.    ensure
│ │ │ -003fb930: 203d 2667 743b 2027 696e 7374 616c 6c65   => 'installe
│ │ │ -003fb940: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  d',.  }.}.
Remedi │ │ │ -003fba00: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -003fba10: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -003fbac0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -003fbae0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -003fbb10: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -003fbaa0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -003fbab0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -003fbad0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -003fbaf0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -003fbb00: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

- name: │ │ │ -003fbb50: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ -003fbb60: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ -003fbb70: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ -003fbb80: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ -003fbb90: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ -003fbba0: 302d 3533 2d41 432d 3728 6129 0a20 202d 0-53-AC-7(a). - │ │ │ -003fbbb0: 204e 4953 542d 3830 302d 3533 2d41 552d NIST-800-53-AU- │ │ │ -003fbbc0: 3132 2832 290a 2020 2d20 4e49 5354 2d38 12(2). - NIST-8 │ │ │ -003fbbd0: 3030 2d35 332d 4155 2d31 340a 2020 2d20 00-53-AU-14. - │ │ │ -003fbbe0: 4e49 5354 2d38 3030 2d35 332d 4155 2d32 NIST-800-53-AU-2 │ │ │ -003fbbf0: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ -003fbc00: 2d35 332d 4155 2d37 2831 290a 2020 2d20 -53-AU-7(1). - │ │ │ -003fbc10: 4e49 5354 2d38 3030 2d35 332d 4155 2d37 NIST-800-53-AU-7 │ │ │ -003fbc20: 2832 290a 2020 2d20 4e49 5354 2d38 3030 (2). - NIST-800 │ │ │ -003fbc30: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ -003fbc40: 5043 492d 4453 532d 5265 712d 3130 2e31 PCI-DSS-Req-10.1 │ │ │ -003fbc50: 0a20 202d 2050 4349 2d44 5353 7634 2d31 . - PCI-DSSv4-1 │ │ │ -003fbc60: 302e 320a 2020 2d20 5043 492d 4453 5376 0.2. - PCI-DSSv │ │ │ -003fbc70: 342d 3130 2e32 2e31 0a20 202d 2065 6e61 4-10.2.1. - ena │ │ │ -003fbc80: 626c 655f 7374 7261 7465 6779 0a20 202d ble_strategy. - │ │ │ -003fbc90: 206c 6f77 5f63 6f6d 706c 6578 6974 790a low_complexity. │ │ │ -003fbca0: 2020 2d20 6c6f 775f 6469 7372 7570 7469 - low_disrupti │ │ │ -003fbcb0: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365 on. - medium_se │ │ │ -003fbcc0: 7665 7269 7479 0a20 202d 206e 6f5f 7265 verity. - no_re │ │ │ -003fbcd0: 626f 6f74 5f6e 6565 6465 640a 2020 2d20 boot_needed. - │ │ │ -003fbce0: 7061 636b 6167 655f 6175 6469 745f 696e package_audit_in │ │ │ -003fbcf0: 7374 616c 6c65 640a 0a2d 206e 616d 653a stalled..- name: │ │ │ -003fbd00: 2045 6e73 7572 6520 6175 6469 7420 6973 Ensure audit is │ │ │ -003fbd10: 2069 6e73 7461 6c6c 6564 0a20 2061 6e73 installed. ans │ │ │ -003fbd20: 6962 6c65 2e62 7569 6c74 696e 2e70 6163 ible.builtin.pac │ │ │ -003fbd30: 6b61 6765 3a0a 2020 2020 6e61 6d65 3a20 kage:. name: │ │ │ -003fbd40: 6175 6469 740a 2020 2020 7374 6174 653a audit. state: │ │ │ -003fbd50: 2070 7265 7365 6e74 0a20 2077 6865 6e3a present. when: │ │ │ -003fbd60: 2027 226b 6572 6e65 6c22 2069 6e20 616e '"kernel" in an │ │ │ -003fbd70: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ -003fbd80: 6167 6573 270a 2020 7461 6773 3a0a 2020 ages'. tags:. │ │ │ -003fbd90: 2d20 4e49 5354 2d38 3030 2d35 332d 4143 - NIST-800-53-AC │ │ │ -003fbda0: 2d37 2861 290a 2020 2d20 4e49 5354 2d38 -7(a). - NIST-8 │ │ │ -003fbdb0: 3030 2d35 332d 4155 2d31 3228 3229 0a20 00-53-AU-12(2). │ │ │ -003fbdc0: 202d 204e 4953 542d 3830 302d 3533 2d41 - NIST-800-53-A │ │ │ -003fbdd0: 552d 3134 0a20 202d 204e 4953 542d 3830 U-14. - NIST-80 │ │ │ -003fbde0: 302d 3533 2d41 552d 3228 6129 0a20 202d 0-53-AU-2(a). - │ │ │ -003fbdf0: 204e 4953 542d 3830 302d 3533 2d41 552d NIST-800-53-AU- │ │ │ -003fbe00: 3728 3129 0a20 202d 204e 4953 542d 3830 7(1). - NIST-80 │ │ │ -003fbe10: 302d 3533 2d41 552d 3728 3229 0a20 202d 0-53-AU-7(2). - │ │ │ -003fbe20: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ -003fbe30: 3628 6129 0a20 202d 2050 4349 2d44 5353 6(a). - PCI-DSS │ │ │ -003fbe40: 2d52 6571 2d31 302e 310a 2020 2d20 5043 -Req-10.1. - PC │ │ │ -003fbe50: 492d 4453 5376 342d 3130 2e32 0a20 202d I-DSSv4-10.2. - │ │ │ -003fbe60: 2050 4349 2d44 5353 7634 2d31 302e 322e PCI-DSSv4-10.2. │ │ │ -003fbe70: 310a 2020 2d20 656e 6162 6c65 5f73 7472 1. - enable_str │ │ │ -003fbe80: 6174 6567 790a 2020 2d20 6c6f 775f 636f ategy. - low_co │ │ │ -003fbe90: 6d70 6c65 7869 7479 0a20 202d 206c 6f77 mplexity. - low │ │ │ -003fbea0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20 _disruption. - │ │ │ -003fbeb0: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ -003fbec0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ -003fbed0: 6564 6564 0a20 202d 2070 6163 6b61 6765 eded. - package │ │ │ -003fbee0: 5f61 7564 6974 5f69 6e73 7461 6c6c 6564 _audit_installed │ │ │ -003fbef0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .Remediation She │ │ │ -003fbfb0: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...

< │ │ │ -003fc050: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -003fc060: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -003fc0b0: 3c74 723e 3c74 683e 5374 7261 7465 6779
# R
│ │ │ -003fc0f0: 656d 6564 6961 7469 6f6e 2069 7320 6170  emediation is ap
│ │ │ -003fc100: 706c 6963 6162 6c65 206f 6e6c 7920 696e  plicable only in
│ │ │ -003fc110: 2063 6572 7461 696e 2070 6c61 7466 6f72   certain platfor
│ │ │ -003fc120: 6d73 0a69 6620 7270 6d20 2d2d 7175 6965  ms.if rpm --quie
│ │ │ -003fc130: 7420 2d71 206b 6572 6e65 6c3b 2074 6865  t -q kernel; the
│ │ │ -003fc140: 6e0a 0a69 6620 2120 7270 6d20 2d71 202d  n..if ! rpm -q -
│ │ │ -003fc150: 2d71 7569 6574 2022 6175 6469 7422 203b  -quiet "audit" ;
│ │ │ -003fc160: 2074 6865 6e0a 2020 2020 646e 6620 696e   then.    dnf in
│ │ │ -003fc170: 7374 616c 6c20 2d79 2022 6175 6469 7422  stall -y "audit"
│ │ │ -003fc180: 0a66 690a 0a65 6c73 650a 2020 2020 2667  .fi..else.    &g
│ │ │ -003fc190: 743b 2661 6d70 3b32 2065 6368 6f20 2752  t;&2 echo 'R
│ │ │ -003fc1a0: 656d 6564 6961 7469 6f6e 2069 7320 6e6f  emediation is no
│ │ │ -003fc1b0: 7420 6170 706c 6963 6162 6c65 2c20 6e6f  t applicable, no
│ │ │ -003fc1c0: 7468 696e 6720 7761 7320 646f 6e65 270a  thing was done'.
│ │ │ -003fc1d0: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e  fi.
│ │ │ +003fb440: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ +003fb450: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
C │ │ │ -003fc040: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -003fc070: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -003fc080: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -003fc0c0: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -003fc0d0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ +003fb500: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +003fb520: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +003fb550: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +003fb4e0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +003fb4f0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +003fb510: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +003fb530: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +003fb540: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

- name: │ │ │ +003fb590: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ +003fb5a0: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ +003fb5b0: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ +003fb5c0: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ +003fb5d0: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ +003fb5e0: 302d 3533 2d41 432d 3728 6129 0a20 202d 0-53-AC-7(a). - │ │ │ +003fb5f0: 204e 4953 542d 3830 302d 3533 2d41 552d NIST-800-53-AU- │ │ │ +003fb600: 3132 2832 290a 2020 2d20 4e49 5354 2d38 12(2). - NIST-8 │ │ │ +003fb610: 3030 2d35 332d 4155 2d31 340a 2020 2d20 00-53-AU-14. - │ │ │ +003fb620: 4e49 5354 2d38 3030 2d35 332d 4155 2d32 NIST-800-53-AU-2 │ │ │ +003fb630: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ +003fb640: 2d35 332d 4155 2d37 2831 290a 2020 2d20 -53-AU-7(1). - │ │ │ +003fb650: 4e49 5354 2d38 3030 2d35 332d 4155 2d37 NIST-800-53-AU-7 │ │ │ +003fb660: 2832 290a 2020 2d20 4e49 5354 2d38 3030 (2). - NIST-800 │ │ │ +003fb670: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ +003fb680: 5043 492d 4453 532d 5265 712d 3130 2e31 PCI-DSS-Req-10.1 │ │ │ +003fb690: 0a20 202d 2050 4349 2d44 5353 7634 2d31 . - PCI-DSSv4-1 │ │ │ +003fb6a0: 302e 320a 2020 2d20 5043 492d 4453 5376 0.2. - PCI-DSSv │ │ │ +003fb6b0: 342d 3130 2e32 2e31 0a20 202d 2065 6e61 4-10.2.1. - ena │ │ │ +003fb6c0: 626c 655f 7374 7261 7465 6779 0a20 202d ble_strategy. - │ │ │ +003fb6d0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a low_complexity. │ │ │ +003fb6e0: 2020 2d20 6c6f 775f 6469 7372 7570 7469 - low_disrupti │ │ │ +003fb6f0: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365 on. - medium_se │ │ │ +003fb700: 7665 7269 7479 0a20 202d 206e 6f5f 7265 verity. - no_re │ │ │ +003fb710: 626f 6f74 5f6e 6565 6465 640a 2020 2d20 boot_needed. - │ │ │ +003fb720: 7061 636b 6167 655f 6175 6469 745f 696e package_audit_in │ │ │ +003fb730: 7374 616c 6c65 640a 0a2d 206e 616d 653a stalled..- name: │ │ │ +003fb740: 2045 6e73 7572 6520 6175 6469 7420 6973 Ensure audit is │ │ │ +003fb750: 2069 6e73 7461 6c6c 6564 0a20 2061 6e73 installed. ans │ │ │ +003fb760: 6962 6c65 2e62 7569 6c74 696e 2e70 6163 ible.builtin.pac │ │ │ +003fb770: 6b61 6765 3a0a 2020 2020 6e61 6d65 3a20 kage:. name: │ │ │ +003fb780: 6175 6469 740a 2020 2020 7374 6174 653a audit. state: │ │ │ +003fb790: 2070 7265 7365 6e74 0a20 2077 6865 6e3a present. when: │ │ │ +003fb7a0: 2027 226b 6572 6e65 6c22 2069 6e20 616e '"kernel" in an │ │ │ +003fb7b0: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +003fb7c0: 6167 6573 270a 2020 7461 6773 3a0a 2020 ages'. tags:. │ │ │ +003fb7d0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143 - NIST-800-53-AC │ │ │ +003fb7e0: 2d37 2861 290a 2020 2d20 4e49 5354 2d38 -7(a). - NIST-8 │ │ │ +003fb7f0: 3030 2d35 332d 4155 2d31 3228 3229 0a20 00-53-AU-12(2). │ │ │ +003fb800: 202d 204e 4953 542d 3830 302d 3533 2d41 - NIST-800-53-A │ │ │ +003fb810: 552d 3134 0a20 202d 204e 4953 542d 3830 U-14. - NIST-80 │ │ │ +003fb820: 302d 3533 2d41 552d 3228 6129 0a20 202d 0-53-AU-2(a). - │ │ │ +003fb830: 204e 4953 542d 3830 302d 3533 2d41 552d NIST-800-53-AU- │ │ │ +003fb840: 3728 3129 0a20 202d 204e 4953 542d 3830 7(1). - NIST-80 │ │ │ +003fb850: 302d 3533 2d41 552d 3728 3229 0a20 202d 0-53-AU-7(2). - │ │ │ +003fb860: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ +003fb870: 3628 6129 0a20 202d 2050 4349 2d44 5353 6(a). - PCI-DSS │ │ │ +003fb880: 2d52 6571 2d31 302e 310a 2020 2d20 5043 -Req-10.1. - PC │ │ │ +003fb890: 492d 4453 5376 342d 3130 2e32 0a20 202d I-DSSv4-10.2. - │ │ │ +003fb8a0: 2050 4349 2d44 5353 7634 2d31 302e 322e PCI-DSSv4-10.2. │ │ │ +003fb8b0: 310a 2020 2d20 656e 6162 6c65 5f73 7472 1. - enable_str │ │ │ +003fb8c0: 6174 6567 790a 2020 2d20 6c6f 775f 636f ategy. - low_co │ │ │ +003fb8d0: 6d70 6c65 7869 7479 0a20 202d 206c 6f77 mplexity. - low │ │ │ +003fb8e0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20 _disruption. - │ │ │ +003fb8f0: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ +003fb900: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ +003fb910: 6564 6564 0a20 202d 2070 6163 6b61 6765 eded. - package │ │ │ +003fb920: 5f61 7564 6974 5f69 6e73 7461 6c6c 6564 _audit_installed │ │ │ +003fb930: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .Remediation Pup │ │ │ +003fb9f0: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ +003fba00: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>

< │ │ │ +003fbad0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +003fbae0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
i
│ │ │ +003fbb30: 6e63 6c75 6465 2069 6e73 7461 6c6c 5f61  nclude install_a
│ │ │ +003fbb40: 7564 6974 0a0a 636c 6173 7320 696e 7374  udit..class inst
│ │ │ +003fbb50: 616c 6c5f 6175 6469 7420 7b0a 2020 7061  all_audit {.  pa
│ │ │ +003fbb60: 636b 6167 6520 7b20 2761 7564 6974 273a  ckage { 'audit':
│ │ │ +003fbb70: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ +003fbb80: 3b20 2769 6e73 7461 6c6c 6564 272c 0a20  ; 'installed',. 
│ │ │ +003fbb90: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.Remediation
│ │ │ +003fbc50: 204f 5342 7569 6c64 2042 6c75 6570 7269   OSBuild Bluepri
│ │ │ +003fbc60: 6e74 2073 6e69 7070 6574 20e2 87b2 3c2f  nt snippet ...
.[[packages]].n
│ │ │ +003fbcc0: 616d 6520 3d20 2261 7564 6974 220a 7665  ame = "audit".ve
│ │ │ +003fbcd0: 7273 696f 6e20 3d20 222a 220a 3c2f 636f  rsion = "*".
< │ │ │ +003fbcf0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +003fbd00: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +003fbd10: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +003fbd20: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +003fbd30: 6439 3935 2220 7461 6269 6e64 6578 3d22 d995" tabindex=" │ │ │ +003fbd40: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +003fbd50: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +003fbd60: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +003fbd70: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +003fbd80: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +003fbd90: 6469 6174 696f 6e20 5368 656c 6c20 7363 diation Shell sc │ │ │ +003fbda0: 7269 7074 20e2 87b2 3c2f 613e 3c62 723e ript ...

│ │ │ +003fbdb0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +003fbde0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Complexity:low
Disrup │ │ │ +003fbab0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +003fbac0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +003fbb00: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +003fbb10: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ +003fbe50: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +003fbe70: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +003fbea0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ +003fbec0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ +003fbe30: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +003fbe40: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +003fbe80: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +003fbe90: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
# Remedi │ │ │ +003fbee0: 6174 696f 6e20 6973 2061 7070 6c69 6361 ation is applica │ │ │ +003fbef0: 626c 6520 6f6e 6c79 2069 6e20 6365 7274 ble only in cert │ │ │ +003fbf00: 6169 6e20 706c 6174 666f 726d 730a 6966 ain platforms.if │ │ │ +003fbf10: 2072 706d 202d 2d71 7569 6574 202d 7120 rpm --quiet -q │ │ │ +003fbf20: 6b65 726e 656c 3b20 7468 656e 0a0a 6966 kernel; then..if │ │ │ +003fbf30: 2021 2072 706d 202d 7120 2d2d 7175 6965 ! rpm -q --quie │ │ │ +003fbf40: 7420 2261 7564 6974 2220 3b20 7468 656e t "audit" ; then │ │ │ +003fbf50: 0a20 2020 2064 6e66 2069 6e73 7461 6c6c . dnf install │ │ │ +003fbf60: 202d 7920 2261 7564 6974 220a 6669 0a0a -y "audit".fi.. │ │ │ +003fbf70: 656c 7365 0a20 2020 2026 6774 3b26 616d else. >&am │ │ │ +003fbf80: 703b 3220 6563 686f 2027 5265 6d65 6469 p;2 echo 'Remedi │ │ │ +003fbf90: 6174 696f 6e20 6973 206e 6f74 2061 7070 ation is not app │ │ │ +003fbfa0: 6c69 6361 626c 652c 206e 6f74 6869 6e67 licable, nothing │ │ │ +003fbfb0: 2077 6173 2064 6f6e 6527 0a66 690a 3c2f was done'.fi.
Re │ │ │ +003fc070: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ +003fc080: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
│ │ │ +003fc120: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.p
│ │ │ +003fc1c0: 6163 6b61 6765 202d 2d61 6464 3d61 7564  ackage --add=aud
│ │ │ +003fc1d0: 6974 0a3c 2f63 6f64 653e 3c2f 7072 653e  it.
│ │ │ 003fc1e0: 3c2f 6469 763e 3c2f 6469 763e 3c2f 7464 │ │ │ 003fc210: 3c74 7220 6461 7461 2d74 742d 6964 3d22 Remediatio │ │ │ -003fdb30: 6e20 4f53 4275 696c 6420 426c 7565 7072 n OSBuild Bluepr │ │ │ -003fdb40: 696e 7420 736e 6970 7065 7420 e287 b23c int snippet ...< │ │ │ -003fdb50: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
.[customizatio
│ │ │ -003fdba0: 6e73 2e73 6572 7669 6365 735d 0a65 6e61  ns.services].ena
│ │ │ -003fdbb0: 626c 6564 203d 205b 2261 7564 6974 6422  bled = ["auditd"
│ │ │ -003fdbc0: 5d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  ].
< │ │ │ -003fdbd0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Ku │ │ │ -003fdc80: 6265 726e 6574 6573 2073 6e69 7070 6574 bernetes snippet │ │ │ -003fdc90: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
---.apiVe
│ │ │ -003fdce0: 7273 696f 6e3a 206d 6163 6869 6e65 636f  rsion: machineco
│ │ │ -003fdcf0: 6e66 6967 7572 6174 696f 6e2e 6f70 656e  nfiguration.open
│ │ │ -003fdd00: 7368 6966 742e 696f 2f76 310a 6b69 6e64  shift.io/v1.kind
│ │ │ -003fdd10: 3a20 4d61 6368 696e 6543 6f6e 6669 670a  : MachineConfig.
│ │ │ -003fdd20: 7370 6563 3a0a 2020 636f 6e66 6967 3a0a  spec:.  config:.
│ │ │ -003fdd30: 2020 2020 6967 6e69 7469 6f6e 3a0a 2020      ignition:.  
│ │ │ -003fdd40: 2020 2020 7665 7273 696f 6e3a 2033 2e31      version: 3.1
│ │ │ -003fdd50: 2e30 0a20 2020 2073 7973 7465 6d64 3a0a  .0.    systemd:.
│ │ │ -003fdd60: 2020 2020 2020 756e 6974 733a 0a20 2020        units:.   
│ │ │ -003fdd70: 2020 202d 206e 616d 653a 2061 7564 6974     - name: audit
│ │ │ -003fdd80: 642e 7365 7276 6963 650a 2020 2020 2020  d.service.      
│ │ │ -003fdd90: 2020 656e 6162 6c65 643a 2074 7275 650a    enabled: true.
│ │ │ -003fdda0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
Remediation Pup │ │ │ -003fde60: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ -003fde70: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ +003fc110: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +003fc140: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +003fc150: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +003fc190: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ +003fc1a0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexity: │ │ │ -003fdf40: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -003fdf50: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -003fdfa0: 696e 636c 7564 6520 656e 6162 6c65 5f61  include enable_a
│ │ │ -003fdfb0: 7564 6974 640a 0a63 6c61 7373 2065 6e61  uditd..class ena
│ │ │ -003fdfc0: 626c 655f 6175 6469 7464 207b 0a20 2073  ble_auditd {.  s
│ │ │ -003fdfd0: 6572 7669 6365 207b 2761 7564 6974 6427  ervice {'auditd'
│ │ │ -003fdfe0: 3a0a 2020 2020 656e 6162 6c65 203d 2667  :.    enable =&g
│ │ │ -003fdff0: 743b 2074 7275 652c 0a20 2020 2065 6e73  t; true,.    ens
│ │ │ -003fe000: 7572 6520 3d26 6774 3b20 2772 756e 6e69  ure => 'runni
│ │ │ -003fe010: 6e67 272c 0a20 207d 0a7d 0a3c 2f63 6f64  ng',.  }.}.
Reme │ │ │ -003fe0d0: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ -003fe0e0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -003fe0f0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
low
Disru │ │ │ -003fdf20: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -003fdf30: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -003fdf70: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -003fdf80: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
low< │ │ │ -003fe190: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -003fe1e0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ -003fe170: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -003fe1a0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -003fe1c0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -003fe1d0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -003fe1f0: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -003fe200: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -003fe220: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ -003fe230: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ -003fe240: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ -003fe250: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ -003fe260: 2020 7461 6773 3a0a 2020 2d20 434a 4953    tags:.  - CJIS
│ │ │ -003fe270: 2d35 2e34 2e31 2e31 0a20 202d 204e 4953  -5.4.1.1.  - NIS
│ │ │ -003fe280: 542d 3830 302d 3137 312d 332e 332e 310a  T-800-171-3.3.1.
│ │ │ -003fe290: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ -003fe2a0: 2d33 2e33 2e32 0a20 202d 204e 4953 542d  -3.3.2.  - NIST-
│ │ │ -003fe2b0: 3830 302d 3137 312d 332e 332e 360a 2020  800-171-3.3.6.  
│ │ │ -003fe2c0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -003fe2d0: 2d32 2867 290a 2020 2d20 4e49 5354 2d38  -2(g).  - NIST-8
│ │ │ -003fe2e0: 3030 2d35 332d 4143 2d36 2839 290a 2020  00-53-AC-6(9).  
│ │ │ -003fe2f0: 2d20 4e49 5354 2d38 3030 2d35 332d 4155  - NIST-800-53-AU
│ │ │ -003fe300: 2d31 300a 2020 2d20 4e49 5354 2d38 3030  -10.  - NIST-800
│ │ │ -003fe310: 2d35 332d 4155 2d31 3228 6329 0a20 202d  -53-AU-12(c).  -
│ │ │ -003fe320: 204e 4953 542d 3830 302d 3533 2d41 552d   NIST-800-53-AU-
│ │ │ -003fe330: 3134 2831 290a 2020 2d20 4e49 5354 2d38  14(1).  - NIST-8
│ │ │ -003fe340: 3030 2d35 332d 4155 2d32 2864 290a 2020  00-53-AU-2(d).  
│ │ │ -003fe350: 2d20 4e49 5354 2d38 3030 2d35 332d 4155  - NIST-800-53-AU
│ │ │ -003fe360: 2d33 0a20 202d 204e 4953 542d 3830 302d  -3.  - NIST-800-
│ │ │ -003fe370: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ -003fe380: 4953 542d 3830 302d 3533 2d53 492d 3428  IST-800-53-SI-4(
│ │ │ -003fe390: 3233 290a 2020 2d20 5043 492d 4453 532d  23).  - PCI-DSS-
│ │ │ -003fe3a0: 5265 712d 3130 2e31 0a20 202d 2050 4349  Req-10.1.  - PCI
│ │ │ -003fe3b0: 2d44 5353 7634 2d31 302e 320a 2020 2d20  -DSSv4-10.2.  - 
│ │ │ -003fe3c0: 5043 492d 4453 5376 342d 3130 2e32 2e31  PCI-DSSv4-10.2.1
│ │ │ -003fe3d0: 0a20 202d 2065 6e61 626c 655f 7374 7261  .  - enable_stra
│ │ │ -003fe3e0: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ -003fe3f0: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ -003fe400: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -003fe410: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -003fe420: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -003fe430: 6465 640a 2020 2d20 7365 7276 6963 655f  ded.  - service_
│ │ │ -003fe440: 6175 6469 7464 5f65 6e61 626c 6564 0a0a  auditd_enabled..
│ │ │ -003fe450: 2d20 6e61 6d65 3a20 456e 6162 6c65 2061  - name: Enable a
│ │ │ -003fe460: 7564 6974 6420 5365 7276 6963 6520 2d20  uditd Service - 
│ │ │ -003fe470: 456e 6162 6c65 2073 6572 7669 6365 2061  Enable service a
│ │ │ -003fe480: 7564 6974 640a 2020 626c 6f63 6b3a 0a0a  uditd.  block:..
│ │ │ -003fe490: 2020 2d20 6e61 6d65 3a20 4761 7468 6572    - name: Gather
│ │ │ -003fe4a0: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ -003fe4b0: 7473 0a20 2020 2061 6e73 6962 6c65 2e62  ts.    ansible.b
│ │ │ -003fe4c0: 7569 6c74 696e 2e70 6163 6b61 6765 5f66  uiltin.package_f
│ │ │ -003fe4d0: 6163 7473 3a0a 2020 2020 2020 6d61 6e61  acts:.      mana
│ │ │ -003fe4e0: 6765 723a 2061 7574 6f0a 0a20 202d 206e  ger: auto..  - n
│ │ │ -003fe4f0: 616d 653a 2045 6e61 626c 6520 6175 6469  ame: Enable audi
│ │ │ -003fe500: 7464 2053 6572 7669 6365 202d 2045 6e61  td Service - Ena
│ │ │ -003fe510: 626c 6520 5365 7276 6963 6520 6175 6469  ble Service audi
│ │ │ -003fe520: 7464 0a20 2020 2061 6e73 6962 6c65 2e62  td.    ansible.b
│ │ │ -003fe530: 7569 6c74 696e 2e73 7973 7465 6d64 3a0a  uiltin.systemd:.
│ │ │ -003fe540: 2020 2020 2020 6e61 6d65 3a20 6175 6469        name: audi
│ │ │ -003fe550: 7464 0a20 2020 2020 2065 6e61 626c 6564  td.      enabled
│ │ │ -003fe560: 3a20 7472 7565 0a20 2020 2020 2073 7461  : true.      sta
│ │ │ -003fe570: 7465 3a20 7374 6172 7465 640a 2020 2020  te: started.    
│ │ │ -003fe580: 2020 6d61 736b 6564 3a20 6661 6c73 650a    masked: false.
│ │ │ -003fe590: 2020 2020 7768 656e 3a0a 2020 2020 2d20      when:.    - 
│ │ │ -003fe5a0: 2722 6175 6469 7422 2069 6e20 616e 7369  '"audit" in ansi
│ │ │ -003fe5b0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -003fe5c0: 6573 270a 2020 7461 6773 3a0a 2020 2d20  es'.  tags:.  - 
│ │ │ -003fe5d0: 434a 4953 2d35 2e34 2e31 2e31 0a20 202d  CJIS-5.4.1.1.  -
│ │ │ -003fe5e0: 204e 4953 542d 3830 302d 3137 312d 332e   NIST-800-171-3.
│ │ │ -003fe5f0: 332e 310a 2020 2d20 4e49 5354 2d38 3030  3.1.  - NIST-800
│ │ │ -003fe600: 2d31 3731 2d33 2e33 2e32 0a20 202d 204e  -171-3.3.2.  - N
│ │ │ -003fe610: 4953 542d 3830 302d 3137 312d 332e 332e  IST-800-171-3.3.
│ │ │ -003fe620: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ -003fe630: 332d 4143 2d32 2867 290a 2020 2d20 4e49  3-AC-2(g).  - NI
│ │ │ -003fe640: 5354 2d38 3030 2d35 332d 4143 2d36 2839  ST-800-53-AC-6(9
│ │ │ -003fe650: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -003fe660: 332d 4155 2d31 300a 2020 2d20 4e49 5354  3-AU-10.  - NIST
│ │ │ -003fe670: 2d38 3030 2d35 332d 4155 2d31 3228 6329  -800-53-AU-12(c)
│ │ │ -003fe680: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -003fe690: 2d41 552d 3134 2831 290a 2020 2d20 4e49  -AU-14(1).  - NI
│ │ │ -003fe6a0: 5354 2d38 3030 2d35 332d 4155 2d32 2864  ST-800-53-AU-2(d
│ │ │ -003fe6b0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -003fe6c0: 332d 4155 2d33 0a20 202d 204e 4953 542d  3-AU-3.  - NIST-
│ │ │ -003fe6d0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -003fe6e0: 202d 204e 4953 542d 3830 302d 3533 2d53   - NIST-800-53-S
│ │ │ -003fe6f0: 492d 3428 3233 290a 2020 2d20 5043 492d  I-4(23).  - PCI-
│ │ │ -003fe700: 4453 532d 5265 712d 3130 2e31 0a20 202d  DSS-Req-10.1.  -
│ │ │ -003fe710: 2050 4349 2d44 5353 7634 2d31 302e 320a   PCI-DSSv4-10.2.
│ │ │ -003fe720: 2020 2d20 5043 492d 4453 5376 342d 3130    - PCI-DSSv4-10
│ │ │ -003fe730: 2e32 2e31 0a20 202d 2065 6e61 626c 655f  .2.1.  - enable_
│ │ │ -003fe740: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ -003fe750: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -003fe760: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -003fe770: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -003fe780: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ -003fe790: 5f6e 6565 6465 640a 2020 2d20 7365 7276  _needed.  - serv
│ │ │ -003fe7a0: 6963 655f 6175 6469 7464 5f65 6e61 626c  ice_auditd_enabl
│ │ │ -003fe7b0: 6564 0a20 202d 2073 7065 6369 616c 5f73  ed.  - special_s
│ │ │ -003fe7c0: 6572 7669 6365 5f62 6c6f 636b 0a20 2077  ervice_block.  w
│ │ │ -003fe7d0: 6865 6e3a 0a20 202d 2027 226b 6572 6e65  hen:.  - '"kerne
│ │ │ -003fe7e0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -003fe7f0: 6374 732e 7061 636b 6167 6573 270a 2020  cts.packages'.  
│ │ │ -003fe800: 2d20 2722 6175 6469 7422 2069 6e20 616e  - '"audit" in an
│ │ │ -003fe810: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -003fe820: 6167 6573 270a 3c2f 636f 6465 3e3c 2f70  ages'.


< │ │ │ +003fdbc0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +003fdbd0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +003fdbf0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +003fdc00: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +003fdc20: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +003fdc40: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ +003fdc70: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ +003fdc80: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ +003fdc90: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ +003fdca0: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ +003fdcb0: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ +003fdcc0: 0a20 202d 2043 4a49 532d 352e 342e 312e  .  - CJIS-5.4.1.
│ │ │ +003fdcd0: 310a 2020 2d20 4e49 5354 2d38 3030 2d31  1.  - NIST-800-1
│ │ │ +003fdce0: 3731 2d33 2e33 2e31 0a20 202d 204e 4953  71-3.3.1.  - NIS
│ │ │ +003fdcf0: 542d 3830 302d 3137 312d 332e 332e 320a  T-800-171-3.3.2.
│ │ │ +003fdd00: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ +003fdd10: 2d33 2e33 2e36 0a20 202d 204e 4953 542d  -3.3.6.  - NIST-
│ │ │ +003fdd20: 3830 302d 3533 2d41 432d 3228 6729 0a20  800-53-AC-2(g). 
│ │ │ +003fdd30: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +003fdd40: 432d 3628 3929 0a20 202d 204e 4953 542d  C-6(9).  - NIST-
│ │ │ +003fdd50: 3830 302d 3533 2d41 552d 3130 0a20 202d  800-53-AU-10.  -
│ │ │ +003fdd60: 204e 4953 542d 3830 302d 3533 2d41 552d   NIST-800-53-AU-
│ │ │ +003fdd70: 3132 2863 290a 2020 2d20 4e49 5354 2d38  12(c).  - NIST-8
│ │ │ +003fdd80: 3030 2d35 332d 4155 2d31 3428 3129 0a20  00-53-AU-14(1). 
│ │ │ +003fdd90: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +003fdda0: 552d 3228 6429 0a20 202d 204e 4953 542d  U-2(d).  - NIST-
│ │ │ +003fddb0: 3830 302d 3533 2d41 552d 330a 2020 2d20  800-53-AU-3.  - 
│ │ │ +003fddc0: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +003fddd0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +003fdde0: 2d35 332d 5349 2d34 2832 3329 0a20 202d  -53-SI-4(23).  -
│ │ │ +003fddf0: 2050 4349 2d44 5353 2d52 6571 2d31 302e   PCI-DSS-Req-10.
│ │ │ +003fde00: 310a 2020 2d20 5043 492d 4453 5376 342d  1.  - PCI-DSSv4-
│ │ │ +003fde10: 3130 2e32 0a20 202d 2050 4349 2d44 5353  10.2.  - PCI-DSS
│ │ │ +003fde20: 7634 2d31 302e 322e 310a 2020 2d20 656e  v4-10.2.1.  - en
│ │ │ +003fde30: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ +003fde40: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +003fde50: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +003fde60: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ +003fde70: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ +003fde80: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ +003fde90: 2073 6572 7669 6365 5f61 7564 6974 645f   service_auditd_
│ │ │ +003fdea0: 656e 6162 6c65 640a 0a2d 206e 616d 653a  enabled..- name:
│ │ │ +003fdeb0: 2045 6e61 626c 6520 6175 6469 7464 2053   Enable auditd S
│ │ │ +003fdec0: 6572 7669 6365 202d 2045 6e61 626c 6520  ervice - Enable 
│ │ │ +003fded0: 7365 7276 6963 6520 6175 6469 7464 0a20  service auditd. 
│ │ │ +003fdee0: 2062 6c6f 636b 3a0a 0a20 202d 206e 616d   block:..  - nam
│ │ │ +003fdef0: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ +003fdf00: 636b 6167 6520 6661 6374 730a 2020 2020  ckage facts.    
│ │ │ +003fdf10: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +003fdf20: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ +003fdf30: 2020 2020 206d 616e 6167 6572 3a20 6175       manager: au
│ │ │ +003fdf40: 746f 0a0a 2020 2d20 6e61 6d65 3a20 456e  to..  - name: En
│ │ │ +003fdf50: 6162 6c65 2061 7564 6974 6420 5365 7276  able auditd Serv
│ │ │ +003fdf60: 6963 6520 2d20 456e 6162 6c65 2053 6572  ice - Enable Ser
│ │ │ +003fdf70: 7669 6365 2061 7564 6974 640a 2020 2020  vice auditd.    
│ │ │ +003fdf80: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +003fdf90: 7379 7374 656d 643a 0a20 2020 2020 206e  systemd:.      n
│ │ │ +003fdfa0: 616d 653a 2061 7564 6974 640a 2020 2020  ame: auditd.    
│ │ │ +003fdfb0: 2020 656e 6162 6c65 643a 2074 7275 650a    enabled: true.
│ │ │ +003fdfc0: 2020 2020 2020 7374 6174 653a 2073 7461        state: sta
│ │ │ +003fdfd0: 7274 6564 0a20 2020 2020 206d 6173 6b65  rted.      maske
│ │ │ +003fdfe0: 643a 2066 616c 7365 0a20 2020 2077 6865  d: false.    whe
│ │ │ +003fdff0: 6e3a 0a20 2020 202d 2027 2261 7564 6974  n:.    - '"audit
│ │ │ +003fe000: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +003fe010: 7473 2e70 6163 6b61 6765 7327 0a20 2074  ts.packages'.  t
│ │ │ +003fe020: 6167 733a 0a20 202d 2043 4a49 532d 352e  ags:.  - CJIS-5.
│ │ │ +003fe030: 342e 312e 310a 2020 2d20 4e49 5354 2d38  4.1.1.  - NIST-8
│ │ │ +003fe040: 3030 2d31 3731 2d33 2e33 2e31 0a20 202d  00-171-3.3.1.  -
│ │ │ +003fe050: 204e 4953 542d 3830 302d 3137 312d 332e   NIST-800-171-3.
│ │ │ +003fe060: 332e 320a 2020 2d20 4e49 5354 2d38 3030  3.2.  - NIST-800
│ │ │ +003fe070: 2d31 3731 2d33 2e33 2e36 0a20 202d 204e  -171-3.3.6.  - N
│ │ │ +003fe080: 4953 542d 3830 302d 3533 2d41 432d 3228  IST-800-53-AC-2(
│ │ │ +003fe090: 6729 0a20 202d 204e 4953 542d 3830 302d  g).  - NIST-800-
│ │ │ +003fe0a0: 3533 2d41 432d 3628 3929 0a20 202d 204e  53-AC-6(9).  - N
│ │ │ +003fe0b0: 4953 542d 3830 302d 3533 2d41 552d 3130  IST-800-53-AU-10
│ │ │ +003fe0c0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +003fe0d0: 2d41 552d 3132 2863 290a 2020 2d20 4e49  -AU-12(c).  - NI
│ │ │ +003fe0e0: 5354 2d38 3030 2d35 332d 4155 2d31 3428  ST-800-53-AU-14(
│ │ │ +003fe0f0: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ +003fe100: 3533 2d41 552d 3228 6429 0a20 202d 204e  53-AU-2(d).  - N
│ │ │ +003fe110: 4953 542d 3830 302d 3533 2d41 552d 330a  IST-800-53-AU-3.
│ │ │ +003fe120: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +003fe130: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ +003fe140: 2d38 3030 2d35 332d 5349 2d34 2832 3329  -800-53-SI-4(23)
│ │ │ +003fe150: 0a20 202d 2050 4349 2d44 5353 2d52 6571  .  - PCI-DSS-Req
│ │ │ +003fe160: 2d31 302e 310a 2020 2d20 5043 492d 4453  -10.1.  - PCI-DS
│ │ │ +003fe170: 5376 342d 3130 2e32 0a20 202d 2050 4349  Sv4-10.2.  - PCI
│ │ │ +003fe180: 2d44 5353 7634 2d31 302e 322e 310a 2020  -DSSv4-10.2.1.  
│ │ │ +003fe190: 2d20 656e 6162 6c65 5f73 7472 6174 6567  - enable_strateg
│ │ │ +003fe1a0: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ +003fe1b0: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ +003fe1c0: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ +003fe1d0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +003fe1e0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +003fe1f0: 0a20 202d 2073 6572 7669 6365 5f61 7564  .  - service_aud
│ │ │ +003fe200: 6974 645f 656e 6162 6c65 640a 2020 2d20  itd_enabled.  - 
│ │ │ +003fe210: 7370 6563 6961 6c5f 7365 7276 6963 655f  special_service_
│ │ │ +003fe220: 626c 6f63 6b0a 2020 7768 656e 3a0a 2020  block.  when:.  
│ │ │ +003fe230: 2d20 2722 6b65 726e 656c 2220 696e 2061  - '"kernel" in a
│ │ │ +003fe240: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +003fe250: 6b61 6765 7327 0a20 202d 2027 2261 7564  kages'.  - '"aud
│ │ │ +003fe260: 6974 2220 696e 2061 6e73 6962 6c65 5f66  it" in ansible_f
│ │ │ +003fe270: 6163 7473 2e70 6163 6b61 6765 7327 0a3c  acts.packages'.<
│ │ │ +003fe280: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +003fe330: 656d 6564 6961 7469 6f6e 204b 7562 6572 emediation Kuber │ │ │ +003fe340: 6e65 7465 7320 736e 6970 7065 7420 e287 netes snippet .. │ │ │ +003fe350: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
---.apiVersi
│ │ │ +003fe3a0: 6f6e 3a20 6d61 6368 696e 6563 6f6e 6669  on: machineconfi
│ │ │ +003fe3b0: 6775 7261 7469 6f6e 2e6f 7065 6e73 6869  guration.openshi
│ │ │ +003fe3c0: 6674 2e69 6f2f 7631 0a6b 696e 643a 204d  ft.io/v1.kind: M
│ │ │ +003fe3d0: 6163 6869 6e65 436f 6e66 6967 0a73 7065  achineConfig.spe
│ │ │ +003fe3e0: 633a 0a20 2063 6f6e 6669 673a 0a20 2020  c:.  config:.   
│ │ │ +003fe3f0: 2069 676e 6974 696f 6e3a 0a20 2020 2020   ignition:.     
│ │ │ +003fe400: 2076 6572 7369 6f6e 3a20 332e 312e 300a   version: 3.1.0.
│ │ │ +003fe410: 2020 2020 7379 7374 656d 643a 0a20 2020      systemd:.   
│ │ │ +003fe420: 2020 2075 6e69 7473 3a0a 2020 2020 2020     units:.      
│ │ │ +003fe430: 2d20 6e61 6d65 3a20 6175 6469 7464 2e73  - name: auditd.s
│ │ │ +003fe440: 6572 7669 6365 0a20 2020 2020 2020 2065  ervice.        e
│ │ │ +003fe450: 6e61 626c 6564 3a20 7472 7565 0a3c 2f63  nabled: true.
│ │ │ +003fe470: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Re │ │ │ +003fe510: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ +003fe520: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +003fe530: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
< │ │ │ +003fe5c0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +003fe5d0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +003fe620: 3c74 723e 3c74 683e 5374 7261 7465 6779
inc
│ │ │ +003fe660: 6c75 6465 2065 6e61 626c 655f 6175 6469  lude enable_audi
│ │ │ +003fe670: 7464 0a0a 636c 6173 7320 656e 6162 6c65  td..class enable
│ │ │ +003fe680: 5f61 7564 6974 6420 7b0a 2020 7365 7276  _auditd {.  serv
│ │ │ +003fe690: 6963 6520 7b27 6175 6469 7464 273a 0a20  ice {'auditd':. 
│ │ │ +003fe6a0: 2020 2065 6e61 626c 6520 3d26 6774 3b20     enable => 
│ │ │ +003fe6b0: 7472 7565 2c0a 2020 2020 656e 7375 7265  true,.    ensure
│ │ │ +003fe6c0: 203d 2667 743b 2027 7275 6e6e 696e 6727   => 'running'
│ │ │ +003fe6d0: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ +003fe6e0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remedia
│ │ │ +003fe790: 7469 6f6e 204f 5342 7569 6c64 2042 6c75  tion OSBuild Blu
│ │ │ +003fe7a0: 6570 7269 6e74 2073 6e69 7070 6574 20e2  eprint snippet .
│ │ │ +003fe7b0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063  ..
│ │ │ +003fe7f0: 3c63 6f64 653e 0a5b 6375 7374 6f6d 697a  .[customiz
│ │ │ +003fe800: 6174 696f 6e73 2e73 6572 7669 6365 735d  ations.services]
│ │ │ +003fe810: 0a65 6e61 626c 6564 203d 205b 2261 7564  .enabled = ["aud
│ │ │ +003fe820: 6974 6422 5d0a 3c2f 636f 6465 3e3c 2f70  itd"].

'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -175,14 +151,31 @@ │ │ │ │ - PCI-DSSv4-11.5.2 │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_aide_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_aide │ │ │ │ + │ │ │ │ +class install_aide { │ │ │ │ + package { 'aide': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "aide" │ │ │ │ +version = "*" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -190,14 +183,21 @@ │ │ │ │ if ! rpm -q --quiet "aide" ; then │ │ │ │ dnf install -y "aide" │ │ │ │ fi │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +package --add=aide │ │ │ │ ****** RRuullee? ?  BBuuiilldd aanndd TTeesstt AAIIDDEE DDaattaabbaassee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ Run the following command to generate a new database: │ │ │ │ $ sudo /usr/sbin/aide --init │ │ │ │ By default, the database will be written to the file /var/lib/aide/aide.db.new.gz. Storing the │ │ │ │ database, the configuration file /etc/aide.conf, and the binary /usr/sbin/aide (or hashes of these │ │ │ │ files), in a secure location (such as on read-only media) provides additional assurance about their │ │ │ │ integrity. The newly-generated database can be installed as follows: │ │ │ │ @@ -516,21 +516,14 @@ │ │ │ │ The /tmp directory is used as temporary storage by many programs. Placing /tmp in a tmpfs │ │ │ │ Rationale: filesystem enables the setting of more restrictive mount options, which can help protect │ │ │ │ programs which use it. The tmp.mount unit configures the tmpfs filesystem and ensures the │ │ │ │ /tmp directory is wiped during reboot. │ │ │ │ Severity:  low │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_systemd_tmp_mount_enabled │ │ │ │ References: _a_n_s_s_i R28 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -services --enabled=tmp.mount │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -576,14 +569,21 @@ │ │ │ │ "$SYSTEMCTL_EXEC" start 'tmp.mount' │ │ │ │ fi │ │ │ │ "$SYSTEMCTL_EXEC" enable 'tmp.mount' │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +services --enabled=tmp.mount │ │ │ │ Group   Sudo   Group contains 15 rules │ │ │ │ _[_r_e_f_]   Sudo, which stands for "su 'do'", provides the ability to delegate authority to certain │ │ │ │ users, groups of users, or system administrators. When configured for system users and/or groups, │ │ │ │ Sudo can allow a user or group to execute privileged commands that normally only root is allowed to │ │ │ │ execute. │ │ │ │ │ │ │ │ For more information on Sudo and addition Sudo configuration options, see _hh_tt_tt_pp_ss_::_//_//_ww_ww_ww_.._ss_uu_dd_oo_.._ww_ss. │ │ │ │ @@ -598,38 +598,14 @@ │ │ │ │ _n_i_s_t CM-6(a) │ │ │ │ _o_s_p_p FMT_MOF_EXT.1 │ │ │ │ _o_s_-_s_r_g SRG-OS-000324-GPOS-00125 │ │ │ │ References: _a_n_s_s_i R33 │ │ │ │ _c_i_s 5.2.1 │ │ │ │ _i_s_m 1386 │ │ │ │ _p_c_i_d_s_s_4 2.2.6, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "sudo" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -package --add=sudo │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_sudo │ │ │ │ - │ │ │ │ -class install_sudo { │ │ │ │ - package { 'sudo': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -656,14 +632,31 @@ │ │ │ │ - PCI-DSSv4-2.2.6 │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_sudo_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_sudo │ │ │ │ + │ │ │ │ +class install_sudo { │ │ │ │ + package { 'sudo': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "sudo" │ │ │ │ +version = "*" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -671,14 +664,21 @@ │ │ │ │ if ! rpm -q --quiet "sudo" ; then │ │ │ │ dnf install -y "sudo" │ │ │ │ fi │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +package --add=sudo │ │ │ │ ****** RRuullee? ?  VVeerriiffyy GGrroouupp WWhhoo OOwwnnss //eettcc//ssuuddooeerrss..dd DDiirreeccttoorryy ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ To properly set the group owner of /etc/sudoers.d, run the command: │ │ │ │ $ sudo chgrp root /etc/sudoers.d │ │ │ │ The ownership of the /etc/sudoers.d directory by the root group is important because this │ │ │ │ Rationale: directory hosts sudo configuration. Protection of this directory is critical for system │ │ │ │ security. Assigning the ownership to root ensures exclusive control of the sudo │ │ │ │ configuration. │ │ │ │ @@ -1548,38 +1548,14 @@ │ │ │ │ Rationale: dnf-automatic is an alternative command line interface (CLI) to dnf upgrade suitable for │ │ │ │ automatic, regular execution. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_dnf-automatic_installed │ │ │ │ _o_s_p_p FPT_TUD_EXT.1, FPT_TUD_EXT.2 │ │ │ │ References: _o_s_-_s_r_g SRG-OS-000191-GPOS-00080 │ │ │ │ _a_n_s_s_i R61 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "dnf-automatic" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -package --add=dnf-automatic │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_dnf-automatic │ │ │ │ - │ │ │ │ -class install_dnf-automatic { │ │ │ │ - package { 'dnf-automatic': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -1603,14 +1579,31 @@ │ │ │ │ tags: │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_dnf-automatic_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_dnf-automatic │ │ │ │ + │ │ │ │ +class install_dnf-automatic { │ │ │ │ + package { 'dnf-automatic': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "dnf-automatic" │ │ │ │ +version = "*" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if ( ( ! ( { rpm --quiet -q kernel ;} && { rpm --quiet -q rpm-ostree ;} && { rpm --quiet -q bootc ;} │ │ │ │ @@ -1620,14 +1613,21 @@ │ │ │ │ if ! rpm -q --quiet "dnf-automatic" ; then │ │ │ │ dnf install -y "dnf-automatic" │ │ │ │ fi │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +package --add=dnf-automatic │ │ │ │ ****** RRuullee? ?  CCoonnffiigguurree ddnnff--aauuttoommaattiicc ttoo IInnssttaallll AAvvaaiillaabbllee UUppddaatteess AAuuttoommaattiiccaallllyy ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ To ensure that the packages comprising the available updates will be automatically installed by dnf- │ │ │ │ automatic, set apply_updates to yes under [commands] section in /etc/dnf/automatic.conf. │ │ │ │ Installing software updates is a fundamental mitigation against the exploitation of │ │ │ │ publicly-known vulnerabilities. If the most recent security patches and updates are not │ │ │ │ Rationale: installed, unauthorized users may take advantage of weaknesses in the unpatched software. │ │ │ │ The lack of prompt attention to patching could result in a system compromise. The │ │ │ │ @@ -12952,17 +12952,14 @@ │ │ │ │ hardware instabilities. Proper function and stability should be assessed before applying remediation │ │ │ │ to production systems. │ │ │ │ Rationale: On x86 architectures, activating the I/OMMU prevents the system from arbitrary accesses │ │ │ │ potentially made by hardware devices. │ │ │ │ Severity:  unknown │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_grub2_enable_iommu_force │ │ │ │ References: _a_n_s_s_i R7 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -[customizations.kernel] │ │ │ │ -append = "iommu=force" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: medium │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: true │ │ │ │ SSttrraatteeggyy:: restrict │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -13015,14 +13012,17 @@ │ │ │ │ tags: │ │ │ │ - grub2_enable_iommu_force │ │ │ │ - low_disruption │ │ │ │ - medium_complexity │ │ │ │ - reboot_required │ │ │ │ - restrict_strategy │ │ │ │ - unknown_severity │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +[customizations.kernel] │ │ │ │ +append = "iommu=force" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if ( rpm --quiet -q grub2-common && rpm --quiet -q kernel ); then │ │ │ │ │ │ │ │ if { rpm --quiet -q kernel rpm-ostree bootc && ! rpm --quiet -q openshift-kubelet && { [ -f "/ │ │ │ │ run/.containerenv" ] || [ -f "/.containerenv" ]; }; } ; then │ │ │ │ KARGS_DIR="/usr/lib/bootc/kargs.d/" │ │ │ │ @@ -13053,17 +13053,14 @@ │ │ │ │ Warning:  Enabling L1TF mitigations may impact performance of the system. │ │ │ │ The L1TF vulnerability allows an attacker to bypass memory access security controls │ │ │ │ Rationale: imposed by the system or hypervisor. The L1TF vulnerability allows read access to any │ │ │ │ physical memory location that is cached in the L1 Data Cache. │ │ │ │ Severity:  high │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_grub2_l1tf_argument │ │ │ │ References: _a_n_s_s_i R8 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -[customizations.kernel] │ │ │ │ -append = "l1tf=full,force" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: medium │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: true │ │ │ │ SSttrraatteeggyy:: restrict │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -13122,14 +13119,17 @@ │ │ │ │ tags: │ │ │ │ - grub2_l1tf_argument │ │ │ │ - high_severity │ │ │ │ - low_disruption │ │ │ │ - medium_complexity │ │ │ │ - reboot_required │ │ │ │ - restrict_strategy │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +[customizations.kernel] │ │ │ │ +append = "l1tf=full,force" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if ( rpm --quiet -q grub2-common && rpm --quiet -q kernel ); then │ │ │ │ │ │ │ │ var_l1tf_options='full,force' │ │ │ │ │ │ │ │ │ │ │ │ @@ -13161,17 +13161,14 @@ │ │ │ │ contain mce=0 as follows: │ │ │ │ # grub2-editenv - set "$(grub2-editenv - list | grep kernelopts) mce=0" │ │ │ │ Rationale: Allowing uncorrected errors to result on a SIGBUS may allow an attacker to continue │ │ │ │ trying to exploit a vulnerability such as Rowhammer. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_grub2_mce_argument │ │ │ │ References: _a_n_s_s_i R8 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -[customizations.kernel] │ │ │ │ -append = "mce=0" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: medium │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: true │ │ │ │ SSttrraatteeggyy:: restrict │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -13224,14 +13221,17 @@ │ │ │ │ tags: │ │ │ │ - grub2_mce_argument │ │ │ │ - low_disruption │ │ │ │ - medium_complexity │ │ │ │ - medium_severity │ │ │ │ - reboot_required │ │ │ │ - restrict_strategy │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +[customizations.kernel] │ │ │ │ +append = "mce=0" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if ( rpm --quiet -q grub2-common && rpm --quiet -q kernel ); then │ │ │ │ │ │ │ │ if { rpm --quiet -q kernel rpm-ostree bootc && ! rpm --quiet -q openshift-kubelet && { [ -f "/ │ │ │ │ run/.containerenv" ] || [ -f "/.containerenv" ]; }; } ; then │ │ │ │ KARGS_DIR="/usr/lib/bootc/kargs.d/" │ │ │ │ @@ -13266,17 +13266,14 @@ │ │ │ │ with the following command: cat /sys/devices/system/cpu/vulnerabilities/mds │ │ │ │ Warning:  Enabling MDS mitigations will impact performance of the system, mainly by workloads with │ │ │ │ high rates of user-kernel-user space transitions. For example, system calls, NMIs and interrupts. │ │ │ │ Rationale: The MDS vulnerability allows an attacker to sample data from internal CPU buffers. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_grub2_mds_argument │ │ │ │ References: _a_n_s_s_i R8 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -[customizations.kernel] │ │ │ │ -append = "mds=full,nosmt" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: medium │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: true │ │ │ │ SSttrraatteeggyy:: restrict │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -13335,14 +13332,17 @@ │ │ │ │ tags: │ │ │ │ - grub2_mds_argument │ │ │ │ - low_disruption │ │ │ │ - medium_complexity │ │ │ │ - medium_severity │ │ │ │ - reboot_required │ │ │ │ - restrict_strategy │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +[customizations.kernel] │ │ │ │ +append = "mds=full,nosmt" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if ( rpm --quiet -q grub2-common && rpm --quiet -q kernel ); then │ │ │ │ │ │ │ │ var_mds_options='full,nosmt' │ │ │ │ │ │ │ │ │ │ │ │ @@ -13564,17 +13564,14 @@ │ │ │ │ (as in NUMA node) and applications allocating memory ouf of that node. The │ │ │ │ page_alloc.shuffle=1 kernel command line parameter then forces this functionality │ │ │ │ irrespectively of memory cache architecture. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_grub2_page_alloc_shuffle_argument │ │ │ │ References: _o_s_p_p AVA_VAN.1 │ │ │ │ _a_n_s_s_i R8 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -[customizations.kernel] │ │ │ │ -append = "page_alloc.shuffle=1" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: medium │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: true │ │ │ │ SSttrraatteeggyy:: restrict │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -13627,14 +13624,17 @@ │ │ │ │ tags: │ │ │ │ - grub2_page_alloc_shuffle_argument │ │ │ │ - low_disruption │ │ │ │ - medium_complexity │ │ │ │ - medium_severity │ │ │ │ - reboot_required │ │ │ │ - restrict_strategy │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +[customizations.kernel] │ │ │ │ +append = "page_alloc.shuffle=1" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if ( rpm --quiet -q grub2-common && rpm --quiet -q kernel ); then │ │ │ │ │ │ │ │ if { rpm --quiet -q kernel rpm-ostree bootc && ! rpm --quiet -q openshift-kubelet && { [ -f "/ │ │ │ │ run/.containerenv" ] || [ -f "/.containerenv" ]; }; } ; then │ │ │ │ KARGS_DIR="/usr/lib/bootc/kargs.d/" │ │ │ │ @@ -13662,17 +13662,14 @@ │ │ │ │ Rationale: vulnerability and hardens the kernel against attempts to bypass kernel address space │ │ │ │ layout randomization (KASLR). │ │ │ │ Severity:  low │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_grub2_pti_argument │ │ │ │ _n_i_s_t SI-16 │ │ │ │ References: _o_s_-_s_r_g SRG-OS-000433-GPOS-00193, SRG-OS-000095-GPOS-00049 │ │ │ │ _a_n_s_s_i R8 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -[customizations.kernel] │ │ │ │ -append = "pti=on" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: medium │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: true │ │ │ │ SSttrraatteeggyy:: restrict │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -13729,14 +13726,17 @@ │ │ │ │ - NIST-800-53-SI-16 │ │ │ │ - grub2_pti_argument │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - medium_complexity │ │ │ │ - reboot_required │ │ │ │ - restrict_strategy │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +[customizations.kernel] │ │ │ │ +append = "pti=on" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if ( rpm --quiet -q grub2-common && rpm --quiet -q kernel ); then │ │ │ │ │ │ │ │ if { rpm --quiet -q kernel rpm-ostree bootc && ! rpm --quiet -q openshift-kubelet && { [ -f "/ │ │ │ │ run/.containerenv" ] || [ -f "/.containerenv" ]; }; } ; then │ │ │ │ KARGS_DIR="/usr/lib/bootc/kargs.d/" │ │ │ │ @@ -13769,17 +13769,14 @@ │ │ │ │ # grub2-editenv - set "$(grub2-editenv - list | grep kernelopts) rng_core.default_quality=500" │ │ │ │ A system may struggle to initialize its entropy pool and end up starving. Crediting │ │ │ │ Rationale: entropy from the hardware number generators available in the system helps fill up the │ │ │ │ entropy pool. │ │ │ │ Severity:  low │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_grub2_rng_core_default_quality_argument │ │ │ │ References: _a_n_s_s_i R8 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -[customizations.kernel] │ │ │ │ -append = "rng_core.default_quality=500" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: medium │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: true │ │ │ │ SSttrraatteeggyy:: restrict │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -13839,14 +13836,17 @@ │ │ │ │ tags: │ │ │ │ - grub2_rng_core_default_quality_argument │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - medium_complexity │ │ │ │ - reboot_required │ │ │ │ - restrict_strategy │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +[customizations.kernel] │ │ │ │ +append = "rng_core.default_quality=500" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if ( rpm --quiet -q grub2-common && rpm --quiet -q kernel ); then │ │ │ │ │ │ │ │ var_rng_core_default_quality='500' │ │ │ │ │ │ │ │ │ │ │ │ @@ -13882,17 +13882,14 @@ │ │ │ │ seemingly useless but vulnerable slab with a useful and valuable slab. This increase the │ │ │ │ Rationale: risk that a heap overflow could overwrite objects from merged caches, with unmerged │ │ │ │ caches the heap overflow would only affect the objects in the same cache. Overall, this │ │ │ │ reduces the kernel attack surface area by isolating slabs from each other. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_grub2_slab_nomerge_argument │ │ │ │ References: _a_n_s_s_i R8 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -[customizations.kernel] │ │ │ │ -append = "slab_nomerge=yes" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: medium │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: true │ │ │ │ SSttrraatteeggyy:: restrict │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -13945,14 +13942,17 @@ │ │ │ │ tags: │ │ │ │ - grub2_slab_nomerge_argument │ │ │ │ - low_disruption │ │ │ │ - medium_complexity │ │ │ │ - medium_severity │ │ │ │ - reboot_required │ │ │ │ - restrict_strategy │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +[customizations.kernel] │ │ │ │ +append = "slab_nomerge=yes" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if ( rpm --quiet -q grub2-common && rpm --quiet -q kernel ); then │ │ │ │ │ │ │ │ if { rpm --quiet -q kernel rpm-ostree bootc && ! rpm --quiet -q openshift-kubelet && { [ -f "/ │ │ │ │ run/.containerenv" ] || [ -f "/.containerenv" ]; }; } ; then │ │ │ │ KARGS_DIR="/usr/lib/bootc/kargs.d/" │ │ │ │ @@ -13985,17 +13985,14 @@ │ │ │ │ Warning:  Disabling Speculative Store Bypass may impact performance of the system. │ │ │ │ In vulnerable processors, the speculatively forwarded store can be used in a cache side │ │ │ │ Rationale: channel attack. An example of this is reading memory to which the attacker does not │ │ │ │ directly have access, for example inside the sandboxed code. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_grub2_spec_store_bypass_disable_argument │ │ │ │ References: _a_n_s_s_i R8 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -[customizations.kernel] │ │ │ │ -append = "spec_store_bypass_disable=seccomp" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: medium │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: true │ │ │ │ SSttrraatteeggyy:: restrict │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -14056,14 +14053,17 @@ │ │ │ │ tags: │ │ │ │ - grub2_spec_store_bypass_disable_argument │ │ │ │ - low_disruption │ │ │ │ - medium_complexity │ │ │ │ - medium_severity │ │ │ │ - reboot_required │ │ │ │ - restrict_strategy │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +[customizations.kernel] │ │ │ │ +append = "spec_store_bypass_disable=seccomp" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if ( rpm --quiet -q grub2-common && rpm --quiet -q kernel ); then │ │ │ │ │ │ │ │ var_spec_store_bypass_disable_options='seccomp' │ │ │ │ │ │ │ │ │ │ │ │ @@ -14098,17 +14098,14 @@ │ │ │ │ command line to contain spectre_v2=on as follows: │ │ │ │ # grub2-editenv - set "$(grub2-editenv - list | grep kernelopts) spectre_v2=on" │ │ │ │ Rationale: The Spectre V2 vulnerability allows an attacker to read memory that he should not have │ │ │ │ access to. │ │ │ │ Severity:  high │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_grub2_spectre_v2_argument │ │ │ │ References: _a_n_s_s_i R8 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -[customizations.kernel] │ │ │ │ -append = "spectre_v2=on" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: medium │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: true │ │ │ │ SSttrraatteeggyy:: restrict │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -14161,14 +14158,17 @@ │ │ │ │ tags: │ │ │ │ - grub2_spectre_v2_argument │ │ │ │ - high_severity │ │ │ │ - low_disruption │ │ │ │ - medium_complexity │ │ │ │ - reboot_required │ │ │ │ - restrict_strategy │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +[customizations.kernel] │ │ │ │ +append = "spectre_v2=on" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if ( rpm --quiet -q grub2-common && rpm --quiet -q kernel ); then │ │ │ │ │ │ │ │ if { rpm --quiet -q kernel rpm-ostree bootc && ! rpm --quiet -q openshift-kubelet && { [ -f "/ │ │ │ │ run/.containerenv" ] || [ -f "/.containerenv" ]; }; } ; then │ │ │ │ KARGS_DIR="/usr/lib/bootc/kargs.d/" │ │ │ │ @@ -15381,38 +15381,14 @@ │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 SR 2.10, SR 2.11, SR 2.12, SR 2.8, SR 2.9 │ │ │ │ References: _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.4.1, A.12.4.2, A.12.4.3, A.12.4.4, A.12.7.1 │ │ │ │ _n_i_s_t CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.PT-1 │ │ │ │ _p_c_i_d_s_s Req-10.7 │ │ │ │ _a_n_s_s_i R71 │ │ │ │ _p_c_i_d_s_s_4 10.5.1, 10.5 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "logrotate" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -package --add=logrotate │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_logrotate │ │ │ │ - │ │ │ │ -class install_logrotate { │ │ │ │ - package { 'logrotate': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -15441,14 +15417,31 @@ │ │ │ │ - PCI-DSSv4-10.5.1 │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_logrotate_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_logrotate │ │ │ │ + │ │ │ │ +class install_logrotate { │ │ │ │ + package { 'logrotate': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "logrotate" │ │ │ │ +version = "*" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -15456,14 +15449,21 @@ │ │ │ │ if ! rpm -q --quiet "logrotate" ; then │ │ │ │ dnf install -y "logrotate" │ │ │ │ fi │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +package --add=logrotate │ │ │ │ ****** RRuullee? ?  EEnnssuurree LLooggrroottaattee RRuunnss PPeerriiooddiiccaallllyy ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The logrotate utility allows for the automatic rotation of log files. The frequency of rotation is │ │ │ │ specified in /etc/logrotate.conf, which triggers a cron task or a timer. To configure logrotate to │ │ │ │ run daily, add or correct the following line in /etc/logrotate.conf: │ │ │ │ # rotate log files frequency │ │ │ │ daily │ │ │ │ Log files that are not properly rotated run the risk of growing so large that they fill │ │ │ │ @@ -16123,38 +16123,14 @@ │ │ │ │ $ sudo dnf install rsyslog-gnutls │ │ │ │ Rationale: The rsyslog-gnutls package provides Transport Layer Security (TLS) support for the │ │ │ │ rsyslog daemon, which enables secure remote logging. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_rsyslog-gnutls_installed │ │ │ │ References: _o_s_-_s_r_g SRG-OS-000480-GPOS-00227, SRG-OS-000120-GPOS-00061 │ │ │ │ _a_n_s_s_i R71 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "rsyslog-gnutls" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -package --add=rsyslog-gnutls │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_rsyslog-gnutls │ │ │ │ - │ │ │ │ -class install_rsyslog-gnutls { │ │ │ │ - package { 'rsyslog-gnutls': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -16175,14 +16151,31 @@ │ │ │ │ tags: │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_rsyslog-gnutls_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_rsyslog-gnutls │ │ │ │ + │ │ │ │ +class install_rsyslog-gnutls { │ │ │ │ + package { 'rsyslog-gnutls': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "rsyslog-gnutls" │ │ │ │ +version = "*" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -16190,14 +16183,21 @@ │ │ │ │ if ! rpm -q --quiet "rsyslog-gnutls" ; then │ │ │ │ dnf install -y "rsyslog-gnutls" │ │ │ │ fi │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +package --add=rsyslog-gnutls │ │ │ │ Group   Network Configuration and Firewalls   Group contains 8 groups and 53 rules │ │ │ │ _[_r_e_f_]   Most systems must be connected to a network of some sort, and this brings with it the │ │ │ │ substantial risk of network attack. This section discusses the security impact of decisions about │ │ │ │ networking which must be made when configuring a system. │ │ │ │ │ │ │ │ This section also discusses firewalls, network access controls, and other network security │ │ │ │ frameworks, which allow system-level rules to be written that can limit an attackers' ability to │ │ │ │ @@ -30054,21 +30054,14 @@ │ │ │ │ The noexec mount option can be used to prevent binaries from being executed out of /boot. Add the │ │ │ │ noexec option to the fourth column of /etc/fstab for the line which controls mounting of /boot. │ │ │ │ Rationale: The /boot partition contains the kernel and the bootloader. No binaries should be │ │ │ │ executed from this partition after the booting process finishes. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_mount_option_boot_noexec │ │ │ │ References: _a_n_s_s_i R28 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /boot --mountoptions="noexec" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -30250,35 +30243,35 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /boot --mountoptions="noexec" │ │ │ │ ****** RRuullee? ?  AAdddd nnoossuuiidd OOppttiioonn ttoo //bboooott ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nosuid mount option can be used to prevent execution of setuid programs in /boot. The SUID and │ │ │ │ SGID permissions should not be required on the boot partition. Add the nosuid option to the fourth │ │ │ │ column of /etc/fstab for the line which controls mounting of /boot. │ │ │ │ Rationale: The presence of SUID and SGID executables should be tightly controlled. Users should not │ │ │ │ be able to execute SUID or SGID binaries from boot partitions. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_mount_option_boot_nosuid │ │ │ │ _n_e_r_c_-_c_i_p CIP-003-8 R5.1.1, CIP-003-8 R5.3, CIP-004-6 R2.3, CIP-007-3 R2.1, CIP-007- │ │ │ │ 3 R2.2, CIP-007-3 R2.3, CIP-007-3 R5.1, CIP-007-3 R5.1.1, CIP-007-3 R5.1.2 │ │ │ │ References: _n_i_s_t CM-7(a), CM-7(b), CM-6(a), AC-6, AC-6(1), MP-7 │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-2, PR.PT-3 │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154, SRG-OS-000480-GPOS-00227 │ │ │ │ _a_n_s_s_i R28 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /boot --mountoptions="nosuid" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -30496,31 +30489,31 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /boot --mountoptions="nosuid" │ │ │ │ ****** RRuullee? ?  AAdddd nnooeexxeecc OOppttiioonn ttoo //hhoommee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The noexec mount option can be used to prevent binaries from being executed out of /home. Add the │ │ │ │ noexec option to the fourth column of /etc/fstab for the line which controls mounting of /home. │ │ │ │ Rationale: The /home directory contains data of individual users. Binaries in this directory should │ │ │ │ not be considered as trusted and users should not be able to execute them. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_mount_option_home_noexec │ │ │ │ _n_i_s_t CM-6(b) │ │ │ │ References: _o_s_-_s_r_g SRG-OS-000480-GPOS-00227 │ │ │ │ _a_n_s_s_i R28 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /home --mountoptions="noexec" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -30708,14 +30701,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /home --mountoptions="noexec" │ │ │ │ ****** RRuullee? ?  AAdddd nnoossuuiidd OOppttiioonn ttoo //hhoommee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nosuid mount option can be used to prevent execution of setuid programs in /home. The SUID and │ │ │ │ SGID permissions should not be required in these user data directories. Add the nosuid option to the │ │ │ │ fourth column of /etc/fstab for the line which controls mounting of /home. │ │ │ │ Rationale: The presence of SUID and SGID executables should be tightly controlled. Users should not │ │ │ │ be able to execute SUID or SGID binaries from user home directory partitions. │ │ │ │ Severity:  medium │ │ │ │ @@ -30735,21 +30735,14 @@ │ │ │ │ _n_e_r_c_-_c_i_p CIP-003-8 R5.1.1, CIP-003-8 R5.3, CIP-004-6 R2.3, CIP-007-3 R2.1, CIP-007- │ │ │ │ 3 R2.2, CIP-007-3 R2.3, CIP-007-3 R5.1, CIP-007-3 R5.1.1, CIP-007-3 R5.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a), AC-6, AC-6(1), MP-7 │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-2, PR.PT-3 │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154, SRG-OS-000480-GPOS-00227 │ │ │ │ _a_n_s_s_i R28 │ │ │ │ _c_i_s 1.1.2.3.3 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /home --mountoptions="nosuid" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -30973,14 +30966,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /home --mountoptions="nosuid" │ │ │ │ ****** RRuullee? ?  AAdddd nnooddeevv OOppttiioonn ttoo NNoonn--RRoooott LLooccaall PPaarrttiittiioonnss ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nodev mount option prevents files from being interpreted as character or block devices. │ │ │ │ Legitimate character and block devices should exist only in the /dev directory on the root partition │ │ │ │ or within chroot jails built for system services. Add the nodev option to the fourth column of /etc/ │ │ │ │ fstab for the line which controls mounting of any non-root local partitions. │ │ │ │ Warning:  This rule checks only local partitions, identified as those backed by a device node in / │ │ │ │ dev. Network file systems such as NFS, CIFS, GlusterFS and others are excluded because they do not │ │ │ │ @@ -31264,21 +31264,14 @@ │ │ │ │ of /etc/fstab for the line which controls mounting of /opt. │ │ │ │ The presence of SUID and SGID executables should be tightly controlled. The /opt │ │ │ │ Rationale: directory contains additional software packages. Users should not be able to execute SUID │ │ │ │ or SGID binaries from this directory. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_mount_option_opt_nosuid │ │ │ │ References: _a_n_s_s_i R28 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /opt --mountoptions="nosuid" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -31466,31 +31459,31 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /opt --mountoptions="nosuid" │ │ │ │ ****** RRuullee? ?  AAdddd nnoossuuiidd OOppttiioonn ttoo //ssrrvv ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nosuid mount option can be used to prevent execution of setuid programs in /srv. The SUID and │ │ │ │ SGID permissions should not be required in this directory. Add the nosuid option to the fourth column │ │ │ │ of /etc/fstab for the line which controls mounting of /srv. │ │ │ │ The presence of SUID and SGID executables should be tightly controlled. The /srv │ │ │ │ Rationale: directory contains files served by various network services such as FTP. Users should not │ │ │ │ be able to execute SUID or SGID binaries from this directory. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_mount_option_srv_nosuid │ │ │ │ References: _a_n_s_s_i R28 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /srv --mountoptions="nosuid" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -31678,14 +31671,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /srv --mountoptions="nosuid" │ │ │ │ ****** RRuullee? ?  AAdddd nnooeexxeecc OOppttiioonn ttoo //ttmmpp ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The noexec mount option can be used to prevent binaries from being executed out of /tmp. Add the │ │ │ │ noexec option to the fourth column of /etc/fstab for the line which controls mounting of /tmp. │ │ │ │ Rationale: Allowing users to execute binaries from world-writable directories such as /tmp should │ │ │ │ never be necessary in normal operation and can expose the system to potential compromise. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_mount_option_tmp_noexec │ │ │ │ @@ -31704,21 +31704,14 @@ │ │ │ │ _n_e_r_c_-_c_i_p CIP-003-8 R5.1.1, CIP-003-8 R5.3, CIP-004-6 R2.3, CIP-007-3 R2.1, CIP-007- │ │ │ │ 3 R2.2, CIP-007-3 R2.3, CIP-007-3 R5.1, CIP-007-3 R5.1.1, CIP-007-3 R5.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a), AC-6, AC-6(1), MP-7 │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-2, PR.PT-3 │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ _a_n_s_s_i R28 │ │ │ │ _c_i_s 1.1.2.1.4 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /tmp --mountoptions="noexec" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -31942,14 +31935,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /tmp --mountoptions="noexec" │ │ │ │ ****** RRuullee? ?  AAdddd nnoossuuiidd OOppttiioonn ttoo //ttmmpp ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nosuid mount option can be used to prevent execution of setuid programs in /tmp. The SUID and │ │ │ │ SGID permissions should not be required in these world-writable directories. Add the nosuid option to │ │ │ │ the fourth column of /etc/fstab for the line which controls mounting of /tmp. │ │ │ │ Rationale: The presence of SUID and SGID executables should be tightly controlled. Users should not │ │ │ │ be able to execute SUID or SGID binaries from temporary storage partitions. │ │ │ │ Severity:  medium │ │ │ │ @@ -31969,21 +31969,14 @@ │ │ │ │ _n_e_r_c_-_c_i_p CIP-003-8 R5.1.1, CIP-003-8 R5.3, CIP-004-6 R2.3, CIP-007-3 R2.1, CIP-007- │ │ │ │ 3 R2.2, CIP-007-3 R2.3, CIP-007-3 R5.1, CIP-007-3 R5.1.1, CIP-007-3 R5.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a), AC-6, AC-6(1), MP-7 │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-2, PR.PT-3 │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ _a_n_s_s_i R28 │ │ │ │ _c_i_s 1.1.2.1.3 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /tmp --mountoptions="nosuid" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -32207,14 +32200,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /tmp --mountoptions="nosuid" │ │ │ │ ****** RRuullee? ?  AAdddd nnooeexxeecc OOppttiioonn ttoo //vvaarr//lloogg ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The noexec mount option can be used to prevent binaries from being executed out of /var/log. Add the │ │ │ │ noexec option to the fourth column of /etc/fstab for the line which controls mounting of /var/log. │ │ │ │ Allowing users to execute binaries from directories containing log files such as /var/log │ │ │ │ Rationale: should never be necessary in normal operation and can expose the system to potential │ │ │ │ compromise. │ │ │ │ Severity:  medium │ │ │ │ @@ -32222,21 +32222,14 @@ │ │ │ │ _n_e_r_c_-_c_i_p CIP-003-8 R5.1.1, CIP-003-8 R5.3, CIP-004-6 R2.3, CIP-007-3 R2.1, CIP-007- │ │ │ │ 3 R2.2, CIP-007-3 R2.3, CIP-007-3 R5.1, CIP-007-3 R5.1.1, CIP-007-3 R5.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a), AC-6, AC-6(1), MP-7 │ │ │ │ References: _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-2, PR.PT-3 │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ _a_n_s_s_i R28 │ │ │ │ _c_i_s 1.1.2.6.4 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /var/log --mountoptions="noexec" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -32461,14 +32454,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /var/log --mountoptions="noexec" │ │ │ │ ****** RRuullee? ?  AAdddd nnoossuuiidd OOppttiioonn ttoo //vvaarr//lloogg ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nosuid mount option can be used to prevent execution of setuid programs in /var/log. The SUID │ │ │ │ and SGID permissions should not be required in directories containing log files. Add the nosuid │ │ │ │ option to the fourth column of /etc/fstab for the line which controls mounting of /var/log. │ │ │ │ Rationale: The presence of SUID and SGID executables should be tightly controlled. Users should not │ │ │ │ be able to execute SUID or SGID binaries from partitions designated for log files. │ │ │ │ Severity:  medium │ │ │ │ @@ -32476,21 +32476,14 @@ │ │ │ │ _n_e_r_c_-_c_i_p CIP-003-8 R5.1.1, CIP-003-8 R5.3, CIP-004-6 R2.3, CIP-007-3 R2.1, CIP-007- │ │ │ │ 3 R2.2, CIP-007-3 R2.3, CIP-007-3 R5.1, CIP-007-3 R5.1.1, CIP-007-3 R5.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a), AC-6, AC-6(1), MP-7 │ │ │ │ References: _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-2, PR.PT-3 │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ _a_n_s_s_i R28 │ │ │ │ _c_i_s 1.1.2.6.3 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /var/log --mountoptions="nosuid" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -32717,29 +32710,29 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /var/log --mountoptions="nosuid" │ │ │ │ ****** RRuullee? ?  AAdddd nnooeexxeecc OOppttiioonn ttoo //vvaarr ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The noexec mount option can be used to prevent binaries from being executed out of /var. Add the │ │ │ │ noexec option to the fourth column of /etc/fstab for the line which controls mounting of /var. │ │ │ │ Rationale: The /var directory contains variable system data such as logs, mails and caches. No │ │ │ │ binaries should be executed from this directory. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_mount_option_var_noexec │ │ │ │ References: _a_n_s_s_i R28 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /var --mountoptions="noexec" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -32928,30 +32921,30 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /var --mountoptions="noexec" │ │ │ │ ****** RRuullee? ?  AAdddd nnoossuuiidd OOppttiioonn ttoo //vvaarr ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nosuid mount option can be used to prevent execution of setuid programs in /var. The SUID and │ │ │ │ SGID permissions should not be required for this directory. Add the nosuid option to the fourth │ │ │ │ column of /etc/fstab for the line which controls mounting of /var. │ │ │ │ Rationale: The presence of SUID and SGID executables should be tightly controlled. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_mount_option_var_nosuid │ │ │ │ References: _a_n_s_s_i R28 │ │ │ │ _c_i_s 1.1.2.4.3 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /var --mountoptions="nosuid" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -33140,32 +33133,32 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /var --mountoptions="nosuid" │ │ │ │ ****** RRuullee? ?  AAdddd nnooeexxeecc OOppttiioonn ttoo //vvaarr//ttmmpp ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The noexec mount option can be used to prevent binaries from being executed out of /var/tmp. Add the │ │ │ │ noexec option to the fourth column of /etc/fstab for the line which controls mounting of /var/tmp. │ │ │ │ Allowing users to execute binaries from world-writable directories such as /var/tmp │ │ │ │ Rationale: should never be necessary in normal operation and can expose the system to potential │ │ │ │ compromise. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_mount_option_var_tmp_noexec │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ References: _a_n_s_s_i R28 │ │ │ │ _c_i_s 1.1.2.5.4 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /var/tmp --mountoptions="noexec" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -33356,32 +33349,32 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /var/tmp --mountoptions="noexec" │ │ │ │ ****** RRuullee? ?  AAdddd nnoossuuiidd OOppttiioonn ttoo //vvaarr//ttmmpp ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The nosuid mount option can be used to prevent execution of setuid programs in /var/tmp. The SUID │ │ │ │ and SGID permissions should not be required in these world-writable directories. Add the nosuid │ │ │ │ option to the fourth column of /etc/fstab for the line which controls mounting of /var/tmp. │ │ │ │ Rationale: The presence of SUID and SGID executables should be tightly controlled. Users should not │ │ │ │ be able to execute SUID or SGID binaries from temporary storage partitions. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_mount_option_var_tmp_nosuid │ │ │ │ _o_s_-_s_r_g SRG-OS-000368-GPOS-00154 │ │ │ │ References: _a_n_s_s_i R28 │ │ │ │ _c_i_s 1.1.2.5.3 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: high │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -part /var/tmp --mountoptions="nosuid" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: high │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -33572,14 +33565,21 @@ │ │ │ │ } │ │ │ │ │ │ │ │ perform_remediation │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: high │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +part /var/tmp --mountoptions="nosuid" │ │ │ │ Group   Restrict Programs from Dangerous Execution Patterns   Group contains 3 groups and 17 rules │ │ │ │ _[_r_e_f_]   The recommendations in this section are designed to ensure that the system's features to │ │ │ │ protect against potentially dangerous program execution are activated. These protections are applied │ │ │ │ at the system initialization or kernel level, and defend against certain types of badly-configured or │ │ │ │ compromised programs. │ │ │ │ Group   Disable Core Dumps   Group contains 1 rule │ │ │ │ _[_r_e_f_]   A core dump file is the memory image of an executable program when it was terminated by the │ │ │ │ @@ -34316,17 +34316,14 @@ │ │ │ │ This prevents many types of use-after-free vulnerabilities at little performance cost. │ │ │ │ Also prevents leak of data and detection of corrupted memory. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_grub2_page_poison_argument │ │ │ │ _n_i_s_t CM-6(a) │ │ │ │ References: _o_s_-_s_r_g SRG-OS-000480-GPOS-00227, SRG-OS-000134-GPOS-00068 │ │ │ │ _a_n_s_s_i R8 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -[customizations.kernel] │ │ │ │ -append = "page_poison=1" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: medium │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: true │ │ │ │ SSttrraatteeggyy:: restrict │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -34385,14 +34382,17 @@ │ │ │ │ - NIST-800-53-CM-6(a) │ │ │ │ - grub2_page_poison_argument │ │ │ │ - low_disruption │ │ │ │ - medium_complexity │ │ │ │ - medium_severity │ │ │ │ - reboot_required │ │ │ │ - restrict_strategy │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +[customizations.kernel] │ │ │ │ +append = "page_poison=1" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel && { rpm --quiet -q grub2-common; }; then │ │ │ │ │ │ │ │ if { rpm --quiet -q kernel rpm-ostree bootc && ! rpm --quiet -q openshift-kubelet && { [ -f "/ │ │ │ │ run/.containerenv" ] || [ -f "/.containerenv" ]; }; } ; then │ │ │ │ KARGS_DIR="/usr/lib/bootc/kargs.d/" │ │ │ │ @@ -34421,17 +34421,14 @@ │ │ │ │ This prevents many types of use-after-free vulnerabilities at little performance cost. │ │ │ │ Also prevents leak of data and detection of corrupted memory. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_grub2_slub_debug_argument │ │ │ │ _n_i_s_t CM-6(a) │ │ │ │ References: _o_s_-_s_r_g SRG-OS-000433-GPOS-00192, SRG-OS-000134-GPOS-00068 │ │ │ │ _a_n_s_s_i R8 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -[customizations.kernel] │ │ │ │ -append = "slub_debug=FZP" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: medium │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: true │ │ │ │ SSttrraatteeggyy:: restrict │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -34496,14 +34493,17 @@ │ │ │ │ - NIST-800-53-CM-6(a) │ │ │ │ - grub2_slub_debug_argument │ │ │ │ - low_disruption │ │ │ │ - medium_complexity │ │ │ │ - medium_severity │ │ │ │ - reboot_required │ │ │ │ - restrict_strategy │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +[customizations.kernel] │ │ │ │ +append = "slub_debug=FZP" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel && { rpm --quiet -q grub2-common; }; then │ │ │ │ │ │ │ │ var_slub_debug_options='FZP' │ │ │ │ │ │ │ │ │ │ │ │ @@ -37678,35 +37678,14 @@ │ │ │ │ 2.5, SR 2.6, SR 2.7, SR 7.6 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.1.2, A.12.5.1, A.12.6.2, A.14.2.2, A.14.2.3, A.14.2.4, A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-3 │ │ │ │ _a_n_s_s_i R62 │ │ │ │ _c_i_s 2.1.3 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=dhcp │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_dhcp │ │ │ │ - │ │ │ │ -class remove_dhcp { │ │ │ │ - package { 'dhcp': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall DHCP Server Package: Ensure dhcp is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -37720,14 +37699,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_dhcp_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_dhcp │ │ │ │ + │ │ │ │ +class remove_dhcp { │ │ │ │ + package { 'dhcp': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove dhcp │ │ │ │ @@ -37736,14 +37728,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "dhcp" ; then │ │ │ │ dnf remove -y --noautoremove "dhcp" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=dhcp │ │ │ │ Group   Mail Server Software   Group contains 1 group and 3 rules │ │ │ │ _[_r_e_f_]   Mail servers are used to send and receive email over the network. Mail is a very common │ │ │ │ service, and Mail Transfer Agents (MTAs) are obvious targets of network attack. Ensure that systems │ │ │ │ are not running MTAs unnecessarily, and configure needed MTAs as defensively as possible. │ │ │ │ │ │ │ │ Very few systems at any site should be configured to directly receive email over the network. Users │ │ │ │ should instead use mail client programs to retrieve email from a central server that supports │ │ │ │ @@ -37910,35 +37910,14 @@ │ │ │ │ _i_s_a_-_6_2_4_4_3_-_2_0_1_3 1.5, SR 1.6, SR 1.7, SR 1.8, SR 1.9, SR 2.1, SR 2.2, SR 2.3, SR 2.4, SR │ │ │ │ 2.5, SR 2.6, SR 2.7, SR 7.6 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.12.1.2, A.12.5.1, A.12.6.2, A.14.2.2, A.14.2.3, A.14.2.4, A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.IP-1, PR.PT-3 │ │ │ │ _o_s_-_s_r_g SRG-OS-000480-GPOS-00227, SRG-OS-000095-GPOS-00049 │ │ │ │ _a_n_s_s_i R62 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=sendmail │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_sendmail │ │ │ │ - │ │ │ │ -class remove_sendmail { │ │ │ │ - package { 'sendmail': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -37965,14 +37944,27 @@ │ │ │ │ - NIST-800-53-CM-7(b) │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_sendmail_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_sendmail │ │ │ │ + │ │ │ │ +class remove_sendmail { │ │ │ │ + package { 'sendmail': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -37987,14 +37979,22 @@ │ │ │ │ if rpm -q --quiet "sendmail" ; then │ │ │ │ dnf remove -y --noautoremove "sendmail" │ │ │ │ fi │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=sendmail │ │ │ │ Group   Network Time Protocol   Group contains 5 rules │ │ │ │ _[_r_e_f_]   The Network Time Protocol is used to manage the system clock over a network. Computer clocks │ │ │ │ are not very accurate, so time will drift unpredictably on unmanaged systems. Central time protocols │ │ │ │ can be used both to ensure that time is consistent among a network of systems, and that their time is │ │ │ │ consistent with the outside world. │ │ │ │ │ │ │ │ If every system on a network reliably reports the same time, then it is much easier to correlate log │ │ │ │ @@ -38047,38 +38047,14 @@ │ │ │ │ _o_s_p_p FMT_SMF_EXT.1 │ │ │ │ _p_c_i_d_s_s Req-10.4 │ │ │ │ _o_s_-_s_r_g SRG-OS-000355-GPOS-00143 │ │ │ │ References: _a_n_s_s_i R71 │ │ │ │ _c_i_s 2.3.1 │ │ │ │ _i_s_m 0988, 1405 │ │ │ │ _p_c_i_d_s_s_4 10.6.1, 10.6 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "chrony" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -package --add=chrony │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_chrony │ │ │ │ - │ │ │ │ -class install_chrony { │ │ │ │ - package { 'chrony': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -38105,14 +38081,31 @@ │ │ │ │ - PCI-DSSv4-10.6.1 │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_chrony_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_chrony │ │ │ │ + │ │ │ │ +class install_chrony { │ │ │ │ + package { 'chrony': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "chrony" │ │ │ │ +version = "*" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -38120,14 +38113,21 @@ │ │ │ │ if ! rpm -q --quiet "chrony" ; then │ │ │ │ dnf install -y "chrony" │ │ │ │ fi │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +package --add=chrony │ │ │ │ ****** RRuullee? ?  AA rreemmoottee ttiimmee sseerrvveerr ffoorr CChhrroonnyy iiss ccoonnffiigguurreedd ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ Chrony is a daemon which implements the Network Time Protocol (NTP). It is designed to synchronize │ │ │ │ system clocks across a variety of systems and use a source that is highly accurate. More information │ │ │ │ on chrony can be found at _h_t_t_p_s_:_/_/_c_h_r_o_n_y_-_p_r_o_j_e_c_t_._o_r_g_/. Chrony can be configured to be a client and/ │ │ │ │ or a server. Add or edit server or pool lines to /etc/chrony.conf as appropriate: │ │ │ │ server │ │ │ │ Alternatively, server or pool directives can be specified in files included via sourcedir or confdir │ │ │ │ @@ -38785,35 +38785,14 @@ │ │ │ │ A.14.2.2, A.14.2.3, A.14.2.4, A.6.2.1, A.6.2.2, A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-3, PR.IP-1, PR.PT-3, PR.PT-4 │ │ │ │ _a_n_s_s_i R62 │ │ │ │ _c_i_s 2.1.19 │ │ │ │ _i_s_m 1409 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=xinetd │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_xinetd │ │ │ │ - │ │ │ │ -class remove_xinetd { │ │ │ │ - package { 'xinetd': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -38844,14 +38823,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_xinetd_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_xinetd │ │ │ │ + │ │ │ │ +class remove_xinetd { │ │ │ │ + package { 'xinetd': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -38866,14 +38858,22 @@ │ │ │ │ if rpm -q --quiet "xinetd" ; then │ │ │ │ dnf remove -y --noautoremove "xinetd" │ │ │ │ fi │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=xinetd │ │ │ │ Group   NIS   Group contains 2 rules │ │ │ │ _[_r_e_f_]   The Network Information Service (NIS), also known as 'Yellow Pages' (YP), and its successor │ │ │ │ NIS+ have been made obsolete by Kerberos, LDAP, and other modern centralized authentication services. │ │ │ │ NIS should not be used because it suffers from security problems inherent in its design, such as │ │ │ │ inadequate protection of important authentication information. │ │ │ │ ****** RRuullee? ?  RReemmoovvee NNIISS CClliieenntt ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The Network Information Service (NIS), formerly known as Yellow Pages, is a client-server directory │ │ │ │ @@ -38887,35 +38887,14 @@ │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_ypbind_removed │ │ │ │ _h_i_p_a_a 164.308(a)(4)(i), 164.308(b)(1), 164.308(b)(3), 164.310(b), 164.312(e)(1), │ │ │ │ 164.312(e)(2)(ii) │ │ │ │ References: _a_n_s_s_i R62 │ │ │ │ _c_i_s 2.2.3 │ │ │ │ _i_s_m 1409 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=ypbind │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_ypbind │ │ │ │ - │ │ │ │ -class remove_ypbind { │ │ │ │ - package { 'ypbind': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Remove NIS Client: Ensure ypbind is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -38926,14 +38905,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - package_ypbind_removed │ │ │ │ - unknown_severity │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_ypbind │ │ │ │ + │ │ │ │ +class remove_ypbind { │ │ │ │ + package { 'ypbind': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove ypbind │ │ │ │ @@ -38942,14 +38934,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "ypbind" ; then │ │ │ │ dnf remove -y --noautoremove "ypbind" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=ypbind │ │ │ │ ****** RRuullee? ?  UUnniinnssttaallll yyppsseerrvv PPaacckkaaggee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The ypserv package can be removed with the following command: │ │ │ │ $ sudo dnf remove ypserv │ │ │ │ The NIS service provides an unencrypted authentication service which does not provide for │ │ │ │ Rationale: the confidentiality and integrity of user passwords or the remote session. Removing the │ │ │ │ ypserv package decreases the risk of the accidental (or intentional) activation of NIS or │ │ │ │ NIS+ services. │ │ │ │ @@ -38973,35 +38973,14 @@ │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a), IA-5(1)(c) │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-3, PR.IP-1, PR.PT-3, PR.PT-4 │ │ │ │ _p_c_i_d_s_s Req-2.2.2 │ │ │ │ _o_s_-_s_r_g SRG-OS-000095-GPOS-00049 │ │ │ │ _a_n_s_s_i R62 │ │ │ │ _c_i_s 2.1.10 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=ypserv │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_ypserv │ │ │ │ - │ │ │ │ -class remove_ypserv { │ │ │ │ - package { 'ypserv': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall ypserv Package: Ensure ypserv is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -39017,14 +38996,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - high_severity │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - package_ypserv_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_ypserv │ │ │ │ + │ │ │ │ +class remove_ypserv { │ │ │ │ + package { 'ypserv': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove ypserv │ │ │ │ @@ -39033,14 +39025,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "ypserv" ; then │ │ │ │ dnf remove -y --noautoremove "ypserv" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=ypserv │ │ │ │ Group   Rlogin, Rsh, and Rexec   Group contains 2 rules │ │ │ │ _[_r_e_f_]   The Berkeley r-commands are legacy services which allow cleartext remote access and have an │ │ │ │ insecure trust model. │ │ │ │ ****** RRuullee? ?  UUnniinnssttaallll rrsshh--sseerrvveerr PPaacckkaaggee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The rsh-server package can be removed with the following command: │ │ │ │ $ sudo dnf remove rsh-server │ │ │ │ The rsh-server service provides unencrypted remote access service which does not provide │ │ │ │ @@ -39067,35 +39067,14 @@ │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.11.2.6, A.12.1.2, A.12.5.1, A.12.6.2, A.13.1.1, A.13.2.1, A.14.1.3, │ │ │ │ A.14.2.2, A.14.2.3, A.14.2.4, A.6.2.1, A.6.2.2, A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a), IA-5(1)(c) │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-3, PR.IP-1, PR.PT-3, PR.PT-4 │ │ │ │ _o_s_-_s_r_g SRG-OS-000095-GPOS-00049 │ │ │ │ _a_n_s_s_i R62 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=rsh-server │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_rsh-server │ │ │ │ - │ │ │ │ -class remove_rsh-server { │ │ │ │ - package { 'rsh-server': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall rsh-server Package: Ensure rsh-server is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -39110,14 +39089,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - high_severity │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - package_rsh-server_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_rsh-server │ │ │ │ + │ │ │ │ +class remove_rsh-server { │ │ │ │ + package { 'rsh-server': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove rsh-server │ │ │ │ @@ -39126,14 +39118,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "rsh-server" ; then │ │ │ │ dnf remove -y --noautoremove "rsh-server" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=rsh-server │ │ │ │ ****** RRuullee? ?  UUnniinnssttaallll rrsshh PPaacckkaaggee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The rsh package contains the client commands for the rsh services │ │ │ │ These legacy clients contain numerous security exposures and have been replaced with the │ │ │ │ more secure SSH package. Even if the server is removed, it is best to ensure the clients │ │ │ │ Rationale: are also removed to prevent users from inadvertently attempting to use these commands and │ │ │ │ therefore exposing their credentials. Note that removing the rsh package removes the │ │ │ │ clients for rsh,rcp, and rlogin. │ │ │ │ @@ -39141,35 +39141,14 @@ │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_rsh_removed │ │ │ │ _c_u_i 3.1.13 │ │ │ │ _h_i_p_a_a 164.308(a)(4)(i), 164.308(b)(1), 164.308(b)(3), 164.310(b), 164.312(e)(1), │ │ │ │ References: 164.312(e)(2)(ii) │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.8.2.3, A.13.1.1, A.13.2.1, A.13.2.3, A.14.1.2, A.14.1.3 │ │ │ │ _a_n_s_s_i R62 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=rsh │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_rsh │ │ │ │ - │ │ │ │ -class remove_rsh { │ │ │ │ - package { 'rsh': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall rsh Package: Ensure rsh is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -39181,14 +39160,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - package_rsh_removed │ │ │ │ - unknown_severity │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_rsh │ │ │ │ + │ │ │ │ +class remove_rsh { │ │ │ │ + package { 'rsh': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove rsh │ │ │ │ @@ -39197,14 +39189,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "rsh" ; then │ │ │ │ dnf remove -y --noautoremove "rsh" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=rsh │ │ │ │ Group   Chat/Messaging Services   Group contains 2 rules │ │ │ │ _[_r_e_f_]   The talk software makes it possible for users to send and receive messages across systems │ │ │ │ through a terminal session. │ │ │ │ ****** RRuullee? ?  UUnniinnssttaallll ttaallkk--sseerrvveerr PPaacckkaaggee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The talk-server package can be removed with the following command: │ │ │ │ $ sudo dnf remove talk-server │ │ │ │ The talk software presents a security risk as it uses unencrypted protocols for │ │ │ │ @@ -39212,35 +39212,14 @@ │ │ │ │ intentional) activation of talk services. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_talk-server_removed │ │ │ │ _h_i_p_a_a 164.308(a)(4)(i), 164.308(b)(1), 164.308(b)(3), 164.310(b), 164.312(e)(1), │ │ │ │ References: 164.312(e)(2)(ii) │ │ │ │ _a_n_s_s_i R62 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=talk-server │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_talk-server │ │ │ │ - │ │ │ │ -class remove_talk-server { │ │ │ │ - package { 'talk-server': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall talk-server Package: Ensure talk-server is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -39251,14 +39230,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_talk-server_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_talk-server │ │ │ │ + │ │ │ │ +class remove_talk-server { │ │ │ │ + package { 'talk-server': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove talk-server │ │ │ │ @@ -39267,14 +39259,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "talk-server" ; then │ │ │ │ dnf remove -y --noautoremove "talk-server" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=talk-server │ │ │ │ ****** RRuullee? ?  UUnniinnssttaallll ttaallkk PPaacckkaaggee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The talk package contains the client program for the Internet talk protocol, which allows the user │ │ │ │ to chat with other users on different systems. Talk is a communication program which copies lines │ │ │ │ from one terminal to the terminal of another user. The talk package can be removed with the │ │ │ │ following command: │ │ │ │ $ sudo dnf remove talk │ │ │ │ The talk software presents a security risk as it uses unencrypted protocols for │ │ │ │ @@ -39282,35 +39282,14 @@ │ │ │ │ intentional) activation of talk client program. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_talk_removed │ │ │ │ _h_i_p_a_a 164.308(a)(4)(i), 164.308(b)(1), 164.308(b)(3), 164.310(b), 164.312(e)(1), │ │ │ │ References: 164.312(e)(2)(ii) │ │ │ │ _a_n_s_s_i R62 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=talk │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_talk │ │ │ │ - │ │ │ │ -class remove_talk { │ │ │ │ - package { 'talk': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall talk Package: Ensure talk is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -39321,14 +39300,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_talk_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_talk │ │ │ │ + │ │ │ │ +class remove_talk { │ │ │ │ + package { 'talk': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove talk │ │ │ │ @@ -39337,14 +39329,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "talk" ; then │ │ │ │ dnf remove -y --noautoremove "talk" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=talk │ │ │ │ Group   Telnet   Group contains 2 rules │ │ │ │ _[_r_e_f_]   The telnet protocol does not provide confidentiality or integrity for information transmitted │ │ │ │ on the network. This includes authentication information such as passwords. Organizations which use │ │ │ │ telnet should be actively working to migrate to a more secure protocol. │ │ │ │ ****** RRuullee? ?  UUnniinnssttaallll tteellnneett--sseerrvveerr PPaacckkaaggee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The telnet-server package can be removed with the following command: │ │ │ │ $ sudo dnf remove telnet-server │ │ │ │ @@ -39379,35 +39379,14 @@ │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-3, PR.IP-1, PR.PT-3, PR.PT-4 │ │ │ │ _p_c_i_d_s_s Req-2.2.2 │ │ │ │ _o_s_-_s_r_g SRG-OS-000095-GPOS-00049 │ │ │ │ _a_n_s_s_i R62 │ │ │ │ _c_i_s 2.1.15 │ │ │ │ _i_s_m 1409 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=telnet-server │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_telnet-server │ │ │ │ - │ │ │ │ -class remove_telnet-server { │ │ │ │ - package { 'telnet-server': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall telnet-server Package: Ensure telnet-server is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -39422,14 +39401,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - high_severity │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - package_telnet-server_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_telnet-server │ │ │ │ + │ │ │ │ +class remove_telnet-server { │ │ │ │ + package { 'telnet-server': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove telnet-server │ │ │ │ @@ -39438,14 +39430,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "telnet-server" ; then │ │ │ │ dnf remove -y --noautoremove "telnet-server" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=telnet-server │ │ │ │ ****** RRuullee? ?  RReemmoovvee tteellnneett CClliieennttss ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The telnet client allows users to start connections to other systems via the telnet protocol. │ │ │ │ The telnet protocol is insecure and unencrypted. The use of an unencrypted transmission │ │ │ │ Rationale: medium could allow an unauthorized user to steal credentials. The ssh package provides an │ │ │ │ encrypted session and stronger security and is included in AlmaLinux OS 9. │ │ │ │ Severity:  low │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_telnet_removed │ │ │ │ @@ -39453,35 +39453,14 @@ │ │ │ │ _h_i_p_a_a 164.308(a)(4)(i), 164.308(b)(1), 164.308(b)(3), 164.310(b), 164.312(e)(1), │ │ │ │ 164.312(e)(2)(ii) │ │ │ │ References: _i_s_o_2_7_0_0_1_-_2_0_1_3 A.8.2.3, A.13.1.1, A.13.2.1, A.13.2.3, A.14.1.2, A.14.1.3 │ │ │ │ _a_n_s_s_i R62 │ │ │ │ _c_i_s 2.2.4 │ │ │ │ _i_s_m 1409 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=telnet │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_telnet │ │ │ │ - │ │ │ │ -class remove_telnet { │ │ │ │ - package { 'telnet': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Remove telnet Clients: Ensure telnet is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -39493,14 +39472,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_telnet_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_telnet │ │ │ │ + │ │ │ │ +class remove_telnet { │ │ │ │ + package { 'telnet': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove telnet │ │ │ │ @@ -39509,14 +39501,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "telnet" ; then │ │ │ │ dnf remove -y --noautoremove "telnet" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=telnet │ │ │ │ Group   TFTP Server   Group contains 2 rules │ │ │ │ _[_r_e_f_]   TFTP is a lightweight version of the FTP protocol which has traditionally been used to │ │ │ │ configure networking equipment. However, TFTP provides little security, and modern versions of │ │ │ │ networking operating systems frequently support configuration via SSH or other more secure protocols. │ │ │ │ A TFTP server should be run only if no more secure method of supporting existing equipment can be │ │ │ │ found. │ │ │ │ ****** RRuullee? ?  UUnniinnssttaallll ttffttpp--sseerrvveerr PPaacckkaaggee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ @@ -39546,35 +39546,14 @@ │ │ │ │ A.14.2.2, A.14.2.3, A.14.2.4, A.6.2.1, A.6.2.2, A.9.1.2 │ │ │ │ _n_i_s_t CM-7(a), CM-7(b), CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-3, PR.IP-1, PR.PT-3, PR.PT-4 │ │ │ │ _o_s_-_s_r_g SRG-OS-000480-GPOS-00227 │ │ │ │ _a_n_s_s_i R62 │ │ │ │ _c_i_s 2.1.16 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=tftp-server │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_tftp-server │ │ │ │ - │ │ │ │ -class remove_tftp-server { │ │ │ │ - package { 'tftp-server': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Uninstall tftp-server Package: Ensure tftp-server is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -39588,14 +39567,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - high_severity │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - no_reboot_needed │ │ │ │ - package_tftp-server_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_tftp-server │ │ │ │ + │ │ │ │ +class remove_tftp-server { │ │ │ │ + package { 'tftp-server': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove tftp-server │ │ │ │ @@ -39604,48 +39596,35 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "tftp-server" ; then │ │ │ │ dnf remove -y --noautoremove "tftp-server" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=tftp-server │ │ │ │ ****** RRuullee? ?  RReemmoovvee ttffttpp DDaaeemmoonn ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ Trivial File Transfer Protocol (TFTP) is a simple file transfer protocol, typically used to │ │ │ │ automatically transfer configuration or boot files between systems. TFTP does not support │ │ │ │ authentication and can be easily hacked. The package tftp is a client program that allows for │ │ │ │ connections to a tftp server. │ │ │ │ Rationale: It is recommended that TFTP be removed, unless there is a specific need for TFTP (such as │ │ │ │ a boot server). In that case, use extreme caution when configuring the services. │ │ │ │ Severity:  low │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_tftp_removed │ │ │ │ _o_s_-_s_r_g SRG-OS-000074-GPOS-00042 │ │ │ │ References: _a_n_s_s_i R62 │ │ │ │ _c_i_s 2.2.5 │ │ │ │ _p_c_i_d_s_s_4 2.2.4, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ - │ │ │ │ -package --remove=tftp │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: disable │ │ │ │ - │ │ │ │ -include remove_tftp │ │ │ │ - │ │ │ │ -class remove_tftp { │ │ │ │ - package { 'tftp': │ │ │ │ - ensure => 'purged', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ - name: 'Remove tftp Daemon: Ensure tftp is removed' │ │ │ │ ansible.builtin.package: │ │ │ │ @@ -39656,14 +39635,27 @@ │ │ │ │ - PCI-DSSv4-2.2.4 │ │ │ │ - disable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - low_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_tftp_removed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ +include remove_tftp │ │ │ │ + │ │ │ │ +class remove_tftp { │ │ │ │ + package { 'tftp': │ │ │ │ + ensure => 'purged', │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: disable │ │ │ │ │ │ │ │ # CAUTION: This remediation script will remove tftp │ │ │ │ @@ -39672,14 +39664,22 @@ │ │ │ │ # remediation AFTER testing on a non-production │ │ │ │ # system! │ │ │ │ │ │ │ │ │ │ │ │ if rpm -q --quiet "tftp" ; then │ │ │ │ dnf remove -y --noautoremove "tftp" │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: disable │ │ │ │ + │ │ │ │ + │ │ │ │ +package --remove=tftp │ │ │ │ Group   SSH Server   Group contains 1 group and 10 rules │ │ │ │ _[_r_e_f_]   The SSH protocol is recommended for remote login and remote file transfer. SSH provides │ │ │ │ confidentiality and integrity for data exchanged between two systems, as well as server │ │ │ │ authentication, through the use of public key cryptography. The implementation included with the │ │ │ │ system is called OpenSSH, and more detailed documentation is available from its website, _h_t_t_p_s_:_/_/ │ │ │ │ _w_w_w_._o_p_e_n_s_s_h_._c_o_m. Its server program is called sshd and provided by the RPM package openssh-server. │ │ │ │ Group   Configure OpenSSH Server if Necessary   Group contains 1 rule │ │ │ │ @@ -40574,23 +40574,14 @@ │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-4, PR.DS-5 │ │ │ │ _p_c_i_d_s_s Req-2.2.4 │ │ │ │ _o_s_-_s_r_g SRG-OS-000480-GPOS-00227 │ │ │ │ _a_n_s_s_i R50 │ │ │ │ _c_i_s 5.1.2 │ │ │ │ _i_s_m 1449 │ │ │ │ _p_c_i_d_s_s_4 2.2.6, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -include ssh_private_key_perms │ │ │ │ - │ │ │ │ -class ssh_private_key_perms { │ │ │ │ - exec { 'sshd_priv_key': │ │ │ │ - command => "chmod 0640 /etc/ssh/*_key", │ │ │ │ - path => '/bin:/usr/bin' │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -40654,14 +40645,23 @@ │ │ │ │ - PCI-DSSv4-2.2.6 │ │ │ │ - configure_strategy │ │ │ │ - file_permissions_sshd_private_key │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +include ssh_private_key_perms │ │ │ │ + │ │ │ │ +class ssh_private_key_perms { │ │ │ │ + exec { 'sshd_priv_key': │ │ │ │ + command => "chmod 0640 /etc/ssh/*_key", │ │ │ │ + path => '/bin:/usr/bin' │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ │ │ │ │ for keyfile in /etc/ssh/*_key; do │ │ │ │ test -f "$keyfile" || continue │ │ │ │ if test root:root = "$(stat -c "%U:%G" "$keyfile")"; then │ │ │ │ @@ -40700,23 +40700,14 @@ │ │ │ │ _n_i_s_t AC-17(a), CM-6(a), AC-6(1) │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-4, PR.DS-5 │ │ │ │ _p_c_i_d_s_s Req-2.2.4 │ │ │ │ _o_s_-_s_r_g SRG-OS-000480-GPOS-00227 │ │ │ │ _a_n_s_s_i R50 │ │ │ │ _c_i_s 5.1.3 │ │ │ │ _p_c_i_d_s_s_4 2.2.6, 2.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -include ssh_public_key_perms │ │ │ │ - │ │ │ │ -class ssh_public_key_perms { │ │ │ │ - exec { 'sshd_pub_key': │ │ │ │ - command => "chmod 0644 /etc/ssh/*.pub", │ │ │ │ - path => '/bin:/usr/bin' │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -40780,14 +40771,23 @@ │ │ │ │ - PCI-DSSv4-2.2.6 │ │ │ │ - configure_strategy │ │ │ │ - file_permissions_sshd_pub_key │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +include ssh_public_key_perms │ │ │ │ + │ │ │ │ +class ssh_public_key_perms { │ │ │ │ + exec { 'sshd_pub_key': │ │ │ │ + command => "chmod 0644 /etc/ssh/*.pub", │ │ │ │ + path => '/bin:/usr/bin' │ │ │ │ + } │ │ │ │ +} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: configure │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -41261,38 +41261,14 @@ │ │ │ │ References: SR 2.1 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.18.1.4, A.7.1.1, A.9.2.1, A.9.2.2, A.9.2.3, A.9.2.4, A.9.2.6, A.9.3.1, │ │ │ │ A.9.4.2, A.9.4.3 │ │ │ │ _n_i_s_t CM-6(a) │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-1, PR.AC-6, PR.AC-7 │ │ │ │ _o_s_-_s_r_g SRG-OS-000375-GPOS-00160 │ │ │ │ _a_n_s_s_i R67 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "sssd" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -package --add=sssd │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_sssd │ │ │ │ - │ │ │ │ -class install_sssd { │ │ │ │ - package { 'sssd': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -41315,14 +41291,31 @@ │ │ │ │ - NIST-800-53-CM-6(a) │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_sssd_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_sssd │ │ │ │ + │ │ │ │ +class install_sssd { │ │ │ │ + package { 'sssd': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "sssd" │ │ │ │ +version = "*" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q sssd-common; then │ │ │ │ @@ -41330,14 +41323,21 @@ │ │ │ │ if ! rpm -q --quiet "sssd" ; then │ │ │ │ dnf install -y "sssd" │ │ │ │ fi │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +package --add=sssd │ │ │ │ ****** RRuullee? ?  EEnnaabbllee tthhee SSSSSSDD SSeerrvviiccee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The SSSD service should be enabled. The sssd service can be enabled with the following command: │ │ │ │ $ sudo systemctl enable sssd.service │ │ │ │ Warning:  The service requires a valid sssd configuration. If the configuration is not present, the │ │ │ │ service will fail to start and consequently this rule will be reported as failing. The configuration │ │ │ │ shipped in your distribution package might not be sufficient. Manual modification of configuration │ │ │ │ files might be required. │ │ │ │ @@ -41353,31 +41353,14 @@ │ │ │ │ References: SR 2.1 │ │ │ │ _i_s_o_2_7_0_0_1_-_2_0_1_3 A.18.1.4, A.7.1.1, A.9.2.1, A.9.2.2, A.9.2.3, A.9.2.4, A.9.2.6, A.9.3.1, │ │ │ │ A.9.4.2, A.9.4.3 │ │ │ │ _n_i_s_t CM-6(a), IA-5(10) │ │ │ │ _n_i_s_t_-_c_s_f PR.AC-1, PR.AC-6, PR.AC-7 │ │ │ │ _o_s_-_s_r_g SRG-OS-000375-GPOS-00160 │ │ │ │ _a_n_s_s_i R67 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -enabled = ["sssd"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include enable_sssd │ │ │ │ - │ │ │ │ -class enable_sssd { │ │ │ │ - service {'sssd': │ │ │ │ - enable => true, │ │ │ │ - ensure => 'running', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -41417,14 +41400,31 @@ │ │ │ │ - no_reboot_needed │ │ │ │ - service_sssd_enabled │ │ │ │ - special_service_block │ │ │ │ when: │ │ │ │ - '"sssd-common" in ansible_facts.packages' │ │ │ │ - ( "sssd-common" in ansible_facts.packages and "kernel" in ansible_facts.packages │ │ │ │ ) │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include enable_sssd │ │ │ │ + │ │ │ │ +class enable_sssd { │ │ │ │ + service {'sssd': │ │ │ │ + enable => true, │ │ │ │ + ensure => 'running', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +enabled = ["sssd"] │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q sssd-common && { ( ( rpm --quiet -q sssd-common && rpm --quiet -q kernel ) ); }; │ │ │ │ @@ -78551,38 +78551,14 @@ │ │ │ │ SRG-OS-000350-GPOS-00138, SRG-OS-000351-GPOS-00139, SRG-OS-000352-GPOS-00140, │ │ │ │ SRG-OS-000353-GPOS-00141, SRG-OS-000354-GPOS-00142, SRG-OS-000358-GPOS-00145, │ │ │ │ SRG-OS-000365-GPOS-00152, SRG-OS-000392-GPOS-00172, SRG-OS-000475-GPOS-00220 │ │ │ │ _a_n_s_s_i R33, R73 │ │ │ │ _c_i_s 6.3.1.1 │ │ │ │ _i_s_m 0582, 0846 │ │ │ │ _p_c_i_d_s_s_4 10.2.1, 10.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[[packages]] │ │ │ │ -name = "audit" │ │ │ │ -version = "*" │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ - │ │ │ │ -package --add=audit │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include install_audit │ │ │ │ - │ │ │ │ -class install_audit { │ │ │ │ - package { 'audit': │ │ │ │ - ensure => 'installed', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -78623,14 +78599,31 @@ │ │ │ │ - PCI-DSSv4-10.2.1 │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_audit_installed │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include install_audit │ │ │ │ + │ │ │ │ +class install_audit { │ │ │ │ + package { 'audit': │ │ │ │ + ensure => 'installed', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[[packages]] │ │ │ │ +name = "audit" │ │ │ │ +version = "*" │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel; then │ │ │ │ @@ -78638,14 +78631,21 @@ │ │ │ │ if ! rpm -q --quiet "audit" ; then │ │ │ │ dnf install -y "audit" │ │ │ │ fi │ │ │ │ │ │ │ │ else │ │ │ │ >&2 echo 'Remediation is not applicable, nothing was done' │ │ │ │ fi │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _A_n_a_c_o_n_d_a_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ + │ │ │ │ +package --add=audit │ │ │ │ ****** RRuullee? ?  EEnnaabbllee aauuddiittdd SSeerrvviiccee ? ? _[[_rr_ee_ff_]] ****** │ │ │ │ The auditd service is an essential userspace component of the Linux Auditing System, as it is │ │ │ │ responsible for writing audit records to disk. The auditd service can be enabled with the following │ │ │ │ command: │ │ │ │ $ sudo systemctl enable auditd.service │ │ │ │ Without establishing what type of events occurred, it would be difficult to establish, │ │ │ │ correlate, and investigate the events leading up to an outage or attack. Ensuring the │ │ │ │ @@ -78692,43 +78692,14 @@ │ │ │ │ SRG-OS-000392-GPOS-00172, SRG-OS-000475-GPOS-00220 │ │ │ │ _a_p_p_-_s_r_g_-_c_t_r SRG-APP-000095-CTR-000170, SRG-APP-000409-CTR-000990, SRG-APP-000508-CTR- │ │ │ │ 001300, SRG-APP-000510-CTR-001310 │ │ │ │ _a_n_s_s_i R33, R73 │ │ │ │ _c_i_s 6.3.1.4 │ │ │ │ _i_s_m 1409 │ │ │ │ _p_c_i_d_s_s_4 10.2.1, 10.2 │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ - │ │ │ │ -[customizations.services] │ │ │ │ -enabled = ["auditd"] │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _K_u_b_e_r_n_e_t_e_s_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ ---- │ │ │ │ -apiVersion: machineconfiguration.openshift.io/v1 │ │ │ │ -kind: MachineConfig │ │ │ │ -spec: │ │ │ │ - config: │ │ │ │ - ignition: │ │ │ │ - version: 3.1.0 │ │ │ │ - systemd: │ │ │ │ - units: │ │ │ │ - - name: auditd.service │ │ │ │ - enabled: true │ │ │ │ -_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ -CCoommpplleexxiittyy:: low │ │ │ │ -DDiissrruuppttiioonn:: low │ │ │ │ -RReebboooott:: false │ │ │ │ -SSttrraatteeggyy:: enable │ │ │ │ -include enable_auditd │ │ │ │ - │ │ │ │ -class enable_auditd { │ │ │ │ - service {'auditd': │ │ │ │ - enable => true, │ │ │ │ - ensure => 'running', │ │ │ │ - } │ │ │ │ -} │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _A_n_s_i_b_l_e_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ - name: Gather the package facts │ │ │ │ package_facts: │ │ │ │ @@ -78795,14 +78766,43 @@ │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - service_auditd_enabled │ │ │ │ - special_service_block │ │ │ │ when: │ │ │ │ - '"kernel" in ansible_facts.packages' │ │ │ │ - '"audit" in ansible_facts.packages' │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _K_u_b_e_r_n_e_t_e_s_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +--- │ │ │ │ +apiVersion: machineconfiguration.openshift.io/v1 │ │ │ │ +kind: MachineConfig │ │ │ │ +spec: │ │ │ │ + config: │ │ │ │ + ignition: │ │ │ │ + version: 3.1.0 │ │ │ │ + systemd: │ │ │ │ + units: │ │ │ │ + - name: auditd.service │ │ │ │ + enabled: true │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _P_u_p_p_e_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ +CCoommpplleexxiittyy:: low │ │ │ │ +DDiissrruuppttiioonn:: low │ │ │ │ +RReebboooott:: false │ │ │ │ +SSttrraatteeggyy:: enable │ │ │ │ +include enable_auditd │ │ │ │ + │ │ │ │ +class enable_auditd { │ │ │ │ + service {'auditd': │ │ │ │ + enable => true, │ │ │ │ + ensure => 'running', │ │ │ │ + } │ │ │ │ +} │ │ │ │ +_R_e_m_e_d_i_a_t_i_o_n_ _O_S_B_u_i_l_d_ _B_l_u_e_p_r_i_n_t_ _s_n_i_p_p_e_t_ _⇲ │ │ │ │ + │ │ │ │ +[customizations.services] │ │ │ │ +enabled = ["auditd"] │ │ │ │ _R_e_m_e_d_i_a_t_i_o_n_ _S_h_e_l_l_ _s_c_r_i_p_t_ _⇲ │ │ │ │ CCoommpplleexxiittyy:: low │ │ │ │ DDiissrruuppttiioonn:: low │ │ │ │ RReebboooott:: false │ │ │ │ SSttrraatteeggyy:: enable │ │ │ │ # Remediation is applicable only in certain platforms │ │ │ │ if rpm --quiet -q kernel && { rpm --quiet -q audit; }; then │ │ ├── ./usr/share/doc/ssg-nondebian/ssg-almalinux9-guide-anssi_bp28_high.html │ │ │ @@ -15052,213 +15052,213 @@ │ │ │ 0003acb0: 7365 2220 6461 7461 2d74 6172 6765 743d se" data-target= │ │ │ 0003acc0: 2223 6964 3132 2220 7461 6269 6e64 6578 "#id12" tabindex │ │ │ 0003acd0: 3d22 3022 2072 6f6c 653d 2262 7574 746f ="0" role="butto │ │ │ 0003ace0: 6e22 2061 7269 612d 6578 7061 6e64 6564 n" aria-expanded │ │ │ 0003acf0: 3d22 6661 6c73 6522 2074 6974 6c65 3d22 ="false" title=" │ │ │ 0003ad00: 4163 7469 7661 7465 2074 6f20 7265 7665 Activate to reve │ │ │ 0003ad10: 616c 2220 6872 6566 3d22 2321 223e 5265 al" href="#!">Re │ │ │ -0003ad20: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ -0003ad30: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ -0003ad40: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -0003ad50: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -0003ad60: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -0003ad70: 7365 2220 6964 3d22 6964 3132 223e 3c70 se" id="id12">

.[[pack │ │ │ -0003ad90: 6167 6573 5d5d 0a6e 616d 6520 3d20 2261 ages]].name = "a │ │ │ -0003ada0: 6964 6522 0a76 6572 7369 6f6e 203d 2022 ide".version = " │ │ │ -0003adb0: 2a22 0a3c 2f63 6f64 653e 3c2f 7072 653e *".

│ │ │ -0003adc0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation An │ │ │ -0003ae70: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ -0003ae80: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
C │ │ │ +003fe5b0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +003fe5e0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +003fe5f0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +003fe630: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +003fe640: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ -0003af00: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -0003af20: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -0003af70: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
.package --add=
│ │ │ -0003afc0: 6169 6465 0a3c 2f63 6f64 653e 3c2f 7072  aide.Remediation 
│ │ │ -0003b080: 5075 7070 6574 2073 6e69 7070 6574 20e2  Puppet snippet .
│ │ │ -0003b090: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063  ..
low
Disr │ │ │ -0003af30: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -0003af40: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -0003af80: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ -0003af90: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ -0003b110: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -0003b130: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -0003b180: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
include install
│ │ │ -0003b1d0: 5f61 6964 650a 0a63 6c61 7373 2069 6e73  _aide..class ins
│ │ │ -0003b1e0: 7461 6c6c 5f61 6964 6520 7b0a 2020 7061  tall_aide {.  pa
│ │ │ -0003b1f0: 636b 6167 6520 7b20 2761 6964 6527 3a0a  ckage { 'aide':.
│ │ │ -0003b200: 2020 2020 656e 7375 7265 203d 2667 743b      ensure =>
│ │ │ -0003b210: 2027 696e 7374 616c 6c65 6427 2c0a 2020   'installed',.  
│ │ │ -0003b220: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Remediation A │ │ │ -0003b2e0: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ -0003b2f0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
low
Disr │ │ │ -0003b140: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -0003b150: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -0003b190: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ -0003b1a0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ -0003b370: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -0003b390: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -0003b3e0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
- name: Gather 
│ │ │ -0003b430: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -0003b440: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -0003b450: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -0003b460: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -0003b470: 2043 4a49 532d 352e 3130 2e31 2e33 0a20   CJIS-5.10.1.3. 
│ │ │ -0003b480: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -0003b490: 4d2d 3628 6129 0a20 202d 2050 4349 2d44  M-6(a).  - PCI-D
│ │ │ -0003b4a0: 5353 2d52 6571 2d31 312e 350a 2020 2d20  SS-Req-11.5.  - 
│ │ │ -0003b4b0: 5043 492d 4453 5376 342d 3131 2e35 2e32  PCI-DSSv4-11.5.2
│ │ │ -0003b4c0: 0a20 202d 2065 6e61 626c 655f 7374 7261  .  - enable_stra
│ │ │ -0003b4d0: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ -0003b4e0: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ -0003b4f0: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -0003b500: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -0003b510: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -0003b520: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ -0003b530: 6169 6465 5f69 6e73 7461 6c6c 6564 0a0a  aide_installed..
│ │ │ -0003b540: 2d20 6e61 6d65 3a20 456e 7375 7265 2061  - name: Ensure a
│ │ │ -0003b550: 6964 6520 6973 2069 6e73 7461 6c6c 6564  ide is installed
│ │ │ -0003b560: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -0003b570: 696e 2e70 6163 6b61 6765 3a0a 2020 2020  in.package:.    
│ │ │ -0003b580: 6e61 6d65 3a20 6169 6465 0a20 2020 2073  name: aide.    s
│ │ │ -0003b590: 7461 7465 3a20 7072 6573 656e 740a 2020  tate: present.  
│ │ │ -0003b5a0: 7768 656e 3a20 2722 6b65 726e 656c 2220  when: '"kernel" 
│ │ │ -0003b5b0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -0003b5c0: 2e70 6163 6b61 6765 7327 0a20 2074 6167  .packages'.  tag
│ │ │ -0003b5d0: 733a 0a20 202d 2043 4a49 532d 352e 3130  s:.  - CJIS-5.10
│ │ │ -0003b5e0: 2e31 2e33 0a20 202d 204e 4953 542d 3830  .1.3.  - NIST-80
│ │ │ -0003b5f0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -0003b600: 2050 4349 2d44 5353 2d52 6571 2d31 312e   PCI-DSS-Req-11.
│ │ │ -0003b610: 350a 2020 2d20 5043 492d 4453 5376 342d  5.  - PCI-DSSv4-
│ │ │ -0003b620: 3131 2e35 2e32 0a20 202d 2065 6e61 626c  11.5.2.  - enabl
│ │ │ -0003b630: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ -0003b640: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -0003b650: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -0003b660: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -0003b670: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -0003b680: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ -0003b690: 636b 6167 655f 6169 6465 5f69 6e73 7461  ckage_aide_insta
│ │ │ -0003b6a0: 6c6c 6564 0a3c 2f63 6f64 653e 3c2f 7072  lled.Remediation 
│ │ │ -0003b760: 5368 656c 6c20 7363 7269 7074 20e2 87b2  Shell script ...
│ │ │ -0003b770: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
low
Disr │ │ │ -0003b3a0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -0003b3b0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -0003b3f0: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ -0003b400: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ -0003b840: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0003b850: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
#
│ │ │ -0003b8a0: 2052 656d 6564 6961 7469 6f6e 2069 7320   Remediation is 
│ │ │ -0003b8b0: 6170 706c 6963 6162 6c65 206f 6e6c 7920  applicable only 
│ │ │ -0003b8c0: 696e 2063 6572 7461 696e 2070 6c61 7466  in certain platf
│ │ │ -0003b8d0: 6f72 6d73 0a69 6620 7270 6d20 2d2d 7175  orms.if rpm --qu
│ │ │ -0003b8e0: 6965 7420 2d71 206b 6572 6e65 6c3b 2074  iet -q kernel; t
│ │ │ -0003b8f0: 6865 6e0a 0a69 6620 2120 7270 6d20 2d71  hen..if ! rpm -q
│ │ │ -0003b900: 202d 2d71 7569 6574 2022 6169 6465 2220   --quiet "aide" 
│ │ │ -0003b910: 3b20 7468 656e 0a20 2020 2064 6e66 2069  ; then.    dnf i
│ │ │ -0003b920: 6e73 7461 6c6c 202d 7920 2261 6964 6522  nstall -y "aide"
│ │ │ -0003b930: 0a66 690a 0a65 6c73 650a 2020 2020 2667  .fi..else.    &g
│ │ │ -0003b940: 743b 2661 6d70 3b32 2065 6368 6f20 2752  t;&2 echo 'R
│ │ │ -0003b950: 656d 6564 6961 7469 6f6e 2069 7320 6e6f  emediation is no
│ │ │ -0003b960: 7420 6170 706c 6963 6162 6c65 2c20 6e6f  t applicable, no
│ │ │ -0003b970: 7468 696e 6720 7761 7320 646f 6e65 270a  thing was done'.
│ │ │ -0003b980: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e  fi.
│ │ │ +0003ad20: 6d65 6469 6174 696f 6e20 416e 7369 626c mediation Ansibl │ │ │ +0003ad30: 6520 736e 6970 7065 7420 e287 b23c 2f61 e snippet ...
Complexity:low
Disrup │ │ │ -0003b820: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0003b830: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0003b870: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -0003b880: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
low< │ │ │ +0003ade0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0003ae30: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +0003adc0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0003adf0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0003ae10: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0003ae20: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0003ae40: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +0003ae50: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ +0003ae70: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ +0003ae80: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ +0003ae90: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ +0003aea0: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ +0003aeb0: 2020 7461 6773 3a0a 2020 2d20 434a 4953    tags:.  - CJIS
│ │ │ +0003aec0: 2d35 2e31 302e 312e 330a 2020 2d20 4e49  -5.10.1.3.  - NI
│ │ │ +0003aed0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +0003aee0: 290a 2020 2d20 5043 492d 4453 532d 5265  ).  - PCI-DSS-Re
│ │ │ +0003aef0: 712d 3131 2e35 0a20 202d 2050 4349 2d44  q-11.5.  - PCI-D
│ │ │ +0003af00: 5353 7634 2d31 312e 352e 320a 2020 2d20  SSv4-11.5.2.  - 
│ │ │ +0003af10: 656e 6162 6c65 5f73 7472 6174 6567 790a  enable_strategy.
│ │ │ +0003af20: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +0003af30: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ +0003af40: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ +0003af50: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ +0003af60: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ +0003af70: 202d 2070 6163 6b61 6765 5f61 6964 655f   - package_aide_
│ │ │ +0003af80: 696e 7374 616c 6c65 640a 0a2d 206e 616d  installed..- nam
│ │ │ +0003af90: 653a 2045 6e73 7572 6520 6169 6465 2069  e: Ensure aide i
│ │ │ +0003afa0: 7320 696e 7374 616c 6c65 640a 2020 616e  s installed.  an
│ │ │ +0003afb0: 7369 626c 652e 6275 696c 7469 6e2e 7061  sible.builtin.pa
│ │ │ +0003afc0: 636b 6167 653a 0a20 2020 206e 616d 653a  ckage:.    name:
│ │ │ +0003afd0: 2061 6964 650a 2020 2020 7374 6174 653a   aide.    state:
│ │ │ +0003afe0: 2070 7265 7365 6e74 0a20 2077 6865 6e3a   present.  when:
│ │ │ +0003aff0: 2027 226b 6572 6e65 6c22 2069 6e20 616e   '"kernel" in an
│ │ │ +0003b000: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +0003b010: 6167 6573 270a 2020 7461 6773 3a0a 2020  ages'.  tags:.  
│ │ │ +0003b020: 2d20 434a 4953 2d35 2e31 302e 312e 330a  - CJIS-5.10.1.3.
│ │ │ +0003b030: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +0003b040: 434d 2d36 2861 290a 2020 2d20 5043 492d  CM-6(a).  - PCI-
│ │ │ +0003b050: 4453 532d 5265 712d 3131 2e35 0a20 202d  DSS-Req-11.5.  -
│ │ │ +0003b060: 2050 4349 2d44 5353 7634 2d31 312e 352e   PCI-DSSv4-11.5.
│ │ │ +0003b070: 320a 2020 2d20 656e 6162 6c65 5f73 7472  2.  - enable_str
│ │ │ +0003b080: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ +0003b090: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ +0003b0a0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +0003b0b0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +0003b0c0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +0003b0d0: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ +0003b0e0: 5f61 6964 655f 696e 7374 616c 6c65 640a  _aide_installed.
│ │ │ +0003b0f0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
R │ │ │ +0003b1a0: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ +0003b1b0: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
low< │ │ │ +0003b260: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0003b2b0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +0003b240: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0003b270: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0003b290: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0003b2a0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0003b2c0: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +0003b2d0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
incl
│ │ │ +0003b2f0: 7564 6520 696e 7374 616c 6c5f 6169 6465  ude install_aide
│ │ │ +0003b300: 0a0a 636c 6173 7320 696e 7374 616c 6c5f  ..class install_
│ │ │ +0003b310: 6169 6465 207b 0a20 2070 6163 6b61 6765  aide {.  package
│ │ │ +0003b320: 207b 2027 6169 6465 273a 0a20 2020 2065   { 'aide':.    e
│ │ │ +0003b330: 6e73 7572 6520 3d26 6774 3b20 2769 6e73  nsure => 'ins
│ │ │ +0003b340: 7461 6c6c 6564 272c 0a20 207d 0a7d 0a3c  talled',.  }.}.<
│ │ │ +0003b350: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Re │ │ │ +0003b400: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ +0003b410: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ +0003b420: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +0003b430: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +0003b440: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +0003b450: 7365 2220 6964 3d22 6964 3134 223e 3c70 se" id="id14">

.[[pack │ │ │ +0003b470: 6167 6573 5d5d 0a6e 616d 6520 3d20 2261 ages]].name = "a │ │ │ +0003b480: 6964 6522 0a76 6572 7369 6f6e 203d 2022 ide".version = " │ │ │ +0003b490: 2a22 0a3c 2f63 6f64 653e 3c2f 7072 653e *".

│ │ │ +0003b4a0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation Sh │ │ │ +0003b550: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
< │ │ │ +0003b5f0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0003b600: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +0003b650: 3c74 723e 3c74 683e 5374 7261 7465 6779
# R
│ │ │ +0003b690: 656d 6564 6961 7469 6f6e 2069 7320 6170  emediation is ap
│ │ │ +0003b6a0: 706c 6963 6162 6c65 206f 6e6c 7920 696e  plicable only in
│ │ │ +0003b6b0: 2063 6572 7461 696e 2070 6c61 7466 6f72   certain platfor
│ │ │ +0003b6c0: 6d73 0a69 6620 7270 6d20 2d2d 7175 6965  ms.if rpm --quie
│ │ │ +0003b6d0: 7420 2d71 206b 6572 6e65 6c3b 2074 6865  t -q kernel; the
│ │ │ +0003b6e0: 6e0a 0a69 6620 2120 7270 6d20 2d71 202d  n..if ! rpm -q -
│ │ │ +0003b6f0: 2d71 7569 6574 2022 6169 6465 2220 3b20  -quiet "aide" ; 
│ │ │ +0003b700: 7468 656e 0a20 2020 2064 6e66 2069 6e73  then.    dnf ins
│ │ │ +0003b710: 7461 6c6c 202d 7920 2261 6964 6522 0a66  tall -y "aide".f
│ │ │ +0003b720: 690a 0a65 6c73 650a 2020 2020 2667 743b  i..else.    >
│ │ │ +0003b730: 2661 6d70 3b32 2065 6368 6f20 2752 656d  &2 echo 'Rem
│ │ │ +0003b740: 6564 6961 7469 6f6e 2069 7320 6e6f 7420  ediation is not 
│ │ │ +0003b750: 6170 706c 6963 6162 6c65 2c20 6e6f 7468  applicable, noth
│ │ │ +0003b760: 696e 6720 7761 7320 646f 6e65 270a 6669  ing was done'.fi
│ │ │ +0003b770: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
│ │ │ +0003b820: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ +0003b830: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ +0003b840: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
C │ │ │ +0003b5e0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +0003b610: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +0003b620: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +0003b660: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +0003b670: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ +0003b910: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +0003b920: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
.
│ │ │ +0003b970: 7061 636b 6167 6520 2d2d 6164 643d 6169  package --add=ai
│ │ │ +0003b980: 6465 0a3c 2f63 6f64 653e 3c2f 7072 653e  de.
│ │ │ 0003b990: 3c2f 6469 763e 3c2f 6469 763e 3c2f 7464 │ │ │ 0003b9c0: 3c74 7220 6461 7461 2d74 742d 6964 3d22 Rem │ │ │ -0004b640: 6564 6961 7469 6f6e 2041 6e61 636f 6e64 ediation Anacond │ │ │ -0004b650: 6120 736e 6970 7065 7420 e287 b23c 2f61 a snippet ...
Complexity:low
Disrup │ │ │ +0003b8f0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +0003b900: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +0003b940: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +0003b950: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
low< │ │ │ -0004b700: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -0004b750: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ -0004b6e0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -0004b710: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -0004b730: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -0004b740: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -0004b760: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -0004b770: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.ser
│ │ │ -0004b790: 7669 6365 7320 2d2d 656e 6162 6c65 643d  vices --enabled=
│ │ │ -0004b7a0: 746d 702e 6d6f 756e 740a 3c2f 636f 6465  tmp.mount.
Remedia │ │ │ -0004b860: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -0004b870: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -0004b880: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
< │ │ │ -0004b8b0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -0004b8c0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -0004b8d0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -0004b8e0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -0004b8f0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -0004b900: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -0004b910: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -0004b950: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -0004b960: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -0004b980: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ -0004b990: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
- name: G
│ │ │ -0004b9b0: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ -0004b9c0: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ -0004b9d0: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ -0004b9e0: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ -0004b9f0: 733a 0a20 202d 2065 6e61 626c 655f 7374  s:.  - enable_st
│ │ │ -0004ba00: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ -0004ba10: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -0004ba20: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -0004ba30: 206c 6f77 5f73 6576 6572 6974 790a 2020   low_severity.  
│ │ │ -0004ba40: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -0004ba50: 6564 0a20 202d 2073 7973 7465 6d64 5f74  ed.  - systemd_t
│ │ │ -0004ba60: 6d70 5f6d 6f75 6e74 5f65 6e61 626c 6564  mp_mount_enabled
│ │ │ -0004ba70: 0a0a 2d20 6e61 6d65 3a20 456e 6162 6c65  ..- name: Enable
│ │ │ -0004ba80: 206d 6f75 6e74 2074 6d70 0a20 2061 6e73   mount tmp.  ans
│ │ │ -0004ba90: 6962 6c65 2e62 7569 6c74 696e 2e73 7973  ible.builtin.sys
│ │ │ -0004baa0: 7465 6d64 3a0a 2020 2020 6e61 6d65 3a20  temd:.    name: 
│ │ │ -0004bab0: 746d 702e 6d6f 756e 740a 2020 2020 656e  tmp.mount.    en
│ │ │ -0004bac0: 6162 6c65 643a 2027 7965 7327 0a20 2020  abled: 'yes'.   
│ │ │ -0004bad0: 2073 7461 7465 3a20 7374 6172 7465 640a   state: started.
│ │ │ -0004bae0: 2020 2020 6d61 736b 6564 3a20 2766 616c      masked: 'fal
│ │ │ -0004baf0: 7365 270a 2020 7768 656e 3a20 2820 6e6f  se'.  when: ( no
│ │ │ -0004bb00: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ -0004bb10: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -0004bb20: 636b 6167 6573 2061 6e64 2022 7270 6d2d  ckages and "rpm-
│ │ │ -0004bb30: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -0004bb40: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -0004bb50: 730a 2020 2020 616e 6420 2262 6f6f 7463  s.    and "bootc
│ │ │ -0004bb60: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -0004bb70: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -0004bb80: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ -0004bb90: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ -0004bba0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -0004bbb0: 730a 2020 2020 616e 6420 226f 7374 7265  s.    and "ostre
│ │ │ -0004bbc0: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ -0004bbd0: 6f63 5f63 6d64 6c69 6e65 2029 2061 6e64  oc_cmdline ) and
│ │ │ -0004bbe0: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ -0004bbf0: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ -0004bc00: 7065 2069 6e0a 2020 2020 5b22 646f 636b  pe in.    ["dock
│ │ │ -0004bc10: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ -0004bc20: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c20  nvz", "podman", 
│ │ │ -0004bc30: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ -0004bc40: 0a20 2074 6167 733a 0a20 202d 2065 6e61  .  tags:.  - ena
│ │ │ -0004bc50: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ -0004bc60: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -0004bc70: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -0004bc80: 6f6e 0a20 202d 206c 6f77 5f73 6576 6572  on.  - low_sever
│ │ │ -0004bc90: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ -0004bca0: 745f 6e65 6564 6564 0a20 202d 2073 7973  t_needed.  - sys
│ │ │ -0004bcb0: 7465 6d64 5f74 6d70 5f6d 6f75 6e74 5f65  temd_tmp_mount_e
│ │ │ -0004bcc0: 6e61 626c 6564 0a3c 2f63 6f64 653e 3c2f  nabled.
Remediatio │ │ │ -0004bd80: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ -0004bd90: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
< │ │ │ -0004be10: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -0004be30: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -0004be80: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
# Remediation i
│ │ │ -0004bed0: 7320 6170 706c 6963 6162 6c65 206f 6e6c  s applicable onl
│ │ │ -0004bee0: 7920 696e 2063 6572 7461 696e 2070 6c61  y in certain pla
│ │ │ -0004bef0: 7466 6f72 6d73 0a69 6620 2820 2120 2820  tforms.if ( ! ( 
│ │ │ -0004bf00: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ -0004bf10: 206b 6572 6e65 6c20 3b7d 2026 616d 703b   kernel ;} &
│ │ │ -0004bf20: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ -0004bf30: 6965 7420 2d71 2072 706d 2d6f 7374 7265  iet -q rpm-ostre
│ │ │ -0004bf40: 6520 3b7d 2026 616d 703b 2661 6d70 3b20  e ;} && 
│ │ │ -0004bf50: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ -0004bf60: 2062 6f6f 7463 203b 7d20 2661 6d70 3b26   bootc ;} &&
│ │ │ -0004bf70: 616d 703b 207b 2021 2072 706d 202d 2d71  amp; { ! rpm --q
│ │ │ -0004bf80: 7569 6574 202d 7120 6f70 656e 7368 6966  uiet -q openshif
│ │ │ -0004bf90: 742d 6b75 6265 6c65 7420 3b7d 2026 616d  t-kubelet ;} &am
│ │ │ -0004bfa0: 703b 2661 6d70 3b20 285b 202d 6620 2f72  p;& ([ -f /r
│ │ │ -0004bfb0: 756e 2f6f 7374 7265 652d 626f 6f74 6564  un/ostree-booted
│ │ │ -0004bfc0: 205d 207c 7c20 5b20 2d4c 202f 6f73 7472   ] || [ -L /ostr
│ │ │ -0004bfd0: 6565 205d 2920 2920 2661 6d70 3b26 616d  ee ]) ) &&am
│ │ │ -0004bfe0: 703b 2021 2028 205b 202d 6620 2f2e 646f  p; ! ( [ -f /.do
│ │ │ -0004bff0: 636b 6572 656e 7620 5d20 7c7c 205b 202d  ckerenv ] || [ -
│ │ │ -0004c000: 6620 2f72 756e 2f2e 636f 6e74 6169 6e65  f /run/.containe
│ │ │ -0004c010: 7265 6e76 205d 2029 2029 3b20 7468 656e  renv ] ) ); then
│ │ │ -0004c020: 0a0a 5359 5354 454d 4354 4c5f 4558 4543  ..SYSTEMCTL_EXEC
│ │ │ -0004c030: 3d27 2f75 7372 2f62 696e 2f73 7973 7465  ='/usr/bin/syste
│ │ │ -0004c040: 6d63 746c 270a 2224 5359 5354 454d 4354  mctl'."$SYSTEMCT
│ │ │ -0004c050: 4c5f 4558 4543 2220 756e 6d61 736b 2027  L_EXEC" unmask '
│ │ │ -0004c060: 746d 702e 6d6f 756e 7427 0a69 6620 5b5b  tmp.mount'.if [[
│ │ │ -0004c070: 2024 2822 2453 5953 5445 4d43 544c 5f45   $("$SYSTEMCTL_E
│ │ │ -0004c080: 5845 4322 2069 732d 7379 7374 656d 2d72  XEC" is-system-r
│ │ │ -0004c090: 756e 6e69 6e67 2920 213d 2022 6f66 666c  unning) != "offl
│ │ │ -0004c0a0: 696e 6522 205d 5d3b 2074 6865 6e0a 2020  ine" ]]; then.  
│ │ │ -0004c0b0: 2224 5359 5354 454d 4354 4c5f 4558 4543  "$SYSTEMCTL_EXEC
│ │ │ -0004c0c0: 2220 7374 6172 7420 2774 6d70 2e6d 6f75  " start 'tmp.mou
│ │ │ -0004c0d0: 6e74 270a 6669 0a22 2453 5953 5445 4d43  nt'.fi."$SYSTEMC
│ │ │ -0004c0e0: 544c 5f45 5845 4322 2065 6e61 626c 6520  TL_EXEC" enable 
│ │ │ -0004c0f0: 2774 6d70 2e6d 6f75 6e74 270a 0a65 6c73  'tmp.mount'..els
│ │ │ -0004c100: 650a 2020 2020 2667 743b 2661 6d70 3b32  e.    >&2
│ │ │ -0004c110: 2065 6368 6f20 2752 656d 6564 6961 7469   echo 'Remediati
│ │ │ -0004c120: 6f6e 2069 7320 6e6f 7420 6170 706c 6963  on is not applic
│ │ │ -0004c130: 6162 6c65 2c20 6e6f 7468 696e 6720 7761  able, nothing wa
│ │ │ -0004c140: 7320 646f 6e65 270a 6669 0a3c 2f63 6f64  s done'.fi.
│ │ │ +0004b660: 3c62 723e 3c64 6976 2063 6c61 7373 3d22  
low
Disr │ │ │ -0004be40: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -0004be50: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -0004be90: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ -0004bea0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Com │ │ │ +0004b6e0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +0004b710: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +0004b730: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +0004b740: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +0004b760: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ +0004b780: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ +0004b790: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ +0004b7a0: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ +0004b7b0: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ +0004b7c0: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ +0004b7d0: 2074 6167 733a 0a20 202d 2065 6e61 626c   tags:.  - enabl
│ │ │ +0004b7e0: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ +0004b7f0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +0004b800: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +0004b810: 0a20 202d 206c 6f77 5f73 6576 6572 6974  .  - low_severit
│ │ │ +0004b820: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +0004b830: 6e65 6564 6564 0a20 202d 2073 7973 7465  needed.  - syste
│ │ │ +0004b840: 6d64 5f74 6d70 5f6d 6f75 6e74 5f65 6e61  md_tmp_mount_ena
│ │ │ +0004b850: 626c 6564 0a0a 2d20 6e61 6d65 3a20 456e  bled..- name: En
│ │ │ +0004b860: 6162 6c65 206d 6f75 6e74 2074 6d70 0a20  able mount tmp. 
│ │ │ +0004b870: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +0004b880: 2e73 7973 7465 6d64 3a0a 2020 2020 6e61  .systemd:.    na
│ │ │ +0004b890: 6d65 3a20 746d 702e 6d6f 756e 740a 2020  me: tmp.mount.  
│ │ │ +0004b8a0: 2020 656e 6162 6c65 643a 2027 7965 7327    enabled: 'yes'
│ │ │ +0004b8b0: 0a20 2020 2073 7461 7465 3a20 7374 6172  .    state: star
│ │ │ +0004b8c0: 7465 640a 2020 2020 6d61 736b 6564 3a20  ted.    masked: 
│ │ │ +0004b8d0: 2766 616c 7365 270a 2020 7768 656e 3a20  'false'.  when: 
│ │ │ +0004b8e0: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ +0004b8f0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +0004b900: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +0004b910: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ +0004b920: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +0004b930: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ +0004b940: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +0004b950: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +0004b960: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ +0004b970: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ +0004b980: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +0004b990: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ +0004b9a0: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +0004b9b0: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ +0004b9c0: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ +0004b9d0: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ +0004b9e0: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ +0004b9f0: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +0004ba00: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +0004ba10: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ +0004ba20: 2029 2029 0a20 2074 6167 733a 0a20 202d   ) ).  tags:.  -
│ │ │ +0004ba30: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ +0004ba40: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +0004ba50: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +0004ba60: 7570 7469 6f6e 0a20 202d 206c 6f77 5f73  uption.  - low_s
│ │ │ +0004ba70: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ +0004ba80: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ +0004ba90: 2073 7973 7465 6d64 5f74 6d70 5f6d 6f75   systemd_tmp_mou
│ │ │ +0004baa0: 6e74 5f65 6e61 626c 6564 0a3c 2f63 6f64  nt_enabled.
Remedi │ │ │ +0004bb60: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ +0004bb70: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
< │ │ │ +0004bbf0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +0004bc00: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +0004bc20: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +0004bc30: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +0004bc50: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +0004bc70: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ +0004bca0: 636f 6465 3e23 2052 656d 6564 6961 7469  code># Remediati
│ │ │ +0004bcb0: 6f6e 2069 7320 6170 706c 6963 6162 6c65  on is applicable
│ │ │ +0004bcc0: 206f 6e6c 7920 696e 2063 6572 7461 696e   only in certain
│ │ │ +0004bcd0: 2070 6c61 7466 6f72 6d73 0a69 6620 2820   platforms.if ( 
│ │ │ +0004bce0: 2120 2820 7b20 7270 6d20 2d2d 7175 6965  ! ( { rpm --quie
│ │ │ +0004bcf0: 7420 2d71 206b 6572 6e65 6c20 3b7d 2026  t -q kernel ;} &
│ │ │ +0004bd00: 616d 703b 2661 6d70 3b20 7b20 7270 6d20  amp;& { rpm 
│ │ │ +0004bd10: 2d2d 7175 6965 7420 2d71 2072 706d 2d6f  --quiet -q rpm-o
│ │ │ +0004bd20: 7374 7265 6520 3b7d 2026 616d 703b 2661  stree ;} &&a
│ │ │ +0004bd30: 6d70 3b20 7b20 7270 6d20 2d2d 7175 6965  mp; { rpm --quie
│ │ │ +0004bd40: 7420 2d71 2062 6f6f 7463 203b 7d20 2661  t -q bootc ;} &a
│ │ │ +0004bd50: 6d70 3b26 616d 703b 207b 2021 2072 706d  mp;& { ! rpm
│ │ │ +0004bd60: 202d 2d71 7569 6574 202d 7120 6f70 656e   --quiet -q open
│ │ │ +0004bd70: 7368 6966 742d 6b75 6265 6c65 7420 3b7d  shift-kubelet ;}
│ │ │ +0004bd80: 2026 616d 703b 2661 6d70 3b20 285b 202d   && ([ -
│ │ │ +0004bd90: 6620 2f72 756e 2f6f 7374 7265 652d 626f  f /run/ostree-bo
│ │ │ +0004bda0: 6f74 6564 205d 207c 7c20 5b20 2d4c 202f  oted ] || [ -L /
│ │ │ +0004bdb0: 6f73 7472 6565 205d 2920 2920 2661 6d70  ostree ]) ) &
│ │ │ +0004bdc0: 3b26 616d 703b 2021 2028 205b 202d 6620  ;& ! ( [ -f 
│ │ │ +0004bdd0: 2f2e 646f 636b 6572 656e 7620 5d20 7c7c  /.dockerenv ] ||
│ │ │ +0004bde0: 205b 202d 6620 2f72 756e 2f2e 636f 6e74   [ -f /run/.cont
│ │ │ +0004bdf0: 6169 6e65 7265 6e76 205d 2029 2029 3b20  ainerenv ] ) ); 
│ │ │ +0004be00: 7468 656e 0a0a 5359 5354 454d 4354 4c5f  then..SYSTEMCTL_
│ │ │ +0004be10: 4558 4543 3d27 2f75 7372 2f62 696e 2f73  EXEC='/usr/bin/s
│ │ │ +0004be20: 7973 7465 6d63 746c 270a 2224 5359 5354  ystemctl'."$SYST
│ │ │ +0004be30: 454d 4354 4c5f 4558 4543 2220 756e 6d61  EMCTL_EXEC" unma
│ │ │ +0004be40: 736b 2027 746d 702e 6d6f 756e 7427 0a69  sk 'tmp.mount'.i
│ │ │ +0004be50: 6620 5b5b 2024 2822 2453 5953 5445 4d43  f [[ $("$SYSTEMC
│ │ │ +0004be60: 544c 5f45 5845 4322 2069 732d 7379 7374  TL_EXEC" is-syst
│ │ │ +0004be70: 656d 2d72 756e 6e69 6e67 2920 213d 2022  em-running) != "
│ │ │ +0004be80: 6f66 666c 696e 6522 205d 5d3b 2074 6865  offline" ]]; the
│ │ │ +0004be90: 6e0a 2020 2224 5359 5354 454d 4354 4c5f  n.  "$SYSTEMCTL_
│ │ │ +0004bea0: 4558 4543 2220 7374 6172 7420 2774 6d70  EXEC" start 'tmp
│ │ │ +0004beb0: 2e6d 6f75 6e74 270a 6669 0a22 2453 5953  .mount'.fi."$SYS
│ │ │ +0004bec0: 5445 4d43 544c 5f45 5845 4322 2065 6e61  TEMCTL_EXEC" ena
│ │ │ +0004bed0: 626c 6520 2774 6d70 2e6d 6f75 6e74 270a  ble 'tmp.mount'.
│ │ │ +0004bee0: 0a65 6c73 650a 2020 2020 2667 743b 2661  .else.    >&a
│ │ │ +0004bef0: 6d70 3b32 2065 6368 6f20 2752 656d 6564  mp;2 echo 'Remed
│ │ │ +0004bf00: 6961 7469 6f6e 2069 7320 6e6f 7420 6170  iation is not ap
│ │ │ +0004bf10: 706c 6963 6162 6c65 2c20 6e6f 7468 696e  plicable, nothin
│ │ │ +0004bf20: 6720 7761 7320 646f 6e65 270a 6669 0a3c  g was done'.fi.<
│ │ │ +0004bf30: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Re │ │ │ +0004bfe0: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ +0004bff0: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
< │ │ │ +0004c090: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0004c0a0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +0004c0f0: 3c74 723e 3c74 683e 5374 7261 7465 6779
.se
│ │ │ +0004c130: 7276 6963 6573 202d 2d65 6e61 626c 6564  rvices --enabled
│ │ │ +0004c140: 3d74 6d70 2e6d 6f75 6e74 0a3c 2f63 6f64  =tmp.mount.
C │ │ │ +0004c080: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +0004c0b0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +0004c0c0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +0004c100: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +0004c110: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Remediati │ │ │ -0004d180: 6f6e 204f 5342 7569 6c64 2042 6c75 6570 on OSBuild Bluep │ │ │ -0004d190: 7269 6e74 2073 6e69 7070 6574 20e2 87b2 rint snippet ... │ │ │ -0004d1a0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61

.[[packages]].
│ │ │ -0004d1f0: 6e61 6d65 203d 2022 7375 646f 220a 7665  name = "sudo".ve
│ │ │ -0004d200: 7273 696f 6e20 3d20 222a 220a 3c2f 636f  rsion = "*".
< │ │ │ -0004d220: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -0004d230: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -0004d240: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -0004d250: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -0004d260: 6435 3022 2074 6162 696e 6465 783d 2230 d50" tabindex="0 │ │ │ -0004d270: 2220 726f 6c65 3d22 6275 7474 6f6e 2220 " role="button" │ │ │ -0004d280: 6172 6961 2d65 7870 616e 6465 643d 2266 aria-expanded="f │ │ │ -0004d290: 616c 7365 2220 7469 746c 653d 2241 6374 alse" title="Act │ │ │ -0004d2a0: 6976 6174 6520 746f 2072 6576 6561 6c22 ivate to reveal" │ │ │ -0004d2b0: 2068 7265 663d 2223 2122 3e52 656d 6564 href="#!">Remed │ │ │ -0004d2c0: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ -0004d2d0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -0004d2e0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Comp │ │ │ -0004d360: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -0004d370: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -0004d390: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -0004d3b0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -0004d3c0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -0004d400: 7072 653e 3c63 6f64 653e 0a70 6163 6b61 pre>.packa │ │ │ -0004d410: 6765 202d 2d61 6464 3d73 7564 6f0a 3c2f ge --add=sudo.
Rem │ │ │ -0004d4d0: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ -0004d4e0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -0004d4f0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Comp │ │ │ -0004d570: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -0004d580: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -0004d5a0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -0004d5c0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -0004d5d0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -0004d610: 7072 653e 3c63 6f64 653e 696e 636c 7564 pre>includ │ │ │ -0004d620: 6520 696e 7374 616c 6c5f 7375 646f 0a0a e install_sudo.. │ │ │ -0004d630: 636c 6173 7320 696e 7374 616c 6c5f 7375 class install_su │ │ │ -0004d640: 646f 207b 0a20 2070 6163 6b61 6765 207b do {. package { │ │ │ -0004d650: 2027 7375 646f 273a 0a20 2020 2065 6e73 'sudo':. ens │ │ │ -0004d660: 7572 6520 3d26 6774 3b20 2769 6e73 7461 ure => 'insta │ │ │ -0004d670: 6c6c 6564 272c 0a20 207d 0a7d 0a3c 2f63 lled',. }.}.
│ │ │ -0004d690: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Reme │ │ │ -0004d730: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ -0004d740: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -0004d750: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Comp │ │ │ -0004d7d0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -0004d7e0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -0004d800: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -0004d820: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -0004d830: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -0004d870: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -0004d880: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -0004d890: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -0004d8a0: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -0004d8b0: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -0004d8c0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ -0004d8d0: 3030 2d35 332d 434d 2d36 2861 290a 2020 00-53-CM-6(a). │ │ │ -0004d8e0: 2d20 5043 492d 4453 5376 342d 322e 320a - PCI-DSSv4-2.2. │ │ │ -0004d8f0: 2020 2d20 5043 492d 4453 5376 342d 322e - PCI-DSSv4-2. │ │ │ -0004d900: 322e 360a 2020 2d20 656e 6162 6c65 5f73 2.6. - enable_s │ │ │ -0004d910: 7472 6174 6567 790a 2020 2d20 6c6f 775f trategy. - low_ │ │ │ -0004d920: 636f 6d70 6c65 7869 7479 0a20 202d 206c complexity. - l │ │ │ -0004d930: 6f77 5f64 6973 7275 7074 696f 6e0a 2020 ow_disruption. │ │ │ -0004d940: 2d20 6d65 6469 756d 5f73 6576 6572 6974 - medium_severit │ │ │ -0004d950: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f y. - no_reboot_ │ │ │ -0004d960: 6e65 6564 6564 0a20 202d 2070 6163 6b61 needed. - packa │ │ │ -0004d970: 6765 5f73 7564 6f5f 696e 7374 616c 6c65 ge_sudo_installe │ │ │ -0004d980: 640a 0a2d 206e 616d 653a 2045 6e73 7572 d..- name: Ensur │ │ │ -0004d990: 6520 7375 646f 2069 7320 696e 7374 616c e sudo is instal │ │ │ -0004d9a0: 6c65 640a 2020 616e 7369 626c 652e 6275 led. ansible.bu │ │ │ -0004d9b0: 696c 7469 6e2e 7061 636b 6167 653a 0a20 iltin.package:. │ │ │ -0004d9c0: 2020 206e 616d 653a 2073 7564 6f0a 2020 name: sudo. │ │ │ -0004d9d0: 2020 7374 6174 653a 2070 7265 7365 6e74 state: present │ │ │ -0004d9e0: 0a20 2077 6865 6e3a 2027 226b 6572 6e65 . when: '"kerne │ │ │ -0004d9f0: 6c22 2069 6e20 616e 7369 626c 655f 6661 l" in ansible_fa │ │ │ -0004da00: 6374 732e 7061 636b 6167 6573 270a 2020 cts.packages'. │ │ │ -0004da10: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ -0004da20: 3030 2d35 332d 434d 2d36 2861 290a 2020 00-53-CM-6(a). │ │ │ -0004da30: 2d20 5043 492d 4453 5376 342d 322e 320a - PCI-DSSv4-2.2. │ │ │ -0004da40: 2020 2d20 5043 492d 4453 5376 342d 322e - PCI-DSSv4-2. │ │ │ -0004da50: 322e 360a 2020 2d20 656e 6162 6c65 5f73 2.6. - enable_s │ │ │ -0004da60: 7472 6174 6567 790a 2020 2d20 6c6f 775f trategy. - low_ │ │ │ -0004da70: 636f 6d70 6c65 7869 7479 0a20 202d 206c complexity. - l │ │ │ -0004da80: 6f77 5f64 6973 7275 7074 696f 6e0a 2020 ow_disruption. │ │ │ -0004da90: 2d20 6d65 6469 756d 5f73 6576 6572 6974 - medium_severit │ │ │ -0004daa0: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f y. - no_reboot_ │ │ │ -0004dab0: 6e65 6564 6564 0a20 202d 2070 6163 6b61 needed. - packa │ │ │ -0004dac0: 6765 5f73 7564 6f5f 696e 7374 616c 6c65 ge_sudo_installe │ │ │ -0004dad0: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c d.< │ │ │ -0004dae0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation She │ │ │ -0004db90: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...
low< │ │ │ -0004dc40: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -0004dc90: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ -0004dc20: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -0004dc50: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -0004dc70: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -0004dc80: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -0004dca0: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -0004dcb0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
# Re
│ │ │ -0004dcd0: 6d65 6469 6174 696f 6e20 6973 2061 7070  mediation is app
│ │ │ -0004dce0: 6c69 6361 626c 6520 6f6e 6c79 2069 6e20  licable only in 
│ │ │ -0004dcf0: 6365 7274 6169 6e20 706c 6174 666f 726d  certain platform
│ │ │ -0004dd00: 730a 6966 2072 706d 202d 2d71 7569 6574  s.if rpm --quiet
│ │ │ -0004dd10: 202d 7120 6b65 726e 656c 3b20 7468 656e   -q kernel; then
│ │ │ -0004dd20: 0a0a 6966 2021 2072 706d 202d 7120 2d2d  ..if ! rpm -q --
│ │ │ -0004dd30: 7175 6965 7420 2273 7564 6f22 203b 2074  quiet "sudo" ; t
│ │ │ -0004dd40: 6865 6e0a 2020 2020 646e 6620 696e 7374  hen.    dnf inst
│ │ │ -0004dd50: 616c 6c20 2d79 2022 7375 646f 220a 6669  all -y "sudo".fi
│ │ │ -0004dd60: 0a0a 656c 7365 0a20 2020 2026 6774 3b26  ..else.    >&
│ │ │ -0004dd70: 616d 703b 3220 6563 686f 2027 5265 6d65  amp;2 echo 'Reme
│ │ │ -0004dd80: 6469 6174 696f 6e20 6973 206e 6f74 2061  diation is not a
│ │ │ -0004dd90: 7070 6c69 6361 626c 652c 206e 6f74 6869  pplicable, nothi
│ │ │ -0004dda0: 6e67 2077 6173 2064 6f6e 6527 0a66 690a  ng was done'.fi.
│ │ │ +0004d180: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070  on Ansible snipp
│ │ │ +0004d190: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...
< │ │ │ +0004d210: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +0004d220: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +0004d240: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +0004d250: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +0004d270: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +0004d290: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ +0004d2c0: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ +0004d2d0: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ +0004d2e0: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ +0004d2f0: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ +0004d300: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ +0004d310: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +0004d320: 2d43 4d2d 3628 6129 0a20 202d 2050 4349  -CM-6(a).  - PCI
│ │ │ +0004d330: 2d44 5353 7634 2d32 2e32 0a20 202d 2050  -DSSv4-2.2.  - P
│ │ │ +0004d340: 4349 2d44 5353 7634 2d32 2e32 2e36 0a20  CI-DSSv4-2.2.6. 
│ │ │ +0004d350: 202d 2065 6e61 626c 655f 7374 7261 7465   - enable_strate
│ │ │ +0004d360: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ +0004d370: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ +0004d380: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ +0004d390: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +0004d3a0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +0004d3b0: 640a 2020 2d20 7061 636b 6167 655f 7375  d.  - package_su
│ │ │ +0004d3c0: 646f 5f69 6e73 7461 6c6c 6564 0a0a 2d20  do_installed..- 
│ │ │ +0004d3d0: 6e61 6d65 3a20 456e 7375 7265 2073 7564  name: Ensure sud
│ │ │ +0004d3e0: 6f20 6973 2069 6e73 7461 6c6c 6564 0a20  o is installed. 
│ │ │ +0004d3f0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +0004d400: 2e70 6163 6b61 6765 3a0a 2020 2020 6e61  .package:.    na
│ │ │ +0004d410: 6d65 3a20 7375 646f 0a20 2020 2073 7461  me: sudo.    sta
│ │ │ +0004d420: 7465 3a20 7072 6573 656e 740a 2020 7768  te: present.  wh
│ │ │ +0004d430: 656e 3a20 2722 6b65 726e 656c 2220 696e  en: '"kernel" in
│ │ │ +0004d440: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +0004d450: 6163 6b61 6765 7327 0a20 2074 6167 733a  ackages'.  tags:
│ │ │ +0004d460: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +0004d470: 2d43 4d2d 3628 6129 0a20 202d 2050 4349  -CM-6(a).  - PCI
│ │ │ +0004d480: 2d44 5353 7634 2d32 2e32 0a20 202d 2050  -DSSv4-2.2.  - P
│ │ │ +0004d490: 4349 2d44 5353 7634 2d32 2e32 2e36 0a20  CI-DSSv4-2.2.6. 
│ │ │ +0004d4a0: 202d 2065 6e61 626c 655f 7374 7261 7465   - enable_strate
│ │ │ +0004d4b0: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ +0004d4c0: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ +0004d4d0: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ +0004d4e0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +0004d4f0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +0004d500: 640a 2020 2d20 7061 636b 6167 655f 7375  d.  - package_su
│ │ │ +0004d510: 646f 5f69 6e73 7461 6c6c 6564 0a3c 2f63  do_installed.
│ │ │ +0004d530: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Reme │ │ │ +0004d5d0: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ +0004d5e0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
│ │ │ +0004d690: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +0004d6b0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +0004d6e0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +0004d670: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +0004d680: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +0004d6a0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +0004d6c0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +0004d6d0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

include │ │ │ +0004d720: 2069 6e73 7461 6c6c 5f73 7564 6f0a 0a63 install_sudo..c │ │ │ +0004d730: 6c61 7373 2069 6e73 7461 6c6c 5f73 7564 lass install_sud │ │ │ +0004d740: 6f20 7b0a 2020 7061 636b 6167 6520 7b20 o {. package { │ │ │ +0004d750: 2773 7564 6f27 3a0a 2020 2020 656e 7375 'sudo':. ensu │ │ │ +0004d760: 7265 203d 2667 743b 2027 696e 7374 616c re => 'instal │ │ │ +0004d770: 6c65 6427 2c0a 2020 7d0a 7d0a 3c2f 636f led',. }.}.

< │ │ │ +0004d790: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +0004d7a0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +0004d7b0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +0004d7c0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +0004d7d0: 6435 3122 2074 6162 696e 6465 783d 2230 d51" tabindex="0 │ │ │ +0004d7e0: 2220 726f 6c65 3d22 6275 7474 6f6e 2220 " role="button" │ │ │ +0004d7f0: 6172 6961 2d65 7870 616e 6465 643d 2266 aria-expanded="f │ │ │ +0004d800: 616c 7365 2220 7469 746c 653d 2241 6374 alse" title="Act │ │ │ +0004d810: 6976 6174 6520 746f 2072 6576 6561 6c22 ivate to reveal" │ │ │ +0004d820: 2068 7265 663d 2223 2122 3e52 656d 6564 href="#!">Remed │ │ │ +0004d830: 6961 7469 6f6e 204f 5342 7569 6c64 2042 iation OSBuild B │ │ │ +0004d840: 6c75 6570 7269 6e74 2073 6e69 7070 6574 lueprint snippet │ │ │ +0004d850: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
│ │ │ +0004d890: 3c63 6f64 653e 0a5b 5b70 6163 6b61 6765  .[[package
│ │ │ +0004d8a0: 735d 5d0a 6e61 6d65 203d 2022 7375 646f  s]].name = "sudo
│ │ │ +0004d8b0: 220a 7665 7273 696f 6e20 3d20 222a 220a  ".version = "*".
│ │ │ +0004d8c0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
R │ │ │ +0004d970: 656d 6564 6961 7469 6f6e 2053 6865 6c6c emediation Shell │ │ │ +0004d980: 2073 6372 6970 7420 e287 b23c 2f61 3e3c script ...< │ │ │ +0004d990: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Comp │ │ │ +0004da10: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +0004da20: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +0004da40: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +0004da60: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +0004da70: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ +0004dab0: 7072 653e 3c63 6f64 653e 2320 5265 6d65 pre># Reme │ │ │ +0004dac0: 6469 6174 696f 6e20 6973 2061 7070 6c69 diation is appli │ │ │ +0004dad0: 6361 626c 6520 6f6e 6c79 2069 6e20 6365 cable only in ce │ │ │ +0004dae0: 7274 6169 6e20 706c 6174 666f 726d 730a rtain platforms. │ │ │ +0004daf0: 6966 2072 706d 202d 2d71 7569 6574 202d if rpm --quiet - │ │ │ +0004db00: 7120 6b65 726e 656c 3b20 7468 656e 0a0a q kernel; then.. │ │ │ +0004db10: 6966 2021 2072 706d 202d 7120 2d2d 7175 if ! rpm -q --qu │ │ │ +0004db20: 6965 7420 2273 7564 6f22 203b 2074 6865 iet "sudo" ; the │ │ │ +0004db30: 6e0a 2020 2020 646e 6620 696e 7374 616c n. dnf instal │ │ │ +0004db40: 6c20 2d79 2022 7375 646f 220a 6669 0a0a l -y "sudo".fi.. │ │ │ +0004db50: 656c 7365 0a20 2020 2026 6774 3b26 616d else. >&am │ │ │ +0004db60: 703b 3220 6563 686f 2027 5265 6d65 6469 p;2 echo 'Remedi │ │ │ +0004db70: 6174 696f 6e20 6973 206e 6f74 2061 7070 ation is not app │ │ │ +0004db80: 6c69 6361 626c 652c 206e 6f74 6869 6e67 licable, nothing │ │ │ +0004db90: 2077 6173 2064 6f6e 6527 0a66 690a 3c2f was done'.fi.
Rem │ │ │ +0004dc50: 6564 6961 7469 6f6e 2041 6e61 636f 6e64 ediation Anacond │ │ │ +0004dc60: 6120 736e 6970 7065 7420 e287 b23c 2f61 a snippet ...
low< │ │ │ +0004dd10: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0004dd60: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +0004dcf0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0004dd20: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0004dd40: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0004dd50: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0004dd70: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +0004dd80: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.pac
│ │ │ +0004dda0: 6b61 6765 202d 2d61 6464 3d73 7564 6f0a  kage --add=sudo.
│ │ │  0004ddb0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
Remediation O │ │ │ -0005ce00: 5342 7569 6c64 2042 6c75 6570 7269 6e74 SBuild Blueprint │ │ │ -0005ce10: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -0005ce20: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
.[
│ │ │ -0005ce60: 5b70 6163 6b61 6765 735d 5d0a 6e61 6d65  [packages]].name
│ │ │ -0005ce70: 203d 2022 646e 662d 6175 746f 6d61 7469   = "dnf-automati
│ │ │ -0005ce80: 6322 0a76 6572 7369 6f6e 203d 2022 2a22  c".version = "*"
│ │ │ -0005ce90: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
│ │ │ -0005cf40: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ -0005cf50: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ -0005cf60: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
< │ │ │ -0005d030: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0005d040: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
.
│ │ │ -0005d090: 7061 636b 6167 6520 2d2d 6164 643d 646e  package --add=dn
│ │ │ -0005d0a0: 662d 6175 746f 6d61 7469 630a 3c2f 636f  f-automatic.
< │ │ │ -0005d0c0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -0005d0d0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -0005d0e0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -0005d0f0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -0005d100: 6439 3122 2074 6162 696e 6465 783d 2230 d91" tabindex="0 │ │ │ -0005d110: 2220 726f 6c65 3d22 6275 7474 6f6e 2220 " role="button" │ │ │ -0005d120: 6172 6961 2d65 7870 616e 6465 643d 2266 aria-expanded="f │ │ │ -0005d130: 616c 7365 2220 7469 746c 653d 2241 6374 alse" title="Act │ │ │ -0005d140: 6976 6174 6520 746f 2072 6576 6561 6c22 ivate to reveal" │ │ │ -0005d150: 2068 7265 663d 2223 2122 3e52 656d 6564 href="#!">Remed │ │ │ -0005d160: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ -0005d170: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -0005d1b0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Complexity:low
Disrup │ │ │ -0005d010: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0005d020: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0005d060: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -0005d070: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ -0005d220: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -0005d240: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -0005d270: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ -0005d290: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ -0005d200: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -0005d210: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -0005d250: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -0005d260: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
include │ │ │ -0005d2b0: 696e 7374 616c 6c5f 646e 662d 6175 746f install_dnf-auto │ │ │ -0005d2c0: 6d61 7469 630a 0a63 6c61 7373 2069 6e73 matic..class ins │ │ │ -0005d2d0: 7461 6c6c 5f64 6e66 2d61 7574 6f6d 6174 tall_dnf-automat │ │ │ -0005d2e0: 6963 207b 0a20 2070 6163 6b61 6765 207b ic {. package { │ │ │ -0005d2f0: 2027 646e 662d 6175 746f 6d61 7469 6327 'dnf-automatic' │ │ │ -0005d300: 3a0a 2020 2020 656e 7375 7265 203d 2667 :. ensure =&g │ │ │ -0005d310: 743b 2027 696e 7374 616c 6c65 6427 2c0a t; 'installed',. │ │ │ -0005d320: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 }.}.

Remediation │ │ │ -0005d3e0: 2041 6e73 6962 6c65 2073 6e69 7070 6574 Ansible snippet │ │ │ -0005d3f0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity: │ │ │ -0005d480: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -0005d4a0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -0005d4c0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -0005d4f0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -0005d500: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ -0005d510: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
- name: Gathe
│ │ │ -0005d530: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ -0005d540: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ -0005d550: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ -0005d560: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ -0005d570: 202d 2065 6e61 626c 655f 7374 7261 7465   - enable_strate
│ │ │ -0005d580: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ -0005d590: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ -0005d5a0: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ -0005d5b0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -0005d5c0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -0005d5d0: 640a 2020 2d20 7061 636b 6167 655f 646e  d.  - package_dn
│ │ │ -0005d5e0: 662d 6175 746f 6d61 7469 635f 696e 7374  f-automatic_inst
│ │ │ -0005d5f0: 616c 6c65 640a 0a2d 206e 616d 653a 2045  alled..- name: E
│ │ │ -0005d600: 6e73 7572 6520 646e 662d 6175 746f 6d61  nsure dnf-automa
│ │ │ -0005d610: 7469 6320 6973 2069 6e73 7461 6c6c 6564  tic is installed
│ │ │ -0005d620: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -0005d630: 696e 2e70 6163 6b61 6765 3a0a 2020 2020  in.package:.    
│ │ │ -0005d640: 6e61 6d65 3a20 646e 662d 6175 746f 6d61  name: dnf-automa
│ │ │ -0005d650: 7469 630a 2020 2020 7374 6174 653a 2070  tic.    state: p
│ │ │ -0005d660: 7265 7365 6e74 0a20 2077 6865 6e3a 2028  resent.  when: (
│ │ │ -0005d670: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -0005d680: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -0005d690: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ -0005d6a0: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ -0005d6b0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -0005d6c0: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ -0005d6d0: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ -0005d6e0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -0005d6f0: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -0005d700: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -0005d710: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -0005d720: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ -0005d730: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -0005d740: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ -0005d750: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -0005d760: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -0005d770: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ -0005d780: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ -0005d790: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ -0005d7a0: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ -0005d7b0: 2920 290a 2020 7461 6773 3a0a 2020 2d20  ) ).  tags:.  - 
│ │ │ -0005d7c0: 656e 6162 6c65 5f73 7472 6174 6567 790a  enable_strategy.
│ │ │ -0005d7d0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -0005d7e0: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ -0005d7f0: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ -0005d800: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ -0005d810: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ -0005d820: 202d 2070 6163 6b61 6765 5f64 6e66 2d61   - package_dnf-a
│ │ │ -0005d830: 7574 6f6d 6174 6963 5f69 6e73 7461 6c6c  utomatic_install
│ │ │ -0005d840: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e  ed.
│ │ │ -0005d850: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation Sh │ │ │ -0005d900: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
< │ │ │ -0005d9a0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0005d9b0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -0005da00: 3c74 723e 3c74 683e 5374 7261 7465 6779
# R
│ │ │ -0005da40: 656d 6564 6961 7469 6f6e 2069 7320 6170  emediation is ap
│ │ │ -0005da50: 706c 6963 6162 6c65 206f 6e6c 7920 696e  plicable only in
│ │ │ -0005da60: 2063 6572 7461 696e 2070 6c61 7466 6f72   certain platfor
│ │ │ -0005da70: 6d73 0a69 6620 2820 2820 2120 2820 7b20  ms.if ( ( ! ( { 
│ │ │ -0005da80: 7270 6d20 2d2d 7175 6965 7420 2d71 206b  rpm --quiet -q k
│ │ │ -0005da90: 6572 6e65 6c20 3b7d 2026 616d 703b 2661  ernel ;} &&a
│ │ │ -0005daa0: 6d70 3b20 7b20 7270 6d20 2d2d 7175 6965  mp; { rpm --quie
│ │ │ -0005dab0: 7420 2d71 2072 706d 2d6f 7374 7265 6520  t -q rpm-ostree 
│ │ │ -0005dac0: 3b7d 2026 616d 703b 2661 6d70 3b20 7b20  ;} && { 
│ │ │ -0005dad0: 7270 6d20 2d2d 7175 6965 7420 2d71 2062  rpm --quiet -q b
│ │ │ -0005dae0: 6f6f 7463 203b 7d20 2661 6d70 3b26 616d  ootc ;} &&am
│ │ │ -0005daf0: 703b 207b 2021 2072 706d 202d 2d71 7569  p; { ! rpm --qui
│ │ │ -0005db00: 6574 202d 7120 6f70 656e 7368 6966 742d  et -q openshift-
│ │ │ -0005db10: 6b75 6265 6c65 7420 3b7d 2026 616d 703b  kubelet ;} &
│ │ │ -0005db20: 2661 6d70 3b20 285b 202d 6620 2f72 756e  & ([ -f /run
│ │ │ -0005db30: 2f6f 7374 7265 652d 626f 6f74 6564 205d  /ostree-booted ]
│ │ │ -0005db40: 207c 7c20 5b20 2d4c 202f 6f73 7472 6565   || [ -L /ostree
│ │ │ -0005db50: 205d 2920 2920 2661 6d70 3b26 616d 703b   ]) ) &&
│ │ │ -0005db60: 2021 2028 205b 202d 6620 2f2e 646f 636b   ! ( [ -f /.dock
│ │ │ -0005db70: 6572 656e 7620 5d20 7c7c 205b 202d 6620  erenv ] || [ -f 
│ │ │ -0005db80: 2f72 756e 2f2e 636f 6e74 6169 6e65 7265  /run/.containere
│ │ │ -0005db90: 6e76 205d 2029 2029 2029 3b20 7468 656e  nv ] ) ) ); then
│ │ │ -0005dba0: 0a0a 6966 2021 2072 706d 202d 7120 2d2d  ..if ! rpm -q --
│ │ │ -0005dbb0: 7175 6965 7420 2264 6e66 2d61 7574 6f6d  quiet "dnf-autom
│ │ │ -0005dbc0: 6174 6963 2220 3b20 7468 656e 0a20 2020  atic" ; then.   
│ │ │ -0005dbd0: 2064 6e66 2069 6e73 7461 6c6c 202d 7920   dnf install -y 
│ │ │ -0005dbe0: 2264 6e66 2d61 7574 6f6d 6174 6963 220a  "dnf-automatic".
│ │ │ -0005dbf0: 6669 0a0a 656c 7365 0a20 2020 2026 6774  fi..else.    >
│ │ │ -0005dc00: 3b26 616d 703b 3220 6563 686f 2027 5265  ;&2 echo 'Re
│ │ │ -0005dc10: 6d65 6469 6174 696f 6e20 6973 206e 6f74  mediation is not
│ │ │ -0005dc20: 2061 7070 6c69 6361 626c 652c 206e 6f74   applicable, not
│ │ │ -0005dc30: 6869 6e67 2077 6173 2064 6f6e 6527 0a66  hing was done'.f
│ │ │ -0005dc40: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +0005cdf0: 2122 3e52 656d 6564 6961 7469 6f6e 2041 !">Remediation A │ │ │ +0005ce00: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ +0005ce10: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
C │ │ │ -0005d990: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -0005d9c0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -0005d9d0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -0005da10: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -0005da20: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ +0005ce90: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +0005ceb0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +0005cf00: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
- name: Gather 
│ │ │ +0005cf50: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ +0005cf60: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ +0005cf70: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ +0005cf80: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ +0005cf90: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ +0005cfa0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +0005cfb0: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +0005cfc0: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +0005cfd0: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ +0005cfe0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +0005cff0: 2020 2d20 7061 636b 6167 655f 646e 662d    - package_dnf-
│ │ │ +0005d000: 6175 746f 6d61 7469 635f 696e 7374 616c  automatic_instal
│ │ │ +0005d010: 6c65 640a 0a2d 206e 616d 653a 2045 6e73  led..- name: Ens
│ │ │ +0005d020: 7572 6520 646e 662d 6175 746f 6d61 7469  ure dnf-automati
│ │ │ +0005d030: 6320 6973 2069 6e73 7461 6c6c 6564 0a20  c is installed. 
│ │ │ +0005d040: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +0005d050: 2e70 6163 6b61 6765 3a0a 2020 2020 6e61  .package:.    na
│ │ │ +0005d060: 6d65 3a20 646e 662d 6175 746f 6d61 7469  me: dnf-automati
│ │ │ +0005d070: 630a 2020 2020 7374 6174 653a 2070 7265  c.    state: pre
│ │ │ +0005d080: 7365 6e74 0a20 2077 6865 6e3a 2028 206e  sent.  when: ( n
│ │ │ +0005d090: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ +0005d0a0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +0005d0b0: 6163 6b61 6765 7320 616e 6420 2272 706d  ackages and "rpm
│ │ │ +0005d0c0: 2d6f 7374 7265 6522 2069 6e20 616e 7369  -ostree" in ansi
│ │ │ +0005d0d0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +0005d0e0: 6573 0a20 2020 2061 6e64 2022 626f 6f74  es.    and "boot
│ │ │ +0005d0f0: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ +0005d100: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +0005d110: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ +0005d120: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ +0005d130: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +0005d140: 6573 0a20 2020 2061 6e64 2022 6f73 7472  es.    and "ostr
│ │ │ +0005d150: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ +0005d160: 726f 635f 636d 646c 696e 6520 2920 616e  roc_cmdline ) an
│ │ │ +0005d170: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ +0005d180: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ +0005d190: 7970 6520 696e 0a20 2020 205b 2264 6f63  ype in.    ["doc
│ │ │ +0005d1a0: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ +0005d1b0: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ +0005d1c0: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ +0005d1d0: 290a 2020 7461 6773 3a0a 2020 2d20 656e  ).  tags:.  - en
│ │ │ +0005d1e0: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ +0005d1f0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +0005d200: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +0005d210: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ +0005d220: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ +0005d230: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ +0005d240: 2070 6163 6b61 6765 5f64 6e66 2d61 7574   package_dnf-aut
│ │ │ +0005d250: 6f6d 6174 6963 5f69 6e73 7461 6c6c 6564  omatic_installed
│ │ │ +0005d260: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
│ │ │ +0005d310: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +0005d320: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
low
Disr │ │ │ +0005cec0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +0005ced0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +0005cf10: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +0005cf20: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ +0005d3c0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0005d3d0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +0005d420: 3c74 723e 3c74 683e 5374 7261 7465 6779
inc
│ │ │ +0005d460: 6c75 6465 2069 6e73 7461 6c6c 5f64 6e66  lude install_dnf
│ │ │ +0005d470: 2d61 7574 6f6d 6174 6963 0a0a 636c 6173  -automatic..clas
│ │ │ +0005d480: 7320 696e 7374 616c 6c5f 646e 662d 6175  s install_dnf-au
│ │ │ +0005d490: 746f 6d61 7469 6320 7b0a 2020 7061 636b  tomatic {.  pack
│ │ │ +0005d4a0: 6167 6520 7b20 2764 6e66 2d61 7574 6f6d  age { 'dnf-autom
│ │ │ +0005d4b0: 6174 6963 273a 0a20 2020 2065 6e73 7572  atic':.    ensur
│ │ │ +0005d4c0: 6520 3d26 6774 3b20 2769 6e73 7461 6c6c  e => 'install
│ │ │ +0005d4d0: 6564 272c 0a20 207d 0a7d 0a3c 2f63 6f64  ed',.  }.}.
Remedi │ │ │ +0005d590: 6174 696f 6e20 4f53 4275 696c 6420 426c ation OSBuild Bl │ │ │ +0005d5a0: 7565 7072 696e 7420 736e 6970 7065 7420 ueprint snippet │ │ │ +0005d5b0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
<
│ │ │ +0005d5f0: 636f 6465 3e0a 5b5b 7061 636b 6167 6573  code>.[[packages
│ │ │ +0005d600: 5d5d 0a6e 616d 6520 3d20 2264 6e66 2d61  ]].name = "dnf-a
│ │ │ +0005d610: 7574 6f6d 6174 6963 220a 7665 7273 696f  utomatic".versio
│ │ │ +0005d620: 6e20 3d20 222a 220a 3c2f 636f 6465 3e3c  n = "*".<
│ │ │ +0005d630: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediati │ │ │ +0005d6e0: 6f6e 2053 6865 6c6c 2073 6372 6970 7420 on Shell script │ │ │ +0005d6f0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
C │ │ │ +0005d3b0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +0005d3e0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +0005d3f0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +0005d430: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +0005d440: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ +0005d770: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +0005d790: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +0005d7e0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ +0005d810: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
# Remediation 
│ │ │ +0005d830: 6973 2061 7070 6c69 6361 626c 6520 6f6e  is applicable on
│ │ │ +0005d840: 6c79 2069 6e20 6365 7274 6169 6e20 706c  ly in certain pl
│ │ │ +0005d850: 6174 666f 726d 730a 6966 2028 2028 2021  atforms.if ( ( !
│ │ │ +0005d860: 2028 207b 2072 706d 202d 2d71 7569 6574   ( { rpm --quiet
│ │ │ +0005d870: 202d 7120 6b65 726e 656c 203b 7d20 2661   -q kernel ;} &a
│ │ │ +0005d880: 6d70 3b26 616d 703b 207b 2072 706d 202d  mp;& { rpm -
│ │ │ +0005d890: 2d71 7569 6574 202d 7120 7270 6d2d 6f73  -quiet -q rpm-os
│ │ │ +0005d8a0: 7472 6565 203b 7d20 2661 6d70 3b26 616d  tree ;} &&am
│ │ │ +0005d8b0: 703b 207b 2072 706d 202d 2d71 7569 6574  p; { rpm --quiet
│ │ │ +0005d8c0: 202d 7120 626f 6f74 6320 3b7d 2026 616d   -q bootc ;} &am
│ │ │ +0005d8d0: 703b 2661 6d70 3b20 7b20 2120 7270 6d20  p;& { ! rpm 
│ │ │ +0005d8e0: 2d2d 7175 6965 7420 2d71 206f 7065 6e73  --quiet -q opens
│ │ │ +0005d8f0: 6869 6674 2d6b 7562 656c 6574 203b 7d20  hift-kubelet ;} 
│ │ │ +0005d900: 2661 6d70 3b26 616d 703b 2028 5b20 2d66  && ([ -f
│ │ │ +0005d910: 202f 7275 6e2f 6f73 7472 6565 2d62 6f6f   /run/ostree-boo
│ │ │ +0005d920: 7465 6420 5d20 7c7c 205b 202d 4c20 2f6f  ted ] || [ -L /o
│ │ │ +0005d930: 7374 7265 6520 5d29 2029 2026 616d 703b  stree ]) ) &
│ │ │ +0005d940: 2661 6d70 3b20 2120 2820 5b20 2d66 202f  & ! ( [ -f /
│ │ │ +0005d950: 2e64 6f63 6b65 7265 6e76 205d 207c 7c20  .dockerenv ] || 
│ │ │ +0005d960: 5b20 2d66 202f 7275 6e2f 2e63 6f6e 7461  [ -f /run/.conta
│ │ │ +0005d970: 696e 6572 656e 7620 5d20 2920 2920 293b  inerenv ] ) ) );
│ │ │ +0005d980: 2074 6865 6e0a 0a69 6620 2120 7270 6d20   then..if ! rpm 
│ │ │ +0005d990: 2d71 202d 2d71 7569 6574 2022 646e 662d  -q --quiet "dnf-
│ │ │ +0005d9a0: 6175 746f 6d61 7469 6322 203b 2074 6865  automatic" ; the
│ │ │ +0005d9b0: 6e0a 2020 2020 646e 6620 696e 7374 616c  n.    dnf instal
│ │ │ +0005d9c0: 6c20 2d79 2022 646e 662d 6175 746f 6d61  l -y "dnf-automa
│ │ │ +0005d9d0: 7469 6322 0a66 690a 0a65 6c73 650a 2020  tic".fi..else.  
│ │ │ +0005d9e0: 2020 2667 743b 2661 6d70 3b32 2065 6368    >&2 ech
│ │ │ +0005d9f0: 6f20 2752 656d 6564 6961 7469 6f6e 2069  o 'Remediation i
│ │ │ +0005da00: 7320 6e6f 7420 6170 706c 6963 6162 6c65  s not applicable
│ │ │ +0005da10: 2c20 6e6f 7468 696e 6720 7761 7320 646f  , nothing was do
│ │ │ +0005da20: 6e65 270a 6669 0a3c 2f63 6f64 653e 3c2f  ne'.fi.Remediatio
│ │ │ +0005dae0: 6e20 416e 6163 6f6e 6461 2073 6e69 7070  n Anaconda snipp
│ │ │ +0005daf0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...
< │ │ │ +0005db70: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ +0005dbb0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 enable
Complexity:< │ │ │ +0005d780: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +0005d7a0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +0005d7f0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ +0005d800: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
Complexit │ │ │ +0005db80: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ +0005dba0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ +0005dbd0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ +0005dbf0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
<
│ │ │ +0005dc20: 636f 6465 3e0a 7061 636b 6167 6520 2d2d  code>.package --
│ │ │ +0005dc30: 6164 643d 646e 662d 6175 746f 6d61 7469  add=dnf-automati
│ │ │ +0005dc40: 630a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  c.
< │ │ │ 0005dc50: 2f64 6976 3e3c 2f64 6976 3e3c 2f74 643e /div>
│ │ │ 0005dc60: 3c2f 7472 3e3c 2f74 626f 6479 3e3c 2f74 < │ │ │ 0005dc80: 7472 2064 6174 612d 7474 2d69 643d 2278 tr data-tt-id="x │ │ │ 0005dc90: 6363 6466 5f6f 7267 2e73 7367 7072 6f6a ccdf_org.ssgproj │ │ │ 0005dca0: 6563 742e 636f 6e74 656e 745f 7275 6c65 ect.content_rule │ │ │ 0005dcb0: 5f64 6e66 2d61 7574 6f6d 6174 6963 5f61 _dnf-automatic_a │ │ │ @@ -64715,152 +64715,152 @@ │ │ │ 000fcca0: 6172 6765 743d 2223 6964 3234 3622 2074 arget="#id246" t │ │ │ 000fccb0: 6162 696e 6465 783d 2230 2220 726f 6c65 abindex="0" role │ │ │ 000fccc0: 3d22 6275 7474 6f6e 2220 6172 6961 2d65 ="button" aria-e │ │ │ 000fccd0: 7870 616e 6465 643d 2266 616c 7365 2220 xpanded="false" │ │ │ 000fcce0: 7469 746c 653d 2241 6374 6976 6174 6520 title="Activate │ │ │ 000fccf0: 746f 2072 6576 6561 6c22 2068 7265 663d to reveal" href= │ │ │ 000fcd00: 2223 2122 3e52 656d 6564 6961 7469 6f6e "#!">Remediation │ │ │ -000fcd10: 204f 5342 7569 6c64 2042 6c75 6570 7269 OSBuild Bluepri │ │ │ -000fcd20: 6e74 2073 6e69 7070 6574 20e2 87b2 3c2f nt snippet ...
[customizations
│ │ │ -000fcd80: 2e6b 6572 6e65 6c5d 0a61 7070 656e 6420  .kernel].append 
│ │ │ -000fcd90: 3d20 2269 6f6d 6d75 3d66 6f72 6365 220a  = "iommu=force".
│ │ │ -000fcda0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -000fce50: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -000fce60: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -000fce70: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -000fcf10: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ -000fcf60: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr> │ │ │ -000fcf90: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:medium
Dis │ │ │ -000fcf20: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:true
Stra │ │ │ -000fcf70: 7465 6779 3a3c 2f74 683e 3c74 643e 7265 tegy:re │ │ │ -000fcf80: 7374 7269 6374 3c2f 7464 3e3c 2f74 723e strict
- name: Gathe
│ │ │ -000fcfb0: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ -000fcfc0: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ -000fcfd0: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ -000fcfe0: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ -000fcff0: 202d 2067 7275 6232 5f65 6e61 626c 655f   - grub2_enable_
│ │ │ -000fd000: 696f 6d6d 755f 666f 7263 650a 2020 2d20  iommu_force.  - 
│ │ │ -000fd010: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -000fd020: 202d 206d 6564 6975 6d5f 636f 6d70 6c65   - medium_comple
│ │ │ -000fd030: 7869 7479 0a20 202d 2072 6562 6f6f 745f  xity.  - reboot_
│ │ │ -000fd040: 7265 7175 6972 6564 0a20 202d 2072 6573  required.  - res
│ │ │ -000fd050: 7472 6963 745f 7374 7261 7465 6779 0a20  trict_strategy. 
│ │ │ -000fd060: 202d 2075 6e6b 6e6f 776e 5f73 6576 6572   - unknown_sever
│ │ │ -000fd070: 6974 790a 0a2d 206e 616d 653a 2043 6865  ity..- name: Che
│ │ │ -000fd080: 636b 2069 6620 696f 6d6d 7520 6172 6775  ck if iommu argu
│ │ │ -000fd090: 6d65 6e74 2069 7320 616c 7265 6164 7920  ment is already 
│ │ │ -000fd0a0: 7072 6573 656e 7420 696e 202f 6574 632f  present in /etc/
│ │ │ -000fd0b0: 6465 6661 756c 742f 6772 7562 0a20 2061  default/grub.  a
│ │ │ -000fd0c0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e73  nsible.builtin.s
│ │ │ -000fd0d0: 6c75 7270 3a0a 2020 2020 7372 633a 202f  lurp:.    src: /
│ │ │ -000fd0e0: 6574 632f 6465 6661 756c 742f 6772 7562  etc/default/grub
│ │ │ -000fd0f0: 0a20 2072 6567 6973 7465 723a 2065 7463  .  register: etc
│ │ │ -000fd100: 5f64 6566 6175 6c74 5f67 7275 620a 2020  _default_grub.  
│ │ │ -000fd110: 7768 656e 3a20 2820 2267 7275 6232 2d63  when: ( "grub2-c
│ │ │ -000fd120: 6f6d 6d6f 6e22 2069 6e20 616e 7369 626c  ommon" in ansibl
│ │ │ -000fd130: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -000fd140: 2061 6e64 2022 6b65 726e 656c 2220 696e   and "kernel" in
│ │ │ -000fd150: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -000fd160: 6163 6b61 6765 730a 2020 2020 290a 2020  ackages.    ).  
│ │ │ -000fd170: 7461 6773 3a0a 2020 2d20 6772 7562 325f  tags:.  - grub2_
│ │ │ -000fd180: 656e 6162 6c65 5f69 6f6d 6d75 5f66 6f72  enable_iommu_for
│ │ │ -000fd190: 6365 0a20 202d 206c 6f77 5f64 6973 7275  ce.  - low_disru
│ │ │ -000fd1a0: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ -000fd1b0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -000fd1c0: 7265 626f 6f74 5f72 6571 7569 7265 640a  reboot_required.
│ │ │ -000fd1d0: 2020 2d20 7265 7374 7269 6374 5f73 7472    - restrict_str
│ │ │ -000fd1e0: 6174 6567 790a 2020 2d20 756e 6b6e 6f77  ategy.  - unknow
│ │ │ -000fd1f0: 6e5f 7365 7665 7269 7479 0a0a 2d20 6e61  n_severity..- na
│ │ │ -000fd200: 6d65 3a20 4368 6563 6b20 6966 2069 6f6d  me: Check if iom
│ │ │ -000fd210: 6d75 2061 7267 756d 656e 7420 6973 2061  mu argument is a
│ │ │ -000fd220: 6c72 6561 6479 2070 7265 7365 6e74 0a20  lready present. 
│ │ │ -000fd230: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -000fd240: 2e63 6f6d 6d61 6e64 3a20 2f73 6269 6e2f  .command: /sbin/
│ │ │ -000fd250: 6772 7562 6279 202d 2d69 6e66 6f3d 414c  grubby --info=AL
│ │ │ -000fd260: 4c0a 2020 7265 6769 7374 6572 3a20 6772  L.  register: gr
│ │ │ -000fd270: 7562 6279 5f69 6e66 6f0a 2020 6368 6563  ubby_info.  chec
│ │ │ -000fd280: 6b5f 6d6f 6465 3a20 6661 6c73 650a 2020  k_mode: false.  
│ │ │ -000fd290: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ -000fd2a0: 6c73 650a 2020 6661 696c 6564 5f77 6865  lse.  failed_whe
│ │ │ -000fd2b0: 6e3a 2066 616c 7365 0a20 2077 6865 6e3a  n: false.  when:
│ │ │ -000fd2c0: 2028 2022 6772 7562 322d 636f 6d6d 6f6e   ( "grub2-common
│ │ │ -000fd2d0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -000fd2e0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -000fd2f0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -000fd300: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -000fd310: 6573 0a20 2020 2029 0a20 2074 6167 733a  es.    ).  tags:
│ │ │ -000fd320: 0a20 202d 2067 7275 6232 5f65 6e61 626c  .  - grub2_enabl
│ │ │ -000fd330: 655f 696f 6d6d 755f 666f 7263 650a 2020  e_iommu_force.  
│ │ │ -000fd340: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -000fd350: 0a20 202d 206d 6564 6975 6d5f 636f 6d70  .  - medium_comp
│ │ │ -000fd360: 6c65 7869 7479 0a20 202d 2072 6562 6f6f  lexity.  - reboo
│ │ │ -000fd370: 745f 7265 7175 6972 6564 0a20 202d 2072  t_required.  - r
│ │ │ -000fd380: 6573 7472 6963 745f 7374 7261 7465 6779  estrict_strategy
│ │ │ -000fd390: 0a20 202d 2075 6e6b 6e6f 776e 5f73 6576  .  - unknown_sev
│ │ │ -000fd3a0: 6572 6974 790a 0a2d 206e 616d 653a 2055  erity..- name: U
│ │ │ -000fd3b0: 7064 6174 6520 6772 7562 2064 6566 6175  pdate grub defau
│ │ │ -000fd3c0: 6c74 7320 616e 6420 7468 6520 626f 6f74  lts and the boot
│ │ │ -000fd3d0: 6c6f 6164 6572 206d 656e 750a 2020 616e  loader menu.  an
│ │ │ -000fd3e0: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ -000fd3f0: 6d6d 616e 643a 202f 7362 696e 2f67 7275  mmand: /sbin/gru
│ │ │ -000fd400: 6262 7920 2d2d 7570 6461 7465 2d6b 6572  bby --update-ker
│ │ │ -000fd410: 6e65 6c3d 414c 4c20 2d2d 6172 6773 3d22  nel=ALL --args="
│ │ │ -000fd420: 696f 6d6d 753d 666f 7263 6522 0a20 2077  iommu=force".  w
│ │ │ -000fd430: 6865 6e3a 0a20 202d 2028 2022 6772 7562  hen:.  - ( "grub
│ │ │ -000fd440: 322d 636f 6d6d 6f6e 2220 696e 2061 6e73  2-common" in ans
│ │ │ -000fd450: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -000fd460: 6765 7320 616e 6420 226b 6572 6e65 6c22  ges and "kernel"
│ │ │ -000fd470: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -000fd480: 732e 7061 636b 6167 6573 0a20 2020 2029  s.packages.    )
│ │ │ -000fd490: 0a20 202d 2028 6772 7562 6279 5f69 6e66  .  - (grubby_inf
│ │ │ -000fd4a0: 6f2e 7374 646f 7574 2069 7320 6e6f 7420  o.stdout is not 
│ │ │ -000fd4b0: 7365 6172 6368 2827 696f 6d6d 753d 666f  search('iommu=fo
│ │ │ -000fd4c0: 7263 6527 2929 206f 7220 2828 6574 635f  rce')) or ((etc_
│ │ │ -000fd4d0: 6465 6661 756c 745f 6772 7562 5b27 636f  default_grub['co
│ │ │ -000fd4e0: 6e74 656e 7427 5d0a 2020 2020 7c20 6236  ntent'].    | b6
│ │ │ -000fd4f0: 3464 6563 6f64 6529 2069 7320 6e6f 7420  4decode) is not 
│ │ │ -000fd500: 7365 6172 6368 2827 696f 6d6d 753d 666f  search('iommu=fo
│ │ │ -000fd510: 7263 6527 2929 0a20 2074 6167 733a 0a20  rce')).  tags:. 
│ │ │ -000fd520: 202d 2067 7275 6232 5f65 6e61 626c 655f   - grub2_enable_
│ │ │ -000fd530: 696f 6d6d 755f 666f 7263 650a 2020 2d20  iommu_force.  - 
│ │ │ -000fd540: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -000fd550: 202d 206d 6564 6975 6d5f 636f 6d70 6c65   - medium_comple
│ │ │ -000fd560: 7869 7479 0a20 202d 2072 6562 6f6f 745f  xity.  - reboot_
│ │ │ -000fd570: 7265 7175 6972 6564 0a20 202d 2072 6573  required.  - res
│ │ │ -000fd580: 7472 6963 745f 7374 7261 7465 6779 0a20  trict_strategy. 
│ │ │ -000fd590: 202d 2075 6e6b 6e6f 776e 5f73 6576 6572   - unknown_sever
│ │ │ -000fd5a0: 6974 790a 3c2f 636f 6465 3e3c 2f70 7265  ity.

Complexity │ │ │ +000fcdb0: 3a3c 2f74 683e 3c74 643e 6d65 6469 756d :medium │ │ │ +000fcdc0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ +000fce00: 743a 3c2f 7468 3e3c 7464 3e74 7275 653c t:true< │ │ │ +000fce10: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +000fce30: 7464 3e72 6573 7472 6963 743c 2f74 643e td>restrict │ │ │ +000fce40: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 - name: │ │ │ +000fce60: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ +000fce70: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ +000fce80: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ +000fce90: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ +000fcea0: 6773 3a0a 2020 2d20 6772 7562 325f 656e gs:. - grub2_en │ │ │ +000fceb0: 6162 6c65 5f69 6f6d 6d75 5f66 6f72 6365 able_iommu_force │ │ │ +000fcec0: 0a20 202d 206c 6f77 5f64 6973 7275 7074 . - low_disrupt │ │ │ +000fced0: 696f 6e0a 2020 2d20 6d65 6469 756d 5f63 ion. - medium_c │ │ │ +000fcee0: 6f6d 706c 6578 6974 790a 2020 2d20 7265 omplexity. - re │ │ │ +000fcef0: 626f 6f74 5f72 6571 7569 7265 640a 2020 boot_required. │ │ │ +000fcf00: 2d20 7265 7374 7269 6374 5f73 7472 6174 - restrict_strat │ │ │ +000fcf10: 6567 790a 2020 2d20 756e 6b6e 6f77 6e5f egy. - unknown_ │ │ │ +000fcf20: 7365 7665 7269 7479 0a0a 2d20 6e61 6d65 severity..- name │ │ │ +000fcf30: 3a20 4368 6563 6b20 6966 2069 6f6d 6d75 : Check if iommu │ │ │ +000fcf40: 2061 7267 756d 656e 7420 6973 2061 6c72 argument is alr │ │ │ +000fcf50: 6561 6479 2070 7265 7365 6e74 2069 6e20 eady present in │ │ │ +000fcf60: 2f65 7463 2f64 6566 6175 6c74 2f67 7275 /etc/default/gru │ │ │ +000fcf70: 620a 2020 616e 7369 626c 652e 6275 696c b. ansible.buil │ │ │ +000fcf80: 7469 6e2e 736c 7572 703a 0a20 2020 2073 tin.slurp:. s │ │ │ +000fcf90: 7263 3a20 2f65 7463 2f64 6566 6175 6c74 rc: /etc/default │ │ │ +000fcfa0: 2f67 7275 620a 2020 7265 6769 7374 6572 /grub. register │ │ │ +000fcfb0: 3a20 6574 635f 6465 6661 756c 745f 6772 : etc_default_gr │ │ │ +000fcfc0: 7562 0a20 2077 6865 6e3a 2028 2022 6772 ub. when: ( "gr │ │ │ +000fcfd0: 7562 322d 636f 6d6d 6f6e 2220 696e 2061 ub2-common" in a │ │ │ +000fcfe0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ +000fcff0: 6b61 6765 7320 616e 6420 226b 6572 6e65 kages and "kerne │ │ │ +000fd000: 6c22 2069 6e20 616e 7369 626c 655f 6661 l" in ansible_fa │ │ │ +000fd010: 6374 732e 7061 636b 6167 6573 0a20 2020 cts.packages. │ │ │ +000fd020: 2029 0a20 2074 6167 733a 0a20 202d 2067 ). tags:. - g │ │ │ +000fd030: 7275 6232 5f65 6e61 626c 655f 696f 6d6d rub2_enable_iomm │ │ │ +000fd040: 755f 666f 7263 650a 2020 2d20 6c6f 775f u_force. - low_ │ │ │ +000fd050: 6469 7372 7570 7469 6f6e 0a20 202d 206d disruption. - m │ │ │ +000fd060: 6564 6975 6d5f 636f 6d70 6c65 7869 7479 edium_complexity │ │ │ +000fd070: 0a20 202d 2072 6562 6f6f 745f 7265 7175 . - reboot_requ │ │ │ +000fd080: 6972 6564 0a20 202d 2072 6573 7472 6963 ired. - restric │ │ │ +000fd090: 745f 7374 7261 7465 6779 0a20 202d 2075 t_strategy. - u │ │ │ +000fd0a0: 6e6b 6e6f 776e 5f73 6576 6572 6974 790a nknown_severity. │ │ │ +000fd0b0: 0a2d 206e 616d 653a 2043 6865 636b 2069 .- name: Check i │ │ │ +000fd0c0: 6620 696f 6d6d 7520 6172 6775 6d65 6e74 f iommu argument │ │ │ +000fd0d0: 2069 7320 616c 7265 6164 7920 7072 6573 is already pres │ │ │ +000fd0e0: 656e 740a 2020 616e 7369 626c 652e 6275 ent. ansible.bu │ │ │ +000fd0f0: 696c 7469 6e2e 636f 6d6d 616e 643a 202f iltin.command: / │ │ │ +000fd100: 7362 696e 2f67 7275 6262 7920 2d2d 696e sbin/grubby --in │ │ │ +000fd110: 666f 3d41 4c4c 0a20 2072 6567 6973 7465 fo=ALL. registe │ │ │ +000fd120: 723a 2067 7275 6262 795f 696e 666f 0a20 r: grubby_info. │ │ │ +000fd130: 2063 6865 636b 5f6d 6f64 653a 2066 616c check_mode: fal │ │ │ +000fd140: 7365 0a20 2063 6861 6e67 6564 5f77 6865 se. changed_whe │ │ │ +000fd150: 6e3a 2066 616c 7365 0a20 2066 6169 6c65 n: false. faile │ │ │ +000fd160: 645f 7768 656e 3a20 6661 6c73 650a 2020 d_when: false. │ │ │ +000fd170: 7768 656e 3a20 2820 2267 7275 6232 2d63 when: ( "grub2-c │ │ │ +000fd180: 6f6d 6d6f 6e22 2069 6e20 616e 7369 626c ommon" in ansibl │ │ │ +000fd190: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ +000fd1a0: 2061 6e64 2022 6b65 726e 656c 2220 696e and "kernel" in │ │ │ +000fd1b0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ +000fd1c0: 6163 6b61 6765 730a 2020 2020 290a 2020 ackages. ). │ │ │ +000fd1d0: 7461 6773 3a0a 2020 2d20 6772 7562 325f tags:. - grub2_ │ │ │ +000fd1e0: 656e 6162 6c65 5f69 6f6d 6d75 5f66 6f72 enable_iommu_for │ │ │ +000fd1f0: 6365 0a20 202d 206c 6f77 5f64 6973 7275 ce. - low_disru │ │ │ +000fd200: 7074 696f 6e0a 2020 2d20 6d65 6469 756d ption. - medium │ │ │ +000fd210: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ +000fd220: 7265 626f 6f74 5f72 6571 7569 7265 640a reboot_required. │ │ │ +000fd230: 2020 2d20 7265 7374 7269 6374 5f73 7472 - restrict_str │ │ │ +000fd240: 6174 6567 790a 2020 2d20 756e 6b6e 6f77 ategy. - unknow │ │ │ +000fd250: 6e5f 7365 7665 7269 7479 0a0a 2d20 6e61 n_severity..- na │ │ │ +000fd260: 6d65 3a20 5570 6461 7465 2067 7275 6220 me: Update grub │ │ │ +000fd270: 6465 6661 756c 7473 2061 6e64 2074 6865 defaults and the │ │ │ +000fd280: 2062 6f6f 746c 6f61 6465 7220 6d65 6e75 bootloader menu │ │ │ +000fd290: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74 . ansible.built │ │ │ +000fd2a0: 696e 2e63 6f6d 6d61 6e64 3a20 2f73 6269 in.command: /sbi │ │ │ +000fd2b0: 6e2f 6772 7562 6279 202d 2d75 7064 6174 n/grubby --updat │ │ │ +000fd2c0: 652d 6b65 726e 656c 3d41 4c4c 202d 2d61 e-kernel=ALL --a │ │ │ +000fd2d0: 7267 733d 2269 6f6d 6d75 3d66 6f72 6365 rgs="iommu=force │ │ │ +000fd2e0: 220a 2020 7768 656e 3a0a 2020 2d20 2820 ". when:. - ( │ │ │ +000fd2f0: 2267 7275 6232 2d63 6f6d 6d6f 6e22 2069 "grub2-common" i │ │ │ +000fd300: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +000fd310: 7061 636b 6167 6573 2061 6e64 2022 6b65 packages and "ke │ │ │ +000fd320: 726e 656c 2220 696e 2061 6e73 6962 6c65 rnel" in ansible │ │ │ +000fd330: 5f66 6163 7473 2e70 6163 6b61 6765 730a _facts.packages. │ │ │ +000fd340: 2020 2020 290a 2020 2d20 2867 7275 6262 ). - (grubb │ │ │ +000fd350: 795f 696e 666f 2e73 7464 6f75 7420 6973 y_info.stdout is │ │ │ +000fd360: 206e 6f74 2073 6561 7263 6828 2769 6f6d not search('iom │ │ │ +000fd370: 6d75 3d66 6f72 6365 2729 2920 6f72 2028 mu=force')) or ( │ │ │ +000fd380: 2865 7463 5f64 6566 6175 6c74 5f67 7275 (etc_default_gru │ │ │ +000fd390: 625b 2763 6f6e 7465 6e74 275d 0a20 2020 b['content']. │ │ │ +000fd3a0: 207c 2062 3634 6465 636f 6465 2920 6973 | b64decode) is │ │ │ +000fd3b0: 206e 6f74 2073 6561 7263 6828 2769 6f6d not search('iom │ │ │ +000fd3c0: 6d75 3d66 6f72 6365 2729 290a 2020 7461 mu=force')). ta │ │ │ +000fd3d0: 6773 3a0a 2020 2d20 6772 7562 325f 656e gs:. - grub2_en │ │ │ +000fd3e0: 6162 6c65 5f69 6f6d 6d75 5f66 6f72 6365 able_iommu_force │ │ │ +000fd3f0: 0a20 202d 206c 6f77 5f64 6973 7275 7074 . - low_disrupt │ │ │ +000fd400: 696f 6e0a 2020 2d20 6d65 6469 756d 5f63 ion. - medium_c │ │ │ +000fd410: 6f6d 706c 6578 6974 790a 2020 2d20 7265 omplexity. - re │ │ │ +000fd420: 626f 6f74 5f72 6571 7569 7265 640a 2020 boot_required. │ │ │ +000fd430: 2d20 7265 7374 7269 6374 5f73 7472 6174 - restrict_strat │ │ │ +000fd440: 6567 790a 2020 2d20 756e 6b6e 6f77 6e5f egy. - unknown_ │ │ │ +000fd450: 7365 7665 7269 7479 0a3c 2f63 6f64 653e severity. │ │ │ +000fd460: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063
Remedia │ │ │ +000fd510: 7469 6f6e 204f 5342 7569 6c64 2042 6c75 tion OSBuild Blu │ │ │ +000fd520: 6570 7269 6e74 2073 6e69 7070 6574 20e2 eprint snippet . │ │ │ +000fd530: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
<
│ │ │ +000fd570: 636f 6465 3e5b 6375 7374 6f6d 697a 6174  code>[customizat
│ │ │ +000fd580: 696f 6e73 2e6b 6572 6e65 6c5d 0a61 7070  ions.kernel].app
│ │ │ +000fd590: 656e 6420 3d20 2269 6f6d 6d75 3d66 6f72  end = "iommu=for
│ │ │ +000fd5a0: 6365 220a 3c2f 636f 6465 3e3c 2f70 7265  ce".
Remed │ │ │ -000fe650: 6961 7469 6f6e 204f 5342 7569 6c64 2042 iation OSBuild B │ │ │ -000fe660: 6c75 6570 7269 6e74 2073 6e69 7070 6574 lueprint snippet │ │ │ -000fe670: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
[customiz
│ │ │ -000fe6c0: 6174 696f 6e73 2e6b 6572 6e65 6c5d 0a61  ations.kernel].a
│ │ │ -000fe6d0: 7070 656e 6420 3d20 226c 3174 663d 3c61  ppend = "l1tf=full,
│ │ │ -000fe740: 666f 7263 653c 2f61 6262 723e 220a 3c2f  force".
Re │ │ │ -000fe800: 6d65 6469 6174 696f 6e20 416e 7369 626c mediation Ansibl │ │ │ -000fe810: 6520 736e 6970 7065 7420 e287 b23c 2f61 e snippet ...
< │ │ │ -000fe8b0: 7464 3e6d 6564 6975 6d3c 2f74 643e 3c2f td>medium │ │ │ -000fe8f0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -000fe900: 3c74 643e 7472 7565 3c2f 7464 3e3c 2f74
- name: Gather 
│ │ │ -000fe960: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -000fe970: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -000fe980: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -000fe990: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -000fe9a0: 2067 7275 6232 5f6c 3174 665f 6172 6775   grub2_l1tf_argu
│ │ │ -000fe9b0: 6d65 6e74 0a20 202d 2068 6967 685f 7365  ment.  - high_se
│ │ │ -000fe9c0: 7665 7269 7479 0a20 202d 206c 6f77 5f64  verity.  - low_d
│ │ │ -000fe9d0: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -000fe9e0: 6469 756d 5f63 6f6d 706c 6578 6974 790a  dium_complexity.
│ │ │ -000fe9f0: 2020 2d20 7265 626f 6f74 5f72 6571 7569    - reboot_requi
│ │ │ -000fea00: 7265 640a 2020 2d20 7265 7374 7269 6374  red.  - restrict
│ │ │ -000fea10: 5f73 7472 6174 6567 790a 2d20 6e61 6d65  _strategy.- name
│ │ │ -000fea20: 3a20 5843 4344 4620 5661 6c75 6520 7661  : XCCDF Value va
│ │ │ -000fea30: 725f 6c31 7466 5f6f 7074 696f 6e73 2023  r_l1tf_options #
│ │ │ -000fea40: 2070 726f 6d6f 7465 2074 6f20 7661 7269   promote to vari
│ │ │ -000fea50: 6162 6c65 0a20 2073 6574 5f66 6163 743a  able.  set_fact:
│ │ │ -000fea60: 0a20 2020 2076 6172 5f6c 3174 665f 6f70  .    var_l1tf_op
│ │ │ -000fea70: 7469 6f6e 733a 2021 2173 7472 203c 6162  tions: !!str full,f
│ │ │ -000feae0: 6f72 6365 3c2f 6162 6272 3e0a 2020 7461  orce.  ta
│ │ │ -000feaf0: 6773 3a0a 2020 2020 2d20 616c 7761 7973  gs:.    - always
│ │ │ -000feb00: 0a0a 2d20 6e61 6d65 3a20 4368 6563 6b20  ..- name: Check 
│ │ │ -000feb10: 6966 206c 3174 6620 6172 6775 6d65 6e74  if l1tf argument
│ │ │ -000feb20: 2069 7320 616c 7265 6164 7920 7072 6573   is already pres
│ │ │ -000feb30: 656e 7420 696e 202f 6574 632f 6465 6661  ent in /etc/defa
│ │ │ -000feb40: 756c 742f 6772 7562 0a20 2061 6e73 6962  ult/grub.  ansib
│ │ │ -000feb50: 6c65 2e62 7569 6c74 696e 2e73 6c75 7270  le.builtin.slurp
│ │ │ -000feb60: 3a0a 2020 2020 7372 633a 202f 6574 632f  :.    src: /etc/
│ │ │ -000feb70: 6465 6661 756c 742f 6772 7562 0a20 2072  default/grub.  r
│ │ │ -000feb80: 6567 6973 7465 723a 2065 7463 5f64 6566  egister: etc_def
│ │ │ -000feb90: 6175 6c74 5f67 7275 620a 2020 7768 656e  ault_grub.  when
│ │ │ -000feba0: 3a20 2820 2267 7275 6232 2d63 6f6d 6d6f  : ( "grub2-commo
│ │ │ -000febb0: 6e22 2069 6e20 616e 7369 626c 655f 6661  n" in ansible_fa
│ │ │ -000febc0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -000febd0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -000febe0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -000febf0: 6765 730a 2020 2020 290a 2020 7461 6773  ges.    ).  tags
│ │ │ -000fec00: 3a0a 2020 2d20 6772 7562 325f 6c31 7466  :.  - grub2_l1tf
│ │ │ -000fec10: 5f61 7267 756d 656e 740a 2020 2d20 6869  _argument.  - hi
│ │ │ -000fec20: 6768 5f73 6576 6572 6974 790a 2020 2d20  gh_severity.  - 
│ │ │ -000fec30: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -000fec40: 202d 206d 6564 6975 6d5f 636f 6d70 6c65   - medium_comple
│ │ │ -000fec50: 7869 7479 0a20 202d 2072 6562 6f6f 745f  xity.  - reboot_
│ │ │ -000fec60: 7265 7175 6972 6564 0a20 202d 2072 6573  required.  - res
│ │ │ -000fec70: 7472 6963 745f 7374 7261 7465 6779 0a0a  trict_strategy..
│ │ │ -000fec80: 2d20 6e61 6d65 3a20 4368 6563 6b20 6966  - name: Check if
│ │ │ -000fec90: 206c 3174 6620 6172 6775 6d65 6e74 2069   l1tf argument i
│ │ │ -000feca0: 7320 616c 7265 6164 7920 7072 6573 656e  s already presen
│ │ │ -000fecb0: 740a 2020 616e 7369 626c 652e 6275 696c  t.  ansible.buil
│ │ │ -000fecc0: 7469 6e2e 636f 6d6d 616e 643a 202f 7362  tin.command: /sb
│ │ │ -000fecd0: 696e 2f67 7275 6262 7920 2d2d 696e 666f  in/grubby --info
│ │ │ -000fece0: 3d41 4c4c 0a20 2072 6567 6973 7465 723a  =ALL.  register:
│ │ │ -000fecf0: 2067 7275 6262 795f 696e 666f 0a20 2063   grubby_info.  c
│ │ │ -000fed00: 6865 636b 5f6d 6f64 653a 2066 616c 7365  heck_mode: false
│ │ │ -000fed10: 0a20 2063 6861 6e67 6564 5f77 6865 6e3a  .  changed_when:
│ │ │ -000fed20: 2066 616c 7365 0a20 2066 6169 6c65 645f   false.  failed_
│ │ │ -000fed30: 7768 656e 3a20 6661 6c73 650a 2020 7768  when: false.  wh
│ │ │ -000fed40: 656e 3a20 2820 2267 7275 6232 2d63 6f6d  en: ( "grub2-com
│ │ │ -000fed50: 6d6f 6e22 2069 6e20 616e 7369 626c 655f  mon" in ansible_
│ │ │ -000fed60: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -000fed70: 6e64 2022 6b65 726e 656c 2220 696e 2061  nd "kernel" in a
│ │ │ -000fed80: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -000fed90: 6b61 6765 730a 2020 2020 290a 2020 7461  kages.    ).  ta
│ │ │ -000feda0: 6773 3a0a 2020 2d20 6772 7562 325f 6c31  gs:.  - grub2_l1
│ │ │ -000fedb0: 7466 5f61 7267 756d 656e 740a 2020 2d20  tf_argument.  - 
│ │ │ -000fedc0: 6869 6768 5f73 6576 6572 6974 790a 2020  high_severity.  
│ │ │ -000fedd0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -000fede0: 0a20 202d 206d 6564 6975 6d5f 636f 6d70  .  - medium_comp
│ │ │ -000fedf0: 6c65 7869 7479 0a20 202d 2072 6562 6f6f  lexity.  - reboo
│ │ │ -000fee00: 745f 7265 7175 6972 6564 0a20 202d 2072  t_required.  - r
│ │ │ -000fee10: 6573 7472 6963 745f 7374 7261 7465 6779  estrict_strategy
│ │ │ -000fee20: 0a0a 2d20 6e61 6d65 3a20 5570 6461 7465  ..- name: Update
│ │ │ -000fee30: 2067 7275 6220 6465 6661 756c 7473 2061   grub defaults a
│ │ │ -000fee40: 6e64 2074 6865 2062 6f6f 746c 6f61 6465  nd the bootloade
│ │ │ -000fee50: 7220 6d65 6e75 0a20 2061 6e73 6962 6c65  r menu.  ansible
│ │ │ -000fee60: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ -000fee70: 3a20 2f73 6269 6e2f 6772 7562 6279 202d  : /sbin/grubby -
│ │ │ -000fee80: 2d75 7064 6174 652d 6b65 726e 656c 3d41  -update-kernel=A
│ │ │ -000fee90: 4c4c 202d 2d61 7267 733d 226c 3174 663d  LL --args="l1tf=
│ │ │ -000feea0: 7b7b 2076 6172 5f6c 3174 665f 6f70 7469  {{ var_l1tf_opti
│ │ │ -000feeb0: 6f6e 730a 2020 2020 7d7d 220a 2020 7768  ons.    }}".  wh
│ │ │ -000feec0: 656e 3a0a 2020 2d20 2820 2267 7275 6232  en:.  - ( "grub2
│ │ │ -000feed0: 2d63 6f6d 6d6f 6e22 2069 6e20 616e 7369  -common" in ansi
│ │ │ -000feee0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -000feef0: 6573 2061 6e64 2022 6b65 726e 656c 2220  es and "kernel" 
│ │ │ -000fef00: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -000fef10: 2e70 6163 6b61 6765 730a 2020 2020 290a  .packages.    ).
│ │ │ -000fef20: 2020 2d20 2867 7275 6262 795f 696e 666f    - (grubby_info
│ │ │ -000fef30: 2e73 7464 6f75 7420 6973 206e 6f74 2073  .stdout is not s
│ │ │ -000fef40: 6561 7263 6828 276c 3174 663d 2720 7e20  earch('l1tf=' ~ 
│ │ │ -000fef50: 7661 725f 6c31 7466 5f6f 7074 696f 6e73  var_l1tf_options
│ │ │ -000fef60: 2929 206f 7220 2828 6574 635f 6465 6661  )) or ((etc_defa
│ │ │ -000fef70: 756c 745f 6772 7562 5b27 636f 6e74 656e  ult_grub['conten
│ │ │ -000fef80: 7427 5d0a 2020 2020 7c20 6236 3464 6563  t'].    | b64dec
│ │ │ -000fef90: 6f64 6529 2069 7320 6e6f 7420 7365 6172  ode) is not sear
│ │ │ -000fefa0: 6368 2827 6c31 7466 3d27 207e 2076 6172  ch('l1tf=' ~ var
│ │ │ -000fefb0: 5f6c 3174 665f 6f70 7469 6f6e 7329 290a  _l1tf_options)).
│ │ │ -000fefc0: 2020 7461 6773 3a0a 2020 2d20 6772 7562    tags:.  - grub
│ │ │ -000fefd0: 325f 6c31 7466 5f61 7267 756d 656e 740a  2_l1tf_argument.
│ │ │ -000fefe0: 2020 2d20 6869 6768 5f73 6576 6572 6974    - high_severit
│ │ │ -000feff0: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -000ff000: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ -000ff010: 636f 6d70 6c65 7869 7479 0a20 202d 2072  complexity.  - r
│ │ │ -000ff020: 6562 6f6f 745f 7265 7175 6972 6564 0a20  eboot_required. 
│ │ │ -000ff030: 202d 2072 6573 7472 6963 745f 7374 7261   - restrict_stra
│ │ │ -000ff040: 7465 6779 0a3c 2f63 6f64 653e 3c2f 7072  tegy.
C │ │ │ -000fe8a0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disru │ │ │ -000fe8d0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -000fe8e0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:true
Strate │ │ │ -000fe920: 6779 3a3c 2f74 683e 3c74 643e 7265 7374 gy:rest │ │ │ -000fe930: 7269 6374 3c2f 7464 3e3c 2f74 723e 3c2f rict
│ │ │ +000fe710: 3c74 723e 3c74 683e 4469 7372 7570 7469 < │ │ │ +000fe760: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
- 
│ │ │ +000fe7a0: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ +000fe7b0: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ +000fe7c0: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ +000fe7d0: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ +000fe7e0: 6f0a 2020 7461 6773 3a0a 2020 2d20 6772  o.  tags:.  - gr
│ │ │ +000fe7f0: 7562 325f 6c31 7466 5f61 7267 756d 656e  ub2_l1tf_argumen
│ │ │ +000fe800: 740a 2020 2d20 6869 6768 5f73 6576 6572  t.  - high_sever
│ │ │ +000fe810: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +000fe820: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +000fe830: 6d5f 636f 6d70 6c65 7869 7479 0a20 202d  m_complexity.  -
│ │ │ +000fe840: 2072 6562 6f6f 745f 7265 7175 6972 6564   reboot_required
│ │ │ +000fe850: 0a20 202d 2072 6573 7472 6963 745f 7374  .  - restrict_st
│ │ │ +000fe860: 7261 7465 6779 0a2d 206e 616d 653a 2058  rategy.- name: X
│ │ │ +000fe870: 4343 4446 2056 616c 7565 2076 6172 5f6c  CCDF Value var_l
│ │ │ +000fe880: 3174 665f 6f70 7469 6f6e 7320 2320 7072  1tf_options # pr
│ │ │ +000fe890: 6f6d 6f74 6520 746f 2076 6172 6961 626c  omote to variabl
│ │ │ +000fe8a0: 650a 2020 7365 745f 6661 6374 3a0a 2020  e.  set_fact:.  
│ │ │ +000fe8b0: 2020 7661 725f 6c31 7466 5f6f 7074 696f    var_l1tf_optio
│ │ │ +000fe8c0: 6e73 3a20 2121 7374 7220 3c61 6262 7220  ns: !!str full,forc
│ │ │ +000fe930: 653c 2f61 6262 723e 0a20 2074 6167 733a  e.  tags:
│ │ │ +000fe940: 0a20 2020 202d 2061 6c77 6179 730a 0a2d  .    - always..-
│ │ │ +000fe950: 206e 616d 653a 2043 6865 636b 2069 6620   name: Check if 
│ │ │ +000fe960: 6c31 7466 2061 7267 756d 656e 7420 6973  l1tf argument is
│ │ │ +000fe970: 2061 6c72 6561 6479 2070 7265 7365 6e74   already present
│ │ │ +000fe980: 2069 6e20 2f65 7463 2f64 6566 6175 6c74   in /etc/default
│ │ │ +000fe990: 2f67 7275 620a 2020 616e 7369 626c 652e  /grub.  ansible.
│ │ │ +000fe9a0: 6275 696c 7469 6e2e 736c 7572 703a 0a20  builtin.slurp:. 
│ │ │ +000fe9b0: 2020 2073 7263 3a20 2f65 7463 2f64 6566     src: /etc/def
│ │ │ +000fe9c0: 6175 6c74 2f67 7275 620a 2020 7265 6769  ault/grub.  regi
│ │ │ +000fe9d0: 7374 6572 3a20 6574 635f 6465 6661 756c  ster: etc_defaul
│ │ │ +000fe9e0: 745f 6772 7562 0a20 2077 6865 6e3a 2028  t_grub.  when: (
│ │ │ +000fe9f0: 2022 6772 7562 322d 636f 6d6d 6f6e 2220   "grub2-common" 
│ │ │ +000fea00: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +000fea10: 2e70 6163 6b61 6765 7320 616e 6420 226b  .packages and "k
│ │ │ +000fea20: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +000fea30: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +000fea40: 0a20 2020 2029 0a20 2074 6167 733a 0a20  .    ).  tags:. 
│ │ │ +000fea50: 202d 2067 7275 6232 5f6c 3174 665f 6172   - grub2_l1tf_ar
│ │ │ +000fea60: 6775 6d65 6e74 0a20 202d 2068 6967 685f  gument.  - high_
│ │ │ +000fea70: 7365 7665 7269 7479 0a20 202d 206c 6f77  severity.  - low
│ │ │ +000fea80: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +000fea90: 6d65 6469 756d 5f63 6f6d 706c 6578 6974  medium_complexit
│ │ │ +000feaa0: 790a 2020 2d20 7265 626f 6f74 5f72 6571  y.  - reboot_req
│ │ │ +000feab0: 7569 7265 640a 2020 2d20 7265 7374 7269  uired.  - restri
│ │ │ +000feac0: 6374 5f73 7472 6174 6567 790a 0a2d 206e  ct_strategy..- n
│ │ │ +000fead0: 616d 653a 2043 6865 636b 2069 6620 6c31  ame: Check if l1
│ │ │ +000feae0: 7466 2061 7267 756d 656e 7420 6973 2061  tf argument is a
│ │ │ +000feaf0: 6c72 6561 6479 2070 7265 7365 6e74 0a20  lready present. 
│ │ │ +000feb00: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +000feb10: 2e63 6f6d 6d61 6e64 3a20 2f73 6269 6e2f  .command: /sbin/
│ │ │ +000feb20: 6772 7562 6279 202d 2d69 6e66 6f3d 414c  grubby --info=AL
│ │ │ +000feb30: 4c0a 2020 7265 6769 7374 6572 3a20 6772  L.  register: gr
│ │ │ +000feb40: 7562 6279 5f69 6e66 6f0a 2020 6368 6563  ubby_info.  chec
│ │ │ +000feb50: 6b5f 6d6f 6465 3a20 6661 6c73 650a 2020  k_mode: false.  
│ │ │ +000feb60: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ +000feb70: 6c73 650a 2020 6661 696c 6564 5f77 6865  lse.  failed_whe
│ │ │ +000feb80: 6e3a 2066 616c 7365 0a20 2077 6865 6e3a  n: false.  when:
│ │ │ +000feb90: 2028 2022 6772 7562 322d 636f 6d6d 6f6e   ( "grub2-common
│ │ │ +000feba0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +000febb0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +000febc0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +000febd0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +000febe0: 6573 0a20 2020 2029 0a20 2074 6167 733a  es.    ).  tags:
│ │ │ +000febf0: 0a20 202d 2067 7275 6232 5f6c 3174 665f  .  - grub2_l1tf_
│ │ │ +000fec00: 6172 6775 6d65 6e74 0a20 202d 2068 6967  argument.  - hig
│ │ │ +000fec10: 685f 7365 7665 7269 7479 0a20 202d 206c  h_severity.  - l
│ │ │ +000fec20: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +000fec30: 2d20 6d65 6469 756d 5f63 6f6d 706c 6578  - medium_complex
│ │ │ +000fec40: 6974 790a 2020 2d20 7265 626f 6f74 5f72  ity.  - reboot_r
│ │ │ +000fec50: 6571 7569 7265 640a 2020 2d20 7265 7374  equired.  - rest
│ │ │ +000fec60: 7269 6374 5f73 7472 6174 6567 790a 0a2d  rict_strategy..-
│ │ │ +000fec70: 206e 616d 653a 2055 7064 6174 6520 6772   name: Update gr
│ │ │ +000fec80: 7562 2064 6566 6175 6c74 7320 616e 6420  ub defaults and 
│ │ │ +000fec90: 7468 6520 626f 6f74 6c6f 6164 6572 206d  the bootloader m
│ │ │ +000feca0: 656e 750a 2020 616e 7369 626c 652e 6275  enu.  ansible.bu
│ │ │ +000fecb0: 696c 7469 6e2e 636f 6d6d 616e 643a 202f  iltin.command: /
│ │ │ +000fecc0: 7362 696e 2f67 7275 6262 7920 2d2d 7570  sbin/grubby --up
│ │ │ +000fecd0: 6461 7465 2d6b 6572 6e65 6c3d 414c 4c20  date-kernel=ALL 
│ │ │ +000fece0: 2d2d 6172 6773 3d22 6c31 7466 3d7b 7b20  --args="l1tf={{ 
│ │ │ +000fecf0: 7661 725f 6c31 7466 5f6f 7074 696f 6e73  var_l1tf_options
│ │ │ +000fed00: 0a20 2020 207d 7d22 0a20 2077 6865 6e3a  .    }}".  when:
│ │ │ +000fed10: 0a20 202d 2028 2022 6772 7562 322d 636f  .  - ( "grub2-co
│ │ │ +000fed20: 6d6d 6f6e 2220 696e 2061 6e73 6962 6c65  mmon" in ansible
│ │ │ +000fed30: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +000fed40: 616e 6420 226b 6572 6e65 6c22 2069 6e20  and "kernel" in 
│ │ │ +000fed50: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +000fed60: 636b 6167 6573 0a20 2020 2029 0a20 202d  ckages.    ).  -
│ │ │ +000fed70: 2028 6772 7562 6279 5f69 6e66 6f2e 7374   (grubby_info.st
│ │ │ +000fed80: 646f 7574 2069 7320 6e6f 7420 7365 6172  dout is not sear
│ │ │ +000fed90: 6368 2827 6c31 7466 3d27 207e 2076 6172  ch('l1tf=' ~ var
│ │ │ +000feda0: 5f6c 3174 665f 6f70 7469 6f6e 7329 2920  _l1tf_options)) 
│ │ │ +000fedb0: 6f72 2028 2865 7463 5f64 6566 6175 6c74  or ((etc_default
│ │ │ +000fedc0: 5f67 7275 625b 2763 6f6e 7465 6e74 275d  _grub['content']
│ │ │ +000fedd0: 0a20 2020 207c 2062 3634 6465 636f 6465  .    | b64decode
│ │ │ +000fede0: 2920 6973 206e 6f74 2073 6561 7263 6828  ) is not search(
│ │ │ +000fedf0: 276c 3174 663d 2720 7e20 7661 725f 6c31  'l1tf=' ~ var_l1
│ │ │ +000fee00: 7466 5f6f 7074 696f 6e73 2929 0a20 2074  tf_options)).  t
│ │ │ +000fee10: 6167 733a 0a20 202d 2067 7275 6232 5f6c  ags:.  - grub2_l
│ │ │ +000fee20: 3174 665f 6172 6775 6d65 6e74 0a20 202d  1tf_argument.  -
│ │ │ +000fee30: 2068 6967 685f 7365 7665 7269 7479 0a20   high_severity. 
│ │ │ +000fee40: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +000fee50: 6e0a 2020 2d20 6d65 6469 756d 5f63 6f6d  n.  - medium_com
│ │ │ +000fee60: 706c 6578 6974 790a 2020 2d20 7265 626f  plexity.  - rebo
│ │ │ +000fee70: 6f74 5f72 6571 7569 7265 640a 2020 2d20  ot_required.  - 
│ │ │ +000fee80: 7265 7374 7269 6374 5f73 7472 6174 6567  restrict_strateg
│ │ │ +000fee90: 790a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  y.
< │ │ │ +000feea0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation OS │ │ │ +000fef50: 4275 696c 6420 426c 7565 7072 696e 7420 Build Blueprint │ │ │ +000fef60: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +000fef70: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
[c
│ │ │ +000fefb0: 7573 746f 6d69 7a61 7469 6f6e 732e 6b65  ustomizations.ke
│ │ │ +000fefc0: 726e 656c 5d0a 6170 7065 6e64 203d 2022  rnel].append = "
│ │ │ +000fefd0: 6c31 7466 3d3c 6162 6272 2074 6974 6c65  l1tf=full,force".
Remediatio │ │ │ -000ffed0: 6e20 4f53 4275 696c 6420 426c 7565 7072 n OSBuild Bluepr │ │ │ -000ffee0: 696e 7420 736e 6970 7065 7420 e287 b23c int snippet ...< │ │ │ -000ffef0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
[customization
│ │ │ -000fff40: 732e 6b65 726e 656c 5d0a 6170 7065 6e64  s.kernel].append
│ │ │ -000fff50: 203d 2022 6d63 653d 3022 0a3c 2f63 6f64   = "mce=0".
Remed │ │ │ -00100010: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ -00100020: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +000fe6f0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +000fe700: 6d65 6469 756d 3c2f 7464 3e3c 2f74 723e medium
Disrupti │ │ │ +000fe720: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +000fe730: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:true
Strategy: │ │ │ +000fe770: 3c2f 7468 3e3c 7464 3e72 6573 7472 6963 restric │ │ │ +000fe780: 743c 2f74 643e 3c2f 7472 3e3c 2f74 6162 t
│ │ │ -001000d0: 3c74 723e 3c74 683e 4469 7372 7570 7469 < │ │ │ -00100120: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
- 
│ │ │ -00100160: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ -00100170: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ -00100180: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ -00100190: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ -001001a0: 6f0a 2020 7461 6773 3a0a 2020 2d20 6772  o.  tags:.  - gr
│ │ │ -001001b0: 7562 325f 6d63 655f 6172 6775 6d65 6e74  ub2_mce_argument
│ │ │ -001001c0: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -001001d0: 696f 6e0a 2020 2d20 6d65 6469 756d 5f63  ion.  - medium_c
│ │ │ -001001e0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ -001001f0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -00100200: 2d20 7265 626f 6f74 5f72 6571 7569 7265  - reboot_require
│ │ │ -00100210: 640a 2020 2d20 7265 7374 7269 6374 5f73  d.  - restrict_s
│ │ │ -00100220: 7472 6174 6567 790a 0a2d 206e 616d 653a  trategy..- name:
│ │ │ -00100230: 2043 6865 636b 2069 6620 6d63 6520 6172   Check if mce ar
│ │ │ -00100240: 6775 6d65 6e74 2069 7320 616c 7265 6164  gument is alread
│ │ │ -00100250: 7920 7072 6573 656e 7420 696e 202f 6574  y present in /et
│ │ │ -00100260: 632f 6465 6661 756c 742f 6772 7562 0a20  c/default/grub. 
│ │ │ -00100270: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -00100280: 2e73 6c75 7270 3a0a 2020 2020 7372 633a  .slurp:.    src:
│ │ │ -00100290: 202f 6574 632f 6465 6661 756c 742f 6772   /etc/default/gr
│ │ │ -001002a0: 7562 0a20 2072 6567 6973 7465 723a 2065  ub.  register: e
│ │ │ -001002b0: 7463 5f64 6566 6175 6c74 5f67 7275 620a  tc_default_grub.
│ │ │ -001002c0: 2020 7768 656e 3a20 2820 2267 7275 6232    when: ( "grub2
│ │ │ -001002d0: 2d63 6f6d 6d6f 6e22 2069 6e20 616e 7369  -common" in ansi
│ │ │ -001002e0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001002f0: 6573 2061 6e64 2022 6b65 726e 656c 2220  es and "kernel" 
│ │ │ -00100300: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -00100310: 2e70 6163 6b61 6765 730a 2020 2020 290a  .packages.    ).
│ │ │ -00100320: 2020 7461 6773 3a0a 2020 2d20 6772 7562    tags:.  - grub
│ │ │ -00100330: 325f 6d63 655f 6172 6775 6d65 6e74 0a20  2_mce_argument. 
│ │ │ -00100340: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -00100350: 6e0a 2020 2d20 6d65 6469 756d 5f63 6f6d  n.  - medium_com
│ │ │ -00100360: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -00100370: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -00100380: 7265 626f 6f74 5f72 6571 7569 7265 640a  reboot_required.
│ │ │ -00100390: 2020 2d20 7265 7374 7269 6374 5f73 7472    - restrict_str
│ │ │ -001003a0: 6174 6567 790a 0a2d 206e 616d 653a 2043  ategy..- name: C
│ │ │ -001003b0: 6865 636b 2069 6620 6d63 6520 6172 6775  heck if mce argu
│ │ │ -001003c0: 6d65 6e74 2069 7320 616c 7265 6164 7920  ment is already 
│ │ │ -001003d0: 7072 6573 656e 740a 2020 616e 7369 626c  present.  ansibl
│ │ │ -001003e0: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ -001003f0: 643a 202f 7362 696e 2f67 7275 6262 7920  d: /sbin/grubby 
│ │ │ -00100400: 2d2d 696e 666f 3d41 4c4c 0a20 2072 6567  --info=ALL.  reg
│ │ │ -00100410: 6973 7465 723a 2067 7275 6262 795f 696e  ister: grubby_in
│ │ │ -00100420: 666f 0a20 2063 6865 636b 5f6d 6f64 653a  fo.  check_mode:
│ │ │ -00100430: 2066 616c 7365 0a20 2063 6861 6e67 6564   false.  changed
│ │ │ -00100440: 5f77 6865 6e3a 2066 616c 7365 0a20 2066  _when: false.  f
│ │ │ -00100450: 6169 6c65 645f 7768 656e 3a20 6661 6c73  ailed_when: fals
│ │ │ -00100460: 650a 2020 7768 656e 3a20 2820 2267 7275  e.  when: ( "gru
│ │ │ -00100470: 6232 2d63 6f6d 6d6f 6e22 2069 6e20 616e  b2-common" in an
│ │ │ -00100480: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -00100490: 6167 6573 2061 6e64 2022 6b65 726e 656c  ages and "kernel
│ │ │ -001004a0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001004b0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001004c0: 290a 2020 7461 6773 3a0a 2020 2d20 6772  ).  tags:.  - gr
│ │ │ -001004d0: 7562 325f 6d63 655f 6172 6775 6d65 6e74  ub2_mce_argument
│ │ │ -001004e0: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -001004f0: 696f 6e0a 2020 2d20 6d65 6469 756d 5f63  ion.  - medium_c
│ │ │ -00100500: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ -00100510: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -00100520: 2d20 7265 626f 6f74 5f72 6571 7569 7265  - reboot_require
│ │ │ -00100530: 640a 2020 2d20 7265 7374 7269 6374 5f73  d.  - restrict_s
│ │ │ -00100540: 7472 6174 6567 790a 0a2d 206e 616d 653a  trategy..- name:
│ │ │ -00100550: 2055 7064 6174 6520 6772 7562 2064 6566   Update grub def
│ │ │ -00100560: 6175 6c74 7320 616e 6420 7468 6520 626f  aults and the bo
│ │ │ -00100570: 6f74 6c6f 6164 6572 206d 656e 750a 2020  otloader menu.  
│ │ │ -00100580: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -00100590: 636f 6d6d 616e 643a 202f 7362 696e 2f67  command: /sbin/g
│ │ │ -001005a0: 7275 6262 7920 2d2d 7570 6461 7465 2d6b  rubby --update-k
│ │ │ -001005b0: 6572 6e65 6c3d 414c 4c20 2d2d 6172 6773  ernel=ALL --args
│ │ │ -001005c0: 3d22 6d63 653d 3022 0a20 2077 6865 6e3a  ="mce=0".  when:
│ │ │ -001005d0: 0a20 202d 2028 2022 6772 7562 322d 636f  .  - ( "grub2-co
│ │ │ -001005e0: 6d6d 6f6e 2220 696e 2061 6e73 6962 6c65  mmon" in ansible
│ │ │ -001005f0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -00100600: 616e 6420 226b 6572 6e65 6c22 2069 6e20  and "kernel" in 
│ │ │ -00100610: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -00100620: 636b 6167 6573 0a20 2020 2029 0a20 202d  ckages.    ).  -
│ │ │ -00100630: 2028 6772 7562 6279 5f69 6e66 6f2e 7374   (grubby_info.st
│ │ │ -00100640: 646f 7574 2069 7320 6e6f 7420 7365 6172  dout is not sear
│ │ │ -00100650: 6368 2827 6d63 653d 3027 2929 206f 7220  ch('mce=0')) or 
│ │ │ -00100660: 2828 6574 635f 6465 6661 756c 745f 6772  ((etc_default_gr
│ │ │ -00100670: 7562 5b27 636f 6e74 656e 7427 5d20 7c0a  ub['content'] |.
│ │ │ -00100680: 2020 2020 6236 3464 6563 6f64 6529 2069      b64decode) i
│ │ │ -00100690: 7320 6e6f 7420 7365 6172 6368 2827 6d63  s not search('mc
│ │ │ -001006a0: 653d 3027 2929 0a20 2074 6167 733a 0a20  e=0')).  tags:. 
│ │ │ -001006b0: 202d 2067 7275 6232 5f6d 6365 5f61 7267   - grub2_mce_arg
│ │ │ -001006c0: 756d 656e 740a 2020 2d20 6c6f 775f 6469  ument.  - low_di
│ │ │ -001006d0: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ -001006e0: 6975 6d5f 636f 6d70 6c65 7869 7479 0a20  ium_complexity. 
│ │ │ -001006f0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -00100700: 7479 0a20 202d 2072 6562 6f6f 745f 7265  ty.  - reboot_re
│ │ │ -00100710: 7175 6972 6564 0a20 202d 2072 6573 7472  quired.  - restr
│ │ │ -00100720: 6963 745f 7374 7261 7465 6779 0a3c 2f63  ict_strategy.
< │ │ │ +000fff60: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
< │ │ │ +000fff90: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +000fffb0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>Strategy: │ │ │ +000ffff0: 3c74 643e 7265 7374 7269 6374 3c2f 7464
Comp │ │ │ -001000b0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -001000c0: 6d65 6469 756d 3c2f 7464 3e3c 2f74 723e medium
Disrupti │ │ │ -001000e0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -001000f0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:true
Strategy: │ │ │ -00100130: 3c2f 7468 3e3c 7464 3e72 6573 7472 6963 restric │ │ │ -00100140: 743c 2f74 643e 3c2f 7472 3e3c 2f74 6162 t
Complexit │ │ │ +000fff70: 793a 3c2f 7468 3e3c 7464 3e6d 6564 6975 y:mediu │ │ │ +000fff80: 6d3c 2f74 643e 3c2f 7472 3e3c 7472 3e3c m
low
Rebo │ │ │ +000fffc0: 6f74 3a3c 2f74 683e 3c74 643e 7472 7565 ot:true │ │ │ +000fffd0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
restrict

- name: │ │ │ +00100020: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ +00100030: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ +00100040: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ +00100050: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ +00100060: 6167 733a 0a20 202d 2067 7275 6232 5f6d ags:. - grub2_m │ │ │ +00100070: 6365 5f61 7267 756d 656e 740a 2020 2d20 ce_argument. - │ │ │ +00100080: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20 low_disruption. │ │ │ +00100090: 202d 206d 6564 6975 6d5f 636f 6d70 6c65 - medium_comple │ │ │ +001000a0: 7869 7479 0a20 202d 206d 6564 6975 6d5f xity. - medium_ │ │ │ +001000b0: 7365 7665 7269 7479 0a20 202d 2072 6562 severity. - reb │ │ │ +001000c0: 6f6f 745f 7265 7175 6972 6564 0a20 202d oot_required. - │ │ │ +001000d0: 2072 6573 7472 6963 745f 7374 7261 7465 restrict_strate │ │ │ +001000e0: 6779 0a0a 2d20 6e61 6d65 3a20 4368 6563 gy..- name: Chec │ │ │ +001000f0: 6b20 6966 206d 6365 2061 7267 756d 656e k if mce argumen │ │ │ +00100100: 7420 6973 2061 6c72 6561 6479 2070 7265 t is already pre │ │ │ +00100110: 7365 6e74 2069 6e20 2f65 7463 2f64 6566 sent in /etc/def │ │ │ +00100120: 6175 6c74 2f67 7275 620a 2020 616e 7369 ault/grub. ansi │ │ │ +00100130: 626c 652e 6275 696c 7469 6e2e 736c 7572 ble.builtin.slur │ │ │ +00100140: 703a 0a20 2020 2073 7263 3a20 2f65 7463 p:. src: /etc │ │ │ +00100150: 2f64 6566 6175 6c74 2f67 7275 620a 2020 /default/grub. │ │ │ +00100160: 7265 6769 7374 6572 3a20 6574 635f 6465 register: etc_de │ │ │ +00100170: 6661 756c 745f 6772 7562 0a20 2077 6865 fault_grub. whe │ │ │ +00100180: 6e3a 2028 2022 6772 7562 322d 636f 6d6d n: ( "grub2-comm │ │ │ +00100190: 6f6e 2220 696e 2061 6e73 6962 6c65 5f66 on" in ansible_f │ │ │ +001001a0: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ +001001b0: 6420 226b 6572 6e65 6c22 2069 6e20 616e d "kernel" in an │ │ │ +001001c0: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +001001d0: 6167 6573 0a20 2020 2029 0a20 2074 6167 ages. ). tag │ │ │ +001001e0: 733a 0a20 202d 2067 7275 6232 5f6d 6365 s:. - grub2_mce │ │ │ +001001f0: 5f61 7267 756d 656e 740a 2020 2d20 6c6f _argument. - lo │ │ │ +00100200: 775f 6469 7372 7570 7469 6f6e 0a20 202d w_disruption. - │ │ │ +00100210: 206d 6564 6975 6d5f 636f 6d70 6c65 7869 medium_complexi │ │ │ +00100220: 7479 0a20 202d 206d 6564 6975 6d5f 7365 ty. - medium_se │ │ │ +00100230: 7665 7269 7479 0a20 202d 2072 6562 6f6f verity. - reboo │ │ │ +00100240: 745f 7265 7175 6972 6564 0a20 202d 2072 t_required. - r │ │ │ +00100250: 6573 7472 6963 745f 7374 7261 7465 6779 estrict_strategy │ │ │ +00100260: 0a0a 2d20 6e61 6d65 3a20 4368 6563 6b20 ..- name: Check │ │ │ +00100270: 6966 206d 6365 2061 7267 756d 656e 7420 if mce argument │ │ │ +00100280: 6973 2061 6c72 6561 6479 2070 7265 7365 is already prese │ │ │ +00100290: 6e74 0a20 2061 6e73 6962 6c65 2e62 7569 nt. ansible.bui │ │ │ +001002a0: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 2f73 ltin.command: /s │ │ │ +001002b0: 6269 6e2f 6772 7562 6279 202d 2d69 6e66 bin/grubby --inf │ │ │ +001002c0: 6f3d 414c 4c0a 2020 7265 6769 7374 6572 o=ALL. register │ │ │ +001002d0: 3a20 6772 7562 6279 5f69 6e66 6f0a 2020 : grubby_info. │ │ │ +001002e0: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73 check_mode: fals │ │ │ +001002f0: 650a 2020 6368 616e 6765 645f 7768 656e e. changed_when │ │ │ +00100300: 3a20 6661 6c73 650a 2020 6661 696c 6564 : false. failed │ │ │ +00100310: 5f77 6865 6e3a 2066 616c 7365 0a20 2077 _when: false. w │ │ │ +00100320: 6865 6e3a 2028 2022 6772 7562 322d 636f hen: ( "grub2-co │ │ │ +00100330: 6d6d 6f6e 2220 696e 2061 6e73 6962 6c65 mmon" in ansible │ │ │ +00100340: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ +00100350: 616e 6420 226b 6572 6e65 6c22 2069 6e20 and "kernel" in │ │ │ +00100360: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ +00100370: 636b 6167 6573 0a20 2020 2029 0a20 2074 ckages. ). t │ │ │ +00100380: 6167 733a 0a20 202d 2067 7275 6232 5f6d ags:. - grub2_m │ │ │ +00100390: 6365 5f61 7267 756d 656e 740a 2020 2d20 ce_argument. - │ │ │ +001003a0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20 low_disruption. │ │ │ +001003b0: 202d 206d 6564 6975 6d5f 636f 6d70 6c65 - medium_comple │ │ │ +001003c0: 7869 7479 0a20 202d 206d 6564 6975 6d5f xity. - medium_ │ │ │ +001003d0: 7365 7665 7269 7479 0a20 202d 2072 6562 severity. - reb │ │ │ +001003e0: 6f6f 745f 7265 7175 6972 6564 0a20 202d oot_required. - │ │ │ +001003f0: 2072 6573 7472 6963 745f 7374 7261 7465 restrict_strate │ │ │ +00100400: 6779 0a0a 2d20 6e61 6d65 3a20 5570 6461 gy..- name: Upda │ │ │ +00100410: 7465 2067 7275 6220 6465 6661 756c 7473 te grub defaults │ │ │ +00100420: 2061 6e64 2074 6865 2062 6f6f 746c 6f61 and the bootloa │ │ │ +00100430: 6465 7220 6d65 6e75 0a20 2061 6e73 6962 der menu. ansib │ │ │ +00100440: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61 le.builtin.comma │ │ │ +00100450: 6e64 3a20 2f73 6269 6e2f 6772 7562 6279 nd: /sbin/grubby │ │ │ +00100460: 202d 2d75 7064 6174 652d 6b65 726e 656c --update-kernel │ │ │ +00100470: 3d41 4c4c 202d 2d61 7267 733d 226d 6365 =ALL --args="mce │ │ │ +00100480: 3d30 220a 2020 7768 656e 3a0a 2020 2d20 =0". when:. - │ │ │ +00100490: 2820 2267 7275 6232 2d63 6f6d 6d6f 6e22 ( "grub2-common" │ │ │ +001004a0: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +001004b0: 732e 7061 636b 6167 6573 2061 6e64 2022 s.packages and " │ │ │ +001004c0: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ +001004d0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ +001004e0: 730a 2020 2020 290a 2020 2d20 2867 7275 s. ). - (gru │ │ │ +001004f0: 6262 795f 696e 666f 2e73 7464 6f75 7420 bby_info.stdout │ │ │ +00100500: 6973 206e 6f74 2073 6561 7263 6828 276d is not search('m │ │ │ +00100510: 6365 3d30 2729 2920 6f72 2028 2865 7463 ce=0')) or ((etc │ │ │ +00100520: 5f64 6566 6175 6c74 5f67 7275 625b 2763 _default_grub['c │ │ │ +00100530: 6f6e 7465 6e74 275d 207c 0a20 2020 2062 ontent'] |. b │ │ │ +00100540: 3634 6465 636f 6465 2920 6973 206e 6f74 64decode) is not │ │ │ +00100550: 2073 6561 7263 6828 276d 6365 3d30 2729 search('mce=0') │ │ │ +00100560: 290a 2020 7461 6773 3a0a 2020 2d20 6772 ). tags:. - gr │ │ │ +00100570: 7562 325f 6d63 655f 6172 6775 6d65 6e74 ub2_mce_argument │ │ │ +00100580: 0a20 202d 206c 6f77 5f64 6973 7275 7074 . - low_disrupt │ │ │ +00100590: 696f 6e0a 2020 2d20 6d65 6469 756d 5f63 ion. - medium_c │ │ │ +001005a0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65 omplexity. - me │ │ │ +001005b0: 6469 756d 5f73 6576 6572 6974 790a 2020 dium_severity. │ │ │ +001005c0: 2d20 7265 626f 6f74 5f72 6571 7569 7265 - reboot_require │ │ │ +001005d0: 640a 2020 2d20 7265 7374 7269 6374 5f73 d. - restrict_s │ │ │ +001005e0: 7472 6174 6567 790a 3c2f 636f 6465 3e3c trategy.< │ │ │ +001005f0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>

Remediat │ │ │ +001006a0: 696f 6e20 4f53 4275 696c 6420 426c 7565 ion OSBuild Blue │ │ │ +001006b0: 7072 696e 7420 736e 6970 7065 7420 e287 print snippet .. │ │ │ +001006c0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
[customizati
│ │ │ +00100710: 6f6e 732e 6b65 726e 656c 5d0a 6170 7065  ons.kernel].appe
│ │ │ +00100720: 6e64 203d 2022 6d63 653d 3022 0a3c 2f63  nd = "mce=0".
│ │ │ 00100740: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Reme │ │ │ -001019c0: 6469 6174 696f 6e20 4f53 4275 696c 6420 diation OSBuild │ │ │ -001019d0: 426c 7565 7072 696e 7420 736e 6970 7065 Blueprint snippe │ │ │ -001019e0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
[customi │ │ │ -00101a30: 7a61 7469 6f6e 732e 6b65 726e 656c 5d0a zations.kernel]. │ │ │ -00101a40: 6170 7065 6e64 203d 2022 6d64 733d 3c61 append = "mds=full,n │ │ │ -00101ab0: 6f73 6d74 3c2f 6162 6272 3e22 0a3c 2f63 osmt".
│ │ │ -00101ad0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -00101b70: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -00101b80: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -00101b90: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
medium< │ │ │ -00101c60: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00101c70: 7464 3e74 7275 653c 2f74 643e 3c2f 7472 td>true

│ │ │ -00101cc0: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ -00101cd0: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ -00101ce0: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ -00101cf0: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ -00101d00: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ -00101d10: 6772 7562 325f 6d64 735f 6172 6775 6d65  grub2_mds_argume
│ │ │ -00101d20: 6e74 0a20 202d 206c 6f77 5f64 6973 7275  nt.  - low_disru
│ │ │ -00101d30: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ -00101d40: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -00101d50: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -00101d60: 2020 2d20 7265 626f 6f74 5f72 6571 7569    - reboot_requi
│ │ │ -00101d70: 7265 640a 2020 2d20 7265 7374 7269 6374  red.  - restrict
│ │ │ -00101d80: 5f73 7472 6174 6567 790a 2d20 6e61 6d65  _strategy.- name
│ │ │ -00101d90: 3a20 5843 4344 4620 5661 6c75 6520 7661  : XCCDF Value va
│ │ │ -00101da0: 725f 6d64 735f 6f70 7469 6f6e 7320 2320  r_mds_options # 
│ │ │ -00101db0: 7072 6f6d 6f74 6520 746f 2076 6172 6961  promote to varia
│ │ │ -00101dc0: 626c 650a 2020 7365 745f 6661 6374 3a0a  ble.  set_fact:.
│ │ │ -00101dd0: 2020 2020 7661 725f 6d64 735f 6f70 7469      var_mds_opti
│ │ │ -00101de0: 6f6e 733a 2021 2173 7472 203c 6162 6272  ons: !!str full,nosm
│ │ │ -00101e50: 743c 2f61 6262 723e 0a20 2074 6167 733a  t.  tags:
│ │ │ -00101e60: 0a20 2020 202d 2061 6c77 6179 730a 0a2d  .    - always..-
│ │ │ -00101e70: 206e 616d 653a 2043 6865 636b 2069 6620   name: Check if 
│ │ │ -00101e80: 6d64 7320 6172 6775 6d65 6e74 2069 7320  mds argument is 
│ │ │ -00101e90: 616c 7265 6164 7920 7072 6573 656e 7420  already present 
│ │ │ -00101ea0: 696e 202f 6574 632f 6465 6661 756c 742f  in /etc/default/
│ │ │ -00101eb0: 6772 7562 0a20 2061 6e73 6962 6c65 2e62  grub.  ansible.b
│ │ │ -00101ec0: 7569 6c74 696e 2e73 6c75 7270 3a0a 2020  uiltin.slurp:.  
│ │ │ -00101ed0: 2020 7372 633a 202f 6574 632f 6465 6661    src: /etc/defa
│ │ │ -00101ee0: 756c 742f 6772 7562 0a20 2072 6567 6973  ult/grub.  regis
│ │ │ -00101ef0: 7465 723a 2065 7463 5f64 6566 6175 6c74  ter: etc_default
│ │ │ -00101f00: 5f67 7275 620a 2020 7768 656e 3a20 2820  _grub.  when: ( 
│ │ │ -00101f10: 2267 7275 6232 2d63 6f6d 6d6f 6e22 2069  "grub2-common" i
│ │ │ -00101f20: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -00101f30: 7061 636b 6167 6573 2061 6e64 2022 6b65  packages and "ke
│ │ │ -00101f40: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -00101f50: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -00101f60: 2020 2020 290a 2020 7461 6773 3a0a 2020      ).  tags:.  
│ │ │ -00101f70: 2d20 6772 7562 325f 6d64 735f 6172 6775  - grub2_mds_argu
│ │ │ -00101f80: 6d65 6e74 0a20 202d 206c 6f77 5f64 6973  ment.  - low_dis
│ │ │ -00101f90: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ -00101fa0: 756d 5f63 6f6d 706c 6578 6974 790a 2020  um_complexity.  
│ │ │ -00101fb0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -00101fc0: 790a 2020 2d20 7265 626f 6f74 5f72 6571  y.  - reboot_req
│ │ │ -00101fd0: 7569 7265 640a 2020 2d20 7265 7374 7269  uired.  - restri
│ │ │ -00101fe0: 6374 5f73 7472 6174 6567 790a 0a2d 206e  ct_strategy..- n
│ │ │ -00101ff0: 616d 653a 2043 6865 636b 2069 6620 6d64  ame: Check if md
│ │ │ -00102000: 7320 6172 6775 6d65 6e74 2069 7320 616c  s argument is al
│ │ │ -00102010: 7265 6164 7920 7072 6573 656e 740a 2020  ready present.  
│ │ │ -00102020: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -00102030: 636f 6d6d 616e 643a 202f 7362 696e 2f67  command: /sbin/g
│ │ │ -00102040: 7275 6262 7920 2d2d 696e 666f 3d41 4c4c  rubby --info=ALL
│ │ │ -00102050: 0a20 2072 6567 6973 7465 723a 2067 7275  .  register: gru
│ │ │ -00102060: 6262 795f 696e 666f 0a20 2063 6865 636b  bby_info.  check
│ │ │ -00102070: 5f6d 6f64 653a 2066 616c 7365 0a20 2063  _mode: false.  c
│ │ │ -00102080: 6861 6e67 6564 5f77 6865 6e3a 2066 616c  hanged_when: fal
│ │ │ -00102090: 7365 0a20 2066 6169 6c65 645f 7768 656e  se.  failed_when
│ │ │ -001020a0: 3a20 6661 6c73 650a 2020 7768 656e 3a20  : false.  when: 
│ │ │ -001020b0: 2820 2267 7275 6232 2d63 6f6d 6d6f 6e22  ( "grub2-common"
│ │ │ -001020c0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001020d0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001020e0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -001020f0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -00102100: 730a 2020 2020 290a 2020 7461 6773 3a0a  s.    ).  tags:.
│ │ │ -00102110: 2020 2d20 6772 7562 325f 6d64 735f 6172    - grub2_mds_ar
│ │ │ -00102120: 6775 6d65 6e74 0a20 202d 206c 6f77 5f64  gument.  - low_d
│ │ │ -00102130: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -00102140: 6469 756d 5f63 6f6d 706c 6578 6974 790a  dium_complexity.
│ │ │ -00102150: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -00102160: 6974 790a 2020 2d20 7265 626f 6f74 5f72  ity.  - reboot_r
│ │ │ -00102170: 6571 7569 7265 640a 2020 2d20 7265 7374  equired.  - rest
│ │ │ -00102180: 7269 6374 5f73 7472 6174 6567 790a 0a2d  rict_strategy..-
│ │ │ -00102190: 206e 616d 653a 2055 7064 6174 6520 6772   name: Update gr
│ │ │ -001021a0: 7562 2064 6566 6175 6c74 7320 616e 6420  ub defaults and 
│ │ │ -001021b0: 7468 6520 626f 6f74 6c6f 6164 6572 206d  the bootloader m
│ │ │ -001021c0: 656e 750a 2020 616e 7369 626c 652e 6275  enu.  ansible.bu
│ │ │ -001021d0: 696c 7469 6e2e 636f 6d6d 616e 643a 202f  iltin.command: /
│ │ │ -001021e0: 7362 696e 2f67 7275 6262 7920 2d2d 7570  sbin/grubby --up
│ │ │ -001021f0: 6461 7465 2d6b 6572 6e65 6c3d 414c 4c20  date-kernel=ALL 
│ │ │ -00102200: 2d2d 6172 6773 3d22 6d64 733d 7b7b 2076  --args="mds={{ v
│ │ │ -00102210: 6172 5f6d 6473 5f6f 7074 696f 6e73 0a20  ar_mds_options. 
│ │ │ -00102220: 2020 207d 7d22 0a20 2077 6865 6e3a 0a20     }}".  when:. 
│ │ │ -00102230: 202d 2028 2022 6772 7562 322d 636f 6d6d   - ( "grub2-comm
│ │ │ -00102240: 6f6e 2220 696e 2061 6e73 6962 6c65 5f66  on" in ansible_f
│ │ │ -00102250: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -00102260: 6420 226b 6572 6e65 6c22 2069 6e20 616e  d "kernel" in an
│ │ │ -00102270: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -00102280: 6167 6573 0a20 2020 2029 0a20 202d 2028  ages.    ).  - (
│ │ │ -00102290: 6772 7562 6279 5f69 6e66 6f2e 7374 646f  grubby_info.stdo
│ │ │ -001022a0: 7574 2069 7320 6e6f 7420 7365 6172 6368  ut is not search
│ │ │ -001022b0: 2827 6d64 733d 2720 7e20 7661 725f 6d64  ('mds=' ~ var_md
│ │ │ -001022c0: 735f 6f70 7469 6f6e 7329 2920 6f72 2028  s_options)) or (
│ │ │ -001022d0: 2865 7463 5f64 6566 6175 6c74 5f67 7275  (etc_default_gru
│ │ │ -001022e0: 625b 2763 6f6e 7465 6e74 275d 0a20 2020  b['content'].   
│ │ │ -001022f0: 207c 2062 3634 6465 636f 6465 2920 6973   | b64decode) is
│ │ │ -00102300: 206e 6f74 2073 6561 7263 6828 276d 6473   not search('mds
│ │ │ -00102310: 3d27 207e 2076 6172 5f6d 6473 5f6f 7074  =' ~ var_mds_opt
│ │ │ -00102320: 696f 6e73 2929 0a20 2074 6167 733a 0a20  ions)).  tags:. 
│ │ │ -00102330: 202d 2067 7275 6232 5f6d 6473 5f61 7267   - grub2_mds_arg
│ │ │ -00102340: 756d 656e 740a 2020 2d20 6c6f 775f 6469  ument.  - low_di
│ │ │ -00102350: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ -00102360: 6975 6d5f 636f 6d70 6c65 7869 7479 0a20  ium_complexity. 
│ │ │ -00102370: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -00102380: 7479 0a20 202d 2072 6562 6f6f 745f 7265  ty.  - reboot_re
│ │ │ -00102390: 7175 6972 6564 0a20 202d 2072 6573 7472  quired.  - restr
│ │ │ -001023a0: 6963 745f 7374 7261 7465 6779 0a3c 2f63  ict_strategy.<
│ │ │ +001019e0: 6272 3e3c 6469 7620 636c 6173 733d 2270  br>
Co │ │ │ -00101c10: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disrup │ │ │ -00101c40: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00101c50: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strateg │ │ │ -00101c90: 793a 3c2f 7468 3e3c 7464 3e72 6573 7472 y:restr │ │ │ -00101ca0: 6963 743c 2f74 643e 3c2f 7472 3e3c 2f74 ict
Reboot:true │ │ │ +00101ad0: 3c74 723e 3c74 683e 5374 7261 7465 6779
-
│ │ │ +00101b10: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +00101b20: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +00101b30: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ +00101b40: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ +00101b50: 746f 0a20 2074 6167 733a 0a20 202d 2067  to.  tags:.  - g
│ │ │ +00101b60: 7275 6232 5f6d 6473 5f61 7267 756d 656e  rub2_mds_argumen
│ │ │ +00101b70: 740a 2020 2d20 6c6f 775f 6469 7372 7570  t.  - low_disrup
│ │ │ +00101b80: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ +00101b90: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +00101ba0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +00101bb0: 202d 2072 6562 6f6f 745f 7265 7175 6972   - reboot_requir
│ │ │ +00101bc0: 6564 0a20 202d 2072 6573 7472 6963 745f  ed.  - restrict_
│ │ │ +00101bd0: 7374 7261 7465 6779 0a2d 206e 616d 653a  strategy.- name:
│ │ │ +00101be0: 2058 4343 4446 2056 616c 7565 2076 6172   XCCDF Value var
│ │ │ +00101bf0: 5f6d 6473 5f6f 7074 696f 6e73 2023 2070  _mds_options # p
│ │ │ +00101c00: 726f 6d6f 7465 2074 6f20 7661 7269 6162  romote to variab
│ │ │ +00101c10: 6c65 0a20 2073 6574 5f66 6163 743a 0a20  le.  set_fact:. 
│ │ │ +00101c20: 2020 2076 6172 5f6d 6473 5f6f 7074 696f     var_mds_optio
│ │ │ +00101c30: 6e73 3a20 2121 7374 7220 3c61 6262 7220  ns: !!str full,nosmt
│ │ │ +00101ca0: 3c2f 6162 6272 3e0a 2020 7461 6773 3a0a  .  tags:.
│ │ │ +00101cb0: 2020 2020 2d20 616c 7761 7973 0a0a 2d20      - always..- 
│ │ │ +00101cc0: 6e61 6d65 3a20 4368 6563 6b20 6966 206d  name: Check if m
│ │ │ +00101cd0: 6473 2061 7267 756d 656e 7420 6973 2061  ds argument is a
│ │ │ +00101ce0: 6c72 6561 6479 2070 7265 7365 6e74 2069  lready present i
│ │ │ +00101cf0: 6e20 2f65 7463 2f64 6566 6175 6c74 2f67  n /etc/default/g
│ │ │ +00101d00: 7275 620a 2020 616e 7369 626c 652e 6275  rub.  ansible.bu
│ │ │ +00101d10: 696c 7469 6e2e 736c 7572 703a 0a20 2020  iltin.slurp:.   
│ │ │ +00101d20: 2073 7263 3a20 2f65 7463 2f64 6566 6175   src: /etc/defau
│ │ │ +00101d30: 6c74 2f67 7275 620a 2020 7265 6769 7374  lt/grub.  regist
│ │ │ +00101d40: 6572 3a20 6574 635f 6465 6661 756c 745f  er: etc_default_
│ │ │ +00101d50: 6772 7562 0a20 2077 6865 6e3a 2028 2022  grub.  when: ( "
│ │ │ +00101d60: 6772 7562 322d 636f 6d6d 6f6e 2220 696e  grub2-common" in
│ │ │ +00101d70: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +00101d80: 6163 6b61 6765 7320 616e 6420 226b 6572  ackages and "ker
│ │ │ +00101d90: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +00101da0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +00101db0: 2020 2029 0a20 2074 6167 733a 0a20 202d     ).  tags:.  -
│ │ │ +00101dc0: 2067 7275 6232 5f6d 6473 5f61 7267 756d   grub2_mds_argum
│ │ │ +00101dd0: 656e 740a 2020 2d20 6c6f 775f 6469 7372  ent.  - low_disr
│ │ │ +00101de0: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +00101df0: 6d5f 636f 6d70 6c65 7869 7479 0a20 202d  m_complexity.  -
│ │ │ +00101e00: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +00101e10: 0a20 202d 2072 6562 6f6f 745f 7265 7175  .  - reboot_requ
│ │ │ +00101e20: 6972 6564 0a20 202d 2072 6573 7472 6963  ired.  - restric
│ │ │ +00101e30: 745f 7374 7261 7465 6779 0a0a 2d20 6e61  t_strategy..- na
│ │ │ +00101e40: 6d65 3a20 4368 6563 6b20 6966 206d 6473  me: Check if mds
│ │ │ +00101e50: 2061 7267 756d 656e 7420 6973 2061 6c72   argument is alr
│ │ │ +00101e60: 6561 6479 2070 7265 7365 6e74 0a20 2061  eady present.  a
│ │ │ +00101e70: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ +00101e80: 6f6d 6d61 6e64 3a20 2f73 6269 6e2f 6772  ommand: /sbin/gr
│ │ │ +00101e90: 7562 6279 202d 2d69 6e66 6f3d 414c 4c0a  ubby --info=ALL.
│ │ │ +00101ea0: 2020 7265 6769 7374 6572 3a20 6772 7562    register: grub
│ │ │ +00101eb0: 6279 5f69 6e66 6f0a 2020 6368 6563 6b5f  by_info.  check_
│ │ │ +00101ec0: 6d6f 6465 3a20 6661 6c73 650a 2020 6368  mode: false.  ch
│ │ │ +00101ed0: 616e 6765 645f 7768 656e 3a20 6661 6c73  anged_when: fals
│ │ │ +00101ee0: 650a 2020 6661 696c 6564 5f77 6865 6e3a  e.  failed_when:
│ │ │ +00101ef0: 2066 616c 7365 0a20 2077 6865 6e3a 2028   false.  when: (
│ │ │ +00101f00: 2022 6772 7562 322d 636f 6d6d 6f6e 2220   "grub2-common" 
│ │ │ +00101f10: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +00101f20: 2e70 6163 6b61 6765 7320 616e 6420 226b  .packages and "k
│ │ │ +00101f30: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +00101f40: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +00101f50: 0a20 2020 2029 0a20 2074 6167 733a 0a20  .    ).  tags:. 
│ │ │ +00101f60: 202d 2067 7275 6232 5f6d 6473 5f61 7267   - grub2_mds_arg
│ │ │ +00101f70: 756d 656e 740a 2020 2d20 6c6f 775f 6469  ument.  - low_di
│ │ │ +00101f80: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ +00101f90: 6975 6d5f 636f 6d70 6c65 7869 7479 0a20  ium_complexity. 
│ │ │ +00101fa0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +00101fb0: 7479 0a20 202d 2072 6562 6f6f 745f 7265  ty.  - reboot_re
│ │ │ +00101fc0: 7175 6972 6564 0a20 202d 2072 6573 7472  quired.  - restr
│ │ │ +00101fd0: 6963 745f 7374 7261 7465 6779 0a0a 2d20  ict_strategy..- 
│ │ │ +00101fe0: 6e61 6d65 3a20 5570 6461 7465 2067 7275  name: Update gru
│ │ │ +00101ff0: 6220 6465 6661 756c 7473 2061 6e64 2074  b defaults and t
│ │ │ +00102000: 6865 2062 6f6f 746c 6f61 6465 7220 6d65  he bootloader me
│ │ │ +00102010: 6e75 0a20 2061 6e73 6962 6c65 2e62 7569  nu.  ansible.bui
│ │ │ +00102020: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 2f73  ltin.command: /s
│ │ │ +00102030: 6269 6e2f 6772 7562 6279 202d 2d75 7064  bin/grubby --upd
│ │ │ +00102040: 6174 652d 6b65 726e 656c 3d41 4c4c 202d  ate-kernel=ALL -
│ │ │ +00102050: 2d61 7267 733d 226d 6473 3d7b 7b20 7661  -args="mds={{ va
│ │ │ +00102060: 725f 6d64 735f 6f70 7469 6f6e 730a 2020  r_mds_options.  
│ │ │ +00102070: 2020 7d7d 220a 2020 7768 656e 3a0a 2020    }}".  when:.  
│ │ │ +00102080: 2d20 2820 2267 7275 6232 2d63 6f6d 6d6f  - ( "grub2-commo
│ │ │ +00102090: 6e22 2069 6e20 616e 7369 626c 655f 6661  n" in ansible_fa
│ │ │ +001020a0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001020b0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +001020c0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001020d0: 6765 730a 2020 2020 290a 2020 2d20 2867  ges.    ).  - (g
│ │ │ +001020e0: 7275 6262 795f 696e 666f 2e73 7464 6f75  rubby_info.stdou
│ │ │ +001020f0: 7420 6973 206e 6f74 2073 6561 7263 6828  t is not search(
│ │ │ +00102100: 276d 6473 3d27 207e 2076 6172 5f6d 6473  'mds=' ~ var_mds
│ │ │ +00102110: 5f6f 7074 696f 6e73 2929 206f 7220 2828  _options)) or ((
│ │ │ +00102120: 6574 635f 6465 6661 756c 745f 6772 7562  etc_default_grub
│ │ │ +00102130: 5b27 636f 6e74 656e 7427 5d0a 2020 2020  ['content'].    
│ │ │ +00102140: 7c20 6236 3464 6563 6f64 6529 2069 7320  | b64decode) is 
│ │ │ +00102150: 6e6f 7420 7365 6172 6368 2827 6d64 733d  not search('mds=
│ │ │ +00102160: 2720 7e20 7661 725f 6d64 735f 6f70 7469  ' ~ var_mds_opti
│ │ │ +00102170: 6f6e 7329 290a 2020 7461 6773 3a0a 2020  ons)).  tags:.  
│ │ │ +00102180: 2d20 6772 7562 325f 6d64 735f 6172 6775  - grub2_mds_argu
│ │ │ +00102190: 6d65 6e74 0a20 202d 206c 6f77 5f64 6973  ment.  - low_dis
│ │ │ +001021a0: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ +001021b0: 756d 5f63 6f6d 706c 6578 6974 790a 2020  um_complexity.  
│ │ │ +001021c0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001021d0: 790a 2020 2d20 7265 626f 6f74 5f72 6571  y.  - reboot_req
│ │ │ +001021e0: 7569 7265 640a 2020 2d20 7265 7374 7269  uired.  - restri
│ │ │ +001021f0: 6374 5f73 7472 6174 6567 790a 3c2f 636f  ct_strategy.
< │ │ │ +00102210: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +00102220: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +00102230: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +00102240: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +00102250: 6432 3539 2220 7461 6269 6e64 6578 3d22 d259" tabindex=" │ │ │ +00102260: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +00102270: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +00102280: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +00102290: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +001022a0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +001022b0: 6469 6174 696f 6e20 4f53 4275 696c 6420 diation OSBuild │ │ │ +001022c0: 426c 7565 7072 696e 7420 736e 6970 7065 Blueprint snippe │ │ │ +001022d0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
[customi │ │ │ +00102320: 7a61 7469 6f6e 732e 6b65 726e 656c 5d0a zations.kernel]. │ │ │ +00102330: 6170 7065 6e64 203d 2022 6d64 733d 3c61 append = "mds=full,n │ │ │ +001023a0: 6f73 6d74 3c2f 6162 6272 3e22 0a3c 2f63 osmt". │ │ │ 001023c0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Re │ │ │ -00105e70: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ -00105e80: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ -00105e90: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00105ea0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00105eb0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00105ec0: 7365 2220 6964 3d22 6964 3236 3822 3e3c se" id="id268">< │ │ │ -00105ed0: 7072 653e 3c63 6f64 653e 5b63 7573 746f pre>[custo │ │ │ -00105ee0: 6d69 7a61 7469 6f6e 732e 6b65 726e 656c mizations.kernel │ │ │ -00105ef0: 5d0a 6170 7065 6e64 203d 2022 7061 6765 ].append = "page │ │ │ -00105f00: 5f61 6c6c 6f63 2e73 6875 6666 6c65 3d31 _alloc.shuffle=1 │ │ │ -00105f10: 220a 3c2f 636f 6465 3e3c 2f70 7265 3e3c ".< │ │ │ -00105f20: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -00105fd0: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -00105fe0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
Com │ │ │ +00101a60: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:medium
Disrupt │ │ │ +00101a90: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00101aa0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strategy │ │ │ +00101ae0: 3a3c 2f74 683e 3c74 643e 7265 7374 7269 :restri │ │ │ +00101af0: 6374 3c2f 7464 3e3c 2f74 723e 3c2f 7461 ct
< │ │ │ -00106060: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -001060a0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -001060b0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
medium
D │ │ │ -00106090: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ -001060c0: 2f74 683e 3c74 643e 7472 7565 3c2f 7464 /th>true
St │ │ │ -001060e0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -001060f0: 7265 7374 7269 6374 3c2f 7464 3e3c 2f74 restrict
<
│ │ │ -00106110: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ -00106120: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ -00106130: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ -00106140: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ -00106150: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ -00106160: 0a20 202d 2067 7275 6232 5f70 6167 655f  .  - grub2_page_
│ │ │ -00106170: 616c 6c6f 635f 7368 7566 666c 655f 6172  alloc_shuffle_ar
│ │ │ -00106180: 6775 6d65 6e74 0a20 202d 206c 6f77 5f64  gument.  - low_d
│ │ │ -00106190: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -001061a0: 6469 756d 5f63 6f6d 706c 6578 6974 790a  dium_complexity.
│ │ │ -001061b0: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001061c0: 6974 790a 2020 2d20 7265 626f 6f74 5f72  ity.  - reboot_r
│ │ │ -001061d0: 6571 7569 7265 640a 2020 2d20 7265 7374  equired.  - rest
│ │ │ -001061e0: 7269 6374 5f73 7472 6174 6567 790a 0a2d  rict_strategy..-
│ │ │ -001061f0: 206e 616d 653a 2043 6865 636b 2069 6620   name: Check if 
│ │ │ -00106200: 7061 6765 5f61 6c6c 6f63 2e73 6875 6666  page_alloc.shuff
│ │ │ -00106210: 6c65 2061 7267 756d 656e 7420 6973 2061  le argument is a
│ │ │ -00106220: 6c72 6561 6479 2070 7265 7365 6e74 2069  lready present i
│ │ │ -00106230: 6e20 2f65 7463 2f64 6566 6175 6c74 2f67  n /etc/default/g
│ │ │ -00106240: 7275 620a 2020 616e 7369 626c 652e 6275  rub.  ansible.bu
│ │ │ -00106250: 696c 7469 6e2e 736c 7572 703a 0a20 2020  iltin.slurp:.   
│ │ │ -00106260: 2073 7263 3a20 2f65 7463 2f64 6566 6175   src: /etc/defau
│ │ │ -00106270: 6c74 2f67 7275 620a 2020 7265 6769 7374  lt/grub.  regist
│ │ │ -00106280: 6572 3a20 6574 635f 6465 6661 756c 745f  er: etc_default_
│ │ │ -00106290: 6772 7562 0a20 2077 6865 6e3a 2028 2022  grub.  when: ( "
│ │ │ -001062a0: 6772 7562 322d 636f 6d6d 6f6e 2220 696e  grub2-common" in
│ │ │ -001062b0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001062c0: 6163 6b61 6765 7320 616e 6420 226b 6572  ackages and "ker
│ │ │ -001062d0: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -001062e0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -001062f0: 2020 2029 0a20 2074 6167 733a 0a20 202d     ).  tags:.  -
│ │ │ -00106300: 2067 7275 6232 5f70 6167 655f 616c 6c6f   grub2_page_allo
│ │ │ -00106310: 635f 7368 7566 666c 655f 6172 6775 6d65  c_shuffle_argume
│ │ │ -00106320: 6e74 0a20 202d 206c 6f77 5f64 6973 7275  nt.  - low_disru
│ │ │ -00106330: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ -00106340: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -00106350: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -00106360: 2020 2d20 7265 626f 6f74 5f72 6571 7569    - reboot_requi
│ │ │ -00106370: 7265 640a 2020 2d20 7265 7374 7269 6374  red.  - restrict
│ │ │ -00106380: 5f73 7472 6174 6567 790a 0a2d 206e 616d  _strategy..- nam
│ │ │ -00106390: 653a 2043 6865 636b 2069 6620 7061 6765  e: Check if page
│ │ │ -001063a0: 5f61 6c6c 6f63 2e73 6875 6666 6c65 2061  _alloc.shuffle a
│ │ │ -001063b0: 7267 756d 656e 7420 6973 2061 6c72 6561  rgument is alrea
│ │ │ -001063c0: 6479 2070 7265 7365 6e74 0a20 2061 6e73  dy present.  ans
│ │ │ -001063d0: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d  ible.builtin.com
│ │ │ -001063e0: 6d61 6e64 3a20 2f73 6269 6e2f 6772 7562  mand: /sbin/grub
│ │ │ -001063f0: 6279 202d 2d69 6e66 6f3d 414c 4c0a 2020  by --info=ALL.  
│ │ │ -00106400: 7265 6769 7374 6572 3a20 6772 7562 6279  register: grubby
│ │ │ -00106410: 5f69 6e66 6f0a 2020 6368 6563 6b5f 6d6f  _info.  check_mo
│ │ │ -00106420: 6465 3a20 6661 6c73 650a 2020 6368 616e  de: false.  chan
│ │ │ -00106430: 6765 645f 7768 656e 3a20 6661 6c73 650a  ged_when: false.
│ │ │ -00106440: 2020 6661 696c 6564 5f77 6865 6e3a 2066    failed_when: f
│ │ │ -00106450: 616c 7365 0a20 2077 6865 6e3a 2028 2022  alse.  when: ( "
│ │ │ -00106460: 6772 7562 322d 636f 6d6d 6f6e 2220 696e  grub2-common" in
│ │ │ -00106470: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -00106480: 6163 6b61 6765 7320 616e 6420 226b 6572  ackages and "ker
│ │ │ -00106490: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -001064a0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -001064b0: 2020 2029 0a20 2074 6167 733a 0a20 202d     ).  tags:.  -
│ │ │ -001064c0: 2067 7275 6232 5f70 6167 655f 616c 6c6f   grub2_page_allo
│ │ │ -001064d0: 635f 7368 7566 666c 655f 6172 6775 6d65  c_shuffle_argume
│ │ │ -001064e0: 6e74 0a20 202d 206c 6f77 5f64 6973 7275  nt.  - low_disru
│ │ │ -001064f0: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ -00106500: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -00106510: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -00106520: 2020 2d20 7265 626f 6f74 5f72 6571 7569    - reboot_requi
│ │ │ -00106530: 7265 640a 2020 2d20 7265 7374 7269 6374  red.  - restrict
│ │ │ -00106540: 5f73 7472 6174 6567 790a 0a2d 206e 616d  _strategy..- nam
│ │ │ -00106550: 653a 2055 7064 6174 6520 6772 7562 2064  e: Update grub d
│ │ │ -00106560: 6566 6175 6c74 7320 616e 6420 7468 6520  efaults and the 
│ │ │ -00106570: 626f 6f74 6c6f 6164 6572 206d 656e 750a  bootloader menu.
│ │ │ -00106580: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -00106590: 6e2e 636f 6d6d 616e 643a 202f 7362 696e  n.command: /sbin
│ │ │ -001065a0: 2f67 7275 6262 7920 2d2d 7570 6461 7465  /grubby --update
│ │ │ -001065b0: 2d6b 6572 6e65 6c3d 414c 4c20 2d2d 6172  -kernel=ALL --ar
│ │ │ -001065c0: 6773 3d22 7061 6765 5f61 6c6c 6f63 2e73  gs="page_alloc.s
│ │ │ -001065d0: 6875 6666 6c65 3d31 220a 2020 7768 656e  huffle=1".  when
│ │ │ -001065e0: 3a0a 2020 2d20 2820 2267 7275 6232 2d63  :.  - ( "grub2-c
│ │ │ -001065f0: 6f6d 6d6f 6e22 2069 6e20 616e 7369 626c  ommon" in ansibl
│ │ │ -00106600: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -00106610: 2061 6e64 2022 6b65 726e 656c 2220 696e   and "kernel" in
│ │ │ -00106620: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -00106630: 6163 6b61 6765 730a 2020 2020 290a 2020  ackages.    ).  
│ │ │ -00106640: 2d20 2867 7275 6262 795f 696e 666f 2e73  - (grubby_info.s
│ │ │ -00106650: 7464 6f75 7420 6973 206e 6f74 2073 6561  tdout is not sea
│ │ │ -00106660: 7263 6828 2770 6167 655f 616c 6c6f 632e  rch('page_alloc.
│ │ │ -00106670: 7368 7566 666c 653d 3127 2929 206f 7220  shuffle=1')) or 
│ │ │ -00106680: 2828 6574 635f 6465 6661 756c 745f 6772  ((etc_default_gr
│ │ │ -00106690: 7562 5b27 636f 6e74 656e 7427 5d0a 2020  ub['content'].  
│ │ │ -001066a0: 2020 7c20 6236 3464 6563 6f64 6529 2069    | b64decode) i
│ │ │ -001066b0: 7320 6e6f 7420 7365 6172 6368 2827 7061  s not search('pa
│ │ │ -001066c0: 6765 5f61 6c6c 6f63 2e73 6875 6666 6c65  ge_alloc.shuffle
│ │ │ -001066d0: 3d31 2729 290a 2020 7461 6773 3a0a 2020  =1')).  tags:.  
│ │ │ -001066e0: 2d20 6772 7562 325f 7061 6765 5f61 6c6c  - grub2_page_all
│ │ │ -001066f0: 6f63 5f73 6875 6666 6c65 5f61 7267 756d  oc_shuffle_argum
│ │ │ -00106700: 656e 740a 2020 2d20 6c6f 775f 6469 7372  ent.  - low_disr
│ │ │ -00106710: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ -00106720: 6d5f 636f 6d70 6c65 7869 7479 0a20 202d  m_complexity.  -
│ │ │ -00106730: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -00106740: 0a20 202d 2072 6562 6f6f 745f 7265 7175  .  - reboot_requ
│ │ │ -00106750: 6972 6564 0a20 202d 2072 6573 7472 6963  ired.  - restric
│ │ │ -00106760: 745f 7374 7261 7465 6779 0a3c 2f63 6f64  t_strategy.
< │ │ │ +00105f20: 7464 3e6d 6564 6975 6d3c 2f74 643e 3c2f td>medium │ │ │ +00105f60: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00105f70: 3c74 643e 7472 7565 3c2f 7464 3e3c 2f74
- name: Gather 
│ │ │ +00105fd0: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ +00105fe0: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ +00105ff0: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ +00106000: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ +00106010: 2067 7275 6232 5f70 6167 655f 616c 6c6f   grub2_page_allo
│ │ │ +00106020: 635f 7368 7566 666c 655f 6172 6775 6d65  c_shuffle_argume
│ │ │ +00106030: 6e74 0a20 202d 206c 6f77 5f64 6973 7275  nt.  - low_disru
│ │ │ +00106040: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ +00106050: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +00106060: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +00106070: 2020 2d20 7265 626f 6f74 5f72 6571 7569    - reboot_requi
│ │ │ +00106080: 7265 640a 2020 2d20 7265 7374 7269 6374  red.  - restrict
│ │ │ +00106090: 5f73 7472 6174 6567 790a 0a2d 206e 616d  _strategy..- nam
│ │ │ +001060a0: 653a 2043 6865 636b 2069 6620 7061 6765  e: Check if page
│ │ │ +001060b0: 5f61 6c6c 6f63 2e73 6875 6666 6c65 2061  _alloc.shuffle a
│ │ │ +001060c0: 7267 756d 656e 7420 6973 2061 6c72 6561  rgument is alrea
│ │ │ +001060d0: 6479 2070 7265 7365 6e74 2069 6e20 2f65  dy present in /e
│ │ │ +001060e0: 7463 2f64 6566 6175 6c74 2f67 7275 620a  tc/default/grub.
│ │ │ +001060f0: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +00106100: 6e2e 736c 7572 703a 0a20 2020 2073 7263  n.slurp:.    src
│ │ │ +00106110: 3a20 2f65 7463 2f64 6566 6175 6c74 2f67  : /etc/default/g
│ │ │ +00106120: 7275 620a 2020 7265 6769 7374 6572 3a20  rub.  register: 
│ │ │ +00106130: 6574 635f 6465 6661 756c 745f 6772 7562  etc_default_grub
│ │ │ +00106140: 0a20 2077 6865 6e3a 2028 2022 6772 7562  .  when: ( "grub
│ │ │ +00106150: 322d 636f 6d6d 6f6e 2220 696e 2061 6e73  2-common" in ans
│ │ │ +00106160: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +00106170: 6765 7320 616e 6420 226b 6572 6e65 6c22  ges and "kernel"
│ │ │ +00106180: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +00106190: 732e 7061 636b 6167 6573 0a20 2020 2029  s.packages.    )
│ │ │ +001061a0: 0a20 2074 6167 733a 0a20 202d 2067 7275  .  tags:.  - gru
│ │ │ +001061b0: 6232 5f70 6167 655f 616c 6c6f 635f 7368  b2_page_alloc_sh
│ │ │ +001061c0: 7566 666c 655f 6172 6775 6d65 6e74 0a20  uffle_argument. 
│ │ │ +001061d0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +001061e0: 6e0a 2020 2d20 6d65 6469 756d 5f63 6f6d  n.  - medium_com
│ │ │ +001061f0: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +00106200: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +00106210: 7265 626f 6f74 5f72 6571 7569 7265 640a  reboot_required.
│ │ │ +00106220: 2020 2d20 7265 7374 7269 6374 5f73 7472    - restrict_str
│ │ │ +00106230: 6174 6567 790a 0a2d 206e 616d 653a 2043  ategy..- name: C
│ │ │ +00106240: 6865 636b 2069 6620 7061 6765 5f61 6c6c  heck if page_all
│ │ │ +00106250: 6f63 2e73 6875 6666 6c65 2061 7267 756d  oc.shuffle argum
│ │ │ +00106260: 656e 7420 6973 2061 6c72 6561 6479 2070  ent is already p
│ │ │ +00106270: 7265 7365 6e74 0a20 2061 6e73 6962 6c65  resent.  ansible
│ │ │ +00106280: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ +00106290: 3a20 2f73 6269 6e2f 6772 7562 6279 202d  : /sbin/grubby -
│ │ │ +001062a0: 2d69 6e66 6f3d 414c 4c0a 2020 7265 6769  -info=ALL.  regi
│ │ │ +001062b0: 7374 6572 3a20 6772 7562 6279 5f69 6e66  ster: grubby_inf
│ │ │ +001062c0: 6f0a 2020 6368 6563 6b5f 6d6f 6465 3a20  o.  check_mode: 
│ │ │ +001062d0: 6661 6c73 650a 2020 6368 616e 6765 645f  false.  changed_
│ │ │ +001062e0: 7768 656e 3a20 6661 6c73 650a 2020 6661  when: false.  fa
│ │ │ +001062f0: 696c 6564 5f77 6865 6e3a 2066 616c 7365  iled_when: false
│ │ │ +00106300: 0a20 2077 6865 6e3a 2028 2022 6772 7562  .  when: ( "grub
│ │ │ +00106310: 322d 636f 6d6d 6f6e 2220 696e 2061 6e73  2-common" in ans
│ │ │ +00106320: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +00106330: 6765 7320 616e 6420 226b 6572 6e65 6c22  ges and "kernel"
│ │ │ +00106340: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +00106350: 732e 7061 636b 6167 6573 0a20 2020 2029  s.packages.    )
│ │ │ +00106360: 0a20 2074 6167 733a 0a20 202d 2067 7275  .  tags:.  - gru
│ │ │ +00106370: 6232 5f70 6167 655f 616c 6c6f 635f 7368  b2_page_alloc_sh
│ │ │ +00106380: 7566 666c 655f 6172 6775 6d65 6e74 0a20  uffle_argument. 
│ │ │ +00106390: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +001063a0: 6e0a 2020 2d20 6d65 6469 756d 5f63 6f6d  n.  - medium_com
│ │ │ +001063b0: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001063c0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001063d0: 7265 626f 6f74 5f72 6571 7569 7265 640a  reboot_required.
│ │ │ +001063e0: 2020 2d20 7265 7374 7269 6374 5f73 7472    - restrict_str
│ │ │ +001063f0: 6174 6567 790a 0a2d 206e 616d 653a 2055  ategy..- name: U
│ │ │ +00106400: 7064 6174 6520 6772 7562 2064 6566 6175  pdate grub defau
│ │ │ +00106410: 6c74 7320 616e 6420 7468 6520 626f 6f74  lts and the boot
│ │ │ +00106420: 6c6f 6164 6572 206d 656e 750a 2020 616e  loader menu.  an
│ │ │ +00106430: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ +00106440: 6d6d 616e 643a 202f 7362 696e 2f67 7275  mmand: /sbin/gru
│ │ │ +00106450: 6262 7920 2d2d 7570 6461 7465 2d6b 6572  bby --update-ker
│ │ │ +00106460: 6e65 6c3d 414c 4c20 2d2d 6172 6773 3d22  nel=ALL --args="
│ │ │ +00106470: 7061 6765 5f61 6c6c 6f63 2e73 6875 6666  page_alloc.shuff
│ │ │ +00106480: 6c65 3d31 220a 2020 7768 656e 3a0a 2020  le=1".  when:.  
│ │ │ +00106490: 2d20 2820 2267 7275 6232 2d63 6f6d 6d6f  - ( "grub2-commo
│ │ │ +001064a0: 6e22 2069 6e20 616e 7369 626c 655f 6661  n" in ansible_fa
│ │ │ +001064b0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001064c0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +001064d0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001064e0: 6765 730a 2020 2020 290a 2020 2d20 2867  ges.    ).  - (g
│ │ │ +001064f0: 7275 6262 795f 696e 666f 2e73 7464 6f75  rubby_info.stdou
│ │ │ +00106500: 7420 6973 206e 6f74 2073 6561 7263 6828  t is not search(
│ │ │ +00106510: 2770 6167 655f 616c 6c6f 632e 7368 7566  'page_alloc.shuf
│ │ │ +00106520: 666c 653d 3127 2929 206f 7220 2828 6574  fle=1')) or ((et
│ │ │ +00106530: 635f 6465 6661 756c 745f 6772 7562 5b27  c_default_grub['
│ │ │ +00106540: 636f 6e74 656e 7427 5d0a 2020 2020 7c20  content'].    | 
│ │ │ +00106550: 6236 3464 6563 6f64 6529 2069 7320 6e6f  b64decode) is no
│ │ │ +00106560: 7420 7365 6172 6368 2827 7061 6765 5f61  t search('page_a
│ │ │ +00106570: 6c6c 6f63 2e73 6875 6666 6c65 3d31 2729  lloc.shuffle=1')
│ │ │ +00106580: 290a 2020 7461 6773 3a0a 2020 2d20 6772  ).  tags:.  - gr
│ │ │ +00106590: 7562 325f 7061 6765 5f61 6c6c 6f63 5f73  ub2_page_alloc_s
│ │ │ +001065a0: 6875 6666 6c65 5f61 7267 756d 656e 740a  huffle_argument.
│ │ │ +001065b0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +001065c0: 6f6e 0a20 202d 206d 6564 6975 6d5f 636f  on.  - medium_co
│ │ │ +001065d0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +001065e0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001065f0: 2072 6562 6f6f 745f 7265 7175 6972 6564   reboot_required
│ │ │ +00106600: 0a20 202d 2072 6573 7472 6963 745f 7374  .  - restrict_st
│ │ │ +00106610: 7261 7465 6779 0a3c 2f63 6f64 653e 3c2f  rategy.Remediati
│ │ │ +001066d0: 6f6e 204f 5342 7569 6c64 2042 6c75 6570  on OSBuild Bluep
│ │ │ +001066e0: 7269 6e74 2073 6e69 7070 6574 20e2 87b2  rint snippet ...
│ │ │ +001066f0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
[customizatio
│ │ │ +00106740: 6e73 2e6b 6572 6e65 6c5d 0a61 7070 656e  ns.kernel].appen
│ │ │ +00106750: 6420 3d20 2270 6167 655f 616c 6c6f 632e  d = "page_alloc.
│ │ │ +00106760: 7368 7566 666c 653d 3122 0a3c 2f63 6f64  shuffle=1".
Remedia │ │ │ -001075e0: 7469 6f6e 204f 5342 7569 6c64 2042 6c75 tion OSBuild Blu │ │ │ -001075f0: 6570 7269 6e74 2073 6e69 7070 6574 20e2 eprint snippet . │ │ │ -00107600: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
<
│ │ │ -00107640: 636f 6465 3e5b 6375 7374 6f6d 697a 6174  code>[customizat
│ │ │ -00107650: 696f 6e73 2e6b 6572 6e65 6c5d 0a61 7070  ions.kernel].app
│ │ │ -00107660: 656e 6420 3d20 2270 7469 3d6f 6e22 0a3c  end = "pti=on".<
│ │ │ -00107670: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -00107720: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -00107730: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
C │ │ │ +00105f10: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disru │ │ │ +00105f40: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00105f50: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:true
Strate │ │ │ +00105f90: 6779 3a3c 2f74 683e 3c74 643e 7265 7374 gy:rest │ │ │ +00105fa0: 7269 6374 3c2f 7464 3e3c 2f74 723e 3c2f rict
│ │ │ -001077d0: 3c74 643e 6d65 6469 756d 3c2f 7464 3e3c < │ │ │ -001077e0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -00107860: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ -00107880: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ -00107890: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ -001078a0: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ -001078b0: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ -001078c0: 2d20 4e49 5354 2d38 3030 2d35 332d 5349  - NIST-800-53-SI
│ │ │ -001078d0: 2d31 360a 2020 2d20 6772 7562 325f 7074  -16.  - grub2_pt
│ │ │ -001078e0: 695f 6172 6775 6d65 6e74 0a20 202d 206c  i_argument.  - l
│ │ │ -001078f0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -00107900: 2d20 6c6f 775f 7365 7665 7269 7479 0a20  - low_severity. 
│ │ │ -00107910: 202d 206d 6564 6975 6d5f 636f 6d70 6c65   - medium_comple
│ │ │ -00107920: 7869 7479 0a20 202d 2072 6562 6f6f 745f  xity.  - reboot_
│ │ │ -00107930: 7265 7175 6972 6564 0a20 202d 2072 6573  required.  - res
│ │ │ -00107940: 7472 6963 745f 7374 7261 7465 6779 0a0a  trict_strategy..
│ │ │ -00107950: 2d20 6e61 6d65 3a20 4368 6563 6b20 6966  - name: Check if
│ │ │ -00107960: 2070 7469 2061 7267 756d 656e 7420 6973   pti argument is
│ │ │ -00107970: 2061 6c72 6561 6479 2070 7265 7365 6e74   already present
│ │ │ -00107980: 2069 6e20 2f65 7463 2f64 6566 6175 6c74   in /etc/default
│ │ │ -00107990: 2f67 7275 620a 2020 616e 7369 626c 652e  /grub.  ansible.
│ │ │ -001079a0: 6275 696c 7469 6e2e 736c 7572 703a 0a20  builtin.slurp:. 
│ │ │ -001079b0: 2020 2073 7263 3a20 2f65 7463 2f64 6566     src: /etc/def
│ │ │ -001079c0: 6175 6c74 2f67 7275 620a 2020 7265 6769  ault/grub.  regi
│ │ │ -001079d0: 7374 6572 3a20 6574 635f 6465 6661 756c  ster: etc_defaul
│ │ │ -001079e0: 745f 6772 7562 0a20 2077 6865 6e3a 2028  t_grub.  when: (
│ │ │ -001079f0: 2022 6772 7562 322d 636f 6d6d 6f6e 2220   "grub2-common" 
│ │ │ -00107a00: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -00107a10: 2e70 6163 6b61 6765 7320 616e 6420 226b  .packages and "k
│ │ │ -00107a20: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -00107a30: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -00107a40: 0a20 2020 2029 0a20 2074 6167 733a 0a20  .    ).  tags:. 
│ │ │ -00107a50: 202d 204e 4953 542d 3830 302d 3533 2d53   - NIST-800-53-S
│ │ │ -00107a60: 492d 3136 0a20 202d 2067 7275 6232 5f70  I-16.  - grub2_p
│ │ │ -00107a70: 7469 5f61 7267 756d 656e 740a 2020 2d20  ti_argument.  - 
│ │ │ -00107a80: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -00107a90: 202d 206c 6f77 5f73 6576 6572 6974 790a   - low_severity.
│ │ │ -00107aa0: 2020 2d20 6d65 6469 756d 5f63 6f6d 706c    - medium_compl
│ │ │ -00107ab0: 6578 6974 790a 2020 2d20 7265 626f 6f74  exity.  - reboot
│ │ │ -00107ac0: 5f72 6571 7569 7265 640a 2020 2d20 7265  _required.  - re
│ │ │ -00107ad0: 7374 7269 6374 5f73 7472 6174 6567 790a  strict_strategy.
│ │ │ -00107ae0: 0a2d 206e 616d 653a 2043 6865 636b 2069  .- name: Check i
│ │ │ -00107af0: 6620 7074 6920 6172 6775 6d65 6e74 2069  f pti argument i
│ │ │ -00107b00: 7320 616c 7265 6164 7920 7072 6573 656e  s already presen
│ │ │ -00107b10: 740a 2020 616e 7369 626c 652e 6275 696c  t.  ansible.buil
│ │ │ -00107b20: 7469 6e2e 636f 6d6d 616e 643a 202f 7362  tin.command: /sb
│ │ │ -00107b30: 696e 2f67 7275 6262 7920 2d2d 696e 666f  in/grubby --info
│ │ │ -00107b40: 3d41 4c4c 0a20 2072 6567 6973 7465 723a  =ALL.  register:
│ │ │ -00107b50: 2067 7275 6262 795f 696e 666f 0a20 2063   grubby_info.  c
│ │ │ -00107b60: 6865 636b 5f6d 6f64 653a 2066 616c 7365  heck_mode: false
│ │ │ -00107b70: 0a20 2063 6861 6e67 6564 5f77 6865 6e3a  .  changed_when:
│ │ │ -00107b80: 2066 616c 7365 0a20 2066 6169 6c65 645f   false.  failed_
│ │ │ -00107b90: 7768 656e 3a20 6661 6c73 650a 2020 7768  when: false.  wh
│ │ │ -00107ba0: 656e 3a20 2820 2267 7275 6232 2d63 6f6d  en: ( "grub2-com
│ │ │ -00107bb0: 6d6f 6e22 2069 6e20 616e 7369 626c 655f  mon" in ansible_
│ │ │ -00107bc0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -00107bd0: 6e64 2022 6b65 726e 656c 2220 696e 2061  nd "kernel" in a
│ │ │ -00107be0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -00107bf0: 6b61 6765 730a 2020 2020 290a 2020 7461  kages.    ).  ta
│ │ │ -00107c00: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -00107c10: 2d35 332d 5349 2d31 360a 2020 2d20 6772  -53-SI-16.  - gr
│ │ │ -00107c20: 7562 325f 7074 695f 6172 6775 6d65 6e74  ub2_pti_argument
│ │ │ -00107c30: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -00107c40: 696f 6e0a 2020 2d20 6c6f 775f 7365 7665  ion.  - low_seve
│ │ │ -00107c50: 7269 7479 0a20 202d 206d 6564 6975 6d5f  rity.  - medium_
│ │ │ -00107c60: 636f 6d70 6c65 7869 7479 0a20 202d 2072  complexity.  - r
│ │ │ -00107c70: 6562 6f6f 745f 7265 7175 6972 6564 0a20  eboot_required. 
│ │ │ -00107c80: 202d 2072 6573 7472 6963 745f 7374 7261   - restrict_stra
│ │ │ -00107c90: 7465 6779 0a0a 2d20 6e61 6d65 3a20 5570  tegy..- name: Up
│ │ │ -00107ca0: 6461 7465 2067 7275 6220 6465 6661 756c  date grub defaul
│ │ │ -00107cb0: 7473 2061 6e64 2074 6865 2062 6f6f 746c  ts and the bootl
│ │ │ -00107cc0: 6f61 6465 7220 6d65 6e75 0a20 2061 6e73  oader menu.  ans
│ │ │ -00107cd0: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d  ible.builtin.com
│ │ │ -00107ce0: 6d61 6e64 3a20 2f73 6269 6e2f 6772 7562  mand: /sbin/grub
│ │ │ -00107cf0: 6279 202d 2d75 7064 6174 652d 6b65 726e  by --update-kern
│ │ │ -00107d00: 656c 3d41 4c4c 202d 2d61 7267 733d 2270  el=ALL --args="p
│ │ │ -00107d10: 7469 3d6f 6e22 0a20 2077 6865 6e3a 0a20  ti=on".  when:. 
│ │ │ -00107d20: 202d 2028 2022 6772 7562 322d 636f 6d6d   - ( "grub2-comm
│ │ │ -00107d30: 6f6e 2220 696e 2061 6e73 6962 6c65 5f66  on" in ansible_f
│ │ │ -00107d40: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -00107d50: 6420 226b 6572 6e65 6c22 2069 6e20 616e  d "kernel" in an
│ │ │ -00107d60: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -00107d70: 6167 6573 0a20 2020 2029 0a20 202d 2028  ages.    ).  - (
│ │ │ -00107d80: 6772 7562 6279 5f69 6e66 6f2e 7374 646f  grubby_info.stdo
│ │ │ -00107d90: 7574 2069 7320 6e6f 7420 7365 6172 6368  ut is not search
│ │ │ -00107da0: 2827 7074 693d 6f6e 2729 2920 6f72 2028  ('pti=on')) or (
│ │ │ -00107db0: 2865 7463 5f64 6566 6175 6c74 5f67 7275  (etc_default_gru
│ │ │ -00107dc0: 625b 2763 6f6e 7465 6e74 275d 0a20 2020  b['content'].   
│ │ │ -00107dd0: 207c 2062 3634 6465 636f 6465 2920 6973   | b64decode) is
│ │ │ -00107de0: 206e 6f74 2073 6561 7263 6828 2770 7469   not search('pti
│ │ │ -00107df0: 3d6f 6e27 2929 0a20 2074 6167 733a 0a20  =on')).  tags:. 
│ │ │ -00107e00: 202d 204e 4953 542d 3830 302d 3533 2d53   - NIST-800-53-S
│ │ │ -00107e10: 492d 3136 0a20 202d 2067 7275 6232 5f70  I-16.  - grub2_p
│ │ │ -00107e20: 7469 5f61 7267 756d 656e 740a 2020 2d20  ti_argument.  - 
│ │ │ -00107e30: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -00107e40: 202d 206c 6f77 5f73 6576 6572 6974 790a   - low_severity.
│ │ │ -00107e50: 2020 2d20 6d65 6469 756d 5f63 6f6d 706c    - medium_compl
│ │ │ -00107e60: 6578 6974 790a 2020 2d20 7265 626f 6f74  exity.  - reboot
│ │ │ -00107e70: 5f72 6571 7569 7265 640a 2020 2d20 7265  _required.  - re
│ │ │ -00107e80: 7374 7269 6374 5f73 7472 6174 6567 790a  strict_strategy.
│ │ │ +001075e0: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69  tion Ansible sni
│ │ │ +001075f0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e  ppet ...
│ │ │ +00107600: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +00107630: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
│ │ │ -001077c0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:medium
Disr │ │ │ -001077f0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00107800: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:true
Strat │ │ │ -00107840: 6567 793a 3c2f 7468 3e3c 7464 3e72 6573 egy:res │ │ │ -00107850: 7472 6963 743c 2f74 643e 3c2f 7472 3e3c trict
Comple │ │ │ +00107680: 7869 7479 3a3c 2f74 683e 3c74 643e 6d65 xity:me │ │ │ +00107690: 6469 756d 3c2f 7464 3e3c 2f74 723e 3c74 dium
Disruption │ │ │ +001076b0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +001076d0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e74 eboot:t │ │ │ +001076e0: 7275 653c 2f74 643e 3c2f 7472 3e3c 7472 rue
Strategy:restrict< │ │ │ +00107710: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ +00107730: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ +00107740: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ +00107750: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ +00107760: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ +00107770: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +00107780: 2d38 3030 2d35 332d 5349 2d31 360a 2020  -800-53-SI-16.  
│ │ │ +00107790: 2d20 6772 7562 325f 7074 695f 6172 6775  - grub2_pti_argu
│ │ │ +001077a0: 6d65 6e74 0a20 202d 206c 6f77 5f64 6973  ment.  - low_dis
│ │ │ +001077b0: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ +001077c0: 7365 7665 7269 7479 0a20 202d 206d 6564  severity.  - med
│ │ │ +001077d0: 6975 6d5f 636f 6d70 6c65 7869 7479 0a20  ium_complexity. 
│ │ │ +001077e0: 202d 2072 6562 6f6f 745f 7265 7175 6972   - reboot_requir
│ │ │ +001077f0: 6564 0a20 202d 2072 6573 7472 6963 745f  ed.  - restrict_
│ │ │ +00107800: 7374 7261 7465 6779 0a0a 2d20 6e61 6d65  strategy..- name
│ │ │ +00107810: 3a20 4368 6563 6b20 6966 2070 7469 2061  : Check if pti a
│ │ │ +00107820: 7267 756d 656e 7420 6973 2061 6c72 6561  rgument is alrea
│ │ │ +00107830: 6479 2070 7265 7365 6e74 2069 6e20 2f65  dy present in /e
│ │ │ +00107840: 7463 2f64 6566 6175 6c74 2f67 7275 620a  tc/default/grub.
│ │ │ +00107850: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +00107860: 6e2e 736c 7572 703a 0a20 2020 2073 7263  n.slurp:.    src
│ │ │ +00107870: 3a20 2f65 7463 2f64 6566 6175 6c74 2f67  : /etc/default/g
│ │ │ +00107880: 7275 620a 2020 7265 6769 7374 6572 3a20  rub.  register: 
│ │ │ +00107890: 6574 635f 6465 6661 756c 745f 6772 7562  etc_default_grub
│ │ │ +001078a0: 0a20 2077 6865 6e3a 2028 2022 6772 7562  .  when: ( "grub
│ │ │ +001078b0: 322d 636f 6d6d 6f6e 2220 696e 2061 6e73  2-common" in ans
│ │ │ +001078c0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001078d0: 6765 7320 616e 6420 226b 6572 6e65 6c22  ges and "kernel"
│ │ │ +001078e0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001078f0: 732e 7061 636b 6167 6573 0a20 2020 2029  s.packages.    )
│ │ │ +00107900: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +00107910: 542d 3830 302d 3533 2d53 492d 3136 0a20  T-800-53-SI-16. 
│ │ │ +00107920: 202d 2067 7275 6232 5f70 7469 5f61 7267   - grub2_pti_arg
│ │ │ +00107930: 756d 656e 740a 2020 2d20 6c6f 775f 6469  ument.  - low_di
│ │ │ +00107940: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +00107950: 5f73 6576 6572 6974 790a 2020 2d20 6d65  _severity.  - me
│ │ │ +00107960: 6469 756d 5f63 6f6d 706c 6578 6974 790a  dium_complexity.
│ │ │ +00107970: 2020 2d20 7265 626f 6f74 5f72 6571 7569    - reboot_requi
│ │ │ +00107980: 7265 640a 2020 2d20 7265 7374 7269 6374  red.  - restrict
│ │ │ +00107990: 5f73 7472 6174 6567 790a 0a2d 206e 616d  _strategy..- nam
│ │ │ +001079a0: 653a 2043 6865 636b 2069 6620 7074 6920  e: Check if pti 
│ │ │ +001079b0: 6172 6775 6d65 6e74 2069 7320 616c 7265  argument is alre
│ │ │ +001079c0: 6164 7920 7072 6573 656e 740a 2020 616e  ady present.  an
│ │ │ +001079d0: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ +001079e0: 6d6d 616e 643a 202f 7362 696e 2f67 7275  mmand: /sbin/gru
│ │ │ +001079f0: 6262 7920 2d2d 696e 666f 3d41 4c4c 0a20  bby --info=ALL. 
│ │ │ +00107a00: 2072 6567 6973 7465 723a 2067 7275 6262   register: grubb
│ │ │ +00107a10: 795f 696e 666f 0a20 2063 6865 636b 5f6d  y_info.  check_m
│ │ │ +00107a20: 6f64 653a 2066 616c 7365 0a20 2063 6861  ode: false.  cha
│ │ │ +00107a30: 6e67 6564 5f77 6865 6e3a 2066 616c 7365  nged_when: false
│ │ │ +00107a40: 0a20 2066 6169 6c65 645f 7768 656e 3a20  .  failed_when: 
│ │ │ +00107a50: 6661 6c73 650a 2020 7768 656e 3a20 2820  false.  when: ( 
│ │ │ +00107a60: 2267 7275 6232 2d63 6f6d 6d6f 6e22 2069  "grub2-common" i
│ │ │ +00107a70: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +00107a80: 7061 636b 6167 6573 2061 6e64 2022 6b65  packages and "ke
│ │ │ +00107a90: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +00107aa0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +00107ab0: 2020 2020 290a 2020 7461 6773 3a0a 2020      ).  tags:.  
│ │ │ +00107ac0: 2d20 4e49 5354 2d38 3030 2d35 332d 5349  - NIST-800-53-SI
│ │ │ +00107ad0: 2d31 360a 2020 2d20 6772 7562 325f 7074  -16.  - grub2_pt
│ │ │ +00107ae0: 695f 6172 6775 6d65 6e74 0a20 202d 206c  i_argument.  - l
│ │ │ +00107af0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +00107b00: 2d20 6c6f 775f 7365 7665 7269 7479 0a20  - low_severity. 
│ │ │ +00107b10: 202d 206d 6564 6975 6d5f 636f 6d70 6c65   - medium_comple
│ │ │ +00107b20: 7869 7479 0a20 202d 2072 6562 6f6f 745f  xity.  - reboot_
│ │ │ +00107b30: 7265 7175 6972 6564 0a20 202d 2072 6573  required.  - res
│ │ │ +00107b40: 7472 6963 745f 7374 7261 7465 6779 0a0a  trict_strategy..
│ │ │ +00107b50: 2d20 6e61 6d65 3a20 5570 6461 7465 2067  - name: Update g
│ │ │ +00107b60: 7275 6220 6465 6661 756c 7473 2061 6e64  rub defaults and
│ │ │ +00107b70: 2074 6865 2062 6f6f 746c 6f61 6465 7220   the bootloader 
│ │ │ +00107b80: 6d65 6e75 0a20 2061 6e73 6962 6c65 2e62  menu.  ansible.b
│ │ │ +00107b90: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ +00107ba0: 2f73 6269 6e2f 6772 7562 6279 202d 2d75  /sbin/grubby --u
│ │ │ +00107bb0: 7064 6174 652d 6b65 726e 656c 3d41 4c4c  pdate-kernel=ALL
│ │ │ +00107bc0: 202d 2d61 7267 733d 2270 7469 3d6f 6e22   --args="pti=on"
│ │ │ +00107bd0: 0a20 2077 6865 6e3a 0a20 202d 2028 2022  .  when:.  - ( "
│ │ │ +00107be0: 6772 7562 322d 636f 6d6d 6f6e 2220 696e  grub2-common" in
│ │ │ +00107bf0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +00107c00: 6163 6b61 6765 7320 616e 6420 226b 6572  ackages and "ker
│ │ │ +00107c10: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +00107c20: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +00107c30: 2020 2029 0a20 202d 2028 6772 7562 6279     ).  - (grubby
│ │ │ +00107c40: 5f69 6e66 6f2e 7374 646f 7574 2069 7320  _info.stdout is 
│ │ │ +00107c50: 6e6f 7420 7365 6172 6368 2827 7074 693d  not search('pti=
│ │ │ +00107c60: 6f6e 2729 2920 6f72 2028 2865 7463 5f64  on')) or ((etc_d
│ │ │ +00107c70: 6566 6175 6c74 5f67 7275 625b 2763 6f6e  efault_grub['con
│ │ │ +00107c80: 7465 6e74 275d 0a20 2020 207c 2062 3634  tent'].    | b64
│ │ │ +00107c90: 6465 636f 6465 2920 6973 206e 6f74 2073  decode) is not s
│ │ │ +00107ca0: 6561 7263 6828 2770 7469 3d6f 6e27 2929  earch('pti=on'))
│ │ │ +00107cb0: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +00107cc0: 542d 3830 302d 3533 2d53 492d 3136 0a20  T-800-53-SI-16. 
│ │ │ +00107cd0: 202d 2067 7275 6232 5f70 7469 5f61 7267   - grub2_pti_arg
│ │ │ +00107ce0: 756d 656e 740a 2020 2d20 6c6f 775f 6469  ument.  - low_di
│ │ │ +00107cf0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +00107d00: 5f73 6576 6572 6974 790a 2020 2d20 6d65  _severity.  - me
│ │ │ +00107d10: 6469 756d 5f63 6f6d 706c 6578 6974 790a  dium_complexity.
│ │ │ +00107d20: 2020 2d20 7265 626f 6f74 5f72 6571 7569    - reboot_requi
│ │ │ +00107d30: 7265 640a 2020 2d20 7265 7374 7269 6374  red.  - restrict
│ │ │ +00107d40: 5f73 7472 6174 6567 790a 3c2f 636f 6465  _strategy.
Remedi │ │ │ +00107e00: 6174 696f 6e20 4f53 4275 696c 6420 426c ation OSBuild Bl │ │ │ +00107e10: 7565 7072 696e 7420 736e 6970 7065 7420 ueprint snippet │ │ │ +00107e20: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
│ │ │ +00107e60: 3c63 6f64 653e 5b63 7573 746f 6d69 7a61  [customiza
│ │ │ +00107e70: 7469 6f6e 732e 6b65 726e 656c 5d0a 6170  tions.kernel].ap
│ │ │ +00107e80: 7065 6e64 203d 2022 7074 693d 6f6e 220a  pend = "pti=on".
│ │ │  00107e90: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
R │ │ │ -00109050: 656d 6564 6961 7469 6f6e 204f 5342 7569 emediation OSBui │ │ │ -00109060: 6c64 2042 6c75 6570 7269 6e74 2073 6e69 ld Blueprint sni │ │ │ -00109070: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -00109080: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -001090b0: 3c70 7265 3e3c 636f 6465 3e5b 6375 7374
[cust
│ │ │ -001090c0: 6f6d 697a 6174 696f 6e73 2e6b 6572 6e65  omizations.kerne
│ │ │ -001090d0: 6c5d 0a61 7070 656e 6420 3d20 2272 6e67  l].append = "rng
│ │ │ -001090e0: 5f63 6f72 652e 6465 6661 756c 745f 7175  _core.default_qu
│ │ │ -001090f0: 616c 6974 793d 3c61 6262 7220 7469 746c  ality=5
│ │ │ -00109160: 3030 3c2f 6162 6272 3e22 0a3c 2f63 6f64  00".
Remed │ │ │ -00109220: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ -00109230: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
│ │ │ -001092e0: 3c74 723e 3c74 683e 4469 7372 7570 7469 < │ │ │ -00109330: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
- 
│ │ │ -00109370: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ -00109380: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ -00109390: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ -001093a0: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ -001093b0: 6f0a 2020 7461 6773 3a0a 2020 2d20 6772  o.  tags:.  - gr
│ │ │ -001093c0: 7562 325f 726e 675f 636f 7265 5f64 6566  ub2_rng_core_def
│ │ │ -001093d0: 6175 6c74 5f71 7561 6c69 7479 5f61 7267  ault_quality_arg
│ │ │ -001093e0: 756d 656e 740a 2020 2d20 6c6f 775f 6469  ument.  - low_di
│ │ │ -001093f0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -00109400: 5f73 6576 6572 6974 790a 2020 2d20 6d65  _severity.  - me
│ │ │ -00109410: 6469 756d 5f63 6f6d 706c 6578 6974 790a  dium_complexity.
│ │ │ -00109420: 2020 2d20 7265 626f 6f74 5f72 6571 7569    - reboot_requi
│ │ │ -00109430: 7265 640a 2020 2d20 7265 7374 7269 6374  red.  - restrict
│ │ │ -00109440: 5f73 7472 6174 6567 790a 2d20 6e61 6d65  _strategy.- name
│ │ │ -00109450: 3a20 5843 4344 4620 5661 6c75 6520 7661  : XCCDF Value va
│ │ │ -00109460: 725f 726e 675f 636f 7265 5f64 6566 6175  r_rng_core_defau
│ │ │ -00109470: 6c74 5f71 7561 6c69 7479 2023 2070 726f  lt_quality # pro
│ │ │ -00109480: 6d6f 7465 2074 6f20 7661 7269 6162 6c65  mote to variable
│ │ │ -00109490: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ -001094a0: 2076 6172 5f72 6e67 5f63 6f72 655f 6465   var_rng_core_de
│ │ │ -001094b0: 6661 756c 745f 7175 616c 6974 793a 2021  fault_quality: !
│ │ │ -001094c0: 2173 7472 203c 6162 6272 2074 6974 6c65  !str 50
│ │ │ -00109530: 303c 2f61 6262 723e 0a20 2074 6167 733a  0.  tags:
│ │ │ -00109540: 0a20 2020 202d 2061 6c77 6179 730a 0a2d  .    - always..-
│ │ │ -00109550: 206e 616d 653a 2043 6865 636b 2069 6620   name: Check if 
│ │ │ -00109560: 726e 675f 636f 7265 2e64 6566 6175 6c74  rng_core.default
│ │ │ -00109570: 5f71 7561 6c69 7479 2061 7267 756d 656e  _quality argumen
│ │ │ -00109580: 7420 6973 2061 6c72 6561 6479 2070 7265  t is already pre
│ │ │ -00109590: 7365 6e74 2069 6e20 2f65 7463 2f64 6566  sent in /etc/def
│ │ │ -001095a0: 6175 6c74 2f67 7275 620a 2020 616e 7369  ault/grub.  ansi
│ │ │ -001095b0: 626c 652e 6275 696c 7469 6e2e 736c 7572  ble.builtin.slur
│ │ │ -001095c0: 703a 0a20 2020 2073 7263 3a20 2f65 7463  p:.    src: /etc
│ │ │ -001095d0: 2f64 6566 6175 6c74 2f67 7275 620a 2020  /default/grub.  
│ │ │ -001095e0: 7265 6769 7374 6572 3a20 6574 635f 6465  register: etc_de
│ │ │ -001095f0: 6661 756c 745f 6772 7562 0a20 2077 6865  fault_grub.  whe
│ │ │ -00109600: 6e3a 2028 2022 6772 7562 322d 636f 6d6d  n: ( "grub2-comm
│ │ │ -00109610: 6f6e 2220 696e 2061 6e73 6962 6c65 5f66  on" in ansible_f
│ │ │ -00109620: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -00109630: 6420 226b 6572 6e65 6c22 2069 6e20 616e  d "kernel" in an
│ │ │ -00109640: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -00109650: 6167 6573 0a20 2020 2029 0a20 2074 6167  ages.    ).  tag
│ │ │ -00109660: 733a 0a20 202d 2067 7275 6232 5f72 6e67  s:.  - grub2_rng
│ │ │ -00109670: 5f63 6f72 655f 6465 6661 756c 745f 7175  _core_default_qu
│ │ │ -00109680: 616c 6974 795f 6172 6775 6d65 6e74 0a20  ality_argument. 
│ │ │ -00109690: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -001096a0: 6e0a 2020 2d20 6c6f 775f 7365 7665 7269  n.  - low_severi
│ │ │ -001096b0: 7479 0a20 202d 206d 6564 6975 6d5f 636f  ty.  - medium_co
│ │ │ -001096c0: 6d70 6c65 7869 7479 0a20 202d 2072 6562  mplexity.  - reb
│ │ │ -001096d0: 6f6f 745f 7265 7175 6972 6564 0a20 202d  oot_required.  -
│ │ │ -001096e0: 2072 6573 7472 6963 745f 7374 7261 7465   restrict_strate
│ │ │ -001096f0: 6779 0a0a 2d20 6e61 6d65 3a20 4368 6563  gy..- name: Chec
│ │ │ -00109700: 6b20 6966 2072 6e67 5f63 6f72 652e 6465  k if rng_core.de
│ │ │ -00109710: 6661 756c 745f 7175 616c 6974 7920 6172  fault_quality ar
│ │ │ -00109720: 6775 6d65 6e74 2069 7320 616c 7265 6164  gument is alread
│ │ │ -00109730: 7920 7072 6573 656e 740a 2020 616e 7369  y present.  ansi
│ │ │ -00109740: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ -00109750: 616e 643a 202f 7362 696e 2f67 7275 6262  and: /sbin/grubb
│ │ │ -00109760: 7920 2d2d 696e 666f 3d41 4c4c 0a20 2072  y --info=ALL.  r
│ │ │ -00109770: 6567 6973 7465 723a 2067 7275 6262 795f  egister: grubby_
│ │ │ -00109780: 696e 666f 0a20 2063 6865 636b 5f6d 6f64  info.  check_mod
│ │ │ -00109790: 653a 2066 616c 7365 0a20 2063 6861 6e67  e: false.  chang
│ │ │ -001097a0: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ -001097b0: 2066 6169 6c65 645f 7768 656e 3a20 6661   failed_when: fa
│ │ │ -001097c0: 6c73 650a 2020 7768 656e 3a20 2820 2267  lse.  when: ( "g
│ │ │ -001097d0: 7275 6232 2d63 6f6d 6d6f 6e22 2069 6e20  rub2-common" in 
│ │ │ -001097e0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001097f0: 636b 6167 6573 2061 6e64 2022 6b65 726e  ckages and "kern
│ │ │ -00109800: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -00109810: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -00109820: 2020 290a 2020 7461 6773 3a0a 2020 2d20    ).  tags:.  - 
│ │ │ -00109830: 6772 7562 325f 726e 675f 636f 7265 5f64  grub2_rng_core_d
│ │ │ -00109840: 6566 6175 6c74 5f71 7561 6c69 7479 5f61  efault_quality_a
│ │ │ -00109850: 7267 756d 656e 740a 2020 2d20 6c6f 775f  rgument.  - low_
│ │ │ -00109860: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -00109870: 6f77 5f73 6576 6572 6974 790a 2020 2d20  ow_severity.  - 
│ │ │ -00109880: 6d65 6469 756d 5f63 6f6d 706c 6578 6974  medium_complexit
│ │ │ -00109890: 790a 2020 2d20 7265 626f 6f74 5f72 6571  y.  - reboot_req
│ │ │ -001098a0: 7569 7265 640a 2020 2d20 7265 7374 7269  uired.  - restri
│ │ │ -001098b0: 6374 5f73 7472 6174 6567 790a 0a2d 206e  ct_strategy..- n
│ │ │ -001098c0: 616d 653a 2055 7064 6174 6520 6772 7562  ame: Update grub
│ │ │ -001098d0: 2064 6566 6175 6c74 7320 616e 6420 7468   defaults and th
│ │ │ -001098e0: 6520 626f 6f74 6c6f 6164 6572 206d 656e  e bootloader men
│ │ │ -001098f0: 750a 2020 616e 7369 626c 652e 6275 696c  u.  ansible.buil
│ │ │ -00109900: 7469 6e2e 636f 6d6d 616e 643a 202f 7362  tin.command: /sb
│ │ │ -00109910: 696e 2f67 7275 6262 7920 2d2d 7570 6461  in/grubby --upda
│ │ │ -00109920: 7465 2d6b 6572 6e65 6c3d 414c 4c20 2d2d  te-kernel=ALL --
│ │ │ -00109930: 6172 6773 3d22 726e 675f 636f 7265 2e64  args="rng_core.d
│ │ │ -00109940: 6566 6175 6c74 5f71 7561 6c69 7479 3d7b  efault_quality={
│ │ │ -00109950: 7b0a 2020 2020 7661 725f 726e 675f 636f  {.    var_rng_co
│ │ │ -00109960: 7265 5f64 6566 6175 6c74 5f71 7561 6c69  re_default_quali
│ │ │ -00109970: 7479 207d 7d22 0a20 2077 6865 6e3a 0a20  ty }}".  when:. 
│ │ │ -00109980: 202d 2028 2022 6772 7562 322d 636f 6d6d   - ( "grub2-comm
│ │ │ -00109990: 6f6e 2220 696e 2061 6e73 6962 6c65 5f66  on" in ansible_f
│ │ │ -001099a0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001099b0: 6420 226b 6572 6e65 6c22 2069 6e20 616e  d "kernel" in an
│ │ │ -001099c0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001099d0: 6167 6573 0a20 2020 2029 0a20 202d 2028  ages.    ).  - (
│ │ │ -001099e0: 6772 7562 6279 5f69 6e66 6f2e 7374 646f  grubby_info.stdo
│ │ │ -001099f0: 7574 2069 7320 6e6f 7420 7365 6172 6368  ut is not search
│ │ │ -00109a00: 2827 726e 675f 636f 7265 2e64 6566 6175  ('rng_core.defau
│ │ │ -00109a10: 6c74 5f71 7561 6c69 7479 3d27 207e 2076  lt_quality=' ~ v
│ │ │ -00109a20: 6172 5f72 6e67 5f63 6f72 655f 6465 6661  ar_rng_core_defa
│ │ │ -00109a30: 756c 745f 7175 616c 6974 7929 290a 2020  ult_quality)).  
│ │ │ -00109a40: 2020 6f72 2028 2865 7463 5f64 6566 6175    or ((etc_defau
│ │ │ -00109a50: 6c74 5f67 7275 625b 2763 6f6e 7465 6e74  lt_grub['content
│ │ │ -00109a60: 275d 207c 2062 3634 6465 636f 6465 2920  '] | b64decode) 
│ │ │ -00109a70: 6973 206e 6f74 2073 6561 7263 6828 2772  is not search('r
│ │ │ -00109a80: 6e67 5f63 6f72 652e 6465 6661 756c 745f  ng_core.default_
│ │ │ -00109a90: 7175 616c 6974 793d 270a 2020 2020 7e20  quality='.    ~ 
│ │ │ -00109aa0: 7661 725f 726e 675f 636f 7265 5f64 6566  var_rng_core_def
│ │ │ -00109ab0: 6175 6c74 5f71 7561 6c69 7479 2929 0a20  ault_quality)). 
│ │ │ -00109ac0: 2074 6167 733a 0a20 202d 2067 7275 6232   tags:.  - grub2
│ │ │ -00109ad0: 5f72 6e67 5f63 6f72 655f 6465 6661 756c  _rng_core_defaul
│ │ │ -00109ae0: 745f 7175 616c 6974 795f 6172 6775 6d65  t_quality_argume
│ │ │ -00109af0: 6e74 0a20 202d 206c 6f77 5f64 6973 7275  nt.  - low_disru
│ │ │ -00109b00: 7074 696f 6e0a 2020 2d20 6c6f 775f 7365  ption.  - low_se
│ │ │ -00109b10: 7665 7269 7479 0a20 202d 206d 6564 6975  verity.  - mediu
│ │ │ -00109b20: 6d5f 636f 6d70 6c65 7869 7479 0a20 202d  m_complexity.  -
│ │ │ -00109b30: 2072 6562 6f6f 745f 7265 7175 6972 6564   reboot_required
│ │ │ -00109b40: 0a20 202d 2072 6573 7472 6963 745f 7374  .  - restrict_st
│ │ │ -00109b50: 7261 7465 6779 0a3c 2f63 6f64 653e 3c2f  rategy.
Comp │ │ │ -001092c0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -001092d0: 6d65 6469 756d 3c2f 7464 3e3c 2f74 723e medium
Disrupti │ │ │ -001092f0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -00109300: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:true
Strategy: │ │ │ -00109340: 3c2f 7468 3e3c 7464 3e72 6573 7472 6963 restric │ │ │ -00109350: 743c 2f74 643e 3c2f 7472 3e3c 2f74 6162 t
│ │ │ +00109100: 3c74 643e 6d65 6469 756d 3c2f 7464 3e3c < │ │ │ +00109110: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +00109190: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ +001091b0: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ +001091c0: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ +001091d0: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ +001091e0: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ +001091f0: 2d20 6772 7562 325f 726e 675f 636f 7265  - grub2_rng_core
│ │ │ +00109200: 5f64 6566 6175 6c74 5f71 7561 6c69 7479  _default_quality
│ │ │ +00109210: 5f61 7267 756d 656e 740a 2020 2d20 6c6f  _argument.  - lo
│ │ │ +00109220: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +00109230: 206c 6f77 5f73 6576 6572 6974 790a 2020   low_severity.  
│ │ │ +00109240: 2d20 6d65 6469 756d 5f63 6f6d 706c 6578  - medium_complex
│ │ │ +00109250: 6974 790a 2020 2d20 7265 626f 6f74 5f72  ity.  - reboot_r
│ │ │ +00109260: 6571 7569 7265 640a 2020 2d20 7265 7374  equired.  - rest
│ │ │ +00109270: 7269 6374 5f73 7472 6174 6567 790a 2d20  rict_strategy.- 
│ │ │ +00109280: 6e61 6d65 3a20 5843 4344 4620 5661 6c75  name: XCCDF Valu
│ │ │ +00109290: 6520 7661 725f 726e 675f 636f 7265 5f64  e var_rng_core_d
│ │ │ +001092a0: 6566 6175 6c74 5f71 7561 6c69 7479 2023  efault_quality #
│ │ │ +001092b0: 2070 726f 6d6f 7465 2074 6f20 7661 7269   promote to vari
│ │ │ +001092c0: 6162 6c65 0a20 2073 6574 5f66 6163 743a  able.  set_fact:
│ │ │ +001092d0: 0a20 2020 2076 6172 5f72 6e67 5f63 6f72  .    var_rng_cor
│ │ │ +001092e0: 655f 6465 6661 756c 745f 7175 616c 6974  e_default_qualit
│ │ │ +001092f0: 793a 2021 2173 7472 203c 6162 6272 2074  y: !!str 500.  t
│ │ │ +00109370: 6167 733a 0a20 2020 202d 2061 6c77 6179  ags:.    - alway
│ │ │ +00109380: 730a 0a2d 206e 616d 653a 2043 6865 636b  s..- name: Check
│ │ │ +00109390: 2069 6620 726e 675f 636f 7265 2e64 6566   if rng_core.def
│ │ │ +001093a0: 6175 6c74 5f71 7561 6c69 7479 2061 7267  ault_quality arg
│ │ │ +001093b0: 756d 656e 7420 6973 2061 6c72 6561 6479  ument is already
│ │ │ +001093c0: 2070 7265 7365 6e74 2069 6e20 2f65 7463   present in /etc
│ │ │ +001093d0: 2f64 6566 6175 6c74 2f67 7275 620a 2020  /default/grub.  
│ │ │ +001093e0: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +001093f0: 736c 7572 703a 0a20 2020 2073 7263 3a20  slurp:.    src: 
│ │ │ +00109400: 2f65 7463 2f64 6566 6175 6c74 2f67 7275  /etc/default/gru
│ │ │ +00109410: 620a 2020 7265 6769 7374 6572 3a20 6574  b.  register: et
│ │ │ +00109420: 635f 6465 6661 756c 745f 6772 7562 0a20  c_default_grub. 
│ │ │ +00109430: 2077 6865 6e3a 2028 2022 6772 7562 322d   when: ( "grub2-
│ │ │ +00109440: 636f 6d6d 6f6e 2220 696e 2061 6e73 6962  common" in ansib
│ │ │ +00109450: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +00109460: 7320 616e 6420 226b 6572 6e65 6c22 2069  s and "kernel" i
│ │ │ +00109470: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +00109480: 7061 636b 6167 6573 0a20 2020 2029 0a20  packages.    ). 
│ │ │ +00109490: 2074 6167 733a 0a20 202d 2067 7275 6232   tags:.  - grub2
│ │ │ +001094a0: 5f72 6e67 5f63 6f72 655f 6465 6661 756c  _rng_core_defaul
│ │ │ +001094b0: 745f 7175 616c 6974 795f 6172 6775 6d65  t_quality_argume
│ │ │ +001094c0: 6e74 0a20 202d 206c 6f77 5f64 6973 7275  nt.  - low_disru
│ │ │ +001094d0: 7074 696f 6e0a 2020 2d20 6c6f 775f 7365  ption.  - low_se
│ │ │ +001094e0: 7665 7269 7479 0a20 202d 206d 6564 6975  verity.  - mediu
│ │ │ +001094f0: 6d5f 636f 6d70 6c65 7869 7479 0a20 202d  m_complexity.  -
│ │ │ +00109500: 2072 6562 6f6f 745f 7265 7175 6972 6564   reboot_required
│ │ │ +00109510: 0a20 202d 2072 6573 7472 6963 745f 7374  .  - restrict_st
│ │ │ +00109520: 7261 7465 6779 0a0a 2d20 6e61 6d65 3a20  rategy..- name: 
│ │ │ +00109530: 4368 6563 6b20 6966 2072 6e67 5f63 6f72  Check if rng_cor
│ │ │ +00109540: 652e 6465 6661 756c 745f 7175 616c 6974  e.default_qualit
│ │ │ +00109550: 7920 6172 6775 6d65 6e74 2069 7320 616c  y argument is al
│ │ │ +00109560: 7265 6164 7920 7072 6573 656e 740a 2020  ready present.  
│ │ │ +00109570: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +00109580: 636f 6d6d 616e 643a 202f 7362 696e 2f67  command: /sbin/g
│ │ │ +00109590: 7275 6262 7920 2d2d 696e 666f 3d41 4c4c  rubby --info=ALL
│ │ │ +001095a0: 0a20 2072 6567 6973 7465 723a 2067 7275  .  register: gru
│ │ │ +001095b0: 6262 795f 696e 666f 0a20 2063 6865 636b  bby_info.  check
│ │ │ +001095c0: 5f6d 6f64 653a 2066 616c 7365 0a20 2063  _mode: false.  c
│ │ │ +001095d0: 6861 6e67 6564 5f77 6865 6e3a 2066 616c  hanged_when: fal
│ │ │ +001095e0: 7365 0a20 2066 6169 6c65 645f 7768 656e  se.  failed_when
│ │ │ +001095f0: 3a20 6661 6c73 650a 2020 7768 656e 3a20  : false.  when: 
│ │ │ +00109600: 2820 2267 7275 6232 2d63 6f6d 6d6f 6e22  ( "grub2-common"
│ │ │ +00109610: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +00109620: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +00109630: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +00109640: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +00109650: 730a 2020 2020 290a 2020 7461 6773 3a0a  s.    ).  tags:.
│ │ │ +00109660: 2020 2d20 6772 7562 325f 726e 675f 636f    - grub2_rng_co
│ │ │ +00109670: 7265 5f64 6566 6175 6c74 5f71 7561 6c69  re_default_quali
│ │ │ +00109680: 7479 5f61 7267 756d 656e 740a 2020 2d20  ty_argument.  - 
│ │ │ +00109690: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +001096a0: 202d 206c 6f77 5f73 6576 6572 6974 790a   - low_severity.
│ │ │ +001096b0: 2020 2d20 6d65 6469 756d 5f63 6f6d 706c    - medium_compl
│ │ │ +001096c0: 6578 6974 790a 2020 2d20 7265 626f 6f74  exity.  - reboot
│ │ │ +001096d0: 5f72 6571 7569 7265 640a 2020 2d20 7265  _required.  - re
│ │ │ +001096e0: 7374 7269 6374 5f73 7472 6174 6567 790a  strict_strategy.
│ │ │ +001096f0: 0a2d 206e 616d 653a 2055 7064 6174 6520  .- name: Update 
│ │ │ +00109700: 6772 7562 2064 6566 6175 6c74 7320 616e  grub defaults an
│ │ │ +00109710: 6420 7468 6520 626f 6f74 6c6f 6164 6572  d the bootloader
│ │ │ +00109720: 206d 656e 750a 2020 616e 7369 626c 652e   menu.  ansible.
│ │ │ +00109730: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ +00109740: 202f 7362 696e 2f67 7275 6262 7920 2d2d   /sbin/grubby --
│ │ │ +00109750: 7570 6461 7465 2d6b 6572 6e65 6c3d 414c  update-kernel=AL
│ │ │ +00109760: 4c20 2d2d 6172 6773 3d22 726e 675f 636f  L --args="rng_co
│ │ │ +00109770: 7265 2e64 6566 6175 6c74 5f71 7561 6c69  re.default_quali
│ │ │ +00109780: 7479 3d7b 7b0a 2020 2020 7661 725f 726e  ty={{.    var_rn
│ │ │ +00109790: 675f 636f 7265 5f64 6566 6175 6c74 5f71  g_core_default_q
│ │ │ +001097a0: 7561 6c69 7479 207d 7d22 0a20 2077 6865  uality }}".  whe
│ │ │ +001097b0: 6e3a 0a20 202d 2028 2022 6772 7562 322d  n:.  - ( "grub2-
│ │ │ +001097c0: 636f 6d6d 6f6e 2220 696e 2061 6e73 6962  common" in ansib
│ │ │ +001097d0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001097e0: 7320 616e 6420 226b 6572 6e65 6c22 2069  s and "kernel" i
│ │ │ +001097f0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +00109800: 7061 636b 6167 6573 0a20 2020 2029 0a20  packages.    ). 
│ │ │ +00109810: 202d 2028 6772 7562 6279 5f69 6e66 6f2e   - (grubby_info.
│ │ │ +00109820: 7374 646f 7574 2069 7320 6e6f 7420 7365  stdout is not se
│ │ │ +00109830: 6172 6368 2827 726e 675f 636f 7265 2e64  arch('rng_core.d
│ │ │ +00109840: 6566 6175 6c74 5f71 7561 6c69 7479 3d27  efault_quality='
│ │ │ +00109850: 207e 2076 6172 5f72 6e67 5f63 6f72 655f   ~ var_rng_core_
│ │ │ +00109860: 6465 6661 756c 745f 7175 616c 6974 7929  default_quality)
│ │ │ +00109870: 290a 2020 2020 6f72 2028 2865 7463 5f64  ).    or ((etc_d
│ │ │ +00109880: 6566 6175 6c74 5f67 7275 625b 2763 6f6e  efault_grub['con
│ │ │ +00109890: 7465 6e74 275d 207c 2062 3634 6465 636f  tent'] | b64deco
│ │ │ +001098a0: 6465 2920 6973 206e 6f74 2073 6561 7263  de) is not searc
│ │ │ +001098b0: 6828 2772 6e67 5f63 6f72 652e 6465 6661  h('rng_core.defa
│ │ │ +001098c0: 756c 745f 7175 616c 6974 793d 270a 2020  ult_quality='.  
│ │ │ +001098d0: 2020 7e20 7661 725f 726e 675f 636f 7265    ~ var_rng_core
│ │ │ +001098e0: 5f64 6566 6175 6c74 5f71 7561 6c69 7479  _default_quality
│ │ │ +001098f0: 2929 0a20 2074 6167 733a 0a20 202d 2067  )).  tags:.  - g
│ │ │ +00109900: 7275 6232 5f72 6e67 5f63 6f72 655f 6465  rub2_rng_core_de
│ │ │ +00109910: 6661 756c 745f 7175 616c 6974 795f 6172  fault_quality_ar
│ │ │ +00109920: 6775 6d65 6e74 0a20 202d 206c 6f77 5f64  gument.  - low_d
│ │ │ +00109930: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +00109940: 775f 7365 7665 7269 7479 0a20 202d 206d  w_severity.  - m
│ │ │ +00109950: 6564 6975 6d5f 636f 6d70 6c65 7869 7479  edium_complexity
│ │ │ +00109960: 0a20 202d 2072 6562 6f6f 745f 7265 7175  .  - reboot_requ
│ │ │ +00109970: 6972 6564 0a20 202d 2072 6573 7472 6963  ired.  - restric
│ │ │ +00109980: 745f 7374 7261 7465 6779 0a3c 2f63 6f64  t_strategy.
Remed │ │ │ +00109a40: 6961 7469 6f6e 204f 5342 7569 6c64 2042 iation OSBuild B │ │ │ +00109a50: 6c75 6570 7269 6e74 2073 6e69 7070 6574 lueprint snippet │ │ │ +00109a60: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
[customiz
│ │ │ +00109ab0: 6174 696f 6e73 2e6b 6572 6e65 6c5d 0a61  ations.kernel].a
│ │ │ +00109ac0: 7070 656e 6420 3d20 2272 6e67 5f63 6f72  ppend = "rng_cor
│ │ │ +00109ad0: 652e 6465 6661 756c 745f 7175 616c 6974  e.default_qualit
│ │ │ +00109ae0: 793d 3c61 6262 7220 7469 746c 653d 2266  y=500".
│ │ │ -0010aca0: 5265 6d65 6469 6174 696f 6e20 4f53 4275 Remediation OSBu │ │ │ -0010acb0: 696c 6420 426c 7565 7072 696e 7420 736e ild Blueprint sn │ │ │ -0010acc0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
[cus
│ │ │ -0010ad10: 746f 6d69 7a61 7469 6f6e 732e 6b65 726e  tomizations.kern
│ │ │ -0010ad20: 656c 5d0a 6170 7065 6e64 203d 2022 736c  el].append = "sl
│ │ │ -0010ad30: 6162 5f6e 6f6d 6572 6765 3d79 6573 220a  ab_nomerge=yes".
│ │ │ -0010ad40: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -0010adf0: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -0010ae00: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -0010ae10: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ +001090f0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:medium
Disr │ │ │ +00109120: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +00109130: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:true
Strat │ │ │ +00109170: 6567 793a 3c2f 7468 3e3c 7464 3e72 6573 egy:res │ │ │ +00109180: 7472 6963 743c 2f74 643e 3c2f 7472 3e3c trict
│ │ │ -0010aeb0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ -0010af00: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr> │ │ │ -0010af30: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:medium
Dis │ │ │ -0010aec0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:true
Stra │ │ │ -0010af10: 7465 6779 3a3c 2f74 683e 3c74 643e 7265 tegy:re │ │ │ -0010af20: 7374 7269 6374 3c2f 7464 3e3c 2f74 723e strict
- name: Gathe
│ │ │ -0010af50: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ -0010af60: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ -0010af70: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ -0010af80: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ -0010af90: 202d 2067 7275 6232 5f73 6c61 625f 6e6f   - grub2_slab_no
│ │ │ -0010afa0: 6d65 7267 655f 6172 6775 6d65 6e74 0a20  merge_argument. 
│ │ │ -0010afb0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -0010afc0: 6e0a 2020 2d20 6d65 6469 756d 5f63 6f6d  n.  - medium_com
│ │ │ -0010afd0: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -0010afe0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -0010aff0: 7265 626f 6f74 5f72 6571 7569 7265 640a  reboot_required.
│ │ │ -0010b000: 2020 2d20 7265 7374 7269 6374 5f73 7472    - restrict_str
│ │ │ -0010b010: 6174 6567 790a 0a2d 206e 616d 653a 2043  ategy..- name: C
│ │ │ -0010b020: 6865 636b 2069 6620 736c 6162 5f6e 6f6d  heck if slab_nom
│ │ │ -0010b030: 6572 6765 2061 7267 756d 656e 7420 6973  erge argument is
│ │ │ -0010b040: 2061 6c72 6561 6479 2070 7265 7365 6e74   already present
│ │ │ -0010b050: 2069 6e20 2f65 7463 2f64 6566 6175 6c74   in /etc/default
│ │ │ -0010b060: 2f67 7275 620a 2020 616e 7369 626c 652e  /grub.  ansible.
│ │ │ -0010b070: 6275 696c 7469 6e2e 736c 7572 703a 0a20  builtin.slurp:. 
│ │ │ -0010b080: 2020 2073 7263 3a20 2f65 7463 2f64 6566     src: /etc/def
│ │ │ -0010b090: 6175 6c74 2f67 7275 620a 2020 7265 6769  ault/grub.  regi
│ │ │ -0010b0a0: 7374 6572 3a20 6574 635f 6465 6661 756c  ster: etc_defaul
│ │ │ -0010b0b0: 745f 6772 7562 0a20 2077 6865 6e3a 2028  t_grub.  when: (
│ │ │ -0010b0c0: 2022 6772 7562 322d 636f 6d6d 6f6e 2220   "grub2-common" 
│ │ │ -0010b0d0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -0010b0e0: 2e70 6163 6b61 6765 7320 616e 6420 226b  .packages and "k
│ │ │ -0010b0f0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -0010b100: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -0010b110: 0a20 2020 2029 0a20 2074 6167 733a 0a20  .    ).  tags:. 
│ │ │ -0010b120: 202d 2067 7275 6232 5f73 6c61 625f 6e6f   - grub2_slab_no
│ │ │ -0010b130: 6d65 7267 655f 6172 6775 6d65 6e74 0a20  merge_argument. 
│ │ │ -0010b140: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -0010b150: 6e0a 2020 2d20 6d65 6469 756d 5f63 6f6d  n.  - medium_com
│ │ │ -0010b160: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -0010b170: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -0010b180: 7265 626f 6f74 5f72 6571 7569 7265 640a  reboot_required.
│ │ │ -0010b190: 2020 2d20 7265 7374 7269 6374 5f73 7472    - restrict_str
│ │ │ -0010b1a0: 6174 6567 790a 0a2d 206e 616d 653a 2043  ategy..- name: C
│ │ │ -0010b1b0: 6865 636b 2069 6620 736c 6162 5f6e 6f6d  heck if slab_nom
│ │ │ -0010b1c0: 6572 6765 2061 7267 756d 656e 7420 6973  erge argument is
│ │ │ -0010b1d0: 2061 6c72 6561 6479 2070 7265 7365 6e74   already present
│ │ │ -0010b1e0: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -0010b1f0: 696e 2e63 6f6d 6d61 6e64 3a20 2f73 6269  in.command: /sbi
│ │ │ -0010b200: 6e2f 6772 7562 6279 202d 2d69 6e66 6f3d  n/grubby --info=
│ │ │ -0010b210: 414c 4c0a 2020 7265 6769 7374 6572 3a20  ALL.  register: 
│ │ │ -0010b220: 6772 7562 6279 5f69 6e66 6f0a 2020 6368  grubby_info.  ch
│ │ │ -0010b230: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a  eck_mode: false.
│ │ │ -0010b240: 2020 6368 616e 6765 645f 7768 656e 3a20    changed_when: 
│ │ │ -0010b250: 6661 6c73 650a 2020 6661 696c 6564 5f77  false.  failed_w
│ │ │ -0010b260: 6865 6e3a 2066 616c 7365 0a20 2077 6865  hen: false.  whe
│ │ │ -0010b270: 6e3a 2028 2022 6772 7562 322d 636f 6d6d  n: ( "grub2-comm
│ │ │ -0010b280: 6f6e 2220 696e 2061 6e73 6962 6c65 5f66  on" in ansible_f
│ │ │ -0010b290: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -0010b2a0: 6420 226b 6572 6e65 6c22 2069 6e20 616e  d "kernel" in an
│ │ │ -0010b2b0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -0010b2c0: 6167 6573 0a20 2020 2029 0a20 2074 6167  ages.    ).  tag
│ │ │ -0010b2d0: 733a 0a20 202d 2067 7275 6232 5f73 6c61  s:.  - grub2_sla
│ │ │ -0010b2e0: 625f 6e6f 6d65 7267 655f 6172 6775 6d65  b_nomerge_argume
│ │ │ -0010b2f0: 6e74 0a20 202d 206c 6f77 5f64 6973 7275  nt.  - low_disru
│ │ │ -0010b300: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ -0010b310: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -0010b320: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -0010b330: 2020 2d20 7265 626f 6f74 5f72 6571 7569    - reboot_requi
│ │ │ -0010b340: 7265 640a 2020 2d20 7265 7374 7269 6374  red.  - restrict
│ │ │ -0010b350: 5f73 7472 6174 6567 790a 0a2d 206e 616d  _strategy..- nam
│ │ │ -0010b360: 653a 2055 7064 6174 6520 6772 7562 2064  e: Update grub d
│ │ │ -0010b370: 6566 6175 6c74 7320 616e 6420 7468 6520  efaults and the 
│ │ │ -0010b380: 626f 6f74 6c6f 6164 6572 206d 656e 750a  bootloader menu.
│ │ │ -0010b390: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -0010b3a0: 6e2e 636f 6d6d 616e 643a 202f 7362 696e  n.command: /sbin
│ │ │ -0010b3b0: 2f67 7275 6262 7920 2d2d 7570 6461 7465  /grubby --update
│ │ │ -0010b3c0: 2d6b 6572 6e65 6c3d 414c 4c20 2d2d 6172  -kernel=ALL --ar
│ │ │ -0010b3d0: 6773 3d22 736c 6162 5f6e 6f6d 6572 6765  gs="slab_nomerge
│ │ │ -0010b3e0: 3d79 6573 220a 2020 7768 656e 3a0a 2020  =yes".  when:.  
│ │ │ -0010b3f0: 2d20 2820 2267 7275 6232 2d63 6f6d 6d6f  - ( "grub2-commo
│ │ │ -0010b400: 6e22 2069 6e20 616e 7369 626c 655f 6661  n" in ansible_fa
│ │ │ -0010b410: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -0010b420: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -0010b430: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -0010b440: 6765 730a 2020 2020 290a 2020 2d20 2867  ges.    ).  - (g
│ │ │ -0010b450: 7275 6262 795f 696e 666f 2e73 7464 6f75  rubby_info.stdou
│ │ │ -0010b460: 7420 6973 206e 6f74 2073 6561 7263 6828  t is not search(
│ │ │ -0010b470: 2773 6c61 625f 6e6f 6d65 7267 653d 7965  'slab_nomerge=ye
│ │ │ -0010b480: 7327 2929 206f 7220 2828 6574 635f 6465  s')) or ((etc_de
│ │ │ -0010b490: 6661 756c 745f 6772 7562 5b27 636f 6e74  fault_grub['cont
│ │ │ -0010b4a0: 656e 7427 5d0a 2020 2020 7c20 6236 3464  ent'].    | b64d
│ │ │ -0010b4b0: 6563 6f64 6529 2069 7320 6e6f 7420 7365  ecode) is not se
│ │ │ -0010b4c0: 6172 6368 2827 736c 6162 5f6e 6f6d 6572  arch('slab_nomer
│ │ │ -0010b4d0: 6765 3d79 6573 2729 290a 2020 7461 6773  ge=yes')).  tags
│ │ │ -0010b4e0: 3a0a 2020 2d20 6772 7562 325f 736c 6162  :.  - grub2_slab
│ │ │ -0010b4f0: 5f6e 6f6d 6572 6765 5f61 7267 756d 656e  _nomerge_argumen
│ │ │ -0010b500: 740a 2020 2d20 6c6f 775f 6469 7372 7570  t.  - low_disrup
│ │ │ -0010b510: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ -0010b520: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -0010b530: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -0010b540: 202d 2072 6562 6f6f 745f 7265 7175 6972   - reboot_requir
│ │ │ -0010b550: 6564 0a20 202d 2072 6573 7472 6963 745f  ed.  - restrict_
│ │ │ -0010b560: 7374 7261 7465 6779 0a3c 2f63 6f64 653e  strategy.
│ │ │ +0010aca0: 5265 6d65 6469 6174 696f 6e20 416e 7369  Remediation Ansi
│ │ │ +0010acb0: 626c 6520 736e 6970 7065 7420 e287 b23c  ble snippet ...<
│ │ │ +0010acc0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173  /a>
│ │ │ +0010ad60: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ +0010adb0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr> │ │ │ +0010ade0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:medium
Dis │ │ │ +0010ad70: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:true
Stra │ │ │ +0010adc0: 7465 6779 3a3c 2f74 683e 3c74 643e 7265 tegy:re │ │ │ +0010add0: 7374 7269 6374 3c2f 7464 3e3c 2f74 723e strict
- name: Gathe
│ │ │ +0010ae00: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ +0010ae10: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ +0010ae20: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ +0010ae30: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ +0010ae40: 202d 2067 7275 6232 5f73 6c61 625f 6e6f   - grub2_slab_no
│ │ │ +0010ae50: 6d65 7267 655f 6172 6775 6d65 6e74 0a20  merge_argument. 
│ │ │ +0010ae60: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +0010ae70: 6e0a 2020 2d20 6d65 6469 756d 5f63 6f6d  n.  - medium_com
│ │ │ +0010ae80: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +0010ae90: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +0010aea0: 7265 626f 6f74 5f72 6571 7569 7265 640a  reboot_required.
│ │ │ +0010aeb0: 2020 2d20 7265 7374 7269 6374 5f73 7472    - restrict_str
│ │ │ +0010aec0: 6174 6567 790a 0a2d 206e 616d 653a 2043  ategy..- name: C
│ │ │ +0010aed0: 6865 636b 2069 6620 736c 6162 5f6e 6f6d  heck if slab_nom
│ │ │ +0010aee0: 6572 6765 2061 7267 756d 656e 7420 6973  erge argument is
│ │ │ +0010aef0: 2061 6c72 6561 6479 2070 7265 7365 6e74   already present
│ │ │ +0010af00: 2069 6e20 2f65 7463 2f64 6566 6175 6c74   in /etc/default
│ │ │ +0010af10: 2f67 7275 620a 2020 616e 7369 626c 652e  /grub.  ansible.
│ │ │ +0010af20: 6275 696c 7469 6e2e 736c 7572 703a 0a20  builtin.slurp:. 
│ │ │ +0010af30: 2020 2073 7263 3a20 2f65 7463 2f64 6566     src: /etc/def
│ │ │ +0010af40: 6175 6c74 2f67 7275 620a 2020 7265 6769  ault/grub.  regi
│ │ │ +0010af50: 7374 6572 3a20 6574 635f 6465 6661 756c  ster: etc_defaul
│ │ │ +0010af60: 745f 6772 7562 0a20 2077 6865 6e3a 2028  t_grub.  when: (
│ │ │ +0010af70: 2022 6772 7562 322d 636f 6d6d 6f6e 2220   "grub2-common" 
│ │ │ +0010af80: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +0010af90: 2e70 6163 6b61 6765 7320 616e 6420 226b  .packages and "k
│ │ │ +0010afa0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +0010afb0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +0010afc0: 0a20 2020 2029 0a20 2074 6167 733a 0a20  .    ).  tags:. 
│ │ │ +0010afd0: 202d 2067 7275 6232 5f73 6c61 625f 6e6f   - grub2_slab_no
│ │ │ +0010afe0: 6d65 7267 655f 6172 6775 6d65 6e74 0a20  merge_argument. 
│ │ │ +0010aff0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +0010b000: 6e0a 2020 2d20 6d65 6469 756d 5f63 6f6d  n.  - medium_com
│ │ │ +0010b010: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +0010b020: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +0010b030: 7265 626f 6f74 5f72 6571 7569 7265 640a  reboot_required.
│ │ │ +0010b040: 2020 2d20 7265 7374 7269 6374 5f73 7472    - restrict_str
│ │ │ +0010b050: 6174 6567 790a 0a2d 206e 616d 653a 2043  ategy..- name: C
│ │ │ +0010b060: 6865 636b 2069 6620 736c 6162 5f6e 6f6d  heck if slab_nom
│ │ │ +0010b070: 6572 6765 2061 7267 756d 656e 7420 6973  erge argument is
│ │ │ +0010b080: 2061 6c72 6561 6479 2070 7265 7365 6e74   already present
│ │ │ +0010b090: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ +0010b0a0: 696e 2e63 6f6d 6d61 6e64 3a20 2f73 6269  in.command: /sbi
│ │ │ +0010b0b0: 6e2f 6772 7562 6279 202d 2d69 6e66 6f3d  n/grubby --info=
│ │ │ +0010b0c0: 414c 4c0a 2020 7265 6769 7374 6572 3a20  ALL.  register: 
│ │ │ +0010b0d0: 6772 7562 6279 5f69 6e66 6f0a 2020 6368  grubby_info.  ch
│ │ │ +0010b0e0: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a  eck_mode: false.
│ │ │ +0010b0f0: 2020 6368 616e 6765 645f 7768 656e 3a20    changed_when: 
│ │ │ +0010b100: 6661 6c73 650a 2020 6661 696c 6564 5f77  false.  failed_w
│ │ │ +0010b110: 6865 6e3a 2066 616c 7365 0a20 2077 6865  hen: false.  whe
│ │ │ +0010b120: 6e3a 2028 2022 6772 7562 322d 636f 6d6d  n: ( "grub2-comm
│ │ │ +0010b130: 6f6e 2220 696e 2061 6e73 6962 6c65 5f66  on" in ansible_f
│ │ │ +0010b140: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +0010b150: 6420 226b 6572 6e65 6c22 2069 6e20 616e  d "kernel" in an
│ │ │ +0010b160: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +0010b170: 6167 6573 0a20 2020 2029 0a20 2074 6167  ages.    ).  tag
│ │ │ +0010b180: 733a 0a20 202d 2067 7275 6232 5f73 6c61  s:.  - grub2_sla
│ │ │ +0010b190: 625f 6e6f 6d65 7267 655f 6172 6775 6d65  b_nomerge_argume
│ │ │ +0010b1a0: 6e74 0a20 202d 206c 6f77 5f64 6973 7275  nt.  - low_disru
│ │ │ +0010b1b0: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ +0010b1c0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +0010b1d0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +0010b1e0: 2020 2d20 7265 626f 6f74 5f72 6571 7569    - reboot_requi
│ │ │ +0010b1f0: 7265 640a 2020 2d20 7265 7374 7269 6374  red.  - restrict
│ │ │ +0010b200: 5f73 7472 6174 6567 790a 0a2d 206e 616d  _strategy..- nam
│ │ │ +0010b210: 653a 2055 7064 6174 6520 6772 7562 2064  e: Update grub d
│ │ │ +0010b220: 6566 6175 6c74 7320 616e 6420 7468 6520  efaults and the 
│ │ │ +0010b230: 626f 6f74 6c6f 6164 6572 206d 656e 750a  bootloader menu.
│ │ │ +0010b240: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +0010b250: 6e2e 636f 6d6d 616e 643a 202f 7362 696e  n.command: /sbin
│ │ │ +0010b260: 2f67 7275 6262 7920 2d2d 7570 6461 7465  /grubby --update
│ │ │ +0010b270: 2d6b 6572 6e65 6c3d 414c 4c20 2d2d 6172  -kernel=ALL --ar
│ │ │ +0010b280: 6773 3d22 736c 6162 5f6e 6f6d 6572 6765  gs="slab_nomerge
│ │ │ +0010b290: 3d79 6573 220a 2020 7768 656e 3a0a 2020  =yes".  when:.  
│ │ │ +0010b2a0: 2d20 2820 2267 7275 6232 2d63 6f6d 6d6f  - ( "grub2-commo
│ │ │ +0010b2b0: 6e22 2069 6e20 616e 7369 626c 655f 6661  n" in ansible_fa
│ │ │ +0010b2c0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +0010b2d0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +0010b2e0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +0010b2f0: 6765 730a 2020 2020 290a 2020 2d20 2867  ges.    ).  - (g
│ │ │ +0010b300: 7275 6262 795f 696e 666f 2e73 7464 6f75  rubby_info.stdou
│ │ │ +0010b310: 7420 6973 206e 6f74 2073 6561 7263 6828  t is not search(
│ │ │ +0010b320: 2773 6c61 625f 6e6f 6d65 7267 653d 7965  'slab_nomerge=ye
│ │ │ +0010b330: 7327 2929 206f 7220 2828 6574 635f 6465  s')) or ((etc_de
│ │ │ +0010b340: 6661 756c 745f 6772 7562 5b27 636f 6e74  fault_grub['cont
│ │ │ +0010b350: 656e 7427 5d0a 2020 2020 7c20 6236 3464  ent'].    | b64d
│ │ │ +0010b360: 6563 6f64 6529 2069 7320 6e6f 7420 7365  ecode) is not se
│ │ │ +0010b370: 6172 6368 2827 736c 6162 5f6e 6f6d 6572  arch('slab_nomer
│ │ │ +0010b380: 6765 3d79 6573 2729 290a 2020 7461 6773  ge=yes')).  tags
│ │ │ +0010b390: 3a0a 2020 2d20 6772 7562 325f 736c 6162  :.  - grub2_slab
│ │ │ +0010b3a0: 5f6e 6f6d 6572 6765 5f61 7267 756d 656e  _nomerge_argumen
│ │ │ +0010b3b0: 740a 2020 2d20 6c6f 775f 6469 7372 7570  t.  - low_disrup
│ │ │ +0010b3c0: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ +0010b3d0: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +0010b3e0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +0010b3f0: 202d 2072 6562 6f6f 745f 7265 7175 6972   - reboot_requir
│ │ │ +0010b400: 6564 0a20 202d 2072 6573 7472 6963 745f  ed.  - restrict_
│ │ │ +0010b410: 7374 7261 7465 6779 0a3c 2f63 6f64 653e  strategy.
│ │ │ +0010b420: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +0010b4d0: 7469 6f6e 204f 5342 7569 6c64 2042 6c75 tion OSBuild Blu │ │ │ +0010b4e0: 6570 7269 6e74 2073 6e69 7070 6574 20e2 eprint snippet . │ │ │ +0010b4f0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
<
│ │ │ +0010b530: 636f 6465 3e5b 6375 7374 6f6d 697a 6174  code>[customizat
│ │ │ +0010b540: 696f 6e73 2e6b 6572 6e65 6c5d 0a61 7070  ions.kernel].app
│ │ │ +0010b550: 656e 6420 3d20 2273 6c61 625f 6e6f 6d65  end = "slab_nome
│ │ │ +0010b560: 7267 653d 7965 7322 0a3c 2f63 6f64 653e  rge=yes".
│ │ │  0010b570: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remediatio │ │ │ -0010c820: 6e20 4f53 4275 696c 6420 426c 7565 7072 n OSBuild Bluepr │ │ │ -0010c830: 696e 7420 736e 6970 7065 7420 e287 b23c int snippet ...< │ │ │ -0010c840: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
[customization
│ │ │ -0010c890: 732e 6b65 726e 656c 5d0a 6170 7065 6e64  s.kernel].append
│ │ │ -0010c8a0: 203d 2022 7370 6563 5f73 746f 7265 5f62   = "spec_store_b
│ │ │ -0010c8b0: 7970 6173 735f 6469 7361 626c 653d 3c61  ypass_disable=
│ │ │ -0010c930: 7365 6363 6f6d 703c 2f61 6262 723e 220a  seccomp".
│ │ │ -0010c940: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -0010c9f0: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -0010ca00: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -0010ca10: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -0010cab0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ -0010cb00: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr> │ │ │ -0010cb30: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:medium
Dis │ │ │ -0010cac0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:true
Stra │ │ │ -0010cb10: 7465 6779 3a3c 2f74 683e 3c74 643e 7265 tegy:re │ │ │ -0010cb20: 7374 7269 6374 3c2f 7464 3e3c 2f74 723e strict
- name: Gathe
│ │ │ -0010cb50: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ -0010cb60: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ -0010cb70: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ -0010cb80: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ -0010cb90: 202d 2067 7275 6232 5f73 7065 635f 7374   - grub2_spec_st
│ │ │ -0010cba0: 6f72 655f 6279 7061 7373 5f64 6973 6162  ore_bypass_disab
│ │ │ -0010cbb0: 6c65 5f61 7267 756d 656e 740a 2020 2d20  le_argument.  - 
│ │ │ -0010cbc0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -0010cbd0: 202d 206d 6564 6975 6d5f 636f 6d70 6c65   - medium_comple
│ │ │ -0010cbe0: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ -0010cbf0: 7365 7665 7269 7479 0a20 202d 2072 6562  severity.  - reb
│ │ │ -0010cc00: 6f6f 745f 7265 7175 6972 6564 0a20 202d  oot_required.  -
│ │ │ -0010cc10: 2072 6573 7472 6963 745f 7374 7261 7465   restrict_strate
│ │ │ -0010cc20: 6779 0a2d 206e 616d 653a 2058 4343 4446  gy.- name: XCCDF
│ │ │ -0010cc30: 2056 616c 7565 2076 6172 5f73 7065 635f   Value var_spec_
│ │ │ -0010cc40: 7374 6f72 655f 6279 7061 7373 5f64 6973  store_bypass_dis
│ │ │ -0010cc50: 6162 6c65 5f6f 7074 696f 6e73 2023 2070  able_options # p
│ │ │ -0010cc60: 726f 6d6f 7465 2074 6f20 7661 7269 6162  romote to variab
│ │ │ -0010cc70: 6c65 0a20 2073 6574 5f66 6163 743a 0a20  le.  set_fact:. 
│ │ │ -0010cc80: 2020 2076 6172 5f73 7065 635f 7374 6f72     var_spec_stor
│ │ │ -0010cc90: 655f 6279 7061 7373 5f64 6973 6162 6c65  e_bypass_disable
│ │ │ -0010cca0: 5f6f 7074 696f 6e73 3a20 2121 7374 7220  _options: !!str 
│ │ │ -0010ccb0: 3c61 6262 7220 7469 746c 653d 2266 726f  seccomp
│ │ │ -0010cd30: 0a20 2074 6167 733a 0a20 2020 202d 2061  .  tags:.    - a
│ │ │ -0010cd40: 6c77 6179 730a 0a2d 206e 616d 653a 2043  lways..- name: C
│ │ │ -0010cd50: 6865 636b 2069 6620 7370 6563 5f73 746f  heck if spec_sto
│ │ │ -0010cd60: 7265 5f62 7970 6173 735f 6469 7361 626c  re_bypass_disabl
│ │ │ -0010cd70: 6520 6172 6775 6d65 6e74 2069 7320 616c  e argument is al
│ │ │ -0010cd80: 7265 6164 7920 7072 6573 656e 7420 696e  ready present in
│ │ │ -0010cd90: 202f 6574 632f 6465 6661 756c 742f 6772   /etc/default/gr
│ │ │ -0010cda0: 7562 0a20 2061 6e73 6962 6c65 2e62 7569  ub.  ansible.bui
│ │ │ -0010cdb0: 6c74 696e 2e73 6c75 7270 3a0a 2020 2020  ltin.slurp:.    
│ │ │ -0010cdc0: 7372 633a 202f 6574 632f 6465 6661 756c  src: /etc/defaul
│ │ │ -0010cdd0: 742f 6772 7562 0a20 2072 6567 6973 7465  t/grub.  registe
│ │ │ -0010cde0: 723a 2065 7463 5f64 6566 6175 6c74 5f67  r: etc_default_g
│ │ │ -0010cdf0: 7275 620a 2020 7768 656e 3a20 2820 2267  rub.  when: ( "g
│ │ │ -0010ce00: 7275 6232 2d63 6f6d 6d6f 6e22 2069 6e20  rub2-common" in 
│ │ │ -0010ce10: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -0010ce20: 636b 6167 6573 2061 6e64 2022 6b65 726e  ckages and "kern
│ │ │ -0010ce30: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -0010ce40: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -0010ce50: 2020 290a 2020 7461 6773 3a0a 2020 2d20    ).  tags:.  - 
│ │ │ -0010ce60: 6772 7562 325f 7370 6563 5f73 746f 7265  grub2_spec_store
│ │ │ -0010ce70: 5f62 7970 6173 735f 6469 7361 626c 655f  _bypass_disable_
│ │ │ -0010ce80: 6172 6775 6d65 6e74 0a20 202d 206c 6f77  argument.  - low
│ │ │ -0010ce90: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -0010cea0: 6d65 6469 756d 5f63 6f6d 706c 6578 6974  medium_complexit
│ │ │ -0010ceb0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -0010cec0: 6572 6974 790a 2020 2d20 7265 626f 6f74  erity.  - reboot
│ │ │ -0010ced0: 5f72 6571 7569 7265 640a 2020 2d20 7265  _required.  - re
│ │ │ -0010cee0: 7374 7269 6374 5f73 7472 6174 6567 790a  strict_strategy.
│ │ │ -0010cef0: 0a2d 206e 616d 653a 2043 6865 636b 2069  .- name: Check i
│ │ │ -0010cf00: 6620 7370 6563 5f73 746f 7265 5f62 7970  f spec_store_byp
│ │ │ -0010cf10: 6173 735f 6469 7361 626c 6520 6172 6775  ass_disable argu
│ │ │ -0010cf20: 6d65 6e74 2069 7320 616c 7265 6164 7920  ment is already 
│ │ │ -0010cf30: 7072 6573 656e 740a 2020 616e 7369 626c  present.  ansibl
│ │ │ -0010cf40: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ -0010cf50: 643a 202f 7362 696e 2f67 7275 6262 7920  d: /sbin/grubby 
│ │ │ -0010cf60: 2d2d 696e 666f 3d41 4c4c 0a20 2072 6567  --info=ALL.  reg
│ │ │ -0010cf70: 6973 7465 723a 2067 7275 6262 795f 696e  ister: grubby_in
│ │ │ -0010cf80: 666f 0a20 2063 6865 636b 5f6d 6f64 653a  fo.  check_mode:
│ │ │ -0010cf90: 2066 616c 7365 0a20 2063 6861 6e67 6564   false.  changed
│ │ │ -0010cfa0: 5f77 6865 6e3a 2066 616c 7365 0a20 2066  _when: false.  f
│ │ │ -0010cfb0: 6169 6c65 645f 7768 656e 3a20 6661 6c73  ailed_when: fals
│ │ │ -0010cfc0: 650a 2020 7768 656e 3a20 2820 2267 7275  e.  when: ( "gru
│ │ │ -0010cfd0: 6232 2d63 6f6d 6d6f 6e22 2069 6e20 616e  b2-common" in an
│ │ │ -0010cfe0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -0010cff0: 6167 6573 2061 6e64 2022 6b65 726e 656c  ages and "kernel
│ │ │ -0010d000: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -0010d010: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -0010d020: 290a 2020 7461 6773 3a0a 2020 2d20 6772  ).  tags:.  - gr
│ │ │ -0010d030: 7562 325f 7370 6563 5f73 746f 7265 5f62  ub2_spec_store_b
│ │ │ -0010d040: 7970 6173 735f 6469 7361 626c 655f 6172  ypass_disable_ar
│ │ │ -0010d050: 6775 6d65 6e74 0a20 202d 206c 6f77 5f64  gument.  - low_d
│ │ │ -0010d060: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -0010d070: 6469 756d 5f63 6f6d 706c 6578 6974 790a  dium_complexity.
│ │ │ -0010d080: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -0010d090: 6974 790a 2020 2d20 7265 626f 6f74 5f72  ity.  - reboot_r
│ │ │ -0010d0a0: 6571 7569 7265 640a 2020 2d20 7265 7374  equired.  - rest
│ │ │ -0010d0b0: 7269 6374 5f73 7472 6174 6567 790a 0a2d  rict_strategy..-
│ │ │ -0010d0c0: 206e 616d 653a 2055 7064 6174 6520 6772   name: Update gr
│ │ │ -0010d0d0: 7562 2064 6566 6175 6c74 7320 616e 6420  ub defaults and 
│ │ │ -0010d0e0: 7468 6520 626f 6f74 6c6f 6164 6572 206d  the bootloader m
│ │ │ -0010d0f0: 656e 750a 2020 616e 7369 626c 652e 6275  enu.  ansible.bu
│ │ │ -0010d100: 696c 7469 6e2e 636f 6d6d 616e 643a 202f  iltin.command: /
│ │ │ -0010d110: 7362 696e 2f67 7275 6262 7920 2d2d 7570  sbin/grubby --up
│ │ │ -0010d120: 6461 7465 2d6b 6572 6e65 6c3d 414c 4c20  date-kernel=ALL 
│ │ │ -0010d130: 2d2d 6172 6773 3d22 7370 6563 5f73 746f  --args="spec_sto
│ │ │ -0010d140: 7265 5f62 7970 6173 735f 6469 7361 626c  re_bypass_disabl
│ │ │ -0010d150: 653d 7b7b 0a20 2020 2076 6172 5f73 7065  e={{.    var_spe
│ │ │ -0010d160: 635f 7374 6f72 655f 6279 7061 7373 5f64  c_store_bypass_d
│ │ │ -0010d170: 6973 6162 6c65 5f6f 7074 696f 6e73 207d  isable_options }
│ │ │ -0010d180: 7d22 0a20 2077 6865 6e3a 0a20 202d 2028  }".  when:.  - (
│ │ │ -0010d190: 2022 6772 7562 322d 636f 6d6d 6f6e 2220   "grub2-common" 
│ │ │ -0010d1a0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -0010d1b0: 2e70 6163 6b61 6765 7320 616e 6420 226b  .packages and "k
│ │ │ -0010d1c0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -0010d1d0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -0010d1e0: 0a20 2020 2029 0a20 202d 2028 6772 7562  .    ).  - (grub
│ │ │ -0010d1f0: 6279 5f69 6e66 6f2e 7374 646f 7574 2069  by_info.stdout i
│ │ │ -0010d200: 7320 6e6f 7420 7365 6172 6368 2827 7370  s not search('sp
│ │ │ -0010d210: 6563 5f73 746f 7265 5f62 7970 6173 735f  ec_store_bypass_
│ │ │ -0010d220: 6469 7361 626c 653d 2720 7e20 7661 725f  disable=' ~ var_
│ │ │ -0010d230: 7370 6563 5f73 746f 7265 5f62 7970 6173  spec_store_bypas
│ │ │ -0010d240: 735f 6469 7361 626c 655f 6f70 7469 6f6e  s_disable_option
│ │ │ -0010d250: 7329 290a 2020 2020 6f72 2028 2865 7463  s)).    or ((etc
│ │ │ -0010d260: 5f64 6566 6175 6c74 5f67 7275 625b 2763  _default_grub['c
│ │ │ -0010d270: 6f6e 7465 6e74 275d 207c 2062 3634 6465  ontent'] | b64de
│ │ │ -0010d280: 636f 6465 2920 6973 206e 6f74 2073 6561  code) is not sea
│ │ │ -0010d290: 7263 6828 2773 7065 635f 7374 6f72 655f  rch('spec_store_
│ │ │ -0010d2a0: 6279 7061 7373 5f64 6973 6162 6c65 3d27  bypass_disable='
│ │ │ -0010d2b0: 0a20 2020 207e 2076 6172 5f73 7065 635f  .    ~ var_spec_
│ │ │ -0010d2c0: 7374 6f72 655f 6279 7061 7373 5f64 6973  store_bypass_dis
│ │ │ -0010d2d0: 6162 6c65 5f6f 7074 696f 6e73 2929 0a20  able_options)). 
│ │ │ -0010d2e0: 2074 6167 733a 0a20 202d 2067 7275 6232   tags:.  - grub2
│ │ │ -0010d2f0: 5f73 7065 635f 7374 6f72 655f 6279 7061  _spec_store_bypa
│ │ │ -0010d300: 7373 5f64 6973 6162 6c65 5f61 7267 756d  ss_disable_argum
│ │ │ -0010d310: 656e 740a 2020 2d20 6c6f 775f 6469 7372  ent.  - low_disr
│ │ │ -0010d320: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ -0010d330: 6d5f 636f 6d70 6c65 7869 7479 0a20 202d  m_complexity.  -
│ │ │ -0010d340: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -0010d350: 0a20 202d 2072 6562 6f6f 745f 7265 7175  .  - reboot_requ
│ │ │ -0010d360: 6972 6564 0a20 202d 2072 6573 7472 6963  ired.  - restric
│ │ │ -0010d370: 745f 7374 7261 7465 6779 0a3c 2f63 6f64  t_strategy.
< │ │ │ +0010c8b0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +0010c8c0: 793a 3c2f 7468 3e3c 7464 3e6d 6564 6975 y:mediu │ │ │ +0010c8d0: 6d3c 2f74 643e 3c2f 7472 3e3c 7472 3e3c m< │ │ │ +0010c8e0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:low< │ │ │ +0010c900: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>Rebo │ │ │ +0010c910: 6f74 3a3c 2f74 683e 3c74 643e 7472 7565 ot:true │ │ │ +0010c920: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ +0010c940: 3c74 643e 7265 7374 7269 6374 3c2f 7464 restrict

- name: │ │ │ +0010c970: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ +0010c980: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ +0010c990: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ +0010c9a0: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ +0010c9b0: 6167 733a 0a20 202d 2067 7275 6232 5f73 ags:. - grub2_s │ │ │ +0010c9c0: 7065 635f 7374 6f72 655f 6279 7061 7373 pec_store_bypass │ │ │ +0010c9d0: 5f64 6973 6162 6c65 5f61 7267 756d 656e _disable_argumen │ │ │ +0010c9e0: 740a 2020 2d20 6c6f 775f 6469 7372 7570 t. - low_disrup │ │ │ +0010c9f0: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f tion. - medium_ │ │ │ +0010ca00: 636f 6d70 6c65 7869 7479 0a20 202d 206d complexity. - m │ │ │ +0010ca10: 6564 6975 6d5f 7365 7665 7269 7479 0a20 edium_severity. │ │ │ +0010ca20: 202d 2072 6562 6f6f 745f 7265 7175 6972 - reboot_requir │ │ │ +0010ca30: 6564 0a20 202d 2072 6573 7472 6963 745f ed. - restrict_ │ │ │ +0010ca40: 7374 7261 7465 6779 0a2d 206e 616d 653a strategy.- name: │ │ │ +0010ca50: 2058 4343 4446 2056 616c 7565 2076 6172 XCCDF Value var │ │ │ +0010ca60: 5f73 7065 635f 7374 6f72 655f 6279 7061 _spec_store_bypa │ │ │ +0010ca70: 7373 5f64 6973 6162 6c65 5f6f 7074 696f ss_disable_optio │ │ │ +0010ca80: 6e73 2023 2070 726f 6d6f 7465 2074 6f20 ns # promote to │ │ │ +0010ca90: 7661 7269 6162 6c65 0a20 2073 6574 5f66 variable. set_f │ │ │ +0010caa0: 6163 743a 0a20 2020 2076 6172 5f73 7065 act:. var_spe │ │ │ +0010cab0: 635f 7374 6f72 655f 6279 7061 7373 5f64 c_store_bypass_d │ │ │ +0010cac0: 6973 6162 6c65 5f6f 7074 696f 6e73 3a20 isable_options: │ │ │ +0010cad0: 2121 7374 7220 3c61 6262 7220 7469 746c !!str seccomp< │ │ │ +0010cb50: 2f61 6262 723e 0a20 2074 6167 733a 0a20 /abbr>. tags:. │ │ │ +0010cb60: 2020 202d 2061 6c77 6179 730a 0a2d 206e - always..- n │ │ │ +0010cb70: 616d 653a 2043 6865 636b 2069 6620 7370 ame: Check if sp │ │ │ +0010cb80: 6563 5f73 746f 7265 5f62 7970 6173 735f ec_store_bypass_ │ │ │ +0010cb90: 6469 7361 626c 6520 6172 6775 6d65 6e74 disable argument │ │ │ +0010cba0: 2069 7320 616c 7265 6164 7920 7072 6573 is already pres │ │ │ +0010cbb0: 656e 7420 696e 202f 6574 632f 6465 6661 ent in /etc/defa │ │ │ +0010cbc0: 756c 742f 6772 7562 0a20 2061 6e73 6962 ult/grub. ansib │ │ │ +0010cbd0: 6c65 2e62 7569 6c74 696e 2e73 6c75 7270 le.builtin.slurp │ │ │ +0010cbe0: 3a0a 2020 2020 7372 633a 202f 6574 632f :. src: /etc/ │ │ │ +0010cbf0: 6465 6661 756c 742f 6772 7562 0a20 2072 default/grub. r │ │ │ +0010cc00: 6567 6973 7465 723a 2065 7463 5f64 6566 egister: etc_def │ │ │ +0010cc10: 6175 6c74 5f67 7275 620a 2020 7768 656e ault_grub. when │ │ │ +0010cc20: 3a20 2820 2267 7275 6232 2d63 6f6d 6d6f : ( "grub2-commo │ │ │ +0010cc30: 6e22 2069 6e20 616e 7369 626c 655f 6661 n" in ansible_fa │ │ │ +0010cc40: 6374 732e 7061 636b 6167 6573 2061 6e64 cts.packages and │ │ │ +0010cc50: 2022 6b65 726e 656c 2220 696e 2061 6e73 "kernel" in ans │ │ │ +0010cc60: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ +0010cc70: 6765 730a 2020 2020 290a 2020 7461 6773 ges. ). tags │ │ │ +0010cc80: 3a0a 2020 2d20 6772 7562 325f 7370 6563 :. - grub2_spec │ │ │ +0010cc90: 5f73 746f 7265 5f62 7970 6173 735f 6469 _store_bypass_di │ │ │ +0010cca0: 7361 626c 655f 6172 6775 6d65 6e74 0a20 sable_argument. │ │ │ +0010ccb0: 202d 206c 6f77 5f64 6973 7275 7074 696f - low_disruptio │ │ │ +0010ccc0: 6e0a 2020 2d20 6d65 6469 756d 5f63 6f6d n. - medium_com │ │ │ +0010ccd0: 706c 6578 6974 790a 2020 2d20 6d65 6469 plexity. - medi │ │ │ +0010cce0: 756d 5f73 6576 6572 6974 790a 2020 2d20 um_severity. - │ │ │ +0010ccf0: 7265 626f 6f74 5f72 6571 7569 7265 640a reboot_required. │ │ │ +0010cd00: 2020 2d20 7265 7374 7269 6374 5f73 7472 - restrict_str │ │ │ +0010cd10: 6174 6567 790a 0a2d 206e 616d 653a 2043 ategy..- name: C │ │ │ +0010cd20: 6865 636b 2069 6620 7370 6563 5f73 746f heck if spec_sto │ │ │ +0010cd30: 7265 5f62 7970 6173 735f 6469 7361 626c re_bypass_disabl │ │ │ +0010cd40: 6520 6172 6775 6d65 6e74 2069 7320 616c e argument is al │ │ │ +0010cd50: 7265 6164 7920 7072 6573 656e 740a 2020 ready present. │ │ │ +0010cd60: 616e 7369 626c 652e 6275 696c 7469 6e2e ansible.builtin. │ │ │ +0010cd70: 636f 6d6d 616e 643a 202f 7362 696e 2f67 command: /sbin/g │ │ │ +0010cd80: 7275 6262 7920 2d2d 696e 666f 3d41 4c4c rubby --info=ALL │ │ │ +0010cd90: 0a20 2072 6567 6973 7465 723a 2067 7275 . register: gru │ │ │ +0010cda0: 6262 795f 696e 666f 0a20 2063 6865 636b bby_info. check │ │ │ +0010cdb0: 5f6d 6f64 653a 2066 616c 7365 0a20 2063 _mode: false. c │ │ │ +0010cdc0: 6861 6e67 6564 5f77 6865 6e3a 2066 616c hanged_when: fal │ │ │ +0010cdd0: 7365 0a20 2066 6169 6c65 645f 7768 656e se. failed_when │ │ │ +0010cde0: 3a20 6661 6c73 650a 2020 7768 656e 3a20 : false. when: │ │ │ +0010cdf0: 2820 2267 7275 6232 2d63 6f6d 6d6f 6e22 ( "grub2-common" │ │ │ +0010ce00: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +0010ce10: 732e 7061 636b 6167 6573 2061 6e64 2022 s.packages and " │ │ │ +0010ce20: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ +0010ce30: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ +0010ce40: 730a 2020 2020 290a 2020 7461 6773 3a0a s. ). tags:. │ │ │ +0010ce50: 2020 2d20 6772 7562 325f 7370 6563 5f73 - grub2_spec_s │ │ │ +0010ce60: 746f 7265 5f62 7970 6173 735f 6469 7361 tore_bypass_disa │ │ │ +0010ce70: 626c 655f 6172 6775 6d65 6e74 0a20 202d ble_argument. - │ │ │ +0010ce80: 206c 6f77 5f64 6973 7275 7074 696f 6e0a low_disruption. │ │ │ +0010ce90: 2020 2d20 6d65 6469 756d 5f63 6f6d 706c - medium_compl │ │ │ +0010cea0: 6578 6974 790a 2020 2d20 6d65 6469 756d exity. - medium │ │ │ +0010ceb0: 5f73 6576 6572 6974 790a 2020 2d20 7265 _severity. - re │ │ │ +0010cec0: 626f 6f74 5f72 6571 7569 7265 640a 2020 boot_required. │ │ │ +0010ced0: 2d20 7265 7374 7269 6374 5f73 7472 6174 - restrict_strat │ │ │ +0010cee0: 6567 790a 0a2d 206e 616d 653a 2055 7064 egy..- name: Upd │ │ │ +0010cef0: 6174 6520 6772 7562 2064 6566 6175 6c74 ate grub default │ │ │ +0010cf00: 7320 616e 6420 7468 6520 626f 6f74 6c6f s and the bootlo │ │ │ +0010cf10: 6164 6572 206d 656e 750a 2020 616e 7369 ader menu. ansi │ │ │ +0010cf20: 626c 652e 6275 696c 7469 6e2e 636f 6d6d ble.builtin.comm │ │ │ +0010cf30: 616e 643a 202f 7362 696e 2f67 7275 6262 and: /sbin/grubb │ │ │ +0010cf40: 7920 2d2d 7570 6461 7465 2d6b 6572 6e65 y --update-kerne │ │ │ +0010cf50: 6c3d 414c 4c20 2d2d 6172 6773 3d22 7370 l=ALL --args="sp │ │ │ +0010cf60: 6563 5f73 746f 7265 5f62 7970 6173 735f ec_store_bypass_ │ │ │ +0010cf70: 6469 7361 626c 653d 7b7b 0a20 2020 2076 disable={{. v │ │ │ +0010cf80: 6172 5f73 7065 635f 7374 6f72 655f 6279 ar_spec_store_by │ │ │ +0010cf90: 7061 7373 5f64 6973 6162 6c65 5f6f 7074 pass_disable_opt │ │ │ +0010cfa0: 696f 6e73 207d 7d22 0a20 2077 6865 6e3a ions }}". when: │ │ │ +0010cfb0: 0a20 202d 2028 2022 6772 7562 322d 636f . - ( "grub2-co │ │ │ +0010cfc0: 6d6d 6f6e 2220 696e 2061 6e73 6962 6c65 mmon" in ansible │ │ │ +0010cfd0: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ +0010cfe0: 616e 6420 226b 6572 6e65 6c22 2069 6e20 and "kernel" in │ │ │ +0010cff0: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ +0010d000: 636b 6167 6573 0a20 2020 2029 0a20 202d ckages. ). - │ │ │ +0010d010: 2028 6772 7562 6279 5f69 6e66 6f2e 7374 (grubby_info.st │ │ │ +0010d020: 646f 7574 2069 7320 6e6f 7420 7365 6172 dout is not sear │ │ │ +0010d030: 6368 2827 7370 6563 5f73 746f 7265 5f62 ch('spec_store_b │ │ │ +0010d040: 7970 6173 735f 6469 7361 626c 653d 2720 ypass_disable=' │ │ │ +0010d050: 7e20 7661 725f 7370 6563 5f73 746f 7265 ~ var_spec_store │ │ │ +0010d060: 5f62 7970 6173 735f 6469 7361 626c 655f _bypass_disable_ │ │ │ +0010d070: 6f70 7469 6f6e 7329 290a 2020 2020 6f72 options)). or │ │ │ +0010d080: 2028 2865 7463 5f64 6566 6175 6c74 5f67 ((etc_default_g │ │ │ +0010d090: 7275 625b 2763 6f6e 7465 6e74 275d 207c rub['content'] | │ │ │ +0010d0a0: 2062 3634 6465 636f 6465 2920 6973 206e b64decode) is n │ │ │ +0010d0b0: 6f74 2073 6561 7263 6828 2773 7065 635f ot search('spec_ │ │ │ +0010d0c0: 7374 6f72 655f 6279 7061 7373 5f64 6973 store_bypass_dis │ │ │ +0010d0d0: 6162 6c65 3d27 0a20 2020 207e 2076 6172 able='. ~ var │ │ │ +0010d0e0: 5f73 7065 635f 7374 6f72 655f 6279 7061 _spec_store_bypa │ │ │ +0010d0f0: 7373 5f64 6973 6162 6c65 5f6f 7074 696f ss_disable_optio │ │ │ +0010d100: 6e73 2929 0a20 2074 6167 733a 0a20 202d ns)). tags:. - │ │ │ +0010d110: 2067 7275 6232 5f73 7065 635f 7374 6f72 grub2_spec_stor │ │ │ +0010d120: 655f 6279 7061 7373 5f64 6973 6162 6c65 e_bypass_disable │ │ │ +0010d130: 5f61 7267 756d 656e 740a 2020 2d20 6c6f _argument. - lo │ │ │ +0010d140: 775f 6469 7372 7570 7469 6f6e 0a20 202d w_disruption. - │ │ │ +0010d150: 206d 6564 6975 6d5f 636f 6d70 6c65 7869 medium_complexi │ │ │ +0010d160: 7479 0a20 202d 206d 6564 6975 6d5f 7365 ty. - medium_se │ │ │ +0010d170: 7665 7269 7479 0a20 202d 2072 6562 6f6f verity. - reboo │ │ │ +0010d180: 745f 7265 7175 6972 6564 0a20 202d 2072 t_required. - r │ │ │ +0010d190: 6573 7472 6963 745f 7374 7261 7465 6779 estrict_strategy │ │ │ +0010d1a0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .

Remediation OSB │ │ │ +0010d260: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ +0010d270: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
[cu
│ │ │ +0010d2c0: 7374 6f6d 697a 6174 696f 6e73 2e6b 6572  stomizations.ker
│ │ │ +0010d2d0: 6e65 6c5d 0a61 7070 656e 6420 3d20 2273  nel].append = "s
│ │ │ +0010d2e0: 7065 635f 7374 6f72 655f 6279 7061 7373  pec_store_bypass
│ │ │ +0010d2f0: 5f64 6973 6162 6c65 3d3c 6162 6272 2074  _disable=secco
│ │ │ +0010d370: 6d70 3c2f 6162 6272 3e22 0a3c 2f63 6f64  mp".
Remediati │ │ │ -0010e370: 6f6e 204f 5342 7569 6c64 2042 6c75 6570 on OSBuild Bluep │ │ │ -0010e380: 7269 6e74 2073 6e69 7070 6574 20e2 87b2 rint snippet ... │ │ │ -0010e390: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
[customizatio
│ │ │ -0010e3e0: 6e73 2e6b 6572 6e65 6c5d 0a61 7070 656e  ns.kernel].appen
│ │ │ -0010e3f0: 6420 3d20 2273 7065 6374 7265 5f76 323d  d = "spectre_v2=
│ │ │ -0010e400: 6f6e 220a 3c2f 636f 6465 3e3c 2f70 7265  on".
Remediation │ │ │ -0010e4c0: 416e 7369 626c 6520 736e 6970 7065 7420 Ansible snippet │ │ │ -0010e4d0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -0010e560: 3c2f 7468 3e3c 7464 3e6d 6564 6975 6d3c medium< │ │ │ -0010e570: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -0010e5b0: 3a3c 2f74 683e 3c74 643e 7472 7565 3c2f :true │ │ │ -0010e5d0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:restrict< │ │ │ -0010e5f0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
- name: G
│ │ │ -0010e610: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ -0010e620: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ -0010e630: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ -0010e640: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ -0010e650: 733a 0a20 202d 2067 7275 6232 5f73 7065  s:.  - grub2_spe
│ │ │ -0010e660: 6374 7265 5f76 325f 6172 6775 6d65 6e74  ctre_v2_argument
│ │ │ -0010e670: 0a20 202d 2068 6967 685f 7365 7665 7269  .  - high_severi
│ │ │ -0010e680: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ -0010e690: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ -0010e6a0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -0010e6b0: 7265 626f 6f74 5f72 6571 7569 7265 640a  reboot_required.
│ │ │ -0010e6c0: 2020 2d20 7265 7374 7269 6374 5f73 7472    - restrict_str
│ │ │ -0010e6d0: 6174 6567 790a 0a2d 206e 616d 653a 2043  ategy..- name: C
│ │ │ -0010e6e0: 6865 636b 2069 6620 7370 6563 7472 655f  heck if spectre_
│ │ │ -0010e6f0: 7632 2061 7267 756d 656e 7420 6973 2061  v2 argument is a
│ │ │ -0010e700: 6c72 6561 6479 2070 7265 7365 6e74 2069  lready present i
│ │ │ -0010e710: 6e20 2f65 7463 2f64 6566 6175 6c74 2f67  n /etc/default/g
│ │ │ -0010e720: 7275 620a 2020 616e 7369 626c 652e 6275  rub.  ansible.bu
│ │ │ -0010e730: 696c 7469 6e2e 736c 7572 703a 0a20 2020  iltin.slurp:.   
│ │ │ -0010e740: 2073 7263 3a20 2f65 7463 2f64 6566 6175   src: /etc/defau
│ │ │ -0010e750: 6c74 2f67 7275 620a 2020 7265 6769 7374  lt/grub.  regist
│ │ │ -0010e760: 6572 3a20 6574 635f 6465 6661 756c 745f  er: etc_default_
│ │ │ -0010e770: 6772 7562 0a20 2077 6865 6e3a 2028 2022  grub.  when: ( "
│ │ │ -0010e780: 6772 7562 322d 636f 6d6d 6f6e 2220 696e  grub2-common" in
│ │ │ -0010e790: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -0010e7a0: 6163 6b61 6765 7320 616e 6420 226b 6572  ackages and "ker
│ │ │ -0010e7b0: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -0010e7c0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -0010e7d0: 2020 2029 0a20 2074 6167 733a 0a20 202d     ).  tags:.  -
│ │ │ -0010e7e0: 2067 7275 6232 5f73 7065 6374 7265 5f76   grub2_spectre_v
│ │ │ -0010e7f0: 325f 6172 6775 6d65 6e74 0a20 202d 2068  2_argument.  - h
│ │ │ -0010e800: 6967 685f 7365 7665 7269 7479 0a20 202d  igh_severity.  -
│ │ │ -0010e810: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -0010e820: 2020 2d20 6d65 6469 756d 5f63 6f6d 706c    - medium_compl
│ │ │ -0010e830: 6578 6974 790a 2020 2d20 7265 626f 6f74  exity.  - reboot
│ │ │ -0010e840: 5f72 6571 7569 7265 640a 2020 2d20 7265  _required.  - re
│ │ │ -0010e850: 7374 7269 6374 5f73 7472 6174 6567 790a  strict_strategy.
│ │ │ -0010e860: 0a2d 206e 616d 653a 2043 6865 636b 2069  .- name: Check i
│ │ │ -0010e870: 6620 7370 6563 7472 655f 7632 2061 7267  f spectre_v2 arg
│ │ │ -0010e880: 756d 656e 7420 6973 2061 6c72 6561 6479  ument is already
│ │ │ -0010e890: 2070 7265 7365 6e74 0a20 2061 6e73 6962   present.  ansib
│ │ │ -0010e8a0: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61  le.builtin.comma
│ │ │ -0010e8b0: 6e64 3a20 2f73 6269 6e2f 6772 7562 6279  nd: /sbin/grubby
│ │ │ -0010e8c0: 202d 2d69 6e66 6f3d 414c 4c0a 2020 7265   --info=ALL.  re
│ │ │ -0010e8d0: 6769 7374 6572 3a20 6772 7562 6279 5f69  gister: grubby_i
│ │ │ -0010e8e0: 6e66 6f0a 2020 6368 6563 6b5f 6d6f 6465  nfo.  check_mode
│ │ │ -0010e8f0: 3a20 6661 6c73 650a 2020 6368 616e 6765  : false.  change
│ │ │ -0010e900: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ -0010e910: 6661 696c 6564 5f77 6865 6e3a 2066 616c  failed_when: fal
│ │ │ -0010e920: 7365 0a20 2077 6865 6e3a 2028 2022 6772  se.  when: ( "gr
│ │ │ -0010e930: 7562 322d 636f 6d6d 6f6e 2220 696e 2061  ub2-common" in a
│ │ │ -0010e940: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -0010e950: 6b61 6765 7320 616e 6420 226b 6572 6e65  kages and "kerne
│ │ │ -0010e960: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -0010e970: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -0010e980: 2029 0a20 2074 6167 733a 0a20 202d 2067   ).  tags:.  - g
│ │ │ -0010e990: 7275 6232 5f73 7065 6374 7265 5f76 325f  rub2_spectre_v2_
│ │ │ -0010e9a0: 6172 6775 6d65 6e74 0a20 202d 2068 6967  argument.  - hig
│ │ │ -0010e9b0: 685f 7365 7665 7269 7479 0a20 202d 206c  h_severity.  - l
│ │ │ -0010e9c0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -0010e9d0: 2d20 6d65 6469 756d 5f63 6f6d 706c 6578  - medium_complex
│ │ │ -0010e9e0: 6974 790a 2020 2d20 7265 626f 6f74 5f72  ity.  - reboot_r
│ │ │ -0010e9f0: 6571 7569 7265 640a 2020 2d20 7265 7374  equired.  - rest
│ │ │ -0010ea00: 7269 6374 5f73 7472 6174 6567 790a 0a2d  rict_strategy..-
│ │ │ -0010ea10: 206e 616d 653a 2055 7064 6174 6520 6772   name: Update gr
│ │ │ -0010ea20: 7562 2064 6566 6175 6c74 7320 616e 6420  ub defaults and 
│ │ │ -0010ea30: 7468 6520 626f 6f74 6c6f 6164 6572 206d  the bootloader m
│ │ │ -0010ea40: 656e 750a 2020 616e 7369 626c 652e 6275  enu.  ansible.bu
│ │ │ -0010ea50: 696c 7469 6e2e 636f 6d6d 616e 643a 202f  iltin.command: /
│ │ │ -0010ea60: 7362 696e 2f67 7275 6262 7920 2d2d 7570  sbin/grubby --up
│ │ │ -0010ea70: 6461 7465 2d6b 6572 6e65 6c3d 414c 4c20  date-kernel=ALL 
│ │ │ -0010ea80: 2d2d 6172 6773 3d22 7370 6563 7472 655f  --args="spectre_
│ │ │ -0010ea90: 7632 3d6f 6e22 0a20 2077 6865 6e3a 0a20  v2=on".  when:. 
│ │ │ -0010eaa0: 202d 2028 2022 6772 7562 322d 636f 6d6d   - ( "grub2-comm
│ │ │ -0010eab0: 6f6e 2220 696e 2061 6e73 6962 6c65 5f66  on" in ansible_f
│ │ │ -0010eac0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -0010ead0: 6420 226b 6572 6e65 6c22 2069 6e20 616e  d "kernel" in an
│ │ │ -0010eae0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -0010eaf0: 6167 6573 0a20 2020 2029 0a20 202d 2028  ages.    ).  - (
│ │ │ -0010eb00: 6772 7562 6279 5f69 6e66 6f2e 7374 646f  grubby_info.stdo
│ │ │ -0010eb10: 7574 2069 7320 6e6f 7420 7365 6172 6368  ut is not search
│ │ │ -0010eb20: 2827 7370 6563 7472 655f 7632 3d6f 6e27  ('spectre_v2=on'
│ │ │ -0010eb30: 2929 206f 7220 2828 6574 635f 6465 6661  )) or ((etc_defa
│ │ │ -0010eb40: 756c 745f 6772 7562 5b27 636f 6e74 656e  ult_grub['conten
│ │ │ -0010eb50: 7427 5d0a 2020 2020 7c20 6236 3464 6563  t'].    | b64dec
│ │ │ -0010eb60: 6f64 6529 2069 7320 6e6f 7420 7365 6172  ode) is not sear
│ │ │ -0010eb70: 6368 2827 7370 6563 7472 655f 7632 3d6f  ch('spectre_v2=o
│ │ │ -0010eb80: 6e27 2929 0a20 2074 6167 733a 0a20 202d  n')).  tags:.  -
│ │ │ -0010eb90: 2067 7275 6232 5f73 7065 6374 7265 5f76   grub2_spectre_v
│ │ │ -0010eba0: 325f 6172 6775 6d65 6e74 0a20 202d 2068  2_argument.  - h
│ │ │ -0010ebb0: 6967 685f 7365 7665 7269 7479 0a20 202d  igh_severity.  -
│ │ │ -0010ebc0: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -0010ebd0: 2020 2d20 6d65 6469 756d 5f63 6f6d 706c    - medium_compl
│ │ │ -0010ebe0: 6578 6974 790a 2020 2d20 7265 626f 6f74  exity.  - reboot
│ │ │ -0010ebf0: 5f72 6571 7569 7265 640a 2020 2d20 7265  _required.  - re
│ │ │ -0010ec00: 7374 7269 6374 5f73 7472 6174 6567 790a  strict_strategy.
│ │ │ +0010e370: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070  on Ansible snipp
│ │ │ +0010e380: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...
│ │ │ +0010e400: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +0010e410: 7479 3a3c 2f74 683e 3c74 643e 6d65 6469 ty:medi │ │ │ +0010e420: 756d 3c2f 7464 3e3c 2f74 723e 3c74 723e um │ │ │ +0010e430: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c Disruption:< │ │ │ +0010e440: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low │ │ │ +0010e450: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 Reb │ │ │ +0010e460: 6f6f 743a 3c2f 7468 3e3c 7464 3e74 7275 oot:tru │ │ │ +0010e470: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e< │ │ │ +0010e480: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:restrict< │ │ │ +0010e4b0: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ +0010e4c0: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ +0010e4d0: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ +0010e4e0: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ +0010e4f0: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ +0010e500: 7461 6773 3a0a 2020 2d20 6772 7562 325f tags:. - grub2_ │ │ │ +0010e510: 7370 6563 7472 655f 7632 5f61 7267 756d spectre_v2_argum │ │ │ +0010e520: 656e 740a 2020 2d20 6869 6768 5f73 6576 ent. - high_sev │ │ │ +0010e530: 6572 6974 790a 2020 2d20 6c6f 775f 6469 erity. - low_di │ │ │ +0010e540: 7372 7570 7469 6f6e 0a20 202d 206d 6564 sruption. - med │ │ │ +0010e550: 6975 6d5f 636f 6d70 6c65 7869 7479 0a20 ium_complexity. │ │ │ +0010e560: 202d 2072 6562 6f6f 745f 7265 7175 6972 - reboot_requir │ │ │ +0010e570: 6564 0a20 202d 2072 6573 7472 6963 745f ed. - restrict_ │ │ │ +0010e580: 7374 7261 7465 6779 0a0a 2d20 6e61 6d65 strategy..- name │ │ │ +0010e590: 3a20 4368 6563 6b20 6966 2073 7065 6374 : Check if spect │ │ │ +0010e5a0: 7265 5f76 3220 6172 6775 6d65 6e74 2069 re_v2 argument i │ │ │ +0010e5b0: 7320 616c 7265 6164 7920 7072 6573 656e s already presen │ │ │ +0010e5c0: 7420 696e 202f 6574 632f 6465 6661 756c t in /etc/defaul │ │ │ +0010e5d0: 742f 6772 7562 0a20 2061 6e73 6962 6c65 t/grub. ansible │ │ │ +0010e5e0: 2e62 7569 6c74 696e 2e73 6c75 7270 3a0a .builtin.slurp:. │ │ │ +0010e5f0: 2020 2020 7372 633a 202f 6574 632f 6465 src: /etc/de │ │ │ +0010e600: 6661 756c 742f 6772 7562 0a20 2072 6567 fault/grub. reg │ │ │ +0010e610: 6973 7465 723a 2065 7463 5f64 6566 6175 ister: etc_defau │ │ │ +0010e620: 6c74 5f67 7275 620a 2020 7768 656e 3a20 lt_grub. when: │ │ │ +0010e630: 2820 2267 7275 6232 2d63 6f6d 6d6f 6e22 ( "grub2-common" │ │ │ +0010e640: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +0010e650: 732e 7061 636b 6167 6573 2061 6e64 2022 s.packages and " │ │ │ +0010e660: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ +0010e670: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ +0010e680: 730a 2020 2020 290a 2020 7461 6773 3a0a s. ). tags:. │ │ │ +0010e690: 2020 2d20 6772 7562 325f 7370 6563 7472 - grub2_spectr │ │ │ +0010e6a0: 655f 7632 5f61 7267 756d 656e 740a 2020 e_v2_argument. │ │ │ +0010e6b0: 2d20 6869 6768 5f73 6576 6572 6974 790a - high_severity. │ │ │ +0010e6c0: 2020 2d20 6c6f 775f 6469 7372 7570 7469 - low_disrupti │ │ │ +0010e6d0: 6f6e 0a20 202d 206d 6564 6975 6d5f 636f on. - medium_co │ │ │ +0010e6e0: 6d70 6c65 7869 7479 0a20 202d 2072 6562 mplexity. - reb │ │ │ +0010e6f0: 6f6f 745f 7265 7175 6972 6564 0a20 202d oot_required. - │ │ │ +0010e700: 2072 6573 7472 6963 745f 7374 7261 7465 restrict_strate │ │ │ +0010e710: 6779 0a0a 2d20 6e61 6d65 3a20 4368 6563 gy..- name: Chec │ │ │ +0010e720: 6b20 6966 2073 7065 6374 7265 5f76 3220 k if spectre_v2 │ │ │ +0010e730: 6172 6775 6d65 6e74 2069 7320 616c 7265 argument is alre │ │ │ +0010e740: 6164 7920 7072 6573 656e 740a 2020 616e ady present. an │ │ │ +0010e750: 7369 626c 652e 6275 696c 7469 6e2e 636f sible.builtin.co │ │ │ +0010e760: 6d6d 616e 643a 202f 7362 696e 2f67 7275 mmand: /sbin/gru │ │ │ +0010e770: 6262 7920 2d2d 696e 666f 3d41 4c4c 0a20 bby --info=ALL. │ │ │ +0010e780: 2072 6567 6973 7465 723a 2067 7275 6262 register: grubb │ │ │ +0010e790: 795f 696e 666f 0a20 2063 6865 636b 5f6d y_info. check_m │ │ │ +0010e7a0: 6f64 653a 2066 616c 7365 0a20 2063 6861 ode: false. cha │ │ │ +0010e7b0: 6e67 6564 5f77 6865 6e3a 2066 616c 7365 nged_when: false │ │ │ +0010e7c0: 0a20 2066 6169 6c65 645f 7768 656e 3a20 . failed_when: │ │ │ +0010e7d0: 6661 6c73 650a 2020 7768 656e 3a20 2820 false. when: ( │ │ │ +0010e7e0: 2267 7275 6232 2d63 6f6d 6d6f 6e22 2069 "grub2-common" i │ │ │ +0010e7f0: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +0010e800: 7061 636b 6167 6573 2061 6e64 2022 6b65 packages and "ke │ │ │ +0010e810: 726e 656c 2220 696e 2061 6e73 6962 6c65 rnel" in ansible │ │ │ +0010e820: 5f66 6163 7473 2e70 6163 6b61 6765 730a _facts.packages. │ │ │ +0010e830: 2020 2020 290a 2020 7461 6773 3a0a 2020 ). tags:. │ │ │ +0010e840: 2d20 6772 7562 325f 7370 6563 7472 655f - grub2_spectre_ │ │ │ +0010e850: 7632 5f61 7267 756d 656e 740a 2020 2d20 v2_argument. - │ │ │ +0010e860: 6869 6768 5f73 6576 6572 6974 790a 2020 high_severity. │ │ │ +0010e870: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e - low_disruption │ │ │ +0010e880: 0a20 202d 206d 6564 6975 6d5f 636f 6d70 . - medium_comp │ │ │ +0010e890: 6c65 7869 7479 0a20 202d 2072 6562 6f6f lexity. - reboo │ │ │ +0010e8a0: 745f 7265 7175 6972 6564 0a20 202d 2072 t_required. - r │ │ │ +0010e8b0: 6573 7472 6963 745f 7374 7261 7465 6779 estrict_strategy │ │ │ +0010e8c0: 0a0a 2d20 6e61 6d65 3a20 5570 6461 7465 ..- name: Update │ │ │ +0010e8d0: 2067 7275 6220 6465 6661 756c 7473 2061 grub defaults a │ │ │ +0010e8e0: 6e64 2074 6865 2062 6f6f 746c 6f61 6465 nd the bootloade │ │ │ +0010e8f0: 7220 6d65 6e75 0a20 2061 6e73 6962 6c65 r menu. ansible │ │ │ +0010e900: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64 .builtin.command │ │ │ +0010e910: 3a20 2f73 6269 6e2f 6772 7562 6279 202d : /sbin/grubby - │ │ │ +0010e920: 2d75 7064 6174 652d 6b65 726e 656c 3d41 -update-kernel=A │ │ │ +0010e930: 4c4c 202d 2d61 7267 733d 2273 7065 6374 LL --args="spect │ │ │ +0010e940: 7265 5f76 323d 6f6e 220a 2020 7768 656e re_v2=on". when │ │ │ +0010e950: 3a0a 2020 2d20 2820 2267 7275 6232 2d63 :. - ( "grub2-c │ │ │ +0010e960: 6f6d 6d6f 6e22 2069 6e20 616e 7369 626c ommon" in ansibl │ │ │ +0010e970: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ +0010e980: 2061 6e64 2022 6b65 726e 656c 2220 696e and "kernel" in │ │ │ +0010e990: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ +0010e9a0: 6163 6b61 6765 730a 2020 2020 290a 2020 ackages. ). │ │ │ +0010e9b0: 2d20 2867 7275 6262 795f 696e 666f 2e73 - (grubby_info.s │ │ │ +0010e9c0: 7464 6f75 7420 6973 206e 6f74 2073 6561 tdout is not sea │ │ │ +0010e9d0: 7263 6828 2773 7065 6374 7265 5f76 323d rch('spectre_v2= │ │ │ +0010e9e0: 6f6e 2729 2920 6f72 2028 2865 7463 5f64 on')) or ((etc_d │ │ │ +0010e9f0: 6566 6175 6c74 5f67 7275 625b 2763 6f6e efault_grub['con │ │ │ +0010ea00: 7465 6e74 275d 0a20 2020 207c 2062 3634 tent']. | b64 │ │ │ +0010ea10: 6465 636f 6465 2920 6973 206e 6f74 2073 decode) is not s │ │ │ +0010ea20: 6561 7263 6828 2773 7065 6374 7265 5f76 earch('spectre_v │ │ │ +0010ea30: 323d 6f6e 2729 290a 2020 7461 6773 3a0a 2=on')). tags:. │ │ │ +0010ea40: 2020 2d20 6772 7562 325f 7370 6563 7472 - grub2_spectr │ │ │ +0010ea50: 655f 7632 5f61 7267 756d 656e 740a 2020 e_v2_argument. │ │ │ +0010ea60: 2d20 6869 6768 5f73 6576 6572 6974 790a - high_severity. │ │ │ +0010ea70: 2020 2d20 6c6f 775f 6469 7372 7570 7469 - low_disrupti │ │ │ +0010ea80: 6f6e 0a20 202d 206d 6564 6975 6d5f 636f on. - medium_co │ │ │ +0010ea90: 6d70 6c65 7869 7479 0a20 202d 2072 6562 mplexity. - reb │ │ │ +0010eaa0: 6f6f 745f 7265 7175 6972 6564 0a20 202d oot_required. - │ │ │ +0010eab0: 2072 6573 7472 6963 745f 7374 7261 7465 restrict_strate │ │ │ +0010eac0: 6779 0a3c 2f63 6f64 653e 3c2f 7072 653e gy.
│ │ │ +0010ead0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation O │ │ │ +0010eb80: 5342 7569 6c64 2042 6c75 6570 7269 6e74 SBuild Blueprint │ │ │ +0010eb90: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +0010eba0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
[
│ │ │ +0010ebe0: 6375 7374 6f6d 697a 6174 696f 6e73 2e6b  customizations.k
│ │ │ +0010ebf0: 6572 6e65 6c5d 0a61 7070 656e 6420 3d20  ernel].append = 
│ │ │ +0010ec00: 2273 7065 6374 7265 5f76 323d 6f6e 220a  "spectre_v2=on".
│ │ │  0010ec10: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
Remediation OSB │ │ │ -00149490: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ -001494a0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
.[[
│ │ │ -001494f0: 7061 636b 6167 6573 5d5d 0a6e 616d 6520  packages]].name 
│ │ │ -00149500: 3d20 226c 6f67 726f 7461 7465 220a 7665  = "logrotate".ve
│ │ │ -00149510: 7273 696f 6e20 3d20 222a 220a 3c2f 636f  rsion = "*".
< │ │ │ -00149530: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -00149540: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -00149550: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -00149560: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -00149570: 6433 3639 2220 7461 6269 6e64 6578 3d22 d369" tabindex=" │ │ │ -00149580: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -00149590: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -001495a0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -001495b0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -001495c0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -001495d0: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ -001495e0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -001495f0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -00149690: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -001496e0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ -00149670: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -001496a0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -001496c0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -001496d0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -001496f0: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -00149700: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.pac
│ │ │ -00149720: 6b61 6765 202d 2d61 6464 3d6c 6f67 726f  kage --add=logro
│ │ │ -00149730: 7461 7465 0a3c 2f63 6f64 653e 3c2f 7072  tate.
Remediation │ │ │ -001497f0: 2050 7570 7065 7420 736e 6970 7065 7420 Puppet snippet │ │ │ -00149800: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -00149890: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -001498b0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -001498d0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -00149900: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -00149910: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ -00149920: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
include insta
│ │ │ -00149940: 6c6c 5f6c 6f67 726f 7461 7465 0a0a 636c  ll_logrotate..cl
│ │ │ -00149950: 6173 7320 696e 7374 616c 6c5f 6c6f 6772  ass install_logr
│ │ │ -00149960: 6f74 6174 6520 7b0a 2020 7061 636b 6167  otate {.  packag
│ │ │ -00149970: 6520 7b20 276c 6f67 726f 7461 7465 273a  e { 'logrotate':
│ │ │ -00149980: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ -00149990: 3b20 2769 6e73 7461 6c6c 6564 272c 0a20  ; 'installed',. 
│ │ │ -001499a0: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.
Remediation │ │ │ -00149a60: 2041 6e73 6962 6c65 2073 6e69 7070 6574 Ansible snippet │ │ │ -00149a70: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -00149b00: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -00149b20: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -00149b30: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00149b40: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -00149b50: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -00149b70: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
- name: Gath
│ │ │ -00149bb0: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ -00149bc0: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ -00149bd0: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ -00149be0: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ -00149bf0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -00149c00: 434d 2d36 2861 290a 2020 2d20 5043 492d  CM-6(a).  - PCI-
│ │ │ -00149c10: 4453 532d 5265 712d 3130 2e37 0a20 202d  DSS-Req-10.7.  -
│ │ │ -00149c20: 2050 4349 2d44 5353 7634 2d31 302e 350a   PCI-DSSv4-10.5.
│ │ │ -00149c30: 2020 2d20 5043 492d 4453 5376 342d 3130    - PCI-DSSv4-10
│ │ │ -00149c40: 2e35 2e31 0a20 202d 2065 6e61 626c 655f  .5.1.  - enable_
│ │ │ -00149c50: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ -00149c60: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -00149c70: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -00149c80: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -00149c90: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ -00149ca0: 5f6e 6565 6465 640a 2020 2d20 7061 636b  _needed.  - pack
│ │ │ -00149cb0: 6167 655f 6c6f 6772 6f74 6174 655f 696e  age_logrotate_in
│ │ │ -00149cc0: 7374 616c 6c65 640a 0a2d 206e 616d 653a  stalled..- name:
│ │ │ -00149cd0: 2045 6e73 7572 6520 6c6f 6772 6f74 6174   Ensure logrotat
│ │ │ -00149ce0: 6520 6973 2069 6e73 7461 6c6c 6564 0a20  e is installed. 
│ │ │ -00149cf0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -00149d00: 2e70 6163 6b61 6765 3a0a 2020 2020 6e61  .package:.    na
│ │ │ -00149d10: 6d65 3a20 6c6f 6772 6f74 6174 650a 2020  me: logrotate.  
│ │ │ -00149d20: 2020 7374 6174 653a 2070 7265 7365 6e74    state: present
│ │ │ -00149d30: 0a20 2077 6865 6e3a 2027 226b 6572 6e65  .  when: '"kerne
│ │ │ -00149d40: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -00149d50: 6374 732e 7061 636b 6167 6573 270a 2020  cts.packages'.  
│ │ │ -00149d60: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ -00149d70: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ -00149d80: 2d20 5043 492d 4453 532d 5265 712d 3130  - PCI-DSS-Req-10
│ │ │ -00149d90: 2e37 0a20 202d 2050 4349 2d44 5353 7634  .7.  - PCI-DSSv4
│ │ │ -00149da0: 2d31 302e 350a 2020 2d20 5043 492d 4453  -10.5.  - PCI-DS
│ │ │ -00149db0: 5376 342d 3130 2e35 2e31 0a20 202d 2065  Sv4-10.5.1.  - e
│ │ │ -00149dc0: 6e61 626c 655f 7374 7261 7465 6779 0a20  nable_strategy. 
│ │ │ -00149dd0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -00149de0: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -00149df0: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ -00149e00: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ -00149e10: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ -00149e20: 2d20 7061 636b 6167 655f 6c6f 6772 6f74  - package_logrot
│ │ │ -00149e30: 6174 655f 696e 7374 616c 6c65 640a 3c2f  ate_installed.
Re │ │ │ -00149ef0: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ -00149f00: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
Comp │ │ │ -00149f90: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -00149fa0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -00149fc0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -00149fe0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -00149ff0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -0014a030: 7072 653e 3c63 6f64 653e 2320 5265 6d65 pre># Reme │ │ │ -0014a040: 6469 6174 696f 6e20 6973 2061 7070 6c69 diation is appli │ │ │ -0014a050: 6361 626c 6520 6f6e 6c79 2069 6e20 6365 cable only in ce │ │ │ -0014a060: 7274 6169 6e20 706c 6174 666f 726d 730a rtain platforms. │ │ │ -0014a070: 6966 2072 706d 202d 2d71 7569 6574 202d if rpm --quiet - │ │ │ -0014a080: 7120 6b65 726e 656c 3b20 7468 656e 0a0a q kernel; then.. │ │ │ -0014a090: 6966 2021 2072 706d 202d 7120 2d2d 7175 if ! rpm -q --qu │ │ │ -0014a0a0: 6965 7420 226c 6f67 726f 7461 7465 2220 iet "logrotate" │ │ │ -0014a0b0: 3b20 7468 656e 0a20 2020 2064 6e66 2069 ; then. dnf i │ │ │ -0014a0c0: 6e73 7461 6c6c 202d 7920 226c 6f67 726f nstall -y "logro │ │ │ -0014a0d0: 7461 7465 220a 6669 0a0a 656c 7365 0a20 tate".fi..else. │ │ │ -0014a0e0: 2020 2026 6774 3b26 616d 703b 3220 6563 >&2 ec │ │ │ -0014a0f0: 686f 2027 5265 6d65 6469 6174 696f 6e20 ho 'Remediation │ │ │ -0014a100: 6973 206e 6f74 2061 7070 6c69 6361 626c is not applicabl │ │ │ -0014a110: 652c 206e 6f74 6869 6e67 2077 6173 2064 e, nothing was d │ │ │ -0014a120: 6f6e 6527 0a66 690a 3c2f 636f 6465 3e3c one'.fi.< │ │ │ +00149480: 3e52 656d 6564 6961 7469 6f6e 2041 6e73 >Remediation Ans │ │ │ +00149490: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ +001494a0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ +00149570: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00149580: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +001495d0: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ +001495e0: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ +001495f0: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ +00149600: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ +00149610: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ +00149620: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +00149630: 2861 290a 2020 2d20 5043 492d 4453 532d  (a).  - PCI-DSS-
│ │ │ +00149640: 5265 712d 3130 2e37 0a20 202d 2050 4349  Req-10.7.  - PCI
│ │ │ +00149650: 2d44 5353 7634 2d31 302e 350a 2020 2d20  -DSSv4-10.5.  - 
│ │ │ +00149660: 5043 492d 4453 5376 342d 3130 2e35 2e31  PCI-DSSv4-10.5.1
│ │ │ +00149670: 0a20 202d 2065 6e61 626c 655f 7374 7261  .  - enable_stra
│ │ │ +00149680: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ +00149690: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +001496a0: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ +001496b0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +001496c0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +001496d0: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ +001496e0: 6c6f 6772 6f74 6174 655f 696e 7374 616c  logrotate_instal
│ │ │ +001496f0: 6c65 640a 0a2d 206e 616d 653a 2045 6e73  led..- name: Ens
│ │ │ +00149700: 7572 6520 6c6f 6772 6f74 6174 6520 6973  ure logrotate is
│ │ │ +00149710: 2069 6e73 7461 6c6c 6564 0a20 2061 6e73   installed.  ans
│ │ │ +00149720: 6962 6c65 2e62 7569 6c74 696e 2e70 6163  ible.builtin.pac
│ │ │ +00149730: 6b61 6765 3a0a 2020 2020 6e61 6d65 3a20  kage:.    name: 
│ │ │ +00149740: 6c6f 6772 6f74 6174 650a 2020 2020 7374  logrotate.    st
│ │ │ +00149750: 6174 653a 2070 7265 7365 6e74 0a20 2077  ate: present.  w
│ │ │ +00149760: 6865 6e3a 2027 226b 6572 6e65 6c22 2069  hen: '"kernel" i
│ │ │ +00149770: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +00149780: 7061 636b 6167 6573 270a 2020 7461 6773  packages'.  tags
│ │ │ +00149790: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +001497a0: 332d 434d 2d36 2861 290a 2020 2d20 5043  3-CM-6(a).  - PC
│ │ │ +001497b0: 492d 4453 532d 5265 712d 3130 2e37 0a20  I-DSS-Req-10.7. 
│ │ │ +001497c0: 202d 2050 4349 2d44 5353 7634 2d31 302e   - PCI-DSSv4-10.
│ │ │ +001497d0: 350a 2020 2d20 5043 492d 4453 5376 342d  5.  - PCI-DSSv4-
│ │ │ +001497e0: 3130 2e35 2e31 0a20 202d 2065 6e61 626c  10.5.1.  - enabl
│ │ │ +001497f0: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ +00149800: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +00149810: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +00149820: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +00149830: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ +00149840: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ +00149850: 636b 6167 655f 6c6f 6772 6f74 6174 655f  ckage_logrotate_
│ │ │ +00149860: 696e 7374 616c 6c65 640a 3c2f 636f 6465  installed.
Remedi │ │ │ +00149920: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ +00149930: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +00149940: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +00149970: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
low
Disru │ │ │ +00149550: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00149560: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +001495a0: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +001495b0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ +001499e0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +00149a00: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +00149a30: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ +00149a50: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ +001499c0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +001499d0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +00149a10: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +00149a20: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
include │ │ │ +00149a70: 696e 7374 616c 6c5f 6c6f 6772 6f74 6174 install_logrotat │ │ │ +00149a80: 650a 0a63 6c61 7373 2069 6e73 7461 6c6c e..class install │ │ │ +00149a90: 5f6c 6f67 726f 7461 7465 207b 0a20 2070 _logrotate {. p │ │ │ +00149aa0: 6163 6b61 6765 207b 2027 6c6f 6772 6f74 ackage { 'logrot │ │ │ +00149ab0: 6174 6527 3a0a 2020 2020 656e 7375 7265 ate':. ensure │ │ │ +00149ac0: 203d 2667 743b 2027 696e 7374 616c 6c65 => 'installe │ │ │ +00149ad0: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 d',. }.}.
Remedi │ │ │ +00149b90: 6174 696f 6e20 4f53 4275 696c 6420 426c ation OSBuild Bl │ │ │ +00149ba0: 7565 7072 696e 7420 736e 6970 7065 7420 ueprint snippet │ │ │ +00149bb0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
│ │ │ +00149bf0: 3c63 6f64 653e 0a5b 5b70 6163 6b61 6765  .[[package
│ │ │ +00149c00: 735d 5d0a 6e61 6d65 203d 2022 6c6f 6772  s]].name = "logr
│ │ │ +00149c10: 6f74 6174 6522 0a76 6572 7369 6f6e 203d  otate".version =
│ │ │ +00149c20: 2022 2a22 0a3c 2f63 6f64 653e 3c2f 7072   "*".
Remediation │ │ │ +00149ce0: 2053 6865 6c6c 2073 6372 6970 7420 e287 Shell script .. │ │ │ +00149cf0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ +00149d70: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +00149d90: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +00149de0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
# Remediation i
│ │ │ +00149e30: 7320 6170 706c 6963 6162 6c65 206f 6e6c  s applicable onl
│ │ │ +00149e40: 7920 696e 2063 6572 7461 696e 2070 6c61  y in certain pla
│ │ │ +00149e50: 7466 6f72 6d73 0a69 6620 7270 6d20 2d2d  tforms.if rpm --
│ │ │ +00149e60: 7175 6965 7420 2d71 206b 6572 6e65 6c3b  quiet -q kernel;
│ │ │ +00149e70: 2074 6865 6e0a 0a69 6620 2120 7270 6d20   then..if ! rpm 
│ │ │ +00149e80: 2d71 202d 2d71 7569 6574 2022 6c6f 6772  -q --quiet "logr
│ │ │ +00149e90: 6f74 6174 6522 203b 2074 6865 6e0a 2020  otate" ; then.  
│ │ │ +00149ea0: 2020 646e 6620 696e 7374 616c 6c20 2d79    dnf install -y
│ │ │ +00149eb0: 2022 6c6f 6772 6f74 6174 6522 0a66 690a   "logrotate".fi.
│ │ │ +00149ec0: 0a65 6c73 650a 2020 2020 2667 743b 2661  .else.    >&a
│ │ │ +00149ed0: 6d70 3b32 2065 6368 6f20 2752 656d 6564  mp;2 echo 'Remed
│ │ │ +00149ee0: 6961 7469 6f6e 2069 7320 6e6f 7420 6170  iation is not ap
│ │ │ +00149ef0: 706c 6963 6162 6c65 2c20 6e6f 7468 696e  plicable, nothin
│ │ │ +00149f00: 6720 7761 7320 646f 6e65 270a 6669 0a3c  g was done'.fi.<
│ │ │ +00149f10: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +00149fc0: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ +00149fd0: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ +00149fe0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
low
Disr │ │ │ +00149da0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +00149db0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +00149df0: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +00149e00: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ +0014a0b0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +0014a0c0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
.
│ │ │ +0014a110: 7061 636b 6167 6520 2d2d 6164 643d 6c6f  package --add=lo
│ │ │ +0014a120: 6772 6f74 6174 650a 3c2f 636f 6465 3e3c  grotate.<
│ │ │  0014a130: 2f70 7265 3e3c 2f64 6976 3e3c 2f64 6976  /pre>
Complexity:low
Disrup │ │ │ +0014a090: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +0014a0a0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +0014a0e0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +0014a0f0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
│ │ │ 0014a160: 3c2f 7472 3e3c 7472 2064 6174 612d 7474 Rem │ │ │ -001546e0: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ -001546f0: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ -00154700: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...

.[[pack │ │ │ -00154750: 6167 6573 5d5d 0a6e 616d 6520 3d20 2272 ages]].name = "r │ │ │ -00154760: 7379 736c 6f67 2d67 6e75 746c 7322 0a76 syslog-gnutls".v │ │ │ -00154770: 6572 7369 6f6e 203d 2022 2a22 0a3c 2f63 ersion = "*".

│ │ │ -00154790: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -00154830: 6564 6961 7469 6f6e 2041 6e61 636f 6e64 ediation Anacond │ │ │ -00154840: 6120 736e 6970 7065 7420 e287 b23c 2f61 a snippet ...
< │ │ │ -001548e0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -001548f0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -00154940: 3c74 723e 3c74 683e 5374 7261 7465 6779
.pa
│ │ │ -00154980: 636b 6167 6520 2d2d 6164 643d 7273 7973  ckage --add=rsys
│ │ │ -00154990: 6c6f 672d 676e 7574 6c73 0a3c 2f63 6f64  log-gnutls.
Remed │ │ │ -00154a50: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ -00154a60: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
C │ │ │ -001548d0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -00154900: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -00154910: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -00154950: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -00154960: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ -00154b10: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -00154b30: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -00154b60: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -00154af0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -00154b00: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00154b20: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -00154b40: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -00154b50: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

include │ │ │ -00154ba0: 2069 6e73 7461 6c6c 5f72 7379 736c 6f67 install_rsyslog │ │ │ -00154bb0: 2d67 6e75 746c 730a 0a63 6c61 7373 2069 -gnutls..class i │ │ │ -00154bc0: 6e73 7461 6c6c 5f72 7379 736c 6f67 2d67 nstall_rsyslog-g │ │ │ -00154bd0: 6e75 746c 7320 7b0a 2020 7061 636b 6167 nutls {. packag │ │ │ -00154be0: 6520 7b20 2772 7379 736c 6f67 2d67 6e75 e { 'rsyslog-gnu │ │ │ -00154bf0: 746c 7327 3a0a 2020 2020 656e 7375 7265 tls':. ensure │ │ │ -00154c00: 203d 2667 743b 2027 696e 7374 616c 6c65 => 'installe │ │ │ -00154c10: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 d',. }.}.

Remedi │ │ │ -00154cd0: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -00154ce0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -00154d90: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -00154db0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -00154de0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -00154d70: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -00154d80: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00154da0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -00154dc0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -00154dd0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

- name: │ │ │ -00154e20: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ -00154e30: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ -00154e40: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ -00154e50: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ -00154e60: 6167 733a 0a20 202d 2065 6e61 626c 655f ags:. - enable_ │ │ │ -00154e70: 7374 7261 7465 6779 0a20 202d 206c 6f77 strategy. - low │ │ │ -00154e80: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ -00154e90: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20 low_disruption. │ │ │ -00154ea0: 202d 206d 6564 6975 6d5f 7365 7665 7269 - medium_severi │ │ │ -00154eb0: 7479 0a20 202d 206e 6f5f 7265 626f 6f74 ty. - no_reboot │ │ │ -00154ec0: 5f6e 6565 6465 640a 2020 2d20 7061 636b _needed. - pack │ │ │ -00154ed0: 6167 655f 7273 7973 6c6f 672d 676e 7574 age_rsyslog-gnut │ │ │ -00154ee0: 6c73 5f69 6e73 7461 6c6c 6564 0a0a 2d20 ls_installed..- │ │ │ -00154ef0: 6e61 6d65 3a20 456e 7375 7265 2072 7379 name: Ensure rsy │ │ │ -00154f00: 736c 6f67 2d67 6e75 746c 7320 6973 2069 slog-gnutls is i │ │ │ -00154f10: 6e73 7461 6c6c 6564 0a20 2061 6e73 6962 nstalled. ansib │ │ │ -00154f20: 6c65 2e62 7569 6c74 696e 2e70 6163 6b61 le.builtin.packa │ │ │ -00154f30: 6765 3a0a 2020 2020 6e61 6d65 3a20 7273 ge:. name: rs │ │ │ -00154f40: 7973 6c6f 672d 676e 7574 6c73 0a20 2020 yslog-gnutls. │ │ │ -00154f50: 2073 7461 7465 3a20 7072 6573 656e 740a state: present. │ │ │ -00154f60: 2020 7768 656e 3a20 2722 6b65 726e 656c when: '"kernel │ │ │ -00154f70: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -00154f80: 7473 2e70 6163 6b61 6765 7327 0a20 2074 ts.packages'. t │ │ │ -00154f90: 6167 733a 0a20 202d 2065 6e61 626c 655f ags:. - enable_ │ │ │ -00154fa0: 7374 7261 7465 6779 0a20 202d 206c 6f77 strategy. - low │ │ │ -00154fb0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ -00154fc0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20 low_disruption. │ │ │ -00154fd0: 202d 206d 6564 6975 6d5f 7365 7665 7269 - medium_severi │ │ │ -00154fe0: 7479 0a20 202d 206e 6f5f 7265 626f 6f74 ty. - no_reboot │ │ │ -00154ff0: 5f6e 6565 6465 640a 2020 2d20 7061 636b _needed. - pack │ │ │ -00155000: 6167 655f 7273 7973 6c6f 672d 676e 7574 age_rsyslog-gnut │ │ │ -00155010: 6c73 5f69 6e73 7461 6c6c 6564 0a3c 2f63 ls_installed.

│ │ │ -00155030: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -001550d0: 6564 6961 7469 6f6e 2053 6865 6c6c 2073 ediation Shell s │ │ │ -001550e0: 6372 6970 7420 e287 b23c 2f61 3e3c 6272 cript ...
│ │ │ -00155190: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -001551b0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -001551e0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -00155170: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -00155180: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -001551a0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -001551c0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -001551d0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

# Remed │ │ │ -00155220: 6961 7469 6f6e 2069 7320 6170 706c 6963 iation is applic │ │ │ -00155230: 6162 6c65 206f 6e6c 7920 696e 2063 6572 able only in cer │ │ │ -00155240: 7461 696e 2070 6c61 7466 6f72 6d73 0a69 tain platforms.i │ │ │ -00155250: 6620 7270 6d20 2d2d 7175 6965 7420 2d71 f rpm --quiet -q │ │ │ -00155260: 206b 6572 6e65 6c3b 2074 6865 6e0a 0a69 kernel; then..i │ │ │ -00155270: 6620 2120 7270 6d20 2d71 202d 2d71 7569 f ! rpm -q --qui │ │ │ -00155280: 6574 2022 7273 7973 6c6f 672d 676e 7574 et "rsyslog-gnut │ │ │ -00155290: 6c73 2220 3b20 7468 656e 0a20 2020 2064 ls" ; then. d │ │ │ -001552a0: 6e66 2069 6e73 7461 6c6c 202d 7920 2272 nf install -y "r │ │ │ -001552b0: 7379 736c 6f67 2d67 6e75 746c 7322 0a66 syslog-gnutls".f │ │ │ -001552c0: 690a 0a65 6c73 650a 2020 2020 2667 743b i..else. > │ │ │ -001552d0: 2661 6d70 3b32 2065 6368 6f20 2752 656d &2 echo 'Rem │ │ │ -001552e0: 6564 6961 7469 6f6e 2069 7320 6e6f 7420 ediation is not │ │ │ -001552f0: 6170 706c 6963 6162 6c65 2c20 6e6f 7468 applicable, noth │ │ │ -00155300: 696e 6720 7761 7320 646f 6e65 270a 6669 ing was done'.fi │ │ │ +001546e0: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ +001546f0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +00154700: 3c62 723e 3c64 6976 2063 6c61 7373 3d22

low< │ │ │ +001547a0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +001547f0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +00154780: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +001547b0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +001547d0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +001547e0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +00154800: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +00154810: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ +00154830: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ +00154840: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ +00154850: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ +00154860: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ +00154870: 2020 7461 6773 3a0a 2020 2d20 656e 6162    tags:.  - enab
│ │ │ +00154880: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ +00154890: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001548a0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +001548b0: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ +001548c0: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ +001548d0: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ +001548e0: 6163 6b61 6765 5f72 7379 736c 6f67 2d67  ackage_rsyslog-g
│ │ │ +001548f0: 6e75 746c 735f 696e 7374 616c 6c65 640a  nutls_installed.
│ │ │ +00154900: 0a2d 206e 616d 653a 2045 6e73 7572 6520  .- name: Ensure 
│ │ │ +00154910: 7273 7973 6c6f 672d 676e 7574 6c73 2069  rsyslog-gnutls i
│ │ │ +00154920: 7320 696e 7374 616c 6c65 640a 2020 616e  s installed.  an
│ │ │ +00154930: 7369 626c 652e 6275 696c 7469 6e2e 7061  sible.builtin.pa
│ │ │ +00154940: 636b 6167 653a 0a20 2020 206e 616d 653a  ckage:.    name:
│ │ │ +00154950: 2072 7379 736c 6f67 2d67 6e75 746c 730a   rsyslog-gnutls.
│ │ │ +00154960: 2020 2020 7374 6174 653a 2070 7265 7365      state: prese
│ │ │ +00154970: 6e74 0a20 2077 6865 6e3a 2027 226b 6572  nt.  when: '"ker
│ │ │ +00154980: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +00154990: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ +001549a0: 2020 7461 6773 3a0a 2020 2d20 656e 6162    tags:.  - enab
│ │ │ +001549b0: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ +001549c0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001549d0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +001549e0: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ +001549f0: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ +00154a00: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ +00154a10: 6163 6b61 6765 5f72 7379 736c 6f67 2d67  ackage_rsyslog-g
│ │ │ +00154a20: 6e75 746c 735f 696e 7374 616c 6c65 640a  nutls_installed.
│ │ │ +00154a30: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +00154ae0: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +00154af0: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
│ │ │ +00154b90: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
in
│ │ │ +00154c30: 636c 7564 6520 696e 7374 616c 6c5f 7273  clude install_rs
│ │ │ +00154c40: 7973 6c6f 672d 676e 7574 6c73 0a0a 636c  yslog-gnutls..cl
│ │ │ +00154c50: 6173 7320 696e 7374 616c 6c5f 7273 7973  ass install_rsys
│ │ │ +00154c60: 6c6f 672d 676e 7574 6c73 207b 0a20 2070  log-gnutls {.  p
│ │ │ +00154c70: 6163 6b61 6765 207b 2027 7273 7973 6c6f  ackage { 'rsyslo
│ │ │ +00154c80: 672d 676e 7574 6c73 273a 0a20 2020 2065  g-gnutls':.    e
│ │ │ +00154c90: 6e73 7572 6520 3d26 6774 3b20 2769 6e73  nsure => 'ins
│ │ │ +00154ca0: 7461 6c6c 6564 272c 0a20 207d 0a7d 0a3c  talled',.  }.}.<
│ │ │ +00154cb0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +00154d60: 656d 6564 6961 7469 6f6e 204f 5342 7569 emediation OSBui │ │ │ +00154d70: 6c64 2042 6c75 6570 7269 6e74 2073 6e69 ld Blueprint sni │ │ │ +00154d80: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +00154d90: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +00154dc0: 3c70 7265 3e3c 636f 6465 3e0a 5b5b 7061
.[[pa
│ │ │ +00154dd0: 636b 6167 6573 5d5d 0a6e 616d 6520 3d20  ckages]].name = 
│ │ │ +00154de0: 2272 7379 736c 6f67 2d67 6e75 746c 7322  "rsyslog-gnutls"
│ │ │ +00154df0: 0a76 6572 7369 6f6e 203d 2022 2a22 0a3c  .version = "*".<
│ │ │ +00154e00: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +00154eb0: 656d 6564 6961 7469 6f6e 2053 6865 6c6c emediation Shell │ │ │ +00154ec0: 2073 6372 6970 7420 e287 b23c 2f61 3e3c script ...< │ │ │ +00154ed0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
│ │ │ +00154b80: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00154bb0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00154bc0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00154c00: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ +00154c10: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Com │ │ │ +00154f50: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +00154f80: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +00154fa0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +00154fb0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +00154fd0: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ +00154ff0: 3c70 7265 3e3c 636f 6465 3e23 2052 656d
# Rem
│ │ │ +00155000: 6564 6961 7469 6f6e 2069 7320 6170 706c  ediation is appl
│ │ │ +00155010: 6963 6162 6c65 206f 6e6c 7920 696e 2063  icable only in c
│ │ │ +00155020: 6572 7461 696e 2070 6c61 7466 6f72 6d73  ertain platforms
│ │ │ +00155030: 0a69 6620 7270 6d20 2d2d 7175 6965 7420  .if rpm --quiet 
│ │ │ +00155040: 2d71 206b 6572 6e65 6c3b 2074 6865 6e0a  -q kernel; then.
│ │ │ +00155050: 0a69 6620 2120 7270 6d20 2d71 202d 2d71  .if ! rpm -q --q
│ │ │ +00155060: 7569 6574 2022 7273 7973 6c6f 672d 676e  uiet "rsyslog-gn
│ │ │ +00155070: 7574 6c73 2220 3b20 7468 656e 0a20 2020  utls" ; then.   
│ │ │ +00155080: 2064 6e66 2069 6e73 7461 6c6c 202d 7920   dnf install -y 
│ │ │ +00155090: 2272 7379 736c 6f67 2d67 6e75 746c 7322  "rsyslog-gnutls"
│ │ │ +001550a0: 0a66 690a 0a65 6c73 650a 2020 2020 2667  .fi..else.    &g
│ │ │ +001550b0: 743b 2661 6d70 3b32 2065 6368 6f20 2752  t;&2 echo 'R
│ │ │ +001550c0: 656d 6564 6961 7469 6f6e 2069 7320 6e6f  emediation is no
│ │ │ +001550d0: 7420 6170 706c 6963 6162 6c65 2c20 6e6f  t applicable, no
│ │ │ +001550e0: 7468 696e 6720 7761 7320 646f 6e65 270a  thing was done'.
│ │ │ +001550f0: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e  fi.
│ │ │ +00155100: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation A │ │ │ +001551b0: 6e61 636f 6e64 6120 736e 6970 7065 7420 naconda snippet │ │ │ +001551c0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ +00155250: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +00155270: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +00155290: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +001552c0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +001552d0: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ +001552e0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
.package --ad
│ │ │ +00155300: 643d 7273 7973 6c6f 672d 676e 7574 6c73  d=rsyslog-gnutls
│ │ │  00155310: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
< │ │ │ 00155330: 2f74 723e 3c2f 7462 6f64 793e 3c2f 7461 /tr>Remediation │ │ │ -0020eff0: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ -0020f000: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -0020f090: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -0020f0b0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -0020f0c0: 7464 3e68 6967 683c 2f74 643e 3c2f 7472 td>highReboot: │ │ │ -0020f0e0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -0020f100: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ -0020f130: 636f 6465 3e0a 7061 7274 202f 626f 6f74  code>.part /boot
│ │ │ -0020f140: 202d 2d6d 6f75 6e74 6f70 7469 6f6e 733d   --mountoptions=
│ │ │ -0020f150: 226e 6f65 7865 6322 0a3c 2f63 6f64 653e  "noexec".
│ │ │ -0020f160: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -0020f210: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -0020f220: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -0020f230: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -0020f260: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -0020f2d0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption: │ │ │ -0020f2f0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -0020f320: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Comple │ │ │ -0020f2b0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -0020f2c0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
high
Reb │ │ │ -0020f300: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -0020f310: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:configure< │ │ │ -0020f340: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -0020f360: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ -0020f370: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ -0020f380: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ -0020f390: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ -0020f3a0: 2020 7461 6773 3a0a 2020 2d20 636f 6e66    tags:.  - conf
│ │ │ -0020f3b0: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -0020f3c0: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -0020f3d0: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -0020f3e0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -0020f3f0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -0020f400: 756e 745f 6f70 7469 6f6e 5f62 6f6f 745f  unt_option_boot_
│ │ │ -0020f410: 6e6f 6578 6563 0a20 202d 206e 6f5f 7265  noexec.  - no_re
│ │ │ -0020f420: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -0020f430: 616d 653a 2027 4164 6420 6e6f 6578 6563  ame: 'Add noexec
│ │ │ -0020f440: 204f 7074 696f 6e20 746f 202f 626f 6f74   Option to /boot
│ │ │ -0020f450: 3a20 4368 6563 6b20 696e 666f 726d 6174  : Check informat
│ │ │ -0020f460: 696f 6e20 6173 736f 6369 6174 6564 2074  ion associated t
│ │ │ -0020f470: 6f20 6d6f 756e 7470 6f69 6e74 270a 2020  o mountpoint'.  
│ │ │ -0020f480: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -0020f490: 636f 6d6d 616e 643a 2066 696e 646d 6e74  command: findmnt
│ │ │ -0020f4a0: 202d 2d66 7374 6162 2027 2f62 6f6f 7427   --fstab '/boot'
│ │ │ -0020f4b0: 0a20 2072 6567 6973 7465 723a 2064 6576  .  register: dev
│ │ │ -0020f4c0: 6963 655f 6e61 6d65 0a20 2066 6169 6c65  ice_name.  faile
│ │ │ -0020f4d0: 645f 7768 656e 3a20 6465 7669 6365 5f6e  d_when: device_n
│ │ │ -0020f4e0: 616d 652e 7263 2026 6774 3b20 310a 2020  ame.rc > 1.  
│ │ │ -0020f4f0: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ -0020f500: 6c73 650a 2020 6368 6563 6b5f 6d6f 6465  lse.  check_mode
│ │ │ -0020f510: 3a20 6661 6c73 650a 2020 7768 656e 3a20  : false.  when: 
│ │ │ -0020f520: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -0020f530: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -0020f540: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -0020f550: 7270 6d2d 6f73 7472 6565 2220 696e 2061  rpm-ostree" in a
│ │ │ -0020f560: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -0020f570: 6b61 6765 730a 2020 2020 616e 6420 2262  kages.    and "b
│ │ │ -0020f580: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -0020f590: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -0020f5a0: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -0020f5b0: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -0020f5c0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -0020f5d0: 6b61 6765 730a 2020 2020 616e 6420 226f  kages.    and "o
│ │ │ -0020f5e0: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -0020f5f0: 655f 7072 6f63 5f63 6d64 6c69 6e65 2029  e_proc_cmdline )
│ │ │ -0020f600: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -0020f610: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -0020f620: 6e5f 7479 7065 2069 6e0a 2020 2020 5b22  n_type in.    ["
│ │ │ -0020f630: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -0020f640: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -0020f650: 6e22 2c20 2263 6f6e 7461 696e 6572 225d  n", "container"]
│ │ │ -0020f660: 2029 2029 0a20 2074 6167 733a 0a20 202d   ) ).  tags:.  -
│ │ │ -0020f670: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ -0020f680: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ -0020f690: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -0020f6a0: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -0020f6b0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -0020f6c0: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ -0020f6d0: 626f 6f74 5f6e 6f65 7865 630a 2020 2d20  boot_noexec.  - 
│ │ │ -0020f6e0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -0020f6f0: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ -0020f700: 6f65 7865 6320 4f70 7469 6f6e 2074 6f20  oexec Option to 
│ │ │ -0020f710: 2f62 6f6f 743a 2043 7265 6174 6520 6d6f  /boot: Create mo
│ │ │ -0020f720: 756e 745f 696e 666f 2064 6963 7469 6f6e  unt_info diction
│ │ │ -0020f730: 6172 7920 7661 7269 6162 6c65 270a 2020  ary variable'.  
│ │ │ -0020f740: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ -0020f750: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ -0020f760: 756e 745f 696e 666f 7c64 6566 6175 6c74  unt_info|default
│ │ │ -0020f770: 287b 7d29 7c63 6f6d 6269 6e65 287b 6974  ({})|combine({it
│ │ │ -0020f780: 656d 2e30 3a20 6974 656d 2e31 7d29 207d  em.0: item.1}) }
│ │ │ -0020f790: 7d27 0a20 2077 6974 685f 746f 6765 7468  }'.  with_togeth
│ │ │ -0020f7a0: 6572 3a0a 2020 2d20 277b 7b20 6465 7669  er:.  - '{{ devi
│ │ │ -0020f7b0: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ -0020f7c0: 696e 6573 5b30 5d2e 7370 6c69 7428 2920  ines[0].split() 
│ │ │ -0020f7d0: 7c20 6d61 7028 2727 6c6f 7765 7227 2729  | map(''lower'')
│ │ │ -0020f7e0: 207c 206c 6973 7420 7d7d 270a 2020 2d20   | list }}'.  - 
│ │ │ -0020f7f0: 277b 7b20 6465 7669 6365 5f6e 616d 652e  '{{ device_name.
│ │ │ -0020f800: 7374 646f 7574 5f6c 696e 6573 5b31 5d2e  stdout_lines[1].
│ │ │ -0020f810: 7370 6c69 7428 2920 7c20 6c69 7374 207d  split() | list }
│ │ │ -0020f820: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028  }'.  when:.  - (
│ │ │ -0020f830: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -0020f840: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -0020f850: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ -0020f860: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ -0020f870: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -0020f880: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ -0020f890: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ -0020f8a0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -0020f8b0: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -0020f8c0: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -0020f8d0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -0020f8e0: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ -0020f8f0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -0020f900: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ -0020f910: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -0020f920: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -0020f930: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ -0020f940: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ -0020f950: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ -0020f960: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ -0020f970: 2920 290a 2020 2d20 6465 7669 6365 5f6e  ) ).  - device_n
│ │ │ -0020f980: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ -0020f990: 6669 6e65 6420 616e 6420 6465 7669 6365  fined and device
│ │ │ -0020f9a0: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ -0020f9b0: 6573 2069 7320 6465 6669 6e65 640a 2020  es is defined.  
│ │ │ -0020f9c0: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ -0020f9d0: 7464 6f75 7420 7c20 6c65 6e67 7468 2026  tdout | length &
│ │ │ -0020f9e0: 6774 3b20 3029 0a20 2074 6167 733a 0a20  gt; 0).  tags:. 
│ │ │ -0020f9f0: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -0020fa00: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -0020fa10: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -0020fa20: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -0020fa30: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -0020fa40: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ -0020fa50: 6e5f 626f 6f74 5f6e 6f65 7865 630a 2020  n_boot_noexec.  
│ │ │ -0020fa60: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -0020fa70: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ -0020fa80: 206e 6f65 7865 6320 4f70 7469 6f6e 2074   noexec Option t
│ │ │ -0020fa90: 6f20 2f62 6f6f 743a 2049 6620 2f62 6f6f  o /boot: If /boo
│ │ │ -0020faa0: 7420 6e6f 7420 6d6f 756e 7465 642c 2063  t not mounted, c
│ │ │ -0020fab0: 7261 6674 206d 6f75 6e74 5f69 6e66 6f20  raft mount_info 
│ │ │ -0020fac0: 6d61 6e75 616c 6c79 270a 2020 7365 745f  manually'.  set_
│ │ │ -0020fad0: 6661 6374 3a0a 2020 2020 6d6f 756e 745f  fact:.    mount_
│ │ │ -0020fae0: 696e 666f 3a20 277b 7b20 6d6f 756e 745f  info: '{{ mount_
│ │ │ -0020faf0: 696e 666f 7c64 6566 6175 6c74 287b 7d29  info|default({})
│ │ │ -0020fb00: 7c63 6f6d 6269 6e65 287b 6974 656d 2e30  |combine({item.0
│ │ │ -0020fb10: 3a20 6974 656d 2e31 7d29 207d 7d27 0a20  : item.1}) }}'. 
│ │ │ -0020fb20: 2077 6974 685f 746f 6765 7468 6572 3a0a   with_together:.
│ │ │ -0020fb30: 2020 2d20 2d20 7461 7267 6574 0a20 2020    - - target.   
│ │ │ -0020fb40: 202d 2073 6f75 7263 650a 2020 2020 2d20   - source.    - 
│ │ │ -0020fb50: 6673 7479 7065 0a20 2020 202d 206f 7074  fstype.    - opt
│ │ │ -0020fb60: 696f 6e73 0a20 202d 202d 202f 626f 6f74  ions.  - - /boot
│ │ │ -0020fb70: 0a20 2020 202d 2027 270a 2020 2020 2d20  .    - ''.    - 
│ │ │ -0020fb80: 2727 0a20 2020 202d 2064 6566 6175 6c74  ''.    - default
│ │ │ -0020fb90: 730a 2020 7768 656e 3a0a 2020 2d20 2820  s.  when:.  - ( 
│ │ │ -0020fba0: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ -0020fbb0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -0020fbc0: 7061 636b 6167 6573 2061 6e64 2022 7270  packages and "rp
│ │ │ -0020fbd0: 6d2d 6f73 7472 6565 2220 696e 2061 6e73  m-ostree" in ans
│ │ │ -0020fbe0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -0020fbf0: 6765 730a 2020 2020 616e 6420 2262 6f6f  ges.    and "boo
│ │ │ -0020fc00: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ -0020fc10: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -0020fc20: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ -0020fc30: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ -0020fc40: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -0020fc50: 6765 730a 2020 2020 616e 6420 226f 7374  ges.    and "ost
│ │ │ -0020fc60: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -0020fc70: 7072 6f63 5f63 6d64 6c69 6e65 2029 2061  proc_cmdline ) a
│ │ │ -0020fc80: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ -0020fc90: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ -0020fca0: 7479 7065 2069 6e0a 2020 2020 5b22 646f  type in.    ["do
│ │ │ -0020fcb0: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ -0020fcc0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ -0020fcd0: 2c20 2263 6f6e 7461 696e 6572 225d 2029  , "container"] )
│ │ │ -0020fce0: 2029 0a20 202d 2028 222d 2d66 7374 6162   ).  - ("--fstab
│ │ │ -0020fcf0: 2220 7c20 6c65 6e67 7468 203d 3d20 3029  " | length == 0)
│ │ │ -0020fd00: 0a20 202d 2064 6576 6963 655f 6e61 6d65  .  - device_name
│ │ │ -0020fd10: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ -0020fd20: 6564 2061 6e64 2064 6576 6963 655f 6e61  ed and device_na
│ │ │ -0020fd30: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320  me.stdout_lines 
│ │ │ -0020fd40: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ -0020fd50: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -0020fd60: 7574 207c 206c 656e 6774 6820 3d3d 2030  ut | length == 0
│ │ │ -0020fd70: 290a 2020 7461 6773 3a0a 2020 2d20 636f  ).  tags:.  - co
│ │ │ -0020fd80: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -0020fd90: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -0020fda0: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -0020fdb0: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -0020fdc0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -0020fdd0: 6d6f 756e 745f 6f70 7469 6f6e 5f62 6f6f  mount_option_boo
│ │ │ -0020fde0: 745f 6e6f 6578 6563 0a20 202d 206e 6f5f  t_noexec.  - no_
│ │ │ -0020fdf0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -0020fe00: 206e 616d 653a 2027 4164 6420 6e6f 6578   name: 'Add noex
│ │ │ -0020fe10: 6563 204f 7074 696f 6e20 746f 202f 626f  ec Option to /bo
│ │ │ -0020fe20: 6f74 3a20 4d61 6b65 2073 7572 6520 6e6f  ot: Make sure no
│ │ │ -0020fe30: 6578 6563 206f 7074 696f 6e20 6973 2070  exec option is p
│ │ │ -0020fe40: 6172 7420 6f66 2074 6865 2074 6f20 2f62  art of the to /b
│ │ │ -0020fe50: 6f6f 740a 2020 2020 6f70 7469 6f6e 7327  oot.    options'
│ │ │ -0020fe60: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ -0020fe70: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b   mount_info: '{{
│ │ │ -0020fe80: 206d 6f75 6e74 5f69 6e66 6f20 7c20 636f   mount_info | co
│ │ │ -0020fe90: 6d62 696e 6528 207b 2727 6f70 7469 6f6e  mbine( {''option
│ │ │ -0020fea0: 7327 273a 2727 2727 7e28 6d6f 756e 745f  s'':''''~(mount_
│ │ │ -0020feb0: 696e 666f 2e6f 7074 696f 6e73 207c 0a20  info.options |. 
│ │ │ -0020fec0: 2020 2020 2064 6566 6175 6c74 2827 2727       default('''
│ │ │ -0020fed0: 2729 297e 2827 272c 2727 2069 6620 286d  '))~('','' if (m
│ │ │ -0020fee0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -0020fef0: 7320 7c20 6465 6661 756c 7428 2727 2727  s | default(''''
│ │ │ -0020ff00: 2929 2065 6c73 6520 2727 2727 297e 2727  )) else '''')~''
│ │ │ -0020ff10: 6e6f 6578 6563 2727 0a20 2020 2020 207d  noexec''.      }
│ │ │ -0020ff20: 2920 7d7d 270a 2020 7768 656e 3a0a 2020  ) }}'.  when:.  
│ │ │ -0020ff30: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ -0020ff40: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -0020ff50: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -0020ff60: 2022 7270 6d2d 6f73 7472 6565 2220 696e   "rpm-ostree" in
│ │ │ -0020ff70: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -0020ff80: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -0020ff90: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ -0020ffa0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -0020ffb0: 7320 616e 6420 6e6f 7420 226f 7065 6e73  s and not "opens
│ │ │ -0020ffc0: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ -0020ffd0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -0020ffe0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -0020fff0: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ -00210000: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ -00210010: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ -00210020: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ -00210030: 696f 6e5f 7479 7065 2069 6e0a 2020 2020  ion_type in.    
│ │ │ -00210040: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ -00210050: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ -00210060: 6d61 6e22 2c20 2263 6f6e 7461 696e 6572  man", "container
│ │ │ -00210070: 225d 2029 2029 0a20 202d 206d 6f75 6e74  "] ) ).  - mount
│ │ │ -00210080: 5f69 6e66 6f20 6973 2064 6566 696e 6564  _info is defined
│ │ │ -00210090: 2061 6e64 2022 6e6f 6578 6563 2220 6e6f   and "noexec" no
│ │ │ -002100a0: 7420 696e 2028 6d6f 756e 745f 696e 666f  t in (mount_info
│ │ │ -002100b0: 2e6f 7074 696f 6e73 207c 2064 6566 6175  .options | defau
│ │ │ -002100c0: 6c74 2827 2729 290a 2020 7461 6773 3a0a  lt('')).  tags:.
│ │ │ -002100d0: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ -002100e0: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ -002100f0: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -00210100: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -00210110: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -00210120: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ -00210130: 6f6e 5f62 6f6f 745f 6e6f 6578 6563 0a20  on_boot_noexec. 
│ │ │ -00210140: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -00210150: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ -00210160: 6420 6e6f 6578 6563 204f 7074 696f 6e20  d noexec Option 
│ │ │ -00210170: 746f 202f 626f 6f74 3a20 456e 7375 7265  to /boot: Ensure
│ │ │ -00210180: 202f 626f 6f74 2069 7320 6d6f 756e 7465   /boot is mounte
│ │ │ -00210190: 6420 7769 7468 206e 6f65 7865 6320 6f70  d with noexec op
│ │ │ -002101a0: 7469 6f6e 270a 2020 616e 7369 626c 652e  tion'.  ansible.
│ │ │ -002101b0: 706f 7369 782e 6d6f 756e 743a 0a20 2020  posix.mount:.   
│ │ │ -002101c0: 2070 6174 683a 202f 626f 6f74 0a20 2020   path: /boot.   
│ │ │ -002101d0: 2073 7263 3a20 277b 7b20 6d6f 756e 745f   src: '{{ mount_
│ │ │ -002101e0: 696e 666f 2e73 6f75 7263 6520 7c20 6465  info.source | de
│ │ │ -002101f0: 6661 756c 7428 2727 2727 2920 7d7d 270a  fault('''') }}'.
│ │ │ -00210200: 2020 2020 6f70 7473 3a20 277b 7b20 6d6f      opts: '{{ mo
│ │ │ -00210210: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ -00210220: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ -00210230: 207d 7d27 0a20 2020 2073 7461 7465 3a20   }}'.    state: 
│ │ │ -00210240: 6d6f 756e 7465 640a 2020 2020 6673 7479  mounted.    fsty
│ │ │ -00210250: 7065 3a20 277b 7b20 6d6f 756e 745f 696e  pe: '{{ mount_in
│ │ │ -00210260: 666f 2e66 7374 7970 6520 7c20 6465 6661  fo.fstype | defa
│ │ │ -00210270: 756c 7428 2727 2727 2920 7d7d 270a 2020  ult('''') }}'.  
│ │ │ -00210280: 7265 6769 7374 6572 3a20 6d6f 756e 745f  register: mount_
│ │ │ -00210290: 7265 7375 6c74 0a20 2066 6169 6c65 645f  result.  failed_
│ │ │ -002102a0: 7768 656e 3a0a 2020 2d20 6d6f 756e 745f  when:.  - mount_
│ │ │ -002102b0: 7265 7375 6c74 2069 7320 6661 696c 6564  result is failed
│ │ │ -002102c0: 0a20 202d 2027 2727 7461 7267 6574 2069  .  - '''target i
│ │ │ -002102d0: 7320 6275 7379 2727 206e 6f74 2069 6e20  s busy'' not in 
│ │ │ -002102e0: 286d 6f75 6e74 5f72 6573 756c 742e 6d73  (mount_result.ms
│ │ │ -002102f0: 6720 7c20 6465 6661 756c 7428 2727 2727  g | default(''''
│ │ │ -00210300: 2929 270a 2020 2d20 2727 2761 6c72 6561  ))'.  - '''alrea
│ │ │ -00210310: 6479 206d 6f75 6e74 6564 2727 206e 6f74  dy mounted'' not
│ │ │ -00210320: 2069 6e20 286d 6f75 6e74 5f72 6573 756c   in (mount_resul
│ │ │ -00210330: 742e 6d73 6720 7c20 6465 6661 756c 7428  t.msg | default(
│ │ │ -00210340: 2727 2727 2929 270a 2020 7768 656e 3a0a  ''''))'.  when:.
│ │ │ -00210350: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ -00210360: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -00210370: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -00210380: 6e64 2022 7270 6d2d 6f73 7472 6565 2220  nd "rpm-ostree" 
│ │ │ -00210390: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -002103a0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -002103b0: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ -002103c0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -002103d0: 6765 7320 616e 6420 6e6f 7420 226f 7065  ges and not "ope
│ │ │ -002103e0: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ -002103f0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -00210400: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -00210410: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ -00210420: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ -00210430: 6e65 2029 2061 6e64 206e 6f74 2028 2061  ne ) and not ( a
│ │ │ -00210440: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ -00210450: 6174 696f 6e5f 7479 7065 2069 6e0a 2020  ation_type in.  
│ │ │ -00210460: 2020 5b22 646f 636b 6572 222c 2022 6c78    ["docker", "lx
│ │ │ -00210470: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ -00210480: 6f64 6d61 6e22 2c20 2263 6f6e 7461 696e  odman", "contain
│ │ │ -00210490: 6572 225d 2029 2029 0a20 202d 206d 6f75  er"] ) ).  - mou
│ │ │ -002104a0: 6e74 5f69 6e66 6f20 6973 2064 6566 696e  nt_info is defin
│ │ │ -002104b0: 6564 0a20 202d 2028 6465 7669 6365 5f6e  ed.  - (device_n
│ │ │ -002104c0: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ -002104d0: 6669 6e65 6420 616e 6420 2864 6576 6963  fined and (devic
│ │ │ -002104e0: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ -002104f0: 6c65 6e67 7468 2026 6774 3b20 3029 2920  length > 0)) 
│ │ │ -00210500: 6f72 2028 222d 2d66 7374 6162 220a 2020  or ("--fstab".  
│ │ │ -00210510: 2020 7c20 6c65 6e67 7468 203d 3d20 3029    | length == 0)
│ │ │ -00210520: 0a20 2074 6167 733a 0a20 202d 2063 6f6e  .  tags:.  - con
│ │ │ -00210530: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -00210540: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -00210550: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -00210560: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -00210570: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -00210580: 6f75 6e74 5f6f 7074 696f 6e5f 626f 6f74  ount_option_boot
│ │ │ -00210590: 5f6e 6f65 7865 630a 2020 2d20 6e6f 5f72  _noexec.  - no_r
│ │ │ -002105a0: 6562 6f6f 745f 6e65 6564 6564 0a3c 2f63  eboot_needed.
│ │ │ -002105c0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -00210660: 6564 6961 7469 6f6e 2053 6865 6c6c 2073 ediation Shell s │ │ │ -00210670: 6372 6970 7420 e287 b23c 2f61 3e3c 6272 cript ...
# R
│ │ │ -00210730: 656d 6564 6961 7469 6f6e 2069 7320 6170  emediation is ap
│ │ │ -00210740: 706c 6963 6162 6c65 206f 6e6c 7920 696e  plicable only in
│ │ │ -00210750: 2063 6572 7461 696e 2070 6c61 7466 6f72   certain platfor
│ │ │ -00210760: 6d73 0a69 6620 2820 2120 2820 7b20 7270  ms.if ( ! ( { rp
│ │ │ -00210770: 6d20 2d2d 7175 6965 7420 2d71 206b 6572  m --quiet -q ker
│ │ │ -00210780: 6e65 6c20 3b7d 2026 616d 703b 2661 6d70  nel ;} &&
│ │ │ -00210790: 3b20 7b20 7270 6d20 2d2d 7175 6965 7420  ; { rpm --quiet 
│ │ │ -002107a0: 2d71 2072 706d 2d6f 7374 7265 6520 3b7d  -q rpm-ostree ;}
│ │ │ -002107b0: 2026 616d 703b 2661 6d70 3b20 7b20 7270   && { rp
│ │ │ -002107c0: 6d20 2d2d 7175 6965 7420 2d71 2062 6f6f  m --quiet -q boo
│ │ │ -002107d0: 7463 203b 7d20 2661 6d70 3b26 616d 703b  tc ;} &&
│ │ │ -002107e0: 207b 2021 2072 706d 202d 2d71 7569 6574   { ! rpm --quiet
│ │ │ -002107f0: 202d 7120 6f70 656e 7368 6966 742d 6b75   -q openshift-ku
│ │ │ -00210800: 6265 6c65 7420 3b7d 2026 616d 703b 2661  belet ;} &&a
│ │ │ -00210810: 6d70 3b20 285b 202d 6620 2f72 756e 2f6f  mp; ([ -f /run/o
│ │ │ -00210820: 7374 7265 652d 626f 6f74 6564 205d 207c  stree-booted ] |
│ │ │ -00210830: 7c20 5b20 2d4c 202f 6f73 7472 6565 205d  | [ -L /ostree ]
│ │ │ -00210840: 2920 2920 2661 6d70 3b26 616d 703b 2021  ) ) && !
│ │ │ -00210850: 2028 205b 202d 6620 2f2e 646f 636b 6572   ( [ -f /.docker
│ │ │ -00210860: 656e 7620 5d20 7c7c 205b 202d 6620 2f72  env ] || [ -f /r
│ │ │ -00210870: 756e 2f2e 636f 6e74 6169 6e65 7265 6e76  un/.containerenv
│ │ │ -00210880: 205d 2029 2029 3b20 7468 656e 0a0a 6675   ] ) ); then..fu
│ │ │ -00210890: 6e63 7469 6f6e 2070 6572 666f 726d 5f72  nction perform_r
│ │ │ -002108a0: 656d 6564 6961 7469 6f6e 207b 0a0a 2020  emediation {..  
│ │ │ -002108b0: 2020 0a20 2020 2020 2020 2023 2074 6865    .        # the
│ │ │ -002108c0: 206d 6f75 6e74 2070 6f69 6e74 202f 626f   mount point /bo
│ │ │ -002108d0: 6f74 2068 6173 2074 6f20 6265 2064 6566  ot has to be def
│ │ │ -002108e0: 696e 6564 2069 6e20 2f65 7463 2f66 7374  ined in /etc/fst
│ │ │ -002108f0: 6162 0a20 2020 2020 2020 2023 2062 6566  ab.        # bef
│ │ │ -00210900: 6f72 6520 7468 6973 2072 656d 6564 6961  ore this remedia
│ │ │ -00210910: 7469 6f6e 2063 616e 2062 6520 6578 6563  tion can be exec
│ │ │ -00210920: 7574 6564 2e20 496e 2063 6173 6520 6974  uted. In case it
│ │ │ -00210930: 2069 7320 6e6f 7420 6465 6669 6e65 642c   is not defined,
│ │ │ -00210940: 2074 6865 0a20 2020 2020 2020 2023 2072   the.        # r
│ │ │ -00210950: 656d 6564 6961 7469 6f6e 2061 626f 7274  emediation abort
│ │ │ -00210960: 7320 616e 6420 6e6f 2063 6861 6e67 6573  s and no changes
│ │ │ -00210970: 2072 6567 6172 6469 6e67 2074 6865 206d   regarding the m
│ │ │ -00210980: 6f75 6e74 2070 6f69 6e74 2061 7265 2064  ount point are d
│ │ │ -00210990: 6f6e 652e 0a20 2020 2020 2020 206d 6f75  one..        mou
│ │ │ -002109a0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -002109b0: 6567 6578 703d 2224 2870 7269 6e74 6620  egexp="$(printf 
│ │ │ -002109c0: 225e 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e  "^[[:space:]]*[^
│ │ │ -002109d0: 235d 2e2a 5b5b 3a73 7061 6365 3a5d 5d25  #].*[[:space:]]%
│ │ │ -002109e0: 735b 5b3a 7370 6163 653a 5d5d 2220 222f  s[[:space:]]" "/
│ │ │ -002109f0: 626f 6f74 2229 220a 0a20 2020 2067 7265  boot")"..    gre
│ │ │ -00210a00: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -00210a10: 6d61 7463 685f 7265 6765 7870 2220 2d71  match_regexp" -q
│ │ │ -00210a20: 202f 6574 632f 6673 7461 6220 5c0a 2020   /etc/fstab \.  
│ │ │ -00210a30: 2020 2020 2020 7c7c 207b 2065 6368 6f20        || { echo 
│ │ │ -00210a40: 2254 6865 206d 6f75 6e74 2070 6f69 6e74  "The mount point
│ │ │ -00210a50: 2027 2f62 6f6f 7427 2069 7320 6e6f 7420   '/boot' is not 
│ │ │ -00210a60: 6576 656e 2069 6e20 2f65 7463 2f66 7374  even in /etc/fst
│ │ │ -00210a70: 6162 2c20 736f 2077 6520 6361 6e27 7420  ab, so we can't 
│ │ │ -00210a80: 7365 7420 7570 206d 6f75 6e74 206f 7074  set up mount opt
│ │ │ -00210a90: 696f 6e73 2220 2667 743b 2661 6d70 3b32  ions" >&2
│ │ │ -00210aa0: 3b0a 2020 2020 2020 2020 2020 2020 2020  ;.              
│ │ │ -00210ab0: 2020 6563 686f 2022 4e6f 7420 7265 6d65    echo "Not reme
│ │ │ -00210ac0: 6469 6174 696e 672c 2062 6563 6175 7365  diating, because
│ │ │ -00210ad0: 2074 6865 7265 2069 7320 6e6f 2072 6563   there is no rec
│ │ │ -00210ae0: 6f72 6420 6f66 202f 626f 6f74 2069 6e20  ord of /boot in 
│ │ │ -00210af0: 2f65 7463 2f66 7374 6162 2220 2667 743b  /etc/fstab" >
│ │ │ -00210b00: 2661 6d70 3b32 3b20 7265 7475 726e 2031  &2; return 1
│ │ │ -00210b10: 3b20 7d0a 2020 2020 0a0a 0a20 2020 206d  ; }.    ...    m
│ │ │ -00210b20: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -00210b30: 5f72 6567 6578 703d 2224 2870 7269 6e74  _regexp="$(print
│ │ │ -00210b40: 6620 225e 5b5b 3a73 7061 6365 3a5d 5d2a  f "^[[:space:]]*
│ │ │ -00210b50: 5b5e 235d 2e2a 5b5b 3a73 7061 6365 3a5d  [^#].*[[:space:]
│ │ │ -00210b60: 5d25 735b 5b3a 7370 6163 653a 5d5d 2220  ]%s[[:space:]]" 
│ │ │ -00210b70: 2f62 6f6f 7429 220a 0a20 2020 2023 2049  /boot)"..    # I
│ │ │ -00210b80: 6620 7468 6520 6d6f 756e 7420 706f 696e  f the mount poin
│ │ │ -00210b90: 7420 6973 206e 6f74 2069 6e20 2f65 7463  t is not in /etc
│ │ │ -00210ba0: 2f66 7374 6162 2c20 6765 7420 7072 6576  /fstab, get prev
│ │ │ -00210bb0: 696f 7573 206d 6f75 6e74 206f 7074 696f  ious mount optio
│ │ │ -00210bc0: 6e73 2066 726f 6d20 2f65 7463 2f6d 7461  ns from /etc/mta
│ │ │ -00210bd0: 620a 2020 2020 6966 2021 2067 7265 7020  b.    if ! grep 
│ │ │ -00210be0: 2d71 2022 246d 6f75 6e74 5f70 6f69 6e74  -q "$mount_point
│ │ │ -00210bf0: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ -00210c00: 6574 632f 6673 7461 623b 2074 6865 6e0a  etc/fstab; then.
│ │ │ -00210c10: 2020 2020 2020 2020 2320 7275 6e74 696d          # runtim
│ │ │ -00210c20: 6520 6f70 7473 2077 6974 686f 7574 2073  e opts without s
│ │ │ -00210c30: 6f6d 6520 6175 746f 6d61 7469 6320 6b65  ome automatic ke
│ │ │ -00210c40: 726e 656c 2f75 7365 7273 7061 6365 2d61  rnel/userspace-a
│ │ │ -00210c50: 6464 6564 2064 6566 6175 6c74 730a 2020  dded defaults.  
│ │ │ -00210c60: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ -00210c70: 6f75 6e74 5f6f 7074 733d 2428 6772 6570  ount_opts=$(grep
│ │ │ -00210c80: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -00210c90: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ -00210ca0: 632f 6d74 6162 207c 2068 6561 6420 2d31  c/mtab | head -1
│ │ │ -00210cb0: 207c 2020 6177 6b20 277b 7072 696e 7420   |  awk '{print 
│ │ │ -00210cc0: 2434 7d27 205c 0a20 2020 2020 2020 2020  $4}' \.         
│ │ │ -00210cd0: 2020 2020 2020 2020 2020 207c 2073 6564             | sed
│ │ │ -00210ce0: 202d 4520 2273 2f28 7277 7c64 6566 6175   -E "s/(rw|defau
│ │ │ -00210cf0: 6c74 737c 7365 636c 6162 656c 7c6e 6f65  lts|seclabel|noe
│ │ │ -00210d00: 7865 6329 282c 7c24 292f 2f67 3b73 2f2c  xec)(,|$)//g;s/,
│ │ │ -00210d10: 242f 2f22 290a 2020 2020 2020 2020 5b20  $//").        [ 
│ │ │ -00210d20: 2224 7072 6576 696f 7573 5f6d 6f75 6e74  "$previous_mount
│ │ │ -00210d30: 5f6f 7074 7322 205d 2026 616d 703b 2661  _opts" ] &&a
│ │ │ -00210d40: 6d70 3b20 7072 6576 696f 7573 5f6d 6f75  mp; previous_mou
│ │ │ -00210d50: 6e74 5f6f 7074 732b 3d22 2c22 0a20 2020  nt_opts+=",".   
│ │ │ -00210d60: 2020 2020 2023 2049 6e20 6973 6f39 3636       # In iso966
│ │ │ -00210d70: 3020 6669 6c65 7379 7374 656d 7320 6d74  0 filesystems mt
│ │ │ -00210d80: 6162 2063 6f75 6c64 2064 6573 6372 6962  ab could describ
│ │ │ -00210d90: 6520 6120 2262 6c6f 636b 7369 7a65 2220  e a "blocksize" 
│ │ │ -00210da0: 7661 6c75 652c 2074 6869 7320 7368 6f75  value, this shou
│ │ │ -00210db0: 6c64 2062 6520 7265 666c 6563 7465 6420  ld be reflected 
│ │ │ -00210dc0: 696e 0a20 2020 2020 2020 2023 2066 7374  in.        # fst
│ │ │ -00210dd0: 6162 2061 7320 2262 6c6f 636b 222e 2020  ab as "block".  
│ │ │ -00210de0: 5468 6520 6e65 7874 2076 6172 6961 626c  The next variabl
│ │ │ -00210df0: 6520 6973 2074 6f20 7361 7469 7366 7920  e is to satisfy 
│ │ │ -00210e00: 7368 656c 6c63 6865 636b 2053 4332 3035  shellcheck SC205
│ │ │ -00210e10: 302e 0a20 2020 2020 2020 2066 735f 7479  0..        fs_ty
│ │ │ -00210e20: 7065 3d22 220a 2020 2020 2020 2020 6966  pe="".        if
│ │ │ -00210e30: 205b 2020 2224 6673 5f74 7970 6522 203d   [  "$fs_type" =
│ │ │ -00210e40: 3d20 2269 736f 3936 3630 2220 5d20 3b20  = "iso9660" ] ; 
│ │ │ -00210e50: 7468 656e 0a20 2020 2020 2020 2020 2020  then.           
│ │ │ -00210e60: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ -00210e70: 6f70 7473 3d24 2873 6564 2027 732f 626c  opts=$(sed 's/bl
│ │ │ -00210e80: 6f63 6b73 697a 653d 2f62 6c6f 636b 3d2f  ocksize=/block=/
│ │ │ -00210e90: 2720 266c 743b 266c 743b 266c 743b 2022  ' <<< "
│ │ │ -00210ea0: 2470 7265 7669 6f75 735f 6d6f 756e 745f  $previous_mount_
│ │ │ -00210eb0: 6f70 7473 2229 0a20 2020 2020 2020 2066  opts").        f
│ │ │ -00210ec0: 690a 2020 2020 2020 2020 6563 686f 2022  i.        echo "
│ │ │ -00210ed0: 202f 626f 6f74 2020 6465 6661 756c 7473   /boot  defaults
│ │ │ -00210ee0: 2c24 7b70 7265 7669 6f75 735f 6d6f 756e  ,${previous_moun
│ │ │ -00210ef0: 745f 6f70 7473 7d6e 6f65 7865 6320 3020  t_opts}noexec 0 
│ │ │ -00210f00: 3022 2026 6774 3b26 6774 3b20 2f65 7463  0" >> /etc
│ │ │ -00210f10: 2f66 7374 6162 0a20 2020 2023 2049 6620  /fstab.    # If 
│ │ │ -00210f20: 7468 6520 6d6f 756e 745f 6f70 7420 6f70  the mount_opt op
│ │ │ -00210f30: 7469 6f6e 2069 7320 6e6f 7420 616c 7265  tion is not alre
│ │ │ -00210f40: 6164 7920 696e 2074 6865 206d 6f75 6e74  ady in the mount
│ │ │ -00210f50: 2070 6f69 6e74 2773 202f 6574 632f 6673   point's /etc/fs
│ │ │ -00210f60: 7461 6220 656e 7472 792c 2061 6464 2069  tab entry, add i
│ │ │ -00210f70: 740a 2020 2020 656c 6966 2021 2067 7265  t.    elif ! gre
│ │ │ -00210f80: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -00210f90: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ -00210fa0: 7463 2f66 7374 6162 207c 2067 7265 7020  tc/fstab | grep 
│ │ │ -00210fb0: 2d71 2022 6e6f 6578 6563 223b 2074 6865  -q "noexec"; the
│ │ │ -00210fc0: 6e0a 2020 2020 2020 2020 7072 6576 696f  n.        previo
│ │ │ -00210fd0: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ -00210fe0: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ -00210ff0: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ -00211000: 202f 6574 632f 6673 7461 6220 7c20 6177   /etc/fstab | aw
│ │ │ -00211010: 6b20 277b 7072 696e 7420 2434 7d27 290a  k '{print $4}').
│ │ │ -00211020: 2020 2020 2020 2020 7365 6420 2d69 2022          sed -i "
│ │ │ -00211030: 737c 5c28 247b 6d6f 756e 745f 706f 696e  s|\(${mount_poin
│ │ │ -00211040: 745f 6d61 7463 685f 7265 6765 7870 7d2e  t_match_regexp}.
│ │ │ -00211050: 2a24 7b70 7265 7669 6f75 735f 6d6f 756e  *${previous_moun
│ │ │ -00211060: 745f 6f70 7473 7d5c 297c 5c31 2c6e 6f65  t_opts}\)|\1,noe
│ │ │ -00211070: 7865 637c 2220 2f65 7463 2f66 7374 6162  xec|" /etc/fstab
│ │ │ -00211080: 0a20 2020 2066 690a 0a0a 2020 2020 6966  .    fi...    if
│ │ │ -00211090: 206d 6b64 6972 202d 7020 222f 626f 6f74   mkdir -p "/boot
│ │ │ -002110a0: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ -002110b0: 6966 206d 6f75 6e74 706f 696e 7420 2d71  if mountpoint -q
│ │ │ -002110c0: 2022 2f62 6f6f 7422 3b20 7468 656e 0a20   "/boot"; then. 
│ │ │ -002110d0: 2020 2020 2020 2020 2020 206d 6f75 6e74             mount
│ │ │ -002110e0: 202d 6f20 7265 6d6f 756e 7420 2d2d 7461   -o remount --ta
│ │ │ -002110f0: 7267 6574 2022 2f62 6f6f 7422 0a20 2020  rget "/boot".   
│ │ │ -00211100: 2020 2020 2066 690a 2020 2020 6669 0a7d       fi.    fi.}
│ │ │ -00211110: 0a0a 7065 7266 6f72 6d5f 7265 6d65 6469  ..perform_remedi
│ │ │ -00211120: 6174 696f 6e0a 0a65 6c73 650a 2020 2020  ation..else.    
│ │ │ -00211130: 2667 743b 2661 6d70 3b32 2065 6368 6f20  >&2 echo 
│ │ │ -00211140: 2752 656d 6564 6961 7469 6f6e 2069 7320  'Remediation is 
│ │ │ -00211150: 6e6f 7420 6170 706c 6963 6162 6c65 2c20  not applicable, 
│ │ │ -00211160: 6e6f 7468 696e 6720 7761 7320 646f 6e65  nothing was done
│ │ │ -00211170: 270a 6669 0a3c 2f63 6f64 653e 3c2f 7072  '.fi.
high │ │ │ +0020f0d0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c < │ │ │ +0020f120: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
Reboo │ │ │ -00210700: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -00210710: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexity: │ │ │ +0020f090: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ +0020f0b0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:< │ │ │ +0020f0e0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ +0020f100: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:configure
- name: G
│ │ │ +0020f140: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ +0020f150: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ +0020f160: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ +0020f170: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ +0020f180: 733a 0a20 202d 2063 6f6e 6669 6775 7265  s:.  - configure
│ │ │ +0020f190: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +0020f1a0: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +0020f1b0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +0020f1c0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +0020f1d0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ +0020f1e0: 7074 696f 6e5f 626f 6f74 5f6e 6f65 7865  ption_boot_noexe
│ │ │ +0020f1f0: 630a 2020 2d20 6e6f 5f72 6562 6f6f 745f  c.  - no_reboot_
│ │ │ +0020f200: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ +0020f210: 2741 6464 206e 6f65 7865 6320 4f70 7469  'Add noexec Opti
│ │ │ +0020f220: 6f6e 2074 6f20 2f62 6f6f 743a 2043 6865  on to /boot: Che
│ │ │ +0020f230: 636b 2069 6e66 6f72 6d61 7469 6f6e 2061  ck information a
│ │ │ +0020f240: 7373 6f63 6961 7465 6420 746f 206d 6f75  ssociated to mou
│ │ │ +0020f250: 6e74 706f 696e 7427 0a20 2061 6e73 6962  ntpoint'.  ansib
│ │ │ +0020f260: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61  le.builtin.comma
│ │ │ +0020f270: 6e64 3a20 6669 6e64 6d6e 7420 2d2d 6673  nd: findmnt --fs
│ │ │ +0020f280: 7461 6220 272f 626f 6f74 270a 2020 7265  tab '/boot'.  re
│ │ │ +0020f290: 6769 7374 6572 3a20 6465 7669 6365 5f6e  gister: device_n
│ │ │ +0020f2a0: 616d 650a 2020 6661 696c 6564 5f77 6865  ame.  failed_whe
│ │ │ +0020f2b0: 6e3a 2064 6576 6963 655f 6e61 6d65 2e72  n: device_name.r
│ │ │ +0020f2c0: 6320 2667 743b 2031 0a20 2063 6861 6e67  c > 1.  chang
│ │ │ +0020f2d0: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ +0020f2e0: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ +0020f2f0: 7365 0a20 2077 6865 6e3a 2028 206e 6f74  se.  when: ( not
│ │ │ +0020f300: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ +0020f310: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +0020f320: 6b61 6765 7320 616e 6420 2272 706d 2d6f  kages and "rpm-o
│ │ │ +0020f330: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +0020f340: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +0020f350: 0a20 2020 2061 6e64 2022 626f 6f74 6322  .    and "bootc"
│ │ │ +0020f360: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +0020f370: 732e 7061 636b 6167 6573 2061 6e64 206e  s.packages and n
│ │ │ +0020f380: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ +0020f390: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ +0020f3a0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +0020f3b0: 0a20 2020 2061 6e64 2022 6f73 7472 6565  .    and "ostree
│ │ │ +0020f3c0: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ +0020f3d0: 635f 636d 646c 696e 6520 2920 616e 6420  c_cmdline ) and 
│ │ │ +0020f3e0: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ +0020f3f0: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ +0020f400: 6520 696e 0a20 2020 205b 2264 6f63 6b65  e in.    ["docke
│ │ │ +0020f410: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ +0020f420: 767a 222c 2022 706f 646d 616e 222c 2022  vz", "podman", "
│ │ │ +0020f430: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ +0020f440: 2020 7461 6773 3a0a 2020 2d20 636f 6e66    tags:.  - conf
│ │ │ +0020f450: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +0020f460: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ +0020f470: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ +0020f480: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ +0020f490: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ +0020f4a0: 756e 745f 6f70 7469 6f6e 5f62 6f6f 745f  unt_option_boot_
│ │ │ +0020f4b0: 6e6f 6578 6563 0a20 202d 206e 6f5f 7265  noexec.  - no_re
│ │ │ +0020f4c0: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ +0020f4d0: 616d 653a 2027 4164 6420 6e6f 6578 6563  ame: 'Add noexec
│ │ │ +0020f4e0: 204f 7074 696f 6e20 746f 202f 626f 6f74   Option to /boot
│ │ │ +0020f4f0: 3a20 4372 6561 7465 206d 6f75 6e74 5f69  : Create mount_i
│ │ │ +0020f500: 6e66 6f20 6469 6374 696f 6e61 7279 2076  nfo dictionary v
│ │ │ +0020f510: 6172 6961 626c 6527 0a20 2073 6574 5f66  ariable'.  set_f
│ │ │ +0020f520: 6163 743a 0a20 2020 206d 6f75 6e74 5f69  act:.    mount_i
│ │ │ +0020f530: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69  nfo: '{{ mount_i
│ │ │ +0020f540: 6e66 6f7c 6465 6661 756c 7428 7b7d 297c  nfo|default({})|
│ │ │ +0020f550: 636f 6d62 696e 6528 7b69 7465 6d2e 303a  combine({item.0:
│ │ │ +0020f560: 2069 7465 6d2e 317d 2920 7d7d 270a 2020   item.1}) }}'.  
│ │ │ +0020f570: 7769 7468 5f74 6f67 6574 6865 723a 0a20  with_together:. 
│ │ │ +0020f580: 202d 2027 7b7b 2064 6576 6963 655f 6e61   - '{{ device_na
│ │ │ +0020f590: 6d65 2e73 7464 6f75 745f 6c69 6e65 735b  me.stdout_lines[
│ │ │ +0020f5a0: 305d 2e73 706c 6974 2829 207c 206d 6170  0].split() | map
│ │ │ +0020f5b0: 2827 276c 6f77 6572 2727 2920 7c20 6c69  (''lower'') | li
│ │ │ +0020f5c0: 7374 207d 7d27 0a20 202d 2027 7b7b 2064  st }}'.  - '{{ d
│ │ │ +0020f5d0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +0020f5e0: 745f 6c69 6e65 735b 315d 2e73 706c 6974  t_lines[1].split
│ │ │ +0020f5f0: 2829 207c 206c 6973 7420 7d7d 270a 2020  () | list }}'.  
│ │ │ +0020f600: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ +0020f610: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ +0020f620: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +0020f630: 6167 6573 2061 6e64 2022 7270 6d2d 6f73  ages and "rpm-os
│ │ │ +0020f640: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +0020f650: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +0020f660: 2020 2020 616e 6420 2262 6f6f 7463 2220      and "bootc" 
│ │ │ +0020f670: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +0020f680: 2e70 6163 6b61 6765 7320 616e 6420 6e6f  .packages and no
│ │ │ +0020f690: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ +0020f6a0: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ +0020f6b0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +0020f6c0: 2020 2020 616e 6420 226f 7374 7265 6522      and "ostree"
│ │ │ +0020f6d0: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ +0020f6e0: 5f63 6d64 6c69 6e65 2029 2061 6e64 206e  _cmdline ) and n
│ │ │ +0020f6f0: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ +0020f700: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ +0020f710: 2069 6e0a 2020 2020 5b22 646f 636b 6572   in.    ["docker
│ │ │ +0020f720: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ +0020f730: 7a22 2c20 2270 6f64 6d61 6e22 2c20 2263  z", "podman", "c
│ │ │ +0020f740: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ +0020f750: 202d 2064 6576 6963 655f 6e61 6d65 2e73   - device_name.s
│ │ │ +0020f760: 7464 6f75 7420 6973 2064 6566 696e 6564  tdout is defined
│ │ │ +0020f770: 2061 6e64 2064 6576 6963 655f 6e61 6d65   and device_name
│ │ │ +0020f780: 2e73 7464 6f75 745f 6c69 6e65 7320 6973  .stdout_lines is
│ │ │ +0020f790: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ +0020f7a0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +0020f7b0: 207c 206c 656e 6774 6820 2667 743b 2030   | length > 0
│ │ │ +0020f7c0: 290a 2020 7461 6773 3a0a 2020 2d20 636f  ).  tags:.  - co
│ │ │ +0020f7d0: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +0020f7e0: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +0020f7f0: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +0020f800: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +0020f810: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +0020f820: 6d6f 756e 745f 6f70 7469 6f6e 5f62 6f6f  mount_option_boo
│ │ │ +0020f830: 745f 6e6f 6578 6563 0a20 202d 206e 6f5f  t_noexec.  - no_
│ │ │ +0020f840: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +0020f850: 206e 616d 653a 2027 4164 6420 6e6f 6578   name: 'Add noex
│ │ │ +0020f860: 6563 204f 7074 696f 6e20 746f 202f 626f  ec Option to /bo
│ │ │ +0020f870: 6f74 3a20 4966 202f 626f 6f74 206e 6f74  ot: If /boot not
│ │ │ +0020f880: 206d 6f75 6e74 6564 2c20 6372 6166 7420   mounted, craft 
│ │ │ +0020f890: 6d6f 756e 745f 696e 666f 206d 616e 7561  mount_info manua
│ │ │ +0020f8a0: 6c6c 7927 0a20 2073 6574 5f66 6163 743a  lly'.  set_fact:
│ │ │ +0020f8b0: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ +0020f8c0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c   '{{ mount_info|
│ │ │ +0020f8d0: 6465 6661 756c 7428 7b7d 297c 636f 6d62  default({})|comb
│ │ │ +0020f8e0: 696e 6528 7b69 7465 6d2e 303a 2069 7465  ine({item.0: ite
│ │ │ +0020f8f0: 6d2e 317d 2920 7d7d 270a 2020 7769 7468  m.1}) }}'.  with
│ │ │ +0020f900: 5f74 6f67 6574 6865 723a 0a20 202d 202d  _together:.  - -
│ │ │ +0020f910: 2074 6172 6765 740a 2020 2020 2d20 736f   target.    - so
│ │ │ +0020f920: 7572 6365 0a20 2020 202d 2066 7374 7970  urce.    - fstyp
│ │ │ +0020f930: 650a 2020 2020 2d20 6f70 7469 6f6e 730a  e.    - options.
│ │ │ +0020f940: 2020 2d20 2d20 2f62 6f6f 740a 2020 2020    - - /boot.    
│ │ │ +0020f950: 2d20 2727 0a20 2020 202d 2027 270a 2020  - ''.    - ''.  
│ │ │ +0020f960: 2020 2d20 6465 6661 756c 7473 0a20 2077    - defaults.  w
│ │ │ +0020f970: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +0020f980: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +0020f990: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +0020f9a0: 6765 7320 616e 6420 2272 706d 2d6f 7374  ges and "rpm-ost
│ │ │ +0020f9b0: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +0020f9c0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +0020f9d0: 2020 2061 6e64 2022 626f 6f74 6322 2069     and "bootc" i
│ │ │ +0020f9e0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +0020f9f0: 7061 636b 6167 6573 2061 6e64 206e 6f74  packages and not
│ │ │ +0020fa00: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ +0020fa10: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ +0020fa20: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +0020fa30: 2020 2061 6e64 2022 6f73 7472 6565 2220     and "ostree" 
│ │ │ +0020fa40: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ +0020fa50: 636d 646c 696e 6520 2920 616e 6420 6e6f  cmdline ) and no
│ │ │ +0020fa60: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ +0020fa70: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ +0020fa80: 696e 0a20 2020 205b 2264 6f63 6b65 7222  in.    ["docker"
│ │ │ +0020fa90: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ +0020faa0: 222c 2022 706f 646d 616e 222c 2022 636f  ", "podman", "co
│ │ │ +0020fab0: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ +0020fac0: 2d20 2822 2d2d 6673 7461 6222 207c 206c  - ("--fstab" | l
│ │ │ +0020fad0: 656e 6774 6820 3d3d 2030 290a 2020 2d20  ength == 0).  - 
│ │ │ +0020fae0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +0020faf0: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ +0020fb00: 6420 6465 7669 6365 5f6e 616d 652e 7374  d device_name.st
│ │ │ +0020fb10: 646f 7574 5f6c 696e 6573 2069 7320 6465  dout_lines is de
│ │ │ +0020fb20: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ +0020fb30: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ +0020fb40: 6c65 6e67 7468 203d 3d20 3029 0a20 2074  length == 0).  t
│ │ │ +0020fb50: 6167 733a 0a20 202d 2063 6f6e 6669 6775  ags:.  - configu
│ │ │ +0020fb60: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +0020fb70: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +0020fb80: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +0020fb90: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +0020fba0: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +0020fbb0: 5f6f 7074 696f 6e5f 626f 6f74 5f6e 6f65  _option_boot_noe
│ │ │ +0020fbc0: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f  xec.  - no_reboo
│ │ │ +0020fbd0: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ +0020fbe0: 3a20 2741 6464 206e 6f65 7865 6320 4f70  : 'Add noexec Op
│ │ │ +0020fbf0: 7469 6f6e 2074 6f20 2f62 6f6f 743a 204d  tion to /boot: M
│ │ │ +0020fc00: 616b 6520 7375 7265 206e 6f65 7865 6320  ake sure noexec 
│ │ │ +0020fc10: 6f70 7469 6f6e 2069 7320 7061 7274 206f  option is part o
│ │ │ +0020fc20: 6620 7468 6520 746f 202f 626f 6f74 0a20  f the to /boot. 
│ │ │ +0020fc30: 2020 206f 7074 696f 6e73 270a 2020 7365     options'.  se
│ │ │ +0020fc40: 745f 6661 6374 3a0a 2020 2020 6d6f 756e  t_fact:.    moun
│ │ │ +0020fc50: 745f 696e 666f 3a20 277b 7b20 6d6f 756e  t_info: '{{ moun
│ │ │ +0020fc60: 745f 696e 666f 207c 2063 6f6d 6269 6e65  t_info | combine
│ │ │ +0020fc70: 2820 7b27 276f 7074 696f 6e73 2727 3a27  ( {''options'':'
│ │ │ +0020fc80: 2727 277e 286d 6f75 6e74 5f69 6e66 6f2e  '''~(mount_info.
│ │ │ +0020fc90: 6f70 7469 6f6e 7320 7c0a 2020 2020 2020  options |.      
│ │ │ +0020fca0: 6465 6661 756c 7428 2727 2727 2929 7e28  default(''''))~(
│ │ │ +0020fcb0: 2727 2c27 2720 6966 2028 6d6f 756e 745f  '','' if (mount_
│ │ │ +0020fcc0: 696e 666f 2e6f 7074 696f 6e73 207c 2064  info.options | d
│ │ │ +0020fcd0: 6566 6175 6c74 2827 2727 2729 2920 656c  efault('''')) el
│ │ │ +0020fce0: 7365 2027 2727 2729 7e27 276e 6f65 7865  se '''')~''noexe
│ │ │ +0020fcf0: 6327 270a 2020 2020 2020 7d29 207d 7d27  c''.      }) }}'
│ │ │ +0020fd00: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ +0020fd10: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ +0020fd20: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +0020fd30: 6163 6b61 6765 7320 616e 6420 2272 706d  ackages and "rpm
│ │ │ +0020fd40: 2d6f 7374 7265 6522 2069 6e20 616e 7369  -ostree" in ansi
│ │ │ +0020fd50: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +0020fd60: 6573 0a20 2020 2061 6e64 2022 626f 6f74  es.    and "boot
│ │ │ +0020fd70: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ +0020fd80: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +0020fd90: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ +0020fda0: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ +0020fdb0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +0020fdc0: 6573 0a20 2020 2061 6e64 2022 6f73 7472  es.    and "ostr
│ │ │ +0020fdd0: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ +0020fde0: 726f 635f 636d 646c 696e 6520 2920 616e  roc_cmdline ) an
│ │ │ +0020fdf0: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ +0020fe00: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ +0020fe10: 7970 6520 696e 0a20 2020 205b 2264 6f63  ype in.    ["doc
│ │ │ +0020fe20: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ +0020fe30: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ +0020fe40: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ +0020fe50: 290a 2020 2d20 6d6f 756e 745f 696e 666f  ).  - mount_info
│ │ │ +0020fe60: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ +0020fe70: 226e 6f65 7865 6322 206e 6f74 2069 6e20  "noexec" not in 
│ │ │ +0020fe80: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469  (mount_info.opti
│ │ │ +0020fe90: 6f6e 7320 7c20 6465 6661 756c 7428 2727  ons | default(''
│ │ │ +0020fea0: 2929 0a20 2074 6167 733a 0a20 202d 2063  )).  tags:.  - c
│ │ │ +0020feb0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +0020fec0: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +0020fed0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +0020fee0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +0020fef0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +0020ff00: 206d 6f75 6e74 5f6f 7074 696f 6e5f 626f   mount_option_bo
│ │ │ +0020ff10: 6f74 5f6e 6f65 7865 630a 2020 2d20 6e6f  ot_noexec.  - no
│ │ │ +0020ff20: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +0020ff30: 2d20 6e61 6d65 3a20 2741 6464 206e 6f65  - name: 'Add noe
│ │ │ +0020ff40: 7865 6320 4f70 7469 6f6e 2074 6f20 2f62  xec Option to /b
│ │ │ +0020ff50: 6f6f 743a 2045 6e73 7572 6520 2f62 6f6f  oot: Ensure /boo
│ │ │ +0020ff60: 7420 6973 206d 6f75 6e74 6564 2077 6974  t is mounted wit
│ │ │ +0020ff70: 6820 6e6f 6578 6563 206f 7074 696f 6e27  h noexec option'
│ │ │ +0020ff80: 0a20 2061 6e73 6962 6c65 2e70 6f73 6978  .  ansible.posix
│ │ │ +0020ff90: 2e6d 6f75 6e74 3a0a 2020 2020 7061 7468  .mount:.    path
│ │ │ +0020ffa0: 3a20 2f62 6f6f 740a 2020 2020 7372 633a  : /boot.    src:
│ │ │ +0020ffb0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ +0020ffc0: 736f 7572 6365 207c 2064 6566 6175 6c74  source | default
│ │ │ +0020ffd0: 2827 2727 2729 207d 7d27 0a20 2020 206f  ('''') }}'.    o
│ │ │ +0020ffe0: 7074 733a 2027 7b7b 206d 6f75 6e74 5f69  pts: '{{ mount_i
│ │ │ +0020fff0: 6e66 6f2e 6f70 7469 6f6e 7320 7c20 6465  nfo.options | de
│ │ │ +00210000: 6661 756c 7428 2727 2727 2920 7d7d 270a  fault('''') }}'.
│ │ │ +00210010: 2020 2020 7374 6174 653a 206d 6f75 6e74      state: mount
│ │ │ +00210020: 6564 0a20 2020 2066 7374 7970 653a 2027  ed.    fstype: '
│ │ │ +00210030: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 6673  {{ mount_info.fs
│ │ │ +00210040: 7479 7065 207c 2064 6566 6175 6c74 2827  type | default('
│ │ │ +00210050: 2727 2729 207d 7d27 0a20 2072 6567 6973  ''') }}'.  regis
│ │ │ +00210060: 7465 723a 206d 6f75 6e74 5f72 6573 756c  ter: mount_resul
│ │ │ +00210070: 740a 2020 6661 696c 6564 5f77 6865 6e3a  t.  failed_when:
│ │ │ +00210080: 0a20 202d 206d 6f75 6e74 5f72 6573 756c  .  - mount_resul
│ │ │ +00210090: 7420 6973 2066 6169 6c65 640a 2020 2d20  t is failed.  - 
│ │ │ +002100a0: 2727 2774 6172 6765 7420 6973 2062 7573  '''target is bus
│ │ │ +002100b0: 7927 2720 6e6f 7420 696e 2028 6d6f 756e  y'' not in (moun
│ │ │ +002100c0: 745f 7265 7375 6c74 2e6d 7367 207c 2064  t_result.msg | d
│ │ │ +002100d0: 6566 6175 6c74 2827 2727 2729 2927 0a20  efault(''''))'. 
│ │ │ +002100e0: 202d 2027 2727 616c 7265 6164 7920 6d6f   - '''already mo
│ │ │ +002100f0: 756e 7465 6427 2720 6e6f 7420 696e 2028  unted'' not in (
│ │ │ +00210100: 6d6f 756e 745f 7265 7375 6c74 2e6d 7367  mount_result.msg
│ │ │ +00210110: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ +00210120: 2927 0a20 2077 6865 6e3a 0a20 202d 2028  )'.  when:.  - (
│ │ │ +00210130: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +00210140: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +00210150: 2e70 6163 6b61 6765 7320 616e 6420 2272  .packages and "r
│ │ │ +00210160: 706d 2d6f 7374 7265 6522 2069 6e20 616e  pm-ostree" in an
│ │ │ +00210170: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +00210180: 6167 6573 0a20 2020 2061 6e64 2022 626f  ages.    and "bo
│ │ │ +00210190: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ +002101a0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +002101b0: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ +002101c0: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ +002101d0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +002101e0: 6167 6573 0a20 2020 2061 6e64 2022 6f73  ages.    and "os
│ │ │ +002101f0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +00210200: 5f70 726f 635f 636d 646c 696e 6520 2920  _proc_cmdline ) 
│ │ │ +00210210: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ +00210220: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ +00210230: 5f74 7970 6520 696e 0a20 2020 205b 2264  _type in.    ["d
│ │ │ +00210240: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ +00210250: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ +00210260: 222c 2022 636f 6e74 6169 6e65 7222 5d20  ", "container"] 
│ │ │ +00210270: 2920 290a 2020 2d20 6d6f 756e 745f 696e  ) ).  - mount_in
│ │ │ +00210280: 666f 2069 7320 6465 6669 6e65 640a 2020  fo is defined.  
│ │ │ +00210290: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ +002102a0: 7464 6f75 7420 6973 2064 6566 696e 6564  tdout is defined
│ │ │ +002102b0: 2061 6e64 2028 6465 7669 6365 5f6e 616d   and (device_nam
│ │ │ +002102c0: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ +002102d0: 6820 2667 743b 2030 2929 206f 7220 2822  h > 0)) or ("
│ │ │ +002102e0: 2d2d 6673 7461 6222 0a20 2020 207c 206c  --fstab".    | l
│ │ │ +002102f0: 656e 6774 6820 3d3d 2030 290a 2020 7461  ength == 0).  ta
│ │ │ +00210300: 6773 3a0a 2020 2d20 636f 6e66 6967 7572  gs:.  - configur
│ │ │ +00210310: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ +00210320: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ +00210330: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +00210340: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +00210350: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ +00210360: 6f70 7469 6f6e 5f62 6f6f 745f 6e6f 6578  option_boot_noex
│ │ │ +00210370: 6563 0a20 202d 206e 6f5f 7265 626f 6f74  ec.  - no_reboot
│ │ │ +00210380: 5f6e 6565 6465 640a 3c2f 636f 6465 3e3c  _needed.<
│ │ │ +00210390: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ +00210440: 696f 6e20 5368 656c 6c20 7363 7269 7074 ion Shell script │ │ │ +00210450: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Reboot:false │ │ │ +002104f0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 # Remedi │ │ │ +00210510: 6174 696f 6e20 6973 2061 7070 6c69 6361 ation is applica │ │ │ +00210520: 626c 6520 6f6e 6c79 2069 6e20 6365 7274 ble only in cert │ │ │ +00210530: 6169 6e20 706c 6174 666f 726d 730a 6966 ain platforms.if │ │ │ +00210540: 2028 2021 2028 207b 2072 706d 202d 2d71 ( ! ( { rpm --q │ │ │ +00210550: 7569 6574 202d 7120 6b65 726e 656c 203b uiet -q kernel ; │ │ │ +00210560: 7d20 2661 6d70 3b26 616d 703b 207b 2072 } && { r │ │ │ +00210570: 706d 202d 2d71 7569 6574 202d 7120 7270 pm --quiet -q rp │ │ │ +00210580: 6d2d 6f73 7472 6565 203b 7d20 2661 6d70 m-ostree ;} & │ │ │ +00210590: 3b26 616d 703b 207b 2072 706d 202d 2d71 ;& { rpm --q │ │ │ +002105a0: 7569 6574 202d 7120 626f 6f74 6320 3b7d uiet -q bootc ;} │ │ │ +002105b0: 2026 616d 703b 2661 6d70 3b20 7b20 2120 && { ! │ │ │ +002105c0: 7270 6d20 2d2d 7175 6965 7420 2d71 206f rpm --quiet -q o │ │ │ +002105d0: 7065 6e73 6869 6674 2d6b 7562 656c 6574 penshift-kubelet │ │ │ +002105e0: 203b 7d20 2661 6d70 3b26 616d 703b 2028 ;} && ( │ │ │ +002105f0: 5b20 2d66 202f 7275 6e2f 6f73 7472 6565 [ -f /run/ostree │ │ │ +00210600: 2d62 6f6f 7465 6420 5d20 7c7c 205b 202d -booted ] || [ - │ │ │ +00210610: 4c20 2f6f 7374 7265 6520 5d29 2029 2026 L /ostree ]) ) & │ │ │ +00210620: 616d 703b 2661 6d70 3b20 2120 2820 5b20 amp;& ! ( [ │ │ │ +00210630: 2d66 202f 2e64 6f63 6b65 7265 6e76 205d -f /.dockerenv ] │ │ │ +00210640: 207c 7c20 5b20 2d66 202f 7275 6e2f 2e63 || [ -f /run/.c │ │ │ +00210650: 6f6e 7461 696e 6572 656e 7620 5d20 2920 ontainerenv ] ) │ │ │ +00210660: 293b 2074 6865 6e0a 0a66 756e 6374 696f ); then..functio │ │ │ +00210670: 6e20 7065 7266 6f72 6d5f 7265 6d65 6469 n perform_remedi │ │ │ +00210680: 6174 696f 6e20 7b0a 0a20 2020 200a 2020 ation {.. . │ │ │ +00210690: 2020 2020 2020 2320 7468 6520 6d6f 756e # the moun │ │ │ +002106a0: 7420 706f 696e 7420 2f62 6f6f 7420 6861 t point /boot ha │ │ │ +002106b0: 7320 746f 2062 6520 6465 6669 6e65 6420 s to be defined │ │ │ +002106c0: 696e 202f 6574 632f 6673 7461 620a 2020 in /etc/fstab. │ │ │ +002106d0: 2020 2020 2020 2320 6265 666f 7265 2074 # before t │ │ │ +002106e0: 6869 7320 7265 6d65 6469 6174 696f 6e20 his remediation │ │ │ +002106f0: 6361 6e20 6265 2065 7865 6375 7465 642e can be executed. │ │ │ +00210700: 2049 6e20 6361 7365 2069 7420 6973 206e In case it is n │ │ │ +00210710: 6f74 2064 6566 696e 6564 2c20 7468 650a ot defined, the. │ │ │ +00210720: 2020 2020 2020 2020 2320 7265 6d65 6469 # remedi │ │ │ +00210730: 6174 696f 6e20 6162 6f72 7473 2061 6e64 ation aborts and │ │ │ +00210740: 206e 6f20 6368 616e 6765 7320 7265 6761 no changes rega │ │ │ +00210750: 7264 696e 6720 7468 6520 6d6f 756e 7420 rding the mount │ │ │ +00210760: 706f 696e 7420 6172 6520 646f 6e65 2e0a point are done.. │ │ │ +00210770: 2020 2020 2020 2020 6d6f 756e 745f 706f mount_po │ │ │ +00210780: 696e 745f 6d61 7463 685f 7265 6765 7870 int_match_regexp │ │ │ +00210790: 3d22 2428 7072 696e 7466 2022 5e5b 5b3a ="$(printf "^[[: │ │ │ +002107a0: 7370 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b space:]]*[^#].*[ │ │ │ +002107b0: 5b3a 7370 6163 653a 5d5d 2573 5b5b 3a73 [:space:]]%s[[:s │ │ │ +002107c0: 7061 6365 3a5d 5d22 2022 2f62 6f6f 7422 pace:]]" "/boot" │ │ │ +002107d0: 2922 0a0a 2020 2020 6772 6570 2022 246d )".. grep "$m │ │ │ +002107e0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368 ount_point_match │ │ │ +002107f0: 5f72 6567 6578 7022 202d 7120 2f65 7463 _regexp" -q /etc │ │ │ +00210800: 2f66 7374 6162 205c 0a20 2020 2020 2020 /fstab \. │ │ │ +00210810: 207c 7c20 7b20 6563 686f 2022 5468 6520 || { echo "The │ │ │ +00210820: 6d6f 756e 7420 706f 696e 7420 272f 626f mount point '/bo │ │ │ +00210830: 6f74 2720 6973 206e 6f74 2065 7665 6e20 ot' is not even │ │ │ +00210840: 696e 202f 6574 632f 6673 7461 622c 2073 in /etc/fstab, s │ │ │ +00210850: 6f20 7765 2063 616e 2774 2073 6574 2075 o we can't set u │ │ │ +00210860: 7020 6d6f 756e 7420 6f70 7469 6f6e 7322 p mount options" │ │ │ +00210870: 2026 6774 3b26 616d 703b 323b 0a20 2020 >&2;. │ │ │ +00210880: 2020 2020 2020 2020 2020 2020 2065 6368 ech │ │ │ +00210890: 6f20 224e 6f74 2072 656d 6564 6961 7469 o "Not remediati │ │ │ +002108a0: 6e67 2c20 6265 6361 7573 6520 7468 6572 ng, because ther │ │ │ +002108b0: 6520 6973 206e 6f20 7265 636f 7264 206f e is no record o │ │ │ +002108c0: 6620 2f62 6f6f 7420 696e 202f 6574 632f f /boot in /etc/ │ │ │ +002108d0: 6673 7461 6222 2026 6774 3b26 616d 703b fstab" >& │ │ │ +002108e0: 323b 2072 6574 7572 6e20 313b 207d 0a20 2; return 1; }. │ │ │ +002108f0: 2020 200a 0a0a 2020 2020 6d6f 756e 745f ... mount_ │ │ │ +00210900: 706f 696e 745f 6d61 7463 685f 7265 6765 point_match_rege │ │ │ +00210910: 7870 3d22 2428 7072 696e 7466 2022 5e5b xp="$(printf "^[ │ │ │ +00210920: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e [:space:]]*[^#]. │ │ │ +00210930: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b *[[:space:]]%s[[ │ │ │ +00210940: 3a73 7061 6365 3a5d 5d22 202f 626f 6f74 :space:]]" /boot │ │ │ +00210950: 2922 0a0a 2020 2020 2320 4966 2074 6865 )".. # If the │ │ │ +00210960: 206d 6f75 6e74 2070 6f69 6e74 2069 7320 mount point is │ │ │ +00210970: 6e6f 7420 696e 202f 6574 632f 6673 7461 not in /etc/fsta │ │ │ +00210980: 622c 2067 6574 2070 7265 7669 6f75 7320 b, get previous │ │ │ +00210990: 6d6f 756e 7420 6f70 7469 6f6e 7320 6672 mount options fr │ │ │ +002109a0: 6f6d 202f 6574 632f 6d74 6162 0a20 2020 om /etc/mtab. │ │ │ +002109b0: 2069 6620 2120 6772 6570 202d 7120 2224 if ! grep -q "$ │ │ │ +002109c0: 6d6f 756e 745f 706f 696e 745f 6d61 7463 mount_point_matc │ │ │ +002109d0: 685f 7265 6765 7870 2220 2f65 7463 2f66 h_regexp" /etc/f │ │ │ +002109e0: 7374 6162 3b20 7468 656e 0a20 2020 2020 stab; then. │ │ │ +002109f0: 2020 2023 2072 756e 7469 6d65 206f 7074 # runtime opt │ │ │ +00210a00: 7320 7769 7468 6f75 7420 736f 6d65 2061 s without some a │ │ │ +00210a10: 7574 6f6d 6174 6963 206b 6572 6e65 6c2f utomatic kernel/ │ │ │ +00210a20: 7573 6572 7370 6163 652d 6164 6465 6420 userspace-added │ │ │ +00210a30: 6465 6661 756c 7473 0a20 2020 2020 2020 defaults. │ │ │ +00210a40: 2070 7265 7669 6f75 735f 6d6f 756e 745f previous_mount_ │ │ │ +00210a50: 6f70 7473 3d24 2867 7265 7020 2224 6d6f opts=$(grep "$mo │ │ │ +00210a60: 756e 745f 706f 696e 745f 6d61 7463 685f unt_point_match_ │ │ │ +00210a70: 7265 6765 7870 2220 2f65 7463 2f6d 7461 regexp" /etc/mta │ │ │ +00210a80: 6220 7c20 6865 6164 202d 3120 7c20 2061 b | head -1 | a │ │ │ +00210a90: 776b 2027 7b70 7269 6e74 2024 347d 2720 wk '{print $4}' │ │ │ +00210aa0: 5c0a 2020 2020 2020 2020 2020 2020 2020 \. │ │ │ +00210ab0: 2020 2020 2020 7c20 7365 6420 2d45 2022 | sed -E " │ │ │ +00210ac0: 732f 2872 777c 6465 6661 756c 7473 7c73 s/(rw|defaults|s │ │ │ +00210ad0: 6563 6c61 6265 6c7c 6e6f 6578 6563 2928 eclabel|noexec)( │ │ │ +00210ae0: 2c7c 2429 2f2f 673b 732f 2c24 2f2f 2229 ,|$)//g;s/,$//") │ │ │ +00210af0: 0a20 2020 2020 2020 205b 2022 2470 7265 . [ "$pre │ │ │ +00210b00: 7669 6f75 735f 6d6f 756e 745f 6f70 7473 vious_mount_opts │ │ │ +00210b10: 2220 5d20 2661 6d70 3b26 616d 703b 2070 " ] && p │ │ │ +00210b20: 7265 7669 6f75 735f 6d6f 756e 745f 6f70 revious_mount_op │ │ │ +00210b30: 7473 2b3d 222c 220a 2020 2020 2020 2020 ts+=",". │ │ │ +00210b40: 2320 496e 2069 736f 3936 3630 2066 696c # In iso9660 fil │ │ │ +00210b50: 6573 7973 7465 6d73 206d 7461 6220 636f esystems mtab co │ │ │ +00210b60: 756c 6420 6465 7363 7269 6265 2061 2022 uld describe a " │ │ │ +00210b70: 626c 6f63 6b73 697a 6522 2076 616c 7565 blocksize" value │ │ │ +00210b80: 2c20 7468 6973 2073 686f 756c 6420 6265 , this should be │ │ │ +00210b90: 2072 6566 6c65 6374 6564 2069 6e0a 2020 reflected in. │ │ │ +00210ba0: 2020 2020 2020 2320 6673 7461 6220 6173 # fstab as │ │ │ +00210bb0: 2022 626c 6f63 6b22 2e20 2054 6865 206e "block". The n │ │ │ +00210bc0: 6578 7420 7661 7269 6162 6c65 2069 7320 ext variable is │ │ │ +00210bd0: 746f 2073 6174 6973 6679 2073 6865 6c6c to satisfy shell │ │ │ +00210be0: 6368 6563 6b20 5343 3230 3530 2e0a 2020 check SC2050.. │ │ │ +00210bf0: 2020 2020 2020 6673 5f74 7970 653d 2222 fs_type="" │ │ │ +00210c00: 0a20 2020 2020 2020 2069 6620 5b20 2022 . if [ " │ │ │ +00210c10: 2466 735f 7479 7065 2220 3d3d 2022 6973 $fs_type" == "is │ │ │ +00210c20: 6f39 3636 3022 205d 203b 2074 6865 6e0a o9660" ] ; then. │ │ │ +00210c30: 2020 2020 2020 2020 2020 2020 7072 6576 prev │ │ │ +00210c40: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d ious_mount_opts= │ │ │ +00210c50: 2428 7365 6420 2773 2f62 6c6f 636b 7369 $(sed 's/blocksi │ │ │ +00210c60: 7a65 3d2f 626c 6f63 6b3d 2f27 2026 6c74 ze=/block=/' < │ │ │ +00210c70: 3b26 6c74 3b26 6c74 3b20 2224 7072 6576 ;<< "$prev │ │ │ +00210c80: 696f 7573 5f6d 6f75 6e74 5f6f 7074 7322 ious_mount_opts" │ │ │ +00210c90: 290a 2020 2020 2020 2020 6669 0a20 2020 ). fi. │ │ │ +00210ca0: 2020 2020 2065 6368 6f20 2220 2f62 6f6f echo " /boo │ │ │ +00210cb0: 7420 2064 6566 6175 6c74 732c 247b 7072 t defaults,${pr │ │ │ +00210cc0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074 evious_mount_opt │ │ │ +00210cd0: 737d 6e6f 6578 6563 2030 2030 2220 2667 s}noexec 0 0" &g │ │ │ +00210ce0: 743b 2667 743b 202f 6574 632f 6673 7461 t;> /etc/fsta │ │ │ +00210cf0: 620a 2020 2020 2320 4966 2074 6865 206d b. # If the m │ │ │ +00210d00: 6f75 6e74 5f6f 7074 206f 7074 696f 6e20 ount_opt option │ │ │ +00210d10: 6973 206e 6f74 2061 6c72 6561 6479 2069 is not already i │ │ │ +00210d20: 6e20 7468 6520 6d6f 756e 7420 706f 696e n the mount poin │ │ │ +00210d30: 7427 7320 2f65 7463 2f66 7374 6162 2065 t's /etc/fstab e │ │ │ +00210d40: 6e74 7279 2c20 6164 6420 6974 0a20 2020 ntry, add it. │ │ │ +00210d50: 2065 6c69 6620 2120 6772 6570 2022 246d elif ! grep "$m │ │ │ +00210d60: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368 ount_point_match │ │ │ +00210d70: 5f72 6567 6578 7022 202f 6574 632f 6673 _regexp" /etc/fs │ │ │ +00210d80: 7461 6220 7c20 6772 6570 202d 7120 226e tab | grep -q "n │ │ │ +00210d90: 6f65 7865 6322 3b20 7468 656e 0a20 2020 oexec"; then. │ │ │ +00210da0: 2020 2020 2070 7265 7669 6f75 735f 6d6f previous_mo │ │ │ +00210db0: 756e 745f 6f70 7473 3d24 2867 7265 7020 unt_opts=$(grep │ │ │ +00210dc0: 2224 6d6f 756e 745f 706f 696e 745f 6d61 "$mount_point_ma │ │ │ +00210dd0: 7463 685f 7265 6765 7870 2220 2f65 7463 tch_regexp" /etc │ │ │ +00210de0: 2f66 7374 6162 207c 2061 776b 2027 7b70 /fstab | awk '{p │ │ │ +00210df0: 7269 6e74 2024 347d 2729 0a20 2020 2020 rint $4}'). │ │ │ +00210e00: 2020 2073 6564 202d 6920 2273 7c5c 2824 sed -i "s|\($ │ │ │ +00210e10: 7b6d 6f75 6e74 5f70 6f69 6e74 5f6d 6174 {mount_point_mat │ │ │ +00210e20: 6368 5f72 6567 6578 707d 2e2a 247b 7072 ch_regexp}.*${pr │ │ │ +00210e30: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074 evious_mount_opt │ │ │ +00210e40: 737d 5c29 7c5c 312c 6e6f 6578 6563 7c22 s}\)|\1,noexec|" │ │ │ +00210e50: 202f 6574 632f 6673 7461 620a 2020 2020 /etc/fstab. │ │ │ +00210e60: 6669 0a0a 0a20 2020 2069 6620 6d6b 6469 fi... if mkdi │ │ │ +00210e70: 7220 2d70 2022 2f62 6f6f 7422 3b20 7468 r -p "/boot"; th │ │ │ +00210e80: 656e 0a20 2020 2020 2020 2069 6620 6d6f en. if mo │ │ │ +00210e90: 756e 7470 6f69 6e74 202d 7120 222f 626f untpoint -q "/bo │ │ │ +00210ea0: 6f74 223b 2074 6865 6e0a 2020 2020 2020 ot"; then. │ │ │ +00210eb0: 2020 2020 2020 6d6f 756e 7420 2d6f 2072 mount -o r │ │ │ +00210ec0: 656d 6f75 6e74 202d 2d74 6172 6765 7420 emount --target │ │ │ +00210ed0: 222f 626f 6f74 220a 2020 2020 2020 2020 "/boot". │ │ │ +00210ee0: 6669 0a20 2020 2066 690a 7d0a 0a70 6572 fi. fi.}..per │ │ │ +00210ef0: 666f 726d 5f72 656d 6564 6961 7469 6f6e form_remediation │ │ │ +00210f00: 0a0a 656c 7365 0a20 2020 2026 6774 3b26 ..else. >& │ │ │ +00210f10: 616d 703b 3220 6563 686f 2027 5265 6d65 amp;2 echo 'Reme │ │ │ +00210f20: 6469 6174 696f 6e20 6973 206e 6f74 2061 diation is not a │ │ │ +00210f30: 7070 6c69 6361 626c 652c 206e 6f74 6869 pplicable, nothi │ │ │ +00210f40: 6e67 2077 6173 2064 6f6e 6527 0a66 690a ng was done'.fi. │ │ │ +00210f50: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64 │ │ │ +00211000: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ +00211010: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ +00211020: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity:< │ │ │ +00211110: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
.part /boot --m
│ │ │ +00211160: 6f75 6e74 6f70 7469 6f6e 733d 226e 6f65  ountoptions="noe
│ │ │ +00211170: 7865 6322 0a3c 2f63 6f64 653e 3c2f 7072  xec".
│ │ │ 002111a0: 3c2f 7461 626c 653e 3c2f 7464 3e3c 2f74
low
Disru │ │ │ +002110d0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e68 ption:h │ │ │ +002110e0: 6967 683c 2f74 643e 3c2f 7472 3e3c 7472 igh
Reboot:false
Stra │ │ │ +00211120: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +00211130: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Remediation An │ │ │ -00211d60: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ -00211d70: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -00211df0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -00211e10: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ -00211e40: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ -00211e90: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -00211e00: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -00211e20: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ -00211e70: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -00211e80: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable
.part /boot -
│ │ │ -00211eb0: 2d6d 6f75 6e74 6f70 7469 6f6e 733d 226e  -mountoptions="n
│ │ │ -00211ec0: 6f73 7569 6422 0a3c 2f63 6f64 653e 3c2f  osuid".
Remediati │ │ │ -00211f80: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070 on Ansible snipp │ │ │ -00211f90: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -00212010: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -00212020: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -00212030: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:highReboo │ │ │ -00212070: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -00212080: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -002120a0: 3c74 643e 636f 6e66 6967 7572 653c 2f74 configure< │ │ │ -002120c0: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -002120d0: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -002120e0: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -002120f0: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -00212100: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -00212110: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ -00212120: 3030 2d35 332d 4143 2d36 0a20 202d 204e 00-53-AC-6. - N │ │ │ -00212130: 4953 542d 3830 302d 3533 2d41 432d 3628 IST-800-53-AC-6( │ │ │ -00212140: 3129 0a20 202d 204e 4953 542d 3830 302d 1). - NIST-800- │ │ │ -00212150: 3533 2d43 4d2d 3628 6129 0a20 202d 204e 53-CM-6(a). - N │ │ │ -00212160: 4953 542d 3830 302d 3533 2d43 4d2d 3728 IST-800-53-CM-7( │ │ │ -00212170: 6129 0a20 202d 204e 4953 542d 3830 302d a). - NIST-800- │ │ │ -00212180: 3533 2d43 4d2d 3728 6229 0a20 202d 204e 53-CM-7(b). - N │ │ │ -00212190: 4953 542d 3830 302d 3533 2d4d 502d 370a IST-800-53-MP-7. │ │ │ -002121a0: 2020 2d20 636f 6e66 6967 7572 655f 7374 - configure_st │ │ │ -002121b0: 7261 7465 6779 0a20 202d 2068 6967 685f rategy. - high_ │ │ │ -002121c0: 6469 7372 7570 7469 6f6e 0a20 202d 206c disruption. - l │ │ │ -002121d0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ -002121e0: 2d20 6d65 6469 756d 5f73 6576 6572 6974 - medium_severit │ │ │ -002121f0: 790a 2020 2d20 6d6f 756e 745f 6f70 7469 y. - mount_opti │ │ │ -00212200: 6f6e 5f62 6f6f 745f 6e6f 7375 6964 0a20 on_boot_nosuid. │ │ │ -00212210: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ -00212220: 6465 640a 0a2d 206e 616d 653a 2027 4164 ded..- name: 'Ad │ │ │ -00212230: 6420 6e6f 7375 6964 204f 7074 696f 6e20 d nosuid Option │ │ │ -00212240: 746f 202f 626f 6f74 3a20 4368 6563 6b20 to /boot: Check │ │ │ -00212250: 696e 666f 726d 6174 696f 6e20 6173 736f information asso │ │ │ -00212260: 6369 6174 6564 2074 6f20 6d6f 756e 7470 ciated to mountp │ │ │ -00212270: 6f69 6e74 270a 2020 616e 7369 626c 652e oint'. ansible. │ │ │ -00212280: 6275 696c 7469 6e2e 636f 6d6d 616e 643a builtin.command: │ │ │ -00212290: 2066 696e 646d 6e74 202d 2d66 7374 6162 findmnt --fstab │ │ │ -002122a0: 2027 2f62 6f6f 7427 0a20 2072 6567 6973 '/boot'. regis │ │ │ -002122b0: 7465 723a 2064 6576 6963 655f 6e61 6d65 ter: device_name │ │ │ -002122c0: 0a20 2066 6169 6c65 645f 7768 656e 3a20 . failed_when: │ │ │ -002122d0: 6465 7669 6365 5f6e 616d 652e 7263 2026 device_name.rc & │ │ │ -002122e0: 6774 3b20 310a 2020 6368 616e 6765 645f gt; 1. changed_ │ │ │ -002122f0: 7768 656e 3a20 6661 6c73 650a 2020 6368 when: false. ch │ │ │ -00212300: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a eck_mode: false. │ │ │ -00212310: 2020 7768 656e 3a20 2820 6e6f 7420 2820 when: ( not ( │ │ │ -00212320: 226b 6572 6e65 6c22 2069 6e20 616e 7369 "kernel" in ansi │ │ │ -00212330: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -00212340: 6573 2061 6e64 2022 7270 6d2d 6f73 7472 es and "rpm-ostr │ │ │ -00212350: 6565 2220 696e 2061 6e73 6962 6c65 5f66 ee" in ansible_f │ │ │ -00212360: 6163 7473 2e70 6163 6b61 6765 730a 2020 acts.packages. │ │ │ -00212370: 2020 616e 6420 2262 6f6f 7463 2220 696e and "bootc" in │ │ │ -00212380: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -00212390: 6163 6b61 6765 7320 616e 6420 6e6f 7420 ackages and not │ │ │ -002123a0: 226f 7065 6e73 6869 6674 2d6b 7562 656c "openshift-kubel │ │ │ -002123b0: 6574 2220 696e 2061 6e73 6962 6c65 5f66 et" in ansible_f │ │ │ -002123c0: 6163 7473 2e70 6163 6b61 6765 730a 2020 acts.packages. │ │ │ -002123d0: 2020 616e 6420 226f 7374 7265 6522 2069 and "ostree" i │ │ │ -002123e0: 6e20 616e 7369 626c 655f 7072 6f63 5f63 n ansible_proc_c │ │ │ -002123f0: 6d64 6c69 6e65 2029 2061 6e64 206e 6f74 mdline ) and not │ │ │ -00212400: 2028 2061 6e73 6962 6c65 5f76 6972 7475 ( ansible_virtu │ │ │ -00212410: 616c 697a 6174 696f 6e5f 7479 7065 2069 alization_type i │ │ │ -00212420: 6e0a 2020 2020 5b22 646f 636b 6572 222c n. ["docker", │ │ │ -00212430: 2022 6c78 6322 2c20 226f 7065 6e76 7a22 "lxc", "openvz" │ │ │ -00212440: 2c20 2270 6f64 6d61 6e22 2c20 2263 6f6e , "podman", "con │ │ │ -00212450: 7461 696e 6572 225d 2029 2029 0a20 2074 tainer"] ) ). t │ │ │ -00212460: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ -00212470: 302d 3533 2d41 432d 360a 2020 2d20 4e49 0-53-AC-6. - NI │ │ │ -00212480: 5354 2d38 3030 2d35 332d 4143 2d36 2831 ST-800-53-AC-6(1 │ │ │ -00212490: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -002124a0: 332d 434d 2d36 2861 290a 2020 2d20 4e49 3-CM-6(a). - NI │ │ │ -002124b0: 5354 2d38 3030 2d35 332d 434d 2d37 2861 ST-800-53-CM-7(a │ │ │ -002124c0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -002124d0: 332d 434d 2d37 2862 290a 2020 2d20 4e49 3-CM-7(b). - NI │ │ │ -002124e0: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20 ST-800-53-MP-7. │ │ │ -002124f0: 202d 2063 6f6e 6669 6775 7265 5f73 7472 - configure_str │ │ │ -00212500: 6174 6567 790a 2020 2d20 6869 6768 5f64 ategy. - high_d │ │ │ -00212510: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f isruption. - lo │ │ │ -00212520: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ -00212530: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ -00212540: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f . - mount_optio │ │ │ -00212550: 6e5f 626f 6f74 5f6e 6f73 7569 640a 2020 n_boot_nosuid. │ │ │ -00212560: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ -00212570: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464 ed..- name: 'Add │ │ │ -00212580: 206e 6f73 7569 6420 4f70 7469 6f6e 2074 nosuid Option t │ │ │ -00212590: 6f20 2f62 6f6f 743a 2043 7265 6174 6520 o /boot: Create │ │ │ -002125a0: 6d6f 756e 745f 696e 666f 2064 6963 7469 mount_info dicti │ │ │ -002125b0: 6f6e 6172 7920 7661 7269 6162 6c65 270a onary variable'. │ │ │ -002125c0: 2020 7365 745f 6661 6374 3a0a 2020 2020 set_fact:. │ │ │ -002125d0: 6d6f 756e 745f 696e 666f 3a20 277b 7b20 mount_info: '{{ │ │ │ -002125e0: 6d6f 756e 745f 696e 666f 7c64 6566 6175 mount_info|defau │ │ │ -002125f0: 6c74 287b 7d29 7c63 6f6d 6269 6e65 287b lt({})|combine({ │ │ │ -00212600: 6974 656d 2e30 3a20 6974 656d 2e31 7d29 item.0: item.1}) │ │ │ -00212610: 207d 7d27 0a20 2077 6974 685f 746f 6765 }}'. with_toge │ │ │ -00212620: 7468 6572 3a0a 2020 2d20 277b 7b20 6465 ther:. - '{{ de │ │ │ -00212630: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ -00212640: 5f6c 696e 6573 5b30 5d2e 7370 6c69 7428 _lines[0].split( │ │ │ -00212650: 2920 7c20 6d61 7028 2727 6c6f 7765 7227 ) | map(''lower' │ │ │ -00212660: 2729 207c 206c 6973 7420 7d7d 270a 2020 ') | list }}'. │ │ │ -00212670: 2d20 277b 7b20 6465 7669 6365 5f6e 616d - '{{ device_nam │ │ │ -00212680: 652e 7374 646f 7574 5f6c 696e 6573 5b31 e.stdout_lines[1 │ │ │ -00212690: 5d2e 7370 6c69 7428 2920 7c20 6c69 7374 ].split() | list │ │ │ -002126a0: 207d 7d27 0a20 2077 6865 6e3a 0a20 202d }}'. when:. - │ │ │ -002126b0: 2028 206e 6f74 2028 2022 6b65 726e 656c ( not ( "kernel │ │ │ -002126c0: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -002126d0: 7473 2e70 6163 6b61 6765 7320 616e 6420 ts.packages and │ │ │ -002126e0: 2272 706d 2d6f 7374 7265 6522 2069 6e20 "rpm-ostree" in │ │ │ -002126f0: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -00212700: 636b 6167 6573 0a20 2020 2061 6e64 2022 ckages. and " │ │ │ -00212710: 626f 6f74 6322 2069 6e20 616e 7369 626c bootc" in ansibl │ │ │ -00212720: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -00212730: 2061 6e64 206e 6f74 2022 6f70 656e 7368 and not "opensh │ │ │ -00212740: 6966 742d 6b75 6265 6c65 7422 2069 6e20 ift-kubelet" in │ │ │ -00212750: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -00212760: 636b 6167 6573 0a20 2020 2061 6e64 2022 ckages. and " │ │ │ -00212770: 6f73 7472 6565 2220 696e 2061 6e73 6962 ostree" in ansib │ │ │ -00212780: 6c65 5f70 726f 635f 636d 646c 696e 6520 le_proc_cmdline │ │ │ -00212790: 2920 616e 6420 6e6f 7420 2820 616e 7369 ) and not ( ansi │ │ │ -002127a0: 626c 655f 7669 7274 7561 6c69 7a61 7469 ble_virtualizati │ │ │ -002127b0: 6f6e 5f74 7970 6520 696e 0a20 2020 205b on_type in. [ │ │ │ -002127c0: 2264 6f63 6b65 7222 2c20 226c 7863 222c "docker", "lxc", │ │ │ -002127d0: 2022 6f70 656e 767a 222c 2022 706f 646d "openvz", "podm │ │ │ -002127e0: 616e 222c 2022 636f 6e74 6169 6e65 7222 an", "container" │ │ │ -002127f0: 5d20 2920 290a 2020 2d20 6465 7669 6365 ] ) ). - device │ │ │ -00212800: 5f6e 616d 652e 7374 646f 7574 2069 7320 _name.stdout is │ │ │ -00212810: 6465 6669 6e65 6420 616e 6420 6465 7669 defined and devi │ │ │ -00212820: 6365 5f6e 616d 652e 7374 646f 7574 5f6c ce_name.stdout_l │ │ │ -00212830: 696e 6573 2069 7320 6465 6669 6e65 640a ines is defined. │ │ │ -00212840: 2020 2d20 2864 6576 6963 655f 6e61 6d65 - (device_name │ │ │ -00212850: 2e73 7464 6f75 7420 7c20 6c65 6e67 7468 .stdout | length │ │ │ -00212860: 2026 6774 3b20 3029 0a20 2074 6167 733a > 0). tags: │ │ │ -00212870: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -00212880: 2d41 432d 360a 2020 2d20 4e49 5354 2d38 -AC-6. - NIST-8 │ │ │ -00212890: 3030 2d35 332d 4143 2d36 2831 290a 2020 00-53-AC-6(1). │ │ │ -002128a0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -002128b0: 2d36 2861 290a 2020 2d20 4e49 5354 2d38 -6(a). - NIST-8 │ │ │ -002128c0: 3030 2d35 332d 434d 2d37 2861 290a 2020 00-53-CM-7(a). │ │ │ -002128d0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -002128e0: 2d37 2862 290a 2020 2d20 4e49 5354 2d38 -7(b). - NIST-8 │ │ │ -002128f0: 3030 2d35 332d 4d50 2d37 0a20 202d 2063 00-53-MP-7. - c │ │ │ -00212900: 6f6e 6669 6775 7265 5f73 7472 6174 6567 onfigure_strateg │ │ │ -00212910: 790a 2020 2d20 6869 6768 5f64 6973 7275 y. - high_disru │ │ │ -00212920: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f ption. - low_co │ │ │ -00212930: 6d70 6c65 7869 7479 0a20 202d 206d 6564 mplexity. - med │ │ │ -00212940: 6975 6d5f 7365 7665 7269 7479 0a20 202d ium_severity. - │ │ │ -00212950: 206d 6f75 6e74 5f6f 7074 696f 6e5f 626f mount_option_bo │ │ │ -00212960: 6f74 5f6e 6f73 7569 640a 2020 2d20 6e6f ot_nosuid. - no │ │ │ -00212970: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a _reboot_needed.. │ │ │ -00212980: 2d20 6e61 6d65 3a20 2741 6464 206e 6f73 - name: 'Add nos │ │ │ -00212990: 7569 6420 4f70 7469 6f6e 2074 6f20 2f62 uid Option to /b │ │ │ -002129a0: 6f6f 743a 2049 6620 2f62 6f6f 7420 6e6f oot: If /boot no │ │ │ -002129b0: 7420 6d6f 756e 7465 642c 2063 7261 6674 t mounted, craft │ │ │ -002129c0: 206d 6f75 6e74 5f69 6e66 6f20 6d61 6e75 mount_info manu │ │ │ -002129d0: 616c 6c79 270a 2020 7365 745f 6661 6374 ally'. set_fact │ │ │ -002129e0: 3a0a 2020 2020 6d6f 756e 745f 696e 666f :. mount_info │ │ │ -002129f0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f : '{{ mount_info │ │ │ -00212a00: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d |default({})|com │ │ │ -00212a10: 6269 6e65 287b 6974 656d 2e30 3a20 6974 bine({item.0: it │ │ │ -00212a20: 656d 2e31 7d29 207d 7d27 0a20 2077 6974 em.1}) }}'. wit │ │ │ -00212a30: 685f 746f 6765 7468 6572 3a0a 2020 2d20 h_together:. - │ │ │ -00212a40: 2d20 7461 7267 6574 0a20 2020 202d 2073 - target. - s │ │ │ -00212a50: 6f75 7263 650a 2020 2020 2d20 6673 7479 ource. - fsty │ │ │ -00212a60: 7065 0a20 2020 202d 206f 7074 696f 6e73 pe. - options │ │ │ -00212a70: 0a20 202d 202d 202f 626f 6f74 0a20 2020 . - - /boot. │ │ │ -00212a80: 202d 2027 270a 2020 2020 2d20 2727 0a20 - ''. - ''. │ │ │ -00212a90: 2020 202d 2064 6566 6175 6c74 730a 2020 - defaults. │ │ │ -00212aa0: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420 when:. - ( not │ │ │ -00212ab0: 2820 226b 6572 6e65 6c22 2069 6e20 616e ( "kernel" in an │ │ │ -00212ac0: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ -00212ad0: 6167 6573 2061 6e64 2022 7270 6d2d 6f73 ages and "rpm-os │ │ │ -00212ae0: 7472 6565 2220 696e 2061 6e73 6962 6c65 tree" in ansible │ │ │ -00212af0: 5f66 6163 7473 2e70 6163 6b61 6765 730a _facts.packages. │ │ │ -00212b00: 2020 2020 616e 6420 2262 6f6f 7463 2220 and "bootc" │ │ │ -00212b10: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ -00212b20: 2e70 6163 6b61 6765 7320 616e 6420 6e6f .packages and no │ │ │ -00212b30: 7420 226f 7065 6e73 6869 6674 2d6b 7562 t "openshift-kub │ │ │ -00212b40: 656c 6574 2220 696e 2061 6e73 6962 6c65 elet" in ansible │ │ │ -00212b50: 5f66 6163 7473 2e70 6163 6b61 6765 730a _facts.packages. │ │ │ -00212b60: 2020 2020 616e 6420 226f 7374 7265 6522 and "ostree" │ │ │ -00212b70: 2069 6e20 616e 7369 626c 655f 7072 6f63 in ansible_proc │ │ │ -00212b80: 5f63 6d64 6c69 6e65 2029 2061 6e64 206e _cmdline ) and n │ │ │ -00212b90: 6f74 2028 2061 6e73 6962 6c65 5f76 6972 ot ( ansible_vir │ │ │ -00212ba0: 7475 616c 697a 6174 696f 6e5f 7479 7065 tualization_type │ │ │ -00212bb0: 2069 6e0a 2020 2020 5b22 646f 636b 6572 in. ["docker │ │ │ -00212bc0: 222c 2022 6c78 6322 2c20 226f 7065 6e76 ", "lxc", "openv │ │ │ -00212bd0: 7a22 2c20 2270 6f64 6d61 6e22 2c20 2263 z", "podman", "c │ │ │ -00212be0: 6f6e 7461 696e 6572 225d 2029 2029 0a20 ontainer"] ) ). │ │ │ -00212bf0: 202d 2028 222d 2d66 7374 6162 2220 7c20 - ("--fstab" | │ │ │ -00212c00: 6c65 6e67 7468 203d 3d20 3029 0a20 202d length == 0). - │ │ │ -00212c10: 2064 6576 6963 655f 6e61 6d65 2e73 7464 device_name.std │ │ │ -00212c20: 6f75 7420 6973 2064 6566 696e 6564 2061 out is defined a │ │ │ -00212c30: 6e64 2064 6576 6963 655f 6e61 6d65 2e73 nd device_name.s │ │ │ -00212c40: 7464 6f75 745f 6c69 6e65 7320 6973 2064 tdout_lines is d │ │ │ -00212c50: 6566 696e 6564 0a20 202d 2028 6465 7669 efined. - (devi │ │ │ -00212c60: 6365 5f6e 616d 652e 7374 646f 7574 207c ce_name.stdout | │ │ │ -00212c70: 206c 656e 6774 6820 3d3d 2030 290a 2020 length == 0). │ │ │ -00212c80: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ -00212c90: 3030 2d35 332d 4143 2d36 0a20 202d 204e 00-53-AC-6. - N │ │ │ -00212ca0: 4953 542d 3830 302d 3533 2d41 432d 3628 IST-800-53-AC-6( │ │ │ -00212cb0: 3129 0a20 202d 204e 4953 542d 3830 302d 1). - NIST-800- │ │ │ -00212cc0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e 53-CM-6(a). - N │ │ │ -00212cd0: 4953 542d 3830 302d 3533 2d43 4d2d 3728 IST-800-53-CM-7( │ │ │ -00212ce0: 6129 0a20 202d 204e 4953 542d 3830 302d a). - NIST-800- │ │ │ -00212cf0: 3533 2d43 4d2d 3728 6229 0a20 202d 204e 53-CM-7(b). - N │ │ │ -00212d00: 4953 542d 3830 302d 3533 2d4d 502d 370a IST-800-53-MP-7. │ │ │ -00212d10: 2020 2d20 636f 6e66 6967 7572 655f 7374 - configure_st │ │ │ -00212d20: 7261 7465 6779 0a20 202d 2068 6967 685f rategy. - high_ │ │ │ -00212d30: 6469 7372 7570 7469 6f6e 0a20 202d 206c disruption. - l │ │ │ -00212d40: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ -00212d50: 2d20 6d65 6469 756d 5f73 6576 6572 6974 - medium_severit │ │ │ -00212d60: 790a 2020 2d20 6d6f 756e 745f 6f70 7469 y. - mount_opti │ │ │ -00212d70: 6f6e 5f62 6f6f 745f 6e6f 7375 6964 0a20 on_boot_nosuid. │ │ │ -00212d80: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ -00212d90: 6465 640a 0a2d 206e 616d 653a 2027 4164 ded..- name: 'Ad │ │ │ -00212da0: 6420 6e6f 7375 6964 204f 7074 696f 6e20 d nosuid Option │ │ │ -00212db0: 746f 202f 626f 6f74 3a20 4d61 6b65 2073 to /boot: Make s │ │ │ -00212dc0: 7572 6520 6e6f 7375 6964 206f 7074 696f ure nosuid optio │ │ │ -00212dd0: 6e20 6973 2070 6172 7420 6f66 2074 6865 n is part of the │ │ │ -00212de0: 2074 6f20 2f62 6f6f 740a 2020 2020 6f70 to /boot. op │ │ │ -00212df0: 7469 6f6e 7327 0a20 2073 6574 5f66 6163 tions'. set_fac │ │ │ -00212e00: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66 t:. mount_inf │ │ │ -00212e10: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66 o: '{{ mount_inf │ │ │ -00212e20: 6f20 7c20 636f 6d62 696e 6528 207b 2727 o | combine( {'' │ │ │ -00212e30: 6f70 7469 6f6e 7327 273a 2727 2727 7e28 options'':''''~( │ │ │ -00212e40: 6d6f 756e 745f 696e 666f 2e6f 7074 696f mount_info.optio │ │ │ -00212e50: 6e73 207c 0a20 2020 2020 2064 6566 6175 ns |. defau │ │ │ -00212e60: 6c74 2827 2727 2729 297e 2827 272c 2727 lt(''''))~('','' │ │ │ -00212e70: 2069 6620 286d 6f75 6e74 5f69 6e66 6f2e if (mount_info. │ │ │ -00212e80: 6f70 7469 6f6e 7320 7c20 6465 6661 756c options | defaul │ │ │ -00212e90: 7428 2727 2727 2929 2065 6c73 6520 2727 t('''')) else '' │ │ │ -00212ea0: 2727 297e 2727 6e6f 7375 6964 2727 0a20 '')~''nosuid''. │ │ │ -00212eb0: 2020 2020 207d 2920 7d7d 270a 2020 7768 }) }}'. wh │ │ │ -00212ec0: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820 en:. - ( not ( │ │ │ -00212ed0: 226b 6572 6e65 6c22 2069 6e20 616e 7369 "kernel" in ansi │ │ │ -00212ee0: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -00212ef0: 6573 2061 6e64 2022 7270 6d2d 6f73 7472 es and "rpm-ostr │ │ │ -00212f00: 6565 2220 696e 2061 6e73 6962 6c65 5f66 ee" in ansible_f │ │ │ -00212f10: 6163 7473 2e70 6163 6b61 6765 730a 2020 acts.packages. │ │ │ -00212f20: 2020 616e 6420 2262 6f6f 7463 2220 696e and "bootc" in │ │ │ -00212f30: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -00212f40: 6163 6b61 6765 7320 616e 6420 6e6f 7420 ackages and not │ │ │ -00212f50: 226f 7065 6e73 6869 6674 2d6b 7562 656c "openshift-kubel │ │ │ -00212f60: 6574 2220 696e 2061 6e73 6962 6c65 5f66 et" in ansible_f │ │ │ -00212f70: 6163 7473 2e70 6163 6b61 6765 730a 2020 acts.packages. │ │ │ -00212f80: 2020 616e 6420 226f 7374 7265 6522 2069 and "ostree" i │ │ │ -00212f90: 6e20 616e 7369 626c 655f 7072 6f63 5f63 n ansible_proc_c │ │ │ -00212fa0: 6d64 6c69 6e65 2029 2061 6e64 206e 6f74 mdline ) and not │ │ │ -00212fb0: 2028 2061 6e73 6962 6c65 5f76 6972 7475 ( ansible_virtu │ │ │ -00212fc0: 616c 697a 6174 696f 6e5f 7479 7065 2069 alization_type i │ │ │ -00212fd0: 6e0a 2020 2020 5b22 646f 636b 6572 222c n. ["docker", │ │ │ -00212fe0: 2022 6c78 6322 2c20 226f 7065 6e76 7a22 "lxc", "openvz" │ │ │ -00212ff0: 2c20 2270 6f64 6d61 6e22 2c20 2263 6f6e , "podman", "con │ │ │ -00213000: 7461 696e 6572 225d 2029 2029 0a20 202d tainer"] ) ). - │ │ │ -00213010: 206d 6f75 6e74 5f69 6e66 6f20 6973 2064 mount_info is d │ │ │ -00213020: 6566 696e 6564 2061 6e64 2022 6e6f 7375 efined and "nosu │ │ │ -00213030: 6964 2220 6e6f 7420 696e 2028 6d6f 756e id" not in (moun │ │ │ -00213040: 745f 696e 666f 2e6f 7074 696f 6e73 207c t_info.options | │ │ │ -00213050: 2064 6566 6175 6c74 2827 2729 290a 2020 default('')). │ │ │ -00213060: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ -00213070: 3030 2d35 332d 4143 2d36 0a20 202d 204e 00-53-AC-6. - N │ │ │ -00213080: 4953 542d 3830 302d 3533 2d41 432d 3628 IST-800-53-AC-6( │ │ │ -00213090: 3129 0a20 202d 204e 4953 542d 3830 302d 1). - NIST-800- │ │ │ -002130a0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e 53-CM-6(a). - N │ │ │ -002130b0: 4953 542d 3830 302d 3533 2d43 4d2d 3728 IST-800-53-CM-7( │ │ │ -002130c0: 6129 0a20 202d 204e 4953 542d 3830 302d a). - NIST-800- │ │ │ -002130d0: 3533 2d43 4d2d 3728 6229 0a20 202d 204e 53-CM-7(b). - N │ │ │ -002130e0: 4953 542d 3830 302d 3533 2d4d 502d 370a IST-800-53-MP-7. │ │ │ -002130f0: 2020 2d20 636f 6e66 6967 7572 655f 7374 - configure_st │ │ │ -00213100: 7261 7465 6779 0a20 202d 2068 6967 685f rategy. - high_ │ │ │ -00213110: 6469 7372 7570 7469 6f6e 0a20 202d 206c disruption. - l │ │ │ -00213120: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ -00213130: 2d20 6d65 6469 756d 5f73 6576 6572 6974 - medium_severit │ │ │ -00213140: 790a 2020 2d20 6d6f 756e 745f 6f70 7469 y. - mount_opti │ │ │ -00213150: 6f6e 5f62 6f6f 745f 6e6f 7375 6964 0a20 on_boot_nosuid. │ │ │ -00213160: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ -00213170: 6465 640a 0a2d 206e 616d 653a 2027 4164 ded..- name: 'Ad │ │ │ -00213180: 6420 6e6f 7375 6964 204f 7074 696f 6e20 d nosuid Option │ │ │ -00213190: 746f 202f 626f 6f74 3a20 456e 7375 7265 to /boot: Ensure │ │ │ -002131a0: 202f 626f 6f74 2069 7320 6d6f 756e 7465 /boot is mounte │ │ │ -002131b0: 6420 7769 7468 206e 6f73 7569 6420 6f70 d with nosuid op │ │ │ -002131c0: 7469 6f6e 270a 2020 616e 7369 626c 652e tion'. ansible. │ │ │ -002131d0: 706f 7369 782e 6d6f 756e 743a 0a20 2020 posix.mount:. │ │ │ -002131e0: 2070 6174 683a 202f 626f 6f74 0a20 2020 path: /boot. │ │ │ -002131f0: 2073 7263 3a20 277b 7b20 6d6f 756e 745f src: '{{ mount_ │ │ │ -00213200: 696e 666f 2e73 6f75 7263 6520 7c20 6465 info.source | de │ │ │ -00213210: 6661 756c 7428 2727 2727 2920 7d7d 270a fault('''') }}'. │ │ │ -00213220: 2020 2020 6f70 7473 3a20 277b 7b20 6d6f opts: '{{ mo │ │ │ -00213230: 756e 745f 696e 666f 2e6f 7074 696f 6e73 unt_info.options │ │ │ -00213240: 207c 2064 6566 6175 6c74 2827 2727 2729 | default('''') │ │ │ -00213250: 207d 7d27 0a20 2020 2073 7461 7465 3a20 }}'. state: │ │ │ -00213260: 6d6f 756e 7465 640a 2020 2020 6673 7479 mounted. fsty │ │ │ -00213270: 7065 3a20 277b 7b20 6d6f 756e 745f 696e pe: '{{ mount_in │ │ │ -00213280: 666f 2e66 7374 7970 6520 7c20 6465 6661 fo.fstype | defa │ │ │ -00213290: 756c 7428 2727 2727 2920 7d7d 270a 2020 ult('''') }}'. │ │ │ -002132a0: 7265 6769 7374 6572 3a20 6d6f 756e 745f register: mount_ │ │ │ -002132b0: 7265 7375 6c74 0a20 2066 6169 6c65 645f result. failed_ │ │ │ -002132c0: 7768 656e 3a0a 2020 2d20 6d6f 756e 745f when:. - mount_ │ │ │ -002132d0: 7265 7375 6c74 2069 7320 6661 696c 6564 result is failed │ │ │ -002132e0: 0a20 202d 2027 2727 7461 7267 6574 2069 . - '''target i │ │ │ -002132f0: 7320 6275 7379 2727 206e 6f74 2069 6e20 s busy'' not in │ │ │ -00213300: 286d 6f75 6e74 5f72 6573 756c 742e 6d73 (mount_result.ms │ │ │ -00213310: 6720 7c20 6465 6661 756c 7428 2727 2727 g | default('''' │ │ │ -00213320: 2929 270a 2020 2d20 2727 2761 6c72 6561 ))'. - '''alrea │ │ │ -00213330: 6479 206d 6f75 6e74 6564 2727 206e 6f74 dy mounted'' not │ │ │ -00213340: 2069 6e20 286d 6f75 6e74 5f72 6573 756c in (mount_resul │ │ │ -00213350: 742e 6d73 6720 7c20 6465 6661 756c 7428 t.msg | default( │ │ │ -00213360: 2727 2727 2929 270a 2020 7768 656e 3a0a ''''))'. when:. │ │ │ -00213370: 2020 2d20 2820 6e6f 7420 2820 226b 6572 - ( not ( "ker │ │ │ -00213380: 6e65 6c22 2069 6e20 616e 7369 626c 655f nel" in ansible_ │ │ │ -00213390: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ -002133a0: 6e64 2022 7270 6d2d 6f73 7472 6565 2220 nd "rpm-ostree" │ │ │ -002133b0: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ -002133c0: 2e70 6163 6b61 6765 730a 2020 2020 616e .packages. an │ │ │ -002133d0: 6420 2262 6f6f 7463 2220 696e 2061 6e73 d "bootc" in ans │ │ │ -002133e0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ -002133f0: 6765 7320 616e 6420 6e6f 7420 226f 7065 ges and not "ope │ │ │ -00213400: 6e73 6869 6674 2d6b 7562 656c 6574 2220 nshift-kubelet" │ │ │ -00213410: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ -00213420: 2e70 6163 6b61 6765 730a 2020 2020 616e .packages. an │ │ │ -00213430: 6420 226f 7374 7265 6522 2069 6e20 616e d "ostree" in an │ │ │ -00213440: 7369 626c 655f 7072 6f63 5f63 6d64 6c69 sible_proc_cmdli │ │ │ -00213450: 6e65 2029 2061 6e64 206e 6f74 2028 2061 ne ) and not ( a │ │ │ -00213460: 6e73 6962 6c65 5f76 6972 7475 616c 697a nsible_virtualiz │ │ │ -00213470: 6174 696f 6e5f 7479 7065 2069 6e0a 2020 ation_type in. │ │ │ -00213480: 2020 5b22 646f 636b 6572 222c 2022 6c78 ["docker", "lx │ │ │ -00213490: 6322 2c20 226f 7065 6e76 7a22 2c20 2270 c", "openvz", "p │ │ │ -002134a0: 6f64 6d61 6e22 2c20 2263 6f6e 7461 696e odman", "contain │ │ │ -002134b0: 6572 225d 2029 2029 0a20 202d 206d 6f75 er"] ) ). - mou │ │ │ -002134c0: 6e74 5f69 6e66 6f20 6973 2064 6566 696e nt_info is defin │ │ │ -002134d0: 6564 0a20 202d 2028 6465 7669 6365 5f6e ed. - (device_n │ │ │ -002134e0: 616d 652e 7374 646f 7574 2069 7320 6465 ame.stdout is de │ │ │ -002134f0: 6669 6e65 6420 616e 6420 2864 6576 6963 fined and (devic │ │ │ -00213500: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20 e_name.stdout | │ │ │ -00213510: 6c65 6e67 7468 2026 6774 3b20 3029 2920 length > 0)) │ │ │ -00213520: 6f72 2028 222d 2d66 7374 6162 220a 2020 or ("--fstab". │ │ │ -00213530: 2020 7c20 6c65 6e67 7468 203d 3d20 3029 | length == 0) │ │ │ -00213540: 0a20 2074 6167 733a 0a20 202d 204e 4953 . tags:. - NIS │ │ │ -00213550: 542d 3830 302d 3533 2d41 432d 360a 2020 T-800-53-AC-6. │ │ │ -00213560: 2d20 4e49 5354 2d38 3030 2d35 332d 4143 - NIST-800-53-AC │ │ │ -00213570: 2d36 2831 290a 2020 2d20 4e49 5354 2d38 -6(1). - NIST-8 │ │ │ -00213580: 3030 2d35 332d 434d 2d36 2861 290a 2020 00-53-CM-6(a). │ │ │ -00213590: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -002135a0: 2d37 2861 290a 2020 2d20 4e49 5354 2d38 -7(a). - NIST-8 │ │ │ -002135b0: 3030 2d35 332d 434d 2d37 2862 290a 2020 00-53-CM-7(b). │ │ │ -002135c0: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50 - NIST-800-53-MP │ │ │ -002135d0: 2d37 0a20 202d 2063 6f6e 6669 6775 7265 -7. - configure │ │ │ -002135e0: 5f73 7472 6174 6567 790a 2020 2d20 6869 _strategy. - hi │ │ │ -002135f0: 6768 5f64 6973 7275 7074 696f 6e0a 2020 gh_disruption. │ │ │ -00213600: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479 - low_complexity │ │ │ -00213610: 0a20 202d 206d 6564 6975 6d5f 7365 7665 . - medium_seve │ │ │ -00213620: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f rity. - mount_o │ │ │ -00213630: 7074 696f 6e5f 626f 6f74 5f6e 6f73 7569 ption_boot_nosui │ │ │ -00213640: 640a 2020 2d20 6e6f 5f72 6562 6f6f 745f d. - no_reboot_ │ │ │ -00213650: 6e65 6564 6564 0a3c 2f63 6f64 653e 3c2f needed.
Remediati │ │ │ -00213710: 6f6e 2053 6865 6c6c 2073 6372 6970 7420 on Shell script │ │ │ -00213720: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Reboot:false< │ │ │ -002137c0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
# Remedia
│ │ │ -002137e0: 7469 6f6e 2069 7320 6170 706c 6963 6162  tion is applicab
│ │ │ -002137f0: 6c65 206f 6e6c 7920 696e 2063 6572 7461  le only in certa
│ │ │ -00213800: 696e 2070 6c61 7466 6f72 6d73 0a69 6620  in platforms.if 
│ │ │ -00213810: 2820 2120 2820 7b20 7270 6d20 2d2d 7175  ( ! ( { rpm --qu
│ │ │ -00213820: 6965 7420 2d71 206b 6572 6e65 6c20 3b7d  iet -q kernel ;}
│ │ │ -00213830: 2026 616d 703b 2661 6d70 3b20 7b20 7270   && { rp
│ │ │ -00213840: 6d20 2d2d 7175 6965 7420 2d71 2072 706d  m --quiet -q rpm
│ │ │ -00213850: 2d6f 7374 7265 6520 3b7d 2026 616d 703b  -ostree ;} &
│ │ │ -00213860: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ -00213870: 6965 7420 2d71 2062 6f6f 7463 203b 7d20  iet -q bootc ;} 
│ │ │ -00213880: 2661 6d70 3b26 616d 703b 207b 2021 2072  && { ! r
│ │ │ -00213890: 706d 202d 2d71 7569 6574 202d 7120 6f70  pm --quiet -q op
│ │ │ -002138a0: 656e 7368 6966 742d 6b75 6265 6c65 7420  enshift-kubelet 
│ │ │ -002138b0: 3b7d 2026 616d 703b 2661 6d70 3b20 285b  ;} && ([
│ │ │ -002138c0: 202d 6620 2f72 756e 2f6f 7374 7265 652d   -f /run/ostree-
│ │ │ -002138d0: 626f 6f74 6564 205d 207c 7c20 5b20 2d4c  booted ] || [ -L
│ │ │ -002138e0: 202f 6f73 7472 6565 205d 2920 2920 2661   /ostree ]) ) &a
│ │ │ -002138f0: 6d70 3b26 616d 703b 2021 2028 205b 202d  mp;& ! ( [ -
│ │ │ -00213900: 6620 2f2e 646f 636b 6572 656e 7620 5d20  f /.dockerenv ] 
│ │ │ -00213910: 7c7c 205b 202d 6620 2f72 756e 2f2e 636f  || [ -f /run/.co
│ │ │ -00213920: 6e74 6169 6e65 7265 6e76 205d 2029 2029  ntainerenv ] ) )
│ │ │ -00213930: 3b20 7468 656e 0a0a 6675 6e63 7469 6f6e  ; then..function
│ │ │ -00213940: 2070 6572 666f 726d 5f72 656d 6564 6961   perform_remedia
│ │ │ -00213950: 7469 6f6e 207b 0a0a 2020 2020 0a20 2020  tion {..    .   
│ │ │ -00213960: 2020 2020 2023 2074 6865 206d 6f75 6e74       # the mount
│ │ │ -00213970: 2070 6f69 6e74 202f 626f 6f74 2068 6173   point /boot has
│ │ │ -00213980: 2074 6f20 6265 2064 6566 696e 6564 2069   to be defined i
│ │ │ -00213990: 6e20 2f65 7463 2f66 7374 6162 0a20 2020  n /etc/fstab.   
│ │ │ -002139a0: 2020 2020 2023 2062 6566 6f72 6520 7468       # before th
│ │ │ -002139b0: 6973 2072 656d 6564 6961 7469 6f6e 2063  is remediation c
│ │ │ -002139c0: 616e 2062 6520 6578 6563 7574 6564 2e20  an be executed. 
│ │ │ -002139d0: 496e 2063 6173 6520 6974 2069 7320 6e6f  In case it is no
│ │ │ -002139e0: 7420 6465 6669 6e65 642c 2074 6865 0a20  t defined, the. 
│ │ │ -002139f0: 2020 2020 2020 2023 2072 656d 6564 6961         # remedia
│ │ │ -00213a00: 7469 6f6e 2061 626f 7274 7320 616e 6420  tion aborts and 
│ │ │ -00213a10: 6e6f 2063 6861 6e67 6573 2072 6567 6172  no changes regar
│ │ │ -00213a20: 6469 6e67 2074 6865 206d 6f75 6e74 2070  ding the mount p
│ │ │ -00213a30: 6f69 6e74 2061 7265 2064 6f6e 652e 0a20  oint are done.. 
│ │ │ -00213a40: 2020 2020 2020 206d 6f75 6e74 5f70 6f69         mount_poi
│ │ │ -00213a50: 6e74 5f6d 6174 6368 5f72 6567 6578 703d  nt_match_regexp=
│ │ │ -00213a60: 2224 2870 7269 6e74 6620 225e 5b5b 3a73  "$(printf "^[[:s
│ │ │ -00213a70: 7061 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b  pace:]]*[^#].*[[
│ │ │ -00213a80: 3a73 7061 6365 3a5d 5d25 735b 5b3a 7370  :space:]]%s[[:sp
│ │ │ -00213a90: 6163 653a 5d5d 2220 222f 626f 6f74 2229  ace:]]" "/boot")
│ │ │ -00213aa0: 220a 0a20 2020 2067 7265 7020 2224 6d6f  "..    grep "$mo
│ │ │ -00213ab0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -00213ac0: 7265 6765 7870 2220 2d71 202f 6574 632f  regexp" -q /etc/
│ │ │ -00213ad0: 6673 7461 6220 5c0a 2020 2020 2020 2020  fstab \.        
│ │ │ -00213ae0: 7c7c 207b 2065 6368 6f20 2254 6865 206d  || { echo "The m
│ │ │ -00213af0: 6f75 6e74 2070 6f69 6e74 2027 2f62 6f6f  ount point '/boo
│ │ │ -00213b00: 7427 2069 7320 6e6f 7420 6576 656e 2069  t' is not even i
│ │ │ -00213b10: 6e20 2f65 7463 2f66 7374 6162 2c20 736f  n /etc/fstab, so
│ │ │ -00213b20: 2077 6520 6361 6e27 7420 7365 7420 7570   we can't set up
│ │ │ -00213b30: 206d 6f75 6e74 206f 7074 696f 6e73 2220   mount options" 
│ │ │ -00213b40: 2667 743b 2661 6d70 3b32 3b0a 2020 2020  >&2;.    
│ │ │ -00213b50: 2020 2020 2020 2020 2020 2020 6563 686f              echo
│ │ │ -00213b60: 2022 4e6f 7420 7265 6d65 6469 6174 696e   "Not remediatin
│ │ │ -00213b70: 672c 2062 6563 6175 7365 2074 6865 7265  g, because there
│ │ │ -00213b80: 2069 7320 6e6f 2072 6563 6f72 6420 6f66   is no record of
│ │ │ -00213b90: 202f 626f 6f74 2069 6e20 2f65 7463 2f66   /boot in /etc/f
│ │ │ -00213ba0: 7374 6162 2220 2667 743b 2661 6d70 3b32  stab" >&2
│ │ │ -00213bb0: 3b20 7265 7475 726e 2031 3b20 7d0a 2020  ; return 1; }.  
│ │ │ -00213bc0: 2020 0a0a 0a20 2020 206d 6f75 6e74 5f70    ...    mount_p
│ │ │ -00213bd0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -00213be0: 703d 2224 2870 7269 6e74 6620 225e 5b5b  p="$(printf "^[[
│ │ │ -00213bf0: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a  :space:]]*[^#].*
│ │ │ -00213c00: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a  [[:space:]]%s[[:
│ │ │ -00213c10: 7370 6163 653a 5d5d 2220 2f62 6f6f 7429  space:]]" /boot)
│ │ │ -00213c20: 220a 0a20 2020 2023 2049 6620 7468 6520  "..    # If the 
│ │ │ -00213c30: 6d6f 756e 7420 706f 696e 7420 6973 206e  mount point is n
│ │ │ -00213c40: 6f74 2069 6e20 2f65 7463 2f66 7374 6162  ot in /etc/fstab
│ │ │ -00213c50: 2c20 6765 7420 7072 6576 696f 7573 206d  , get previous m
│ │ │ -00213c60: 6f75 6e74 206f 7074 696f 6e73 2066 726f  ount options fro
│ │ │ -00213c70: 6d20 2f65 7463 2f6d 7461 620a 2020 2020  m /etc/mtab.    
│ │ │ -00213c80: 6966 2021 2067 7265 7020 2d71 2022 246d  if ! grep -q "$m
│ │ │ -00213c90: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -00213ca0: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ -00213cb0: 7461 623b 2074 6865 6e0a 2020 2020 2020  tab; then.      
│ │ │ -00213cc0: 2020 2320 7275 6e74 696d 6520 6f70 7473    # runtime opts
│ │ │ -00213cd0: 2077 6974 686f 7574 2073 6f6d 6520 6175   without some au
│ │ │ -00213ce0: 746f 6d61 7469 6320 6b65 726e 656c 2f75  tomatic kernel/u
│ │ │ -00213cf0: 7365 7273 7061 6365 2d61 6464 6564 2064  serspace-added d
│ │ │ -00213d00: 6566 6175 6c74 730a 2020 2020 2020 2020  efaults.        
│ │ │ -00213d10: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -00213d20: 7074 733d 2428 6772 6570 2022 246d 6f75  pts=$(grep "$mou
│ │ │ -00213d30: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -00213d40: 6567 6578 7022 202f 6574 632f 6d74 6162  egexp" /etc/mtab
│ │ │ -00213d50: 207c 2068 6561 6420 2d31 207c 2020 6177   | head -1 |  aw
│ │ │ -00213d60: 6b20 277b 7072 696e 7420 2434 7d27 205c  k '{print $4}' \
│ │ │ -00213d70: 0a20 2020 2020 2020 2020 2020 2020 2020  .               
│ │ │ -00213d80: 2020 2020 207c 2073 6564 202d 4520 2273       | sed -E "s
│ │ │ -00213d90: 2f28 7277 7c64 6566 6175 6c74 737c 7365  /(rw|defaults|se
│ │ │ -00213da0: 636c 6162 656c 7c6e 6f73 7569 6429 282c  clabel|nosuid)(,
│ │ │ -00213db0: 7c24 292f 2f67 3b73 2f2c 242f 2f22 290a  |$)//g;s/,$//").
│ │ │ -00213dc0: 2020 2020 2020 2020 5b20 2224 7072 6576          [ "$prev
│ │ │ -00213dd0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 7322  ious_mount_opts"
│ │ │ -00213de0: 205d 2026 616d 703b 2661 6d70 3b20 7072   ] && pr
│ │ │ -00213df0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -00213e00: 732b 3d22 2c22 0a20 2020 2020 2020 2023  s+=",".        #
│ │ │ -00213e10: 2049 6e20 6973 6f39 3636 3020 6669 6c65   In iso9660 file
│ │ │ -00213e20: 7379 7374 656d 7320 6d74 6162 2063 6f75  systems mtab cou
│ │ │ -00213e30: 6c64 2064 6573 6372 6962 6520 6120 2262  ld describe a "b
│ │ │ -00213e40: 6c6f 636b 7369 7a65 2220 7661 6c75 652c  locksize" value,
│ │ │ -00213e50: 2074 6869 7320 7368 6f75 6c64 2062 6520   this should be 
│ │ │ -00213e60: 7265 666c 6563 7465 6420 696e 0a20 2020  reflected in.   
│ │ │ -00213e70: 2020 2020 2023 2066 7374 6162 2061 7320       # fstab as 
│ │ │ -00213e80: 2262 6c6f 636b 222e 2020 5468 6520 6e65  "block".  The ne
│ │ │ -00213e90: 7874 2076 6172 6961 626c 6520 6973 2074  xt variable is t
│ │ │ -00213ea0: 6f20 7361 7469 7366 7920 7368 656c 6c63  o satisfy shellc
│ │ │ -00213eb0: 6865 636b 2053 4332 3035 302e 0a20 2020  heck SC2050..   
│ │ │ -00213ec0: 2020 2020 2066 735f 7479 7065 3d22 220a       fs_type="".
│ │ │ -00213ed0: 2020 2020 2020 2020 6966 205b 2020 2224          if [  "$
│ │ │ -00213ee0: 6673 5f74 7970 6522 203d 3d20 2269 736f  fs_type" == "iso
│ │ │ -00213ef0: 3936 3630 2220 5d20 3b20 7468 656e 0a20  9660" ] ; then. 
│ │ │ -00213f00: 2020 2020 2020 2020 2020 2070 7265 7669             previ
│ │ │ -00213f10: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ -00213f20: 2873 6564 2027 732f 626c 6f63 6b73 697a  (sed 's/blocksiz
│ │ │ -00213f30: 653d 2f62 6c6f 636b 3d2f 2720 266c 743b  e=/block=/' <
│ │ │ -00213f40: 266c 743b 266c 743b 2022 2470 7265 7669  << "$previ
│ │ │ -00213f50: 6f75 735f 6d6f 756e 745f 6f70 7473 2229  ous_mount_opts")
│ │ │ -00213f60: 0a20 2020 2020 2020 2066 690a 2020 2020  .        fi.    
│ │ │ -00213f70: 2020 2020 6563 686f 2022 202f 626f 6f74      echo " /boot
│ │ │ -00213f80: 2020 6465 6661 756c 7473 2c24 7b70 7265    defaults,${pre
│ │ │ -00213f90: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ -00213fa0: 7d6e 6f73 7569 6420 3020 3022 2026 6774  }nosuid 0 0" >
│ │ │ -00213fb0: 3b26 6774 3b20 2f65 7463 2f66 7374 6162  ;> /etc/fstab
│ │ │ -00213fc0: 0a20 2020 2023 2049 6620 7468 6520 6d6f  .    # If the mo
│ │ │ -00213fd0: 756e 745f 6f70 7420 6f70 7469 6f6e 2069  unt_opt option i
│ │ │ -00213fe0: 7320 6e6f 7420 616c 7265 6164 7920 696e  s not already in
│ │ │ -00213ff0: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ -00214000: 2773 202f 6574 632f 6673 7461 6220 656e  's /etc/fstab en
│ │ │ -00214010: 7472 792c 2061 6464 2069 740a 2020 2020  try, add it.    
│ │ │ -00214020: 656c 6966 2021 2067 7265 7020 2224 6d6f  elif ! grep "$mo
│ │ │ -00214030: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -00214040: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ -00214050: 6162 207c 2067 7265 7020 2d71 2022 6e6f  ab | grep -q "no
│ │ │ -00214060: 7375 6964 223b 2074 6865 6e0a 2020 2020  suid"; then.    
│ │ │ -00214070: 2020 2020 7072 6576 696f 7573 5f6d 6f75      previous_mou
│ │ │ -00214080: 6e74 5f6f 7074 733d 2428 6772 6570 2022  nt_opts=$(grep "
│ │ │ -00214090: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ -002140a0: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ -002140b0: 6673 7461 6220 7c20 6177 6b20 277b 7072  fstab | awk '{pr
│ │ │ -002140c0: 696e 7420 2434 7d27 290a 2020 2020 2020  int $4}').      
│ │ │ -002140d0: 2020 7365 6420 2d69 2022 737c 5c28 247b    sed -i "s|\(${
│ │ │ -002140e0: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -002140f0: 685f 7265 6765 7870 7d2e 2a24 7b70 7265  h_regexp}.*${pre
│ │ │ -00214100: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ -00214110: 7d5c 297c 5c31 2c6e 6f73 7569 647c 2220  }\)|\1,nosuid|" 
│ │ │ -00214120: 2f65 7463 2f66 7374 6162 0a20 2020 2066  /etc/fstab.    f
│ │ │ -00214130: 690a 0a0a 2020 2020 6966 206d 6b64 6972  i...    if mkdir
│ │ │ -00214140: 202d 7020 222f 626f 6f74 223b 2074 6865   -p "/boot"; the
│ │ │ -00214150: 6e0a 2020 2020 2020 2020 6966 206d 6f75  n.        if mou
│ │ │ -00214160: 6e74 706f 696e 7420 2d71 2022 2f62 6f6f  ntpoint -q "/boo
│ │ │ -00214170: 7422 3b20 7468 656e 0a20 2020 2020 2020  t"; then.       
│ │ │ -00214180: 2020 2020 206d 6f75 6e74 202d 6f20 7265       mount -o re
│ │ │ -00214190: 6d6f 756e 7420 2d2d 7461 7267 6574 2022  mount --target "
│ │ │ -002141a0: 2f62 6f6f 7422 0a20 2020 2020 2020 2066  /boot".        f
│ │ │ -002141b0: 690a 2020 2020 6669 0a7d 0a0a 7065 7266  i.    fi.}..perf
│ │ │ -002141c0: 6f72 6d5f 7265 6d65 6469 6174 696f 6e0a  orm_remediation.
│ │ │ -002141d0: 0a65 6c73 650a 2020 2020 2667 743b 2661  .else.    >&a
│ │ │ -002141e0: 6d70 3b32 2065 6368 6f20 2752 656d 6564  mp;2 echo 'Remed
│ │ │ -002141f0: 6961 7469 6f6e 2069 7320 6e6f 7420 6170  iation is not ap
│ │ │ -00214200: 706c 6963 6162 6c65 2c20 6e6f 7468 696e  plicable, nothin
│ │ │ -00214210: 6720 7761 7320 646f 6e65 270a 6669 0a3c  g was done'.fi.<
│ │ │ +00211d60: 7369 626c 6520 736e 6970 7065 7420 e287  sible snippet ..
│ │ │ +00211d70: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
< │ │ │ +00211df0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +00211e10: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr> │ │ │ +00211e60: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472
low
Disr │ │ │ +00211e20: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +00211e30: 6869 6768 3c2f 7464 3e3c 2f74 723e 3c74 high
Reboot:false
Str │ │ │ +00211e70: 6174 6567 793a 3c2f 7468 3e3c 7464 3e63 ategy:c │ │ │ +00211e80: 6f6e 6669 6775 7265 3c2f 7464 3e3c 2f74 onfigure
<
│ │ │ +00211ea0: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ +00211eb0: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ +00211ec0: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ +00211ed0: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ +00211ee0: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ +00211ef0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +00211f00: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ +00211f10: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ +00211f20: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +00211f30: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ +00211f40: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ +00211f50: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +00211f60: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ +00211f70: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ +00211f80: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +00211f90: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +00211fa0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +00211fb0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +00211fc0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +00211fd0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 626f   mount_option_bo
│ │ │ +00211fe0: 6f74 5f6e 6f73 7569 640a 2020 2d20 6e6f  ot_nosuid.  - no
│ │ │ +00211ff0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +00212000: 2d20 6e61 6d65 3a20 2741 6464 206e 6f73  - name: 'Add nos
│ │ │ +00212010: 7569 6420 4f70 7469 6f6e 2074 6f20 2f62  uid Option to /b
│ │ │ +00212020: 6f6f 743a 2043 6865 636b 2069 6e66 6f72  oot: Check infor
│ │ │ +00212030: 6d61 7469 6f6e 2061 7373 6f63 6961 7465  mation associate
│ │ │ +00212040: 6420 746f 206d 6f75 6e74 706f 696e 7427  d to mountpoint'
│ │ │ +00212050: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ +00212060: 696e 2e63 6f6d 6d61 6e64 3a20 6669 6e64  in.command: find
│ │ │ +00212070: 6d6e 7420 2d2d 6673 7461 6220 272f 626f  mnt --fstab '/bo
│ │ │ +00212080: 6f74 270a 2020 7265 6769 7374 6572 3a20  ot'.  register: 
│ │ │ +00212090: 6465 7669 6365 5f6e 616d 650a 2020 6661  device_name.  fa
│ │ │ +002120a0: 696c 6564 5f77 6865 6e3a 2064 6576 6963  iled_when: devic
│ │ │ +002120b0: 655f 6e61 6d65 2e72 6320 2667 743b 2031  e_name.rc > 1
│ │ │ +002120c0: 0a20 2063 6861 6e67 6564 5f77 6865 6e3a  .  changed_when:
│ │ │ +002120d0: 2066 616c 7365 0a20 2063 6865 636b 5f6d   false.  check_m
│ │ │ +002120e0: 6f64 653a 2066 616c 7365 0a20 2077 6865  ode: false.  whe
│ │ │ +002120f0: 6e3a 2028 206e 6f74 2028 2022 6b65 726e  n: ( not ( "kern
│ │ │ +00212100: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +00212110: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +00212120: 6420 2272 706d 2d6f 7374 7265 6522 2069  d "rpm-ostree" i
│ │ │ +00212130: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +00212140: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +00212150: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ +00212160: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +00212170: 6573 2061 6e64 206e 6f74 2022 6f70 656e  es and not "open
│ │ │ +00212180: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ +00212190: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +002121a0: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +002121b0: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ +002121c0: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ +002121d0: 6520 2920 616e 6420 6e6f 7420 2820 616e  e ) and not ( an
│ │ │ +002121e0: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ +002121f0: 7469 6f6e 5f74 7970 6520 696e 0a20 2020  tion_type in.   
│ │ │ +00212200: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ +00212210: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ +00212220: 646d 616e 222c 2022 636f 6e74 6169 6e65  dman", "containe
│ │ │ +00212230: 7222 5d20 2920 290a 2020 7461 6773 3a0a  r"] ) ).  tags:.
│ │ │ +00212240: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +00212250: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ +00212260: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ +00212270: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +00212280: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ +00212290: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ +002122a0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +002122b0: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ +002122c0: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ +002122d0: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +002122e0: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +002122f0: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +00212300: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +00212310: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +00212320: 6d6f 756e 745f 6f70 7469 6f6e 5f62 6f6f  mount_option_boo
│ │ │ +00212330: 745f 6e6f 7375 6964 0a20 202d 206e 6f5f  t_nosuid.  - no_
│ │ │ +00212340: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +00212350: 206e 616d 653a 2027 4164 6420 6e6f 7375   name: 'Add nosu
│ │ │ +00212360: 6964 204f 7074 696f 6e20 746f 202f 626f  id Option to /bo
│ │ │ +00212370: 6f74 3a20 4372 6561 7465 206d 6f75 6e74  ot: Create mount
│ │ │ +00212380: 5f69 6e66 6f20 6469 6374 696f 6e61 7279  _info dictionary
│ │ │ +00212390: 2076 6172 6961 626c 6527 0a20 2073 6574   variable'.  set
│ │ │ +002123a0: 5f66 6163 743a 0a20 2020 206d 6f75 6e74  _fact:.    mount
│ │ │ +002123b0: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74  _info: '{{ mount
│ │ │ +002123c0: 5f69 6e66 6f7c 6465 6661 756c 7428 7b7d  _info|default({}
│ │ │ +002123d0: 297c 636f 6d62 696e 6528 7b69 7465 6d2e  )|combine({item.
│ │ │ +002123e0: 303a 2069 7465 6d2e 317d 2920 7d7d 270a  0: item.1}) }}'.
│ │ │ +002123f0: 2020 7769 7468 5f74 6f67 6574 6865 723a    with_together:
│ │ │ +00212400: 0a20 202d 2027 7b7b 2064 6576 6963 655f  .  - '{{ device_
│ │ │ +00212410: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ +00212420: 735b 305d 2e73 706c 6974 2829 207c 206d  s[0].split() | m
│ │ │ +00212430: 6170 2827 276c 6f77 6572 2727 2920 7c20  ap(''lower'') | 
│ │ │ +00212440: 6c69 7374 207d 7d27 0a20 202d 2027 7b7b  list }}'.  - '{{
│ │ │ +00212450: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +00212460: 6f75 745f 6c69 6e65 735b 315d 2e73 706c  out_lines[1].spl
│ │ │ +00212470: 6974 2829 207c 206c 6973 7420 7d7d 270a  it() | list }}'.
│ │ │ +00212480: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ +00212490: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ +002124a0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +002124b0: 636b 6167 6573 2061 6e64 2022 7270 6d2d  ckages and "rpm-
│ │ │ +002124c0: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +002124d0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +002124e0: 730a 2020 2020 616e 6420 2262 6f6f 7463  s.    and "bootc
│ │ │ +002124f0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +00212500: 7473 2e70 6163 6b61 6765 

TRUNCATED DUE TO SIZE LIMIT: 10485760 bytes